0001-backoffice-sync-with-wcs-backoffice-admin-unificatio.patch
extra/modules/backoffice.py | ||
---|---|---|
5 | 5 |
from quixote.html import TemplateIO, htmltext |
6 | 6 | |
7 | 7 |
from qommon.publisher import get_publisher_class |
8 |
from qommon.admin.menu import is_accessible |
|
8 | 9 | |
9 | 10 |
import wcs.backoffice.root |
10 | 11 |
import wcs.root |
... | ... | |
20 | 21 |
class BackofficeRootDirectory(wcs.backoffice.root.RootDirectory): |
21 | 22 |
_q_exports = ['', 'home', 'statistics'] |
22 | 23 | |
23 |
menu_items = [ |
|
24 |
('home', N_('Pending Forms')), |
|
25 |
('forms/', N_('Forms Workshop'), FormsDirectory.is_accessible), |
|
26 |
('workflows/', N_('Workflows Workshop'), WorkflowsDirectory.is_accessible), |
|
27 |
('/', N_('WCS Form Server'))] |
|
28 | ||
29 | 24 |
def get_intro_text(self): |
30 | 25 |
return _('Welcome on Au Quotidien back office interface') |
31 | 26 | |
... | ... | |
44 | 39 |
return r.getvalue() |
45 | 40 | |
46 | 41 |
def _q_lookup(self, component): |
47 |
if component == 'forms':
|
|
48 |
return FormsDirectory()
|
|
49 |
if component == 'workflows':
|
|
50 |
return WorkflowsDirectory()
|
|
42 |
if component in [str(x[0]).strip('/') for x in self.menu_items]:
|
|
43 |
if not is_accessible(component):
|
|
44 |
raise errors.AccessForbiddenError()
|
|
45 |
return getattr(self, component)
|
|
51 | 46 |
return FormPage(component) |
52 | 47 | |
53 | 48 |
class FormPage(wcs.backoffice.root.FormPage): |
54 |
- |