Commit Graph

12 Commits (d6cbc6b78be5e97cae8a12fb18ace9d51be5df55)

Author SHA1 Message Date
marc 1175b3906f change language list to only include languages with a minimum of engines
that support them.
users can still query lesser supported through the :lang_code bang.
8 years ago
marc 149802c569 [enh] add supported_languages on engines and auto-generate languages.py 8 years ago
dalf 67e11c42b9 Clean up the architecture
Purposes :
- isolate the plugins calls
- distinction between parsing the web request and running the search (Search class). To be able to test code easily, to run searx code outside a web server, to filter the search query parameters with plugins more easily, etc...

Details :
- request.request_data contains request.form or request.args (initialize inside pre_request() function)
- Query class is renamed RawTextQuery
- SearchQuery class defines all search parameters
- get_search_query_from_webapp create a SearchQuery instance (basically the previous Search.__init__ code)
- Search class and SearchWithPlugins class takes a SearchQuery instance as class constructor parameter
- SearchWithPlugins class inherites from Search class, and run plugins
- A dedicated function search_with_plugins executes plugins to have a well define locals() (which is used by the plugins code).
- All plugins code is executed inside the try...except block (webapp.py, index function)
- advanced_search HTTP parameter value stays in webapp.py (it is only part of UI)
- multiple calls to result_container.get_ordered_results() doesn't compute the order multiple time (note : this method was call only once before)
- paging value is stored in the result_container class (compute in the extend method)
- test about engine.suspend_end_time is done during search method call (instead of __init__)
- check that the format parameter value is one of these : html, rss, json, rss (before the html value was assumed but some text formatting wasn't not done)
8 years ago
Noemi Vanyi 8c4db08443 rename blocked engines to diabled engines 9 years ago
Adam Tauber 1de781a143 [enh] category specific engine deactivation - closes #205 10 years ago
Adam Tauber 78828efdb0 [enh] allow override of blocked engines from query string 10 years ago
Adam Tauber b47b8cc2c6 Merge pull request #166 from Cqoicebordel/non-exclusif-bang
Add non exclusif bang
10 years ago
Thomas Pointhuber 4e2dae30f0 [enh] add autocompletion for searx-specific strings 10 years ago
Cqoicebordel 96c4d52eef Add non exclusif bang
Allow to perform a search while adding an engine (or a category) without adding it "officially" to the request.
'?' is used to add an engine without modifying anything else to the request. For example, you can perform a search in the 'general' category, and if you add '?tw' the result from Twitter will be added to the originals results.
10 years ago
Adam Tauber 5740cfbf1c [fix] pep8 part II. 10 years ago
Thomas Pointhuber 62d1a70c84 using Query class for parsing of search query 10 years ago
Thomas Pointhuber 510aba5e66 implement query parser and use it inside autocompletion 10 years ago