diff --git a/core/models.py b/core/models.py index 136469df..1a67237a 100644 --- a/core/models.py +++ b/core/models.py @@ -231,6 +231,16 @@ class User(AbstractBaseUser): def is_root(self): return self.is_superuser or self.groups.filter(name=settings.SITH_GROUPS['root']['name']).exists() + @property + def is_board_member(self): + from club.models import Club + return Club.objects.filter(unix_name=settings.SITH_MAIN_CLUB['unix_name']).first().get_membership_for(self) + + @property + def is_launderette_manager(self): + from club.models import Club + return Club.objects.filter(unix_name=settings.SITH_LAUNDERETTE_MANAGER['unix_name']).first().get_membership_for(self) + def save(self, *args, **kwargs): create = False with transaction.atomic(): diff --git a/core/templates/core/user_detail.jinja b/core/templates/core/user_detail.jinja index 7ab6ebe5..baed6b85 100644 --- a/core/templates/core/user_detail.jinja +++ b/core/templates/core/user_detail.jinja @@ -55,14 +55,16 @@ {# if the user is member of a club, he can view the subscription state #}
{% if get_subscriber(profile).is_subscribed() %}
- {% trans subscription_end=get_subscriber(profile).subscriptions.last().subscription_end %}Subscribed until {{ subscription_end }}{% endtrans %}
- {% if user == profile or user.is_root %}
- {% trans %}Account number: {% endtrans %}{{ profile.customer.account_id }}
+ {% if user == profile or user.is_root or user.is_board_member %}
+ {% trans subscription_end=get_subscriber(profile).subscriptions.last().subscription_end %}Subscribed until {{ subscription_end }}{% endtrans %}
+ {% trans %}Account number: {% endtrans %}{{ profile.customer.account_id }}
+ {% endif %}
+ {% if user == profile or user.is_root or user.is_board_member or user.is_launderette_manager %}
+ {# Shows tokens bought by the user #}
+ {{ show_tokens(profile) }}
+ {# Shows slots took by the user #}
+ {{ show_slots(profile) }}
{% endif %}
- {# Shows tokens bought by the user #}
- {{ show_tokens(profile) }}
- {# Shows slots took by the user #}
- {{ show_slots(profile) }}
{% else %}
{% trans %}Not subscribed{% endtrans %}
{% if user.is_in_group(settings.SITH_MAIN_BOARD_GROUP) %}