from flask import render_template, redirect, request, url_for, flash, session, abort, current_app from flask_login import login_required, login_user, logout_user, current_user from sqlalchemy import desc from . import settings from .forms import EditProfileForm, EditProfileAdminForm from ..email import send_email from .. import db from ..models import User import sys #PROFILE @settings.route('/profile', methods=['GET', 'POST']) @login_required def profile(): page = { 'title': 'Edit Profile' } form = EditProfileForm() if form.validate_on_submit(): current_user.name = form.name.data current_user.address = form.address.data current_user.city = form.city.data current_user.postcode = form.postcode.data current_user.country = form.country.data current_user.phone = form.phone.data current_user.org_account = form.org_account.data current_user.org_companyname = form.org_companyname.data current_user.org_regaddress = form.org_regaddress.data current_user.org_responsible = form.org_responsible.data current_user.org_vatnum = form.org_vatnum.data current_user.twofactor = form.twofactor.data db.session.add(current_user) db.session.commit() flash('Info Updated!') form.name.data = current_user.name form.address.data = current_user.address form.city.data = current_user.city form.postcode.data = current_user.postcode form.country.data = current_user.country form.phone.data = current_user.phone form.org_account.data = current_user.org_account form.org_companyname.data = current_user.org_companyname form.org_regaddress.data = current_user.org_regaddress form.org_responsible.data = current_user.org_responsible form.org_vatnum.data = current_user.org_vatnum form.twofactor.data = current_user.twofactor wallet = "%.2f" % round(current_user.wallet, 3) #current_app.logger.info('[{}] wallet: {}'.format(current_user.email, wallet)) return render_template('settings/profile.html', page=page, form=form, wallet=wallet, cuser=current_user)