Browse Source

Fix status returned to banned user.

adaptive-webui-19844
Vladimir Golovnev (Glassez) 10 years ago
parent
commit
651bf4f9aa
  1. 21
      src/webui/abstractrequesthandler.cpp
  2. 11
      src/webui/www/private/login.html

21
src/webui/abstractrequesthandler.cpp

@ -38,22 +38,25 @@
AbstractRequestHandler::AbstractRequestHandler(const HttpRequest &request, const HttpEnvironment &env, WebApplication *app) AbstractRequestHandler::AbstractRequestHandler(const HttpRequest &request, const HttpEnvironment &env, WebApplication *app)
: app_(app), session_(0), request_(request), env_(env) : app_(app), session_(0), request_(request), env_(env)
{ {
if (isBanned())
{
status(403, "Forbidden");
print(QObject::tr("Your IP address has been banned after too many failed authentication attempts."));
return;
}
sessionInitialize(); sessionInitialize();
if (!sessionActive() && !isAuthNeeded())
if (!sessionActive() && !isAuthNeeded()) sessionStart(); sessionStart();
} }
HttpResponse AbstractRequestHandler::run() HttpResponse AbstractRequestHandler::run()
{ {
response_ = HttpResponse(); response_ = HttpResponse();
if (isBanned())
{
status(403, "Forbidden");
print(QObject::tr("Your IP address has been banned after too many failed authentication attempts."));
}
else
{
processRequest(); processRequest();
}
return response_; return response_;
} }

11
src/webui/www/private/login.html

@ -20,8 +20,15 @@
url: '/login', url: '/login',
method: 'post', method: 'post',
data: $('loginform').toQueryString(), data: $('loginform').toQueryString(),
onFailure: function() { onComplete: function() {
alert("_(Unable to log in, qBittorrent is probably unreachable.)"); $('password').set('value', '');
},
onFailure: function(xhr) {
if (xhr.responseText != "") {
$('error_msg').set('html', xhr.responseText);
} else {
$('error_msg').set('html', '_(Unable to log in, qBittorrent is probably unreachable.)');
}
}, },
onSuccess: function(text) { onSuccess: function(text) {
if (text == "Ok.") { if (text == "Ok.") {

Loading…
Cancel
Save