force a token refresh before submitting the report

Authored by sitter on Jul 5 2019, 10:47 AM.

Description

force a token refresh before submitting the report

Summary:
when the user takes a very long time to prepare the bug report the original
login session may have timed out and prevent submitting the bug report.
as a super simple way to prevent this let's simply force a refresh.
we need to do a query to check validity anyway, so we might as well
force a refresh and get a new token right away.

this temporarily chains the login interfaces to the report interfaces, upon
successful login the report is sent. if any of the two throws an error
the page goes into error state which offers a retry button to run
aboutToShow again. therefore we also want to disconnect the signal chains
to avoid multiple slot invocations on possible retries.

BUG: 338216
FIXED-IN: 5.17.0
CHANGELOG: Login tokens get refreshed before submitting reports to prevent unauthorized errors

Test Plan:

  • file bug without any interruption all goody
  • add Bugzilla::connection().setToken(QString()); to simulate the token having gone invalid -> continues to work
  • disconnect network before submit causes a network unreachable login error -> connect again -> retry -> submission succeeds

Reviewers: apol

Reviewed By: apol

Subscribers: plasma-devel

Tags: Plasma

Differential Revision: https://phabricator.kde.org/D22288

Details

Committed
sitterJul 5 2019, 2:49 PM
Reviewer
apol
Differential Revision
D22288: force a token refresh before submitting the report
Parents
R871:a1aaaea389b5: don't access our debug interceptor past its live time
Branches
Unknown
Tags
Unknown