admin: move extra options panel to the settings panel (#5396)
This commit is contained in:
parent
dc027d89c1
commit
553c0def5c
|
@ -68,9 +68,7 @@ rdb.register_menu_item('payments/', _('Payments'), check_visibility)
|
|||
rdb.register_directory('strongbox', modules.strongbox_ui.StrongboxDirectory())
|
||||
rdb.register_menu_item('strongbox/', _('Strongbox'), check_visibility)
|
||||
|
||||
rdb.register_directory('panel', modules.admin.PanelDirectory())
|
||||
rdb.register_menu_item('panel/', _('Control Panel'))
|
||||
|
||||
rdb.register_directory('settings', modules.admin.SettingsDirectory())
|
||||
rdb.register_directory('categories', modules.categories_admin.CategoriesDirectory())
|
||||
|
||||
import wcs.fields
|
||||
|
|
|
@ -11,6 +11,7 @@ from wcs.roles import get_user_roles
|
|||
from qommon import errors, get_cfg
|
||||
from qommon.form import *
|
||||
|
||||
import wcs.admin.settings
|
||||
from wcs.formdef import FormDef
|
||||
from wcs.categories import Category
|
||||
from qommon.backoffice.menu import html_top
|
||||
|
@ -35,25 +36,6 @@ class PanelDirectory(Directory):
|
|||
|
||||
domino = AbeliumDominoDirectory()
|
||||
|
||||
def _q_index(self):
|
||||
html_top('panel', _('Control Panel'))
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<ul>')
|
||||
r += htmltext('<li><a href="announces">%s</a></li>') % _('Announces Options')
|
||||
r += htmltext('<li><a href="permissions">%s</a></li>') % _('Permissions')
|
||||
r += htmltext('<li><a href="event_keywords">%s</a></li>') % _('Event Keywords')
|
||||
r += htmltext('<li><a href="announce_themes">%s</a></li>') % _('Announce Themes')
|
||||
if get_publisher().has_site_option('strongbox'):
|
||||
r += htmltext('<li><a href="strongbox">%s</a></li>') % _('Strongbox Support')
|
||||
if get_publisher().has_site_option('clicrdv'):
|
||||
r += htmltext('<li><a href="clicrdv">%s</a></li>') % _('ClicRDV Integration')
|
||||
if get_publisher().has_site_option('domino'):
|
||||
r += htmltext('<li><a href="domino">%s</a></li>') % _('Abelium Domino Integration')
|
||||
r += htmltext('</ul>')
|
||||
return r.getvalue()
|
||||
|
||||
def _verify_mask(self, form):
|
||||
if form.is_submitted():
|
||||
if not re.match("[0-9Xx]*$", form.get('mobile_mask') or ''):
|
||||
|
@ -82,12 +64,11 @@ class PanelDirectory(Directory):
|
|||
self._verify_mask(form)
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
if not form.is_submitted() or form.has_errors():
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
get_response().breadcrumb.append(('announces', _('Announces Options')))
|
||||
html_top('panel', _('Announces Options'))
|
||||
get_response().breadcrumb.append(('aq/announces', _('Announces Options')))
|
||||
html_top('settings', _('Announces Options'))
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<h2>%s</h2>') % _('Announces Options')
|
||||
r += form.render()
|
||||
|
@ -95,7 +76,7 @@ class PanelDirectory(Directory):
|
|||
else:
|
||||
from wcs.admin.settings import cfg_submit
|
||||
cfg_submit(form, 'announces', ('sms_support','mobile_mask'))
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
def permissions(self):
|
||||
permissions_cfg = get_cfg('aq-permissions', {})
|
||||
|
@ -122,12 +103,11 @@ class PanelDirectory(Directory):
|
|||
form.add_submit('cancel', _('Cancel'))
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
if not form.is_submitted() or form.has_errors():
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
get_response().breadcrumb.append(('permissions', _('Permissions')))
|
||||
html_top('panel', _('Permissions'))
|
||||
get_response().breadcrumb.append(('aq/permissions', _('Permissions')))
|
||||
html_top('settings', _('Permissions'))
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<h2>%s</h2>') % _('Permissions')
|
||||
r += form.render()
|
||||
|
@ -136,7 +116,7 @@ class PanelDirectory(Directory):
|
|||
from wcs.admin.settings import cfg_submit
|
||||
cfg_submit(form, 'aq-permissions',
|
||||
('forms', 'events', 'links', 'announces', 'payments', 'strongbox'))
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
def event_keywords(self):
|
||||
misc_cfg = get_cfg('misc', {})
|
||||
|
@ -151,12 +131,11 @@ class PanelDirectory(Directory):
|
|||
form.add_submit('cancel', _('Cancel'))
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
if not form.is_submitted() or form.has_errors():
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
get_response().breadcrumb.append(('event_keywords', _('Event Keywords')))
|
||||
html_top('panel', _('Event Keywords'))
|
||||
get_response().breadcrumb.append(('aq/event_keywords', _('Event Keywords')))
|
||||
html_top('settings', _('Event Keywords'))
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<h2>%s</h2>') % _('Event Keywords')
|
||||
r += form.render()
|
||||
|
@ -164,7 +143,7 @@ class PanelDirectory(Directory):
|
|||
else:
|
||||
from wcs.admin.settings import cfg_submit
|
||||
cfg_submit(form, 'misc', ('event_tags',))
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
def announce_themes(self):
|
||||
misc_cfg = get_cfg('misc', {})
|
||||
|
@ -179,12 +158,11 @@ class PanelDirectory(Directory):
|
|||
form.add_submit('cancel', _('Cancel'))
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
if not form.is_submitted() or form.has_errors():
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
get_response().breadcrumb.append(('announce_themes', _('Announce Themes')))
|
||||
html_top('panel', _('Announce Themes'))
|
||||
get_response().breadcrumb.append(('aq/announce_themes', _('Announce Themes')))
|
||||
html_top('settings', _('Announce Themes'))
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<h2>%s</h2>') % _('Announce Themes')
|
||||
r += form.render()
|
||||
|
@ -192,7 +170,7 @@ class PanelDirectory(Directory):
|
|||
else:
|
||||
from wcs.admin.settings import cfg_submit
|
||||
cfg_submit(form, 'misc', ('announce_themes',))
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
def strongbox(self):
|
||||
if not get_publisher().has_site_option('strongbox'):
|
||||
|
@ -206,12 +184,11 @@ class PanelDirectory(Directory):
|
|||
form.add_submit('cancel', _('Cancel'))
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
if not form.is_submitted() or form.has_errors():
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
get_response().breadcrumb.append(('strongbox', _('Strongbox Support')))
|
||||
html_top('panel', _('Strongbox Support'))
|
||||
get_response().breadcrumb.append(('aq/strongbox', _('Strongbox Support')))
|
||||
html_top('settings', _('Strongbox Support'))
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<h2>%s</h2>') % _('Strongbox Support')
|
||||
r += form.render()
|
||||
|
@ -219,7 +196,7 @@ class PanelDirectory(Directory):
|
|||
else:
|
||||
from wcs.admin.settings import cfg_submit
|
||||
cfg_submit(form, 'misc', ('aq-strongbox',))
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
def clicrdv(self):
|
||||
if not get_publisher().has_site_option('clicrdv'):
|
||||
|
@ -242,12 +219,11 @@ class PanelDirectory(Directory):
|
|||
form.add_submit('cancel', _('Cancel'))
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
if not form.is_submitted() or form.has_errors():
|
||||
get_response().breadcrumb.append(('panel', _('Control Panel')))
|
||||
get_response().breadcrumb.append(('clicrdv', _('ClicRDV Integration')))
|
||||
html_top('panel', _('ClicRDV Integration'))
|
||||
get_response().breadcrumb.append(('aq/clicrdv', _('ClicRDV Integration')))
|
||||
html_top('settings', _('ClicRDV Integration'))
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext('<h2>%s</h2>') % _('ClicRDV Integration')
|
||||
r += form.render()
|
||||
|
@ -274,10 +250,35 @@ class PanelDirectory(Directory):
|
|||
'aq-clicrdv-api-key',
|
||||
'aq-clicrdv-api-username',
|
||||
'aq-clicrdv-api-password'))
|
||||
return redirect('.')
|
||||
return redirect('..')
|
||||
|
||||
|
||||
AdminRootDirectory.register_page('panel', PanelDirectory())
|
||||
class SettingsDirectory(wcs.admin.settings.SettingsDirectory):
|
||||
def _q_index(self):
|
||||
r = TemplateIO(html=True)
|
||||
r += htmltext(super(SettingsDirectory, self)._q_index())
|
||||
r += htmltext('<div class="splitcontent-right">')
|
||||
r += htmltext('<div class="bo-block">')
|
||||
r += htmltext('<h2>%s</h2>') % _('Extra Options')
|
||||
r += htmltext('<ul>')
|
||||
r += htmltext('<li><a href="aq/announces">%s</a></li>') % _('Announces Options')
|
||||
r += htmltext('<li><a href="aq/permissions">%s</a></li>') % _('Permissions')
|
||||
r += htmltext('<li><a href="aq/event_keywords">%s</a></li>') % _('Event Keywords')
|
||||
r += htmltext('<li><a href="aq/announce_themes">%s</a></li>') % _('Announce Themes')
|
||||
if get_publisher().has_site_option('strongbox'):
|
||||
r += htmltext('<li><a href="aq/strongbox">%s</a></li>') % _('Strongbox Support')
|
||||
if get_publisher().has_site_option('clicrdv'):
|
||||
r += htmltext('<li><a href="aq/clicrdv">%s</a></li>') % _('ClicRDV Integration')
|
||||
if get_publisher().has_site_option('domino'):
|
||||
r += htmltext('<li><a href="aq/domino">%s</a></li>') % _('Abelium Domino Integration')
|
||||
r += htmltext('</ul>')
|
||||
r += htmltext('</div')
|
||||
r += htmltext('</div')
|
||||
return r.getvalue()
|
||||
|
||||
def _q_lookup(self, component):
|
||||
if component == 'aq':
|
||||
return PanelDirectory()
|
||||
return super(SettingsDirectory, self)._q_lookup(component)
|
||||
|
||||
import categories_admin
|
||||
|
||||
|
|
Reference in New Issue