Exemple #1
0
def create_user():
    with app.app_context(): # строка после которой можно работать с базой данных
        user_email = input('Your email address: ')

        if User.query.filter(User.user_email == user_email).count():
            print('A user with the same name already exists.')
            sys.exit(0)

        password = getpass('Password: '******'Repeat password: '******'t match.")
            sys.exit(0)

        date_now = datetime.now()
        date_reg = date_now.strftime('%d.%m.%Y')
        picture_user = input('Write the name of the avatar:')
        username = input('Write a nickname:')

        new_user = User(user_email=user_email, role='admin', date_reg=date_reg, picture_user=picture_user, username=username)
        new_user.set_password(password)

        db.session.add(new_user)
        db.session.commit()
        print('User with id={} added'.format(new_user.id))
def register():
    if current_user.is_authenticated:
        return redirect(get_redirect_target())

    form = RegistrationForm()
    title = 'Регистрация'

    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались!')
        return redirect(url_for('user.login'))
    elif form.errors:
        for field, errors in form.errors.items():
            for error in errors:
                flash('Ошибка в поле "{}": - {}'.format(
                    getattr(form, field).label.text, error))
        return redirect(get_redirect_target())
    return render_template('user/registration.html',
                           page_title=title,
                           form=form)
    def test_get_by_id(self):
        """Get user by ID."""
        user = User('foo', '*****@*****.**')
        user.save()

        retrieved = User.get_by_id(user.id)
        assert retrieved == user
    def test_get_by_id(self):
        """Get user by ID."""
        user = User('foo', '*****@*****.**')
        user.save()

        retrieved = User.get_by_id(user.id)
        assert retrieved == user
def register():
    """Register new user."""
    form = RegisterForm(request.form, csrf_enabled=False)
    if form.validate_on_submit():
        User.create(username=form.username.data, email=form.email.data, password=form.password.data, active=True)
        flash('Thank you for registering. You can now log in.', 'success')
        return redirect(url_for('public.home'))
    else:
        flash_errors(form)
    return render_template('public/register.html', form=form)
Exemple #6
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        news_user = User(username=form.username.data, email=form.email.data, role='user')
        news_user.set_password(form.password.data)
        db.session.add(news_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались!')
        return redirect(url_for('user.login'))
    flash('Пожалуйста, исправьте ошибки в форме')
    return redirect(url_for('user.register'))
Exemple #7
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('index'))
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(username=form.username.data, email=form.email.data)
        user.set_password(form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('Congratulations, you are now a registered user!')
        return redirect(url_for('user.login'))
    return render_template('user/register.jinja', title='Register', form=form)
Exemple #8
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('home.index'))
    title = 'Регистрация'
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(username=form.username.data, email=form.email.data, role='user')
        user.set_password(form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('Вы успешно зарегистрировались!')
        return redirect(url_for('user.login'))
    return render_template('user/register.html', page_title=title, form=form)
Exemple #9
0
def register():
    """Register new user."""
    form = RegisterForm(request.form, csrf_enabled=False)
    if form.validate_on_submit():
        User.create(username=form.username.data,
                    email=form.email.data,
                    password=form.password.data,
                    active=True)
        flash('Thank you for registering. You can now log in.', 'success')
        return redirect(url_for('public.home'))
    else:
        flash_errors(form)
    return render_template('public/register.html', form=form)
Exemple #10
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data, email=form.email.data, role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались!')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash(f'Ошибка в поле {getattr(form, field).label.text}: {error}')
        return redirect(url_for('user.register'))
Exemple #11
0
def edit(id):
    form1 = EditUser()
    form2 = ChangePassword(prefix="pass")
    if id > 0:
        user = User.query.filter_by(id=id).first()
        if request.method == 'GET':
            form1.id.data = user.id
            form1.username.data = user.username
            form1.email.data = user.email
            form1.role.data = user.role
            form2.id.data = user.id
        if request.method == 'POST':
            if form1.validate_on_submit():
                user.username = form1.username.data
                user.email = form1.email.data
                user.role = form1.role.data
                text = "Пользователь {} изменен".format(user.username)
            elif form2.validate_on_submit():
                user.set_password(form2.password.data)
                text = "Пароль пользователя {} изменен".format(user.username)
            else:
                return jsonify(status='error', text='{}'.format(form1.errors))
            try:
                db.session.commit()
            except IntegrityError:
                text = "Ошибка сохранения пользователя {}".format(
                    user.username)
                return jsonify(status='error', text=text)
            return jsonify(status='ok', text=text)
    else:
        if form1.validate_on_submit():
            new_user = User(username=form1.username.data,
                            email=form1.email.data,
                            role=form1.role.data)
            new_pass = random_password()
            new_user.set_password(new_pass)
            db.session.add(new_user)
            try:
                db.session.commit()
            except IntegrityError:
                text = "Ошибка сохранения пользователя {}".format(
                    form1.username.data)
                return jsonify(status='error', text=text)
            text = "Пользователь {} добавлен. Пароль {}".format(
                form1.username.data, new_pass)
            return jsonify(status='ok', text=text)
    html = render_template('user/edit.html', form1=form1, form2=form2)
    return jsonify(html=html)
 def test_check_password(self):
     """Check password."""
     user = User.create(username='******',
                        email='*****@*****.**',
                        password='******')
     assert user.check_password('foobarbaz123') is True
     assert user.check_password('barfoobaz') is False
Exemple #13
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role="user")
        new_user.set_password(form.password.data)
        session.add(new_user)
        session.commit()
        flash('You registered successfuly!')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash(f'Error in "{getattr(form, field).label.text}": {error}')
        return redirect(url_for('user.register'))
Exemple #14
0
def add_user():
    form = AddUser()
    title = 'Редактор'
    if form.validate_on_submit():
        user = User.query.filter_by(username=form.username.data).first()
        if user is not None:
            flash('Пользователь с таким логином уже существует')
            return redirect(url_for('admin.add_user'))
        unit = Structure.query.filter_by(name=form.work_unit.data).first()
        if unit is None:
            flash('Подразделения с указанными Вами именем не существует')
            return redirect(url_for('admin.add_user'))
        new_user = User(username=form.username.data,
                        first_name=form.first_name.data,
                        last_name=form.last_name.data,
                        password=form.password.data,
                        privilege=form.admin.data)
        new_user_info = UserInfo(info_owner=new_user.username,
                                 position=form.position.data,
                                 work_unit=unit.id,
                                 email=form.email.data,
                                 internal_phone=form.internal_phone.data,
                                 mobil_phone=form.mobil_phone.data,
                                 corp_messenger=form.corp_messenger.data,
                                 office=form.office.data,
                                 work_before=form.work_before.data,
                                 first_day=form.first_day.data,
                                 birthday=form.birthday.data)
        db.session.add(new_user)
        db.session.add(new_user_info)
        db.session.commit()
        flash('Новый пользователь добавлен')
        return redirect(url_for('admin.add_user'))
    return render_template('admin/add_user.html', page_title=title, form=form)
Exemple #15
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        news_user = User(username=form.username.data,
                         email=form.email.data,
                         role='user')
        news_user.set_password(form.password.data)
        db.session.add(news_user)
        db.session.commit()
        flash('Registration successful')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash('Error in field {}: {}'.format(
                    getattr(form, field).label.text, error))
    return redirect(url_for('user.register'))
Exemple #16
0
def process_signup():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role="user")
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash("Account created!")
        return redirect(url_for("user.login"))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash('Error in "{}": {}'.format(
                    getattr(form, field).label.text, error))
        return redirect(url_for("user.register"))
Exemple #17
0
def register_admin(username):
    username = User.query.filter_by(username=username).first_or_404()
    title = 'Регистрация нового админа'
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(username=form.username.data,
                    email=form.email.data,
                    role='admin')
        user.set_password(form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('Новый админ успешно зарегистрирован!')
        return redirect(
            url_for('admin.users_management', username=username.username))
    return render_template('admin/register_admin.html',
                           page_title=title,
                           form=form)
Exemple #18
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role="user")
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash("Вы успешно Зарегестрировались!")
        return redirect(url_for("user.login"))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash("Ошибка в поле '{}': - {}".format(
                    getattr(form, field).label.text, error))
        return redirect(url_for("user.register"))
Exemple #19
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data, role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались!')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash('Ошибка в поле "{}": - {}'.format(
                    getattr(form, field).label.text, error))
        return redirect(url_for('user.register'))

    flash('Пожалуйста, исправьте ошибки в форме')
    return redirect(url_for('user.register'))
Exemple #20
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно заегистрировались!')
        return redirect(url_for('user.login'))
    else:  # вывод ошибок
        for field, errors in form.errors.items(
        ):  # field - название поля, errors - список ошибок
            for error in errors:
                flash('Ошибка в поле "{}": - {}'.format(
                    getattr(form, field).label.text, error))
        return redirect(url_for('user.register'))
def register():
    """Регистрация нового пользователя."""
    title = 'Регистрация'
    if current_user.is_authenticated:
        return redirect(url_for('user.login'))
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(username=form.username.data, email=form.email.data)
        user.set_password(form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('You are now a registered user!', 'success')
        return redirect(url_for('user.login'))
    template_path = os.path.join('user', 'register.html')
    return render_template(
        template_path,
        title=title,
        form=form,
    )
Exemple #22
0
def process_registration():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались, войдите под своим именем.')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash(
                    f"Ошибка в поле '{getattr(form, field).label.text}': - {error}"
                )
        return redirect(url_for('user.registration'))
    flash('Пожалуйста, исправьте ошибки в форме')
    return redirect(url_for('user.registration'))
Exemple #23
0
def confirm_register(token):
    user = User.verify_token(token)
    if not user:
        flash('Ошибка. Обратитесь к администратору.')
        return redirect(url_for('main.index'))
    user.limit_access = False
    db.session.commit()
    if not current_user.is_authenticated:
        login_user(user)
    flash('Регистрация подтверждена.')
    return redirect(url_for('main.index'))
Exemple #24
0
def process_reg():
    form = Reg_form()
    if form.validate_on_submit():

        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role='user',
                        is_active=True)
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегались')
        return redirect(url_for('users.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash('ошибка в поле"{}":{}'.format(
                    getattr(form, field).label.text, error))
                redirect(url_for('users.reg'))
    flash('Форма невалидна, исправте')
    return redirect(url_for('users.reg'))
Exemple #25
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались!')
        login_user(new_user)
        flash('Вы успешно вошли на сайт')
        print(current_user.is_authenticated)
        return redirect(url_for('advert.index'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash(
                    f'Ошибка в поле "{getattr(form, field).label.text}": - {error}'
                )
        return redirect(url_for('user.register'))
Exemple #26
0
def process_reg():
    form = RegistrationForm()
    if form.validate_on_submit():
        new_user = User(username=form.username.data,
                        email=form.email.data,
                        first_name=form.first_name.data,
                        last_name=form.last_name.data,
                        gender=form.gender.data,
                        birthday=form.birthday.data,
                        role='user')
        new_user.set_password(form.password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('Вы успешно зарегистрировались')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items(
        ):  # field - название поля(username, email), errors - список строк с ошибками
            for error in errors:
                flash('Ошибка в поле {}: {}'.format(
                    getattr(form, field).label.text, error))
        return redirect(url_for('user.register'))
Exemple #27
0
def process_reg():
    form = RegisterForm()
    if form.validate_on_submit():
        date_now = datetime.now()
        date_reg = date_now.strftime('%d.%m.%Y')
        new_user = User(username=form.username.data,
                        user_email=form.user_email.data,
                        user_password=form.user_password.data,
                        role='user',
                        date_reg=date_reg)
        new_user.set_password(form.user_password.data)
        db.session.add(new_user)
        db.session.commit()
        flash('You have successfully registered.', 'success')
        return redirect(url_for('user.login'))
    else:
        for field, errors in form.errors.items():
            for error in errors:
                flash(
                    f"Error in the field {getattr(form, field).label.text}: {error}",
                    'warning')
        return redirect(url_for('user.register'))
Exemple #28
0
def process_registration():
    if current_user.is_authenticated:
        return redirect(url_for('market.index'))
    regform = RegistrationForm()
    if regform.validate_on_submit():
        new_user = User(number=f'8{regform.number.data}',
                        mail=regform.mail.data,
                        name=regform.name.data,
                        role='user')
        new_user.set_password(regform.password.data)

        db.session.add(new_user)
        db.session.commit()

        flash('Вы успешно зарегистрировались!')
        logging.info(f'Новый пользователь с id={new_user.id}')
        return redirect(url_for('market.index'))
    else:
        for field, errors in regform.errors.items():
            for error in errors:
                flash(f"В поле {getattr(regform, field).label.text}: -{error}")
        return redirect(url_for('market.registration'))
Exemple #29
0
def reset_password2(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    user = User.verify_token(token)
    if not user:
        flash('Ошибка. Обратитесь к администратору.')
        return redirect(url_for('main.index'))
    form = ResetPasswordForm()
    if form.validate_on_submit():
        user.set_password(form.password.data)
        db.session.commit()
        flash('Пароль успешно изменен.')
        return redirect(url_for('user.login'))
    return render_template('user/reset_password.html', form=form)
Exemple #30
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('purchase.index'))
    form = RegistrationForm()
    if request.method == 'POST':
        if form.validate_on_submit():
            new_user = User(username=form.username.data,
                            email=form.email.data,
                            role='user')
            new_user.set_password(form.password.data)
            db.session.add(new_user)
            db.session.commit()
            flash(
                'Вы успешно зарегистрировались! Для получения полного доступа к сайту, вам на почту отправлено письмо с инструкцией. Проверьте вашу почту!'
            )
            send_confirm_registration_email.delay(new_user)
            return redirect(url_for('user.login'))
        else:
            for field, errors in form.errors.items():
                for error in errors:
                    flash('Ошибка в поле "{}": - {}'.format(
                        getattr(form, field).label.text, error))
            return redirect(url_for('user.register'))
    return render_template('user/registration.html', form=form)
from getpass import getpass
import sys

from webapp import create_app
from webapp.db import db
from webapp.user.models import User

app = create_app()

with app.app_context():
    username = input('Введите имя:')

    if User.query.filter(User.username == username).count():
        print('Пользователь с таким именем уже есть')
        sys.exit(0)

    password1 = getpass('Введите пароль')
    password2 = getpass('Повторите пароль')

    if not password1 == password2:
        print('Пароли не одинаковые')
        sys.exit(0)

    new_user = User(username=username, role='admin')
    new_user.set_password(password1)

    db.session.add(new_user)
    db.session.commit()
    print('Создан пользователь с id={}'.format(new_user.id))
from getpass import getpass
import sys

from webapp import create_app
from webapp.db import db
from webapp.user.models import User

app = create_app()

with app.app_context():
    username = input('Введите имя пользователя: ')

    if User.query.filter(User.username == username).count():
        print('Такой пользователь уже есть')
        sys.exit(0)

    password1 = getpass('Введите пароль: ')
    password2 = getpass('Повторите пароль: ')
    if not password1 == password2:
        print('Пароли не одинаковые')
        sys.exit(0)

    new_user = User(username=username)
    new_user.set_password(password1)

    db.session.add(new_user)
    db.session.commit()
    print('Создан пользователь с id={}'.format(new_user.id))
def load_user(user_id):
    """Load user by ID."""
    return User.get_by_id(int(user_id))
 def test_created_at_defaults_to_datetime(self):
     """Test creation date."""
     user = User(username='******', email='*****@*****.**')
     user.save()
     assert bool(user.created_at)
     assert isinstance(user.created_at, dt.datetime)
 def test_check_password(self):
     """Check password."""
     user = User.create(username='******', email='*****@*****.**',
                        password='******')
     assert user.check_password('foobarbaz123') is True
     assert user.check_password('barfoobaz') is False
 def test_password_is_nullable(self):
     """Test null password."""
     user = User(username='******', email='*****@*****.**')
     user.save()
     assert user.password is None