def login(request): if request.method == 'POST': form = UserLoginForm(request.POST) if form.is_valid(): user = auth.authenticate(username=request.POST.get('username')) if user is not None: try: Profile.objects.get(user=user) except Profile.DoesNotExist: Profile.objects.create(user=user) Profile.objects.create(user=user) user = auth.authenticate(username=request.POST.get('username'), password=request.POST.get('password')) if user is not None: try: Profile.objects.get(user=user) except Profile.DoesNotExist: Profile.objects.create(user=user) auth.login(request, user) messages.success(request, "You have successfully logged in") return redirect(reverse('profile')) else: form.add_error(None, "Your username or password was not recognised") else: form = UserLoginForm() args = {'form': form} args.update(csrf(request)) return render(request, 'login.html', args)
def login(): form = UserLoginForm(request.form) if request.method == "POST" and form.validate(): cur = mysql.connection.cursor() # Get form data email = form.email.data pin_candidate = form.pin.data result = cur.execute("SELECT * FROM User WHERE email = %s", [email]) if result > 0: data = cur.fetchone() pin = data['pin'] # Successful Login if pin_candidate == pin: # Store current users email session['email'] = email print(session['email']) return redirect(url_for('index')) # Failed pin else: flash('Pin is incorrect', 'danger') return render_template('login.html', form=form) # Failed Email else: flash('No user exists with that email', 'danger') return render_template('login.html', form=form) return render_template('login.html', form=form)
def signin(): if current_user.is_authenticated: return redirect(url_for('home')) signin_form = UserLoginForm() alternative = {'label': 'Register', 'endpoint': 'register'} if signin_form.validate_on_submit(): # Check if account exists user_details = request.form exists = username_and_password_check(user_details['username'], user_details['password']) if not exists: # flash('Username or pasword is incorrect') return render_template('bootstrap-pages/signin-page.html', form=signin_form, alternative=alternative, title='Sign in') _, user_id = info_check('users', 'username', user_details['username']) user_id, name, email, username = user_info_get( ['id', 'name', 'email', 'username'], user_id) if user_id: remember = user_details.get('remember') is not None user = User(user_id, name, email, username) login_user(user, remember=remember) return redirect(url_for('home')) return render_template( # 'signin.html', 'bootstrap-pages/signin-page.html', form=signin_form, alternative=alternative, title='Sign in')
def login(): form = UserLoginForm() if request.method == 'POST': if form.validate_on_submit(): # 在测试的过程中发现如果不加csrf token验证一直为false username = form.username.data password = form.password.data md5 = hashlib.md5() md5.update(password) password = md5.hexdigest() user = UserLoginModel.query.filter_by(username=username).first() session['username'] = username if user: db_password = user.password if db_password and db_password == password: flash('登录成功') login_user(user) return redirect(url_for('main.main_handler')) else: flash('登录凭证有错误') return redirect(url_for('auth.login')) else: flash('登录凭证有错误') return redirect(url_for('auth.login')) else: return render_template('login/login.html', form=form)
def test_login_form_missing_email(self): form = UserLoginForm({ 'password': '******', }) self.assertFalse(form.is_valid()) self.assertRaisesMessage(forms.ValidationError, "Email address is missing", form.full_clean())
def login(): """ Get requests return a log in form Post requests authenticate the user, and redirects to the home page. :return: """ form = UserLoginForm() if request.method == 'POST': # When the request is post, we want to send a JSON back if not form.validate(): # If the form isn't properly validated, return a json saying why return jsonify( { 'success': False, 'errors': form.errors } ) # We get here if form has been validated, login the user user = User.query.filter_by(username=form.username.data).first() remember = form.remember login_user(user, remember=remember) next_page = request.args.get('next') if not next_page or url_parse(next_page).netloc != '': next_page = url_for('home') return jsonify( { 'success': True, 'nextpage': next_page } ) return render_template('login-form.html', form=form)
def homepage_search_results(): """Show List of search results from recipe search""" #Need forms here too signup_form = UserSignupForm() login_form = UserLoginForm() #collect query term from args search = request.args.get('q') offset_number = request.args.get('offset') or SEARCH_RESULTS offset = int(offset_number) + int(SEARCH_RESULTS) #set params for API, capture response, set response to JSON params = { "apiKey": API_KEY, "query": search, "number": SEARCH_RESULTS, "offset": offset } response = requests.get(API_SEARCH_BASE, params=params) res = response.json()['results'] if g.user: #If the user is logged in go to user search results page return render_template('user/search_results.html', results=res, offset=offset, search=search) #No user search results page return render_template('no_user/no_user_search_results.html', results=res, offset=offset, search=search, signup_form=signup_form, login_form=login_form)
def login(): form = UserLoginForm() if form.validate_on_submit(): if form.email.data == "*****@*****.**": flash("Login successfully!", "success") return redirect(url_for("home")) return render_template('login.html', form=form, title='Login')
def login(): if request.method == 'POST': form = UserLoginForm(request.form) if form.validate(): user = User.query.filter_by(name=form.name.data).first() if user is not None: if user.password == form.password.data: session['name'] = form.name.data if session['name'] == "admin": return redirect(url_for('admin')) return redirect(url_for('list')) return redirect(url_for('login')) else: flash('All fields are required.') form = UserLoginForm() return render_template('login.html', form=form)
def test_login_form_missing_password(self): form = UserLoginForm({ 'email': '*****@*****.**', }) self.assertFalse(form.is_valid()) self.assertRaisesMessage(forms.ValidationError, "Password is missing", form.full_clean())
def login(): form = UserLoginForm() if request.method == 'POST' and form.validate_on_submit(): error = None request_data = { 'email': form.email.data, 'password': form.password.data } collection = db['users'] user_data = collection.find_one( filter={'email': request_data['email']}) if not user_data: error = "존재하지 않는 사용자입니다." elif not check_password_hash(user_data['password'], request_data['password']): error = "비밀번호가 올바르지 않습니다." if error is None: del user_data['_id'] del user_data['password'] session.clear() for key in user_data: session[key] = user_data[key] return redirect(url_for('main.index')) flash(error) return render_template('/login.html', form=form)
def index(request): error = '' form = UserLoginForm() if request.method == 'POST': form = UserLoginForm(request.POST) if form.is_valid(): user = authenticate(username=form.cleaned_data['login'], password=form.cleaned_data['password']) if user: login(request, user) try: CompleteTest.objects.get(user=request.user).delete() except: pass return HttpResponseRedirect('/test/1') error += u'Неверные данные' return render(request, 'index.html', {'form': form, 'error': error})
def post(self): form = UserLoginForm() if form.validate_on_submit(): u = User() returnvalue = u.UserAuthentication(form.username.data, form.password.data) if not returnvalue == 'There Is No Such User With That Username': return jsonify(Access_token=returnvalue[0], Refresh_token=returnvalue[1]) return "<p>There Is No Such User With That Username</p><small class='text-muted'><a href = '/login'>Login</a></small>"
def signup(): """Handle user signup. Create new user and add to DB. Redirect to home page. If form not valid, present form. If the there already is a user with that username: flash message and re-present form. """ if CURR_USER_KEY in session: del session[CURR_USER_KEY] signup_form = UserSignupForm() login_form = UserLoginForm() # Signup form validation if signup_form.validate_on_submit(): try: user = User.signup( username=signup_form.username.data, first_name=signup_form.first_name.data, password=signup_form.password.data, image_url=signup_form.image_url.data or User.image_url.default.arg, ) db.session.commit() except IntegrityError as e: # Flash errors and reload page flash("Username already taken", 'danger signup-form-error') return render_template('no_user/no_user_home.html', signup_form=signup_form, login_form=login_form) # If it worked -> do login and say hello do_login(user) flash(f"Hello, {user.first_name}!", "success") # Go to User Home return redirect("/home") else: #If form not valid fields = [field for field in signup_form] errors = {} #Capture errors in dict for field in fields: if field.errors: errors[field.name] = field.errors #Create error message string to display errors on redirect error_message = "<i class='far fa-frown-open error-sad-icon'></i><span class='error-sad-title'>Dang it! It didn't work...</span>" for name, error in errors.items(): error_message += f"<p><b>*</b> {name} : {error[0]}</p>" flash(f"{error_message}", 'danger signup-form-error') return redirect('/')
def user_login(): """login """ form = UserLoginForm() if form.validate_on_submit(): #flash('用户名:' + form.username.data) #flash('pw: ' + str(form.password.data)) user = User.query.filter_by(id=form.userid.data).one() login_user(user, remember=form.remember.data) return redirect(url_for('main')) return render_template('/index/login.html', title='登录系统', form=form)
def login(request): if request.method == 'POST': form = UserLoginForm(request.POST) if form.is_valid(): user = auth.authenticate(email=request.POST.get('email'), password=request.POST.get('password')) if user is not None: auth.login(request, user) messages.error(request, "You have successfully logged in") return redirect(reverse('profile')) else: form.add_error(None, "Your email or password was not recognised - Please go to the register tab and register if you have not already done so") else: form = UserLoginForm() args = {'form': form} args.update(csrf(request)) return render(request, 'login.html', args)
def LoginView(request): print(request.user.is_authenticated()) form = UserLoginForm(request.POST or None) if form.is_valid(): username = form.cleaned_data.get("username") password = form.cleaned_data.get("password") user = authenticate(username=username, password=password) login(request, user) print(request.user.is_authenticated()) return redirect("/home/") return render(request, "prona/login_form.html", {"form": form})
def login(): # chiamata post -> controllo credenziali if request.method == 'POST': form = UserLoginForm(request.form) if form.validate(): user = login_user(form) if user: if session['user']['active']: logging(session['user']['user_id'], 'LOGIN') if session['user']['superuser'] == True: return redirect( url_for('admin.index')) #amministratore return redirect(url_for('main.index')) #utente comune else: session.pop('user', None) return render_template( 'login/not_allowed.html') #utente non valido else: flash('Invalid credentials!') return render_template('login/login.html', form=form) #credenziali errate # chiamata get -> controllo utente in sessione else: if 'user' in session: if session['user']['active']: if session['user']['authenticated'] == True and session[ 'user']['superuser'] == False: return redirect(url_for('main.index')) #utente comune elif session['user']['authenticated'] == True and session[ 'user']['superuser'] == True: return redirect(url_for('admin.index')) #amministratore else: return render_template( 'login/not_allowed.html') #utente non valido return render_template('login/login.html', form=UserLoginForm()) #pagina log in
def login(request): if request.method == 'POST': form = UserLoginForm(request.POST) if form.is_valid(): user = auth.authenticate(email=request.POST.get('email').lower(), password=request.POST.get('password')) if user is not None: auth.login(request, user) messages.success(request, "You have successfully logged in.") return redirect(reverse('account', kwargs={'user_id': user.id})) else: form.add_error(None, "Your email or password was not recognised.") else: form = UserLoginForm() args = {'form': form} args.update(csrf(request)) return render(request, 'accounts/login.html', args)
def user_login(): """ Login page""" form = UserLoginForm() if form.validate_on_submit(): user = User.authenticate(username=form.username.data, password=form.password.data) if user: login(user) return redirect('/books') else: flash('Username or Password incorect') return render_template('users/login.html', form=form)
def homepage(): """Homepage view with simple search bar and login/signup forms""" if g.user: return redirect("/home") #Apply forms to homepage view signup_form = UserSignupForm() login_form = UserLoginForm() return render_template('no_user/no_user_home.html', signup_form=signup_form, login_form=login_form, cuisines=CUISINES)
def login(): form = UserLoginForm() if form.validate_on_submit(): user = authenticate(form.username.data, form.password.data) if user: do_login(user) flash(f"Welcome back {user.username}", 'success') return redirect(f"/users/{user.id}") flash('Invalid credentials. Please try again.', 'danger') return redirect('/login')
def display_login_form(): form = UserLoginForm() if form.validate_on_submit(): username = form.username.data password = form.password.data curr_user = User.authenticate_user(username, password) if curr_user: flask.session['username'] = curr_user.username flash(f"Welcome Back, {curr_user.username}!", "primary") return redirect(f"/users/{curr_user.username}") else: flash('User credentials invalid', 'error') return render_template('login_form.html', form=form)
def login_user(): form = UserLoginForm() if form.validate_on_submit(): username = form.username.data password = form.password.data user = User.login(username, password) if user: do_login(user) flash(f"Welcome back {user.username}!", "success") return redirect(f'/users/{g.user["id"]}/calendar') else: form.username.errors = ['Invalid username/password'] return render_template('login.html', form=form)
def login_user(): form = UserLoginForm() if form.validate_on_submit(): username = form.username.data password = form.password.data user = User.authenticate(username, password) if user: flash('Wlcome back', 'success') session['user_id'] = user.id return redirect(f'/users/{user.username}') else: form.username.errors = ['Invalid Username or Password'] return render_template('login.html', form=form)
def login(): form = UserLoginForm() if request.method == 'GET': return render_template('login.html', form=form) if form.validate_on_submit(): user = User.validate_user(form.username.data, form.password.data) if user: session['user_id'] = user.id session['username'] = user.username return redirect(url_for('main')) flash('Username or/and password do not match', 'warning') return redirect(url_for('login'))
def user_login(request): if request.method == 'POST': form = UserLoginForm(request.POST) if form.is_valid(): user = authenticate(email=form['email'].value(), password=form['password'].value()) if user is not None: login(request, user) return HttpResponseRedirect(reverse('tasks:task_list')) else: return render(request, 'sign_up_or_login.html', {'form': form}) else: return render(request, 'sign_up_or_login.html', { 'form': form, }) else: user = request.user if user.is_anonymous(): form = UserLoginForm() return render(request, 'sign_up_or_login.html', { 'form': form, }) else: return HttpResponseRedirect(reverse('tasks:task_list'))
def login(): """Handle user login.""" form = UserLoginForm() if form.validate_on_submit(): user = Users.authenticate(form.username.data, form.password.data) if user: do_login(user) add_user_to_g() return redirect(f"/users/{g.user.id}/home") flash("Wrong username or password, please try again.") return render_template('users/login.html', form=form)
def user_login(): form = UserLoginForm() if form.validate_on_submit(): username = form.username.data password = form.password.data user = User.authenticate(username, password) if user: session["username"] = user.username # Keeps user logged in flash(f"Welcome back, {user.username}", "success") return redirect('/') else: form.username.errors = ['Invalid username/password'] return render_template('users/login.html', form=form)
def login(): """This view function handles the login of an existing user""" form = UserLoginForm() if form.validate_on_submit(): user = User.authenticate(form.username.data, form.password.data) if user: login_user(user) flash(f"Welcome, {user.username}!", "success") return redirect("/") flash("Invalid credentials.", 'danger') return render_template('users/login.html', form=form)