aboutsummaryrefslogtreecommitdiff
path: root/pyaggr3g470r/views.py
diff options
context:
space:
mode:
authorCédric Bonhomme <kimble.mandel@gmail.com>2013-11-12 22:52:04 +0100
committerCédric Bonhomme <kimble.mandel@gmail.com>2013-11-12 22:52:04 +0100
commite73be6cf40b50173753a65f6596eb582b1e072ea (patch)
tree626ac450a0cc22c2c12c6dee38c842a4eeaf9308 /pyaggr3g470r/views.py
parentResized search form. (diff)
downloadnewspipe-e73be6cf40b50173753a65f6596eb582b1e072ea.tar.gz
newspipe-e73be6cf40b50173753a65f6596eb582b1e072ea.tar.bz2
newspipe-e73be6cf40b50173753a65f6596eb582b1e072ea.zip
Article searching with Whoosh OK.
Diffstat (limited to 'pyaggr3g470r/views.py')
-rw-r--r--pyaggr3g470r/views.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/pyaggr3g470r/views.py b/pyaggr3g470r/views.py
index 030272b9..53172b16 100644
--- a/pyaggr3g470r/views.py
+++ b/pyaggr3g470r/views.py
@@ -40,6 +40,7 @@ from pyaggr3g470r import app, db
import feedgetter
import models
+import search as fastsearch
login_manager = LoginManager()
@@ -199,6 +200,24 @@ def unread():
result.append(feed)
return render_template('unread.html', feeds=result)
+@app.route('/search/', methods=['GET'])
+@login_required
+def search():
+ user = models.User.objects(email=g.user.email).first()
+ result = []
+ query = request.args.get('query', None)
+ if query != None:
+ results = fastsearch.search(query)
+ for feed_id in results:
+ for feed in user.feeds:
+ if str(feed.oid) == feed_id:
+ feed.articles = []
+ for article_id in results[feed_id]:
+ current_article = models.Article.objects(id=article_id).first()
+ feed.articles.append(current_article)
+ result.append(feed)
+ return render_template('search.html', feeds=result)
+
@app.route('/management/', methods=['GET'])
@login_required
def management():
bgstack15