def AssertBasePermission(self, mr): """Assert that the user has the permissions needed to view this page.""" super(GroupCreate, self).AssertBasePermission(mr) if not permissions.CanCreateGroup(mr.perms): raise permissions.PermissionException( 'User is not allowed to create a user group')
def _GatherFlagData(self, mr): page_data = { 'recaptcha_public_key': secrets_svc.GetRecaptchaPublicKey(), 'project_stars_enabled': ezt.boolean( settings.enable_project_stars), 'user_stars_enabled': ezt.boolean(settings.enable_user_stars), 'can_create_project': ezt.boolean( permissions.CanCreateProject(mr.perms)), 'can_create_group': ezt.boolean( permissions.CanCreateGroup(mr.perms)), } return page_data
def groups_create(self, request): """Create a new user group.""" mar = self.mar_factory(request) if not permissions.CanCreateGroup(mar.perms): raise permissions.PermissionException( 'The user is not allowed to create groups.') user_dict = self._services.user.LookupExistingUserIDs( mar.cnxn, [request.groupName]) if request.groupName.lower() in user_dict: raise usergroup_svc.GroupExistsException( 'group %s already exists' % request.groupName) if request.ext_group_type: ext_group_type = str(request.ext_group_type).lower() else: ext_group_type = None group_id = self._services.usergroup.CreateGroup( mar.cnxn, self._services, request.groupName, str(request.who_can_view_members).lower(), ext_group_type) return api_pb2_v1.GroupsCreateResponse( groupID=group_id)