Ejemplo n.º 1
0
 def _save(cls, event, user, cleaned_data):
     for app_label in event.intra_event_meta.get_active_apps():
         ensure_user_is_member_of_group(
             user,
             event.app_event_meta(app_label).admin_group,
             cleaned_data[app_label]
         )
Ejemplo n.º 2
0
    def _save(cls, team_member, cleaned_data):
        event = team_member.event

        for app_label in cls.get_active_apps(event):
            ensure_user_is_member_of_group(
                team_member.person.user,
                event.app_event_meta(app_label).admin_group,
                cleaned_data[app_label])

        return team_member
Ejemplo n.º 3
0
    def _save(cls, event: Event, data: List[Tuple[AbstractUser, Dict[str,
                                                                     bool]]]):
        for user, is_member_by_app in data:
            for app_label in event.intra_event_meta.get_active_apps():
                ensure_user_is_member_of_group(
                    user,
                    event.get_app_event_meta(app_label).admin_group,
                    is_member_by_app[app_label])

        CBACEntry.ensure_admin_group_privileges_for_event(event)
Ejemplo n.º 4
0
    def _save(cls, team_member, cleaned_data):
        event = team_member.event

        for app_label in cls.get_active_apps(event):
            ensure_user_is_member_of_group(
                team_member.person.user,
                event.app_event_meta(app_label).admin_group,
                cleaned_data[app_label]
            )

        return team_member
Ejemplo n.º 5
0
    def apply_state_group_membership(self):
        for group_suffix in SIGNUP_STATE_GROUPS:
            should_belong_to_group = getattr(self, 'is_{group_suffix}'.format(group_suffix=group_suffix))
            group = self.event.labour_event_meta.get_group(group_suffix)

            ensure_user_is_member_of_group(self.person.user, group, should_belong_to_group)

        for job_category in JobCategory.objects.filter(event=self.event):
            should_belong_to_group = self.job_categories_accepted.filter(pk=job_category.pk).exists()
            group = self.event.labour_event_meta.get_group(job_category.slug)

            ensure_user_is_member_of_group(self.person.user, group, should_belong_to_group)
Ejemplo n.º 6
0
def on_team_member_update(sender, instance, **kwargs):
    logger.debug('TeamMember %s update hook', instance)

    # only one primary team per person per event
    if instance.is_primary_team:
        TeamMember.objects.filter(
            team__event=instance.event,
            person=instance.person,
            is_primary_team=True,
        ).exclude(id=instance.id, ).update(is_primary_team=False)

    ensure_user_is_member_of_group(instance.person.user, instance.team.group,
                                   instance.is_group_member)
Ejemplo n.º 7
0
def on_team_member_update(sender, instance, **kwargs):
    logger.debug('TeamMember %s update hook', instance)

    # only one primary team per person per event
    if instance.is_primary_team:
        TeamMember.objects.filter(
            team__event=instance.event,
            person=instance.person,
            is_primary_team=True,
        ).exclude(
            id=instance.id,
        ).update(
            is_primary_team=False
        )

    ensure_user_is_member_of_group(instance.person.user, instance.team.group, instance.is_group_member)
Ejemplo n.º 8
0
def on_team_member_delete(sender, instance, **kwargs):
    logger.debug('TeamMember %s delete hook', instance)
    ensure_user_is_member_of_group(instance.person.user, instance.team.group,
                                   False)
Ejemplo n.º 9
0
 def fix(self, signup, group, **opts):
     from core.utils import ensure_user_is_member_of_group
     ensure_user_is_member_of_group(signup.person, group)
Ejemplo n.º 10
0
def on_team_member_delete(sender, instance, **kwargs):
    logger.debug('TeamMember %s delete hook', instance)
    ensure_user_is_member_of_group(instance.person.user, instance.team.group, False)
Ejemplo n.º 11
0
 def _save(cls, event, user, cleaned_data):
     for app_label in event.intra_event_meta.get_active_apps():
         ensure_user_is_member_of_group(
             user,
             event.app_event_meta(app_label).admin_group,
             cleaned_data[app_label])