def regdesk(): if g.user.is_admin == True: if request.method == 'GET': userslist = User.query.all() return render_template('regdesk.html',eventtypes = app.config['EVENT_TYPES'], events = Event.query.all(),page="admin") else: app.logger.info(request.form) name = request.form['name'] mobilenumber = request.form['mobilenumber'] college = request.form['college'] user = User.query.filter_by(mobilenumber=mobilenumber).first() error = False if user: error = True flash('Mobile number already registered','warning') if len(mobilenumber) != 10 or not mobilenumber.isdigit(): error = True flash("Mobile number is invalid",'warning') if error: return render_template('regdesk.html',page="admin",eventtypes = app.config['EVENT_TYPES'], events = Event.query.all()) else: newuser = User(name,college,mobilenumber+'-Registered-offline',mobilenumber[:-4],mobilenumber) db.session.add(newuser) db.session.commit() newuser.gamayaid = "GM%04d" %newuser.id db.session.commit() for i in request.form.keys(): if 'event' in i: if i[5:].isdigit(): if Event.query.filter_by(id=int(i[5:])).first(): r = Registration(newuser.id,int(i[5:])) db.session.add(r) db.session.commit() if 'workshop' in i: if i+'_registered' in User.__dict__: setattr(newuser,i+'_registered',True) setattr(newuser,i+'_registered_on',datetime.datetime.utcnow()) db.session.commit() flash('User created with gamaya id: ' + newuser.gamayaid, 'success') return render_template('regdesk.html',eventtypes = app.config['EVENT_TYPES'], events = Event.query.all(),page="admin") else: return abort(403)
def register(): if g.user is not None and g.user.is_authenticated(): return redirect(url_for('index')) error = False if request.method == 'GET': return render_template('register.html',page="register") elif request.method == 'POST': #app.logger.info(repr(request.form)) name = request.form['name'] email = request.form['email'] college = request.form['college'] mobilenumber = request.form['mobilenumber'] password = request.form['password'] passwordconfirm = request.form['password-confirm'] user = User.query.filter_by(email=email).first() if user: error = True flash('Email already registered','warning') if password != passwordconfirm: error = True flash("Passwords don't match",'warning') if len(mobilenumber) != 10 or not mobilenumber.isdigit(): error = True flash("Mobile number is invalid",'warning') #app.logger.info("Error = ", str(error)) if error: return render_template('register.html',page="register") else: newuser = User(name,college,email,password,mobilenumber) newuser.authenticated = True db.session.add(newuser) db.session.commit() newuser.gamayaid = "GM%04d" %newuser.id db.session.commit() login_user(newuser) return redirect(url_for('index'))