コード例 #1
0
ファイル: FLASKDB.py プロジェクト: nick-gerrard/HomePageFlask
def change_user_password(user, password):
    check = input(
        f"Are you sure you want to change {user.username}'s password to {password}? "
    )
    if check == "YES":
        hashed_pw = bcrypt.generate_password_hash(password).decode('utf-8')
        user.password = hashed_pw
        db.session.commit()
        print(f"Success! {user.username}'s password has been updated")
    else:
        print("Aborting password change")
コード例 #2
0
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user = User(username=form.username.data,
                    email=form.email.data,
                    password=hashed_password)
        db.session.add(user)
        db.session.commit()
        flash('Welcome To Stock Watch you can now log in', 'success')
        return redirect(url_for('login'))
    return render_template('register.html', title='Register', form=form)
コード例 #3
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    form = RegistrationForm()
    quote_tuple = generate_quote(os.getcwd() + "/homepage/static/quotes.json")
    if form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(form.password.data).decode('utf-8')
        user = User(username=form.username.data, email=form.email.data, 
                    password=hashed_password, zip_code=form.zip_code.data)
        db.session.add(user)
        db.session.commit()
        flash('Your account has been created - you can now log in.', 'success')
        return redirect(url_for('users.login'))
    return render_template('register.html', title="Register", form=form, quote_tuple=quote_tuple)
コード例 #4
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    register_form = RegistrationForm()
    if register_form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(
            register_form.password.data).decode('utf-8')
        user = User(username=register_form.username.data,
                    email=register_form.email.data,
                    password=hashed_password)
        user.roles.append(Role.query[0])
        db.session.add(user)
        db.session.commit()

        portfolio = Portfolio(name='Default',
                              numberPositions=2,
                              user_id=user.id)

        db.session.add(portfolio)
        db.session.commit()

        position1 = Position(port_id=portfolio.id,
                             name='iShares NASDAQ 100 UCITS ETF',
                             ticker='SXRV.DE',
                             percent=50,
                             currency='EUR')
        position2 = Position(port_id=portfolio.id,
                             name='iShares Core MSCI World UCITS ETF',
                             ticker='EUNL.DE',
                             percent=50,
                             currency='EUR')

        db.session.add(position1)
        db.session.add(position2)
        db.session.commit()

        sendActivateEMail(user)
        flash(
            f'Account created for {register_form.email.data}! Plz check your mails for activating your account.',
            'success')
        return redirect(url_for('users.login'))

    return render_template('register.html',
                           register_form=register_form,
                           title='Pandalike Investing - Register')
コード例 #5
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if user is None:
        flash('That is an invalid or expired token', 'warning')
        return redirect(url_for('users.reset_request'))
    quote_tuple = generate_quote(os.getcwd() + "/homepage/static/quotes.json")

    form = ResetPasswordForm()
    if form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(form.password.data).decode('utf-8')
        user.password = hashed_password
        db.session.commit()
        flash('Your password has been successfully reset.', 'success')
        return redirect(url_for('users.login'))

    return render_template("reset_token.html", quote_tuple=quote_tuple, title="Reset Password", form=form)
コード例 #6
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    user = User.verify_reset_token(token)
    if user is None:
        flash('That is an invalid or expired token', 'warning')
        return redirect(url_for('users.reset_request'))
    form = ResetPasswordForm()

    if form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user.password = hashed_password
        db.session.commit()
        flash(f'The password has been reset! You are now able to login',
              'success')
        return redirect(url_for('users.login'))
    return render_template('reset_token.html',
                           title='Pandalike Investing - Reset Password',
                           form=form)
コード例 #7
0
from homepage.models import User, Post, Role, UserRoles

#Create User Roles
role_default = Role( id = 0, name = 'default')
role_member = Role( id = 1, name = 'member')
role_admin  = Role( id = 2, name = 'admin')
db.session.add(role_default)
db.session.add(role_member)
db.session.add(role_admin)

#Create the admin User

admin_mail = app.config['ADMIN_MAIL']
admin_name = app.config['ADMIN_NAME']
hashed_password = bcrypt.generate_password_hash(app.config['ADMIN_PASSWORD']).decode('utf-8')

user_admin = User(username = admin_name, email=admin_mail,password=hashed_password, activated=True)
user_admin2 = User(username = admin_name + '2', email='2'+admin_mail,password=hashed_password, activated=True)
# user_admin3 = User(username = admin_name + '3', email='3'+admin_mail,password=hashed_password, activated=True)
# user_admin4 = User(username = admin_name + '4', email='4'+admin_mail,password=hashed_password, activated=True)
# user_admin5 = User(username = admin_name + '5', email='5'+admin_mail,password=hashed_password, activated=True)


user_admin.roles.append(Role.query[2])
user_admin2.roles.append(Role.query[0])
# user_admin3.roles.append(Role.query[0])
# user_admin4.roles.append(Role.query[0])
# user_admin5.roles.append(Role.query[0])

db.session.add(user_admin)