Example #1
0
def user_create(username, password, email, first_name, uid, mobile, department,
                job, location, company, sex, uac, active, is_superuser,
                remarks, current_login_ip):
    # query = db.session.query(Users)
    print(email)
    newuser = Users()
    newuser.username = username
    # newuser.password = args['password']
    newuser.hash_password(password)
    newuser.email = email
    newuser.first_name = first_name
    newuser.uid = uid
    newuser.mobile = mobile
    newuser.department = department
    newuser.job = job
    newuser.location = location
    newuser.company = company
    newuser.sex = sex
    newuser.uac = uac
    # newuser.active = args['active']
    newuser.active = True
    # newuser.is_superuser = args['is_superuser']
    newuser.last_login_ip = current_login_ip
    newuser.current_login_ip = current_login_ip
    newuser.login_count = 0
    newuser.is_superuser = True
    newuser.remarks = remarks
    try:
        db.session.add(newuser)
        db.session.flush()
        db.session.commit()
        return newuser
    except Exception, e:
        raise Exception('User information creation failed')
Example #2
0
def user_create(options=None):
    query = db.session.query(Users)
    newuser = Users()
    newuser.username = options['username']
    # newuser.password = args['password']
    newuser.hash_password(options['password'])
    newuser.email = options['email']
    newuser.first_name = options['first_name']
    newuser.uid = options['uid']
    newuser.mobile = options['mobile']
    newuser.department = options['department']
    newuser.job = options['job']
    newuser.location = options['location']
    newuser.company = options['company']
    newuser.sex = options['sex']
    newuser.uac = options['uac']
    # newuser.active = args['active']
    newuser.active = True
    # newuser.is_superuser = args['is_superuser']
    newuser.last_login_ip = options['current_login_ip']
    newuser.current_login_ip = options['current_login_ip']
    newuser.login_count = 0
    newuser.is_superuser = True
    newuser.remarks = options['remarks']
    try:
        db.session.add(newuser)
        db.session.commit()
    except Exception, e:
        return False
Example #3
0
def seed_users():
    # seed users
    watson = Users()
    watson.username = '******'
    watson.password = HashHelper().generate_bcrypt_hash('098321')
    watson.email = '*****@*****.**'
    watson.firstname = 'Watson'
    watson.status = 1

    haruki = Users()
    haruki.username = '******'
    haruki.password = HashHelper().generate_bcrypt_hash('098321')
    haruki.email = '*****@*****.**'
    haruki.firstname = 'Haruki'
    haruki.status = 1

    adler = Users()
    adler.username = '******'
    adler.password = HashHelper().generate_bcrypt_hash('098321')
    adler.email = '*****@*****.**'
    adler.firstname = 'Adler'
    adler.status = 1

    brown = Users()
    brown.username = '******'
    brown.password = HashHelper().generate_bcrypt_hash('098321')
    brown.email = '*****@*****.**'
    brown.firstname = 'Brown'
    brown.status = 1

    # insert user
    for user in [watson, haruki, adler, brown]:
        try:
            db.session.add(user)
            db.session.commit()
            print('success seed new user: {}'.format(user.username))
        except Exception as e:
            print(e)
            db.session.rollback()
Example #4
0
def register():
    if request.method == 'GET':
        return render_template('home/login/register.html')
    elif request.method == 'POST':

        u = Users()
        u.name = request.form['username']
        u.pwd = u.md5password(request.form['password'])
        u.email = request.form['email']
        db.session.add(u)
        db.session.commit()

        return redirect(url_for('home.login'))
Example #5
0
def callback():
    # Redirect user to home page if already logged in.
    if current_user is not None and current_user.is_authenticated:
        return redirect(url_for('index'))
    if 'error' in request.args:
        if request.args.get('error') == 'access_denied':
            return 'You denied access.'
        return 'Error encountered.'
    if 'code' not in request.args and 'state' not in request.args:
        return redirect(url_for('login'))
    else:
        # Execution reaches here when user has successfully authenticated our app.
        google = get_google_auth(state=session['oauth_state'])
        try:
            token = google.fetch_token(Config.TOKEN_URI,
                                       client_secret=Config.CLIENT_SECRET,
                                       authorization_response=request.url)
        except HTTPError:
            return 'HTTPError occurred.'
        google = get_google_auth(token=token)
        resp = google.get(Config.USER_INFO)
        if resp.status_code == 200:
            user_data = resp.json()
            email = user_data['email']
            user = Users.query.filter_by(email=email).first()
            if user is None:
                user = Users()
                user.email = email
            user.name = user_data['name']
            user.tokens = json.dumps(token)
            user.avatar = user_data['picture']
            db.session.add(user)
            db.session.commit()
            login_user(user)
            return redirect(url_for('index'))
        return 'Could not fetch your information.'