def add_admin_menu(self): admin_menu = self.toolbar.get_or_create_menu(ADMIN_MENU_IDENTIFIER, self.current_site.name) if self.request.user.has_perm( 'user.change_user') and User in admin.site._registry: admin_menu.add_sideframe_item( _('Users'), url=reverse("admin:" + user_model_label.replace('.', '_').lower() + "_changelist")) # sites menu if get_cms_setting('PERMISSION'): sites_queryset = get_user_sites_queryset(self.request.user) else: sites_queryset = Site.objects.all() if len(sites_queryset) > 1: sites_menu = admin_menu.get_or_create_menu('sites', _('Sites')) sites_menu.add_sideframe_item( _('Admin Sites'), url=reverse('admin:sites_site_changelist')) sites_menu.add_break(ADMIN_SITES_BREAK) for site in sites_queryset: sites_menu.add_link_item( site.name, url='http://%s' % site.domain, active=site.pk == self.current_site.pk) # admin admin_menu.add_sideframe_item(_('Administration'), url=reverse('admin:index')) admin_menu.add_break(ADMINISTRATION_BREAK) # cms users admin_menu.add_sideframe_item( _('User settings'), url=reverse('admin:cms_usersettings_change')) admin_menu.add_break(USER_SETTINGS_BREAK) # logout # If current page is not published or has view restrictions user is # redirected to the home page: # * published page: no redirect # * unpublished page: redirect to the home page # * published page with login_required: redirect to the home page # * published page with view permissions: redirect to the home page if self.request.current_page: if not self.request.current_page.is_published(self.current_lang): page = self.request.current_page else: page = self.request.current_page.get_public_object() else: page = None redirect_url = '/' if (page and (not page.is_published(self.current_lang) or page.login_required or not page.has_view_permission(self.request, AnonymousUser()))): admin_menu.add_ajax_item(_('Logout'), action=reverse('admin:logout'), active=True, on_success=redirect_url) else: admin_menu.add_ajax_item(_('Logout'), action=reverse('admin:logout'), active=True)
def add_admin_menu(self): admin_menu = self.toolbar.get_or_create_menu(ADMIN_MENU_IDENTIFIER, self.current_site.name) if self.request.user.has_perm('user.change_user') and User in admin.site._registry: admin_menu.add_sideframe_item(_('Users'), url=reverse( "admin:" + user_model_label.replace('.', '_').lower() + "_changelist")) # sites menu if get_cms_setting('PERMISSION'): sites_queryset = get_user_sites_queryset(self.request.user) else: sites_queryset = Site.objects.all() if len(sites_queryset) > 1: sites_menu = admin_menu.get_or_create_menu('sites', _('Sites')) sites_menu.add_sideframe_item(_('Admin Sites'), url=reverse('admin:sites_site_changelist')) sites_menu.add_break(ADMIN_SITES_BREAK) for site in sites_queryset: sites_menu.add_link_item(site.name, url='http://%s' % site.domain, active=site.pk == self.current_site.pk) # admin admin_menu.add_sideframe_item(_('Administration'), url=reverse('admin:index')) admin_menu.add_break(ADMINISTRATION_BREAK) # cms users admin_menu.add_sideframe_item(_('User settings'), url=reverse('admin:cms_usersettings_change')) admin_menu.add_break(USER_SETTINGS_BREAK) # logout # If current page is not published or has view restrictions user is # redirected to the home page: # * published page: no redirect # * unpublished page: redirect to the home page # * published page with login_required: redirect to the home page # * published page with view permissions: redirect to the home page if self.request.current_page: if not self.request.current_page.is_published(self.current_lang): page = self.request.current_page else: page = self.request.current_page.get_public_object() else: page = None redirect_url = '/' if (page and (not page.is_published(self.current_lang) or page.login_required or not page.has_view_permission(self.request, AnonymousUser()))): admin_menu.add_ajax_item(_('Logout'), action=reverse('admin:logout'), active=True, on_success=redirect_url) else: admin_menu.add_ajax_item(_('Logout'), action=reverse('admin:logout'), active=True)
def add_admin_menu(self): admin_menu = self.toolbar.get_or_create_menu(ADMIN_MENU_IDENTIFIER, self.current_site.name) if self.request.user.has_perm('user.change_user') and User in admin.site._registry: admin_menu.add_sideframe_item(_('Users'), url=reverse( "admin:" + user_model_label.replace('.', '_').lower() + "_changelist")) # sites menu if get_cms_setting('PERMISSION'): sites_queryset = get_user_sites_queryset(self.request.user) else: sites_queryset = Site.objects.all() if len(sites_queryset) > 1: sites_menu = admin_menu.get_or_create_menu('sites', _('Sites')) sites_menu.add_sideframe_item(_('Admin Sites'), url=reverse('admin:sites_site_changelist')) sites_menu.add_break(ADMIN_SITES_BREAK) for site in sites_queryset: sites_menu.add_link_item(site.name, url='http://%s' % site.domain, active=site.pk == self.current_site.pk) # admin admin_menu.add_sideframe_item(_('Administration'), url=reverse('admin:index')) admin_menu.add_break(ADMINISTRATION_BREAK) # cms users admin_menu.add_sideframe_item(_('User settings'), url=reverse('admin:cms_usersettings_change')) admin_menu.add_break(USER_SETTINGS_BREAK) # logout # If current page is not published or has view restrictions user is # redirected to the home page: # * published page: no redirect # * unpublished page: redirect to the home page # * published page with login_required: redirect to the home page # * published page with view permissions: redirect to the home page if self.request.current_page: if not self.request.current_page.is_published(self.current_lang): page = self.request.current_page else: page = self.request.current_page.get_public_object() else: page = None redirect_url = '/' # # We'll show "Logout Joe Bloggs" if the name fields in auth.User are # completed, else "Logout jbloggs". If anything goes wrong, it'll just # be "Logout". # try: if self.request.user.get_full_name(): user_name = self.request.user.get_full_name() else: if DJANGO_1_4: user_name = self.request.user.username else: user_name = self.request.user.get_username() except: user_name = '' if user_name: logout_menu_text = _('Logout %s') % user_name else: logout_menu_text = _('Logout') if (page and (not page.is_published(self.current_lang) or page.login_required or not page.has_view_permission(self.request, AnonymousUser()))): on_success=redirect_url else: on_success=self.toolbar.REFRESH_PAGE admin_menu.add_ajax_item( logout_menu_text, action=reverse('admin:logout'), active=True, on_success=on_success )