def edit_user(uuid=None): user = User.get_by_uuid(uuid) form = forms.UserEditForm(obj=user) # HACK: WTForms doesn't do dynamic lookup on instantiation ; must set choices here otherwise # new users won't show up form.organization.choices = forms.get_organization_choices() if form.validate_on_submit(): # validate if user: # update db data = form.data # update user.update(**data) flash(messages.USER_UPDATED) return redirect(url_for('accounts.users')) ctx = { 'user': user, 'form': form, } return render_template('accounts/edit_user.html', **ctx)
def account_settings(): """ Account settings """ user = session.get('user', None) form = forms.UserForm(obj=user) if form.validate_on_submit(): # validate if user: # update db data = form.data # update user.update(**data) # update the session user session['user'] = User.get_by_uuid(user.uuid) flash(messages.ACCOUNT_UPDATED) ctx = { 'account': session.get('user', None), 'form': form, } return render_template('accounts/edit_user.html', **ctx)
def user_loader(user_id): return User.get_by_uuid(user_id)
def delete_user(uuid=None): user = User.get_by_uuid(uuid) if user: user.remove() return redirect(url_for('accounts.users'))