import cherrypy
from ipsilon.util.page import Page
-from ipsilon.util.page import admin_protect
+from ipsilon.util.page import admin_protect, auth_protect
class AdminPluginPage(Page):
self.url = '%s/%s' % (self.basepath, mount)
self.menu = []
+ @auth_protect
def root(self, *args, **kwargs):
return self._template('admin/index.html',
title='Configuration',
import cherrypy
from ipsilon.util.page import Page
-from ipsilon.util.page import admin_protect
+from ipsilon.util.page import admin_protect, auth_protect
from ipsilon.util.plugin import PluginObject
from ipsilon.admin.common import AdminPluginPage
from ipsilon.info.common import FACILITY
enabled=ordered,
menu=self._master.menu)
+ @auth_protect
def root(self, *args, **kwargs):
return self.root_with_msg()
+ @admin_protect
def enable(self, plugin):
msg = None
plugins = self._site[FACILITY]
return self.root_with_msg(msg, "success")
enable.exposed = True
+ @admin_protect
def disable(self, plugin):
msg = None
plugins = self._site[FACILITY]
import cherrypy
from ipsilon.util.page import Page
-from ipsilon.util.page import admin_protect
+from ipsilon.util.page import admin_protect, auth_protect
from ipsilon.util.plugin import PluginObject
from ipsilon.admin.common import AdminPluginPage
from ipsilon.login.common import FACILITY
enabled=ordered,
menu=self._master.menu)
+ @auth_protect
def root(self, *args, **kwargs):
return self.root_with_msg()
+ @admin_protect
def enable(self, plugin):
msg = None
plugins = self._site[FACILITY]
return self.root_with_msg(msg, "success")
enable.exposed = True
+ @admin_protect
def disable(self, plugin):
msg = None
plugins = self._site[FACILITY]
import cherrypy
from ipsilon.util.page import Page
+from ipsilon.util.page import admin_protect, auth_protect
from ipsilon.providers.common import FACILITY
from ipsilon.admin.common import AdminPluginPage
enabled=enabled_plugins,
menu=self._master.menu)
+ @auth_protect
def root(self, *args, **kwargs):
return self.root_with_msg()
+ @admin_protect
def enable(self, plugin):
msg = None
plugins = self._site[FACILITY]
return self.root_with_msg(msg, "success")
enable.exposed = True
+ @admin_protect
def disable(self, plugin):
msg = None
plugins = self._site[FACILITY]
return check
+def auth_protect(fn):
+ def check(self, *args, **kwargs):
+ if UserSession().get_user().is_anonymous:
+ raise cherrypy.HTTPRedirect(self.basepath)
+ else:
+ return fn(self, *args, **kwargs)
+
+ return check
+
+
class Page(Log):
def __init__(self, site, form=False):
if 'template_env' not in site: