gancio-upstream/server/api/controller/geocoding.js
lesion 08e4fe856c
Squashed commit of the following:
commit f31e7ae2c1
Author: joenepraat <joenepraat@posteo.org>
Date:   Thu Mar 30 13:17:01 2023 +0000

    Translated using Weblate (Dutch)

    Currently translated at 94.5% (297 of 314 strings)

    Translation: Gancio/Web
    Translate-URL: https://hosted.weblate.org/projects/gancio/web/nl/

commit 96486b5945
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 30 11:18:39 2023 +0200

    minor

commit 9524fd52f3
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 30 00:08:27 2023 +0200

    update changelog, releasing v1.6.8

commit df4ec69128
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 29 12:41:52 2023 +0200

    force vuetify to not use google fonts

commit e35595df82
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 21:54:06 2023 +0200

    layout

commit ee8a9843b3
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 21:48:26 2023 +0200

    minor

commit 2608761a44
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 19:04:49 2023 +0200

    update deps

commit d7c8de7580
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 19:04:41 2023 +0200

    minor

commit 6b55ba1708
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 19:04:16 2023 +0200

    use new luxon in rss template, fixing locale and timezone #254

commit fc52107bd9
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 19:02:08 2023 +0200

    use luxon instead of dayjs server side too

commit f5604a03bc
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 18:55:57 2023 +0200

    unit test for recurrent events

commit 3e81d1dfb3
Merge: f960400 e750fc8
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 28 18:51:34 2023 +0200

    Merge remote-tracking branch 'weblate/master'

commit f960400085
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 27 17:19:27 2023 +0200

    improve index/tag/place layout

commit 0682feaaf8
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 27 17:18:57 2023 +0200

    minor with theme admin colors

commit e750fc8e81
Author: josé m <correoxm@disroot.org>
Date:   Sun Mar 26 07:48:06 2023 +0000

    Translated using Weblate (Galician)

    Currently translated at 100.0% (314 of 314 strings)

    Translation: Gancio/Web
    Translate-URL: https://hosted.weblate.org/projects/gancio/web/gl/

commit 4c74fd3227
Author: gallegonovato <fran-carro@hotmail.es>
Date:   Sat Mar 25 11:23:48 2023 +0000

    Translated using Weblate (Spanish)

    Currently translated at 100.0% (314 of 314 strings)

    Translation: Gancio/Web
    Translate-URL: https://hosted.weblate.org/projects/gancio/web/es/

commit 428a94290f
Author: joenepraat <joenepraat@posteo.org>
Date:   Thu Mar 23 15:15:58 2023 +0000

    Translated using Weblate (Dutch)

    Currently translated at 95.5% (299 of 313 strings)

    Translation: Gancio/Web
    Translate-URL: https://hosted.weblate.org/projects/gancio/web/nl/

commit 373f78cd4e
Author: joenepraat <joenepraat@posteo.org>
Date:   Thu Mar 23 17:47:21 2023 +0000

    Translated using Weblate (Dutch)

    Currently translated at 7.6% (1 of 13 strings)

    Translation: Gancio/Email
    Translate-URL: https://hosted.weblate.org/projects/gancio/email/nl/

commit 2d11d88e8f
Merge: ea3066c e2fd5f8
Author: lesion <lesion@autistici.org>
Date:   Sat Mar 25 09:34:44 2023 +0100

    Merge remote-tracking branch 'weblate/master'

commit e2fd5f8b93
Author: joenepraat <joenepraat@posteo.org>
Date:   Thu Mar 23 15:15:58 2023 +0000

    Translated using Weblate (Dutch)

    Currently translated at 95.5% (299 of 313 strings)

    Translation: Gancio/Web
    Translate-URL: https://hosted.weblate.org/projects/gancio/web/nl/

commit 8280eb7c7a
Author: joenepraat <joenepraat@posteo.org>
Date:   Thu Mar 23 17:47:21 2023 +0000

    Translated using Weblate (Dutch)

    Currently translated at 7.6% (1 of 13 strings)

    Translation: Gancio/Email
    Translate-URL: https://hosted.weblate.org/projects/gancio/email/nl/

commit ea3066c34e
Author: lesion <lesion@autistici.org>
Date:   Fri Mar 24 16:03:08 2023 +0100

    people could choose custom colors

commit 8149ea23da
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 15:39:02 2023 +0100

    moving vuetify configuration to "middleware"

commit 7e6130155a
Author: lesion <lesion@autistici.org>
Date:   Fri Mar 10 21:58:02 2023 +0100

    start with custom color

commit e2b07a06bd
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 23 13:11:15 2023 +0100

    release WPGancio 1.7

commit b91774ac39
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 23 13:09:10 2023 +0100

    fix tags merge in wp plugin and end_datetime

commit c8493d0810
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 18:45:48 2023 +0100

    use new $time plugin instead of filters, fix #252

commit 780938ef91
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 16:51:02 2023 +0100

    v1.6.7

commit 442f88f322
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 16:49:37 2023 +0100

    minor

commit 9f90df2bfc
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 16:24:08 2023 +0100

    v.1.6.6

commit 71fdeb6ff8
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 16:17:02 2023 +0100

    some old event was flagged has multidate but without an end_datetime?

    fix #245

commit e6977368c5
Author: lesion <lesion@autistici.org>
Date:   Wed Mar 22 13:41:50 2023 +0100

    revert Intl, node is not ready, fix #250

commit eb2bf32162
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 21 16:47:47 2023 +0100

    release v1.6.5

commit 0ebb467630
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 21 01:15:35 2023 +0100

    minor

commit 934466b2ec
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 20 21:09:58 2023 +0100

    add modules in package

commit ec62ad9ba8
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 20 21:09:43 2023 +0100

    v-lazy in collection page too

commit d9f093fdbb
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 20 12:55:17 2023 +0100

    releasing v1.6.5

commit 2ffd2aff82
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 20 12:53:41 2023 +0100

    enable task manager in dev mode

commit 02f138e0f2
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 20 12:40:39 2023 +0100

    update CHANGELOG

commit b8e096ee39
Author: lesion <lesion@autistici.org>
Date:   Mon Mar 20 12:40:19 2023 +0100

    minor with 2w recurrent event frequency

commit 8f221fb69c
Author: lesion <lesion@autistici.org>
Date:   Sun Mar 19 23:33:55 2023 +0100

    minor

commit 079bcd4af2
Merge: 99d78e2 ae990fc
Author: lesion <lesion@autistici.org>
Date:   Sun Mar 19 23:28:44 2023 +0100

    Merge remote-tracking branch 'sedum/feat/ssr-proxy'

commit 99d78e2492
Author: lesion <lesion@autistici.org>
Date:   Sun Mar 19 23:26:57 2023 +0100

    Squashed commit of the following:

    commit 5c0d380740
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:22:25 2023 +0100

        update yarn.lock

    commit 909ee71ecb
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:22:09 2023 +0100

        Squashed commit of the following:

        commit fc8a9f4506
        Author: lesion <lesion@autistici.org>
        Date:   Tue Mar 14 16:42:24 2023 +0100

            address some issues with recurrent events, fix #247

        commit f7357666ca
        Author: lesion <lesion@autistici.org>
        Date:   Tue Mar 14 16:16:52 2023 +0100

            fix event import from URL

        commit e1bca6f46a
        Author: lesion <lesion@autistici.org>
        Date:   Tue Mar 14 16:15:42 2023 +0100

             add Duch (nl) locale (thanks @jeoenepraat)

        commit 5f8afdbc12
        Merge: 57a052a 92ca5ab
        Author: lesion <lesion@autistici.org>
        Date:   Tue Mar 14 11:39:50 2023 +0100

            Merge remote-tracking branch 'weblate/master'

        commit 57a052a7fa
        Merge: 63d1d2e 55137d2
        Author: lesion <lesion@autistici.org>
        Date:   Tue Mar 14 11:39:33 2023 +0100

            Merge commit '55137d2ac23549e633f36ad10139fd4168c2645f'

        commit 92ca5abf5e
        Author: joenepraat <joenepraat@posteo.org>
        Date:   Fri Mar 10 23:16:32 2023 +0000

            Translated using Weblate (Dutch)

            Currently translated at 68.3% (214 of 313 strings)

            Translation: Gancio/Web
            Translate-URL: https://hosted.weblate.org/projects/gancio/web/nl/

        commit 63d1d2ee53
        Author: lesion <lesion@autistici.org>
        Date:   Thu Mar 9 21:41:06 2023 +0100

            minor

        commit d2759a55a5
        Author: lesion <lesion@autistici.org>
        Date:   Thu Mar 9 21:38:39 2023 +0100

            wrong user / admin merge dark theme settings - fix #244

        commit b401d829db
        Author: lesion <lesion@autistici.org>
        Date:   Thu Mar 9 21:24:45 2023 +0100

            remove a small warning

        commit ccffe5f7b0
        Author: lesion <lesion@autistici.org>
        Date:   Fri Feb 24 11:40:36 2023 +0100

            push tags on release

        commit 55137d2ac2
        Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
        Date:   Thu Feb 23 23:56:16 2023 +0000

            Bump sequelize from 6.28.0 to 6.29.0

            Bumps [sequelize](https://github.com/sequelize/sequelize) from 6.28.0 to 6.29.0.
            - [Release notes](https://github.com/sequelize/sequelize/releases)
            - [Commits](https://github.com/sequelize/sequelize/compare/v6.28.0...v6.29.0)

            ---
            updated-dependencies:
            - dependency-name: sequelize
              dependency-type: direct:production
            ...

            Signed-off-by: dependabot[bot] <support@github.com>

        commit b654f29d8b
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 13:21:17 2023 +0100

            update changelog

        commit 0cd1ee9d89
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 13:17:29 2023 +0100

            increase rate limit max requests per minutes

        commit b6dafc082e
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 08:45:39 2023 +0100

            minor

        commit 0fa7769844
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 08:45:18 2023 +0100

            location saving is not working when geocoding is disabled, fix #238

        commit 07f9e2d9ee
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 08:33:40 2023 +0100

            really fix #232

        commit bae930799e
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 08:33:09 2023 +0100

            downgrade mariadb (sequelize is not ready)

        commit d733d7fef1
        Author: lesion <lesion@autistici.org>
        Date:   Wed Feb 22 00:16:28 2023 +0100

            aargh

        commit 98b22aad70
        Author: lesion <lesion@autistici.org>
        Date:   Tue Feb 21 00:56:06 2023 +0100

            minor

        commit fc098b603d
        Author: lesion <lesion@autistici.org>
        Date:   Tue Feb 21 00:55:44 2023 +0100

            missing i18n in setup, fix #239

        commit 3eaf72af19
        Merge: bba196b d6c6034
        Author: lesion <lesion@autistici.org>
        Date:   Mon Feb 20 21:17:37 2023 +0100

            Merge remote-tracking branch 'weblate/master'

        commit bba196b068
        Author: lesion <lesion@autistici.org>
        Date:   Sat Feb 18 00:05:52 2023 +0100

            update changelog, v1.6.3

        commit bb9f7cca47
        Author: lesion <lesion@autistici.org>
        Date:   Sat Feb 18 00:04:28 2023 +0100

            minor

        commit 80d2dbd06b
        Author: lesion <lesion@autistici.org>
        Date:   Fri Feb 17 23:40:28 2023 +0100

            minor

        commit d6c6034630
        Author: fadelkon <fadelkon@posteo.net>
        Date:   Thu Feb 16 22:09:23 2023 +0000

            Translated using Weblate (Catalan)

            Currently translated at 100.0% (313 of 313 strings)

            Translation: Gancio/Web
            Translate-URL: https://hosted.weblate.org/projects/gancio/web/ca/

        commit d125cf1506
        Author: lesion <lesion@autistici.org>
        Date:   Fri Feb 17 21:56:31 2023 +0100

            set a default user_locale path

        commit 4367960a62
        Merge: c8cc5c6 87dd179
        Author: lesion <lesion@autistici.org>
        Date:   Tue Feb 7 17:46:58 2023 +0100

            Merge branch 'master' into gh

        commit c8cc5c6c97
        Merge: 88e0c90 550e221
        Author: lesion <lesion@autistici.org>
        Date:   Mon Jan 9 17:15:21 2023 +0100

            Merge branch 'master' into gh

        commit 88e0c90a66
        Merge: 421aa12 f212ac1
        Author: lesion <lesion@autistici.org>
        Date:   Thu Dec 15 09:54:41 2022 +0100

            Merge branch 'master' into gh

        commit 421aa12781
        Merge: 5f6cc46 b3488e7
        Author: lesion <lesion@autistici.org>
        Date:   Wed Sep 28 12:26:08 2022 +0200

            Merge branch 'master' into gh

        commit 5f6cc46cdc
        Merge: b66feb9 171d968
        Author: lesion <lesion@autistici.org>
        Date:   Mon Aug 8 00:08:12 2022 +0200

            Merge branch 'master' into gh

        commit b66feb92e2
        Merge: 80c55d5 05d068f
        Author: lesion <lesion@autistici.org>
        Date:   Tue Jun 21 23:48:40 2022 +0200

            Merge branch 'master' into gh

        commit 80c55d5601
        Merge: 814090e a154fdf
        Author: lesion <lesion@autistici.org>
        Date:   Mon Jun 6 17:27:00 2022 +0200

            Merge branch 'master' into gh

        commit 814090e9b6
        Merge: 616c542 2e3aba9
        Author: lesion <lesion@autistici.org>
        Date:   Mon Jun 6 17:19:31 2022 +0200

            Merge branch 'master' into gh

        commit 616c54229a
        Merge: e4cb22e 82dcaf9
        Author: lesion <lesion@autistici.org>
        Date:   Mon Jun 6 16:57:05 2022 +0200

            Merge branch 'master' into gh

        commit e4cb22ee33
        Merge: 5dddfbd 8657937
        Author: lesion <lesion@autistici.org>
        Date:   Fri Mar 11 23:41:22 2022 +0100

            Merge branch 'master' into gh

        commit 5dddfbd29e
        Merge: 60e9d95 10c6b0d
        Author: lesion <lesion@autistici.org>
        Date:   Fri Mar 11 23:22:12 2022 +0100

            Merge branch 'master' into gh

        commit 60e9d95ba8
        Merge: 79445ca ad93f83
        Author: lesion <lesion@autistici.org>
        Date:   Tue Dec 7 01:35:18 2021 +0100

            Merge branch 'master' into gh

        commit 79445ca8a7
        Merge: 9472d8d cd313ef
        Author: les <lesion@autistici.org>
        Date:   Thu Jun 24 21:52:25 2021 +0200

            Merge branch 'master' into gh

        commit 9472d8d919
        Merge: f960149 9e9643e
        Author: les <lesion@autistici.org>
        Date:   Fri Mar 26 22:27:41 2021 +0100

            Merge branch 'dev' into gh

        commit f9601492dc
        Author: les <lesion@autistici.org>
        Date:   Fri Dec 6 11:30:41 2019 +0100

            update dependencies

        commit f8c7fa2b45
        Author: les <lesion@autistici.org>
        Date:   Fri Dec 6 11:41:13 2019 +0100

            minor

        commit 33ca266535
        Author: les <lesion@autistici.org>
        Date:   Fri Dec 6 11:38:15 2019 +0100

            prepare gh as a mirror

    commit 5c88754116
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:18:40 2023 +0100

        update deps

    commit 7eac4fce32
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:18:25 2023 +0100

        refactoring event detail page

    commit dc9ca88bc6
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:17:35 2023 +0100

        show hide boosts/bookmarks, fix #241

    commit d4a25b1dd0
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:13:58 2023 +0100

        minor with unixFormat

    commit 239d6bcab1
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:12:25 2023 +0100

        minor

    commit b149f980db
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:12:05 2023 +0100

        minor

    commit 6f2955c584
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:11:49 2023 +0100

        minor

    commit dd586c38c9
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:11:31 2023 +0100

        minor on style

    commit 544823717b
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:11:15 2023 +0100

        fix multidate issue, go to event on save

    commit 9ef0c75d03
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 23:09:47 2023 +0100

        use v-lazy, improve search, full tag/place events

    commit ac91072b79
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 22:47:51 2023 +0100

        increase DDOS limiter to 250 req/min

    commit d0ca92efb4
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 22:47:14 2023 +0100

        update changelog

    commit 2d54f19225
    Author: lesion <lesion@autistici.org>
    Date:   Sun Mar 19 22:46:51 2023 +0100

        use luxon instead of dayjs, new $time plugin

commit ae990fc370
Author: sedum <sedum@oziosi.org>
Date:   Thu Mar 16 17:29:48 2023 +0100

    add support for server side http proxy, close #240

commit fc8a9f4506
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 14 16:42:24 2023 +0100

    address some issues with recurrent events, fix #247

commit f7357666ca
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 14 16:16:52 2023 +0100

    fix event import from URL

commit e1bca6f46a
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 14 16:15:42 2023 +0100

     add Duch (nl) locale (thanks @jeoenepraat)

commit 5f8afdbc12
Merge: 57a052a 92ca5ab
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 14 11:39:50 2023 +0100

    Merge remote-tracking branch 'weblate/master'

commit 57a052a7fa
Merge: 63d1d2e 55137d2
Author: lesion <lesion@autistici.org>
Date:   Tue Mar 14 11:39:33 2023 +0100

    Merge commit '55137d2ac23549e633f36ad10139fd4168c2645f'

commit 92ca5abf5e
Author: joenepraat <joenepraat@posteo.org>
Date:   Fri Mar 10 23:16:32 2023 +0000

    Translated using Weblate (Dutch)

    Currently translated at 68.3% (214 of 313 strings)

    Translation: Gancio/Web
    Translate-URL: https://hosted.weblate.org/projects/gancio/web/nl/

commit 63d1d2ee53
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 9 21:41:06 2023 +0100

    minor

commit d2759a55a5
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 9 21:38:39 2023 +0100

    wrong user / admin merge dark theme settings - fix #244

commit b401d829db
Author: lesion <lesion@autistici.org>
Date:   Thu Mar 9 21:24:45 2023 +0100

    remove a small warning

commit 55137d2ac2
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Feb 23 23:56:16 2023 +0000

    Bump sequelize from 6.28.0 to 6.29.0

    Bumps [sequelize](https://github.com/sequelize/sequelize) from 6.28.0 to 6.29.0.
    - [Release notes](https://github.com/sequelize/sequelize/releases)
    - [Commits](https://github.com/sequelize/sequelize/compare/v6.28.0...v6.29.0)

    ---
    updated-dependencies:
    - dependency-name: sequelize
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <support@github.com>

commit 4367960a62
Merge: c8cc5c6 87dd179
Author: lesion <lesion@autistici.org>
Date:   Tue Feb 7 17:46:58 2023 +0100

    Merge branch 'master' into gh

commit c8cc5c6c97
Merge: 88e0c90 550e221
Author: lesion <lesion@autistici.org>
Date:   Mon Jan 9 17:15:21 2023 +0100

    Merge branch 'master' into gh

commit 88e0c90a66
Merge: 421aa12 f212ac1
Author: lesion <lesion@autistici.org>
Date:   Thu Dec 15 09:54:41 2022 +0100

    Merge branch 'master' into gh

commit 421aa12781
Merge: 5f6cc46 b3488e7
Author: lesion <lesion@autistici.org>
Date:   Wed Sep 28 12:26:08 2022 +0200

    Merge branch 'master' into gh

commit 5f6cc46cdc
Merge: b66feb9 171d968
Author: lesion <lesion@autistici.org>
Date:   Mon Aug 8 00:08:12 2022 +0200

    Merge branch 'master' into gh

commit b66feb92e2
Merge: 80c55d5 05d068f
Author: lesion <lesion@autistici.org>
Date:   Tue Jun 21 23:48:40 2022 +0200

    Merge branch 'master' into gh

commit 80c55d5601
Merge: 814090e a154fdf
Author: lesion <lesion@autistici.org>
Date:   Mon Jun 6 17:27:00 2022 +0200

    Merge branch 'master' into gh

commit 814090e9b6
Merge: 616c542 2e3aba9
Author: lesion <lesion@autistici.org>
Date:   Mon Jun 6 17:19:31 2022 +0200

    Merge branch 'master' into gh

commit 616c54229a
Merge: e4cb22e 82dcaf9
Author: lesion <lesion@autistici.org>
Date:   Mon Jun 6 16:57:05 2022 +0200

    Merge branch 'master' into gh

commit e4cb22ee33
Merge: 5dddfbd 8657937
Author: lesion <lesion@autistici.org>
Date:   Fri Mar 11 23:41:22 2022 +0100

    Merge branch 'master' into gh

commit 5dddfbd29e
Merge: 60e9d95 10c6b0d
Author: lesion <lesion@autistici.org>
Date:   Fri Mar 11 23:22:12 2022 +0100

    Merge branch 'master' into gh

commit 60e9d95ba8
Merge: 79445ca ad93f83
Author: lesion <lesion@autistici.org>
Date:   Tue Dec 7 01:35:18 2021 +0100

    Merge branch 'master' into gh

commit 79445ca8a7
Merge: 9472d8d cd313ef
Author: les <lesion@autistici.org>
Date:   Thu Jun 24 21:52:25 2021 +0200

    Merge branch 'master' into gh

commit 9472d8d919
Merge: f960149 9e9643e
Author: les <lesion@autistici.org>
Date:   Fri Mar 26 22:27:41 2021 +0100

    Merge branch 'dev' into gh

commit f9601492dc
Author: les <lesion@autistici.org>
Date:   Fri Dec 6 11:30:41 2019 +0100

    update dependencies

commit f8c7fa2b45
Author: les <lesion@autistici.org>
Date:   Fri Dec 6 11:41:13 2019 +0100

    minor

commit 33ca266535
Author: les <lesion@autistici.org>
Date:   Fri Dec 6 11:38:15 2019 +0100

    prepare gh as a mirror
2023-04-03 16:39:26 +02:00

122 lines
No EOL
3.8 KiB
JavaScript

const log = require('../../log')
const nominatim = require('../../services/geocoding/nominatim')
const photon = require('../../services/geocoding/photon')
const axios = require('axios')
const { version } = require('../../../package.json')
let d = 0 // departure time
let h = 0 // hit geocoding provider time (aka Latency)
const geocodingController = {
/**
* Limit provider api usage.
* From https://operations.osmfoundation.org/policies/nominatim/
* [Requirements] No heavy uses (an absolute maximum of 1 request per second).
* [Websites and Apps]
* - Note that the usage limits above apply per website/application: the sum of traffic by all your users should not exceed the limits.
* - If at all possible, set up a proxy and also enable caching of requests.
*/
providerRateLimit (req, res, next, providerCache) {
let a = Date.now(); // arrival time
let dprev = d
d = dprev + 1000 + h
// console.log('a: ' + a)
// console.log('dprev: ' + dprev)
// console.log('d: ' + d)
// if the same request was already cached skip the delay mechanism
if (providerCache.get(req.params.place_details)) {
if (a < d) {
log.warn('More than 1 request per second to geocoding api. This from ' + req.ip + ' . The response data is served from memory-cache.')
}
// reset departure time because there is no need to ask provider
d = dprev
return next()
}
if (d === 0 || a > d) {
// no-queue or old-queue
// console.log('No queue or Old queue')
// arrival time + 10ms estimated computing time
d = a + 10
next()
} else {
// fresh queue
// console.log('Fresh queue')
let wait = d - a
// console.log('Waiting '+ wait)
log.warn('More than 1 request per second to geocoding api. This from ' + req.ip + ' . Applying ToS padding before asking to provider. The response data is now cached.')
setTimeout(() => {
next()
}, wait)
}
},
async nominatimRateLimit(req, res, next) {
process.env.NODE_ENV === 'test' ? next() : geocodingController.providerRateLimit(req, res, next, nominatim.cache)
},
async photonRateLimit(req, res, next) {
process.env.NODE_ENV === 'test' ? next() : geocodingController.providerRateLimit(req, res, next, photon.cache)
},
async checkInCache (req, res, details, providerCache) {
const ret = await providerCache.get(details)
if (ret) {
return ret
} else {
return
}
},
async queryProvider(req, res, details, provider) {
let RTTstart = Date.now()
// console.log('Asking Provider: ' + RTTstart)
const ret = await axios.get(`${provider.endpoint(req, res)}`, {
params: provider.getParams(req, res),
headers: { 'User-Agent': `gancio ${version}` }
})
if (ret) {
let RTTend = Date.now()
// console.log('Asking Provider: ' + RTTend)
// Save the hit time (aka Latency)
// console.log('Saving latency h: ' + h)
h = (RTTend - RTTstart) / 2
}
// Cache the response data
provider.cache.put(details, ret.data, 1000 * 60 * 60 * 24);
// console.log(cache.keys())
// console.log(cache.exportJson())
return ret.data
},
async _nominatim (req, res) {
const details = req.params.place_details
const ret = await geocodingController.checkInCache(req, res, details, nominatim.cache) ||
await geocodingController.queryProvider(req, res, details, nominatim)
return res.json(ret)
},
async _photon (req, res) {
const details = req.params.place_details
const ret = await geocodingController.checkInCache(req, res, details, photon.cache) ||
await geocodingController.queryProvider(req, res, details, photon)
return res.json(ret)
},
}
module.exports = geocodingController