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))
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)
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")