From: Simo Sorce Date: Mon, 24 Mar 2014 21:06:05 +0000 (-0400) Subject: Move admin_protect to a more generic module X-Git-Tag: v0.2.2~56 X-Git-Url: http://git.cascardo.info/?p=cascardo%2Fipsilon.git;a=commitdiff_plain;h=667901638f082e05b4ac61a14f4ddc07ec987742 Move admin_protect to a more generic module Signed-off-by: Simo Sorce --- diff --git a/ipsilon/admin/common.py b/ipsilon/admin/common.py index 10171dc..2897237 100755 --- a/ipsilon/admin/common.py +++ b/ipsilon/admin/common.py @@ -19,23 +19,12 @@ from ipsilon.util.data import Store from ipsilon.util.page import Page -from ipsilon.util.user import UserSession +from ipsilon.util.page import admin_protect from ipsilon.util.plugin import PluginObject import cherrypy from ipsilon.login.common import FACILITY as LOGIN_FACILITY -def admin_protect(fn): - - def check(*args, **kwargs): - if UserSession().get_user().is_admin: - return fn(*args, **kwargs) - - raise cherrypy.HTTPError(403) - - return check - - class LoginPluginPage(Page): def __init__(self, obj, site, baseurl): diff --git a/ipsilon/util/page.py b/ipsilon/util/page.py index 56a6463..7dda1d7 100755 --- a/ipsilon/util/page.py +++ b/ipsilon/util/page.py @@ -21,6 +21,17 @@ from ipsilon.util.user import UserSession import cherrypy +def admin_protect(fn): + + def check(*args, **kwargs): + if UserSession().get_user().is_admin: + return fn(*args, **kwargs) + + raise cherrypy.HTTPError(403) + + return check + + def protect(): UserSession().remote_login()