Fix exposed functions
[cascardo/ipsilon.git] / ipsilon / admin / info.py
index 4154339..4a8aaba 100755 (executable)
@@ -4,7 +4,7 @@
 
 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
@@ -112,9 +112,11 @@ class InfoPlugins(Page):
                               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]
@@ -126,8 +128,9 @@ class InfoPlugins(Page):
             obj.enable(self._site)
             msg = "Plugin %s enabled" % obj.name
         return self.root_with_msg(msg, "success")
-    enable.exposed = True
+    enable.public_function = True
 
+    @admin_protect
     def disable(self, plugin):
         msg = None
         plugins = self._site[FACILITY]
@@ -139,4 +142,4 @@ class InfoPlugins(Page):
             obj.disable(self._site)
             msg = "Plugin %s disabled" % obj.name
         return self.root_with_msg(msg, "success")
-    disable.exposed = True
+    disable.public_function = True