Adds the initial backend requirements for the
OAuth flow, which will be made required for all
search engine checks. This adds three new routes:
- `/login` (GET, POST) - for logging in
- `/logout` (GET, POST) - for logging out
- `/oauth-callback` - OAuth 1.0a callback route
Login/logout state can be checked through the
header. By default, a separate page navigation is
not required when the link is clicked by the user.
When following a link to `/log(in|out)`, however,
an extra button will be shown to prevent inadvertent
logins/logouts.
Add a checkbox to allow searching the EranBot/plagiabot database for
Turnitin results, and display them in a similar form to the on-wiki
EranBot reports if they exist.
Add a new module (copyvios/turnitin.py) to handle fetching and parsing
the EranBot results.
Bug: https://phabricator.wikimedia.org/T110144
TODO: tweak display HTML/CSS; refactor/clean up turnitin.py;
improve dev set-up so it doesn't always default to testwiki
and can test without hardcoding page title