+
+#----------------
+# Login / Logout
+
+@app.route('/login', methods=['GET', 'POST'])
+def login():
+ error = None
+ if request.method == 'POST':
+ if request.form['username'] != app.config['USERNAME']:
+ error = 'Invalid username'
+ elif request.form['password'] != app.config['PASSWORD']:
+ error = 'Invalid password'
+ else:
+ session['logged_in'] = True
+ session['nickname'] = request.form['username']
+ if session['nickname'] == 'admin':
+ session['is_admin'] = True
+ flash('You were logged in')
+ return redirect(url_for('home'))
+ return render_template('login.html', error=error)
+
+@app.route('/logout')
+def logout():
+ session.pop('logged_in', None)
+ flash('You were logged out')
+ return redirect(url_for('home'))
+
+#---------------
+# User settings
+
+#------------
+# User admin
+
+
+#------------
+# Votes list
+
+@app.route('/votes/<votes>')
+def show_votes(votes):
+ today = date.today().strftime('%d %B %Y')
+ if votes == 'all':
+ cur = g.db.execute('select title, description, date_begin, date_end from votes order by id desc')
+ elif votes == 'archives':
+ cur = g.db.execute('select title, description, date_begin, date_end from votes where date_end < :today order by id desc', {"today" : today})
+ elif votes == 'currently':
+ cur = g.db.execute('select title, description, date_begin, date_end from votes where date_end > :today order by id desc', {"today" : today})
+ else:
+ abort(404)