增加部分基础组件

This commit is contained in:
LiYang
2016-07-31 20:26:11 +08:00
parent 0fc35d4d02
commit bcee7bca67
18 changed files with 999 additions and 95 deletions

View File

@@ -3,27 +3,24 @@ import time
import json
import urllib
from django.http import HttpResponseRedirect, HttpResponse
from django.http import HttpResponse
from django.utils.translation import ugettext as _
from django.contrib import auth
from .models import AdminType, User
from utils.shortcuts import redirect_to_login
from .models import AdminType
# todo remove this
from django.contrib import auth
class SessionSecurityMiddleware(object):
def process_request(self, request):
if request.user.is_authenticated() and request.user.admin_type in [AdminType.ADMIN, AdminType.SUPER_ADMIN]:
if "last_activity" in request.session:
# 24 hours passwd since last visit
# 24 hours passed since last visit
if time.time() - request.session["last_activity"] >= 24 * 60 * 60:
auth.logout(request)
if request.is_ajax():
return HttpResponse(json.dumps({"code": 1, "data": _("Please login in first")}),
content_type="application/json")
else:
return HttpResponseRedirect("/login/?__from=" + urllib.quote(request.path))
return redirect_to_login(request)
# 更新最后活动日期
request.session["last_activity"] = time.time()