X-Git-Url: http://mmka.chem.univ.gda.pl/gitweb/?a=blobdiff_plain;f=better_sessions%2Fsignals.py;fp=better_sessions%2Fsignals.py;h=1553d504971cbbbff0acd69569d7646734cf6955;hb=586209a600ac5767a48c57cae1f566c0d6aaf48a;hp=0000000000000000000000000000000000000000;hpb=2be60f0940d7db35d669985cc0f88207eb1d2944;p=qcg-portal.git diff --git a/better_sessions/signals.py b/better_sessions/signals.py new file mode 100644 index 0000000..1553d50 --- /dev/null +++ b/better_sessions/signals.py @@ -0,0 +1,20 @@ +from django.contrib.auth import user_logged_in +from django.contrib.sessions.models import Session + +from better_sessions.models import UserSession + +from .settings import SINGLE_SESSION + + +def post_user_login(sender, request, user, **kwargs): + try: + Session.objects.filter(session_key=user.session.key).delete() + except UserSession.DoesNotExist: + user.session = UserSession() + + user.session.key = request.session.session_key + user.session.save() + + +if SINGLE_SESSION: + user_logged_in.connect(post_user_login)