def settings_users(): """ Display user settings """ if not utils_general.user_has_permission('view_settings'): return redirect(url_for('routes_general.home')) users = User.query.all() user_roles = Role.query.all() form_add_user = forms_settings.UserAdd() form_mod_user = forms_settings.UserMod() form_user_roles = forms_settings.UserRoles() if request.method == 'POST': if not utils_general.user_has_permission('edit_users'): return redirect(url_for('routes_general.home')) if form_add_user.add_user.data: utils_settings.user_add(form_add_user) elif form_mod_user.delete.data: if utils_settings.user_del(form_mod_user) == 'logout': return redirect('/logout') elif form_mod_user.save.data: if utils_settings.user_mod(form_mod_user) == 'logout': return redirect('/logout') elif (form_user_roles.add_role.data or form_user_roles.save_role.data or form_user_roles.delete_role.data): utils_settings.user_roles(form_user_roles) return redirect(url_for('routes_settings.settings_users')) return render_template('settings/users.html', themes=THEMES, users=users, user_roles=user_roles, form_add_user=form_add_user, form_mod_user=form_mod_user, form_user_roles=form_user_roles)
def settings_users_submit(): """Submit form for User Settings page""" messages = {"success": [], "info": [], "warning": [], "error": []} page_refresh = False logout = False user_id = None role_id = None generated_api_key = None if not utils_general.user_has_permission('edit_users'): messages["error"].append("Your permissions do not allow this action") form_user = forms_settings.User() form_mod_user = forms_settings.UserMod() form_user_roles = forms_settings.UserRoles() if not messages["error"]: if form_user.settings_user_save.data: messages = utils_settings.user(form_user) elif form_mod_user.user_generate_api_key.data: (messages, generated_api_key ) = utils_settings.generate_api_key(form_mod_user) user_id = form_mod_user.user_id.data elif form_mod_user.user_delete.data: user_id = form_mod_user.user_id.data messages = utils_settings.user_del(form_mod_user) elif form_mod_user.user_save.data: messages, logout = utils_settings.user_mod(form_mod_user) if logout: page_refresh = True elif (form_user_roles.user_role_save.data or form_user_roles.user_role_delete.data): role_id = form_user_roles.role_id.data messages, page_refresh = utils_settings.user_roles(form_user_roles) if page_refresh: for each_error in messages["error"]: flash(each_error, "error") for each_warn in messages["warning"]: flash(each_warn, "warning") for each_info in messages["info"]: flash(each_info, "info") for each_success in messages["success"]: flash(each_success, "success") return jsonify( data={ 'generated_api_key': generated_api_key, 'user_id': user_id, 'role_id': role_id, 'messages': messages, 'logout': logout })
def settings_users(): """Display user settings.""" if not utils_general.user_has_permission('view_settings'): return redirect(url_for('routes_general.home')) messages = {"success": [], "info": [], "warning": [], "error": []} misc = Misc.query.first() form_user = forms_settings.User() form_add_user = forms_settings.UserAdd() form_mod_user = forms_settings.UserMod() form_user_roles = forms_settings.UserRoles() if request.method == 'POST': if not utils_general.user_has_permission('edit_users'): return redirect(url_for('routes_general.home')) if form_add_user.user_add.data: utils_settings.user_add(form_add_user) elif form_user_roles.user_role_add.data: messages, page_refresh = utils_settings.user_roles(form_user_roles) for each_error in messages["error"]: flash(each_error, "error") for each_warn in messages["warning"]: flash(each_warn, "warning") for each_info in messages["info"]: flash(each_info, "info") for each_success in messages["success"]: flash(each_success, "success") users = User.query.all() user_roles = Role.query.all() return render_template('settings/users.html', misc=misc, themes=THEMES, users=users, user_roles=user_roles, form_add_user=form_add_user, form_mod_user=form_mod_user, form_user=form_user, form_user_roles=form_user_roles)