From e1ad0e4e86ebb04f700569aab1a2675fd8cf3649 Mon Sep 17 00:00:00 2001 From: Adrian Moennich Date: Mon, 6 Jul 2015 11:38:51 +0200 Subject: [PATCH] Use signal to add RB entry in admin sidemenu --- indico/MaKaC/webinterface/pages/admins.py | 3 --- indico/modules/rb/__init__.py | 8 ++++++++ indico/modules/rb/views/admin/__init__.py | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/indico/MaKaC/webinterface/pages/admins.py b/indico/MaKaC/webinterface/pages/admins.py index 7013f1859..214bee03d 100644 --- a/indico/MaKaC/webinterface/pages/admins.py +++ b/indico/MaKaC/webinterface/pages/admins.py @@ -83,9 +83,6 @@ class WPAdminsBase(WPMainBase): urlHandlers.UHDomains.getURL()) mainSection.addItem( self._domainsMenuItem) - self._roomsMenuItem = wcomponents.SideMenuItem(_("Rooms"), url_for('rooms_admin.settings')) - mainSection.addItem(self._roomsMenuItem) - self._templatesMenuItem = wcomponents.SideMenuItem(_("Layout"), urlHandlers.UHAdminLayoutGeneral.getURL()) mainSection.addItem( self._templatesMenuItem) diff --git a/indico/modules/rb/__init__.py b/indico/modules/rb/__init__.py index cca7e272e..c7dfab6f8 100644 --- a/indico/modules/rb/__init__.py +++ b/indico/modules/rb/__init__.py @@ -25,6 +25,8 @@ from indico.modules.rb.models.blocking_principals import BlockingPrincipal from indico.modules.rb.models.blockings import Blocking from indico.modules.rb.models.reservations import Reservation from indico.modules.rb.models.rooms import Room +from indico.web.flask.util import url_for +from indico.util.i18n import _ logger = Logger.get('rb') @@ -44,6 +46,12 @@ def _import_tasks(sender, **kwargs): import indico.modules.rb.tasks +@signals.admin_sidemenu.connect +def _extend_admin_menu(sender, **kwargs): + from MaKaC.webinterface.wcomponents import SideMenuItem + return 'rb', SideMenuItem(_("Rooms"), url_for('rooms_admin.settings')) + + @signals.users.merged.connect def _merge_users(target, source, **kwargs): BlockingPrincipal.merge_users(target, source, 'blocking') diff --git a/indico/modules/rb/views/admin/__init__.py b/indico/modules/rb/views/admin/__init__.py index 8d762f24a..6ab6079ac 100644 --- a/indico/modules/rb/views/admin/__init__.py +++ b/indico/modules/rb/views/admin/__init__.py @@ -26,7 +26,7 @@ from indico.web.flask.util import url_for class WPRoomsBase(WPAdminsBase): def _setActiveSideMenuItem(self): - self._roomsMenuItem.setActive() + self.extra_menu_items['rb'].setActive() def _createTabCtrl(self): self._tabCtrl = TabControl() -- 2.11.4.GIT