def signup(): """ Create new user and add to DB. Redirect to leagues page. If form not valid, present form. If username is taken then flash message and re-present form. """ if CURR_USER_KEY in session: return redirect('/leagues') form = RegisterUserForm() if form.validate_on_submit(): try: user = User.signup(email=form.email.data, username=form.username.data, password=form.password.data) db.session.commit() except IntegrityError: flash("Username/Email already taken", 'danger') return render_template('signup.html', form=form) do_login(user) return redirect("/leagues") else: return render_template('signup.html', form=form)
def register(): form = RegisterUserForm() # вывод списка стран countries_list = [ (country, country) for country in [line.strip() for line in open('data/countries.txt').readlines()] ] form.country.choices = countries_list if request.method == 'POST' and form.validate_on_submit(): ans = check_new_user(form) if ans != 'OK': attr = getattr(form, ans[0]) attr.errors.append(ans[1]) return render_template('register.html', form=form, title='Register') user = User(name=form.name.data, surname=form.surname.data, username=form.username.data, email=form.email.data, description=form.description.data, country=form.country.data, age=form.age.data, register_date=datetime.datetime.now()) user.set_password(form.password.data) sesion = db_session.create_session() sesion.add(user) sesion.commit() sesion.close() return redirect(url_for('authen.login')) return render_template('register.html', form=form, title='Register')
def post(self): form = RegisterUserForm() print 'enter registerview' if not form.validate_on_submit(): return form.errors,422 pwd = base64.decodestring(form.password.data) user = User(email = form.email.data, password = pwd,firstName = form.firstName.data, lastName = form.lastName.data, phone= form.phone.data,association = form.association.data) logentry = Log(datetime.datetime.utcnow(), 'Test door', user.firstName + ' ' + user.lastName, user.email, 'User registered ' + user.firstName + ' ' + user.lastName + ' ' + user.email , 'User registered', 'L1', 1, 'Web based') try: db.session.add(logentry) db.session.commit() db.session.add(user) db.session.commit() except IntegrityError: return make_response(jsonify({'error': 'eMail already registered'}), 400) # if activted send email if form.sendWelcomeMail.data != None: print 'sendWelcomeMail is ' + str(form.sendWelcomeMail.data) if form.sendWelcomeMail.data == 1: print 'try to send welcome mail' try: send_email("Welcome to %s. You successfully registered" % 'RoseGuarden', MAIL_USERNAME, [user.email], render_template("welcome_mail.txt", user=user), render_template("welcome_mail.html", user=user)) except: print 'unable to send mail' return '',201 return '', 201
def register_new_user(): """This view function renders the register form on the GET request and registers a new user on the post request""" form = RegisterUserForm() # Check that the form data is available and validated through Flask WT-forms and add this new user to the db if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data new_user = User.register(username, password, email, first_name, last_name) db.session.add(new_user) # To avoid a trying to register with an existing username and our code breaking, we except the IntegrityError # imported from sqlalchemy on commit. This way the user is notified to pick a new username and is redirected #back to the register form try: db.session.commit() except IntegrityError: form.username.errors.append( "Username is already taken, pick another") return render_template("register.html", form=form) #To make sure that a user stays logged in after registering, the username is added to the session session["username"] = new_user.username flash("Welcome, your account has succesffully been created", "success") return redirect(f"/users/{new_user.username}") return render_template("register.html", form=form)
def register(request, next): if next == u'': next = u'/' elif next[-9:] == u'register/': return HttpResponseRedirect('../' + next[:-9]) user = request.user if user.is_authenticated(): return HttpResponseRedirect('/' + user.get_profile().school.internalName + '/') if request.method == 'POST': form = RegisterUserForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.set_password(form.cleaned_data['password']) user.is_active = False user.save() uprofile = UserProfile() uprofile.user = user uprofile.school = School.objects.get(internalName = form.cleaned_data['email'].rsplit('@')[-1].rsplit('.')[-2]) uprofile.birthday = form.cleaned_data['birthday'] uprofile.gender = form.cleaned_data['gender'] uprofile.save() send_activation_email(user) if next == u'/': return HttpResponseRedirect('/' + uprofile.school.internalName + '/') else: return HttpResponseRedirect(next) else: return render(request, 'userdata/login.html', dictionary={'user': user, 'loginform': AuthenticationForm, 'isSplash': True, 'regform': form}) else: return render(request, 'userdata/login.html', dictionary={'user': user, 'loginform': AuthenticationForm, 'isSplash': True, 'regform': RegisterUserForm})
def edit_user(): """ Handle Edit user """ if not g.user: flash("Access unauthoriezed.", "danger") return redirect("/") user = User.query.get_or_404(g.user.id) signup_form = RegisterUserForm(obj=user) if signup_form.validate_on_submit(): if User.authenticate(signup_form.username.data.lower(), signup_form.password.data): user = User.query.get(g.user.id) user.username = signup_form.username.data.lower() user.password = signup_form.password.data user.image_url = signup_form.image_url.data user.bio = signup_form.bio.data user.location = signup_form.location.data db.session.add(user) db.session.commit() flash("User's info updated", "success") return redirect(f"/users/{g.user.id}") else: flash("wrong password", "danger") return redirect(f"/users/{g.user.id}") return render_template(f"/users/{g.user.id}", signup_form=signup_form)
def register_user(): """Register a user by rendering registration form template and handling form submission.""" form = RegisterUserForm() # if the CSRF token is validated after the form is submitted if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data new_user = User.register(username, password, email, first_name, last_name) db.session.add(new_user) try: db.session.commit() session['username'] = new_user.username flash("Welcome! Your account was successfully created!", "success") return redirect(f'/users/{new_user.username}') except IntegrityError: form.username.errors.append( "That username is taken. Please choose another username.") # if the form validation fails return render_template('/users/register.html', form=form)
def register_user(): """ Shows a form to register a new user. """ if "username" in session: flash("You're already logged in!") return redirect(f'/users/{session["username"]}') form = RegisterUserForm() if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data is_admin = form.is_admin.data user = User.register(username, password, email, first_name, last_name, is_admin) db.session.add(user) db.session.commit() session['username'] = user.username return redirect(f'/users/{user.username}') return render_template("register.html", form=form)
def register(): if current_user.is_authenticated: return redirect (url_for ('index.index')) form = RegisterUserForm () if form.validate_on_submit (): form.create_user () flash ('注册成功, 请登录', 'success') return redirect (url_for ('index.index')) return render_template ('user/register.html', form=form, active='user_register')
def register(): form = RegisterUserForm() if form.validate_on_submit(): new_user = User.create(email=form.email.data, password=form.password.data, active=True, role_id=1) login_user(new_user) redirect_url = request.args.get('next') or url_for("groups") return redirect(redirect_url) return render_template("register.html", form=form)
def register_user(): """ renders user registation html; handles register user form submission""" if session.get("username"): return redirect(f"users/{session['username']}") form = RegisterUserForm() if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data # write custom validator for this, separate concerns? curr_usernames = [ u.username for u in db.session.query(User.username).all() ] curr_user_emails = [ u.email for u in db.session.query(User.email).all() ] if username in curr_usernames and email not in curr_user_emails: form.username.errors = ["Username already exists!"] return render_template("register_user_form.html", form=form) if email in curr_user_emails and username not in curr_usernames: form.email.errors = ["Email already in use!"] return render_template("register_user_form.html", form=form) if email in curr_user_emails and username in curr_usernames: form.username.errors = ["Username already exists!"] form.email.errors = ["Email already in use!"] return render_template("register_user_form.html", form=form) else: user = User.register(username=username, password=password, email=email, first_name=first_name, last_name=last_name) db.session.add(user) db.session.commit() session["username"] = user.username flash("Sign Up Complete!") return redirect(f"/users/{session['username']}") else: return render_template("register_user_form.html", form=form)
def post(self): form = RegisterUserForm() print "enter registerview" if not form.validate_on_submit(): return form.errors, 422 pwd = base64.decodestring(form.password.data) user = User( email=form.email.data, password=pwd, firstName=form.firstName.data, lastName=form.lastName.data, phone=form.phone.data, association=form.association.data, ) logentry = Log( datetime.datetime.utcnow(), "Test door", user.firstName + " " + user.lastName, user.email, "User registered " + user.firstName + " " + user.lastName + " " + user.email, "User registered", "L1", 1, "Web based", ) try: db.session.add(logentry) db.session.commit() db.session.add(user) db.session.commit() except IntegrityError: return make_response(jsonify({"error": "eMail already registered"}), 400) # if activted send email if form.sendWelcomeMail.data != None: print "sendWelcomeMail is " + str(form.sendWelcomeMail.data) if form.sendWelcomeMail.data == 1: print "try to send welcome mail" try: send_email( "Welcome to %s. You successfully registered" % "RoseGuarden", MAIL_USERNAME, [user.email], render_template("welcome_mail.txt", user=user), render_template("welcome_mail.html", user=user), ) except: print "unable to send mail" return "", 201 return "", 201
def register(): form = RegisterUserForm() if form.validate_on_submit(): new_user = User( email=request.form['email'], password=generate_password_hash(request.form['password'], method='pbkdf2:sha256', salt_length=8), ) db.session.add(new_user) db.session.commit() login_user(new_user) return redirect(url_for('search')) return render_template('register.html', form=form, logged_in=current_user.is_authenticated)
def register(): form = RegisterUserForm() if form.validate_on_submit(): password_hash_and_salted = generate_password_hash(password=request.form["password"], method="pbkdf2:sha256", salt_length=8) new_user = User(name=request.form["name"], email=request.form["email"], password=password_hash_and_salted) db.session.add(new_user) try: db.session.commit() except Error or IntegrityError: flash("You've already signed up with that email, log in instead!") return redirect(url_for("login")) else: login_user(new_user) return redirect(url_for("get_all_posts")) return render_template("register.html.j2", form=form)
def register(): form = RegisterUserForm() if form.validate_on_submit(): #Login the user and generate session["user_id"] key. user = User.register(username=form.username.data, password=form.password.data, first_name=form.first_name.data, last_name=form.last_name.data, email=form.email.data) db.session.add(user) db.session.commit() session["user_id"] = user.id return redirect(f"/users/{user.username}") return render_template("register.html", form=form)
class RegisterClass(View): template = 'users/signup.html' form = RegisterUserForm() def get(self, request, *args, **kwargs): if request.user.is_authenticated(): return redirect('dashboard') return render(request, self.template, self.get_context()) def post(self, request, *args, **kwargs): username = request.POST['username'] email = request.POST['email'] password = request.POST['password'] user_create = User.objects.create_user(username=username, email=email, password=password) UserProfile.objects.create(user=user_create) user = authenticate(username=username, password=password) if user is not None: if user.is_active: login_django(request, user) return redirect('dashboard') return render(request, self.template, self.get_context()) def get_context(self): return {'form': self.form}
def post(self): form = RegisterUserForm() user = User(username=form.username.data, email=form.email.data) user.set_password(form.password.data) db.session.add(user) db.session.commit() flash('Congratulations, you are now a registered user!') return redirect(url_for('login'))
def register(): """ Register user: produce form & handle form submission.""" form = RegisterUserForm() if form.validate_on_submit(): form_data = { key: value for (key, value) in form.data.items() if key in REGISTER_WHITELIST } user = User.register(**form_data) db.session.add(user) db.session.commit() session[USER_ID] = user.username return redirect(f"/users/{user.username}") else: return render_template("register_user.html", form=form)
def handle_register_form(): form = RegisterUserForm() # If POST & form valid if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data new_user = User.register(username, password, email, first_name, last_name) session['username'] = new_user.username return redirect(f"/users/{username}") return render_template('register.html', form=form)
def register_user(): """Show a form that when submitted will register/create a user.""" form = RegisterUserForm() if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data new_user = User.register(username, password, email, first_name, last_name) db.session.add(new_user) db.session.commit() session["username"] = user.username flash("You have Sucessfully Created Your Account") return redirect("/secret") else: return render_template("register.html", form=form)
def register_user_form(): if 'user_username' in session: return redirect(f"/user/{session['user_username']}") form = RegisterUserForm() if form.validate_on_submit(): username = form.username.data password = form.password.data new_user = User.register(username, password) new_user.email = form.email.data new_user.first_name = form.first_name.data new_user.last_name = form.last_name.data sess.add(new_user) sess.commit() session['user_username'] = new_user.username flash('Successfully Registered') return redirect(f'/user/{new_user.username}') else: return render_template('register.html', form=form)
def signup(): """ Handle user signup. Create new user and add to DB. Redirect to Homepage. If form not valid, present form. If Username already exist, flash message and re-present form. """ signup_form = RegisterUserForm() if signup_form.validate_on_submit(): try: user = User.signup(username=signup_form.username.data.lower(), password=signup_form.password.data, image_url=signup_form.image_url.data or User.image_url.default.arg, location=signup_form.location.data, bio=signup_form.bio.data) db.session.commit() except IntegrityError: flash("Username already taken", "danger") return render_template( "/", signup_form=signup_form, ) do_login(user) return redirect("/") login_form = LoginForm() return render_template("homepage.html", signup_form=signup_form, login_form=login_form)
def register(): form = RegisterUserForm() if form.validate_on_submit(): name = form.name.data email = form.email.data password_hash = generate_password_hash(form.password.data, method='pbkdf2:sha256', salt_length=8) user = User.query.filter_by(email=email).first() if user: flash("Email already exists.") return redirect(url_for('login')) else: new_user = User(name=name, email=email, password=password_hash) db.session.add(new_user) db.session.commit() login_user(new_user) return redirect(url_for('get_all_posts')) return render_template("register.html", form=form, current_user=current_user)
def register(request): title = "Register" form = RegisterUserForm(request.POST) send_email='' if request.method == 'POST': if form.is_valid(): new_user = User.objects.create_user(**form.cleaned_data) new_user.save() new_user.backend='django.contrib.auth.backends.ModelBackend' auth.login(request,new_user) messages.success(request, 'Account with username '+request.POST.get('username')+' has been created') return HttpResponseRedirect('/') else: form = UserForm() messages.error(request, 'User already created please choose different username and email') return HttpResponseRedirect('/register' ,messages) context = { "template_title": title, "form": form } return render(request ,"register.html",context)
def register(): if "username" in session: return redirect(f"/users/{session['username']}") form = RegisterUserForm() if form.validate_on_submit(): user_attrs = { 'username': form.username.data, 'password': form.password.data, 'email': form.email.data, 'first_name': form.first_name.data, 'last_name': form.last_name.data } # new_user = User(**user_attrs) new_user = User.register(**user_attrs) db.session.add(new_user) db.session.commit() return redirect(f'/users/{new_user.username}') else: return render_template('register.html', form=form)
def register(): form = RegisterUserForm() if form.validate_on_submit(): username = form.username.data password = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data try: user = User.register(username=username, password=password, email=email, first_name=first_name, last_name=last_name) db.session.add(user) db.session.commit() session['username'] = user.username return redirect(f'/users/{user.username}') except: form.username.errors = ['Username might be used already'] form.email.errors = ['Or Email might be used already'] return render_template('register.html', form=form) return render_template('register.html', form=form)
def register(): form = RegisterUserForm() if form.validate_on_submit(): username = form.username.data pwd = form.password.data email = form.email.data first_name = form.first_name.data last_name = form.last_name.data new_user = User.register(username, pwd, email, first_name, last_name) db.session.add(new_user) db.session.commit() session['username'] = new_user.username return redirect(f'/users/{session["username"]}') else: if 'username' in session: flash("You already logged in", 'secondary') return redirect("/") return render_template("register.html", form=form)
def post(self): form = RegisterUserForm() print 'enter registerview' if not form.validate_on_submit(): return form.errors, 422 pwd = base64.decodestring(form.password.data) user = User(email=form.email.data, password=pwd, firstName=form.firstName.data, lastName=form.lastName.data, phone=form.phone.data, association=form.association.data) logentry = Action(datetime.datetime.utcnow(), config.NODE_NAME, user.firstName + ' ' + user.lastName, user.email, 'User registered ' + user.firstName + ' ' + user.lastName + ' ' + user.email, 'User registered', 'L2', 1, 'Web based') try: db.session.add(logentry) db.session.commit() db.session.add(user) db.session.commit() except IntegrityError: return make_response(jsonify({'error': 'eMail already registered'}), 400) # if activted send email if form.sendWelcomeMail.data != None: print 'sendWelcomeMail is ' + str(form.sendWelcomeMail.data) if form.sendWelcomeMail.data == 1: print 'try to send welcome mail' try: send_email("Welcome to %s. You successfully registered" % 'RoseGuarden', config.MAIL_USERNAME, [user.email], render_template("welcome_mail.txt", user=user), render_template("welcome_mail.html", user=user)) except: print 'unable to send mail' return '', 201 return '', 201
def search(): """ Search bar route """ search = request.args.get('search') symbols = search_symbol(search) post_form = PostForm() signup_form = RegisterUserForm() login_form = LoginForm() return render_template('users/index.html', login_form=login_form, post_form=post_form, symbols=symbols, signup_form=signup_form)
def user_profile(user_id): """ Show user profile """ if not g.user: flash("You need to be signed in for this", "danger") return redirect("/") user = User.query.get_or_404(user_id) edit_form = RegisterUserForm(obj=user) post_form = PostForm() following_list = [user.id for user in user.following] return render_template("profile.html", user=user, edit_form=edit_form, post_form=post_form, following_list=following_list)
def register(): form = RegisterUserForm() token = request.args.get('token') if request.method == 'GET' and token: user = db.session.query(User).filter(User.token == token).first() if user: if user.token == token and user.timestamp > datetime.utcnow(): return render_template('register.html', user=user, form=form) else: return render_template('401.html'), 401 else: return render_template('404.html'), 404 elif request.method == 'POST': if token: user = db.session.query(User).filter(User.token == token).first() if user: if user.token == token and user.timestamp > datetime.utcnow(): try: user.ssid = form.ssid.data user.psk = form.psk.data db.session.commit() except exc.IntegrityError as e: db.session.rollback() return render_template('adduserfail.html', error=e), 400 wifiprov = provision(user.hotelid, user.roomid, form.ssid.data, form.psk.data) if isinstance(wifiprov, Exception): return render_template('wififail.html', error=wifiprov), 400 elif wifiprov['name'] == form.ssid.data and wifiprov['psk'] == form.psk.data: user.wifiprovisioned = True db.session.commit() return render_template('thankyou.html') else: return render_template('404.html'), 404 else: return render_template('401.html'), 401 else: return render_template('404.html'), 404
def login(): """ Handle user login. """ login_form = LoginForm() if login_form.validate_on_submit(): user = User.authenticate(login_form.username.data.lower(), login_form.password.data) if user: do_login(user) flash(f"Hello, {user.username}!", "success") return redirect("/") else: flash("Invalid credentails.", "danger") signup_form = RegisterUserForm() return render_template("homepageNon.html", login_form=login_form, signup_form=signup_form)
def homepage(): """ Show homepage, fetch news from user watchlist """ signup_form = RegisterUserForm() login_form = LoginForm() post_form = PostForm() if g.user: news = get_news(g.user) return render_template("homepage.html", signup_form=signup_form, login_form=login_form, post_form=post_form, news=news, do_format=format_datetime) return render_template("homepageNon.html", signup_form=signup_form, login_form=login_form, post_form=post_form, do_format=format_datetime)
def get(self): if current_user.is_authenticated: return redirect(url_for('index')) form = RegisterUserForm() return make_response( render_template('register.html', title='Register', form=form))