summaryrefslogtreecommitdiff
path: root/searx
diff options
context:
space:
mode:
authorAdam Tauber <asciimoo@gmail.com>2017-01-27 15:28:01 +0100
committerGitHub <noreply@github.com>2017-01-27 15:28:01 +0100
commit3ecde5bc3a771abf39f3d072cc0424de27d4b784 (patch)
tree506ed1dd4a527e37c902035d84215ed2be2577d9 /searx
parentee1d44caf9bb9b0fb1b3bafbcbff74486b5449e8 (diff)
parente67dfaaac7991b299dd9c33ae69e7028cd8f6589 (diff)
Merge pull request #804 from dalf/flask_perimeter
[mod] searx uses flask framework only in webapp.py
Diffstat (limited to 'searx')
-rw-r--r--searx/plugins/__init__.py4
-rw-r--r--searx/search.py9
-rw-r--r--searx/webapp.py2
3 files changed, 8 insertions, 7 deletions
diff --git a/searx/plugins/__init__.py b/searx/plugins/__init__.py
index 768a510af..011d36260 100644
--- a/searx/plugins/__init__.py
+++ b/searx/plugins/__init__.py
@@ -63,9 +63,9 @@ class PluginStore():
plugin.id = plugin.name.replace(' ', '_')
self.plugins.append(plugin)
- def call(self, plugin_type, request, *args, **kwargs):
+ def call(self, ordered_plugin_list, plugin_type, request, *args, **kwargs):
ret = True
- for plugin in request.user_plugins:
+ for plugin in ordered_plugin_list:
if hasattr(plugin, plugin_type):
ret = getattr(plugin, plugin_type)(request, *args, **kwargs)
if not ret:
diff --git a/searx/search.py b/searx/search.py
index 1da3c17a8..9425ca578 100644
--- a/searx/search.py
+++ b/searx/search.py
@@ -414,19 +414,20 @@ class SearchWithPlugins(Search):
"""Similar to the Search class but call the plugins."""
- def __init__(self, search_query, request):
+ def __init__(self, search_query, ordered_plugin_list, request):
super(SearchWithPlugins, self).__init__(search_query)
+ self.ordered_plugin_list = ordered_plugin_list
self.request = request
def search(self):
- if plugins.call('pre_search', self.request, self):
+ if plugins.call(self.ordered_plugin_list, 'pre_search', self.request, self):
super(SearchWithPlugins, self).search()
- plugins.call('post_search', self.request, self)
+ plugins.call(self.ordered_plugin_list, 'post_search', self.request, self)
results = self.result_container.get_ordered_results()
for result in results:
- plugins.call('on_result', self.request, self, result)
+ plugins.call(self.ordered_plugin_list, 'on_result', self.request, self, result)
return self.result_container
diff --git a/searx/webapp.py b/searx/webapp.py
index 929d9e243..8124d5775 100644
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -456,7 +456,7 @@ def index():
try:
search_query = get_search_query_from_webapp(request.preferences, request.form)
# search = Search(search_query) # without plugins
- search = SearchWithPlugins(search_query, request)
+ search = SearchWithPlugins(search_query, request.user_plugins, request)
result_container = search.search()
except Exception as e:
# log exception