Пример #1
0
 def category_roles(self):
     from indico.modules.categories.util import serialize_category_role
     from indico.modules.categories.models.roles import CategoryRole
     category_roles = CategoryRole.get_category_roles(self.category)
     return [
         serialize_category_role(role, legacy=True)
         for role in category_roles
     ]
Пример #2
0
 def _process(self):
     form = CategoryRoleForm(category=self.category, color=self._get_color())
     if form.validate_on_submit():
         role = CategoryRole(category=self.category)
         form.populate_obj(role)
         db.session.flush()
         logger.info('Category role %r created by %r', role, session.user)
         return jsonify_data(html=_render_roles(self.category), role=serialize_category_role(role))
     return jsonify_form(form)
Пример #3
0
 def _process(self):
     form = CategoryRoleForm(category=self.category,
                             color=self._get_color())
     if form.validate_on_submit():
         role = CategoryRole(category=self.category)
         form.populate_obj(role)
         db.session.flush()
         logger.info('Category role %r created by %r', role, session.user)
         self.category.log(CategoryLogRealm.category, LogKind.positive,
                           'Roles', f'Added role: "{role.name}"',
                           session.user)
         return jsonify_data(html=_render_roles(self.category),
                             role=serialize_category_role(role))
     return jsonify_form(form)
Пример #4
0
def serialize_principal(principal):
    from indico.modules.categories.util import serialize_category_role
    if principal.principal_type == PrincipalType.email:
        return serialize_email_principal(principal)
    elif principal.principal_type == PrincipalType.network:
        return serialize_ip_network_group(principal)
    elif principal.principal_type == PrincipalType.user:
        return serialize_user(principal)
    elif principal.principal_type == PrincipalType.event_role:
        return serialize_event_role(principal)
    elif principal.principal_type == PrincipalType.category_role:
        return serialize_category_role(principal)
    elif principal.is_group:
        return serialize_group(principal)
    else:
        raise ValueError('Invalid principal: {} ({})'.format(principal, principal.principal_type))
Пример #5
0
def serialize_principal(principal):
    from indico.modules.categories.util import serialize_category_role
    if principal.principal_type == PrincipalType.email:
        return serialize_email_principal(principal)
    elif principal.principal_type == PrincipalType.network:
        return serialize_ip_network_group(principal)
    elif principal.principal_type == PrincipalType.user:
        return serialize_user(principal)
    elif principal.principal_type == PrincipalType.event_role:
        return serialize_event_role(principal)
    elif principal.principal_type == PrincipalType.category_role:
        return serialize_category_role(principal)
    elif principal.principal_type == PrincipalType.registration_form:
        return serialize_registration_form(principal)
    elif principal.is_group:
        return serialize_group(principal)
    else:
        raise ValueError(f'Invalid principal: {principal} ({principal.principal_type})')
Пример #6
0
def serialize_principal(principal):
    from indico.modules.categories.util import serialize_category_role
    if principal.principal_type == PrincipalType.email:
        return serialize_email_principal(principal)
    elif principal.principal_type == PrincipalType.network:
        return IPNetworkGroupSchema().dump(principal)
    elif principal.principal_type == PrincipalType.user:
        return serialize_user(principal)
    elif principal.principal_type == PrincipalType.event_role:
        return serialize_event_role(principal)
    elif principal.principal_type == PrincipalType.category_role:
        return serialize_category_role(principal)
    elif principal.principal_type == PrincipalType.registration_form:
        return serialize_registration_form(principal)
    elif principal.principal_type in (PrincipalType.local_group,
                                      PrincipalType.multipass_group):
        return serialize_group(principal)
    else:
        raise ValueError(
            f'Invalid principal: {principal} ({principal.principal_type})')
Пример #7
0
 def category_roles(self):
     from indico.modules.categories.models.roles import CategoryRole
     category_roles = CategoryRole.get_category_roles(self.event.category)
     return [serialize_category_role(role) for role in category_roles]
Пример #8
0
 def _process(self):
     category_roles = CategoryRole.get_category_roles(self.event.category)
     return jsonify([serialize_category_role(cr, legacy=False) for cr in category_roles])