admin: set forms/workflows breadcrumb in _q_traverse (#43080)

This commit is contained in:
Frédéric Péters 2020-05-19 14:42:57 +02:00
parent c3795921c3
commit 82ea582a0f
5 changed files with 18 additions and 24 deletions

View File

@ -169,7 +169,6 @@ class CategoriesDirectory(Directory):
_q_exports = ['', 'new', 'update_order']
def _q_index(self):
get_response().breadcrumb.append( ('categories/', _('Categories')) )
get_response().add_javascript(['jquery.js', 'jquery-ui.js', 'biglist.js',
'qommon.wysiwyg.js'])
html_top('categories', title = _('Categories'))
@ -207,7 +206,6 @@ class CategoriesDirectory(Directory):
return 'ok'
def new(self):
get_response().breadcrumb.append( ('categories/', _('Categories')) )
get_response().breadcrumb.append( ('new', _('New')) )
category_ui = CategoryUI(None)
form = category_ui.get_form()
@ -229,9 +227,8 @@ class CategoriesDirectory(Directory):
return r.getvalue()
def _q_lookup(self, component):
get_response().breadcrumb.append( ('categories/', _('Categories')) )
return CategoryPage(component)
def _q_traverse(self, path):
get_response().breadcrumb.append(('forms/', _('Forms')))
get_response().breadcrumb.append( ('categories/', _('Categories')) )
return super(CategoriesDirectory, self)._q_traverse(path)

View File

@ -24,7 +24,7 @@ import time
from django.utils.six import BytesIO, StringIO
from quixote import get_response, redirect
from quixote import get_publisher, get_response, redirect
from quixote.directory import Directory, AccessControlled
from quixote.html import TemplateIO, htmltext
@ -1478,9 +1478,7 @@ class FormDefPage(Directory):
class NamedDataSourcesDirectoryInForms(NamedDataSourcesDirectory):
def _q_traverse(self, path):
get_response().breadcrumb.append(('forms/', _('Forms')))
return super(NamedDataSourcesDirectoryInForms, self)._q_traverse(path)
pass
class FormsDirectory(AccessControlled, Directory):
@ -1510,8 +1508,11 @@ class FormsDirectory(AccessControlled, Directory):
def html_top(self, title):
return html_top('forms', title)
def _q_traverse(self, path):
get_response().breadcrumb.append(('forms/', _('Forms')))
return super()._q_traverse(path)
def _q_index(self):
get_response().breadcrumb.append( ('forms/', _('Forms')) )
self.html_top(title = _('Forms'))
r = TemplateIO(html=True)
get_response().add_javascript(['jquery.js', 'widget_list.js'])
@ -1576,7 +1577,6 @@ class FormsDirectory(AccessControlled, Directory):
return r.getvalue()
def new(self):
get_response().breadcrumb.append( ('forms/', _('Forms')) )
get_response().breadcrumb.append( ('new', _('New')) )
if Role.count() == 0:
return template.error_page('forms', _('You first have to define roles.'))
@ -1602,7 +1602,6 @@ class FormsDirectory(AccessControlled, Directory):
return r.getvalue()
def _q_lookup(self, component):
get_response().breadcrumb.append( ('forms/', _('Forms')) )
return self.formdef_page_class(component)
def p_import(self):
@ -1623,7 +1622,6 @@ class FormsDirectory(AccessControlled, Directory):
except ValueError:
pass
get_response().breadcrumb.append( ('forms/', _('Forms')) )
get_response().breadcrumb.append( ('import', _('Import')) )
self.html_top(title=_(self.import_title))
r = TemplateIO(html=True)

View File

@ -30,7 +30,6 @@ class MailTemplatesDirectory(Directory):
do_not_call_in_templates = True
def _q_traverse(self, path):
get_response().breadcrumb.append(('workflows/', _('Workflows')))
get_response().breadcrumb.append(('mail-templates/', _('Mail Templates')))
return super(MailTemplatesDirectory, self)._q_traverse(path)

View File

@ -27,7 +27,7 @@ from django.utils import six
from django.utils.encoding import force_bytes
from django.utils.six import StringIO
from quixote import redirect, get_publisher
from quixote import redirect, get_publisher, get_response
from quixote.directory import Directory
from quixote.html import TemplateIO, htmltext
@ -1801,9 +1801,7 @@ class WorkflowPage(Directory):
class NamedDataSourcesDirectoryInWorkflows(NamedDataSourcesDirectory):
def _q_traverse(self, path):
get_response().breadcrumb.append(('workflows/', _('Workflows')))
return super(NamedDataSourcesDirectoryInWorkflows, self)._q_traverse(path)
pass
class WorkflowsDirectory(Directory):
@ -1817,8 +1815,11 @@ class WorkflowsDirectory(Directory):
def html_top(self, title):
return html_top('workflows', title)
def _q_traverse(self, path):
get_response().breadcrumb.append(('workflows/', _('Workflows')))
return super()._q_traverse(path)
def _q_index(self):
get_response().breadcrumb.append( ('workflows/', _('Workflows')) )
self.html_top(title = _('Workflows'))
r = TemplateIO(html=True)
@ -1893,7 +1894,6 @@ class WorkflowsDirectory(Directory):
return r.getvalue()
def new(self):
get_response().breadcrumb.append( ('workflows/', _('Workflows')) )
get_response().breadcrumb.append( ('new', _('New')) )
workflow_ui = WorkflowUI(None)
@ -1916,7 +1916,6 @@ class WorkflowsDirectory(Directory):
return r.getvalue()
def _q_lookup(self, component):
get_response().breadcrumb.append( ('workflows/', _('Workflows')) )
return WorkflowPage(component, html_top=self.html_top)
def p_import(self):
@ -1937,7 +1936,6 @@ class WorkflowsDirectory(Directory):
except ValueError:
pass
get_response().breadcrumb.append( ('workflows/', _('Workflows')) )
get_response().breadcrumb.append( ('import', _('Import')) )
self.html_top(title=_('Import Workflow'))
r = TemplateIO(html=True)

View File

@ -19,6 +19,7 @@
import time
from quixote import get_publisher, get_request, get_response, get_session, redirect
from quixote.directory import Directory
from quixote.html import TemplateIO, htmltext
from ..qommon import _, N_, misc
@ -221,8 +222,11 @@ class CardsDirectory(FormsDirectory):
def html_top(self, title):
return html_top('cards', title)
def _q_index(self):
def _q_traverse(self, path):
get_response().breadcrumb.append(('cards/', _('Card Models')))
return Directory._q_traverse(self, path)
def _q_index(self):
self.html_top(title=_('Card Models'))
r = TemplateIO(html=True)
@ -239,7 +243,6 @@ class CardsDirectory(FormsDirectory):
return r.getvalue()
def new(self):
get_response().breadcrumb.append(('cards/', _('Card Models')))
get_response().breadcrumb.append(('new', _('New')))
formdefui = self.formdef_ui_class(None)
form = formdefui.new_form_ui()
@ -270,5 +273,4 @@ class CardsDirectory(FormsDirectory):
return response
def _q_lookup(self, component):
get_response().breadcrumb.append(('cards/', _('Card Models')))
return self.formdef_page_class(component)