示例#1
0
def search_view(page):
    if g.permission < 1:
        flash(NOT_AUTH_MSG, 'text-warning')
        return redirect('/')
    form = FilterForm()
    offers = list()
    if form.validate_on_submit() and (form.enable_age.data
                                      or form.enable_sexuality.data
                                      or form.enable_distance.data
                                      or form.enable_interests.data):
        research = Research(session['id'])
        if form.enable_age.data:
            research.filter('age', (form.age_from.data, form.age_to.data))
        if form.enable_sexuality.data:
            research.filter('sexuality', form.sexuality.data)
        if form.enable_distance.data:
            research.filter('distance', form.distance.data)
        if form.enable_interests.data:
            interests_list = User.get_interests_from_user(
                form.common_interests.data)
            research.filter('interests', interests_list)
        research.sort(form.order_by.data)
        offers = research.offers
    # count = len(offers)
    # pagination = Pagination(page, PER_PAGE, count)
    # offers = offers[(page * PER_PAGE - PER_PAGE):(page * PER_PAGE)]
    return render_template('search.html', form=form, offers=offers)
示例#2
0
def brows_view(page):
    if g.permission < 1:
        flash(NOT_AUTH_MSG, 'text-warning')
        return redirect('/')
    form = FilterForm()
    research = Research(session['id'])
    if request.method == 'GET':
        research.sort('weight')
    if form.validate_on_submit():
        research.sort(form.order_by.data)
        if form.enable_distance.data:
            research.filter('distance', form.distance.data)
        if form.enable_sexuality.data:
            research.filter('sexuality', form.sexuality.data)
        if form.enable_age.data:
            research.filter('age', (form.age_from.data, form.age_to.data))
        if form.enable_interests.data:
            interests_list = User.get_interests_from_user(
                form.common_interests.data)
            research.filter('interests', interests_list)
    count = len(research.offers)
    pagination = Pagination(page, PER_PAGE, count)
    research.get_users_per_page(page, PER_PAGE)
    return render_template('browse.html',
                           offers=research.offers,
                           form=form,
                           pagination=pagination)