Example #1
0
    def _process(self):
        admins = set(
            User.query.filter_by(is_admin=True, is_deleted=False).order_by(
                db.func.lower(User.first_name), db.func.lower(User.last_name)))

        form = AdminsForm(admins=admins)
        if form.validate_on_submit():
            added = form.admins.data - admins
            removed = admins - form.admins.data
            for user in added:
                user.is_admin = True
                logger.warn('Admin rights granted to %r by %r [%s]', user,
                            session.user, request.remote_addr)
                flash(
                    _('Admin added: {name} ({email})').format(
                        name=user.name, email=user.email), 'success')
            for user in removed:
                user.is_admin = False
                logger.warn('Admin rights revoked from %r by %r [%s]', user,
                            session.user, request.remote_addr)
                flash(
                    _('Admin removed: {name} ({email})').format(
                        name=user.name, email=user.email), 'success')
            return redirect(url_for('.admins'))

        return WPUsersAdmin.render_template('admins.html', 'admins', form=form)
Example #2
0
    def _process(self):
        admins = set(User.query
                     .filter_by(is_admin=True, is_deleted=False)
                     .order_by(db.func.lower(User.first_name), db.func.lower(User.last_name)))

        form = AdminsForm(admins=admins)
        if form.validate_on_submit():
            added = form.admins.data - admins
            removed = admins - form.admins.data
            for user in added:
                user.is_admin = True
                logger.warn('Admin rights granted to %r by %r [%s]', user, session.user, request.remote_addr)
                flash(_('Admin added: {name} ({email})').format(name=user.name, email=user.email), 'success')
            for user in removed:
                user.is_admin = False
                logger.warn('Admin rights revoked from %r by %r [%s]', user, session.user, request.remote_addr)
                flash(_('Admin removed: {name} ({email})').format(name=user.name, email=user.email), 'success')
            return redirect(url_for('.admins'))

        return WPUsersAdmin.render_template('admins.html', 'admins', form=form)