diff options
author | Jogi Hofmüller <jogi@mur.at> | 2011-08-01 17:16:59 +0000 |
---|---|---|
committer | Jogi Hofmüller <jogi@mur.at> | 2011-08-01 17:16:59 +0000 |
commit | d6e5bde11d06c846035d1670b4800cf574d2420d (patch) | |
tree | 541b478c9dc049704d4284d4cceb469b94d48546 /tools/mmd/MmdSession.py | |
parent | - found a way to handle encoding (diff) |
- finished registration procedure
- user can sign up now
- registration needs confirmation (email sent)
- registration can also be canceled
git-svn-id: https://svn.spreadspace.org/mur.sat@88 7de4ea59-55d0-425e-a1af-a3118ea81d4c
Diffstat (limited to 'tools/mmd/MmdSession.py')
-rw-r--r-- | tools/mmd/MmdSession.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/tools/mmd/MmdSession.py b/tools/mmd/MmdSession.py index ff92684..2dda34e 100644 --- a/tools/mmd/MmdSession.py +++ b/tools/mmd/MmdSession.py @@ -16,12 +16,12 @@ class Session: self.status = 'anon' self.headers = [] self.db = Db () - data = self.db.sessionFind (session_id) - if not data: + s = self.db.sessionFind (session_id) + if not s: self.db.sessionInit (self.session_id, self.email, int (time.strftime ('%s')) + timeout) else: - self.email = data[1] - self.status = data[2] + self.email = s['email'] + self.status = s['status'] def addHeader (self, header): self.headers.append (header) @@ -37,11 +37,15 @@ class Session: self.status = status self.db.sessionSetStatus (self.session_id, self.status) + def authenticate (self, user): + self.setEmail (user.email) + self.setStatus ('auth') + def valid (self): data = self.db.sessionFind (self.session_id) if not data: return False - if data[3] < int (time.strftime ('%s')): + if data['expires'] < int (time.strftime ('%s')): return False return True @@ -76,6 +80,9 @@ class Session: def getQsConfirm (self): return self.getField ('confirm') + def getQsCode (self): + return self.getField ('code') + def getField (self, field): try: return escape (self.qs.get (field)[0]) |