コード例 #1
0
 def get_or_create_menu(self, key, verbose_name=None, disabled=False, side=LEFT, position=None):
     self.populate()
     if key in self.menus:
         menu = self.menus[key]
         if verbose_name:
             menu.name = verbose_name
         if menu.side != side:
             menu.side = side
         if position:
             self.remove_item(menu)
             self.add_item(menu, position=position)
         return menu
     menu = Menu(verbose_name, self.csrf_token, disabled=disabled, side=side)
     self.menus[key] = menu
     self.add_item(menu, position=position)
     return menu
コード例 #2
0
    def process_template_response(self, request, response):
        if request.user.is_authenticated() and request.user.is_staff:
            self.items = 0
            self.request = request
            self.language = get_lang(request)
            self.toolbar = request.toolbar
            self.menu = Menu("%(otype)s", self.toolbar.csrf_token, side=LEFT)

            context = getattr(response, 'context_data', {})
            self.add_object_menu(context.get('object', None))
            self.add_list_menu(context.get('object_list', None))

            if self.items:
                self.toolbar.menus['object-menu'] = self.menu
                self.toolbar.add_item(self.menu, position=None)

        return response