Handle all cases of login.
Handle all cases of login.

Firstly refactor the code to move all the post login mechanisms to a
function of its own.

Then add support to redirect the user if the login was attempted from
logout page.

Finally if the post response we got contains html, it is not a valid
JSON, which means the login failed. In this case catch the exception
and show the login error.

madhusudancs/pytask,madhusudancs/pytask,madhusudancs/pytask