remove settings panel (#64972)

This commit is contained in:
Frédéric Péters 2022-05-06 22:55:47 +02:00
parent 7423a58599
commit 5cdd6c0e22
4 changed files with 0 additions and 132 deletions

View File

@ -4,7 +4,6 @@ from wcs.qommon import _
from wcs.qommon.publisher import get_publisher_class, get_request
from wcs.qommon.misc import get_cfg
from modules import admin
from modules import backoffice
from modules import categories_admin
from modules import formpage
@ -20,8 +19,6 @@ rdb = get_publisher_class().backoffice_directory_class
rdb.items = []
rdb.register_directory('settings', admin.SettingsDirectory())
import wcs.admin.forms
wcs.admin.forms.FormsDirectory.categories = categories_admin.CategoriesDirectory()

View File

@ -1,96 +0,0 @@
import os
from quixote import get_publisher, redirect
from quixote.directory import Directory
from quixote.html import htmltext, TemplateIO
import wcs.admin.root
import wcs.root
from wcs.roles import get_user_roles
from wcs.qommon import _, N_
from wcs.qommon import errors, get_cfg
from wcs.qommon.form import *
import wcs.admin.settings
from wcs.formdef import FormDef
from wcs.categories import Category
from wcs.qommon.backoffice.menu import html_top
import re
class PanelDirectory(Directory):
_q_exports = ['', 'update', 'permissions']
label = N_('Control Panel')
def _verify_mask(self, form):
if form.is_submitted():
if not re.match("[0-9Xx]*$", form.get('mobile_mask') or ''):
form.set_error('mobile_mask', _('Invalid value'))
else:
string_value = form.get_widget('mobile_mask').value
if string_value:
form.get_widget('mobile_mask').value = string_value.upper()
def permissions(self):
permissions_cfg = get_cfg('aq-permissions', {})
form = Form(enctype='multipart/form-data')
form.add(
SingleSelectWidget,
'forms',
title=_('Admin role for forms'),
value=permissions_cfg.get('forms', None),
options=[(None, _('Nobody'), None)] + get_user_roles(),
)
if get_publisher().has_site_option('auquotidien-payments'):
form.add(
SingleSelectWidget,
'payments',
title=_('Admin role for payments'),
value=permissions_cfg.get('payments', None),
options=[(None, _('Nobody'), None)] + get_user_roles(),
)
form.add_submit('submit', _('Submit'))
form.add_submit('cancel', _('Cancel'))
if form.get_widget('cancel').parse():
return redirect('..')
if not form.is_submitted() or form.has_errors():
get_response().breadcrumb.append(('aq/permissions', _('Permissions')))
html_top('settings', _('Permissions'))
r = TemplateIO(html=True)
r += htmltext('<h2>%s</h2>') % _('Permissions')
r += form.render()
return r.getvalue()
else:
from wcs.admin.settings import cfg_submit
cfg_submit(form, 'aq-permissions', ('forms', 'payments'))
return redirect('..')
class SettingsDirectory(wcs.admin.settings.SettingsDirectory):
def _q_index(self):
if not get_publisher().has_site_option('auquotidien-payments'):
return super(SettingsDirectory, self)._q_index()
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/permissions">%s</a></li>') % _('Permissions')
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)
from . import categories_admin

View File

@ -38,8 +38,6 @@ from wcs.qommon.admin.texts import TextsDirectory
from .myspace import MyspaceDirectory
from . import admin
import wcs.forms.root
from wcs.workflows import Workflow
from wcs.forms.preview import PreviewDirectory

View File

@ -80,34 +80,3 @@ def test_with_superuser():
resp = app.get('/backoffice/')
# this makes sure the extension loaded properly
assert '<span id="applabel">Publik</span>' in resp.text
def test_general_admin_permissions():
create_superuser()
app = login(get_app(pub))
resp = app.get('/backoffice/settings/', status=200)
pub.cfg['admin-permissions'] = {'settings': ['XXX']}
pub.write_cfg()
resp = app.get('/backoffice/settings/', status=403)
user1.roles = ['XXX']
user1.store()
resp = app.get('/backoffice/settings/', status=200)
del pub.cfg['admin-permissions']
pub.write_cfg()
def test_aq_permissions_panel(empty_siteoptions):
create_superuser()
app = login(get_app(pub))
resp = app.get('/backoffice/settings/')
assert not 'aq/permissions' in resp.text
with open(os.path.join(pub.app_dir, 'site-options.cfg'), 'w') as fd:
if not pub.site_options.has_section('options'):
pub.site_options.add_section('options')
pub.site_options.set('options', 'auquotidien-payments', 'true')
pub.site_options.write(fd)
resp = app.get('/backoffice/settings/')
assert 'aq/permissions' in resp.text
resp = app.get('/backoffice/settings/aq/permissions')