Ejemplo n.º 1
0
Archivo: views.py Proyecto: danrr/SELP
def get_more():
    """Handles requests for more post and submissions when a user presses "Show more" """
    start = int(request.form.get("start"))
    rendered_posts = []
    template = get_template_attribute('partials/_post.html', "post_template")
    posts = []
    page = request.form.get("page")
    if page == "home":
        status = request.form.get("status")
        if status == "open":
            posts = Post.get_open_posts(start)
        if status == "closed":
            posts = Post.get_closed_posts(start)
        if status == "archived":
            posts = Post.get_archived_posts(start)
    if page == "search":
        query, difficulty, tag = parse_search_query(request.form.get("query"))
        posts = Post.get_searched_posts(query, difficulty=difficulty, tag=tag, start=start)
    if posts:
        for post in posts:
            post_html = template(page=page, post=post)
            rendered_posts += [post_html]
        return jsonify({
            "success": True,
            "posts": rendered_posts
        })
    else:
        return jsonify({
            "success": False
        })
Ejemplo n.º 2
0
Archivo: views.py Proyecto: danrr/SELP
def search_results():
    """Displays results page"""
    query = request.args.get("query")
    tag = request.args.get("tag")
    difficulty = request.args.get("difficulty")
    query_string = build_query_string(query, tag, difficulty)

    g.search_form.search.data = query_string
    return render_template('search-results.html',
                           title="Search",
                           posts=Post.get_searched_posts(query, tag, difficulty),
                           query_string=query_string)
Ejemplo n.º 3
0
 def test_post_model_searched_terms(self):
     date = datetime.today() - timedelta(10)
     post = Post('Title', 'Body', user_id=1, publish_time=date, difficulty=3)
     post.add_tag("tag")
     db.session.add(post)
     db.session.commit()
     self.assertEqual(Post.get_searched_posts("Title"), [post])
     self.assertEqual(Post.get_searched_posts("fish"), [])
     self.assertEqual(Post.get_searched_posts("", tag="cake"), [])
     self.assertEqual(Post.get_searched_posts("", tag="tag"), [post])
     self.assertEqual(Post.get_searched_posts("", difficulty="Intermediate"), [post])
     self.assertEqual(Post.get_searched_posts("", difficulty="Hard"), [])
     self.assertEqual(Post.get_searched_posts("Title", tag="tag", difficulty="Intermediate"), [post])