annotate frontend/mfrontend/decorators.py @ 17:57a48d2aee18

Małe poprawki na liście zadań i mały dopisek do dokumentacji n.t. systemu szablonów
author Michał Rudowicz <michal.rudowicz@fl9.eu>
date Sun, 03 Apr 2011 14:07:19 +0200
parents 58a993029d9f
children
rev   line source
10
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
1 #!/usr/bin/python
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
2 # -*- coding: utf-8 -*-
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
3
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
4 from functools import wraps
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
5 from flask import g, request, redirect, url_for, session, flash
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
6
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
7 def login_required(f):
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
8 @wraps(f)
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
9 def decorated_function(*args, **kwargs):
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
10 try:
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
11 if not session["logged_in"]:
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
12 raise Exception()
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
13 except Exception as e:
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
14 flash(u"Nie masz uprawnień do oglądania żądanej strony.")
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
15 return redirect(url_for('frontend.login'))
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
16 return f(*args, **kwargs)
58a993029d9f Dodawanie nowych zadań i dekorator sprawdzający zalogowanie.
Michał Rudowicz <michal.rudowicz@fl9.eu>
parents:
diff changeset
17 return decorated_function