summaryrefslogtreecommitdiffstats
path: root/ipsilon
diff options
context:
space:
mode:
Diffstat (limited to 'ipsilon')
-rwxr-xr-xipsilon/admin/providers.py5
-rwxr-xr-xipsilon/providers/common.py1
2 files changed, 5 insertions, 1 deletions
diff --git a/ipsilon/admin/providers.py b/ipsilon/admin/providers.py
index 26e96a7..1a2df7c 100755
--- a/ipsilon/admin/providers.py
+++ b/ipsilon/admin/providers.py
@@ -36,7 +36,10 @@ class ProviderPlugins(Page):
for plugin in self._site[FACILITY]['available']:
cherrypy.log.error('Admin provider plugin: %s' % plugin)
obj = self._site[FACILITY]['available'][plugin]
- self.__dict__[plugin] = AdminPluginPage(obj, self)
+ page = AdminPluginPage(obj, self._site, self)
+ if hasattr(obj, 'admin'):
+ obj.admin.mount(page)
+ self.add_subtree(plugin, page)
def root_with_msg(self, message=None, message_type=None):
plugins = self._site[FACILITY]
diff --git a/ipsilon/providers/common.py b/ipsilon/providers/common.py
index 8e62cbe..f9c1311 100755
--- a/ipsilon/providers/common.py
+++ b/ipsilon/providers/common.py
@@ -43,6 +43,7 @@ class ProviderBase(PluginObject):
super(ProviderBase, self).__init__()
self.name = name
self.path = path
+ self.admin = None
def _debug(self, fact):
if cherrypy.config.get('debug', False):