Skip to content

Commit

Permalink
Add async undelete operation for forms grid
Browse files Browse the repository at this point in the history
  • Loading branch information
guerler committed Aug 17, 2017
1 parent 91eda9e commit 7d2c4f8
Showing 1 changed file with 8 additions and 18 deletions.
26 changes: 8 additions & 18 deletions lib/galaxy/webapps/galaxy/controllers/forms.py
Expand Up @@ -106,8 +106,8 @@ def forms_list(self, trans, payload=None, **kwd):
return self.view_latest_form_definition(trans, **kwd)
elif operation == 'delete':
message, status = self._delete_form(trans, ids)
elif operation == "undelete":
return self.undelete_form_definition(trans, **kwd)
elif operation == 'undelete':
message, status = self._undelete_form(trans, ids)
elif operation == "edit":
return self.edit_form_definition(trans, **kwd)
if message and status:
Expand Down Expand Up @@ -396,23 +396,13 @@ def _delete_form(self, trans, ids):

@web.expose
@web.require_admin
def undelete_form_definition(self, trans, **kwd):
id_list = util.listify(kwd['id'])
for id in id_list:
try:
form_definition_current = trans.sa_session.query(trans.app.model.FormDefinitionCurrent).get(trans.security.decode_id(id))
except:
return trans.response.send_redirect(web.url_for(controller='forms',
action='browse_form_definitions',
message='Invalid form',
status='error'))
form_definition_current.deleted = False
trans.sa_session.add(form_definition_current)
def _undelete_form(self, trans, ids):
for form_id in ids:
form = get_form(trans, form_id)
form.deleted = False
trans.sa_session.add(form)
trans.sa_session.flush()
return trans.response.send_redirect(web.url_for(controller='forms',
action='browse_form_definitions',
message='%i forms have been undeleted.' % len(id_list),
status='done'))
return ('Undeleted %i form(s).' % len(ids), 'done')

def build_form_definition_field_widgets(self, trans, layout_grids, field_index, field, form_type):
'''
Expand Down

0 comments on commit 7d2c4f8

Please sign in to comment.