Refactor progress bars somewhat to allow file-based sessions
hoping this solves issue of Apache restart at end of upgrade
This commit is contained in:
parent
f203f2c377
commit
f46e20c119
8 changed files with 48 additions and 37 deletions
|
@ -741,13 +741,12 @@ class MasterView(View):
|
|||
Delete all records matching the current grid query
|
||||
"""
|
||||
if self.request.method == 'POST':
|
||||
key = '{}.bulk_delete'.format(self.model_class.__tablename__)
|
||||
objects = self.get_effective_data()
|
||||
key = '{}.bulk_delete'.format(self.model_class.__tablename__)
|
||||
progress = SessionProgress(self.request, key)
|
||||
thread = Thread(target=self.bulk_delete_thread, args=(objects, progress))
|
||||
thread.start()
|
||||
return self.render_progress({
|
||||
'key': key,
|
||||
return self.render_progress(progress, {
|
||||
'cancel_url': self.get_index_url(),
|
||||
'cancel_msg': "Bulk deletion was canceled",
|
||||
})
|
||||
|
@ -804,13 +803,12 @@ class MasterView(View):
|
|||
model_title = self.get_model_title()
|
||||
if self.request.method == 'POST':
|
||||
|
||||
key = '{}.execute'.format(self.get_grid_key())
|
||||
kwargs = {'progress': SessionProgress(self.request, key)}
|
||||
progress = self.make_execute_progress()
|
||||
kwargs = {'progress': progress}
|
||||
thread = Thread(target=self.execute_thread, args=(obj.uuid, self.request.user.uuid), kwargs=kwargs)
|
||||
thread.start()
|
||||
|
||||
return self.render_progress({
|
||||
'key': key,
|
||||
return self.render_progress(progress, {
|
||||
'cancel_url': self.get_action_url('view', obj),
|
||||
'cancel_msg': "{} execution was canceled".format(model_title),
|
||||
})
|
||||
|
@ -818,6 +816,10 @@ class MasterView(View):
|
|||
self.request.session.flash("Sorry, you must POST to execute a {}.".format(model_title), 'error')
|
||||
return self.redirect(self.get_action_url('view', obj))
|
||||
|
||||
def make_execute_progress(self):
|
||||
key = '{}.execute'.format(self.get_grid_key())
|
||||
return SessionProgress(self.request, key)
|
||||
|
||||
def execute_thread(self, uuid, user_uuid, progress=None, **kwargs):
|
||||
"""
|
||||
Thread target for executing an object.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue