source: main/waeup.kofa/trunk/src/waeup/kofa/applicants/permissions.py @ 11003

Last change on this file since 11003 was 10226, checked in by Henrik Bettermann, 11 years ago

Add local and global ApplicationsManager? role. Assign role dynamically.

  • Property svn:keywords set to Id
File size: 2.3 KB
RevLine 
[7192]1## $Id: permissions.py 10226 2013-05-24 17:54:10Z henrik $
[6044]2##
[6478]3## Copyright (C) 2011 Uli Fouquet & Henrik Bettermann
[6044]4## This program is free software; you can redistribute it and/or modify
5## it under the terms of the GNU General Public License as published by
6## the Free Software Foundation; either version 2 of the License, or
7## (at your option) any later version.
[7192]8##
[6044]9## This program is distributed in the hope that it will be useful,
10## but WITHOUT ANY WARRANTY; without even the implied warranty of
11## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12## GNU General Public License for more details.
[7192]13##
[6044]14## You should have received a copy of the GNU General Public License
15## along with this program; if not, write to the Free Software
16## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17##
18"""
19Local permissions for applicants/applications.
20"""
21import grok
22
23# Application permissions
24
[6198]25class HandleApplication(grok.Permission):
26    grok.name('waeup.handleApplication')
[6044]27
[6367]28class ViewApplication(grok.Permission):
29    grok.name('waeup.viewApplication')
30
[7240]31class ViewApplicationsTab(grok.Permission):
[7250]32    grok.name('waeup.viewApplicantsTab')
[7240]33
34class ViewMyApplicationDataTab(grok.Permission):
35    grok.name('waeup.viewMyApplicationDataTab')
36
[7136]37class ManageApplication(grok.Permission):
38    grok.name('waeup.manageApplication')
[6044]39
[8565]40class ViewApplicationStatistics(grok.Permission):
41    grok.name('waeup.viewApplicationStatistics')
42
[7250]43class PayApplicant(grok.Permission):
44    grok.name('waeup.payApplicant')
45
[6198]46# Local role
[6044]47class ApplicationOwner(grok.Role):
48    grok.name('waeup.local.ApplicationOwner')
[6159]49    grok.title(u'Application Owner')
[7240]50    grok.permissions('waeup.handleApplication', 'waeup.viewApplication',
[8367]51                     'waeup.payApplicant')
[6184]52
[7178]53# Site role
[7166]54
55class ApplicantRole(grok.Role):
56    grok.name('waeup.Applicant')
[8367]57    grok.permissions('waeup.viewAcademics', 'waeup.viewMyApplicationDataTab',
58                     'waeup.Authenticated')
[7166]59
[6184]60class ApplicationsOfficer(grok.Role):
[6198]61    grok.name('waeup.ApplicationsOfficer')
[10226]62    grok.title(u'Applications Officer (view only)')
63    grok.permissions('waeup.viewApplication', 'waeup.viewApplicantsTab')
64
65class ApplicationsManager(grok.Role):
66    grok.name('waeup.ApplicationsManager')
67    grok.title(u'Applications Manager')
[8367]68    grok.permissions('waeup.manageApplication', 'waeup.viewApplication',
[7250]69                     'waeup.viewApplicantsTab', 'waeup.payApplicant')
Note: See TracBrowser for help on using the repository browser.