Exemplo n.º 1
0
    def test_validate_user_already_registered(self, user):
        """Enter username that is already registered."""
        form = RegisterForm(username=user.username, email='*****@*****.**',
                            password='******', confirm='example')

        assert form.validate() is False
        assert 'Username already registered' in form.username.errors
Exemplo n.º 2
0
def add_book():
    form = Add_Book()
    form_login = LoginForm()
    form_register = RegisterForm()
    form_cat = Add_Category()
    form_publisher = Add_Publisher()
    form_author = Add_Author()
    author = form.author.data
    publisher = form.publisher.data
    category = form.category.data
    if form.validate_on_submit():
        book = Book(title=form.title.data,
                    year=form.year.data,
                    book_cover=form.book_cover.data,
                    description=form.description.data,
                    publisher_id=publisher.PublisherId,
                    category_id=category.CategoryId,
                    author_id=author.AuthorId)
        db.session.add(book)
        db.session.commit()
        flash('New Book has been added!', 'success')
        return redirect(url_for('main.index'))
    return render_template('book/add_book.html',
                           title='New Book',
                           form=form,
                           legend='Add Book',
                           form_login=form_login,
                           form_register=form_register,
                           form_cat=form_cat,
                           form_publisher=form_publisher,
                           form_author=form_author)
Exemplo n.º 3
0
 def test_validate_success(self, db):
     """Register with success."""
     form = RegisterForm(username='******',
                         email='*****@*****.**',
                         password='******',
                         confirm='example')
     assert form.validate() is True
Exemplo n.º 4
0
    def test_validate_email_already_registered(self, user):
        """Enter email that is already registered."""
        form = RegisterForm(username='******', email=user.email,
                            password='******', confirm='example')

        assert form.validate() is False
        assert 'Email already registered' in form.email.errors
Exemplo n.º 5
0
def book(book_isbn):
    form_list = Add_Readinglist()
    form_login = LoginForm()
    form_register = RegisterForm()
    book = Book.query.get_or_404(book_isbn)
    if current_user.is_authenticated:
        form = Add_book_to_readinglit()
        selected_list = form.lists.data
        if request.method == 'POST':
            book.books.append(selected_list)
            db.session.commit()
            flash('New Book has been added to list!', 'success')
            return redirect(url_for('main.index'))
        return render_template('book/book.html',
                               title=book.title,
                               book=book,
                               form=form,
                               form_list=form_list,
                               form_login=form_login,
                               form_register=form_register)
    return render_template('book/book.html',
                           form_list=form_list,
                           title=book.title,
                           book=book,
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 6
0
 def get(self, request):
     form = RegisterForm()
     context = {
         "site_title": admin_site.site_title,
         "site_header": admin_site.site_register_header,
         "title": "Sign up for vocabulary",
         'form': form,
     }
     return render(request, 'user/user_register.html', context)
def one_list(list_id):
    form_login = LoginForm()
    form_register = RegisterForm()
    reading_list = Lists.query.get_or_404(list_id)
    return render_template('reading_list/reading_list.html',
                           title=reading_list.ListName,
                           reading_list=reading_list,
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 8
0
    def test_validate_email_already_registered(self, user):
        """Enter email that is already registered."""
        form = RegisterForm(username="******",
                            email=user.email,
                            password="******",
                            confirm="example")

        assert form.validate() is False
        assert "Email already registered" in form.email.errors
Exemplo n.º 9
0
 def test_validate_success(self, db):
     """Register with success."""
     form = RegisterForm(
         username="******",
         email="*****@*****.**",
         password="******",
         confirm="example",
     )
     assert form.validate() is True
Exemplo n.º 10
0
 def post(self, request):
     cur_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
     username = request.POST.get('username', '')
     password1 = request.POST.get('password1', '')
     password2 = request.POST.get('password2', '')
     email = request.POST.get('email', '')
     errors = []
     register_form = RegisterForm(request.POST)  # b********
     if not register_form.is_valid():
         errors.extend(register_form.errors.values())
         return render_to_response(
             "user/user_register.html", {
                 'cur_time': cur_time,
                 'username': username,
                 'email': email,
                 'errors': errors
             })
     if password1 != password2:
         errors.append("两次输入的密码不一致!")
         return render_to_response(
             "user/user_register.html", {
                 'cur_time': cur_time,
                 'username': username,
                 'email': email,
                 'errors': errors
             })
     filter_result = User.objects.filter(username=username).count()
     if 0 < filter_result:
         errors.append("用户名已存在")
         return render_to_response(
             "user/user_register.html", {
                 'cur_time': cur_time,
                 'username': username,
                 'email': email,
                 'errors': errors
             })
     User.objects.create_user(username=username,
                              password=password1,
                              is_superuser=True,
                              is_staff=True,
                              email=email)
     # 登录前需要先验证
     try:
         new_user = auth.authenticate(username=username, password=password1)
         if new_user is not None:
             auth.login(request, new_user)
             return HttpResponseRedirect("/admin/login/")
     except Exception as e:
         errors.append(str(e))
         return render_to_response(
             "user/user_register.html", {
                 'cur_time': cur_time,
                 'username': username,
                 'email': email,
                 'errors': errors
             })
def index():
    form_login = LoginForm()
    form_register = RegisterForm()
    page = request.args.get('page', 1, type=int)
    books = Book.query.order_by(Book.isbn.desc()).paginate(page=page,
                                                           per_page=6)
    return render_template('index.html',
                           books=books,
                           form_login=form_login,
                           form_register=form_register)
def all_author():
    form_author = Add_Author()
    form_login = LoginForm()
    form_register = RegisterForm()
    authors = Author.query.all()
    return render_template('author/authors.html',
                           authors=authors,
                           title='Authors',
                           form_author=form_author,
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 13
0
    def test_validate_user_already_registered(self, user):
        """Enter username that is already registered."""
        form = RegisterForm(
            username=user.username,
            email="*****@*****.**",
            password="******",
            confirm="example",
        )

        assert form.validate() is False
        assert "Username already registered" in form.username.errors
def all_lists():
    form_list = Add_Readinglist()
    form_login = LoginForm()
    form_register = RegisterForm()
    reading_list = Lists.query.filter_by(UserId=current_user.id).all()
    return render_template('reading_list/reading_lists.html',
                           form_list=form_list,
                           title=current_user.name,
                           reading_list=reading_list,
                           form_login=form_login,
                           form_register=form_register)
def all_publishers():
    form_publisher = Add_Publisher()
    form_login = LoginForm()
    form_register = RegisterForm()
    publishers = Publisher.query.all()
    return render_template('publisher/publishers.html',
                           form_publisher=form_publisher,
                           publishers=publishers,
                           title='Publishers',
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 16
0
def all_categories():
    form_cat = Add_Category()
    form_login = LoginForm()
    form_register = RegisterForm()
    categories = Category.query.all()
    return render_template('category/categories.html',
                           categories=categories,
                           title='Categories',
                           form_cat=form_cat,
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 17
0
def register():
    form = RegisterForm(request.form)
    if form.validate_on_submit():
        user = User(username=form.username.data,
                    email=form.email.data,
                    password=form.password.data)
        db.session.add(user)
        db.session.commit()
        login_user(user)
        flash('Thank you for registering.', 'success')
        return redirect(url_for("main.home"))
    return render_template('user/register.html', form=form)
Exemplo n.º 18
0
def register():
    form = RegisterForm(request.form, csrf_enabled=False)
    if form.validate_on_submit():
        new_user = 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)
Exemplo n.º 19
0
def add_category():
    form_login = LoginForm()
    form_register = RegisterForm()
    form_cat = Add_Category()
    if form_cat.validate_on_submit():
        category = Category(Name=form_cat.Name.data)
        db.session.add(category)
        db.session.commit()
        flash('New Category has been added!', 'success')
    else:
        flash('Error: The category alredy exists!', 'danger ')
        return jsonify(data=form_cat.errors)
Exemplo n.º 20
0
def category_books(Name):
    form_login = LoginForm()
    form_register = RegisterForm()
    page = request.args.get('page', 1, type=int)
    category_query = Category.query.filter_by(Name=Name).first_or_404()
    books = Book.query.filter_by(category=category_query).order_by(
        Book.isbn.desc()).paginate(page=page, per_page=6)
    return render_template('category/category_books.html',
                           books=books,
                           category=category_query,
                           form_login=form_login,
                           form_register=form_register)
def publisher_books(publisherName):
    form_login = LoginForm()
    form_register = RegisterForm()
    page = request.args.get('page', 1, type=int)
    publisher_query = Publisher.query.filter_by(
        publisherName=publisherName).first_or_404()
    books = Book.query.filter_by(publisher=publisher_query).order_by(
        Book.isbn.desc()).paginate(page=page, per_page=6)
    return render_template('publisher/publisher_books.html',
                           books=books,
                           publisher=publisher_query,
                           form_login=form_login,
                           form_register=form_register)
def author_books(full_name):
    form_login = LoginForm()
    form_register = RegisterForm()
    page = request.args.get('page', 1, type=int)
    author_query = Author.query.filter_by(full_name=full_name).first_or_404()
    books = Book.query.join(Book.author).filter(
        Author.full_name == author_query.full_name).order_by(
            Book.isbn.desc()).paginate(page=page, per_page=6)
    return render_template('author/author_books.html',
                           books=books,
                           author=author_query,
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 23
0
def register():
    """Register new user."""
    form = RegisterForm(request.form)
    if form.validate_on_submit():
        User.create(id=time.time(),
                    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)
Exemplo n.º 24
0
def register():
    """Register new user."""
    form = RegisterForm(request.form)
    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)
def index():
    form_login = LoginForm()
    form_register = RegisterForm()
    page = request.args.get('page', 1, type=int)
    books = Book.query.order_by(Book.isbn.desc()).paginate(page=page,
                                                           per_page=6)
    next_url = url_for('main.index', page=books.next_num) \
        if books.has_next else None
    prev_url = url_for('index', page=books.prev_num) \
        if books.has_prev else None
    return render_template('index.html',
                           books=books,
                           form_login=form_login,
                           form_register=form_register,
                           next_url=next_url,
                           prev_url=prev_url)
Exemplo n.º 26
0
def signup():
    form = RegisterForm()
    if form.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        new_user = User(name=form.username.data,
                        email=form.email.data,
                        password=hashed_password)
        user = User.query.filter_by(email=form.email.data).first()
        if user:
            flash('User already exists')
            return redirect(url_for('auth.signup'))
        db.session.add(new_user)
        db.session.commit()
        return redirect(url_for('auth.login'))
    return render_template('signup.html', form=form)
Exemplo n.º 27
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    form = RegisterForm()
    if request.method == "POST":
        print("request POST")
        if form.validate_on_submit():
            hashed_password = bcrypt.generate_password_hash(
                form.password.data).decode('utf-8')
            user = User(email=form.email.data,
                        first=form.first.data,
                        last=form.last.data,
                        hashed_password=hashed_password)
            db.session.add(user)
            db.session.commit()
            flash(f'User {user.full_name} registered.')
            return redirect(url_for('user.login'))
    return render_template('register.html', form=form)
def account():
    form = UpdateAccountForm()
    form_login = LoginForm()
    form_register = RegisterForm()
    if form.validate_on_submit():
        current_user.name = form.name.data
        current_user.username = form.username.data
        db.session.commit()
        flash('Your account details has been updated!', 'success')
        return redirect(url_for('users.account'))
    elif request.method == 'GET':
        form.name.data = current_user.name
        form.username.data = current_user.username
    return render_template('user/account.html',
                           title='Account',
                           form=form,
                           form_login=form_login,
                           form_register=form_register)
def add_readinglist():
    form_list = Add_Readinglist()
    form_login = LoginForm()
    form_register = RegisterForm()
    if form_list.validate_on_submit():
        readinglist = Lists(ListName=form_list.ListName.data,
                            user=current_user)
        db.session.add(readinglist)
        db.session.commit()
        flash('New reading list has been added!', 'success')
    else:
        flash('Error: %s alredy have this list created.' % (current_user.name),
              'danger ')
    reading_list = Lists.query.filter_by(UserId=current_user.id).all()
    return render_template('reading_list/reading_lists.html',
                           form_list=form_list,
                           title=current_user.name,
                           reading_list=reading_list,
                           form_login=form_login,
                           form_register=form_register)
Exemplo n.º 30
0
def edit_category(category_id):
    category = Category.query.get_or_404(category_id)
    form_cat = Add_Category()
    form_login = LoginForm()
    form_register = RegisterForm()
    if form_cat.validate_on_submit():
        category.Name = form_cat.Name.data
        db.session.commit()
        flash('The category name has been updated!', 'success')
    elif request.method == 'GET':
        form_cat.Name.data = category.Name
    else:
        flash('Error: The category alredy exists!', 'danger ')
    categories = Category.query.all()
    return render_template('category/categories.html',
                           categories=categories,
                           title='Categories',
                           form_cat=form_cat,
                           form_login=form_login,
                           form_register=form_register)