From 205dbe97b320c2b440e48e932851348892943f3f Mon Sep 17 00:00:00 2001 From: nd <git@notandy.de> Date: Fri, 7 Aug 2020 13:34:16 +0200 Subject: [PATCH] dd new user to base role --- uffd/default_config.cfg | 2 ++ uffd/user/templates/user.html | 4 +++- uffd/user/views_user.py | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/uffd/default_config.cfg b/uffd/default_config.cfg index 95c6efdb..d13385e4 100644 --- a/uffd/default_config.cfg +++ b/uffd/default_config.cfg @@ -21,6 +21,8 @@ MAIL_PASSWORD='*****' MAIL_USE_STARTTLS=True MAIL_FROM_ADDRESS='foo@bar.com' +ROLES_BASEROLES=['base'] + SQLALCHEMY_TRACK_MODIFICATIONS=False # do NOT set in production diff --git a/uffd/user/templates/user.html b/uffd/user/templates/user.html index 76b56005..c735e850 100644 --- a/uffd/user/templates/user.html +++ b/uffd/user/templates/user.html @@ -82,7 +82,9 @@ <tr id="role-{{ role.id }}"> <td> <div class="form-check"> - <input class="form-check-input" type="checkbox" id="role-{{ role.id }}-checkbox" name="role-{{ role.id }}" value="1" aria-label="enabled" {% if user.dn in role.member_dns() %}checked{% endif %}> + <input class="form-check-input" type="checkbox" id="role-{{ role.id }}-checkbox" name="role-{{ role.id }}" value="1" aria-label="enabled" + {% if user.dn in role.member_dns() or role.name in config["ROLES_BASEROLES"] %}checked {% endif %} + {% if role.name in config["ROLES_BASEROLES"] %}disabled {% endif %}> </div> </td> <td> diff --git a/uffd/user/views_user.py b/uffd/user/views_user.py index 98931017..c8afb560 100644 --- a/uffd/user/views_user.py +++ b/uffd/user/views_user.py @@ -75,7 +75,7 @@ def update(uid=False): roles = Role.query.all() for role in roles: role_member_dns = role.member_dns() - if request.values.get('role-{}'.format(role.id), False): + if request.values.get('role-{}'.format(role.id), False) or role.name in current_app.config["ROLES_BASEROLES"]: if user.dn in role_member_dns: continue role.add_member(user) -- GitLab