def user_id_for_session_id(self, session_id=None): """ Make user id to session Args: session_id: String of the session Return: User ID if not is expired """ if session_id is None: return None UserSession.load_from_file() user_sess = UserSession.search({'session_id': session_id}) if not user_sess: return None user = user_sess[0] if user is None: return None expired_tm = user.created_at + \ timedelta(seconds=self.session_duration) if expired_tm < datetime.now(): return None return user.user_id
def user_id_for_session_id(self, session_id=None): """ overloads from parent. looks for user_id in the database and returns it :param session_id: session id :return: user id. """ if session_id: UserSession.load_from_file() user_session_list = UserSession.search({'session_id': session_id}) if user_session_list: session = user_session_list[0] user_id = session.user_id if hasattr(session, 'created_at'): current = datetime.utcnow() if user_id: if self.session_duration <= 0 \ or not self.session_duration: return user_id if (session.created_at + timedelta( seconds=self.session_duration)) < current: return None return user_id return None
def user_id_for_session_id(self, session_id=None): """Get user ID from session """ if not session_id: return None UserSession.load_from_file() users = UserSession.search({'session_id': session_id}) for u in users: delta = timedelta(seconds=self.session_duration) if u.created_at + delta < datetime.now(): return None return u.user_id
def user_id_for_session_id(self, session_id=None): """ that returns the User ID by requesting UserSession in the database based on session_id """ if not session_id: return None UserSession.load_from_file() users = UserSession.search({'session_id': session_id}) for user in users: delta = timedelta(seconds=self.session_duration) if user.created_at + delta < datetime.now(): return None return user.user_id
def user_id_for_session_id(self, session_id=None): """ Get the user id for session """ if session_id is None: return None UserSession.load_from_file() session_ids = UserSession.search({'session_id': session_id}) if not session_ids: return None if datetime.utcnow() > session_ids[0].created_at + timedelta( seconds=self.session_duration): return None return session_ids[0].user_id
def user_id_for_session_id(self, session_id=None): """ Returns a User ID based on a Session ID. """ if session_id is None: return None UserSession.load_from_file() user = UserSession.search({'session_id': session_id}) if not user: return None user = user[0] timing = timedelta(seconds=self.session_duration) + user.created_at if timing < datetime.now(): return None return user.user_id
def user_id_for_session_id(self, session_id=None): """ Returns the User ID by requesting UserSession in the database based on session_id """ if session_id is None: return None UserSession.load_from_file() is_valid_user = UserSession.search({'session_id': session_id}) if not is_valid_user: return None is_valid_user = is_valid_user[0] start_time = is_valid_user.created_at time_delta = timedelta(seconds=self.session_duration) if (start_time + time_delta) < datetime.now(): return None return is_valid_user.user_id
def user_id_for_session_id(self, session_id=None): """ Overloads method in SessionExpAuth Returns User ID by requesting UserSession in DB using session_id """ if session_id is None: return None UserSession.load_from_file() user_session = UserSession.search({'session_id': session_id}) if not user_session: return None session = user_session[0] session_dictionary = self.user_id_by_session_id.get(session_id) if not session_dictionary: return None created_at = session_dictionary.get('created_at') expiration = created_at + timedelta(seconds=self.session_duration) if expiration < datetime.now(): return None return session.user_id
def user_id_for_session_id(self, session_id=None): """User ID for Session ID Database""" if session_id is None: return None UserSession.load_from_file() user_session = UserSession.search({'session_id': session_id}) if not user_session: return None user_session = user_session[0] expired_time = user_session.created_at + \ timedelta(seconds=self.session_duration) if expired_time < datetime.utcnow(): return None return user_session.user_id
def destroy_session(self, request=None): """ destroy the session saved in the database :param request: request :return: """ if request: session_id = self.session_cookie(request) if session_id: UserSession.load_from_file() user_session_list = UserSession.search( {'session_id': session_id}) if user_session_list: user_session = user_session_list[0] if user_session: user_session.remove() return True return False
def user_id_for_session_id(self, session_id=None): """ returns the User ID by requesting UserSession in the database based on session_id """ if not session_id: return None try: UserSession.load_from_file() objs = UserSession.search({"session_id": session_id}) if not objs or len(objs) == 0: return None # if session_id not in self.user_id_by_session_id: # return None # if "created_at" not in self.user_id_by_session_id[session_id]: # return None limit_date = (timedelta(seconds=self.session_duration) + objs[0].created_at) if limit_date < datetime.now(): # self.destroy_session(request) return None return objs[0].user_id except Exception as e: return None