diff options
Diffstat (limited to 'ipsilon/root.py')
| -rwxr-xr-x | ipsilon/root.py | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/ipsilon/root.py b/ipsilon/root.py new file mode 100755 index 0000000..160e85e --- /dev/null +++ b/ipsilon/root.py @@ -0,0 +1,44 @@ +#!/usr/bin/python +# +# Copyright (C) 2013 Simo Sorce <simo@redhat.com> +# +# see file 'COPYING' for use and warranty information +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +from util import page +from login import common as lc +from admin import common as ac +import cherrypy + +sites = dict() + +class Root(page.Page): + + def __init__(self, site, template_env): + if not site in sites: + sites[site] = dict() + if template_env: + sites[site]['template_env'] = template_env + super(Root, self).__init__(sites[site]) + + # now set up the default login plugins + self.login = lc.Login(self._site) + self.logout = lc.Logout(self._site) + + # after all plugins are setup we can instantiate the admin pages + self.admin = ac.Admin(self._site) + + def root(self): + return self._template('index.html', title='Root') |
