Redirect the user upon successful bug report submission
authorMagnus Hagander <magnus@hagander.net>
Thu, 17 Jan 2019 09:27:51 +0000 (10:27 +0100)
committerMagnus Hagander <magnus@hagander.net>
Thu, 17 Jan 2019 09:29:06 +0000 (10:29 +0100)
Previously the result page was rendered directly and if the user hit the
refresh button the bug woulb be duplicated. Instead redirect to a
results page (with the bug number) which can be freely refreshed.

pgweb/misc/views.py
pgweb/urls.py

index 3cf8e3bb107947c8fa40d78ba2311c5e4a46871b..aca74eed9642f630fb9b2e13b5a8d8c1ca33df3d 100644 (file)
@@ -53,9 +53,7 @@ def submitbug(request):
                                        messageid=messageid,
                                )
 
-                               return render_pgweb(request, 'support', 'misc/bug_completed.html', {
-                                       'bugid': bugid,
-                               })
+                               return HttpResponseRedirect("/account/submitbug/{0}/".format(bugid))
        else:
                form = SubmitBugForm(initial={
                        'name': '%s %s' % (request.user.first_name, request.user.last_name),
@@ -75,6 +73,11 @@ def submitbug(request):
                'savebutton': 'Submit and Send Email',
        })
 
+@login_required
+def submitbug_done(request, bugid):
+       return render_pgweb(request, 'support', 'misc/bug_completed.html', {
+               'bugid': bugid,
+       })
 
 def bugs_redir(request, bugid):
        r = get_object_or_404(BugIdMap, id=bugid)
index 615a6a85a427850427a14e6c752bd1ccb172a82c..4f89f6b6de1074819e91df49a3d6095c143e9149 100644 (file)
@@ -81,6 +81,7 @@ urlpatterns = [
        url(r'^support/professional_(support|hosting)/$', pgweb.profserv.views.root),
        url(r'^support/professional_(support|hosting)[/_](.*)/$', pgweb.profserv.views.region),
        url(r'^account/submitbug/$', pgweb.misc.views.submitbug),
+       url(r'^account/submitbug/(\d+)/$', pgweb.misc.views.submitbug_done),
        url(r'^support/submitbug/$', RedirectView.as_view(url='/account/submitbug/', permanent=True)),
        url(r'^support/versioning/$', pgweb.core.views.versions),
        url(r'^bugs_redir/(\d+)/$', pgweb.misc.views.bugs_redir),