Example #1
0
def edit_profile():
    """Updates a profile"""
    form = dict(name=g.user.name, email=g.user.email, group=g.user.group)
    if request.method == 'POST':
        if 'delete' in request.form:
            g.user.delete()
            safe_commit()
            session['openid'] = None
            flash(u'Profile deleted', 'success')
            return redirect(url_for('index'))
        form['name'] = request.form['name']
        form['email'] = request.form['email']
        form['group'] = request.form['group']
        if not form['name']:
            flash(u'Error: you have to provide a name', 'error')
        elif '@' not in form['email']:
            flash(u'Error: you have to enter a valid email address', 'error')
        else:
            flash(u'Profile successfully updated', 'success')
            g.user.name = form['name']
            g.user.email = form['email']
            g.user.group = form['group']
            safe_commit()
            return redirect(url_for('edit_profile'))
    return render_template('edit_profile.html', form=form, work_groups=app.config['WORK_GROUPS'])
Example #2
0
def edit_profile():
    """Updates a profile"""
    if g.user is None:
        abort(401)
    form = dict(name=g.user.name, email=g.user.email)
    if request.method == 'POST':
        if 'delete' in request.form:
            g.user.delete()
            safe_commit()
            session['openid'] = None
            flash(u'Profile deleted', 'success')
            return redirect(url_for('index'))
        form['name'] = request.form['name']
        form['email'] = request.form['email']
        if not form['name']:
            flash(u'Error: you have to provide a name', 'error')
        elif '@' not in form['email']:
            flash(u'Error: you have to enter a valid email address', 'error')
        else:
            flash(u'Profile successfully created', 'success')
            g.user.name = form['name']
            g.user.email = form['email']
            safe_commit()
            return redirect(url_for('edit_profile'))
    return render_template('edit_profile.html', form=form)
Example #3
0
def add_announcement():
    """ Adds a new announcment linked to the currently logged in user. """
    if request.form['announcement']:
        new_a = Announcement(user_id=g.user.id, text=request.form['announcement'])
        new_a.insert()
        safe_commit()
        flash('Your announcement was stored', 'success')

    return redirect(url_for('announcements'))
Example #4
0
def set_song():
    if request.form['spotify_uri'] and request.form['song_date']:
        song_details = get_song_details(request.form['spotify_uri'])
        new_song = DailySong(created_on=dateutil.parser.parse(request.form['song_date']).date(),
                             **song_details)
        new_song.insert()
        safe_commit()

    flash('Song set successfully!', 'success')
    return redirect(url_for('get_daily_songs'))
Example #5
0
def create_profile():
    """If this is the user's first login, the create_or_login function
    will redirect here so that the user can set up his profile.
    """
    if g.user is not None or 'openid' not in session:
        return redirect(url_for('index'))
    if request.method == 'POST':
        name = request.form['name']
        email = request.form['email']
        if not name:
            flash(u'Error: you have to provide a name', 'error')
        elif '@' not in email:
            flash(u'Error: you have to enter a valid email address', 'error')
        else:
            flash(u'Profile successfully created', 'success')
            user = User(name, email, session['openid'])
            user.insert()
            safe_commit()
            return redirect(oid.get_next_url())
    return render_template('create_profile.html', next_url=oid.get_next_url())