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