summaryrefslogtreecommitdiff
path: root/tools/mmd/MmdCommands.py
diff options
context:
space:
mode:
authorJogi Hofmüller <jogi@mur.at>2011-08-01 17:16:59 +0000
committerJogi Hofmüller <jogi@mur.at>2011-08-01 17:16:59 +0000
commitd6e5bde11d06c846035d1670b4800cf574d2420d (patch)
tree541b478c9dc049704d4284d4cceb469b94d48546 /tools/mmd/MmdCommands.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/MmdCommands.py')
-rw-r--r--tools/mmd/MmdCommands.py54
1 files changed, 41 insertions, 13 deletions
diff --git a/tools/mmd/MmdCommands.py b/tools/mmd/MmdCommands.py
index 0ac98da..d33190b 100644
--- a/tools/mmd/MmdCommands.py
+++ b/tools/mmd/MmdCommands.py
@@ -10,7 +10,7 @@ def loginForm (session):
"""
display the login form
"""
- return indexWidget (dataWidget (), loginFormWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), loginFormWidget (), statusWidget (session))
def login (session):
"""
@@ -19,13 +19,13 @@ def login (session):
email = escape (session.qs.get ('email', [''])[0])
# check for account
# verify password
- return indexWidget (dataWidget (), loginWidget (email), statusWidget (session.session_id, email))
+ return indexWidget (dataWidget (), loginWidget (email), statusWidget (session))
def registerForm (session):
"""
display the register form
"""
- return indexWidget (dataWidget (), registerFormWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), registerFormWidget (), statusWidget (session))
def register (session):
"""
@@ -42,10 +42,10 @@ def register (session):
if password != confirm:
error_message = {'error': 'Password', 'description': 'Passwords do not match.'}
- return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session))
user = User ()
- confreg = user.create (session.session_id, firstname, lastname, email, callsign, longitude, latitude, password)
+ code = user.create (session.session_id, firstname, lastname, email, callsign, longitude, latitude, password)
user.email = email
message = '''From: noreply <noreply@mur.at>
To: {0}
@@ -58,41 +58,69 @@ Someone (probably you) has registered at the MURSAT1 Mission Dashbaord
using the link below:
- http://hofos.at/mmd/mmd?cmd=confirmRegistration&code={1}
+ http://hofos.at/mmd/?cmd=completeRegistration&code={1}
Regards,
MURSAT1 team
-'''.format (user.email, confreg)
+'''.format (user.email, code)
if not user.sendEmail (message):
error_message = {'error': 'Email', 'description': 'Email could not be sent.'}
- return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session))
- return indexWidget (dataWidget (), registerWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), registerWidget (), statusWidget (session))
+
+def completeRegistration (session):
+ user = User ()
+ code = session.getQsCode ()
+ if not user.findPending (code):
+ error_message = {'error': 'Registration', 'description': 'Registration Failed.'}
+ return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session))
+ return indexWidget (dataWidget (), completeRegistrationWidget (code), statusWidget (session))
+
+# TODO finish theses methods
+def confirmRegistration (session):
+ user = User ()
+ code = session.getQsCode ()
+ if not user.findPending (code):
+ error_message = {'error': 'Registration', 'description': 'Registration Failed.'}
+ return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session))
+ user.confirm (code)
+ session.authenticate (user)
+ return indexWidget (dataWidget (), confirmRegistrationWidget (user), statusWidget (session))
+
+def cancelRegistration (session):
+ user = User ()
+ code = session.getQsCode ()
+ if not user.findPending (code):
+ error_message = {'error': 'Registration', 'description': 'Canceling failed.'}
+ return indexWidget (dataWidget (), errorWidget (error_message), statusWidget (session))
+ user.cancel (code)
+ return indexWidget (dataWidget (), cancelRegistrationWidget (), statusWidget (session))
def submitForm (session):
"""
display the form for data submission
"""
- return indexWidget (dataWidget (), submitFormWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), submitFormWidget (), statusWidget (session))
def submit (session):
"""
evaluate data from submitForm
"""
- return indexWidget (dataWidget (), submitWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), submitWidget (), statusWidget (session))
def viewlog (session):
"""
show latest log entries/submissions
"""
- return indexWidget (dataWidget (), logWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), logWidget (), statusWidget (session))
def index (session):
"""
display the index page
"""
- return indexWidget (dataWidget (), osmWidget (), statusWidget (session.session_id, session.email))
+ return indexWidget (dataWidget (), osmWidget (), statusWidget (session))
def mmdtest (env, cookie):
body = ''