Example #1
0
def auth_register():
    username = request.form.get('username')
    email = request.form.get('email')
    password = request.form.get('password')

    user_username = Users.query.filter_by(username=username).first()
    user_email = Users.query.filter_by(email=email).first()

    if user_username or user_email:
        flash("Username/email already exists", "info")
        return redirect(url_for('auth.signup'))

    elif (len(username) or len(email)) < 5 or (len(password)) < 6:
        flash("Username/email/password min 6 Characters", "info")
        return redirect(url_for('auth.signup'))

    user = Users()
    user.username = username
    user.email = email
    user.password = bcrypt.generate_password_hash(password).decode("utf-8")

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

    languages = Languages.query.all()
    for lang in languages:
        user_watchlist = Watchlist()
        user_watchlist.user_id = user.id
        user_watchlist.language_id = lang.id
        db.session.add(user_watchlist)
    db.session.commit()

    flash("Successfuly registered! Please Log in", "info")
    return redirect(url_for('users.profile', id=user.id))
Example #2
0
def user_update(id):
    first_name = request.form.get('first_name')
    last_name = request.form.get('last_name')
    username = request.form.get('username')
    email = request.form.get('email')
    password = request.form.get('password')
    phone = request.form.get('phone')

    my_user = Users()
    my_user.username = username
    my_user.email = email
    my_user.password = bcrypt.generate_password_hash(password).decode("utf-8")
    my_user.first_name = first_name
    my_user.last_name = last_name
    my_user.phone = phone

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

    return render_template('user_show.html', id=my_user.id)
Example #3
0
def seed_db():
    from models.User import Users
    from models.Language import Languages
    from models.Watchlist import Watchlist

    faker = Faker()
    users = []
    languages = []
    watchlists = []
    colours = [
        'Red', 'White', 'Yellow', 'Green', 'Gold', 'Silver', 'Purple', 'Teal'
    ]
    list_FNames = [
        'Adam', 'Eve', 'Jada', 'Ryan', 'Alex', 'Myra', 'Amar', 'Jason',
        'Frankie'
    ]
    list_LNames = [
        'Gold', 'Silver', 'Richardson', 'Teller', 'Rickers', 'Sarr', 'Farah',
        'Reed', 'Port'
    ]
    list_languages = [{
        "python": {
            "2020-09-27": 2270.5,
            "2020-09-28": 2271.0,
            "2020-09-29": 2315.0,
            "2020-09-30": 2282.5,
            "2020-10-01": 2345.0,
            "2020-10-02": 2323.5,
            "2021-03-14": 3352.0
        },
        "javascript": {
            "2020-09-27": 1907.0,
            "2020-09-28": 1896.0,
            "2020-09-29": 1947.5,
            "2020-09-30": 1918.0,
            "2020-10-01": 1969.0,
            "2020-10-02": 1942.0,
            "2021-03-14": 2867.5
        },
        "html": {
            "2020-09-27": 1134.0,
            "2020-09-28": 1152.5,
            "2020-09-29": 1202.0,
            "2020-09-30": 1172.5,
            "2020-10-01": 1209.5,
            "2020-10-02": 1196.0,
            "2021-03-14": 1730.5
        },
        "css": {
            "2020-09-27": 899.5,
            "2020-09-28": 906.0,
            "2020-09-29": 928.5,
            "2020-09-30": 923.0,
            "2020-10-01": 952.0,
            "2020-10-02": 947.0,
            "2021-03-14": 1260.5
        },
        "java": {
            "2020-09-27": 2356.0,
            "2020-09-28": 2346.0,
            "2020-09-29": 2393.5,
            "2020-09-30": 2365.0,
            "2020-10-01": 2434.0,
            "2020-10-02": 2400.5,
            "2021-03-14": 3465.5
        },
        "swift": {
            "2020-09-27": 212.0,
            "2020-09-28": 218.5,
            "2020-09-29": 213.5,
            "2020-09-30": 213.5,
            "2020-10-01": 215.5,
            "2020-10-02": 211.5,
            "2021-03-14": 357.5
        }
    }]

    for i in range(9):
        user = Users()
        user.first_name = random.choice(list_FNames)
        user.last_name = random.choice(list_LNames)
        user.username = f"{user.first_name}{i}"
        user.email = f"{user.first_name}{i}@test.com"
        user.password = bcrypt.generate_password_hash(f"password{i}").decode(
            "utf-8")
        user.phone = f"043226447{i}"

        db.session.add(user)
        users.append(user)

    db.session.commit()

    for lang in list_languages:
        for i in lang:
            language = Languages()
            language.name = i
            language.details = lang[i]
            db.session.add(language)
            languages.append(language)

    db.session.commit()

    for person in users:
        for lang in languages:
            user_watchlist = Watchlist()
            user_watchlist.user_id = person.id
            user_watchlist.language_id = lang.id
            db.session.add(user_watchlist)
    db.session.commit()

    print("Tables seeded")