Esempio n. 1
0
def result(username, query):
    per_page = app.config['POSTS_PER_PAGE']

    form = SearchForm()
    user = User.query.filter_by(username=username).first()
    query__ = query

    if form.validate_on_submit():
        new_query = form.query.data
        return redirect(url_for('result', username=username, query=new_query))

    cur_page = request.args.get('page', 1, type=int)
    #problems_, total = Problem.search(query__, 1, len(Problem.query.all()))
    problems_, total = Problem.search(query__, cur_page, per_page)
    problems = problems_.all()
    #problems = paginate(pp, cur_page, per_page)
    last_page = math.ceil(len(problems) / per_page)

    next_url = url_for('result', username=user.username, page=cur_page+1, query=query__) \
        if total > cur_page*per_page else None

    prev_url = url_for('result', username=user.username, page=cur_page-1, query=query__) \
        if cur_page > 1 else None
    return render_template('user_result.html',
                           user=user,
                           form=form,
                           problems=problems,
                           next_url=next_url,
                           prev_url=prev_url)
Esempio n. 2
0
def user(username):
    user = User.query.filter_by(username=username).first()
    form = SearchForm()
    if form.validate_on_submit():
        query = form.query.data
        return redirect(url_for('result', username=username, query=query))

    return render_template('user.html', user=user, form=form)
Esempio n. 3
0
def home():
    if current_user.is_authenticated:
        return redirect(url_for('user',username=current_user.username))
    form = SearchForm()
    if form.validate_on_submit():
        return redirect(url_for('about'))

    return render_template('home.html', form=form)
Esempio n. 4
0
def home():
    form = SearchForm()
    if form.validate_on_submit():
        return redirect(url_for('about'))

    return render_template('home.html', form=form)