You can simply use the account login tab with your own changes in your own view. Just change the login URL to point to your own view, and then check if they are logged in:
views.py
from django.contrib.auth.views import login as contrib_login
def login(request):
if request.user.is_authenticated():
return redirect(settings.LOGIN_REDIRECT_URL)
return contrib_login(request)