def retreiveUser(userKey = 'null'): if (userKey == 'null'): form = cgi.FormContent() userKey = pals.formValue(form, "userKey") try: lastTime, gradeTime, caseNum, className = advdb.query("SELECT lasttime, gradeTime, casenum, className from users WHERE userkey = '"+str(userKey)+"' ").getresult()[0] startTime, endTime = basedb.query("SELECT starttime, endtime from cases WHERE casenum = '"+caseNum+"' ").getresult()[0] except: style.SendError("Can not locate your user info, sorry.") if caseNum[0] == 's': noonTime = mx.DateTime.ISO.ParseDateTimeGMT(startTime) + mx.DateTime.RelativeDateTime(hours=+5) else: noonTime = mx.DateTime.ISO.ParseDateTimeGMT(startTime) + mx.DateTime.RelativeDateTime(hours=+6) return userKey, lastTime, gradeTime, startTime, noonTime, endTime, caseNum, className
def Main(): form = cgi.FormContent() try: caseNum = pals.formValue(form, "caseNum") userKey = initUser(caseNum) except: style.SendError("Case number parse error") userKey, lastTime, gradeTime, startTime, noonTime, endTime, caseNum = functs.retreiveUser(userKey) functs.setupPage("Welcome to the Severe Weather Forecasting Exercise") functs.printTime(startTime) functs.caseIntro(caseNum) functs.updateUser(userKey, "lasttime", startTime) print '<H2><img src="/icons/ball.red.gif" align="bottom"><font color="#a0522d" size="+2">Navigation:</font></H2>' print '<CENTER><a href="/cgi-bin/severe2/intermediate/hour.py?userKey='+str(userKey)+'""><img src="/gen/hour.php?label=Start%20Exercise&font_size=20" BORDER="0"></a></CENTER>' print '<BR><BR><BR>' functs.finishPage()
def enterForm(): name = pals.formValue(form, "name") email = pals.formValue(form, "email") passwd1 = pals.formValue(form, "passwd1") passwd2 = pals.formValue(form, "passwd2") classname = pals.formValue(form, "classname") class_abv = pals.formValue(form, "class_abv") classpasswd = "No" if form.has_key("classpasswd"): classpasswd = pals.formValue(form, "classpasswd") tester = mydb.query("SELECT * from classes WHERE class_abv = '"+class_abv+"' ").getresult() if len(tester) > 0: print '<font color="red">The choosen value of '+class_abv+' is allready taken. Try again.</font>' newClassForm() return if passwd1 != passwd2: print '<font color="red">The passwords did not match. Try again.</font>' newClassForm() return mydb.query("INSERT into classes(class_abv, classname, instructor, instructor_email, passwd, classpasswd) VALUES ('"+class_abv+"', '"+classname+"', '"+name+"', '"+email+"', '"+passwd1+"', '"+classpasswd+"') ") os.system("/home/httpd/httpd/bin/htpasswd -b /home/httpd/cgi-bin/severe2/classAdmin/.passwd "+class_abv+" "+passwd1+" ") print '<H3>Class Registration worked! Here are your values:</H3>' print '<P><B>Class Abreviation:</B> '+class_abv print '<P><B>Class Name:</B> '+classname print '<P><B>Instructor Name:</B> '+name print '<P><B>Instructor Email:</B> '+email print '<P><B>Administrative Password:</B> '+passwd1 print '<P><B>Class Password:</B> '+classpasswd print '<H3>Getting started with your account:</H3>' print '<P>Please remember your administrative password. It allows you to log into "ClassAdmin" and configure the exercise.' print 'The URL to log into classAdmin is <a href="http://www.pals.iastate.edu/cgi-bin/severe2/classAdmin/index.py">http://www.pals.iastate.edu/cgi-bin/severe2/classAdmin/index.py</a>' print """<P>You will want to create a link somewhere to point your students to this page. It will allow them to work through the cases that release to them.""" print '<a href="http://www.pals.iastate.edu/cgi-bin/severe2/advanced/list.py?className='+class_abv+'">http://www.pals.iastate.edu/cgi-bin/severe2/advanced/list.py?className='+class_abv+'</a>'