示例#1
0
def edit(username):
    """ Edit a smiley's data """
    person = PeopleModel.get_by_key_name(username.lower())
    if person and person.password:
        if 'username' in session and session['username'] == username:
            form = EditForm()
            if form.validate_on_submit():
                if form.delete.data:
                    person.delete()
                    return redirect(url_for('home'))
                else:
                    updated_person = PeopleModel(
                            key_name = person.name,
                            name = person.name,
                            startdate = form.startdate.data,
                            enddate = form.enddate.data,
                            password = person.password
                            )
                    updated_person.put()
                    return redirect(url_for('home') + person.name.encode("utf-8"))
            startdate = person.startdate
            enddate = person.enddate
            return render_template('edit.html', name=username, form=form, startdate=startdate, enddate=enddate)
        else:
            return redirect(url_for('home')+username+'/auth')
    else:
        abort(404)
示例#2
0
def show_smiley(username):
    """Show the smiley for a person"""
    person = PeopleModel.get_by_key_name(username.lower())
    if person:
        name = person.name
        startdate = person.startdate
        enddate = person.enddate
        if person.password:
            password = True
        else:
            password = False
        return render_template('canvas.html', name=name.title(), startdate=startdate, enddate=enddate, password=password)
    else:
        abort(404)
示例#3
0
def auth(username):
    """ Log in """
    if 'username' in session and session['username'] == username:
        return redirect(url_for('home')+username+'/edit')
    else:
        person = PeopleModel.get_by_key_name(username.lower())
        if person:
            form = PasswordForm()
            if form.validate_on_submit():
                if check_password_hash(person.password, form.password.data):
                    session['username'] = username
                    return redirect(url_for('home')+username+'/edit')
                else:
                    flash(u'Das eingegebene Passwort war leider Falsch. Probier es noch einmal')
                    return redirect(url_for('home')+username+'/auth')
            return render_template('auth.html', name=username, form=form)
        else:
            abort(404)