Example #1
0
def login():
    if request.method == 'GET':
        return render_template('login.html')
    else:
        account = request.form['account']
        password = request.form['password']
        if len(account) == 0 | len(password) == 0:
            return render_template('login.html')

        cursor.execute('select account from coursefilemanagement.user')
        accounts = cursor.fetchall()

        for account in accounts:
            if request.form['account'] == account[0]:
                cursor.execute(
                    'select password,usertype from coursefilemanagement.user where account=%s',
                    (account[0]))
                detail = cursor.fetchall()

                if request.form['password'] == detail[0][0]:
                    curr_user = User()
                    curr_user.id = account[0]
                    print(curr_user.id)
                    login_user(curr_user)
                    return redirect(url_for('.homepage'))

        return '<h>账号、密码错误!</h>'
Example #2
0
 def new(username, password, email):
     """create new user."""
     from app.main.models import User
     user = User(username=username, email=email)
     user.set_password(password)
     db.session.add(user)
     db.session.commit()
def api_create_user():
    body = request.json

    if 'first_name' not in body:
        return bad_request('Missing first_name')

    if 'last_name' not in body:
        return bad_request('Missing last_name')

    if 'email' not in body:
        return bad_request('Missing email')

    if 'password' not in body:
        return bad_request('Missing password')

    user = User(
        first_name=body['first_name'],
        last_name=body['last_name'],
        email=body['email'],
    )

    user.set_password(body['password'])
    db.session.add(user)
    db.session.commit()

    return jsonify(user._asdict())
Example #4
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))

    form = RegistrationForm()

    if form.validate_on_submit():
        try:
            if get_user_by_name(form.username.data) is not None:
                flash('Username already taken')
                return redirect(url_for('auth.register'))
            new_user = User(
                id_generator(), form.username.data, form.email.data,
                generate_password_hash(form.password.data, method='sha256'))
            save_user(new_user)
            login_user(new_user)
            flash('Congratulations, you are now a registered user!')
            return redirect(url_for('main.index'))
        except:
            new_user = User(
                id_generator(), form.username.data, form.email.data,
                generate_password_hash(form.password.data, method='sha256'))
            save_user(new_user)
            login_user(new_user)
            flash('Congratulations, you are now a registered user!')
            return redirect(url_for('main.index'))

    return render_template('auth/register.html', title='Register', form=form)
Example #5
0
def signup():
    if current_user is not None and current_user.is_authenticated():
        return redirect(url_for('main.index'))
    registerForm = RegisterForm(request.form, prefix="registerForm")
    loginForm = LoginForm(request.form, prefix="loginForm")

    if request.method == 'POST':
        if request.form['submit'] == 'register' and registerForm.validate():

            user = User(email=registerForm.email.data,
                        passwd=bcrypt.generate_password_hash(
                            registerForm.passwd.data),
                        name=registerForm.name.data)
            user.url = urllib.quote_plus(registerForm.name.data)
            #user_url = user_make_url(registerForm.name.data)
            # Insert the record in our database and commit it
            db.session.add(user)
            db.session.commit()

            login_user(user)
            return redirect(request.args.get('next')
                            or url_for('main.index'))

    return render_template('register.html',
                           form="signup",
                           loginForm=loginForm,
                           registerForm=registerForm)
Example #6
0
def init_app_data():
    db.drop_all()
    db.create_all()

    Role.insert_roles()

    u = User(name='Gloomymoon',
             password="******",
             role=Role.query.filter_by(permissions=0xff).first())
    db.session.add(u)
    u2 = User(name='Haoer',
              password="******",
              role=Role.query.filter_by(permissions=0xff).first())
    db.session.add(u2)
    u3 = User(name='David',
              password="******",
              role=Role.query.filter_by(name="Knight").first())
    db.session.add(u3)
    db.session.commit()

    s = EnglishSetting(user_id=u3.id, level1=12, level2=8, level3=3, level4=2)
    db.session.add(s)
    db.session.commit()

    add_book("Oxford 3A", "Oxford 3A")
    import_words("Oxford3A.csv")
    add_book("WTE 3A", "Longman Welcome to English 3A")
    import_words("WTE3A.csv")
    '''
Example #7
0
    def test_avatar(self):
        u = User(first_name='Test',
                 last_name='User',
                 email='*****@*****.**')

        self.assertEqual(u.avatar(128), ('https://www.gravatar.com/avatar/'
                                         '980bf7835dbbe25b0bdb9aa7f8c1a773'
                                         '?d=identicon&s=128'))
Example #8
0
 def test_avatar(self):
     """ 测试头像 """
     u = User(user_name='guanwen',
              password='******',
              nickname='关文',
              email='*****@*****.**')
     avatar = u.avatar(128)
     expected = 'https://secure.gravatar.com/avatar/5e1f2c7792fea6da8f4e56b899620e5d?d=mm&s=128'
     assert avatar[0:len(expected)] == expected
Example #9
0
 def test_check_unique_email(self):
     u = User(name='john', email='*****@*****.**')
     db.session.add(u)
     db.session.commit()
     result = User.check_unique_email('*****@*****.**')
     assert result is not False
     result = User.check_unique_email('*****@*****.**')
     assert result is False
     result = User.check_unique_email('*****@*****.**')
     assert result is True
Example #10
0
def create_new_user(name):
    verify_user_does_not_exist(name)

    new_user = User()
    new_user.name = name
    new_user.questions_total = 0
    new_user.questions_won = 0
    save(new_user)

    return get_response({'name': name})
Example #11
0
 def test_follow(self):
     """ 测试关注 """
     u1 = User(user_name='john',
               password='******',
               nickname='john',
               email='*****@*****.**')
     u2 = User(user_name='susan',
               password='******',
               nickname='susan',
               email='*****@*****.**')
     db.session.add(u1)
     db.session.add(u2)
     assert u1.unfollow(u2) == None
     u = u1.follow(u2)
     db.session.add(u)
     db.session.commit()
     assert u1.follow(u2) == None
     assert u1.is_following(u2)
     assert u1.followed.count() == 1
     assert u1.followed.first().nickname == 'susan'
     assert u2.followers.count() == 1
     assert u2.followers.first().nickname == 'john'
     u = u1.unfollow(u2)
     assert u != None
     db.session.add(u)
     db.session.commit()
     assert u1.is_following(u2) == False
     assert u1.followed.count() == 0
     assert u2.followers.count() == 0
Example #12
0
    def test_follow(self):
        user1 = User(first_name='Test1',
                     last_name='User',
                     email='*****@*****.**')

        user2 = User(first_name='Test2',
                     last_name='User',
                     email='*****@*****.**')

        db.session.add(user1)
        db.session.add(user2)
        db.session.commit()

        self.assertEqual(user1.followed.all(), [])
        self.assertEqual(user2.followed.all(), [])

        user1.follow(user2)
        db.session.commit()

        self.assertTrue(user1.is_following(user2))
        self.assertEqual(user1.followed.count(), 1)
        self.assertEqual(user1.followed.first().first_name, 'Test2')

        self.assertEqual(user2.followers.count(), 1)
        self.assertEqual(user2.followers.first().first_name, 'Test1')

        user1.unfollow(user2)
        db.session.commit()

        self.assertFalse(user1.is_following(user2))
        self.assertEqual(user1.followed.count(), 0)
        self.assertEqual(user2.followers.count(), 0)
def convert_auth0_id_to_api_id(auth0_user_id):
    user = User.query.filter(User.auth0_id == auth0_user_id).first()
    if user is None:
        new_user = User()
        new_user.auth0_id = auth0_user_id
        db.session.add(new_user)
        db.session.commit()
        user_id = new_user.id
    else:
        user_id = user.id
    return user_id
Example #14
0
def load_user(user_id):
    curr_user = User()
    curr_user.id = user_id
    cursor.execute(
        'select usertype '
        'from coursefilemanagement.user '
        'where account=%s', user_id)
    detail = cursor.fetchall()
    ac_type = detail[0][0]
    curr_user.utype = ac_type
    return curr_user
Example #15
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('main.login'))
    return render_template('register.html', title='Register', form=form)
Example #16
0
def create_all():
    db.drop_all()
    db.create_all()
    from app.main.models import User
    from app.ABE.models import Attribute

    admin = User()
    admin.username = '******'
    admin.password = '******'
    admin.role = 'admin'
    db.session.add(admin)
    db.session.commit()
Example #17
0
 def setUp(self):
     self.app = create_app()
     self.client = self.app.test_client()
     self.user1 = User('*****@*****.**', 'Mohammed Rajab', '0700000000',
                       'aam123')
     self.user2 = User('*****@*****.**', 'Abdulaziz Rajab',
                       '0701633016', 'aam786')
     self.rideOffer = RideOffer(self.user1.email, '07/07/2018', '1030HRS',
                                'madaraka', 'makina', 250)
     self.rideRequest = RideRequest(1, self.user2.email)
     with self.app.app_context():
         db.create_all()
    def add_user_to_database(self, users):
        with self.app.app_context():
            self.db = SQLAlchemy()
            self.db.init_app(self.app)

            for i in range(len(users)):
                user = User()
                user.name = users[i]['name']
                user.questions_won = users[i]['wins']
                user.questions_total = users[i]['answers']
                self.db.session.add(user)
                self.db.session.commit()
Example #19
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('main.login'))
    return render_template('register.html', title='Register', form=form)
Example #20
0
def register():
    '''View for registering a new user.'''

    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()
        # login ther new user
        login_user(user, remember='true')
        return redirect(url_for('main.update'))
    return render_template('auth/register.html', title='Register', form=form)
Example #21
0
File: auth.py Project: lmAsm/WeBook
def register():
    form = RegisterForm()
    if request.method == "POST":

        if User.query.filter_by(email=form.email.data).first():
            flash(form.email.data + u'已经被注册,请选择其他邮箱!', "warning")
            return redirect(url_for("auth.register"))

        if User.query.filter_by(username=form.username.data).first():
            flash(form.username.data + u'已经被注册,请选择其他用户名!', "warning")
            return redirect(url_for("auth.register"))

        _file = request.files['filename']
        _type = _file.filename.split(".")[-1].lower()

        if not _type or _type not in ['jpeg', 'jpg', 'bmp', "png"]:
            flash(u"图片格式错误,当前只支持'jpeg', 'jpg', 'bmp', 'png'!", "warning")
            return redirect(url_for("main.edit_basic"))

        dirname = current_app.config['UPLOAD_FOLDER']  # 截图存放地点

        user = User(email=form.email.data,
                    username=form.username.data,
                    password=form.password.data,
                    about_me=form.about_me.data)
        db.session.add(user)
        db.session.commit()

        user_id = User.query.filter_by(username=user.username).first().id
        filename = secure_filename(str(user_id) + "." + _type)
        if not os.path.exists(dirname):
            try:
                os.makedirs(dirname)
                _file.save(os.path.join(dirname, filename))
            except Exception as e:
                print(e)
        else:
            _file.save(os.path.join(dirname, filename))
        user.image_name = filename
        db.session.add(user)
        db.session.commit()
        token = user.generate_confirmation_token()
        send_email([user.email],
                   u'验证您的账号',
                   'auth/email/confirm',
                   user=user,
                   token=token)
        flash(u"一封验证邮件发送到了你的邮箱,请您验收!", "success")
        return redirect(url_for("auth.login"))

    return render_template("auth/register.html", form=form)
Example #22
0
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(email=form.email.data,
                    username=form.username.data,
                    password=form.password.data)
        db.session.add(user)
        db.session.commit()
        token = user.generate_confirmation_token()
        send_email(user.email, 'Confirm Your Account',
                   'auth/email/confirm', user=user, token=token)
        flash('A confirmation email has been sent to you by email.')
        return redirect(url_for('auth.login'))
    return render_template('auth/register.html', form=form)
Example #23
0
def test_new_user(client, database):
    """
    GIVEN a User Model
    WHEN a new User is created
    THEN check the email, hashed_password,
    """
    user = User(email='*****@*****.**', password='******')
    database.session.add(user)
    database.session.commit()

    assert user.email == '*****@*****.**'
    assert user.id >= 2
    assert user.verify_password('password2')
    with pytest.raises(AttributeError):
        assert user.password
Example #24
0
def get_followed(id):
    user = User.query.get_or_404(id)
    page = request.args.get('page', 1, type=int)
    per_page = min(request.args.get('per_page', 10, type=int), 100)
    data = User.to_collection_dict(user.followed, page, per_page,
                                   'api.get_users')
    return jsonify(data)
Example #25
0
def index():
    """
    Presents a "login" form to enter the thunderdome.
    """
    form = LoginForm()
    if form.validate_on_submit():
        form_name = form.name.data

        # Modify the requested username if already taken
        if load_user(form_name) is not None:
            mod = 1
            while load_user(form_name + '(' + str(mod) + ')') is not None:
                mod += 1

            form_name = form_name + '(' + str(mod) + ')'

        # Add username to sqlite db
        db.session.add(User(username=form_name))
        db.session.commit()

        session['name'] = form_name
        session['room'] = 'dnd-room'

        return redirect(url_for('.chat'))

    return render_template('index.html', form=form)
Example #26
0
def create_user():
    data = request.get_json() or {}
    if 'username' not in data or 'email' not in data or 'password' not in data:
        return bad_request('must include username, email and password fields')
    if User.query.filter_by(username=data['username']).first():
        return bad_request('please use a different username')
    if User.query.filter_by(email=data['email']).first():
        return bad_request('please use a different email address')
    user = User()
    user.from_dict(data, new_user=True)
    db.session.add(user)
    db.session.commit()
    response = jsonify(user.to_dict())
    response.status_code = 201
    response.headers['Location'] = url_for('api.get_user', id=user.id)
    return response
Example #27
0
def create_user():
    form = CreateUserForm()
    if form.validate_on_submit():
        name = form.name.data
        phone_number = form.phone_number.data
        address = form.address.data
        email = form.email.data
        pw = form.password.data
        user = User(name=name,
                    phone_number=phone_number,
                    address=address,
                    email=email)
        user.set_password(pw)
        db.session.add(user)
        db.session.commit()
        return redirect(url_for('admin.get_users'))
    return render_template('admin/create_user.html', form=form)
Example #28
0
def get_user_by_id(user_id):
    with open(path, 'r+') as read_file:
        data = json.load(read_file)
        read_file.close()
        # return user_id, data.get(user_id)['username'], data.get(user_id)['mail'], data.get(user_id)['pass']
        return User(user_id,
                    data.get(user_id)['username'],
                    data.get(user_id)['mail'],
                    data.get(user_id)['pass'])
Example #29
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))

    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(
            first_name=form.first_name.data,
            last_name=form.last_name.data,
            email=form.email.data.lower(),
        )

        user.set_password(form.password.data)
        db.session.add(user)
        db.session.commit()

        flash('Your account has been created! Yay!')
        return redirect(url_for('auth.login'))
    return render_template('auth/register.html', title='Register', form=form)
Example #30
0
def register():
    data = request.get_json()
    name = data["username"]
    email = data["email"]
    password = data["password"]

    user = User.query.filter_by(email=email).first()
    if user:
        return jsonify(
            success=0,
            results={},
            message="Пользователь с такой почтой уже зарегестрирован")
    user = User(name=name, email=email)
    user.set_password(password)
    db.session.add(user)
    db.session.commit()
    return jsonify(success=1,
                   results={"user_id": user.id},
                   message="Пользователь зарегестрирован")
Example #31
0
 def test_make_unique_nickname(self):
     """ 测试昵称唯一方法 """
     u = User(user_name='guanwen',
              password='******',
              nickname='关文',
              email='*****@*****.**')
     db.session.add(u)
     db.session.commit()
     nickname = User.make_unique_nickname('关文')
     assert nickname != '关文'
     u = User(user_name='susan',
              password='******',
              nickname=nickname,
              email='*****@*****.**')
     db.session.add(u)
     db.session.commit()
     nickname2 = User.make_unique_nickname('关文')
     assert nickname2 != '关文'
     assert nickname2 != nickname
Example #32
0
def database():
    db.create_all()

    user1 = User(email='*****@*****.**', password='******')

    db.session.add(user1)
    db.session.commit()

    yield db

    db.drop_all()
Example #33
0
def reset_password(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    user = User.verify_reset_password_token(token)
    if not user:
        return redirect(url_for('main.index'))
    form = ResetPasswordForm()
    if form.validate_on_submit():
        user.set_password(form.password.data)
        db.session.commit()
        flash(_('Your password has been reset.'))
        return redirect(url_for('auth.login'))
    return render_template('auth/reset_password.html', form=form)
Example #34
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('auth.user_profile', id=current_user.id))
    form = RegisterForm()
    if form.validate_on_submit():
        name = form.name.data
        phone_number = form.phone_number.data
        address = form.address.data
        email = form.email.data
        existed_user = User.query.filter_by(email=email).first()
        if existed_user:
            flash('Email đã được sử dụng')
            return redirect(url_for('auth.register'))
        pw = form.password.data
        user = User(name=name, phone_number=phone_number,
                    address=address, email=email)
        user.set_password(pw)
        db.session.add(user)
        db.session.commit()
        login_user(user)
        return redirect(url_for('auth.user_profile', id=user.id))
    return render_template('auth/register.html', form=form)
Example #35
0
def register_user():
    json_dict = request.json
    print(json_dict)
    user = User()
    user.update_from_dict(json_dict, ['id'])
    existing_user = User.get_user_by_email(json_dict['email'])
    if existing_user:
       return Responses.OBJECT_EXIST()
    error = user.update()
    if len(error) > 0:
        return Responses.OPERATION_FAILED()
    return res(user.as_dict())
Example #36
0
 def test_password_hashing(self):
     user = User(username='******')
     user.set_password('cat')
     self.assertFalse(user.check_password('dog'))
     self.assertTrue(user.check_password('cat'))