def configuration_links(self): """The enabled involvement links.""" series_menu = MenuAPI(self.context).overview set_branch = series_menu['set_branch'] set_branch.text = 'Configure series branch' if self.codehosting_usage == ServiceUsage.LAUNCHPAD: configured = True else: configured = False return [dict(link=set_branch, configured=configured)]
def test_team(self): team = self.factory.makeTeam() menu_api = MenuAPI(team) menu_api._selectedfacetname = 'bugs' enabled_links = sorted(link.name for link in menu_api.navigation.values() if link.enabled) expected_links = [ 'assignedbugs', 'relatedbugs', 'softwarebugs', 'subscribedbugs' ] self.assertEqual(expected_links, enabled_links)
def test_user(self): user = self.factory.makePerson() menu_api = MenuAPI(user) menu_api._selectedfacetname = 'bugs' enabled_links = sorted(link.name for link in menu_api.navigation.values() if link.enabled) expected_links = [ 'affectingbugs', 'assignedbugs', 'commentedbugs', 'relatedbugs', 'reportedbugs', 'softwarebugs', 'subscribedbugs' ] self.assertEqual(expected_links, enabled_links)
def initialize(self): menuapi = MenuAPI(self.context) self.links = sorted([ link for link in menuapi.navigation.values() if (link.enabled or config.devmode)], key=operator.attrgetter('sort_key')) self.title = None if len(self.links) > 0: facet = menuapi.selectedfacetname() menu = queryAdapter(self.context, INavigationMenu, name=facet) if menu is not None: self.title = menu.title self.enabled_links = [link for link in self.links if link.enabled]
def visible_disabled_links(self): """Important disabled links. These are displayed to notify the user to provide configuration info to enable the links. Override the visible_disabled_link_names attribute to change the results. """ involved_menu = MenuAPI(self).navigation important_links = [ involved_menu[name] for name in self.visible_disabled_link_names ] return sorted([link for link in important_links if not link.enabled], key=attrgetter('sort_key'))
def enabled_links(self): """The enabled involvement links.""" menuapi = MenuAPI(self) return sorted( [link for link in menuapi.navigation.values() if link.enabled], key=attrgetter('sort_key'))