20 lines
593 B
Python
20 lines
593 B
Python
import time
|
|
from django.http import HttpResponseRedirect
|
|
from django.core.urlresolvers import reverse
|
|
from django.conf import settings
|
|
|
|
|
|
def process(request):
|
|
next_check = request.session.get("mfa", {}).get("next_check", False)
|
|
if not next_check:
|
|
return None
|
|
now = int(time.time())
|
|
if now >= next_check:
|
|
method = request.session["mfa"]["method"]
|
|
path = request.META["PATH_INFO"]
|
|
return HttpResponseRedirect(
|
|
reverse(method + "_auth")
|
|
+ "?next=%s" % (settings.BASE_URL + path).replace("//", "/")
|
|
)
|
|
return None
|