コード例 #1
0
def login():
	error_message = None
	if flask.request.method == 'POST':
		try:
			resp = flask.redirect(flask.url_for('home'))
			auth.login_user(resp)
			return resp
		except auth.UserLoginError as e:
			error_message = e.message

	return flask.render_template(
		'login.html',
		message=error_message
	)
コード例 #2
0
def login():
    login_form = form.LoginForm()
    if not login_form.validate_on_submit():
        return jsonify(errors=login_form.errors)

    email = login_form.email.data
    password = login_form.password.data

    try:
        user = User.query.filter_by(email=email, password=password).one()
    except exc.NoResultFound:
        return pages.index(login_form=login_form, bad_login=True)

    login_user(user)
    return fl.redirect(fl.url_for("index"))
コード例 #3
0
ファイル: root.py プロジェクト: rranshous/ourforum
    def login(self, username=None, password=None, action=None, endpoint=None, new_user=None):
        """ prompts the user to login, creates the user if it doesn't exist """

        # see if they are trying to login / create user
        if action or username or password:

            # if they didn't provide both username and password bounch them
            if not password or not username:
                error(403)
                add_flash("error", "Your missing something!")

            # if they gave us a username and a password then they are
            # trying to login
            if not login_user(username, password):
                # fail !
                error(403)
                add_flash("error", "Your login has failed!")

            else:

                # yay, success. push them to their next point
                if endpoint:
                    redirect(endpoint)

                # or home
                else:
                    redirect("/")

        return render("/login_front.html", username=username)
コード例 #4
0
 def check_hosted_domain_and_email(blueprint, token):
     user = userinfo()
     lguser = bpobj.sql.getuser(user['email'])
     if lguser is None:
         flash("Unauthorized user " + user['email'])
         if user["hd"] != blueprint.authorization_url_params["hd"]:
             print("HOSTED DOMAIN ERROR: " + user["hd"])
         requests.post("https://accounts.google.com/o/oauth2/revoke",
                       params={"token": token["access_token"]})
         session.clear()
         abort(403)
     else:
         flash("Logged in " + user['email'])
         if lguser.name is None:
             bpobj.sql.setname(lguser, user['name'])
         auth.login_user(lguser)
コード例 #5
0
def register():
    register_form = form.RegisterForm()
    if not register_form.validate_on_submit():
        return jsonify(errors=register_form.errors)

    name = register_form.name.data
    email = register_form.email.data
    password = register_form.password.data

    user = User.query.filter_by(email=email).first()
    if user is None:
        user = User(email=email, name=name, password=password)

        db.session.add(user)
        db.session.commit()

        login_user(user)
        return fl.redirect(fl.url_for("index"))

    return pages.index(bad_register=True)
コード例 #6
0
def login():
    username = request.json.get('username')
    password = request.json.get('password')

    if username is None or password is None:
        raise APIError('Missing username or password', status_code=409)

    user = login_user(mongo, username, password)
    if not user:
        raise APIError('Incorrect username/password', status_code=409)

    return jsonify(user)
コード例 #7
0
def login():
    if request.method == "POST":
        login_username = request.form.get('login_username', None)
        login_password = request.form.get('login_password', None)
        if login_password is None:
            flash('Password is required.', 'danger')
        if login_username is None:
            flash('Username or Email Address is require.', 'danger')
        response = login_user(login_username, login_password)
        if response['error']:
            flash(response['error'], 'danger')
        else:
            session['user'] = response['data']
            flash('You were successfully logged in', 'success')
            return redirect(url_for('index'))
    if session.get('user'):
        flash('Already logged in', 'info')
        return redirect(url_for('index'))
    return render_template('auth/login.html', meta_title="LogIn")
コード例 #8
0
ファイル: root.py プロジェクト: rranshous/imagecomment
    def login(self,username=None,password=None,action=None,endpoint=None,
                   new_user=None):
        """ prompts the user to login, creates the user if it doesn't exist """


        # see if they are trying to login / create user
        if action or username or password:

            # if they didn't provide a password than we need to
            # either create a new user or prompt them for pass if one exists
            if not password:
                user = m.User.get_by(handle=username)
                if user:
                    return render('/login_password.html',username=username)

                else:
                    return render('/login_new_user.html',username=username)

            # if we are creating a new user, do so
            if new_user == 'true':
                user = m.User(handle=username)
                user.password = password
                m.session.commit()

            # if they gave us a username and a password then they are
            # trying to login
            if not login_user(username,password):
                # fail !
                add_flash('error','Your login has failed!')

            else:

                # yay, success. push them to their next point
                if endpoint:
                    redirect(endpoint)

                # or home
                else:
                    redirect('/')


        return render('/login_front.html',username=username)
コード例 #9
0
def login():
    #handle sign in and flash if incorrect user/pass creds
    if request.method == "GET":
        return render_template("login.html")

    if request.method == "POST":
        username = request.form.get("username")
        password = request.form.get("password")
        user_data_response = auth.login_user(username, password)
        if user_data_response:
            user_data = {
                k: v
                for d in user_data_response for k, v in d.items()
            }
            print("Successfuly Signed in with user data:", user_data)
            session['user_data'] = user_data

            if 'Employee' in user_data['usertype']:
                redefined_userType = ''
                if user_data['usertype'] == "Employee":
                    employeeType = auth.get_typeEmployee(username)
                    redefined_userType = employeeType['employeetype'] + " Only"
                else:
                    employeeType = auth.get_typeEmployee(username)
                    print("employeeType:", employeeType)
                    redefined_userType = employeeType[
                        'employeetype'] + "-Customer"
                session['usertype'] = redefined_userType
            else:  # usertype is "User" or "Customer"
                session['usertype'] = user_data['usertype']

            return redirect(url_for('home'))
        else:
            flash("Invalid email or password")

        return redirect(url_for('login'))
コード例 #10
0
def handle_registration():
    print(request.form)
    reg_type = request.form.get("registration_type")  #type of registration
    print("registration type:", request.form.get("registration_type"))

    reg_types = {
        'User': '******',
        'Customer': 'regs/customer_only_registration.html',
        "Manager Only": 'regs/manager_only_registration.html'
    }

    first_name = request.form.get("first_name")
    last_name = request.form.get("last_name")

    username = request.form.get("username")

    password = request.form.get('password')
    password_confirm = request.form.get('password_confirm')
    if password != password_confirm:
        flash("Entered passwords do not match")
        return render_template(reg_types[reg_type], session=session)

    if reg_type == "User":
        status = "Pending"
        if auth.createNewUser(username, first_name, last_name, password,
                              reg_type, status):
            print("User created!")
    elif reg_type == "Customer":
        status = "Pending"
        creditCards = request.form.getlist("creditcard")
        if auth.createNewCustomer(username, first_name, last_name, password,
                                  reg_type, status, creditCards):
            print("Customer created!")
    elif reg_type == "Manager Only":
        usertype = "Employee"
        status = "Approved"
        company = request.form.get("company")
        address_street = request.form.get("address_street")
        address_city = request.form.get("address_city")
        address_state = request.form.get("address_state")
        address_zip = request.form.get("address_zip")

        if not view.checkAddressExists(address_street, address_city,
                                       address_state, address_zip):
            if auth.createNewManager(username,
                                     first_name,
                                     last_name,
                                     password,
                                     usertype,
                                     status,
                                     company,
                                     address_street,
                                     address_city,
                                     address_state,
                                     address_zip,
                                     theaterName="NULL"):
                print("Manager created!")
        else:
            flash("Address already exists")
            redirect(url_for('home'))
    else:
        usertype = "Employee, Customer"
        status = "Approved"
        company = request.form.get("company")
        address_street = request.form.get("address_street")
        address_city = request.form.get("address_city")
        address_state = request.form.get("address_state")
        address_zip = request.form.get("address_zip")

        creditCards = request.form.getlist("creditcard")

        if not view.checkAddressExists(address_street, address_city,
                                       address_state, address_zip):
            if auth.createNewManagerCustomer(username,
                                             first_name,
                                             last_name,
                                             password,
                                             usertype,
                                             status,
                                             company,
                                             address_street,
                                             address_city,
                                             address_state,
                                             address_zip,
                                             creditCards,
                                             theaterName="NULL"):
                print("Manager-Customer created!")
        else:
            flash("Address already exists")
            redirect(url_for('home'))

    # after registration works
    session['usertype'] = reg_type

    user_data_response = auth.login_user(username, password)
    if user_data_response:
        user_data = {k: v for d in user_data_response for k, v in d.items()}
        print("Successfuly Signed in with user data:", user_data)
        session['user_data'] = user_data

    return redirect(url_for('home'))
コード例 #11
0
ファイル: api.py プロジェクト: pkuchta/prepcase-gui
def login(host, username, password):
    """
    Tries to log in.
    """
    return auth.login_user(host, username, password)