def Register(): registration_form = RegistrationForm() if registration_form.submit2.data and \ registration_form.validate_on_submit(): user = (db_session.query(User).filter_by( email=registration_form.email.data).first()) if user is None: new_user = User(name=registration_form.name.data, email=registration_form.email.data) new_user.password = registration_form.password.data db_session.add(new_user) db_session.commit() flash('Registration successful. \ Please Log in with the credentials') return redirect(url_for('Home')) flash('User already exists. Please log in') return render_template('register.html', form=registration_form)
def register(): if request.method == 'GET': return render_template('register.html') username = request.form['username'] password = request.form['password'] email = request.form['email'] if username and password and email: user = User() user.email = request.form['email'] user.password = request.form['password'] user.username = request.form['username'] db.session.add(user) db.session.commit() flash('User successfully registered') return redirect(url_for('login')) else: flash('Please fill all the fields to register') return redirect(url_for('register'))
def do_POST(self): try: if self.path.endswith('/logout'): res = self.check_login() if res is not 'NotLoggedIn': id = session.query(User).filter_by(username = res).one().id session.query(LoginSessions).filter_by(user_id = id).delete() session.commit() self.send_response(302) self.send_header('content-type','text/html') self.send_header('location','/restaurant') self.end_headers() return if self.path.endswith("/create/menuitem"): ctype,pdict = cgi.parse_header(self.headers.getheader('content-type')) if ctype == 'multipart/form-data': fields = cgi.parse_multipart(self.rfile,pdict) postcontent = fields.get('name') postcontent += fields.get('description') postcontent += fields.get('price') restid = re.compile('/restaurant/([0-9]+)/').match(self.path).group(1) rest = session.query(Restaurant).filter_by(id = restid).one() newitem = MenuItem(name = postcontent[0],description = postcontent[1],price = postcontent[2],restaurant = rest) session.add(newitem) session.commit() self.send_response(301) self.send_header('Content-type','text/html') self.send_header('location','/restaurant/%s' %(restid)) self.end_headers() return if self.path.endswith("/create/restaurant"): ctype,pdict = cgi.parse_header(self.headers.getheader('content-type')) if ctype == 'multipart/form-data': fields = cgi.parse_multipart(self.rfile,pdict) postcontent = fields.get('name') newrest = Restaurant(name = postcontent[0]) session.add(newrest) session.commit() self.send_response(301) self.send_header('content-type','text/html') self.send_header('location','/restaurant') self.end_headers() return if self.path.endswith("/register"): ctype,pdict = cgi.parse_header(self.headers.getheader('content-type')) if ctype == 'multipart/form-data': fields = cgi.parse_multipart(self.rfile,pdict) data = fields.get('username') data += fields.get('password') indb = session.query(User).filter_by(username = data[0]) if indb.count() == 1: self.send_response(302) self.send_header('content-type','text/html') self.send_header('error','Username already exists') self.send_header('location','/register') self.end_headers() return obj = User() obj.username = data[0] obj.password = data[1] session.add(obj) session.commit() self.send_response(302) self.send_header('content-type','text/html') self.send_header('location','/login') self.end_headers() return if self.path.endswith("/login"): ctype,pdict = cgi.parse_header(self.headers.getheader('content-type')) if ctype == 'multipart/form-data': fields = cgi.parse_multipart(self.rfile,pdict) data = fields.get('username') data += fields.get('password') user = session.query(User).filter_by(username = data[0]) if user.count() == 1: if user.one().password == data[1]: newsession = LoginSessions(user = user.one()) session.add(newsession) session.commit() c = Cookie.SimpleCookie() c['id'] = user.one().id self.send_response(301) self.send_header('content-type','text/html') self.send_header('Set-Cookie',c.output(header = '')) self.send_header('location','/restaurant') self.end_headers() return except IOError: self.send_response(404,"Input Data incorrect")