Changeset 6161 for main/waeup.sirp/trunk/src/waeup/sirp/browser/pages.py
- Timestamp:
- 20 May 2011, 09:39:59 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/waeup.sirp/trunk/src/waeup/sirp/browser/pages.py
r6154 r6161 48 48 user = form['user'] 49 49 role_manager = IPrincipalRoleManager(view.context) 50 role_manager.assignRoleToPrincipal(localrole, user) 51 view.redirect(view.url(view.context, u'@@manage')+'#tab-%s' % tab) 52 return 53 54 def get_users_with_local_roles(view): 55 role_manager = IPrincipalRoleManager(view.context) 50 56 role_map = IPrincipalRoleMap(view.context) 51 role_manager.assignRoleToPrincipal(localrole, user) 57 for item in role_map.getPrincipalsAndRoles(): 58 local_role = item[0] 59 user_name = item[1] 60 setting = item[2] 61 user = grok.getSite()['users'].get(user_name,None) 62 roles_dict = view.context.local_roles 63 local_role_title = roles_dict[local_role] 64 if user: 65 yield(dict(user_name=user_name, user_title=user.description, 66 local_role=local_role, local_role_title=local_role_title, 67 setting=setting)) 68 else: 69 yield(dict(user_name=user_name, user_title=user_name, 70 local_role=local_role, local_role_title=local_role_title, 71 setting=setting)) 72 73 def del_local_roles(view, tab, **data): 74 form = view.request.form 75 if form.has_key('role_id'): 76 child_id = form['role_id'] 77 else: 78 view.flash('No local role selected!') 79 view.redirect(view.url(view.context, '@@manage')+'#tab-%s' % tab) 80 return 81 if not isinstance(child_id, list): 82 child_id = [child_id] 83 #import pdb; pdb.set_trace() 84 deleted = [] 85 role_manager = IPrincipalRoleManager(view.context) 86 for id in child_id: 87 localrole = id.split('|')[1] 88 user_name = id.split('|')[0] 89 try: 90 role_manager.unsetRoleForPrincipal(localrole, user_name) 91 deleted.append(id) 92 except: 93 view.flash('Could not remove %s: %s: %s' % ( 94 id, sys.exc_info()[0], sys.exc_info()[1])) 95 if len(deleted): 96 view.flash('Successfully removed: %s' % ', '.join(deleted)) 52 97 view.redirect(view.url(view.context, u'@@manage')+'#tab-%s' % tab) 53 98 return … … 859 904 def delFaculties(self, **data): 860 905 form = self.request.form 861 child_id = form['val_id'] 906 if form.has_key('val_id'): 907 child_id = form['val_id'] 908 else: 909 self.flash('No faculty selected!') 910 self.redirect(self.url(self.context, '@@manage')+'#tab-1') 911 return 862 912 if not isinstance(child_id, list): 863 913 child_id = [child_id] … … 947 997 taboneactions = ['Save','Cancel'] 948 998 tabtwoactions = ['Add department', 'Remove selected','Cancel'] 949 tabthreeactions = ['Add local role', 'Remove local roles selected'] 999 tabthreeactions1 = ['Remove selected local roles'] 1000 tabthreeactions2 = ['Add local role'] 950 1001 951 1002 form_fields = grok.AutoFields(IFaculty) … … 961 1012 def update(self): 962 1013 tabs.need() 963 #warning.need()1014 datatable.need() 964 1015 return super(FacultyManageFormPage, self).update() 965 1016 … … 974 1025 url = self.url(val) 975 1026 yield(dict(url=url, name=key, val=val)) 1027 1028 def getUsersWithLocalRoles(self): 1029 return get_users_with_local_roles(self) 976 1030 977 1031 # ToDo: Show warning message before deletion … … 982 1036 child_id = form['val_id'] 983 1037 else: 984 self.flash('No subunit selected!')985 self.redirect(self.url(self.context, '@@manage')+'#tab- %s' % tab)1038 self.flash('No department selected!') 1039 self.redirect(self.url(self.context, '@@manage')+'#tab-2') 986 1040 return 987 1041 if not isinstance(child_id, list): … … 1019 1073 return add_local_role(self, '3', **data) 1020 1074 1075 @grok.action('Remove selected local roles') 1076 def delLocalRoles(self, **data): 1077 return del_local_roles(self,3,**data) 1078 1021 1079 class DepartmentAddFormPage(WAeUPAddFormPage): 1022 1080 """Add a department to a faculty. … … 1100 1158 tabtwoactions = ['Add course', 'Remove selected courses','Cancel'] 1101 1159 tabthreeactions = ['Add certificate', 'Remove selected certificates', 'Cancel'] 1102 tabfouractions = ['Add local role', 'Remove local roles selected'] 1160 tabfouractions1 = ['Remove selected local roles'] 1161 tabfouractions2 = ['Add local role'] 1103 1162 1104 1163 form_fields = grok.AutoFields(IDepartment) … … 1142 1201 url = self.url(val) 1143 1202 yield(dict(url=url, name=key, val=val)) 1203 1204 def getUsersWithLocalRoles(self): 1205 return get_users_with_local_roles(self) 1144 1206 1145 1207 @grok.action('Save') … … 1152 1214 def delCourses(self, **data): 1153 1215 form = self.request.form 1154 child_id = form['val_id'] 1216 if form.has_key('val_id'): 1217 child_id = form['val_id'] 1218 else: 1219 self.flash('No course selected!') 1220 self.redirect(self.url(self.context, '@@manage')+'#tab-2') 1221 return 1155 1222 if not isinstance(child_id, list): 1156 1223 child_id = [child_id] … … 1171 1238 def delCertificates(self, **data): 1172 1239 form = self.request.form 1173 child_id = form['val_id'] 1240 if form.has_key('val_id'): 1241 child_id = form['val_id'] 1242 else: 1243 self.flash('No certificate selected!') 1244 self.redirect(self.url(self.context, '@@manage')+'#tab-3') 1245 return 1174 1246 if not isinstance(child_id, list): 1175 1247 child_id = [child_id] … … 1206 1278 return add_local_role(self, 4, **data) 1207 1279 1280 @grok.action('Remove selected local roles') 1281 def delLocalRoles(self, **data): 1282 return del_local_roles(self,4,**data) 1283 1208 1284 class CourseAddFormPage(WAeUPAddFormPage): 1209 1285 """Add-form to add course to a department. … … 1396 1472 def delCertificateCourses(self, **data): 1397 1473 form = self.request.form 1398 child_id = form['val_id'] 1474 if form.has_key('val_id'): 1475 child_id = form['val_id'] 1476 else: 1477 self.flash('No course referrer selected!') 1478 self.redirect(self.url(self.context, '@@manage')+'#tab-2') 1479 return 1399 1480 if not isinstance(child_id, list): 1400 1481 child_id = [child_id]
Note: See TracChangeset for help on using the changeset viewer.