Changeset 14948
- Timestamp:
- 8 Feb 2018, 06:52:37 (7 years ago)
- Location:
- main/waeup.kofa/trunk
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
main/waeup.kofa/trunk/CHANGES.txt
r14939 r14948 4 4 1.6.dev0 (unreleased) 5 5 ======================= 6 7 * Add `CreateStudents` permission and `StudentsCreator` role. 6 8 7 9 * Do not allow uploading data with trailing whitespaces. -
main/waeup.kofa/trunk/docs/source/userdocs/security.rst
r14885 r14948 107 107 :noindex: 108 108 109 .. autoclass:: waeup.kofa.applicants.permissions.CreateStudents() 110 :noindex: 111 109 112 Students Section Permissions 110 113 ---------------------------- … … 209 212 210 213 .. autoclass:: waeup.kofa.applicants.permissions.ApplicationsManager() 214 :noindex: 215 216 .. autoclass:: waeup.kofa.applicants.permissions.StudentsCreator() 211 217 :noindex: 212 218 -
main/waeup.kofa/trunk/src/waeup/kofa/applicants/browser.py
r14934 r14948 664 664 grok.context(IApplicant) 665 665 grok.name('createstudent') 666 grok.require('waeup. manageStudent')666 grok.require('waeup.createStudents') 667 667 668 668 def update(self): … … 685 685 #grok.context(IApplicantsContainer) 686 686 grok.name('createallstudents') 687 grok.require('waeup. managePortal')687 grok.require('waeup.createStudents') 688 688 689 689 def update(self): -
main/waeup.kofa/trunk/src/waeup/kofa/applicants/permissions.py
r14511 r14948 57 57 grok.name('waeup.payApplicant') 58 58 59 class CreateStudents(grok.Permission): 60 """The CreateStudents permission allows to create a bunch student 61 records from application records. 62 """ 63 grok.name('waeup.createStudents') 64 59 65 # Local role 60 66 … … 96 102 grok.permissions('waeup.manageApplication', 'waeup.viewApplication', 97 103 'waeup.viewApplicantsTab', 'waeup.payApplicant') 104 105 class StudentsCreator(grok.Role): 106 """The Students Creator is allowed to create a bunch of student 107 records from application records. 108 """ 109 grok.name('waeup.StudentsCreator') 110 grok.title(u'Students Creator') 111 grok.permissions('waeup.viewApplication', 112 'waeup.viewApplicantsTab', 113 'waeup.createStudents') -
main/waeup.kofa/trunk/src/waeup/kofa/applicants/viewlets.py
r14935 r14948 180 180 grok.context(IApplicantsRoot) 181 181 grok.view(ApplicantsRootPage) 182 grok.require('waeup. managePortal')182 grok.require('waeup.createStudents') 183 183 icon = 'actionicon_entrance.png' 184 184 text = _('Create students') … … 193 193 grok.context(IApplicantsContainer) 194 194 grok.view(ApplicantsContainerPage) 195 grok.require('waeup. managePortal')195 grok.require('waeup.createStudents') 196 196 icon = 'actionicon_entrance.png' 197 197 text = _('Create students') … … 257 257 grok.order(4) 258 258 grok.context(IApplicant) 259 grok.require('waeup. manageApplication')259 grok.require('waeup.createStudents') 260 260 icon = 'actionicon_entrance.png' 261 261 text = _('Create student') -
main/waeup.kofa/trunk/src/waeup/kofa/doctests/permissions.txt
r14602 r14948 39 39 >>> from waeup.kofa.permissions import get_waeup_roles 40 40 >>> len(list(get_waeup_roles())) 41 2 741 28 42 42 43 43 >>> len(list(get_waeup_roles(also_local=True))) 44 4 844 49 45 45 46 46 … … 74 74 u'waeup.StudentsClearanceOfficer', 75 75 u'waeup.StudentsCourseAdviser', 76 u'waeup.StudentsCreator', 76 77 u'waeup.StudentsManager', 77 78 u'waeup.StudentsOfficer', -
main/waeup.kofa/trunk/src/waeup/kofa/permissions.py
r14734 r14948 566 566 'waeup.clearStudentFinancially', # not used in base pkg 567 567 'waeup.uploadStudentFile', 'waeup.showStudents', 568 'waeup.clearAllStudents', 568 'waeup.clearAllStudents', 'waeup.createStudents', 569 569 'waeup.editScores', 570 570 'waeup.triggerTransition', … … 614 614 'waeup.clearStudent', 'waeup.payStudent', 615 615 'waeup.uploadStudentFile', 'waeup.showStudents', 616 'waeup.clearAllStudents', 616 'waeup.clearAllStudents', 'waeup.createStudents', 617 617 'waeup.editScores', 618 618 # 'waeup.triggerTransition', -
main/waeup.kofa/trunk/src/waeup/kofa/utils/tests/test_helpers.py
r14939 r14948 533 533 'some text that \n' 534 534 '\n' # this empty line will break 535 'is not a csv file 535 'is not a csv file\n' + chr(0x92) + '\n' 536 536 ).splitlines() 537 537 self.assertEqual(helpers.check_csv_charset(csv), 2)
Note: See TracChangeset for help on using the changeset viewer.