df4ed7102cd23913a172d62689f57ef868467015
[osm/LW-UI.git] / sf_user / sessions.py
1 #
2 # Copyright 2018 CNIT - Consorzio Nazionale Interuniversitario per le Telecomunicazioni
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 # http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16
17 from django.contrib.sessions.backends.db import SessionStore as DBStore
18 import sf_user
19
20 class SessionStore(DBStore):
21 @classmethod
22 def get_model_class(cls):
23 return sf_user.models.CustomSession
24
25 def create_model_instance(self, data):
26 obj = super(SessionStore, self).create_model_instance(data)
27 try:
28 account_id = int(data.get('_auth_user_id'))
29 except (ValueError, TypeError):
30 account_id = None
31 obj.account_id = account_id
32 return obj