コード例 #1
0
ファイル: fixtures.py プロジェクト: zemfrog/zemfrog-test
def user(app_ctx):
    model = get_object_model("user")
    first_name = generate_random_string(5)
    last_name = generate_random_string(5)
    name = first_name + " " + last_name
    email = first_name.lower() + "@" + last_name.lower() + ".com"
    password = generate_random_string(8)
    user = model(
        first_name=first_name,
        last_name=last_name,
        name=name,
        email=email,
        password=generate_password_hash(password),
        confirmed=True,
    )
    db_add(user)
    return {"email": email, "password": password}
コード例 #2
0
ファイル: views.py プロジェクト: Nadiantara/zemfrog
def register(**kwds):
    """
    Register an account.
    """

    email = kwds.get("username")
    passw = kwds.get("password")
    first_name = kwds.get("first_name")
    last_name = kwds.get("last_name")
    username = first_name + " " + last_name
    if email:
        user = User.query.filter_by(email=email).first()
        if not user:
            if username and passw:
                passw = generate_password_hash(passw)
                user = User(
                    first_name=first_name,
                    last_name=last_name,
                    name=username,
                    email=email,
                    password=passw,
                    register_at=datetime.utcnow(),
                )
                db_add(user)
                token = create_access_token(
                    email,
                    expires_delta=False,
                    user_claims={"token_registration": True},
                )
                link_confirm = url_for(".confirm_account", token=token)
                msg = get_mail_template("register.html", link_confirm=link_confirm)
                send_email.delay("Registration", html=msg, recipients=[email])
                reason = "Successful registration."
                status_code = 200
            else:
                reason = "Username and password are required."
                status_code = 403
        else:
            reason = "Email already exists."
            status_code = 403
    else:
        reason = "Email required."
        status_code = 403

    return {"reason": reason, "status_code": status_code}
コード例 #3
0
def add():
    """
    Add data.
    """

    json = request.get_json()
    found = ${name}.query.filter_by(**json).first()
    if not found:
        model = schema.load(json)
        db_add(db, model)
        status_code = 200
        reason = "Data berhasil ditambahkan."

    else:
        status_code = 403
        reason = "Data sudah ditemukan."

    return {
        "status_code": status_code,
        "reason": reason
    }