PCv5/app/routes/admin/groups.py

24 lines
834 B
Python
Raw Normal View History

2019-06-06 01:45:39 +02:00
from app.utils.priv_required import priv_required
from flask_wtf import FlaskForm
from wtforms import SubmitField
from app.models.user import Member, GroupMember, Group, GroupPrivilege
from app.models.priv import SpecialPrivilege
2019-06-06 01:45:39 +02:00
from app.utils.render import render
from app import app, db
import yaml
import os
2019-12-16 23:57:50 +01:00
@app.route('/admin/groupes', methods=['GET', 'POST'])
2019-06-06 01:45:39 +02:00
@priv_required('access-admin-panel')
def adm_groups():
# Users with either groups or special privileges
users_groups = Member.query.join(GroupMember)
users_special = Member.query \
.join(SpecialPrivilege, Member.id == SpecialPrivilege.mid)
users = users_groups.union(users_special)
users = sorted(users, key = lambda x: x.name)
2019-06-06 01:45:39 +02:00
groups = Group.query.all()
return render('admin/groups_privileges.html', users=users, groups=groups)