def add_wizard_button(self): from cms.wizards.wizard_pool import entry_choices title = _("Create") try: page_pk = self.page.pk except AttributeError: page_pk = '' user = getattr(self.request, "user", None) disabled = user and hasattr(self, "page") and len( list(entry_choices(user, self.page))) == 0 lang = get_language_from_request( self.request, current_page=self.page) or get_default_language() url = '{url}?page={page}&language={lang}&edit'.format( url=reverse("cms_wizard_create"), page=page_pk, lang=lang, ) self.toolbar.add_modal_button(title, url, side=self.toolbar.RIGHT, disabled=disabled, on_close=REFRESH_PAGE)
def add_wizard_button(self): from cms.wizards.wizard_pool import entry_choices title = _("Create") try: page_pk = self.page.pk except AttributeError: page_pk = '' user = getattr(self.request, "user", None) disabled = user and hasattr(self, "page") and len( list(entry_choices(user, self.page))) == 0 url = '{url}?page={page}&edit'.format( url=reverse("cms_wizard_create"), page=page_pk ) self.toolbar.add_modal_button(title, url, side=self.toolbar.RIGHT, disabled=disabled, on_close=REFRESH_PAGE)
def add_wizard_button(self): from cms.wizards.wizard_pool import entry_choices title = _("Create") if self.page: user = self.request.user page_pk = self.page.pk disabled = len(list(entry_choices(user, self.page))) == 0 else: page_pk = '' disabled = True url = '{url}?page={page}&language={lang}&edit'.format( url=reverse("cms_wizard_create"), page=page_pk, lang=self.toolbar.site_language, ) self.toolbar.add_modal_button(title, url, side=self.toolbar.RIGHT, disabled=disabled, on_close=REFRESH_PAGE)
def enable_create_wizard_button(self): button_lists = [ result.item for result in self.toolbar.find_items(item_type=ButtonList) ] buttons = list( # flatten the list itertools.chain.from_iterable( [item.buttons for item in button_lists])) # There will always be this button, because we are in the context of # alias app views create_wizard_button = [ button for button in buttons if button.name == ugettext('Create') ][0] from cms.wizards.wizard_pool import entry_choices # we enable this button when user has permissions to perform actions on # wizard enable_create_wizard_button = bool( # entry_choices gets required argument page list(entry_choices(self.request.user, page=None))) create_wizard_button.disabled = not enable_create_wizard_button