Commit Graph

4070 Commits

Author SHA1 Message Date
Markus Heiser c63fab6928
Merge pull request #1443 from return42/fix-online_dictionary
[fix] online_dictionary: regular expression
2022-07-07 16:25:10 +02:00
Markus Heiser 480476fdf3 [fix] online_dictionary: regular expression
The query term of a engine-type `online_dictionary` can consist of more than one
word.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-07 15:58:29 +02:00
Alexandre Flament df837d8b1b
Merge pull request #1428 from return42/fix-center_aligment
fix typo and document preference 'center_alignment' in the 'ui' section
2022-07-07 09:43:12 +02:00
Markus Heiser c5ec8db6b3
Merge pull request #1457 from return42/fix-1435
[fix] engine z-zlibrary https URL
2022-07-06 13:44:08 +02:00
Markus Heiser be2f782c9e
Merge pull request #1460 from unixfox/patch-1
Better explanation for the use of use_mobile_ui
2022-07-06 00:16:26 +02:00
Émilien Devos 63a995b8c1 Better explanation for the use of use_mobile_ui 2022-07-06 00:10:09 +02:00
mrpaulblack 38385e48cf fix: return body on limiter block so there is not just a blank page 2022-07-05 22:57:26 +02:00
Markus Heiser 970a69012b [fix] engine z-zlibrary https URL
before this patch:

    DEBUG   searx.engines.z-library : using base_url: https:https://de1lib.org

with this patch URL is fixed to:

    DEBUG   searx.engines.z-library : using base_url: https://de1lib.org

Closes: https://github.com/searxng/searxng/issues/1435
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-05 22:27:55 +02:00
Markus Heiser 8de0b62005 [build] /static 2022-07-04 19:06:45 +02:00
Markus Heiser f8222eb2cd [fix] style.less: move <dl> from infobox.attributes to .attributes class
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-04 19:06:45 +02:00
ta 14756a2674 [mod] Adds Lingva translate engine
Add the lingva engine (which grabs data from google translate).  Results from
Lingva are added to the infobox results.
2022-07-04 19:06:45 +02:00
Xavier horwood 61ee370e18 [mod] link to public-instances can be set to hidden
Some administrators may want to hide the link to public_instances: If you run a
private instance for a company that wants there employees to use the private
instance instead of any of the public instances.
2022-07-04 13:26:01 +02:00
Markus Heiser 241bde5ae3 [fix] typo: add missing 'n' in center_aligment --> center_alignment
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-03 17:35:54 +02:00
Markus Heiser 4ef6263725
Merge pull request #1404 from dalf/donation_use_external_link
Donation link: default value to searxng.org, can be hidden or custom
2022-07-02 17:18:05 +02:00
Markus Heiser 5831c15b49 [fix] engines/openstreetmap.py typo: user_langage --> user_language
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-02 16:51:25 +02:00
Alexandre Flament 6716c6b0c3 openstreetmap engine: return the localized named.
For example: display "Tokyo" instead of "東京都" when the language is English.
2022-07-02 16:51:25 +02:00
Alexandre Flament 7f30ac37e9 map.html: display the intended text for the links instead of the URL
For example display "Tokyo (en)" instead of https://en.wikipedia.org/wiki/Tokyo
2022-07-02 16:51:25 +02:00
Markus Heiser 69a6d994e1
Merge pull request #1382 from dalf/fix_searxng_extra_update
fix searxng_extra/update/update*.py scripts
2022-07-02 12:33:07 +02:00
Markus Heiser 1416559f22 Update searx.data - update_engine_descriptions.py
./manage pyenv.cmd python ./searxng_extra/update/update_engine_descriptions.py

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-02 12:16:00 +02:00
Markus Heiser 2bf800a4b1 Update searx.data - update_currencies.py
./manage pyenv.cmd python ./searxng_extra/update/update_currencies.py

Closes: https://github.com/searxng/searxng/pull/1375
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-02 12:16:00 +02:00
Alexandre Flament f8f239fe1f Donation link: default value to searxng.org, can be hidden or custom
Add a new setting: general.donation_url

By default the value is https://docs.searxng.org/donate.html

When the value is false, the link is hidden

When the value is true, the link goes to the infopage donation,
the administrator can create a custom page.
2022-07-02 11:29:21 +02:00
searxng-bot 8376833d7d [translations] update from Weblate 2022-07-02 09:17:14 +00:00
Alexandre Flament bcded7686e [build] /static 2022-07-02 10:05:43 +02:00
Alexandre Flament e3e5d2bd22 Theme: all top right icons have labels including "Preferences" 2022-07-02 10:04:35 +02:00
searxng-bot 4272ef3117 [translations] update from Weblate
c6c13e8c - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
284f86fe - 2022-06-30 - Linerly <linerly@protonmail.com>
d659c9f2 - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
3d76fb71 - 2022-06-29 - wordpure <wordlesspure@gmail.com>
874e15dc - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
10f3978d - 2022-06-30 - Leonardo Colman <dev@leonardo.colman.com.br>
66556a49 - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
6c5a28a7 - 2022-06-30 - Markus Heiser <markus.heiser@darmarit.de>
9bb7dc8e - 2022-06-29 - Alexandre Flament <alex@al-f.net>
38bd6b55 - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
1aecb8f8 - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
9a74838e - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
3f139d79 - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
d3449b5f - 2022-06-29 - Markus Heiser <markus.heiser@darmarit.de>
2022-07-01 07:18:53 +00:00
Alexandre Flament 1617ef1e41
Update searx/infopage/en/donate.md
Co-authored-by: Émilien Devos <contact@emiliendevos.be>
2022-06-29 21:03:01 +02:00
Alexandre FLAMENT 0e503c990a Move donation page to docs.searxng.org and link to it from instances
Close #1378
2022-06-29 17:26:19 +00:00
Alexandre FLAMENT ecccf02a02 infopage: a .md file can be remove without crash
An administrator might decide to remove some of the .md files.
This commit make sure to not crash the application.
2022-06-29 17:25:07 +00:00
Markus Heiser eb3123e164
Merge pull request #1379 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-06-29 15:40:51 +02:00
dalf a89fca9d08 Update searx.data - update_ahmia_blacklist.py 2022-06-29 07:21:09 +00:00
Markus Heiser 3a75d3c1cc
Merge pull request #1376 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2022-06-29 08:45:29 +02:00
dalf 11def5155e Update searx.data - update_wikidata_units.py 2022-06-29 01:52:03 +00:00
dalf 21ab024469 Update searx.data - update_firefox_version.py 2022-06-29 01:51:46 +00:00
Alexandre Flament 0801f9a24e Add donate.md 2022-06-28 10:59:36 +02:00
Alexandre Flament 86f14fd066 [build] /static 2022-06-25 20:32:04 +02:00
Alexandre Flament 6e2b5f3d5a Theme: add Help and Donate links in all pages
Close https://github.com/searxng/searxng/issues/931
2022-06-25 20:31:40 +02:00
Alexandre Flament 4bedd7465c
Merge pull request #1346 from dalf/theme-dependencies-upgrade
Theme: dependencies upgrade
2022-06-25 19:27:42 +02:00
searxng-bot bfebaa15ad [translations] update from Weblate
d745649a - 2022-06-25 - Alexandre Flament <alex@al-f.net>
80c8f41f - 2022-06-25 - tents <remendne@pentrens.jp>
2022-06-25 15:49:33 +00:00
Alexandre Flament 0f3e98ace4 Theme: upgrade dependencies & minor update of the grunt scripts
Remove webfont grunt script
Update clean grunt script
2022-06-25 13:59:37 +02:00
searxng-bot dd2577e21d [translations] update from Weblate
b4ef9941 - 2022-06-20 - Markus Heiser <markus.heiser@darmarit.de>
a4ad5c56 - 2022-06-23 - sdebnath002 <shibnathdebnath@gmail.com>
e9640746 - 2022-06-19 - liimee <alt3753.7@gmail.com>
063e2d09 - 2022-06-22 - HACKKER <andriy.o.vovk@gmail.com>
da095274 - 2022-06-21 - Vander <vander.azevedo88@gmail.com>
4d632f14 - 2022-06-21 - Vander <vander.azevedo88@gmail.com>
136edb67 - 2022-06-20 - Alexandre Flament <alex@al-f.net>
25533b02 - 2022-06-21 - Muhammad Hussein Fattahizadeh <semnanweb@gmail.com>
030b5310 - 2022-06-18 - Markus Heiser <markus.heiser@darmarit.de>
2022-06-24 07:18:15 +00:00
Markus Heiser ed1ff4b8bc
Merge pull request #1357 from liimee/eng-3
Add curlie.org engine
2022-06-22 18:29:36 +02:00
ta 7c457fcf7a add curlie engine 2022-06-22 11:46:33 +07:00
Markus Heiser 88f62cf0df [fix] clean up templates / remove import of result_footer_rtl macro
A macro named 'result_footer_rtl' does not exists.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-06-20 19:00:10 +02:00
ta 8883aed132 [fix] google play apps engine: implement engines/google_play_apps.py 2022-06-18 16:02:39 +02:00
Alexandre Flament 189df7db4e
Merge pull request #1287 from dalf/style-center-2nd
Theme: add a preference to center the results (Oscar) (2nd edition)
2022-06-18 12:34:57 +02:00
Alexandre Flament 0539e38309 Workaround: index.html: remove image preload
Related to https://github.com/searxng/searxng/issues/1326

URL for the logo is referenced twice:
* in index.html for preloading: it contains the hash for cache busting (when static_use_hash: true)
* in searxng.min.css: to actually display the image. The URL doesn't contain the hash.

So the image preload actually loads twice the same image.

This commit removed the image preloading.
This is workaround: the real fix is to be able to use the URL with the hash in the CSS.
2022-06-18 09:04:13 +02:00
Alexandre Flament e6c3000909 [build] /static 2022-06-18 08:58:06 +02:00
Alexandre Flament 8a85d1b0c7 Theme: add a preference to center the results (Oscar) (2nd edition)
related to
* #1169
* #1281
* #1286
2022-06-18 08:54:24 +02:00
Alexandre Flament 5bcbec9b06 Fix: use sys.modules.copy() to avoid RuntimeError
use sys.modules.copy() to avoid "RuntimeError: dictionary changed size during iteration"
see https://github.com/python/cpython/issues/89516
and https://docs.python.org/3.10/library/sys.html#sys.modules

close https://github.com/searxng/searxng/issues/1342
2022-06-18 07:39:46 +02:00
Alexandre Flament a7b0b2ecbf
Merge pull request #1329 from samsaptidev/feature/privacypolicy_url
Add privacypolicy_url option
2022-06-18 07:26:40 +02:00
Léon Tiekötter 6bdc66b70e
[fix] mojeek engine: XPath
Update the XPath of the Mojeek engine.
2022-06-17 09:32:53 +02:00
searxng-bot 8e107a9ad6 [translations] update from Weblate
7d7f9823 - 2022-06-14 - Markus Heiser <markus.heiser@darmarit.de>
61912312 - 2022-06-15 - liimee <alt3753.7@gmail.com>
895d116e - 2022-06-16 - vmisovic <vladimir.misovic03@gmail.com>
2f55d1a3 - 2022-06-13 - Markus Heiser <markus.heiser@darmarit.de>
507db1e1 - 2022-06-10 - Markus Heiser <markus.heiser@darmarit.de>
1a7079d1 - 2022-06-12 - Markus Heiser <markus.heiser@darmarit.de>
aa30ed02 - 2022-06-10 - Stanisław Jankowski <stach.jankowski@gmail.com>
2022-06-17 07:17:59 +00:00
samsaptidev 31005595c9
Add privacypolicy_url option 2022-06-16 11:56:24 +02:00
ta e9cc6ab0e7 add pub.dev engine 2022-06-15 12:55:37 +02:00
Paul Braeuning d7a76f3772
Merge pull request #1322 from return42/fix-794
[fix] keyboard.js - highlightResult: don't steal focus on click event
2022-06-14 19:07:09 +02:00
Markus Heiser ef4239c68a [doc] fix some leftovers from ad964562c
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-06-14 16:31:41 +02:00
Markus Heiser 1a361e6635 [build] /static 2022-06-14 15:14:33 +02:00
Markus Heiser 882282d0e9 [fix] keyboard.js - highlightResult: don't steal focus on click event
For keyboard navigation the highlightResult() function in keyboard.js steals the
focus.  On a mouse click event (non keyboard action) the focus should resist
where it is, otherwise a marked region gets lost.  This is the reason why text
can't be selected when using simple theme with JS enabled.

Closes: https://github.com/searxng/searxng/issues/794
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-06-14 15:14:19 +02:00
Alexandre Flament 3ade7ffc26 [build] /static 2022-06-13 21:38:07 +02:00
Alexandre Flament fe1683c9c6 UX fix: when the user clicks on the search input, don't move the cursor at the end
Related to https://github.com/searxng/searxng/pull/1153#issuecomment-1154247988
2022-06-13 21:35:14 +02:00
Markus Heiser 9b0b6a2c90
Merge pull request #1313 from unixfox/help-rate-limit-google
add "warn" message to notify the admin that use_mobile_ui parameter exist
2022-06-12 17:07:13 +02:00
Alexandre Flament ee3f230d93 Autocomplete: don't suggest the current query.
Example of minor issue before this commit:
the autocompletion can suggest "Test" if the query is "Test".
2022-06-12 11:21:24 +02:00
Alexandre Flament 2455f1d06a
Merge pull request #1308 from allendema/add-yep-com-json
[enh] Add yep.com via json_engine
2022-06-12 11:09:04 +02:00
Markus Heiser 916f5f8b90
Merge pull request #1306 from return42/fix-1303
[fix] move locale code from webapp.py to locales.py and fix #1303
2022-06-12 10:56:59 +02:00
Markus Heiser ad964562ce [fix] move locale code from webapp.py to locales.py and fix #1303
To improve modularization this patch:

- moves *locale* related implementation from the webapp.py application to the
  locale.py module.

- The initialization of the locales is now done in the application (webapp) and
  is no longer done while importing searx.locales.

In the searx.locales module a new dictionary named `LOCALE_BEST_MATCH` has been
added.  In this dictionary we can map languages without a translation to
languages we have a translation for.

To fix #1303 zh-HK has been mapped to zh-Hant-TW (we do not need additional
translations of traditional Chinese)

Closes: https://github.com/searxng/searxng/issues/1303
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-06-12 10:52:26 +02:00
Emilien Devos 0d4c066119 notify the user that use_mobile_ui parameter exist 2022-06-11 17:20:56 +02:00
Allen fd9a13a3e5 [enh] Initial no paging support for Yep.com
Upstream example query:
https://yep.com/web?q=test

https://yep.com/about
2022-06-11 14:17:44 +02:00
Alexandre Flament cd2dd5dd55 Wikidata engine: ignore dummy entities
Close #641
2022-06-11 11:09:21 +02:00
Alexandre Flament d068b67a71 Wikidata engine: minor change of the SPARQL request
The engine can be slow especially when the query won't return any answer.
See https://www.mediawiki.org/wiki/Wikidata_Query_Service/User_Manual/MWAPI#Find_articles_in_Wikipedia_speaking_about_cheese_and_see_which_Wikibase_items_they_correspond_to

Related to #1290
2022-06-11 10:50:11 +02:00
searxng-bot 1e82dedcf3 [translations] update from Weblate
25debdad - 2022-06-07 - Markus Heiser <markus.heiser@darmarit.de>
4ea83323 - 2022-06-08 - Markus Heiser <markus.heiser@darmarit.de>
034a61d2 - 2022-06-07 - Markus Heiser <markus.heiser@darmarit.de>
12598dee - 2022-06-08 - Markus Heiser <markus.heiser@darmarit.de>
9ebd1a60 - 2022-06-06 - Markus Heiser <markus.heiser@darmarit.de>
2022-06-10 07:19:19 +00:00
Maciej Błędkowski 98c4156f12
Fixed typo in settings.yml 2022-06-09 17:08:14 +02:00
Alexandre Flament ea0cddba0b
Merge pull request #1047 from return42/redis-lib
Add a redis library to generalize DB functions we need in SearXNG.
2022-06-06 10:59:11 +02:00
Alexandre Flament 06217ef184 [build] /static 2022-06-05 23:06:19 +02:00
Alexandre Flament 9723cef99a Revert "Theme: add a preference to center the results (Oscar)"
This reverts commit 4237f5fd50.
2022-06-05 23:03:26 +02:00
Alexandre Flament f8f6b95d8f
Merge pull request #1281 from dalf/style-center
Theme: add a preference to center the results
2022-06-05 21:39:58 +02:00
Alexandre Flament 2c62360e6e [build] /static 2022-06-05 20:00:11 +02:00
Alexandre Flament 4237f5fd50 Theme: add a preference to center the results (Oscar)
related to #1169
2022-06-05 19:59:49 +02:00
Markus Heiser 0c489a25ac [fix] version.py: git format '%cs' is not downward compatible
Committer date, short format YYYY-MM-DD ('%cs') [1] is not supported by older git
versions.  Instead use '%cd' committer date (format respects --date= option) [2].

[1] https://www.git-scm.com/docs/git-show#Documentation/git-show.txt-emcsem
[2] https://www.git-scm.com/docs/git-show#Documentation/git-show.txt-emcdem

Suggested-by: @ravermeister https://github.com/searxng/searxng/issues/1251#issuecomment-1146282429
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-06-04 09:15:26 +02:00
Markus Heiser 2de007138c [fix] prepare for pylint 2.14.0
Remove issue reported by Pylint 2.14.0:

- no-self-use: has been moved to optional extension [1]
- The refactoring checker now also raises 'consider-using-generator' messages
  for max(), min() and sum(). [2]

.pylintrc:
  - <option name>-hint has been removed since long, Pylint 2.14.0 raises an
    error on invalid options
  - bad-continuation and bad-whitespace have been removed [3]

[1] https://pylint.pycqa.org/en/latest/whatsnew/2/2.14/summary.html#removed-checkers
[2] https://pylint.pycqa.org/en/latest/whatsnew/2/2.14/full.html#what-s-new-in-pylint-2-14-0
[2] https://pylint.pycqa.org/en/latest/whatsnew/2/2.6/summary.html#summary-release-highlights

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-06-03 15:41:52 +02:00
searxng-bot bc8cd9cb8c [translations] update from Weblate
1f71567c - 2022-06-01 - karlis69420 <korlass.karlis2@gmail.com>
67ff4da0 - 2022-05-27 - Tony <papetouses@gmail.com>
57bf9bd7 - 2022-05-29 - Markus Heiser <markus.heiser@darmarit.de>
5f63090b - 2022-05-29 - Markus Heiser <markus.heiser@darmarit.de>
4b675666 - 2022-05-30 - Markus Heiser <markus.heiser@darmarit.de>
9fcfccff - 2022-06-02 - Markus Heiser <markus.heiser@darmarit.de>
b28ac961 - 2022-06-01 - Markus Heiser <markus.heiser@darmarit.de>
ec7b3c14 - 2022-05-29 - Markus Heiser <markus.heiser@darmarit.de>
622896c1 - 2022-05-31 - Markus Heiser <markus.heiser@darmarit.de>
53d0f115 - 2022-05-31 - Joan Montané <joan@montane.cat>
e16d889a - 2022-06-02 - Markus Heiser <markus.heiser@darmarit.de>
2c5337a5 - 2022-06-01 - karlis69420 <korlass.karlis2@gmail.com>
2022-06-03 07:18:49 +00:00
Alexandre FLAMENT 7e8a60fb27 [build] /static 2022-06-02 20:35:49 +00:00
Alexandre FLAMENT fbad93e808 Theme: enable autofocus of #q only on the index page and when the width > 50em
Related to #1270
2022-06-02 20:33:31 +00:00
Markus Heiser 96dc4369d5
Merge pull request #1259 from allendema/petal-images
[enh] Add Petalsearch Images engine
2022-06-02 14:59:24 +02:00
Léon Tiekötter 7e95d6bb79 [mod] image proxy: allow binary/octet-stream mime type
The Petal Search Images engine sends the thumbnails with the binary/octet-stream mime type.
2022-06-02 14:32:37 +02:00
Allen 43dc9eb7d6 [enh] Initial Petalsearch Images support
Upstream example query:

  https://petalsearch.com/search?query=test&channel=image&ps=50&pn=1&region=de-de&ss_mode=off&ss_type=normal

Depending on locale it will internally use some/all results from other
engines. See:

  https://seirdy.one/posts/2021/03/10/search-engines-with-own-indexes/#general-indexing-search-engines
2022-06-02 14:32:37 +02:00
Markus Heiser e568da2314
Merge pull request #1266 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2022-06-01 13:49:48 +02:00
Markus Heiser 84a5e48a90
Merge pull request #1265 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2022-06-01 11:29:41 +02:00
Markus Heiser 78968843a8
Merge pull request #1267 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2022-06-01 11:24:35 +02:00
Markus Heiser a9251cfeb4
Merge pull request #1268 from searxng/update_data_update_engine_descriptions.py
Update searx.data - update_engine_descriptions.py
2022-06-01 11:24:00 +02:00
Markus Heiser 61ee915064
Merge pull request #1264 from searxng/update_data_update_languages.py
Update searx.data - update_languages.py
2022-06-01 10:34:19 +02:00
dalf fda176144e Update searx.data - update_engine_descriptions.py 2022-06-01 06:40:37 +00:00
dalf f37b9978cb Update searx.data - update_currencies.py 2022-06-01 06:32:10 +00:00
dalf a93170725f Update searx.data - update_firefox_version.py 2022-06-01 06:31:57 +00:00
dalf 8d6d32bf6e Update searx.data - update_ahmia_blacklist.py 2022-06-01 06:31:54 +00:00
dalf 012d7fcaa0 Update searx.data - update_languages.py 2022-06-01 06:31:54 +00:00
dalf ab9616c2cc Update searx.data - update_wikidata_units.py 2022-06-01 06:31:52 +00:00
Markus Heiser 1a8ff10e30 [mod] redislib - optimize LUA script registration.
Instead of register the LUA script on each call, the LUA script is registered
once and the `Script` object is cached in global storage.

[1] https://github.com/searxng/searxng/pull/1047#discussion_r884143305

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-05-30 11:21:09 +02:00
Markus Heiser 4b185f0e11 [mod] plugins/limiter.py - use searx.redislib.incr_sliding_window
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-05-30 11:10:30 +02:00
Markus Heiser 08876df7c2 [mod] collection of redis functions and lua scripts (initial)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-05-30 11:10:30 +02:00
Léon Tiekötter 167f635924
[engine] petal search news
Add Petal Search News to SearXNG via XPath
2022-05-29 22:49:41 +02:00