summaryrefslogtreecommitdiff
path: root/searx/webapp.py
AgeCommit message (Collapse)Author
2022-03-05[mod] URL for the static file contains the sha1Alexandre Flament
* allow to cache the static file forever * avoid bugs when the static files are updated but not reloaded
2022-02-26[simple theme] replace Image_layout.js with flexbox CS impl.mrpaulblack
* drop image_layout.js from simple theme * move image_layout.js to oscar theme and delete common js dir (since its empty now) * align top position of image detail modal with bottom position of search header * use flexbox to display images; row height can be set via @results-image-row-height in defenitions.less * display span title underneath each image with a max width of 12rem * increase margin and padding around image article on desktop and tablet * make article height smaller on phone layout (height of 6rem) to display more content on current view * remove content from result, if the title and content matches * use a group that cotains the flex image article, if images are mixed with other categories * fix pylint issues in webapp.py * use the default.html result template in unit tests (thanks @return42)
2022-02-20[mod] infinite_scroll as preferenceAlexandre Flament
* oscar theme: code from searx/plugins/infinite_scroll.py * simple theme: new implementation Co-authored-by: Markus Heiser <markus.heiser@darmarIT.de>
2022-02-19[fix] image_proxy: allow HTTP redirectsMarkus Heiser
Without redirects the load of various images will fail when image_proxy is enabled [1]. [1] https://github.com/searxng/searxng/pull/910#issuecomment-1045966577 Suggested-by: @dalf [1] Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-02-01[enh] generate navigation for help pagesMartin Fischer
2022-02-01[enh] introduce /help routeMartin Fischer
Translation will be implemented in the future. For now the "en" in /help/en/<pagename> is hardcoded.
2022-01-27[pyright] remove no longer needed assertionMartin Fischer
The pyright bug[1] for which the assertion was added has been fixed. [1]: https://github.com/microsoft/pyright/issues/2930
2022-01-27[pyright:basic] searx.webappMartin Fischer
2022-01-23[mod] configuration to overwrite engine descriptionMarkus Heiser
Engine description can be configured, this is needed e.g. by custom search engines. Here is an example of a command engine with a description in the about section:: - name: locate engine: command command: ['locate', '{{QUERY}}'] disabled: true categories: files about: description: local files website: 'https://www.man7.org/linux/man-pages/man1/locate.1.html' delimiter: chars: ' ' keys: ['line'] Closes: https://github.com/searxng/searxng/issues/788 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-01-23[help] render user documentation once on startupMartin Fischer
Currently we have two kinds of user documentation: * the about page[1] which is written in HTML and part of the web application and can therefore link instance-specific pages (like e.g. the preferences) via Jinja variables * the Sphinx documentation[2] which is written in reStructuredText and cannot link instance-specific pages since it doesn't know which instance the user is using The plan is to integrate the user documentation currently in Sphinx into the application, so that it can also link instance specific pages. We also want to enable the user documentation to be translated. This commit implements the first step in this endeavor (see #722). [1]: searx/templates/__common__/about.html [2]: docs/user/ (currently served at https://docs.searxng.org/user/)
2022-01-17[typing] add type hints to webapp.pyMartin Fischer
2022-01-17[typing] add results.UnresponsiveEngineMartin Fischer
2022-01-17[refactor] remove never used parameterMartin Fischer
2022-01-17[typing] add results.TimingMartin Fischer
2022-01-17[typing] add ExtendedRequestMartin Fischer
webapp.py monkey-patches the Flask request global. This commit adds a type cast so that e.g. Pyright[1] doesn't show "Cannot access member" errors everywhere. [1]: https://github.com/microsoft/pyright
2022-01-09[fix] filtered_engines were not correctly evaluating validate_token()Martin Minka
2022-01-06Merge pull request #634 from not-my-profile/powered-byAlexandre Flament
Introduce `categories_as_tabs` & group engines in tabs
2022-01-05[enh] settings.yml: implement general.enable_metricsAlexandre Flament
* allow not to record metrics (response time, etc...) * this commit doesn't change the UI. If the metrics are disabled /stats and /stats/errors will return empty response. in /preferences, the columns response time and reliability will be empty.
2022-01-05[enh] change categories_as_tabs from a list to a dictMartin Fischer
The tab icon names are currently hard coded in the templates. This commit lets us introduce an icon property in the future, e.g: categories_as_tabs: general: icon: search-outline
2022-01-05[mod] move group_engines_in_tab to searx.webutilsMartin Fischer
2022-01-05[enh] show categories not in any tab category in "Other" preferences tabMartin Fischer
Previously we didn't have a good place to put search engines that don't fit into any of the tab categories. This commit automatically puts search engines that don't belong to any tab category in an "other" category, that is only displayed in the user preferences (and not above search results).
2022-01-05[enh] group engines in preference tabsMartin Fischer
2022-01-03[enh] introduce categories_as_tabsMartin Fischer
Previously all categories were displayed as search engine tabs. This commit changes that so that only the categories listed under categories_as_tabs in settings.yml are displayed. This lets us introduce more categories without cluttering up the UI. Categories not displayed as tabs can still be searched with !bangs.
2021-12-28[mod] implement is_hmac_of() in webutils / close to new_hmac()Markus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>, Alexandre Flament
2021-12-28[fix] use hmac.compare_digest instead of ==Alexandre Flament
see https://docs.python.org/3/library/hmac.html#hmac.HMAC.hexdigest
2021-12-27[format.python] initial formatting of the python codeMarkus Heiser
This patch was generated by black [1]:: make format.python [1] https://github.com/psf/black Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-12-27[format.python] disable py code formatting for some hunks of codeMarkus Heiser
Disable the python code formatting from python-black, where the readability of code suffers by formatting. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-11-29[fix] route /autocompleter: escape `<` and `>` in the simple themeMarkus Heiser
This is a follow up of 9a3253fc escaping `<` and `>` in all themes. This patch fix issue in oscar theme Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-11-27[fix] route /autocompleter: escape '<' and '>' in the responseMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-11-24Merge pull request #485 from dalf/pref_query_in_titleAlexandre Flament
[mod] new preference: query_in_title
2021-11-21[simple theme] rework select; add safesearch to search and replace / with ↵mrpaulblack
› in article url * rework selection UI in pref (fix based on: https://github.com/twelsby/searx/commit/78643e9f43a103c523f112e9f3ce26a5c7bb3a0f) * moved search filters underneath categories * cut params from url and replace / with › * make h3 and url in article bigger * add safe search select to search filter (this will not override settings and only be valid while on result page in a session) * make search form button not overlap each other when js is disabled * 1rem padding around preview image and thumbnail in default article template
2021-11-19[enh] simple theme: add "simple-style" preferencesAlexandre Flament
2021-11-08[mod] new preference: query_in_titleAlexandre Flament
* disable by default * settings.yml: ui.query_in_title * in /preferences: privacy tab when enabled, the result page's title contains the user query. previously: * oscar theme: the query was always included * simple theme: the query was included with the GET method
2021-10-29healthcheck endpointIgor Rzegocki
2021-10-26[enh] reduce the available language listAlexandre Flament
close #406 settings['search']['languages'] contains the languages codes and 'all'
2021-10-12Merge pull request #380 from dalf/fix-339Alexandre Flament
[fix] interface language zh_CN and zh_TW don't work
2021-10-12[mod] locale: use hyphen everywhere except for BabelAlexandre Flament
2021-10-12[fix] templates: lang attribute of html uses hyphenAlexandre Flament
https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-lang https://www.w3.org/TR/REC-xml/#sec-lang-tag
2021-10-12[enh] verify that Tor proxy works every time searx startsAlexandre Flament
based on @MarcAbonce commit on searx
2021-10-06plugins: refactor initializationAlexandre Flament
add a new function "init" call when the app starts. The function can: * return False to disable the plugin. * modify the Flask app.
2021-09-28[mod] searx.network.stream returns a tuple (response, stream)Alexandre Flament
2021-09-24[enh] themes: display the engine descriptionsAlexandre Flament
2021-09-24[mod] add /engine_descriptions.json endpointAlexandre Flament
returns engine descriptions (JSON): * key: engine name * value: description in the user locale, use English description as a fallback
2021-09-07[mod] oa_doi_rewrite plugin: get_doi_resolver: remove args parameterAlexandre Flament
doi_resolvers.get_value('preferences') already contains the value from request.args.get('doi_resolver')
2021-09-07[pylint] searx: drop no longer needed 'missing-function-docstring'Markus Heiser
Suggested-by: @dalf https://github.com/searxng/searxng/issues/102#issuecomment-914168470 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-09-02[mod] searx.webapp: code clean upAlexandre Flament
2021-08-31[enh] new issue: include information from searx.versionAlexandre Flament
2021-08-24[mod] /image_proxy: use HTTP/1 instead of HTTP/2Alexandre Flament
httpx: HTTP/2 is slow when a lot data is downloaded. https://github.com/dalf/pyhttp-benchmark also, the usage of HTTP/1 decreases the load average
2021-08-24[fix] image_proxy: always close the httpx responeAlexandre Flament
previously, when the content type was not an image and some other error, the httpx response was not closed
2021-08-22Merge pull request #260 from dalf/mod_localeMarkus Heiser
[mod] searx.webapp.get_locale: read locale from the preferences