示例#1
0
def edit_user(user_id):
    if not g.user:
        flash("Access unauthorized.", "danger")
        return redirect("/")
    if g.user and session[CURR_USER_KEY] != user_id:
        flash("Access unauthorized.", "danger")
        return redirect("/")
    if g.user and session[CURR_USER_KEY] == user_id:
        regions = Region.query.all()

        # list of tuples for selectfield
        region_list = [(i.id, i.city) for i in regions]
        form = UserInfoForm()
        #passing selectfield choice into the form
        form.region_id.choices = region_list

        if form.validate_on_submit():
            user = User.query.get_or_404(user_id)
            if form.image_url.data:
                user.image_url = form.image_url.data
            if form.bio.data:
                user.bio = form.bio.data
            if form.website.data:
                user.website = form.website.data
            if form.region_id.data:
                user.region_id = form.region_id.data

            db.session.add(user)
            db.session.commit()

            return redirect(f'/users/{user_id}')
        return render_template('users/user-add-info.html', form=form)
示例#2
0
def home():
    form = UserInfoForm()
    if form.validate_on_submit():
        if request.method == 'POST':
            name = request.form['name']
            weight = float(request.form['weight'])
            height = float(request.form['height'])
            age = int(request.form['age'])
            gender = request.form['gender']
            phys_act = request.form['physical_activity']

            tdee = algo.calc_tdee(name, weight, height, age, gender, phys_act)
            return redirect(url_for('result', tdee=tdee))

    return render_template('home.html', title="Diet App", form=form)
示例#3
0
def add_userinfo():
    """
    Add a userinfo to the database
    """
    check_admin()

    add_userinfo = True

    form = UserInfoForm()
    if form.validate_on_submit():
        userinfo = mongo.db.userInfo
        # userinfo = UserInfo(name=form.name.data,
        #                         description=form.description.data)
        try:
            # add department to the database
            userinfo.insert({
                'name': form.name.data,
                'passward': form.passward.data,
                'nickname': form.nickname.data,
                'tel': form.tel.data,
                'head_picture': form.head_picture.data,
                'gender': form.gender.data,
                'region': form.region.data,
                'signature': form.signature.data
            })
            flash(u'您已经成功添加一个用户信息')
        except:
            # in case department name already exists
            flash(u'错误: 该用户信息已存在')

        # redirect to departments page
        return redirect(url_for('admin.list_userinfos'))

    # load department template
    return render_template('admin/userinfos/userinfo.html',
                           action="Add",
                           add_userinfo=add_userinfo,
                           form=form,
                           title=u"添加用户信息")
示例#4
0
def editProfile():
    form = UserInfoForm()
    db = get_db()
    cur = db.cursor()
    user = cur.execute(
        'SELECT * FROM USER WHERE Email=?', (g.user['Email'], )).fetchone(
        )  #gets the current logged in user to pass to editProfile.html

    if form.validate_on_submit(
    ):  #update g.user table with entered information
        cur.execute(
            'UPDATE USER SET Email=?, First_name=?, Last_name=?, Dob=?, Street_address =?, City=?, Province=?, Postal_code=? WHERE Email=?',
            (
                form.email.data,
                form.fname.data,
                form.lname.data,
                form.dob.data,
                form.street.data,
                form.city.data,
                form.province.data,
                form.postalCode.data,
                g.user['Email'],
            ))
        db.commit()
        cur.close()
        return redirect(url_for('profile'))

    elif request.method == 'GET':  #populates the form with the current_user's information
        form.email.data = user[0]
        form.fname.data = user[2]
        form.lname.data = user[3]
        form.dob.data = datetime.strptime(user[4], '%Y-%m-%d')
        form.street.data = user[5]
        form.city.data = user[6]
        form.province.data = user[7]
        form.postalCode.data = user[8]

    return render_template('editProfile.html', form=form, user=user)
示例#5
0
def edit_userinfo(name):
    """
    Edit a userinfo
    """
    check_admin()

    add_userinfo = False

    userinfo = mongo.db.userInfo.find({"name": name})
    userinfos = mongo.db.userInfo
    # userinfos.remove({'name': name})
    edit_user = {
        'name': u"待赋值",
        'passward': u"待赋值",
        'nickname': u"待赋值",
        'tel': u"待赋值",
        'head_picture': u"待赋值",
        'gender': u"待赋值",
        'region': u"待赋值",
        'signature': u"待赋值"
    }
    userinfoarray = UserInfoArray(name=u"待赋值",
                                  passward=u"待赋值",
                                  nickname=u"待赋值",
                                  tel=u"待赋值",
                                  head_picture=u"待赋值",
                                  gender=u"待赋值",
                                  region=u"待赋值",
                                  signature=u"待赋值")
    for s in userinfo:
        userinfoarray.name = s['name']
        userinfoarray.passward = s['passward']
        userinfoarray.nickname = s['nickname']
        userinfoarray.tel = s['tel']
        userinfoarray.head_picture = s['head_picture']
        userinfoarray.gender = s['gender']
        userinfoarray.region = s['region']
        userinfoarray.signature = s['signature']

    form = UserInfoForm(obj=userinfoarray)
    userinfos.remove({'name': name})
    if form.validate_on_submit():
        edit_user['name'] = form.name.data
        edit_user['passward'] = form.passward.data
        edit_user['nickname'] = form.nickname.data
        edit_user['tel'] = form.tel.data
        edit_user['head_picture'] = form.head_picture.data
        edit_user['gender'] = form.gender.data
        edit_user['region'] = form.region.data
        edit_user['signature'] = form.signature.data
        # db.session.commit()
        userinfos.insert(edit_user)
        flash(u'您已经成功修改用户信息')

        # redirect to the duserinfos page
        return redirect(url_for('admin.list_userinfos'))
    for s in userinfo:
        form.passward.data = s['passward']
        form.name.data = s['name']
    # form.passward.data = userinfo[0]['passward']
    # form.name.data = userinfo[0]['name']
    return render_template('admin/userinfos/userinfo.html',
                           action="Edit",
                           add_userinfo=add_userinfo,
                           form=form,
                           userinfo=userinfo,
                           title=u"修改用户信息")