def extract_session_message(mID): if (not mID) or (not messageDict.has_key(mID)): return '' else: message = messageDict[mID]['message'] messageDict[mID]['message'] = '' messageDict[mID]['time'] = datetime.datetime.now() return message
def get(self, mID, *args): lang = 'en' if args: lang = args[0] message = '' if messageDict.has_key(mID): logging.error('mID found') message = messageDict[mID]['message'] messageDict[mID]['message'] = '' messageDict[mID]['time'] = datetime.datetime.now() self.render('mainpage.html', message = message, lang = lang);
def generate_mID(handler): #this function creates a new session #assign a random ID, then check if that ID is already in the dictionary, #keep assigning a new one if it is in the dictionary #The dictionary data must be scrubbed _before_ the cookie expires, #else a new cookie with the same mID with an expired one might get access to the old data mID = hex(int(random.random()*1e9))[2:] while messageDict.has_key(mID): mID = hex(int(random.random()*1e9))[2:] #set a cookie with session ID (mID), #then check session dictionary for old cookie infos, and clean them handler.response.set_cookie('mID', securify_cookie(mID), expires = (datetime.datetime.now() + datetime.timedelta(days = 1)), path = '/') threshhold = datetime.datetime.now() - datetime.timedelta(days = 0.75) for k, v in messageDict.items(): if v['time'] < threshhold: messageDict.pop(k) return mID
def assign_session_message(handler, mID, message): if (not mID) or (not messageDict.has_key(mID)): mID = generate_mID(handler) messageDict[mID] = {'message':message, 'time':datetime.datetime.now()}