Esempio n. 1
0
def login():
    form = LoginForm(request.form)
    cur = mysql.connection.cursor()
    #app.jinja_env.globals.update(trans=Language.translate)
    if request.method == 'POST' and form.validate_on_submit():
        #print(form.username.data)
        #print(form.password.data)
        if (form.username.data == "admin" and form.password.data == "admin"):
            session['user'] = "******"
            return render_template('AdminPortal.html')
        cur.execute("select * from farmer where username= %s and pass= %s ",
                    (form.username.data, form.password.data))
        account = cur.fetchone()
        if account:
            """print(account[0])
            print(account[1])
            print(account[2])
            print(account[3])"""
            session['user'] = account[1]
            return redirect(
                url_for('portal',
                        id=account[0],
                        n=account[1],
                        e=account[2],
                        m=account[3],
                        l=account[4]))
        else:
            flash("Credentials Invalid!")
    #print("HERE")
    print(form.errors)
    mysql.connection.commit()
    cur.close()
    return render_template('Login.html', title='Login', form=form)
Esempio n. 2
0
def Login():
    # If user is already signed in, redirect to Accounts page
    if (current_user.is_authenticated):
        return redirect(url_for('account'))
    else:
        form = LoginForm()
        if form.validate_on_submit():
            cursor.execute('SELECT * FROM VOLUNTEERS WHERE NAME = \'%s\'' %
                           form.Name.data)
            row = cursor.fetchone()
            if row:
                # User Exists
                # Retrieves the User's hashed password from DB
                password = row.get('PASSWORD')
                if check_password_hash(password, form.Password.data):
                    # Creates a new User object and assigns the name as it's ID
                    user = User()
                    user.id = row.get('NAME')

                    # Logs the user object in.
                    login_user(user)
                    flash("You've Successfully Logged In Into Your Account.",
                          'success')
                    return redirect(url_for('Homepage'))
                else:
                    flash(f'Incorrect Password Entry.', 'danger')
                    return redirect(url_for('Login'))
            else:
                flash(f'The Name is Not Registered.', 'danger')
                return redirect(url_for('Login'))
        return render_template('Login.html', form=form)
Esempio n. 3
0
def login():
    form = LoginForm(request.form)

    if form.validate_on_submit():
        db_session = DB_Session()
        loginUser = db_session.query(User).filter_by(
            username=form.username.data).first()
        db_session.close()

        if loginUser is not None:
            if pbkdf2_sha256.verify(form.password.data, loginUser.password):
                session['username'] = loginUser.username
                userJson = json.loads(jsonpickle.encode(loginUser))
                # app.logger.info('%s logged in and created session' % loginUser.username)
                # TODO Add logging
                if loginUser.twoFactorAuthEnabled:
                    totp.SetAuthenticator(loginUser.twoFactorAuthKey)
                    return redirect(url_for("twoFactorAuth"))

                return render_template("profile.html", user=userJson)
        return render_template("login.html",
                               form=form,
                               loginError="Wrong username or password")

    return render_template('login.html', form=form)
Esempio n. 4
0
def login():
    form = LoginForm()

    if 'email' in session:
        return redirect(url_for('profile'))

    if form.validate_on_submit():
        vid, vendor = VendorManager.get_vendor(email=form.email.data)

        # First check that a vendor with this email address exists in database
        if vendor is None:
            flash('No vendor in database with this email address')
            form.email.errors.append("Unknown email address")
            flash('Login failed because no vendor found')

        # Since vendor exists in database, check that the correct password was supplied
        if vendor is not None and VendorManager.check_password(vendor.pwdhash, form.password.data):
            flash('Login successful')
            print "Logged in successfully"
            session['email'] = form.email.data
            return redirect(url_for('profile'))
        else:
            form.password.errors.append("Incorrect password")
            flash('Login failed because incorrect password')

    return render_template('login.html', form=form)
def login():
    if current_user.is_active:
        return redirect(url_for("logout"))
    form = LoginForm()
    if form.register.data:
        return redirect(url_for("register"))
    if form.validate_on_submit():  #check if form is filled out and submited
        # Login and validate the user.
        # user should be an instance of your `User` class
        username = form.username.data  # get username from form
        if Userdb.todouserdb.find({
                "username": username
        }).count() == 1:  #check if the usermane in the db
            dbuser = Userdb.todouserdb.find_one({"username": username})
            if verify_password(form.password.data,
                               dbuser['password']):  #check agianst hashed pass
                user = User(username, dbuser['id'])
                login_user(user, form.remember_me.data)
                token = generate_auth_token()
                Userdb.todouserdb.update_one(dbuser,
                                             {'$set': {
                                                 'token': token
                                             }})
                #flash('Logged in successfully.')
                return redirect('/')
            else:
                flash('Incorrect Password.')
        else:
            flash('Unregistered user')
    return render_template('login.html',
                           title='Sign In',
                           form=form,
                           loggedIn=logInOut())
Esempio n. 6
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        flash('Login requested for user="******", with password = "******" and remember_me=%s' %
              (form.login.data, form.password.data, str(form.remember_me.data)))
        # return redirect('/index')
    return render_template('Login.html', title='Вход', form=form)
Esempio n. 7
0
def login():
    form = LoginForm()  #로그인폼
    if form.validate_on_submit():  #유효성 검사
        print('{}가 로그인 했습니다'.format(form.data.get('userid')))
        session['userid'] = form.data.get('userid')  #form에서 가져온 userid를 세션에 저장
        return redirect('/')  #성공하면 main.html로
    return render_template('login.html', form=form)
Esempio n. 8
0
def login():
    # sets up flask login form
    login_form = LoginForm()

    if request.method == 'GET':
        return render_template('login.html', form=login_form)

    # login form
    elif request.method == 'POST':

        if login_form.validate_on_submit():

            user = Models.User.query.filter_by(
                user_name=login_form.username.data).first()

            if user:
                if user.password == login_form.password.data:
                    login_user(user)
                    session['username'] = user.user_name
                    logState = True
                    return render_template('index.html', logState=logState)
                else:
                    return "Incorrect Password or Username"
            else:
                return "User doesn't exist"
        else:
            return "form not validated"

    # redirects to dashboard route

    return render_template('login.html')
Esempio n. 9
0
def login():
    """Defines Login Page Functionality"""
    if current_user.is_authenticated:
        return redirect(url_for('profile'))

    login_form = LoginForm()

    # The method validate_on_submit checks if the data was sent by POST method.
    # Besides, it validates the data by using validators in Forms class
    if login_form.validate_on_submit():
        user = dbase.get_user_by_username(login_form.username.data)
        if user and check_password_hash(user['password'],
                                        login_form.password.data):
            # After logging-in we have to create an instance of UserLogin class to store user's info
            user_login = UserLogin().create(user)
            is_remember = login_form.remember_me_button.data
            login_user(user_login, remember=is_remember)
            # To start from a page we wanted to access instead of profile page use the parameter next
            # If param next exists we will access next page otherwise the profile page will be accessed
            return redirect(request.args.get('next') or url_for('profile'))

        flash('The User Name/Password Is Incorrect', category='error')

    return render_template('login.html',
                           title='Login',
                           site_menu=dbase.get_menu(),
                           form=login_form)
Esempio n. 10
0
def signin():
    login_form = LoginForm()

    if request.method == 'GET':
        return render_template('login.html', form=login_form)

    # login form
    elif request.method == 'POST':

        if login_form.validate_on_submit():

            user = Models.User.query.filter_by(
                username=login_form.username.data).first()

            if user:
                if user.password == login_form.password.data:
                    login_user(user)
                    session['username'] = user.username
                    return redirect('userHome.html')
                else:
                    return "Incorrect Password or Username"
            else:
                return "User doesn't exist"
        else:
            return "form not validated"
Esempio n. 11
0
def login():
    form = LoginForm()
    print(form.errors)
    print("1")
    cur = mysql.connection.cursor()
    print("2")
    if form.validate_on_submit():
        print("3")
        print("COMING HERE")
    print("4")
    return render_template("loginold.html", form=form)
Esempio n. 12
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        exists = USERS.exists(form.username.data)
        if exists[0]:
            if exists[1][2] == form.password.data:
                session['username'] = form.username.data
                session['user_id'] = exists[1][0]
                session['success'] = 'Успешно'
                return redirect('/')
            else:
                form.password.errors = ['Неверный пароль']
        else:
            form.username.errors = ['Пользователь не найден']
    return render_template('login.html', title='Авторизация', form=form)
Esempio n. 13
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        email = form.email.data
        exists = user.exists(email)
        if exists[0] and check_password_hash(
                user.get(exists[1])[PASSWORD], form.password.data):
            session['email'] = email
            session['user_name'] = user.get(exists[1])[USERNAME]
            session['status'] = user.get(exists[1])[STATUS]
            session['user_id'] = exists[1]
            new_day()
            return redirect('/home')
        return render_template('login.html',
                               title='Авторизация',
                               form=form,
                               message='Неверный логин или пароль')
    return render_template('login.html', title='Авторизация', form=form)
Esempio n. 14
0
def login():

    form = LoginForm(csrf_enabled=False)

    # Don't show the login page if there's an active user
    if current_user.get_id():
        return redirect(url_for('home', user=current_user.get_id()))

    # Validates the LoginForm provided
    if form.validate_on_submit():
        # Query the user table
        user = User.query.filter_by(username=form.username.data).first()
        if user:
            # Check the password if User exists
            if bcrypt.check_password_hash(user.password, form.password.data):
                # Login the user and redirect to the user profile
                login_user(user, remember=form.remember.data)
                return redirect(url_for('home', user=session['user_id']))
    return render_template('login.html', form=form)
Esempio n. 15
0
def login():
    if not return_redirect():
        return redirect('/')
    if not api.check_user():
        form = LoginForm()
        if form.validate_on_submit():
            if api.login_user(form.email.data, form.password.data):
                return redirect('/')
            else:
                return render_template('login.html',
                                       form=form,
                                       success=False,
                                       user=api,
                                       style=url_for('static',
                                                     filename='css/style.css'))
        return render_template('login.html',
                               user=api,
                               form=form,
                               style=url_for('static',
                                             filename='css/style.css'))
    return redirect("/")
Esempio n. 16
0
def login():
    if g.user is not None and g.user.is_authenticated():
        return redirect('/')
    login_form = LoginForm()
    if login_form.validate_on_submit():
        user_dict = users_collection.find_one({"email": login_form.email.data})
        if not user_dict:
            flash("That email has not been registered", "error")
            return redirect('/signup')
        pwd_hash = bcrypt.hashpw(login_form.password.data, user_dict['salt'])
        if pwd_hash == user_dict['pwd']:
            user = User(user_dict['email'], user_dict['_id'])
            login_user(user, remember=login_form.remember_me.data)
            flash("Logged in succesfully", "success")
            #return redirect(unquote(request.args.get("next")) or url_for("index"))
            print_stderr(request.args.get("next"))
            return redirect('/')
        else:
            flash("The password you entered is incorrect", "error")
            return redirect('/login')
    return render_template('login.html', login_form=login_form)
Esempio n. 17
0
def login():
    session["login"] = True
    session["signup"] = False
    if request.method == 'POST':
        loginform = LoginForm(request.form, prefix='form1')

        if loginform.validate_on_submit():
            check_login = g.database.execute("""SELECT User_id from MuShMe.entries WHERE Email_id="%s" AND Pwdhash="%s" """ %
                                            (loginform.email.data, hashlib.sha1(loginform.password.data).hexdigest()))
            if check_login:
                userid= g.database.fetchone()
                g.database.execute("""UPDATE MuShMe.entries SET Last_Login=CURRENT_TIMESTAMP() WHERE User_id="%s" """ % (userid))
                g.conn.commit()
                for uid in userid:
                    session['userid'] = uid
                    g.database.execute("""SELECT Username from MuShMe.entries WHERE User_id="%s" """ % uid )
                    session['UserName']=g.database.fetchone()[0]
                    g.database.execute("""SELECT Privilege FROM MuShMe.entries WHERE User_id="%s" """ % uid)
                    session['privilege'] = g.database.fetchone()[0]
                    g.database.execute("""SELECT Profile_pic FROM MuShMe.entries WHERE User_id="%s" """ % uid)
                    session['profilepic'] = g.database.fetchone()[0]
                    g.database.execute("""SELECT Name from MuShMe.entries WHERE User_id="%s" """ % uid )
                    session["Name"]=g.database.fetchone()
                    g.database.execute("""SELECT DOB from MuShMe.entries WHERE User_id="%s" """ % uid )
                    session["dob"]=str(g.database.fetchone())
                    session['logged_in'] = True
                    session['logged_in']=True
                    #print uid
                    #print userid
                    return redirect(url_for('userProfile', userid=uid))
            else:
                flash("Incorrect Email-Id or Password")
        else:
            flash("Incorrect Email-Id or Password")
        return render_template('homepage/index.html', form1=loginform, form2=ContactForm(prefix='form2'))
    else:
        return redirect(url_for(('index')))
Esempio n. 18
0
def login():

    if "logged_in" in session:
        flash("already logged in", "info")
        return redirect(url_for("home"))
    else:
        form = LoginForm()
        if form.validate_on_submit():
            session.permanent = True
            email = form.email.data
            password = form.password.data
            remember = form.remember.data
            c.execute("""SELECT * FROM user WHERE email=?""", (email, ))
            val2 = c.fetchone()
            if val2 is not None:
                ap = val2[5]
                i = val2[0]

                if sha256_crypt.verify(password, ap):
                    if val2[-2]:
                        session["logged_in"] = True
                        session["id"] = i
                        session["current_user"] = val2[1]
                        return redirect(url_for("home"))
                    else:
                        flash(
                            "You didn't verified your account,Please confirm first by clicking the given link or registering again",
                            'warning')

                else:
                    flash("wrong password!", 'warning')

            else:
                flash("No such username", "warning")

    return render_template("login.html", form=form)
Esempio n. 19
0
def index():
    form = SignupForm(request.form)
    loginform = LoginForm()

    if 'email' in session:
        # Find the vendor in database with matching email address
        vendor_id, vendor = VendorManager.get_vendor(email=session['email'])
        if vendor is not None:
            prod_count = str(len(vendor.product_catalog))
            vendor_deal_count = str(len(vendor.deal_list))
            return render_template('index.html', form='null', v=vendor, products=vendor.product_catalog,
                                   product_count=prod_count, deal_count=vendor_deal_count, email=session['email'],
                                   loginform=loginform)
        else:
            return redirect(url_for('login'))

    if request.method == 'POST' and request.form['submit'] == "Register" and form.validate_on_submit():
        flash('Signup requested')
        print "Successfully validated form!!"
        print "name received", form.name, 'data:', form.name.data
        # Hash the password and save to database
        pwdhash = VendorManager.get_password_hash(form.password.data)
        coords = VendorManager.get_vendor_coordinate(form.address.data + " " + form.city.data)
        print coords[0]
        print coords[1]
        given_data = {}
        given_data['name'] = form.name.data
        given_data['description'] = form.description.data,
        given_data['email'] = form.email.data
        given_data['type'] = form.category.data
        given_data['address'] = form.address.data
        given_data['phoneNumber'] = form.phone.data
        given_data['state'] = form.state.data
        given_data['city'] = form.city.data
        given_data['password'] = pwdhash
        given_data['coordinates'] = [repr(coords[0]), repr(coords[1])]

        new_vendor = VendorManager.create_vendor(given_data)
        print "CHECKING IF VENDOR W/ EMAIL EXISTS"
        print VendorManager.get_vendor(email=form.email.data)
        if VendorManager.get_vendor(email=form.email.data) is None:
            VendorManager.post_vendor(new_vendor)
            # Add email to cookie
            session['email'] = new_vendor.email
            return redirect(url_for('profile'))
        else:
            form.email.errors.append("User with email: " + request.form['email'] + " already exists in the database")
            flash("Enrollment failed")
            return render_template('index.html', form=form, email='', loginform=loginform, v='')

    elif request.method == 'POST' and request.form['submit'] == "Login" and loginform.validate_on_submit():
        vid, vendor = VendorManager.get_vendor(email=loginform.email.data)

        # First check that a vendor with this email address exists in database
        if vendor is None:
            flash('No vendor in database with this email address')
            loginform.email.errors.append("Unknown email address")
            flash('Login failed because no vendor found')

        # Since vendor exists in database, check that the correct password was supplied
        if vendor is not None and VendorManager.check_password(vendor.pwdhash, form.password.data):
            flash('Login successful')
            print "Logged in successfully"
            session['email'] = loginform.email.data
            return redirect(url_for('profile'))
        else:
            loginform.password.errors.append("Incorrect password")
            flash('Login failed because incorrect password')

    # print "Form errors below:"
    # print(form.errors)
    return render_template('index.html', form=form, email='', loginform=loginform, v='')
Esempio n. 20
0
def Login():
    form = LoginForm(request.form)
    if request.method == 'POST' and form.validate_on_submit():
        result = appService.login(form.username.data, form.otp.data)
        flash(result)
    return render_template('login.html', title='Login', form=form)