Exemple #1
0
 def update_model(self, form, model):
     form.populate_obj(model)
     if form.password.data:
         model.password = bcrypt.generate_password_hash(
             form.password.data).decode('utf-8')
     self.session.add(model)
     self._on_model_change(form, model, False)
     self.session.commit()
     return redirect(url_for('home_admin'))
Exemple #2
0
 def create_model(self, form):
     model = self.model(form.username.data, form.password.data,
                        form.admin.data)
     form.populate_obj(model)
     model.password = bcrypt.generate_password_hash(
         form.password.data).decode('utf-8')
     self.session.add(model)
     self._on_model_change(form, model, True)
     self.session.commit()
     return redirect(url_for('home_admin'))
Exemple #3
0
    def create_model(self, form):

        model = self.model(
            login = form.login.data, password = form.password.data, \
            type=dict(form.type.choices).get(form.type.data)
        )
        form.populate_obj(model)
        model.password = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        self.session.add(model)
        self._on_model_change(form, model, True)
        self.session.commit()
        return redirect(url_for('home_admin'))
Exemple #4
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('home'))
    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(f'Your account has been created. You are now able to log in',
              'success')
        return redirect(url_for('login'))
    return render_template('register.html', title='Register', form=form)
Exemple #5
0
def account():
    form = UpdateAccountForm()
    if request.method == "POST" and form.validate():
        user = User.query.filter_by(email=form.email.data).first()

        if bcrypt.check_password_hash(current_user.password,
                                      form.passwordcheck.data):
            hashed_password = bcrypt.generate_password_hash(
                form.new_password.data).decode('utf-8')
            current_user.password = hashed_password
            current_user.username = form.username.data
            current_user.email = form.email.data
            user.password = hashed_password
            db.session.commit()
            flash('Success. You change your account', 'success')
        else:
            flash('Unsuccess. Please check correct of yuor input data',
                  'danger')
    elif request.method == 'GET':
        form.username.data = current_user.username
        form.email.data = current_user.email
    return render_template('account.html', title='Account', form=form)