admin: do not offer an edit page after duplicate (#1593)
This commit is contained in:
parent
e8cb859e70
commit
3b93d67f0a
|
@ -620,11 +620,19 @@ class FormDefPage(Directory):
|
|||
'</div>'
|
||||
|
||||
def duplicate [html] (self):
|
||||
self.formdefui.formdef.id = self.formdefui.formdef.get_new_id()
|
||||
self.formdefui.formdef.id = None
|
||||
original_name = self.formdefui.formdef.name
|
||||
self.formdefui.formdef.name = self.formdefui.formdef.name + _(' (copy)')
|
||||
formdef_names = [x.name for x in FormDef.select()]
|
||||
no = 2
|
||||
while self.formdefui.formdef.name in formdef_names:
|
||||
self.formdefui.formdef.name = _('%(name)s (copy %(no)d)') % {
|
||||
'name': original_name, 'no': no}
|
||||
no += 1
|
||||
self.formdefui.formdef.url_name = None
|
||||
self.formdefui.formdef.disabled = True
|
||||
return self.edit(duplicate = True)
|
||||
self.formdefui.formdef.store()
|
||||
return redirect('../%s/' % self.formdefui.formdef.id)
|
||||
|
||||
def delete [html] (self):
|
||||
form = Form(enctype='multipart/form-data')
|
||||
|
|
|
@ -401,7 +401,7 @@ class WorkflowStatusPage(Directory):
|
|||
self.workflow.store()
|
||||
return redirect('../../')
|
||||
|
||||
def edit [html] (self, duplicate = False):
|
||||
def edit [html] (self):
|
||||
form = Form(enctype = 'multipart/form-data')
|
||||
form.add(StringWidget, 'name', title = _('Status Name'), required = True, size=30,
|
||||
value = self.status.name)
|
||||
|
@ -666,9 +666,17 @@ class WorkflowPage(Directory):
|
|||
return redirect('..')
|
||||
|
||||
def duplicate [html] (self):
|
||||
self.workflow_ui.workflow.id = self.workflow_ui.workflow.get_new_id()
|
||||
self.workflow_ui.workflow.id = None
|
||||
original_name = self.workflow_ui.workflow.name
|
||||
self.workflow_ui.workflow.name = self.workflow_ui.workflow.name + _(' (copy)')
|
||||
return self.edit(duplicate = True)
|
||||
workflow_names = [x.name for x in Workflow.select()]
|
||||
no = 2
|
||||
while self.workflow_ui.workflow.name in workflow_names:
|
||||
self.workflow_ui.workflow.name = _('%(name)s (copy %(no)d)') % {
|
||||
'name': original_name, 'no': no}
|
||||
no += 1
|
||||
self.workflow_ui.workflow.store()
|
||||
return redirect('../%s/' % self.workflow_ui.workflow.id)
|
||||
|
||||
|
||||
class WorkflowsDirectory(Directory):
|
||||
|
|
Loading…
Reference in New Issue