admin: remove edit & edit fields for forms, now accessible by other means
This commit is contained in:
parent
593ce6668b
commit
c214b33341
|
@ -113,87 +113,6 @@ class FormDefUI:
|
|||
form.add_submit('cancel', _('Cancel'))
|
||||
return form
|
||||
|
||||
|
||||
def edit_form_ui(self):
|
||||
form = Form(enctype='multipart/form-data')
|
||||
if self.formdef:
|
||||
formdef = self.formdef
|
||||
else:
|
||||
formdef = FormDef()
|
||||
form.add(StringWidget, 'name', title = _('Form Title'), required=True, size=40,
|
||||
value = formdef.name)
|
||||
categories = get_categories()
|
||||
if categories:
|
||||
form.add(SingleSelectWidget, 'category_id', title = _('Category'),
|
||||
value = formdef.category_id,
|
||||
options = [(None, '---')] + categories)
|
||||
workflows = get_workflows()
|
||||
if workflows:
|
||||
form.add(SingleSelectWidget, 'workflow_id', title = _('Workflow'),
|
||||
value = formdef.workflow_id,
|
||||
options = [(None, _('Default Workflow'))] + workflows)
|
||||
#if formdef.fields:
|
||||
# fields_list = [{'label': x.label, 'type': x.type, 'id': x.id} for x in formdef.fields]
|
||||
#else:
|
||||
# fields_list = []
|
||||
#form.add(WidgetList, 'fields', title = _('Fields'), element_type = FieldWidget,
|
||||
# value = fields_list, add_element_label = _('Add Field'),
|
||||
# element_kwargs = {'formdef': self.formdef, 'render_br': False})
|
||||
form.add(SingleSelectWidget, 'receiver_id', title = _('Recipient Role'), required = True,
|
||||
value = formdef.receiver_id,
|
||||
options = get_user_roles())
|
||||
form.add(WidgetList, 'roles', title = _('Sender Roles'), element_type = SingleSelectWidget,
|
||||
hint = _('Only show this form to the given roles.'),
|
||||
value = formdef.roles,
|
||||
add_element_label = _('Add Role'),
|
||||
element_kwargs = {'render_br': False,
|
||||
'options': [('', '---'),
|
||||
(logged_users_role().id, logged_users_role().name)] + get_user_roles()})
|
||||
form.add(CheckboxWidget, 'always_advertise', title = _('Always advertise'),
|
||||
value = formdef.always_advertise)
|
||||
form.add(CheckboxWidget, 'confirmation', title = _('Include confirmation page'),
|
||||
value = formdef.confirmation)
|
||||
form.add(SingleSelectWidget, 'signing', title = _('Signature'),
|
||||
options = [
|
||||
(None, _('None')),
|
||||
('optional', _('Optional')),
|
||||
('compulsory', _('Compulsary'))], value = formdef.signing)
|
||||
form.add(SingleSelectWidget, 'acl_read', title = _('Read Access'),
|
||||
options = [
|
||||
('none', _('None')),
|
||||
('owner', _('Owner')),
|
||||
('roles', _('Roles')),
|
||||
('all', _('Everybody'))],
|
||||
value = formdef.acl_read)
|
||||
form.add(CheckboxWidget, 'private_status_and_history',
|
||||
title = _('Keep workflow status and history private'),
|
||||
hint = _('Restrict the possibility to see status and history to the recipients'),
|
||||
value = formdef.private_status_and_history)
|
||||
form.add(CheckboxWidget, 'only_allow_one',
|
||||
title = _('Only allow one form per user'),
|
||||
value = formdef.only_allow_one)
|
||||
form.add(CheckboxWidget, 'allow_drafts',
|
||||
title = _('Allow user to keep drafts'),
|
||||
value = formdef.allow_drafts)
|
||||
form.add(CheckboxWidget, 'disabled',
|
||||
title = _('Disable access to form'),
|
||||
value = formdef.disabled)
|
||||
form.add(StringWidget, 'disabled_redirection',
|
||||
title = _('If disabled, redirect to this URL'), size=50,
|
||||
hint = _('Redirection will only be performed if the form is disabled and a URL is given. ' \
|
||||
'Common substitution variables are available with the [variable] syntax.'),
|
||||
value = formdef.disabled_redirection)
|
||||
form.add(DateWidget, 'publication_date',
|
||||
title=_('Publication Date'),
|
||||
value=formdef.publication_date)
|
||||
form.add(DateWidget, 'expiration_date',
|
||||
title=_('Expiration Date'),
|
||||
value=formdef.expiration_date)
|
||||
form.add_submit('submit', _('Submit'))
|
||||
form.add_submit('cancel', _('Cancel'))
|
||||
return form
|
||||
|
||||
|
||||
def submit_form(self, form):
|
||||
if self.formdef:
|
||||
formdef = self.formdef
|
||||
|
@ -251,6 +170,7 @@ class FormDefUI:
|
|||
|
||||
return formdef
|
||||
|
||||
|
||||
class FieldDefPage(FieldDefPage):
|
||||
section = 'forms'
|
||||
wsf_support = True
|
||||
|
@ -411,8 +331,6 @@ class FormDefPage(Directory):
|
|||
|
||||
def get_sidebar [html] (self):
|
||||
'<ul>'
|
||||
'<li><a href="edit">%s</a></li>' % _('Edit')
|
||||
'<li><a href="fields/">%s</a></li>' % _('Edit Fields')
|
||||
'<li><a href="delete" rel="popup">%s</a></li>' % _('Delete')
|
||||
'<li><a href="duplicate">%s</a></li>' % _('Duplicate')
|
||||
if ET:
|
||||
|
@ -702,37 +620,6 @@ class FormDefPage(Directory):
|
|||
form.render()
|
||||
'</div>'
|
||||
|
||||
def edit [html] (self, duplicate = False):
|
||||
form = self.formdefui.edit_form_ui()
|
||||
|
||||
if form.get_widget('signing').parse():
|
||||
try:
|
||||
import M2Crypto
|
||||
except ImportError:
|
||||
form.set_error('signing', _("You need to install M2Crypto"))
|
||||
|
||||
if form.get_widget('cancel').parse():
|
||||
return redirect('.')
|
||||
|
||||
if form.is_submitted() and not form.has_errors():
|
||||
try:
|
||||
self.formdefui.submit_form(form)
|
||||
except ValueError:
|
||||
pass
|
||||
else:
|
||||
return redirect('..')
|
||||
|
||||
if duplicate:
|
||||
get_response().breadcrumb.append( ('edit', _('Duplicate')) )
|
||||
title = _('Duplicate Form')
|
||||
else:
|
||||
get_response().breadcrumb.append( ('edit', _('Edit')) )
|
||||
title = _('Duplicate Form')
|
||||
title = _('Edit Form')
|
||||
html_top('forms', title = title)
|
||||
'<h2>%s</h2>' % title
|
||||
form.render()
|
||||
|
||||
def duplicate [html] (self):
|
||||
self.formdefui.formdef.id = self.formdefui.formdef.get_new_id()
|
||||
self.formdefui.formdef.name = self.formdefui.formdef.name + _(' (copy)')
|
||||
|
|
Loading…
Reference in New Issue