예제 #1
0
파일: main.py 프로젝트: yazetsepu/WOCAPI
def register():
    if request.method == 'POST':
        formDisplayname = request.form['displayname']
        formEmail = request.form['email']
        formFName = request.form['firstname']
        formLName = request.form['lastname']
        hashed_password = bcrypt.hashpw(
            request.form['password'].encode('utf-8'),
            bcrypt.gensalt()).decode('utf-8')
        newUser = Users(displayname=formDisplayname,
                        email=formEmail,
                        password=hashed_password,
                        firstName=formFName,
                        lastName=formLName,
                        activated=0,
                        dateOfBirth=None,
                        dateCreated=datetime.utcnow())

        # check if user exists
        checkUser = db.session.query(Users).filter(
            Users.email == formEmail).first()
        checkEmail = db.session.query(Users).filter(
            Users.displayname == formDisplayname).first()
        if checkUser or checkEmail:
            return jsonify(success=False, response="User already exists"), 409
        else:
            db.session.add(newUser)
            db.session.commit()
            login_user(newUser)
            return jsonify(success=True,
                           User=Users.build_user_dict(newUser)), 201
    else:
        return jsonify(success=False, response="Error has occured"), 500
예제 #2
0
파일: main.py 프로젝트: yazetsepu/WOCAPI
def login():
    email = request.form['email']
    password = request.form['password']
    user = db.session.query(Users).filter(
        Users.email == email).first()  # TODO: Change this to get
    passw = bcrypt.checkpw(password.encode('utf-8'),
                           user.password.encode('utf-8'))
    if user and passw:
        logged = login_user(user)
        ranks = [rank.rank for rank in user.rank]
        return jsonify(success=logged,
                       User=Users.build_user_dict(user),
                       Ranks=ranks), 201
    else:
        return jsonify(success=False, response="Wrong email or password"), 400