Exemplo n.º 1
0
def index():
    ctime = time.time()
    form = LoginForm()
    get_login_cd(session, ctime)
    if form.validate_on_submit():
        if not check_login_cd(session, ctime):
            return redirect(url_for('login.index'))

        login_succ = False
        with sessionScope() as sessionDb:
            role = sessionDb.query(MAccount).get(form.account.data)
            _hash = passwdHash(form.password.data)
            if role and role.passwd == _hash:
                userLogin(role.uin, session)
                login_succ = True

        if login_succ:
            set_login_cd(session, ctime, succ=True)
            return redirect(url_for('game.index'))
        else:
            set_login_cd(session, ctime, succ=False)
            return redirect(url_for('login.index'))
    else:
        pass

    return render_template(
        'login.html',
        title='Login',
        form=form)
Exemplo n.º 2
0
def login():
    title = "Login"
    template_vars = {"title": title}

    form = LoginForm()

    if form.validate_on_submit():

        auth = firebase.auth()

        try:
            user_data = auth.sign_in_with_email_and_password(
                request.form["email"], request.form["password"])
        except:
            return render_template("login.html",
                                   vars=template_vars,
                                   form=form,
                                   is_error=True)

        ev_bool = db.child('User').child(user_data['localId']).child(
            'UserDetails').child('emailVerified').get().val()

        if (ev_bool == "true"):
            session['uid'] = user_data['localId']
            session['logged_in'] = True
            return redirect('/trips')
        else:
            return render_template("login.html",
                                   vars=template_vars,
                                   form=form,
                                   not_verified=True)

    return render_template("login.html", vars=template_vars, form=form)
Exemplo n.º 3
0
def login():
    forms = LoginForm()  #实例化forms
    if request.method == 'POST' and forms.validate_on_submit(
    ):  #提交的时候进行验证,如果数据能被所有验证函数接受,则返回true,否则返回false
        data = forms.data  #获取form数据信息(包含输入的用户名(account)和密码(pwd)等信息),这里的account和pwd是在forms.py里定义的
        admin = User.query.filter_by(
            name=data["account"]).first()  #查询表信息admin表里的用户名信息
        if admin == None:
            return jsonify({
                "descraption": u"username is wrong!! ",
                "errno": 1002,
                "errmsg": u"failed",
            })  #操作提示信息,会在前端显示
        elif admin != None and not admin.check_pwd(
                data["pwd"]):  #这里的check_pwd函数在models 下Admin模型下定义
            return jsonify({
                "descraption": u"password is wrong!! ",
                "errno": 1003,
                "errmsg": u"failed",
            })
        session['name'] = data['account']  #匹配成功,添加session
        db.session.commit()
        try:
            return redirect(request.args.get('next')
                            or url_for('indexpage'))  #重定向到下一页
        except Exception as e:
            logging.error(e)
            print(e)
        finally:
            session['name'] = data['account']  # 匹配成功,添加session
            return redirect(request.args.get('next')
                            or url_for('indexpage'))  # 重定向到下一页

    return render_template('login.html', form=forms)
Exemplo n.º 4
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        user_name = form.user_name.data
        user = LoginForm.validate_password(form, None)
        login_user(user)
        return redirect('/index/' + user_name)
    return render_template('login.html', form=form)
Exemplo n.º 5
0
def login():
    # pdb.set_trace()
    # login functionality is implemented here
    # for GET requests, display the login form. For POST requests attempt to authenticate
    form = LoginForm(csrf_enabled=True) # instantiate the LoginForm with anti-CSRF enabled

    next = request.args.get('next')

    if form.validate_on_submit():
        # and request.method=='POST':
        # Login and validate the user

        # fetch the data from the form fields
        username = form.username.data
        password = form.password.data
        remember_me = False # ** need to implement on form

        # store username and password in encrypted session???
        session['username'] = username
        session['password'] = password

        if 'remember_me' in request.form:
            remember_me = True

        # make a call to the wrapper
        my_company = current_app.config['COMPANY']
        netsuite_key = current_app.config['NETSUITE_API_KEY']  # Retrieve key from instance/config file
        json_obj = get_whoami(key=netsuite_key, un=username, pw=password, company=my_company)
        # flash("json_obj : {}".format(json_obj['response']['Read']['Project']))

        auth = False

        if 'response' in json_obj and 'Auth' in json_obj['response']:
            auth = True if (json_obj['response']['Auth']['@status'])=='0' else False
        else:
            flash('There seems to be a problem with the OpenAir or Netsuite Server:' + str(json_obj))
            return render_template('login.html', form=form)

        if auth:
            session['associate'] = '%s, %s' % (json_obj['response']['Whoami']['User']['addr']['Address']['last'], json_obj['response']['Whoami']['User']['addr']['Address']['first'])
            session['associate_title'] = '%s' % (json_obj['response']['Whoami']['User']['type'])
            session['associate_email'] = '%s' % (json_obj['response']['Whoami']['User']['addr']['Address']['email'])
            session['associate_id'] = '%s' % (json_obj['response']['Whoami']['User']['id'])
            session['logged_in'] = True

            # for session timeout to work we must set session permanent to True
            # session.permanent = True
            flash('Logged in successfully.')

            next = request.args.get('next')
            if next:
                session['currentpage'] = str(str(next).split('//')[-1:]).split('.')[:1]
            else:
                session['currentpage'] = 'projects'
            return redirect(next or url_for('mod_tempus_fugit.index'))

        flash('Sorry! Your password or username is invalid. Kindly try again.')
    return render_template('login.html', form=form)
Exemplo n.º 6
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        if (form.email.data == admin_user
                and form.password.data == admin_password):
            return render_template("success.html")
        else:
            return render_template("denied.html")
    return render_template("login.html", form=form)
Exemplo n.º 7
0
def index():
    """ Redirect to Login Form to enter a chat room """
    form = LoginForm()
    if form.validate_on_submit():
        session['name'] = form.name.data
        return redirect(url_for('.chat'))
    elif request.method == 'GET':
        form.name.data = session.get('name', '')
    return render_template('index.html', form=form)
Exemplo n.º 8
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        db_sess = db_session.create_session()
        user = db_sess.query(User).filter(User.email == form.email.data).first()
        if user and user.check_password(form.password.data):
            login_user(user, remember=form.remember_me.data)
            return redirect("/")
        return render_template('login.html',
                               message="Неправильный логин или пароль",
                               form=form)
    return render_template('login.html', title='Авторизация', form=form)
Exemplo n.º 9
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        user_name = form.username.data
        password = form.password.data
        user_model = UsersModel(db.get_connection())
        exists = user_model.exists(user_name, password)
        if (exists[0]):
            session['username'] = user_name
            session['user_id'] = exists[1]
        return redirect("/index")
    return render_template('login.html', title='Авторизация', form=form)
Exemplo n.º 10
0
def login(error=None
          ):  # Now there are User1, User2, User3 with the same passwords
    form = LoginForm()
    if form.validate_on_submit():
        user_name = form.username.data
        password = form.password.data
        user_model = UsersModel(db.get_connection())
        exists = user_model.exists(
            user_name,
            str(md5(bytes(password,
                          encoding='utf-8')).hexdigest()))  # encoding
        if exists[0]:
            session['username'] = user_name
            session['user_id'] = exists[1]
        else:
            return redirect('/login/notexist')
        return redirect("/index")
    return render_template('login.html', title='Login', form=form, error=error)
Exemplo n.º 11
0
Arquivo: main.py Projeto: Kaisa1906/--
def login(error=None):
    form = LoginForm()
    if form.validate_on_submit():
        user_name = form.username.data
        password = form.password.data
        user_model = UsersModel(db.get_connection())
        exists = user_model.exists(user_name, password)
        if exists[0]:
            session['username'] = user_name
            session['user_id'] = exists[1]
        else:
            return redirect('/login/notexist')
        return redirect("/")
    return render_template('login.html',
                           title='Login',
                           text="Авторизоваться",
                           form=form,
                           error=error)
Exemplo n.º 12
0
def init_root():
    print 'login uin',session.get('uin',None)
    ctime = time.time()
    form = LoginForm()
    get_login_cd(session, ctime)

    if form.validate_on_submit():
        if not check_login_cd(session, ctime):
            return redirect(url_for('login.index'))
        if form.account.data != u'root':
            return render_template('404.html')
        else:
            pass

        with sessionScope() as sessionDb:
            role = sessionDb.query(MAccount).get(form.account.data)
            _hash = passwdHash(form.password.data)
            if not role:
                role_root = MAccount(
                    uin=u'root',
                    passwd=_hash,
                    group=u'root',
                    registration_ip=unicode(request.remote_addr),
                )
                sessionDb.add(role_root)
                userLogin(role_root.uin, session)
                return redirect(url_for('edit.index'))
            else:
                if role.passwd == _hash:
                    set_login_cd(session, ctime, succ=True)
                    userLogin(role.uin, session)
                    return redirect(url_for('edit.index'))
                else:
                    set_login_cd(session, ctime, succ=False)
                    return redirect(url_for('login.init_root'))

        return render_template('404.html')
    else:
        pass

    return render_template(
        'login.html',
        title='InitRoot',
        form=form)
Exemplo n.º 13
0
def login():
    method = request.method
    if current_user.is_authenticated:
        return redirect(url_for('index'))
    form = LoginForm()
    if form.validate_on_submit():
        cursor = connection.cursor()
        cursor.execute(
            f'SELECT id, username, name, password_hash FROM users where users.username = (%s)',
            (form.username.data, ))
        user_data = cursor.fetchone()
        user = User(user_data[0], user_data[1], user_data[2])
        user.password_hash = user_data[3]
        if user is None or not user.check_password(form.password.data):
            flash('Invalid username or password')
            return redirect(url_for('login'))
        login_user(user, remember=form.remember_me.data)
        return redirect(f'/user/{user.id}')
    return render_template('index.html', title='Sign In', form=form)
Exemplo n.º 14
0
def login(error=None):
    form = LoginForm()
    if form.validate_on_submit(
    ):  # checking if a login form fields are all valid
        user_name = form.username.data
        password = form.password.data
        user_model = UsersModel(db.get_connection())
        exists = user_model.exists(
            user_name, str(md5(bytes(password, encoding='utf-8')).hexdigest())
        )  # checking if a user with login user_name and password hash md5(password)
        if exists[0]:
            session['username'] = user_name
            session['user_id'] = exists[1]
        else:
            return redirect(
                '/login/notexist'
            )  # if password and login are invalid redirect to /login/
        return redirect("/index")
    return render_template('login.html',
                           title='Авторизация',
                           form=form,
                           error=error)
Exemplo n.º 15
0
def login():
    global flag_perm
    form = LoginForm()
    if form.validate_on_submit():
        user_name = form.username.data
        password = form.password.data
        perm = form.remember_me.data
        user_model = UsersModel(db.get_connection())
        exists = user_model.exists(user_name, password)
        if exists[0]:
            session['username'] = user_name
            session['user_id'] = exists[1]
            if perm:
                session.permanent = True
                flag_perm = True
            else:
                session.permanent = False
                flag_perm = True
            return redirect("/index")
        else:
            return render_template('login.html', form=form, error=1)
    return render_template('login.html', title='Авторизация', form=form)
Exemplo n.º 16
0
def login():
    # Форма входа
    form = LoginForm()

    # POST
    if form.validate_on_submit():
        # Создание сессии подключения к БД
        session = db_session.create_session()

        # Проверка существования пользователя и правильности введённого пароля
        user = session.query(Users).filter(
            Users.login == form.login.data).first()
        if user and user.check_hashed_password(form.password.data):
            # Логин пользователя
            login_user(user, remember=form.remember_me.data)
            # Перенаправление на главную страницу
            return redirect('/')
        # Если данные не верны, сообщение об ошибке
        return render_template('login.html',
                               message='Неправильный логин или пароль!',
                               form=form)

    return render_template('login.html', form=form)
Exemplo n.º 17
0
def login():
    form = LoginForm()
    already = False
    if 'username' in session:
        return redirect("/logout")
    if form.validate_on_submit():
        user_name = form.username.data
        password = form.password.data
        user_model = UsersModel(db.get_connection())
        exists = user_model.exists(user_name, password)
        already = False
        if (exists[0]):
            alredy = True
            session['username'] = user_name
            session['user_id'] = exists[1]
            if UsersModel(db.get_connection()).get(
                    session['user_id'])[6] == 'teacher':
                return redirect("/index_teacher")
            return redirect("/index")
    return render_template('login.html',
                           title='Авторизация',
                           form=form,
                           already=already)
Exemplo n.º 18
0
def login():
    form = LoginForm()
    if form.validate_on_submit(
    ) and form.username.data == "test" and form.password.data == "test":
        return redirect('/success')
    return render_template('login.html', title='Авторизация', form=form)
Exemplo n.º 19
0
def login():
    form = LoginForm()
    if form.validate_on_submit():
        return redirect('/index')
    return render_template('login.html', title='Авторизация', form=form)