Ejemplo n.º 1
0
def signup():
    req_data = request.get_json()
    res = {'status': '', 'data': {}, 'error': {}}
    email = req_data['email']
    name = req_data['name']
    password = req_data['password']
    secret_word = req_data['secret_word']
    if not re.match(email_regexp, email):
        res['status'] = app_constants.notok_status
        res['error'] = 'Email pattern not ok !'
        return api_response(res, 400)
    elif validate_password(
            password) != True:  #poate ar trebui sa scriu altfel asta :)
        res['status'] = app_constants.notok_status
        res['error'] = validate_password(password)
        return api_response(res, 400)
    elif secret_word != current_app.config['SECRET_WORD_REGISTRATION']:
        res['status'] = app_constants.notok_status
        res['error'] = 'Wrong secret word !'
        return api_response(res, 400)
    else:
        user = UserModel.query.filter_by(email=email).first()
        if not user:
            new_user = UserModel(name=name, email=email, password=password)
            role = RoleModel.query.get(app_constants.ROLE_USER)
            new_user.roles.append(role)
            new_user.set_password(password)
            db.session.add(new_user)
            db.session.commit()
            res['status'] = app_constants.ok_status
            return api_response(res)
        else:
            res['status'] = app_constants.notok_status
            res['error'] = 'User already exist !'
            return api_response(res, 400)
Ejemplo n.º 2
0
def signUp():
    name = request.form['name']
    email = request.form['email']
    password = request.form['password']

    if name and email and password:
        model = UserModel()
        hasUser = model.checkUser(name=name, email=email)

        if hasUser:
            model.createUser(name=name, email=email, password=password)
            session['email'] = email
            return redirect(url_for("courses"))
    else:
        return render_template("signup.html")
Ejemplo n.º 3
0
def signUp():
    name = request.form['name']
    email = request.form['email']
    password = request.form['password']

    if name and email and password:
        model = UserModel()
        hasUser = model.checkUser(name=name, email=email)

        if hasUser:
            model.createUser(name=name, email=email, password=password)
            session['email'] = email
            return redirect(url_for("courses"))
    else:
        return render_template("signup.html")
Ejemplo n.º 4
0
def login():
    email = request.form['email']
    password = request.form['password']
    model = UserModel()

    if email and password:
        result = model.checkAndGetUserInfo(email=email, password=password)

        if result:
            session['userId'] = result['user_id']
            session['email'] = email
            session['role'] = result['role']

            return redirect(url_for("courses"))

    return render_template("login.html")
Ejemplo n.º 5
0
def login():
    email = request.form['email']
    password = request.form['password']
    model = UserModel()

    if email and password:
        result = model.checkAndGetUserInfo(email=email, password=password)

        if result:
            session['userId'] = result['user_id']
            session['email'] = email
            session['role'] = result['role']

            return redirect(url_for("courses"))

    return render_template("login.html")
Ejemplo n.º 6
0
    def put(self):
        parser = reqparse.RequestParser()
        parser.add_argument('login', type=str)
        parser.add_argument('password', type=str)
        parser.add_argument('email', type=str)
        args = parser.parse_args()

        current_user = get_jwt_identity()
        if current_user == 'chemist':
            try:
                pw_hash = bcrypt.generate_password_hash(
                    args['password']).decode('utf-8')
                user = UserModel(name=args['login'],
                                 email=args['email'],
                                 password=pw_hash)
                db.session.add(user)
                db.session.commit()
            except SQLAlchemyError:
                return make_response(
                    jsonify(message='Problem adding user to the database',
                            success=False))

            return make_response(jsonify(success=True))
        else:
            return make_response(
                jsonify(message='Access denied', success=False), 401)
Ejemplo n.º 7
0
    def post(self):
        success_message = {"message": "Registered Successfully"}
        error_message = {"message": "Error creating User"}

        #lamdas
        wrapper = Wrapper(parser)
        register_db_response = UserModel.register(wrapper.username, wrapper.password)
        if(register_db_response == 200):
            return success_message, register_db_response
        else:
            return error_message, register_db_response
Ejemplo n.º 8
0
def forgot_password_process(p_token):
    res = {'status': app_constants.ok_status, 'data': {}, 'error': {}}
    req_data = request.get_json()
    new_password = req_data['password']
    user = UserModel.verify_reset_password(p_token)
    if not user:
        res['status'] = app_constants.notok_status
        res['error'] = 'Token is incorrect !'
        return api_response(res, 401)
    user.set_password(new_password)
    db.session.commit()
    res['status'] = app_constants.ok_status
    return api_response(res, 200)