Example #1
0
def home():
    if request.method == 'GET' and current_user.is_authenticated:
        if current_user.user_login_id == 'reception':
            return render_template('home.html', title="Home", reception=True)
        elif current_user.user_login_id == 'pharmacy':
            return render_template('home.html', title="Home", pharmacy=True)
        elif current_user.user_login_id == 'diagnosis':
            return render_template('home.html', title="Home", diagnostics=True)

    form = LoginForm()
    if form.validate_on_submit():
        username = request.form.get('username')
        password = request.form.get('password')
        user = User.query.filter_by(user_login_id=username).first()
        if user and sha256_crypt.verify(password, user.password):
            login_user(user, remember=True)
            if username == 'reception':
                flash('Welcome Receptionist', 'success')
                return render_template('home.html',
                                       title="Home",
                                       reception=True)
            elif username == 'pharmacy':
                flash('Welcome Pharmacist', 'success')
                return render_template('home.html',
                                       title="Home",
                                       pharmacy=True)
            elif username == 'diagnosis':
                flash('Welcome Diagnostician', 'success')
                return render_template('home.html',
                                       title="Home",
                                       diagnostics=True)

    flash('Please Enter Proper Credentials', 'danger')
    return redirect(url_for('login'))
Example #2
0
def login():
    if current_user.is_authenticated:  # already logged in, redirect based on account type
        if current_user.access == "admin":
            return redirect('/admin')
        return redirect('/clubhouse')
    form = LoginForm()
    if form.validate_on_submit():
        # read user input to form
        username = request.form['user']
        password = request.form['password']
        u_id = get_id_from_username(username)
        if u_id:  # valid user
            user = User(u_id)  # generate user object
            if user.check_password(password):  # login success
                login_user(user, remember=form.remember.data)
                session['fresh'] = True  # manually set fresh session
                # determine whether this user prefers last, first or first last
                session['last_name_first'] = user.last_name_first
                # redirect based on user status
                if user.access == "admin":
                    # reset stored club id and impersonation name
                    if 'club_id' in session:
                        session.pop('club_id')
                    if 'impersonation' in session:
                        session.pop('impersonation')
                    return redirect('/admin')
                # otherwise this user is a clubhouse coordinator
                session['club_id'] = get_club_id_from_user(
                    user_id=u_id)  # store club id in use
                return redirect('/clubhouse')
        # display that credentials are incorrect
        flash(_l("Username/password combination incorrect."))
        return redirect('/login')
    return render_template('login.html', form=form, refresh=False)
def login():
    # Check if user is already logged in
    if current_user.is_authenticated:
        return redirect(url_for('account'))
    form = LoginForm()
    # Check if a request is both a POST request and a valid request
    if form.validate_on_submit():
        email         = form.email.data
        password      = form.password.data   
        remember      = form.remember.data
        user          = User.objects(email = email).first()     
        
        # Check if user exist and verify password against DB
        if user and user.get_password(password):
            # Login user
            login_user(user, remember = remember)
            flash('You are succesfully logged in!', 'success')
            # Go to page user intented to visit before logging in
            next_page = request.args.get('next')
            if next_page:
                return redirect(next_page)
            else:
                return redirect(url_for('account'))
        else:
            flash('Login failed. Please make sure you use the correct username (= e-mail) and password!', 'danger')

    # Getting latest 5 recipes for footer
    footer_recipes = Recipe.objects[:5].order_by('-recipe_id')

    # Render html, giving its title, passing in the form and footer recipes
    return render_template('login.html', title = 'Login', form = form, footer_recipes = footer_recipes)
Example #4
0
def get_login():
    form = LoginForm()
    if form.validate_on_submit():
        flash('Login requested for user {}, remember_me={}'.format(
            form.username.data, form.remember_me.data))
        return redirect('/index')
    return render_template("login.html", title="Sign in", form=form)
Example #5
0
def lookup():
    """
    This method validates the forms on the homepage,
    which can be found in forms.py, and then sends the
    result and user to another webpage.
    """
    form = LoginForm()
    if form.validate_on_submit():
        if set(form.artist.data).intersection("%^&*()<>?+=") or set(
                form.title.data).intersection("%^&*()<>?+="):
            flash('Whoops! Please omit special characters.', category='error')
            return render_template('whoops.html', title='error')
        artist = str(form.artist.data)
        artist = artist.replace('#', '')
        title = str(form.title.data)
        title = title.replace('#', '')
        return redirect('/recommendations/' + artist + '/' + title)
    if (form.artist.data and not form.title.data) or (not form.artist.data
                                                      and form.title.data):
        flash('Whoops! Please enter both the song name and artist.',
              category='error')
        return render_template('whoops.html', title='Input error')
    return render_template('lookup.html',
                           title='Smarter Music Recommendations',
                           form=form)
Example #6
0
def index():             #index is the login page
    logged_in = False
    form      = LoginForm()  #form is an instance of the LoginForm class
    title     = "Login"

    if form.validate_on_submit():
        #get the email and password from the FORM
        email          =    form.email.data
        password       =    form.password.data

        #check if email and password from the FORM exist in the DATABASE
        #get the 1st user in the db with email matching the email entered in FORM
        userInDatabase = User.objects(email=email).first() 
        
        if userInDatabase:
            #the email entered in FORM does exist in DATABASE
            #now check if the corresponding passwords match
            if userInDatabase.compare_passwords(password):
                #passwords match
                flash(f"You are successfully logged in { userInDatabase.first_name }!", "success")

                return redirect("/home") #take legitimate user to the home page

            else:
                flash("Incorrect email or password", "danger")    

        else:
            flash("Incorrect email or password", "danger")

    return render_template("index.html", title=title, form=form, index=True, logged_in=logged_in)
Example #7
0
def login():

    if session.get('username'):
        redirect(url_for('index'))

    loginForm = LoginForm()
    if loginForm.validate_on_submit():
        with db.cursor() as cursor:
            password = loginForm.password.data
            cursor.execute(
                f'SELECT user.username, user.first_name, user.last_name, role.role_name, user.password FROM user, role WHERE user.role_id = role.role_id AND user.username = "******"'
            )
            auth = cursor.fetchone()
            cursor.close()
            if auth[0]:
                user = auth[0]
                if check_password_hash(user[4], password):
                    flash(f'Login request for user {loginForm.username.data}',
                          "success")
                    session['username'] = user[0]
                    session['name'] = f'{user[1]} {user[2]}'
                    session['role'] = user[3]
                    return redirect('/dashboard')
                else:
                    flash("Your password is wrong")
            else:
                flash("Sorry something went wrong", "danger")
    return render_template('login.html', form=loginForm)
def login():
    form = LoginForm()
    if form.validate_on_submit():
        flash('Loggin In')
        return redirect(url_for('index'))

    return render_template('login.html', title='Sign In', form=form)
Example #9
0
def index():
    """Данная функция генерирует главную страницу для пользователя

    :return: Главная страница с чатами пользователя, является ли человек \
    в сессии, формой входа(Если человек не зарегистрирован, заголовок чата
    """
    find_chat_form = FindChatForm()
    chat_create_form = CreateChatForm()
    login_form = LoginForm()
    if login_form.validate_on_submit():
        User.login(login_form.login.data)
    if chat_create_form.validate_on_submit():
        name = chat_create_form.name.data
        code_type = chat_create_form.code_type.data
        code = chat_create_form.code.data
        access_key = chat_create_form.access_key.data
        if chat_create_form.is_file_valid():
            code = chat_create_form.file.data.read()
        chat_id = Chat.create(name, code, code_type, access_key)
        return redirect('/chat/' + str(chat_id))
    return render_template('index.html',
                           chats=Chat.find(find_chat_form.chat_title.data),
                           login_form=login_form,
                           chat_create_form=chat_create_form,
                           find_chat_form=find_chat_form,
                           login=User.get_login(),
                           allowed_ex=",".join([
                               '.' + i
                               for i in app.config["ALLOWED_EXTENSIONS"]
                           ]),
                           allowed_languages=app.config["ALLOWED_LANGUAGES"])
Example #10
0
def login():
    if session.get("user"):
        return redirect(url_for("index"))

    loginForm = LoginForm()

    if request.method == "GET":
        return render_template("login.html", loginForm=loginForm)
    elif request.method == "POST":
        if loginForm.validate_on_submit():
            email = loginForm.email.data
            password = loginForm.password.data
            user = db.session.query(User).filter(User.email == email).first()
            if user and user.checkPassword(password):
                id = user.id
                firstName = user.firstName
                lastName = user.lastName
                session["user"] = {
                    "id": id,
                    "email": email,
                    "firstName": firstName,
                    "lastName": lastName
                }

                flash(f"{user.firstName}, you have successfully logged in",
                      "success")
                return redirect(url_for("index"))
            else:
                flash("Invalid username / password.", "danger")
        return render_template("login.html", loginForm=loginForm)
Example #11
0
def login():
    if 'user_id' in session:
        if session['user_type'] == 'E':
            return redirect(url_for('create_customer'))
        else:
            return redirect(url_for('account_details'))
    form = LoginForm()
    if form.validate_on_submit():
        sql = text(
            "SELECT user_type FROM userstore WHERE loginid = :x AND password = :y"
        )
        # print(form.login.data)
        # print(form.password.data)
        rslt = db.engine.execute(sql, x=form.login.data, y=form.password.data)
        user_type = [row[0] for row in rslt]
        # id = Userstore.query.filter(and_(Userstore.loginid == form.login.data,Userstore.
        # password==form.password.data)).first()
        form.login.data = ''
        # print(user_type)
        if len(user_type) == 0:
            flash('Entered Login ID or Password is Wrong !', 'danger')
        else:
            session['user_id'] = form.login.data
            session['user_type'] = user_type[0]
            if user_type[0] == 'E':
                return redirect(url_for('create_customer'))
            else:
                return redirect(url_for('account_query1'))
    return render_template('login.html', form=form, title='Login')
Example #12
0
def login():
    if 'user_id' in session:
        if session['user_type'] == 'E':
            return redirect(url_for('create_patient'))
        elif session['user_type'] == 'P':
            return redirect(url_for('pharmacist'))
        elif session['user_type'] == 'D':
            return redirect(url_for('diagnostics'))
    form = LoginForm()
    if form.validate_on_submit():
        sql = text(
            "SELECT user_type FROM userstore WHERE loginid = :x AND password = :y"
        )
        rslt = db.engine.execute(sql, x=form.login.data, y=form.password.data)
        user_type = [row[0] for row in rslt]
        form.login.data = ''
        if len(user_type) == 0:
            flash('Entered Login ID or Password is Wrong !', 'danger')
        else:
            session['user_id'] = form.login.data
            session['user_type'] = user_type[0]
            if user_type[0] == 'E':
                return redirect(url_for('create_patient'))
            elif user_type[0] == 'P':
                return redirect(url_for('pharmacist'))
            elif user_type[0] == 'D':
                return redirect(url_for('diagnostics'))
    return render_template('login.html', form=form, title='Login')
def login():
    if session.get('username') and session.get('usertype') == ("rde"):
        return redirect("/create_patient")
    elif session.get('username') and session.get('usertype') == "pha":
        return redirect("/patient_search")
    elif session.get('username') and session.get('usertype') == "dse":
        return redirect("/patient_search2")

    loginForm = LoginForm()
    title = "Login"
    if loginForm.validate_on_submit():
        username = loginForm.username.data
        password = loginForm.password.data
        cursor.execute(
            """SELECT (`type`) FROM `user_login` WHERE `username` LIKE '{}' AND `password` LIKE '{}'"""
            .format(username, password))
        dataset = cursor.fetchone()

        if cursor.rowcount > 0:
            flash("Logged in SuccessFully")
            session['username'] = username
            session['usertype'] = dataset[0]
            if dataset[0] == ("rde"):
                return redirect("/create_patient")
            elif dataset[0] == "pha":
                return redirect("/patient_search")
            else:
                return redirect("/patient_search2")
    return render_template("login.html", title=title, form=loginForm)
Example #14
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        flash('Login requisitado para o usuário {}, rememberMe={}'.format(
            form.username.data, form.rememberMe.data))
        return redirect('index')
    return render_template('login.html', title='Login', form=form)
Example #15
0
def login():
    form = LoginForm()

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

    if form.validate_on_submit():
        username = request.form.get('username')
        password = request.form.get('password')
        captcha_hash = request.form.get('captcha-hash')
        captcha_text = request.form.get('captcha_text')
        redirect_url = request.args.get(variables['redirect_url_param_name'],
                                        default='/')
        if not captcha.verify(captcha_text, captcha_hash):
            flash('Captcha is not valid.', 'error')
            return redirect(
                f'{url_for("login")}?{variables["redirect_url_param_name"]}={redirect_url}'
            )
        user = User.get(username=username, password=password)
        if user:
            if login_user(user):
                return redirect(redirect_url)
        flash('Username or password is invalid.', 'error')
        return redirect(
            f'{url_for("login")}?{variables["redirect_url_param_name"]}={redirect_url}'
        )
Example #16
0
def login1():
    form = LoginForm()

    if form.validate_on_submit():
        email = request.form.get("email")
        conn = sql.connect('database.db')
        qry_login = "******" + email + "'"
        loginData = conn.execute(qry_login)
        for rs in loginData:
            l_email_count = rs[0]
            l_email_name = rs[1]
            l_email_id = rs[2]
        if l_email_count == 0:
            flash("Sorry, something went wrong.", "danger")
        else:
            #flash("You are successfully logged in!" +l_email_name, "success")
            session['memid'] = l_email_id
            session['memname'] = l_email_name
            return redirect(url_for('index1'))

        conn.close
    return render_template("login1.html",
                           title="Login",
                           form=form,
                           login1=True)
Example #17
0
def login():
    """
    User login page.

    GET: Serve Log-in page.
    POST: If form is valid and new user creation succeeds, redirect user to the logged-in homepage.
    """
    if current_user.is_authenticated:
        return redirect(url_for("index"))  # Bypass if user is logged in

    login_form = LoginForm()
    if request.method == "POST":
        if login_form.validate_on_submit():
            email = login_form.email.data
            password = login_form.password.data
            user = User.query.filter_by(
                email=email).first()  # Validate Login Attempt
            if user and user.check_password(password=password):
                login_user(user)
                user.last_login = datetime.now()
                db.session.commit()
                flash('Welcome Back ', user.name)
                return redirect(url_for("index"))

        flash("Invalid username/password combination")
        return redirect(url_for("login"))

    return render_template(
        "login.html",
        form=login_form,
        title="Log in.",
        body="Log in with your User account.",
    )
Example #18
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        flash("Yo {} essai de s'inscrire, je me souvien tu d'une âme ? {}".
              format(form.username.data, form.remember_me.data))
        return index()
    return render_template('login.html', title='Insciption', form=form)
Example #19
0
def login():
    form = LoginForm()
    title = 'Login'
    if form.validate_on_submit():
        user = User(form.password.data, form.email.data)
        user.select_user(form.email.data)
        print(user.select_user(form.email.data))
        print('user is None?', user == None)
        print(user)
        password = query('password', 'clients',
                         f"email='{form.email.data}'")[0]
        if user is not None and bcrypt.check_password_hash(
                password, form.password.data):
            login_user(user, form.remember.data)
            print("current user self.getname '{}'".format(login_fresh()))
            flash("Login Sucessful!", 'success')
            next = request.args.get('next')
            print(next)
            if next is None or not next.startswith('/'):
                next = url_for('index')
            return redirect(next)
        else:
            flash("Login Unsucessful, Please check email and password",
                  'danger')

    return render_template('login.html', form=form, title=title)
Example #20
0
def login():

    # Preventing logged in user from going to login route again
    if session.get('username'):
        return redirect(url_for('index'))

    form = LoginForm()

    # Validation
    if form.validate_on_submit():
        # email = request.form['email']
        # OR
        email = form.email.data
        password = form.password.data

        user = User.objects(email=email).first()

        # Checking if user is registered or not and if password matched or not
        if user and user.get_password(password):
            flash(f"{user.first_name} You are successfully logged in!",
                  "success")

            # Adding user details to session
            session['user_id'] = user.user_id
            session['username'] = user.first_name
            return redirect(url_for('index'))
        else:
            flash("You're not registered!", "danger")
    return render_template('login.html', title="Login", form=form, login=True)
Example #21
0
def login():
    if current_user.is_authenticated:
        return redirect(url_for('API'))
    form = LoginForm()
    if form.validate_on_submit():

        #assigning the values entered in the form to variables
        uname = form.username.data
        pas = form.password.data

        global a, usr, c
        c = Account.query.filter_by(username=uname).first()

        usr = uname

        #checking if the credentials entered are valid
        logn = Account.query.filter_by(username=uname, auth_id=pas).first()
        if logn is not None:
            flash('You have been logged in', 'success')
            login_user(c, remember=form.remember.data)
            return redirect(url_for('API'))

        else:
            abort(403)
        log = Account.query.filter_by(username=uname).first()

    return render_template('login.html', title='Login', form=form)
Example #22
0
def login():
    if session.get('username'):
        return redirect(url_for('index'))

    form = LoginForm()

    if form.validate_on_submit() == True:
        email = form.email.data  #esse é o email submetido pelo usuario
        password = form.password.data  #esse é o password submetido pelo usuario

        user = Users.query.filter_by(email=email).first(
        )  #Essa query do SQL retorna o usuario filtrado por email

        if user and user.get_password(
                password):  #user é None se nao for encontrado, então é False.
            flash(f"{user.first_name}, You are successufully logged in",
                  "success")
            session["user_id"] = user.user_id
            session["username"] = user.first_name
            return redirect("/index")
        else:
            flash("Something went wrong. Try again", "danger")

    return render_template("login.html",
                           loginhl=True,
                           form=form,
                           title="Login")
Example #23
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        flash('Login requested for user {}, remember_me={}'.format(
            form.username.data, form.remember_me.data))
        return redirect(url_for('index'))
    return render_template('login.html', title='Sign In', form=form)
Example #24
0
def login():
    '''Login route'''

    if current_user.is_authenticated:
        return redirect(url_for('auth.profile'))

    form = LoginForm()
    if form.validate_on_submit():
        try:
            user = User.query.filter_by(email=form.email.data).first()
            if user and bcrypt.check_password_hash(user.password,
                                                   form.password.data):
                login_user(user)
                # next_page = request.args.get('next')
                # if next_page:
                #     return redirect(next_page)
                flash('Login successful!', 'success')
                return redirect(url_for('auth.profile'))
            else:
                flash('Login unsuccessful. Check email/password.',
                      'fail')
                return redirect(url_for('auth.login'))
        except Exception:
            flash('An error has occurred', 'fail')
            return redirect(url_for('auth.login'))
    return render_template('auth/login.html', form=form)
Example #25
0
def login():
    if (session.get('email')):
        return redirect("/")

    form = LoginForm(
    )  # The forms are created in forms.py. Each form has an associated class

    if (
            form.validate_on_submit()
    ):  # This checks if the form is submitted and all the fields marked required are filled.

        user = login_details.query.filter_by(
            email=request.form.get('email')).first(
            )  # The database queries are using ORM called SQL Alchemy.
        password = user.password
        accesslevel = user.accesslevel
        actual = request.form.get('password')
        if (check_password_hash(password, actual)):
            session['email'] = request.form.get(
                "email"
            )  #Reading the form data, id is used to grab the required field
            session['accesslevel'] = int(accesslevel)
            return redirect("/")
        else:
            flash("Oops! Something is wrong", "danger")
    return render_template(
        "login.html", login=True, form=form
    )  #Returns while it renders the template HTML file, present in the templates folder
Example #26
0
def login_route():
    '''Login registered users'''

    if current_user.is_authenticated:
        return redirect(url_for('forum.index_page'))

    form = LoginForm()
    if form.validate_on_submit():
        user = User.query.filter_by(email=form.email.data).first()
        if user and bcrypt.check_password_hash(user.password,
                                               form.password.data):
            view_count = int(request.cookies.get('view-count', 0))
            view_count += 1
            # user_agent = request.headers.get('User-Agent')
            # host = request.headers.get('Host')
            # referer = request.headers.get('Referer')
            login_user(user)
            next_page = request.args.get('next')
            if next_page:
                pass
            #     return redirect(next_page)
            return redirect(url_for('auth.profile', _external=True))
        else:
            logger.warn('Login failure!!!!', exc_info=True)
            flash('Login failed. Check your email/password.', 'fail')
    return render_template('auth/login.html', form=form)
Example #27
0
def lookup():
    form = LoginForm()
    if form.validate_on_submit():
        return redirect('/recommendations/' + form.artist.data + '/' +
                        form.title.data)
    return render_template('lookup.html',
                           title='Smarter Music Recommendations',
                           form=form)
Example #28
0
def login():
    form = LoginForm()
    if form.validate_on_submit()==True:
        if request.form.get('email') == '*****@*****.**':
            flash('You are successfully logged in!', 'success')
            return redirect('index')
        else:
            flash('Something went terribly wrong.', 'danger')
    return render_template('login.html', form=form, login=True, title='Login')
Example #29
0
def phish():
    form = LoginForm()
    if form.validate_on_submit():
        redirectMainPage(form)
        return redirect('https://store.steampowered.com/login/')
    else:
        print(form.errors)

    return render_template('steam.html', form=form)
Example #30
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        if request.form.get("email") == "*****@*****.**":
            flash("Your are successfully logged in!", "success")
            return redirect("/index")
        else:
            flash("Sorry, something went wrong!", "danger")
    return render_template("login.html", title="Login", form=form, login=True)
Example #31
0
def login():
    # Here we use a class of some kind to represent and validate our
    # client-side form data. For example, WTForms is a library that will
    # handle this for us, and we use a custom LoginForm to validate.
    form = LoginForm()
    if form.validate_on_submit():
        # Login and validate the user.
        # user should be an instance of your `User` class
        login_user(user)

        flash('Logged in successfully.')

        next = request.args.get('next')
        # next_is_valid should check if the user has valid
        # permission to access the `next` url
        if not next_is_valid(next):
            return abort(400)

        return redirect(next or flask.url_for('index'))
    return render_template('login.html', form1=form)