refactor login as to be impersonation with better login/logout

Modifies the existing "login as" feature to be called impersonation.

This also adds:

  • Application keep track of who is impersonating the user so they can revert back to the original user without having to log out.
  • Stores the user profile via HTTP_REFERER so you get redirected back to the person you have impersonated once you stop.

Screenshots:

Merge request reports

Loading