comparison frontend/mfrontend/views/frontend.py @ 10:58a993029d9f

Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
author Michał Rudowicz <michal.rudowicz@fl9.eu>
date Mon, 07 Mar 2011 10:47:48 +0100
parents d86794939fe4
children c87f82a15606
comparison
equal deleted inserted replaced
9:9a0a9fa7f91d 10:58a993029d9f
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # -*- coding: utf-8 -*- 2 # -*- coding: utf-8 -*-
3 3
4 from flask import Module, render_template, request, url_for 4 from flask import Module, render_template, request, url_for
5 from flask import escape, session, redirect, flash, abort 5 from flask import escape, session, redirect, flash, abort, g
6 from mfrontend import db, utils, exceptions 6 from mfrontend import db, utils, exceptions
7 frontend = Module(__name__) 7 frontend = Module(__name__)
8 8
9 @frontend.route('/') 9 @frontend.route('/')
10 def index(): 10 def index():
24 def login(): 24 def login():
25 if request.method == 'POST': 25 if request.method == 'POST':
26 try: 26 try:
27 if db.user_can_login(request.form['username'], 27 if db.user_can_login(request.form['username'],
28 request.form['password']) : 28 request.form['password']) :
29 session['user_id'] = db.get_user_id(request.form['username'])
30 session['user_name'] = request.form['username']
29 session['logged_in'] = True 31 session['logged_in'] = True
30 session['logged_user'] = request.form['username']
31 flash(u'Zalogowano') 32 flash(u'Zalogowano')
32 return redirect(url_for('index')) 33 return redirect(url_for('index'))
33 else: 34 else:
34 raise exceptions.BadPasswordOrUsername() 35 raise exceptions.BadPasswordOrUsername()
35 except (exceptions.UserNotActivated, 36 except (exceptions.UserNotActivated,
42 def logout(): 43 def logout():
43 """Funkcja powoduje wyczyszczenie sesji użytkownika, 44 """Funkcja powoduje wyczyszczenie sesji użytkownika,
44 a w efekcie wylogowanie z systemu. 45 a w efekcie wylogowanie z systemu.
45 """ 46 """
46 session.clear() 47 session.clear()
48 g.user = None
47 flash('Wylogowano') 49 flash('Wylogowano')
48 return redirect(url_for('index')) 50 return redirect(url_for('index'))
49 51
50 @frontend.route('/register/', methods=['GET', 'POST']) 52 @frontend.route('/register/', methods=['GET', 'POST'])
51 def register(): 53 def register():