Compare commits

...

300 Commits

Author SHA1 Message Date
Norwin ee037e57fa Translated using Weblate (German)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/de/
2022-03-29 13:58:58 +02:00
Thebigal Wisi 66055e706a Translated using Weblate (German)
Currently translated at 100.0% (324 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/de/
2022-03-29 13:58:58 +02:00
Norwin 9bc8342a32 Translated using Weblate (German)
Currently translated at 100.0% (324 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/de/
2022-03-29 13:58:58 +02:00
fluxx 2e9bb1e1fd Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
Thorsten Panknin d81e584e24 Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
Thebigal Wisi a5c684b050 Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
tunda faee93fe43 Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
Norwin 8ec2cfe17f Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
Thebigal Wisi f4bfc8e5f3 Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
Norwin 874ec0fa49 Translated using Weblate (German)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:58 +02:00
Kira Sinn e1e0cb5030 Translated using Weblate (German)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/de/
2022-03-29 13:58:58 +02:00
Thomas Citharel 2b3be8a5d2 Add CHANGELOG entry for 2.1.0
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 81a9c5011b Fix tests after category changes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 0ee7e649a7 Allow to register custom categories
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 00c3212950 Introduce event categories
Closes #1056

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 762d20213a Fix first-day-of-week prop in event edition
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 13fbc9667d Debounce tag input autocomplete
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 4830750a1d Update deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel bfc25b115a Use specific version of Docker dind
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Berto Te 27ea14f8f2 Translated using Weblate (Spanish)
Currently translated at 100.0% (209 of 209 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/es/
2022-03-29 13:58:58 +02:00
Thomas Citharel 5f64eff8d3 Follow-up to 969cfc78be
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 774e4a514c Show error messages contextually when creating a group
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 16fd012e9b Update translations after adding translatable string
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel c2f0ee7928 Return a proper error directly when a group name conflicts
And translate the error

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 29062ff883 Allow GraphQL Error handler return custom Mobilizon.GraphQL.Error
directly

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel d075522f75 Attribute errors with field property to the correct property
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 96b93ac841 Provide group creation changeset errors as well to absinthe
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 2a2e5808f5 Show only 3 lines of description on group card
Closes #1021

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel bd074cf9fc Translated using Weblate (French (France) (fr_FR))
Currently translated at 99.9% (1307 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/fr_FR/
2022-03-29 13:58:58 +02:00
Marco Ciampa 11ac1631f0 Translated using Weblate (Italian)
Currently translated at 94.1% (305 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/it/
2022-03-29 13:58:58 +02:00
Thomas Citharel d5e8330c7f Expose member count in AP data
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 48af135fd6 Clear all ics/feed caches when modifying events/posts/actors
Closes #1059

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 0994a8bbae Pass the date to getTimezoneOffset() so that the DST is accounted for
See https://github.com/marnusw/date-fns-tz#gettimezoneoffset

Closes #1069

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 25ac2ab5e5 Update deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 97989f8de1 Fix wrong prop initialization
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel e3b4d29a43 Remove the oc locale
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel ef4be72b7f Format GraphQL block in test
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 9c53888c30 Fix timeouts in tests by removing async: true for DB tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel c1ed270aa6 Upgrade buildx version in CI
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 8d85c3ed8f Fix embed of actor card
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 680463a5f9 Fix loading list of languages after ex_cldr update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel aa56724bef Add fallbackRootWithEmptyString when languages have empty strings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 5c65a4b892 Fix invalid GraphQL request for event creation/update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel b849a63cc6 Make GraphQL parameters strict following Absinthe 1.7 validating
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 379e97107f Update pattern matching for Oban.drain_queue following update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 2d99fe877c Refactor to avoid calling Mobilizon.Cldr.known_locale_name with a string
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 47f188a277 Fix duplicate field in schema
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel 6db5a0e801 Migrations after Oban 2.11
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
Thomas Citharel ea991cd8f8 Upgrade dependencies
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:58 +02:00
jim@killock.org.uk 0e2d279de1 Translated using Weblate (Welsh)
Currently translated at 15.7% (206 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cy/
2022-03-29 13:58:57 +02:00
Thomas Citharel 84b5bf339e Thunderbird 91+ seems to send Accept: XML when doing any query
We only accept ICS, so it didn't work.

Closes #1019

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Marco Ciampa 8620f2ff4a Translated using Weblate (Italian)
Currently translated at 80.5% (1053 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/it/
2022-03-29 13:58:57 +02:00
Eivind Ødegård 02032f5ec0 Translated using Weblate (Norwegian Nynorsk)
Currently translated at 100.0% (324 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/nn/
2022-03-29 13:58:57 +02:00
Philip Bernhart c7e713048f Translated using Weblate (Esperanto)
Currently translated at 2.5% (34 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/eo/
2022-03-29 13:58:57 +02:00
Kenneth Aalberg 242dff05d0 Translated using Weblate (Norwegian Bokmål)
Currently translated at 4.9% (16 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/nb_NO/
2022-03-29 13:58:57 +02:00
Amanda Graven 6211b183f6 Translated using Weblate (Danish)
Currently translated at 16.3% (214 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/da/
2022-03-29 13:58:57 +02:00
Kenneth Aalberg e2e6e58900 Added translation using Weblate (Norwegian Bokmål) 2022-03-29 13:58:57 +02:00
Amanda Graven b864f4ddbb Translated using Weblate (Danish)
Currently translated at 16.2% (213 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/da/
2022-03-29 13:58:57 +02:00
Amanda Graven 90389bbac8 Translated using Weblate (Danish)
Currently translated at 3.1% (41 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/da/
2022-03-29 13:58:57 +02:00
Amanda Graven f2cf046733 Added translation using Weblate (Danish) 2022-03-29 13:58:57 +02:00
Thebigal Wisi 7a229f9525 Translated using Weblate (German)
Currently translated at 100.0% (324 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/de/
2022-03-29 13:58:57 +02:00
Thebigal Wisi 852f730734 Translated using Weblate (German)
Currently translated at 99.6% (1304 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:57 +02:00
Mark 2bc23747f0 Translated using Weblate (Dutch)
Currently translated at 74.6% (976 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:57 +02:00
Eivind Ødegård 4ad209c115 Translated using Weblate (Norwegian Nynorsk)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/nn/
2022-03-29 13:58:57 +02:00
Eivind Ødegård 1895e19fa1 Translated using Weblate (Norwegian Nynorsk)
Currently translated at 100.0% (1308 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nn/
2022-03-29 13:58:57 +02:00
Thebigal Wisi 3d1f1fbcc6 Translated using Weblate (German)
Currently translated at 100.0% (324 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/de/
2022-03-29 13:58:57 +02:00
Mark db95bdb5fe Translated using Weblate (Dutch)
Currently translated at 73.7% (964 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:57 +02:00
Mark 0d006c76f2 Translated using Weblate (Dutch)
Currently translated at 68.1% (892 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky f3b33e1b4a Translated using Weblate (Czech)
Currently translated at 100.0% (324 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky df0ad6b633 Translated using Weblate (Czech)
Currently translated at 99.9% (1307 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:58:57 +02:00
אנטולי מהגבעות האדומות fa6846d2a3 Translated using Weblate (Hebrew)
Currently translated at 23.3% (306 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/he/
2022-03-29 13:58:57 +02:00
אנטולי מהגבעות האדומות dc740f6380 Translated using Weblate (Hebrew)
Currently translated at 19.1% (251 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/he/
2022-03-29 13:58:57 +02:00
אנטולי מהגבעות האדומות 8e46a70baf Added translation using Weblate (Hebrew) 2022-03-29 13:58:57 +02:00
Thomas Citharel 976503cd29 Expose remainingAttendeeCapacity and participantCount through AP
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 32ec220372 Expose isOnline through AP
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
deadmorose 72061d9fe2 Translated using Weblate (Russian)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/ru/
2022-03-29 13:58:57 +02:00
deadmorose 3962a7cf1e Translated using Weblate (Russian)
Currently translated at 100.0% (208 of 208 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/ru/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky df42cfa537 Translated using Weblate (Czech)
Currently translated at 100.0% (208 of 208 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/cs/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky ff56b77fa6 Translated using Weblate (Czech)
Currently translated at 99.6% (323 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky 5dffceebad Translated using Weblate (Czech)
Currently translated at 99.9% (1307 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky 5c2f60561c Translated using Weblate (Czech)
Currently translated at 99.3% (322 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky 792435da91 Translated using Weblate (Czech)
Currently translated at 98.0% (1282 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:58:57 +02:00
Mark 6894f678c7 Translated using Weblate (Dutch)
Currently translated at 63.5% (831 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:57 +02:00
Mark 2fa3285aca Translated using Weblate (Dutch)
Currently translated at 58.4% (765 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:57 +02:00
GunChleoc c59487a34c Translated using Weblate (Gaelic)
Currently translated at 99.7% (1305 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/gd/
2022-03-29 13:58:57 +02:00
Mark fa60c6c904 Translated using Weblate (Dutch)
Currently translated at 56.4% (739 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:57 +02:00
Novel Martin Harianto b0cbfc52d3 Translated using Weblate (Indonesian)
Currently translated at 55.9% (732 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/id/
2022-03-29 13:58:57 +02:00
Al Wisi 9f60802a15 Translated using Weblate (German)
Currently translated at 99.6% (1304 of 1308 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:57 +02:00
Weblate 16f880e56b Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/
2022-03-29 13:58:57 +02:00
setop 96f405eb43 remove Text when instance is closed to registrations 2022-03-29 13:58:57 +02:00
Al Wisi 748ff7f8e4 Translated using Weblate (German)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/de/
2022-03-29 13:58:57 +02:00
Al Wisi 37599d416f Translated using Weblate (German)
Currently translated at 98.5% (205 of 208 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/de/
2022-03-29 13:58:57 +02:00
Al Wisi b2b8356033 Translated using Weblate (German)
Currently translated at 99.6% (323 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/de/
2022-03-29 13:58:57 +02:00
Al Wisi 89fab03d26 Translated using Weblate (German)
Currently translated at 99.6% (1305 of 1309 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:57 +02:00
Jiri Podhorecky 56338a4cfb Translated using Weblate (Czech)
Currently translated at 96.5% (1264 of 1309 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:58:57 +02:00
Al Wisi 60586e454a Translated using Weblate (German)
Currently translated at 92.1% (70 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/de/
2022-03-29 13:58:57 +02:00
Al Wisi 8eedf93090 Translated using Weblate (German)
Currently translated at 96.6% (201 of 208 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/de/
2022-03-29 13:58:57 +02:00
Al Wisi 3dd1667ac1 Translated using Weblate (German)
Currently translated at 87.3% (283 of 324 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/de/
2022-03-29 13:58:57 +02:00
Al Wisi 95186c5fe6 Translated using Weblate (German)
Currently translated at 99.5% (1303 of 1309 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:57 +02:00
setop 16999ce19b add requirements for export 2022-03-29 13:58:57 +02:00
Berto Te 4ed400910f Translated using Weblate (Spanish)
Currently translated at 100.0% (326 of 326 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/es/
2022-03-29 13:58:57 +02:00
Berto Te 6bfb1cc861 Translated using Weblate (Spanish)
Currently translated at 99.0% (323 of 326 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/es/
2022-03-29 13:58:57 +02:00
Thomas Citharel 01e159d5e1 Show credo diff in CI
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Berto Te 1d31518d38 Translated using Weblate (Spanish)
Currently translated at 100.0% (208 of 208 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/es/
2022-03-29 13:58:57 +02:00
Berto Te 3822275ac0 Translated using Weblate (Spanish)
Currently translated at 100.0% (320 of 320 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/es/
2022-03-29 13:58:57 +02:00
Berto Te cd026e0edb Translated using Weblate (Spanish)
Currently translated at 100.0% (1309 of 1309 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/es/
2022-03-29 13:58:57 +02:00
Thomas Citharel 40785d7f26 Remove duplicate entries in sv gettext translation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel c35cfc8181 Improve rich media parsers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 77945c8236 Fix fetching details from Twitter
Due to 429 error. Details: e6dc2ca5f2

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel cb1e348665 Fix actor auto-complete
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel f3215190c5 Detect and convert html body in the correct charset before parsing it
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 644647fa38 Fix parsing links with hashtag characters
Closes #1008

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 95c355d586 Disable follow of non-instances for now
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 9cc0acdaeb Fix link on instance follow email
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 54afcbee06 Update front-end deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:57 +02:00
Thomas Citharel 254d29558a Bump ueberauth version because of a CRSF security issue
ueberauth_discord is dropped because it's abandonned

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:56 +02:00
Thomas Citharel 2a6ddb4958 Translated using Weblate (Swedish)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/sv/
2022-03-29 13:58:56 +02:00
Weblate 0842ecbc79 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/
2022-03-29 13:58:56 +02:00
Anonymous 5bc430f47f Translated using Weblate (Croatian)
Currently translated at 75.2% (950 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:58:56 +02:00
Anonymous 6e10b024ef Translated using Weblate (Welsh)
Currently translated at 16.2% (205 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cy/
2022-03-29 13:58:56 +02:00
Anonymous 1e420d5448 Translated using Weblate (Indonesian)
Currently translated at 57.0% (720 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/id/
2022-03-29 13:58:56 +02:00
Anonymous 348199ba8f Translated using Weblate (Persian)
Currently translated at 12.8% (162 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/fa/
2022-03-29 13:58:56 +02:00
Anonymous dc5e64593a Translated using Weblate (Gaelic)
Currently translated at 99.2% (1253 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/gd/
2022-03-29 13:58:56 +02:00
Anonymous 1431e362c9 Translated using Weblate (Chinese (Traditional))
Currently translated at 0.8% (11 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/zh_Hant/
2022-03-29 13:58:56 +02:00
Anonymous 7695393a74 Translated using Weblate (Slovenian)
Currently translated at 77.8% (982 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/sl/
2022-03-29 13:58:56 +02:00
Anonymous e3db9d24ef Translated using Weblate (Bengali)
Currently translated at 2.3% (30 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/bn/
2022-03-29 13:58:56 +02:00
Anonymous fbeb4e4553 Translated using Weblate (Kabyle)
Currently translated at 14.2% (180 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/kab/
2022-03-29 13:58:56 +02:00
Anonymous 2230afc2af Translated using Weblate (Basque)
Currently translated at 2.2% (29 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/eu/
2022-03-29 13:58:56 +02:00
Anonymous 9a049302b1 Translated using Weblate (Hungarian)
Currently translated at 99.4% (1255 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hu/
2022-03-29 13:58:56 +02:00
Anonymous c7d16ecdcf Translated using Weblate (Kannada)
Currently translated at 0.5% (7 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/kn/
2022-03-29 13:58:56 +02:00
Anonymous f80b604f39 Translated using Weblate (Norwegian Nynorsk)
Currently translated at 95.1% (1201 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nn/
2022-03-29 13:58:56 +02:00
Anonymous 1dddf901b0 Translated using Weblate (Esperanto)
Currently translated at 1.8% (23 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/eo/
2022-03-29 13:58:56 +02:00
Anonymous 59e62a9bdb Translated using Weblate (Galician)
Currently translated at 83.9% (1059 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/gl/
2022-03-29 13:58:56 +02:00
Anonymous 6e3ce82dcf Translated using Weblate (Portuguese (Brazil))
Currently translated at 61.8% (781 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/pt_BR/
2022-03-29 13:58:56 +02:00
Anonymous 24fe461043 Translated using Weblate (Belarusian)
Currently translated at 15.2% (192 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/be/
2022-03-29 13:58:56 +02:00
Anonymous 9e851e4a57 Translated using Weblate (Finnish)
Currently translated at 89.3% (1128 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/fi/
2022-03-29 13:58:56 +02:00
Anonymous 776164e7d9 Translated using Weblate (Catalan)
Currently translated at 82.8% (1046 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/ca/
2022-03-29 13:58:56 +02:00
Anonymous 8060171753 Translated using Weblate (Arabic)
Currently translated at 22.8% (288 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/ar/
2022-03-29 13:58:56 +02:00
Anonymous 17df07188e Translated using Weblate (Swedish)
Currently translated at 37.5% (474 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/sv/
2022-03-29 13:58:56 +02:00
Anonymous 329b7498f8 Translated using Weblate (Russian)
Currently translated at 95.1% (1201 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/ru/
2022-03-29 13:58:56 +02:00
Anonymous 9da434308e Translated using Weblate (Portuguese)
Currently translated at 4.9% (63 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/pt/
2022-03-29 13:58:56 +02:00
Anonymous 720295b64f Translated using Weblate (Polish)
Currently translated at 60.3% (762 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/pl/
2022-03-29 13:58:56 +02:00
Anonymous f72c5d8673 Translated using Weblate (Occitan)
Currently translated at 72.2% (912 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/oc/
2022-03-29 13:58:56 +02:00
Anonymous 5084422c85 Translated using Weblate (Dutch)
Currently translated at 56.6% (715 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:58:56 +02:00
Anonymous b58a6b1a1a Translated using Weblate (Japanese)
Currently translated at 5.8% (74 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/ja/
2022-03-29 13:58:56 +02:00
Anonymous 6f1625a55c Translated using Weblate (Italian)
Currently translated at 73.0% (922 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/it/
2022-03-29 13:58:56 +02:00
Anonymous e0b9bc1539 Translated using Weblate (German)
Currently translated at 94.8% (1197 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:58:56 +02:00
Thomas Citharel b45b703143 Improve admin views (2)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:56 +02:00
Thomas Citharel 0b2dde0bff Improve admin views
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:58:56 +02:00
Thomas Citharel 93e6831403 Add @tailwindcss/line-clamp
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel 17d910ea88 Update deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel 759ebe2298 Add a breadcrumbs component
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel deda6da6f5 Add .devcontainer files
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel d47094ecad Add .tool-versions file for ASDF
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel 012c2ad344 Allow custom focus target for a11y
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel b098ae202d Fix ical export for undefined datetimes
Closes #973

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel 23864deffe Allow to filter reports by domain
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel d5545e01b0 Fix various issues reported by Dializer
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel 19005d3199 Rename Mobilizon.Actors.is_following/2 to check_follow/2
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel d8574e0d15 Improve logging in module and handle more Webfinger errors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel b47dad5659 Introduce instances admin page
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel cb7e4bddf5 Add TailwindCSS
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:57:27 +02:00
Thomas Citharel 2d57ac6466 Handle actor refreshment being impossible
If we can't refresh the actor, just return the stale actor

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:45 +02:00
Thomas Citharel 22d9d716ee Revert "Translated using Weblate (French (France) (fr_FR))"
This reverts commit 2e6d80295b.
2022-03-29 13:55:45 +02:00
setop 9364331a1d Translated using Weblate (French (France) (fr_FR))
Currently translated at 100.0% (1262 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/fr_FR/
2022-03-29 13:55:45 +02:00
Mark 0e4440a9e8 Translated using Weblate (Dutch)
Currently translated at 18.9% (56 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/nl/
2022-03-29 13:55:45 +02:00
Mark 7610fe3fa7 Translated using Weblate (Dutch)
Currently translated at 56.6% (715 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:55:45 +02:00
Mark d150e45fce Translated using Weblate (Dutch)
Currently translated at 20.7% (262 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/nl/
2022-03-29 13:55:45 +02:00
Kristoffer Grundström 21b9b1ab9d Translated using Weblate (Swedish)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/sv/
2022-03-29 13:55:45 +02:00
Anders Trobäck a8db378010 Translated using Weblate (Swedish)
Currently translated at 37.5% (474 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/sv/
2022-03-29 13:55:45 +02:00
Kristoffer Grundström a98d4fee4b Translated using Weblate (Swedish)
Currently translated at 37.5% (474 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/sv/
2022-03-29 13:55:45 +02:00
Kristoffer Grundström ea6e80f056 Translated using Weblate (Swedish)
Currently translated at 47.3% (36 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/sv/
2022-03-29 13:55:45 +02:00
Kristoffer Grundström 0bc59325fb Translated using Weblate (Swedish)
Currently translated at 29.8% (377 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/sv/
2022-03-29 13:55:45 +02:00
Quentin PAGÈS 080b3f9a50 Translated using Weblate (Occitan)
Currently translated at 72.2% (912 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/oc/
2022-03-29 13:55:45 +02:00
Quentin PAGÈS d36b664c6b Translated using Weblate (Occitan)
Currently translated at 72.1% (910 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/oc/
2022-03-29 13:55:45 +02:00
Quentin PAGÈS fe9aa78feb Translated using Weblate (Occitan)
Currently translated at 71.4% (902 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/oc/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 56a2f0da49 Translated using Weblate (Czech)
Currently translated at 100.0% (1262 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 43e0502c57 Translated using Weblate (Czech)
Currently translated at 100.0% (1262 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Thomas Citharel 5b886ec767 Bump version to 2.0.2
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel f2c1770459 Add CHANGELOG entry for 2.0.2
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 7334e6b5b8 Remove gancio fixture picture as the server is down
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 73c5429058 Fix admin editing instance language
Closes #976

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel c279511ffe Update deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 546da074d1 Restore langs.json
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 5cea3f3cf0 Translated using Weblate (French)
Currently translated at 100.0% (296 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/fr/
2022-03-29 13:55:44 +02:00
Weblate becf688d8d Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/
2022-03-29 13:55:44 +02:00
Weblate 0eef3a5e4a Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/
2022-03-29 13:55:44 +02:00
Weblate a8a8890117 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/
2022-03-29 13:55:44 +02:00
Thomas Citharel d59077edca Update upload package image
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 3fc1a723ac Use Elixir 1.13 in Docker builds
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 44de57fffa Refresh CI image
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel f083dcb687 Improve handling of media file deletion
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel b02580d654 Improve compilation dependency in endpoint and context
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 09b61af22f Fix test to know whether we should perform unused accounts cleanup
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 003a8fe4e4 Simplify response for user not found
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
fr33domlover 07dc83c9dd Translated using Weblate (Hebrew)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/he/
2022-03-29 13:55:44 +02:00
fr33domlover e149be864d Added translation using Weblate (Hebrew) 2022-03-29 13:55:44 +02:00
Berto Te b5cd09d91a Translated using Weblate (Spanish)
Currently translated at 100.0% (1262 of 1262 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/es/
2022-03-29 13:55:44 +02:00
Thomas Citharel ce443ce708 Reduce package expiration to two days
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 0136bb7f87 Update translations
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 36f19916b5 Fix group members pagination on admin group profile view
Closes #965

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel ddadf4c3d4 Handle groups/profiles/users not found in admin
Closes #966

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 53ab9ac7b2 Fix first day of week not depending on locale
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 124a9cb6a6 Allow to filter user memberships and group memberships (contacts=) on
backend side

Closes #981 #969

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 9f8bd5c87a Upgrade deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 7f2aa2a9f9 Fix text overflow when a link is too long in event mobile view
Closes #941

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Jiri Podhorecky c6de89e145 Translated using Weblate (Czech)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 747ce883ce Translated using Weblate (Czech)
Currently translated at 100.0% (204 of 204 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 4370e2e406 Translated using Weblate (Czech)
Currently translated at 100.0% (1255 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky fb7c78eadb Translated using Weblate (Czech)
Currently translated at 97.6% (1226 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 66dfd54632 Translated using Weblate (Czech)
Currently translated at 95.3% (1197 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 0f2c4b6897 Translated using Weblate (Czech)
Currently translated at 95.2% (1195 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 6385e29cc3 Translated using Weblate (Czech)
Currently translated at 93.7% (1176 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky f89105d49d Translated using Weblate (Czech)
Currently translated at 90.0% (1130 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Thomas Frenzel 3a925afeea Translated using Weblate (German)
Currently translated at 95.3% (1197 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 594ee50a1f Translated using Weblate (Czech)
Currently translated at 87.4% (1097 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 594dbfbaab Translated using Weblate (Czech)
Currently translated at 100.0% (296 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Thomas Frenzel 3c763c953a Translated using Weblate (German)
Currently translated at 94.9% (1191 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 4e1165da23 Translated using Weblate (Czech)
Currently translated at 84.3% (1058 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky b608ba9444 Translated using Weblate (Czech)
Currently translated at 90.2% (267 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Thomas Frenzel 6000625985 Translated using Weblate (German)
Currently translated at 94.8% (1190 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky b1197cbefa Translated using Weblate (Czech)
Currently translated at 85.4% (253 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 05ac4a679c Translated using Weblate (Czech)
Currently translated at 85.1% (252 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky a2cee5314e Translated using Weblate (Czech)
Currently translated at 83.5% (1048 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky d1e4069451 Translated using Weblate (Czech)
Currently translated at 80.4% (238 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 718cb0ca6a Translated using Weblate (Czech)
Currently translated at 79.1% (993 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky c09c92df2d Translated using Weblate (Czech)
Currently translated at 77.2% (969 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 4a93104c62 Translated using Weblate (Czech)
Currently translated at 53.3% (669 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Luka Filipović 3a2160dd4c Translated using Weblate (Croatian)
Currently translated at 75.6% (950 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 383acdb052 Translated using Weblate (Czech)
Currently translated at 52.9% (665 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky be7bc3a437 Translated using Weblate (Czech)
Currently translated at 26.6% (334 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Luka Filipović 13ca024dc6 Translated using Weblate (Croatian)
Currently translated at 71.7% (900 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 75ed8b93e1 Translated using Weblate (Czech)
Currently translated at 97.3% (74 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky f62ad4a3fb Translated using Weblate (Czech)
Currently translated at 97.0% (198 of 204 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 6666539554 Translated using Weblate (Czech)
Currently translated at 66.5% (197 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 923d3ca994 Translated using Weblate (Czech)
Currently translated at 19.7% (15 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/cs/
2022-03-29 13:55:44 +02:00
Marco Ciampa 8230c35d49 Translated using Weblate (Esperanto)
Currently translated at 1.8% (23 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/eo/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky e140d86846 Translated using Weblate (Czech)
Currently translated at 16.1% (33 of 204 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/cs/
2022-03-29 13:55:44 +02:00
deadmorose d87be1f4f0 Translated using Weblate (Russian)
Currently translated at 100.0% (296 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/ru/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 6fa3dcd339 Translated using Weblate (Czech)
Currently translated at 25.3% (75 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Thomas Frenzel 32684bd350 Translated using Weblate (German)
Currently translated at 94.4% (1185 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Luka Filipović b02456cb6a Translated using Weblate (Croatian)
Currently translated at 61.8% (776 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky a739e9d887 Translated using Weblate (Czech)
Currently translated at 10.5% (8 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 34400156b8 Translated using Weblate (Czech)
Currently translated at 16.8% (50 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/cs/
2022-03-29 13:55:44 +02:00
Thomas Frenzel 35e4760942 Translated using Weblate (German)
Currently translated at 93.7% (1176 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 7b13cd9aef Translated using Weblate (Czech)
Currently translated at 2.6% (2 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 18b455e45b Translated using Weblate (Czech)
Currently translated at 7.8% (16 of 204 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/cs/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 152d5f47e5 Translated using Weblate (Czech)
Currently translated at 24.3% (306 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Luka Filipović b39fe54faa Translated using Weblate (Croatian)
Currently translated at 52.5% (659 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Luka Filipović d6660b2a9a Translated using Weblate (Croatian)
Currently translated at 43.9% (552 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Quentin PAGÈS 9b64de803d Translated using Weblate (Occitan)
Currently translated at 71.1% (893 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/oc/
2022-03-29 13:55:44 +02:00
Thorsten Panknin a1f73c951a Translated using Weblate (German)
Currently translated at 92.9% (1166 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Thomas Citharel c6fe85458b Fix position of tentative tag on EventCard
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Luka Filipović 5db44c9b6b Translated using Weblate (Croatian)
Currently translated at 25.9% (326 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Mostafa Ahangarha 4fec053546 Translated using Weblate (Persian)
Currently translated at 12.9% (162 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/fa/
2022-03-29 13:55:44 +02:00
Quentin PAGÈS 2c62d5ac87 Translated using Weblate (Occitan)
Currently translated at 70.5% (885 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/oc/
2022-03-29 13:55:44 +02:00
Luca E 1fb47cda4c Translated using Weblate (German)
Currently translated at 92.8% (1165 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Thorsten Panknin 081f8082d1 Translated using Weblate (German)
Currently translated at 92.8% (1165 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/de/
2022-03-29 13:55:44 +02:00
Thomas Citharel b91b0fdc6f Update CHANGELOG.md
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 97285e4f1a Fix docker build scheduled job
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 9665b15f96 Don't sign fetches to instance actor when refreshing their keys
Closes #963

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel e9ca950067 Fix reject of already following instances
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 30f220f73f Download tz_world data for Docker image directly
Closes #960

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 4568a4f4c2 Refresh loggeduser information before the final step of onboarding
Otherwise we endup in a loop

Closes #964

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 7ef481dad3 Handle tzinfo being absent
Closes #962

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
David Clubb 6e3d8157d0 Translated using Weblate (Welsh)
Currently translated at 16.3% (205 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cy/
2022-03-29 13:55:44 +02:00
Luka Filipović 8dcd3043ad Translated using Weblate (Croatian)
Currently translated at 2.0% (26 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hr/
2022-03-29 13:55:44 +02:00
Luka Filipović ab17b9a829 Translated using Weblate (Croatian)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/hr/
2022-03-29 13:55:44 +02:00
Thomas Citharel 06ae4a5436 Bump version to 2.0.1
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 5f39d8fb26 Update CHANGELOG.md for 2.0.1
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 21fb9c9f1c Always show the cancelled status of an event
Closes #959

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 6980bbfea4 Fix new credo warnings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 605868c13f Update deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel e45eae178a Update list of languages
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
David Clubb 6fecdb1e23 Translated using Weblate (Welsh)
Currently translated at 11.1% (140 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cy/
2022-03-29 13:55:44 +02:00
Jiri Podhorecky 72f52f7bcf Translated using Weblate (Czech)
Currently translated at 16.3% (205 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/cs/
2022-03-29 13:55:44 +02:00
Luc Didry d55565f54d Added translation using Weblate (Croatian) 2022-03-29 13:55:44 +02:00
Luc Didry 4f4083f9f8 Added translation using Weblate (Croatian) 2022-03-29 13:55:44 +02:00
Luc Didry da5be99197 Added translation using Weblate (Croatian) 2022-03-29 13:55:44 +02:00
Luc Didry c112a98773 Added translation using Weblate (Croatian) 2022-03-29 13:55:44 +02:00
David Clubb ec77dbcfa0 Added translation using Weblate (Welsh) 2022-03-29 13:55:44 +02:00
Thomas Citharel a6abb22cfc Always focus the search field after results have been fetched
Close #948

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 328068155b Put latest docker tag directly from CI
Also only do amd64 architecture for tags, not main

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel 796f03f8fa Add tzworld to the Docker image
Closes #947

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:44 +02:00
Thomas Citharel e03a09da45 Remove litepub context
Closes #954

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel 72877423c5 Improve phrasing of UPGRADE.md for timezones location path
Closes #949

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel d96923d29a Fix prettier config
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel 6fdb01308b Remove cypress
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel f618318d8d Upgrade deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel 33c7c5247e Update tiptap styles
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel ba4752dee6 Replace @tiptap/starter-kit with indidual extensions
So that @tiptap/extension-code-block is removed

Closes #956

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
TA 6ca9cfc144 Translated using Weblate (Indonesian)
Currently translated at 57.3% (720 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/id/
2022-03-29 13:55:43 +02:00
Balázs Úr 7f252a5866 Translated using Weblate (Hungarian)
Currently translated at 100.0% (76 of 76 strings)

Translation: Mobilizon/Activity
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/activity/hu/
2022-03-29 13:55:43 +02:00
GunChleoc 22941101af Translated using Weblate (Gaelic)
Currently translated at 99.8% (1253 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/gd/
2022-03-29 13:55:43 +02:00
Balázs Úr d3d76e9d4e Translated using Weblate (Hungarian)
Currently translated at 45.6% (135 of 296 strings)

Translation: Mobilizon/Backend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend/hu/
2022-03-29 13:55:43 +02:00
Balázs Úr ea42f63cc8 Translated using Weblate (Hungarian)
Currently translated at 100.0% (204 of 204 strings)

Translation: Mobilizon/Backend errors
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/backend-errors/hu/
2022-03-29 13:55:43 +02:00
Balázs Úr 64f9a54c1c Translated using Weblate (Hungarian)
Currently translated at 100.0% (1255 of 1255 strings)

Translation: Mobilizon/Frontend
Translate-URL: https://weblate.framasoft.org/projects/mobilizon/frontend/hu/
2022-03-29 13:55:43 +02:00
Thomas Citharel 9f3a2e1801 Refactor and test Mobilizon.Federation.ActivityPub.Utils.get_actor/1
Raise exception when object contains no actor. Friendica seems to send an Update activity with no actor

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel 8e7bb4f3fc Fix event participants pagination
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
Thomas Citharel 9c60d5c670 Order my group upcoming events by begins_on
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-03-29 13:55:43 +02:00
370 changed files with 70731 additions and 26590 deletions

66
.devcontainer/Dockerfile Normal file
View File

@ -0,0 +1,66 @@
# Update the VARIANT arg in docker-compose.yml to pick an Elixir version: 1.9, 1.10, 1.10.4
ARG VARIANT="1.12.3"
FROM elixir:${VARIANT}
# This Dockerfile adds a non-root user with sudo access. Update the “remoteUser” property in
# devcontainer.json to use it. More info: https://aka.ms/vscode-remote/containers/non-root-user.
ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=$USER_UID
# Options for common package install script
ARG INSTALL_ZSH="true"
ARG UPGRADE_PACKAGES="true"
ARG COMMON_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/v0.209.6/script-library/common-debian.sh"
ARG COMMON_SCRIPT_SHA="d35dd1711454156c9a59cc41ebe04fbff681ca0bd304f10fd5b13285d0de13b2"
# Optional Settings for Phoenix
ARG PHOENIX_VERSION="1.6.2"
# [Optional] Setup nodejs
ARG NODE_SCRIPT_SOURCE="https://raw.githubusercontent.com/microsoft/vscode-dev-containers/main/script-library/node-debian.sh"
ARG NODE_SCRIPT_SHA="dev-mode"
ARG NODE_VERSION="none"
ENV NVM_DIR=/usr/local/share/nvm
ENV NVM_SYMLINK_CURRENT=true
ENV PATH=${NVM_DIR}/current/bin:${PATH}
# [Optional, Choice] Node.js version: none, lts/*, 16, 14, 12, 10
ARG NODE_VERSION="none"
# Install needed packages and setup non-root user. Use a separate RUN statement to add your own dependencies.
RUN apt-get update \
&& export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends curl ca-certificates 2>&1 \
&& curl -sSL ${COMMON_SCRIPT_SOURCE} -o /tmp/common-setup.sh \
&& ([ "${COMMON_SCRIPT_SHA}" = "dev-mode" ] || (echo "${COMMON_SCRIPT_SHA} */tmp/common-setup.sh" | sha256sum -c -)) \
&& /bin/bash /tmp/common-setup.sh "${INSTALL_ZSH}" "${USERNAME}" "${USER_UID}" "${USER_GID}" "${UPGRADE_PACKAGES}" \
#
# [Optional] Install Node.js for use with web applications
&& if [ "$NODE_VERSION" != "none" ]; then \
curl -sSL ${NODE_SCRIPT_SOURCE} -o /tmp/node-setup.sh \
&& ([ "${NODE_SCRIPT_SHA}" = "dev-mode" ] || (echo "${NODE_SCRIPT_SHA} */tmp/node-setup.sh" | sha256sum -c -)) \
&& /bin/bash /tmp/node-setup.sh "${NVM_DIR}" "${NODE_VERSION}" "${USERNAME}"; \
fi \
#
# Install dependencies
&& apt-get install -y build-essential \
#
# Clean up
&& apt-get autoremove -y \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/* /tmp/common-setup.sh /tmp/node-setup.sh
RUN su ${USERNAME} -c "mix local.hex --force \
&& mix local.rebar --force \
&& mix archive.install --force hex phx_new ${PHOENIX_VERSION}"
RUN apt-get update \
&& export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends cmake webp bash libncurses6 git python3 inotify-tools \
&& apt-get autoremove -y \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/*
# [Optional] Uncomment this line to install additional package.
# RUN mix ...

View File

@ -0,0 +1,44 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.209.6/containers/elixir-phoenix-postgres
{
"name": "Elixir, Phoenix, Node.js & PostgresSQL (Community)",
"dockerComposeFile": "docker-compose.yml",
"service": "elixir",
"workspaceFolder": "/workspace",
// Set *default* container specific settings.json values on container create.
"settings": {
"sqltools.connections": [{
"name": "Container database",
"driver": "PostgreSQL",
"previewLimit": 50,
"server": "localhost",
"port": 5432,
"database": "postgres",
"username": "postgres",
"password": "postgres"
}]
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"jakebecker.elixir-ls",
"mtxr.sqltools",
"mtxr.sqltools-driver-pg"
],
// Use 'forwardPorts' to make a list of ports inside the container available locally.
"forwardPorts": [4000, 4001, 5432],
// Use 'postCreateCommand' to run commands after the container is created.
// "postCreateCommand": "mix deps.get",
// "runArgs": ["--userns=keep-id", "--privileged"],
// "containerUser": "vscode",
// "containerEnv": {
// "HOME": "/home/vscode",
// },
// "workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,Z",
// Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root.
"remoteUser": "vscode"
}

View File

@ -0,0 +1,46 @@
version: "3.8"
services:
elixir:
build:
context: .
dockerfile: Dockerfile
args:
# Elixir Version: 1.9, 1.10, 1.10.4, ...
VARIANT: "1.13.1"
# Phoenix Version: 1.4.17, 1.5.4, ...
PHOENIX_VERSION: "1.6.6"
# Node Version: 10, 11, ...
NODE_VERSION: "16"
volumes:
- ..:/workspace:z
# Runs app on the same network as the database container, allows "forwardPorts" in devcontainer.json function.
network_mode: service:db
# Overrides default command so things don't shut down after the process ends.
command: sleep infinity
environment:
MOBILIZON_INSTANCE_NAME: My Mobilizon Instance
MOBILIZON_INSTANCE_HOST: localhost
MOBILIZON_INSTANCE_HOST_PORT: 4000
MOBILIZON_INSTANCE_PORT: 4000
MOBILIZON_INSTANCE_EMAIL: noreply@mobilizon.me
MOBILIZON_INSTANCE_REGISTRATIONS_OPEN: "true"
MOBILIZON_DATABASE_PASSWORD: postgres
MOBILIZON_DATABASE_USERNAME: postgres
MOBILIZON_DATABASE_DBNAME: mobilizon
MOBILIZON_DATABASE_HOST: db
db:
image: postgis/postgis:latest
restart: unless-stopped
volumes:
- postgres-data:/var/lib/postgresql/data
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: app
volumes:
postgres-data: null

View File

@ -59,8 +59,11 @@ lint-elixir:
- mix deps.get
script:
- export EXITVALUE=0
- git fetch origin ${CI_DEFAULT_BRANCH}
- TARGET_SHA1=$(git show-ref -s ${CI_DEFAULT_BRANCH})
- echo "$TARGET_SHA1"
- mix format --check-formatted --dry-run || export EXITVALUE=1
- mix credo --strict -a || export EXITVALUE=1
- mix credo diff --from-git-merge-base $TARGET_SHA1 --strict -a || export EXITVALUE=1
- mix sobelow --config || export EXITVALUE=1
- exit $EXITVALUE
@ -180,7 +183,7 @@ pages:
.docker: &docker
stage: docker
image: docker:stable
image: docker:20.10.12
variables:
DOCKER_TLS_CERTDIR: "/certs"
DOCKER_HOST: tcp://docker:2376
@ -188,13 +191,13 @@ pages:
DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client"
DOCKER_DRIVER: overlay2
services:
- docker:stable-dind
- docker:20.10.12-dind
cache: {}
before_script:
# Install buildx
- wget https://github.com/docker/buildx/releases/download/v0.6.3/buildx-v0.6.3.linux-amd64
- wget https://github.com/docker/buildx/releases/download/v0.8.1/buildx-v0.8.1.linux-amd64
- mkdir -p ~/.docker/cli-plugins/
- mv buildx-v0.6.3.linux-amd64 ~/.docker/cli-plugins/docker-buildx
- mv buildx-v0.8.1.linux-amd64 ~/.docker/cli-plugins/docker-buildx
- chmod a+x ~/.docker/cli-plugins/docker-buildx
# Create env
- docker context create tls-environment
@ -205,16 +208,8 @@ pages:
# Login to DockerHub
- mkdir -p ~/.docker
- echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$CI_REGISTRY_AUTH\",\"email\":\"$CI_REGISTRY_EMAIL\"}}}" > ~/.docker/config.json
script:
- >
docker buildx build
--push
--platform linux/amd64,linux/arm64,linux/arm
-t $DOCKER_IMAGE_NAME
-f docker/production/Dockerfile .
tags:
- "privileged"
timeout: 3 hours
build-docker-main:
<<: *docker
@ -222,8 +217,8 @@ build-docker-main:
- if: '$CI_PROJECT_NAMESPACE != "framasoft"'
when: never
- if: '$CI_PIPELINE_SOURCE == "schedule"'
variables:
DOCKER_IMAGE_NAME: framasoft/mobilizon:main
script:
- docker buildx build --push --platform linux/amd64 -t framasoft/mobilizon:main -f docker/production/Dockerfile .
build-docker-tag:
<<: *docker
@ -231,8 +226,15 @@ build-docker-tag:
- if: '$CI_PROJECT_NAMESPACE != "framasoft"'
when: never
- if: $CI_COMMIT_TAG
variables:
DOCKER_IMAGE_NAME: framasoft/mobilizon:$CI_COMMIT_TAG
timeout: 3 hours
script:
- >
docker buildx build
--push
--platform linux/amd64,linux/arm64,linux/arm
-t framasoft/mobilizon:$CI_COMMIT_TAG
-t framasoft/mobilizon:latest
-f docker/production/Dockerfile .
# Packaging app for amd64
package-app:
@ -254,7 +256,7 @@ package-app:
only:
- tags@framasoft/mobilizon
artifacts:
expire_in: 30 days
expire_in: 2 days
paths:
- ${APP_ASSET}
@ -285,9 +287,9 @@ multi-arch-release:
cache: {}
before_script:
# Install buildx
- wget https://github.com/docker/buildx/releases/download/v0.6.3/buildx-v0.6.3.linux-amd64
- wget https://github.com/docker/buildx/releases/download/v0.8.1/buildx-v0.8.1.linux-amd64
- mkdir -p ~/.docker/cli-plugins/
- mv buildx-v0.6.3.linux-amd64 ~/.docker/cli-plugins/docker-buildx
- mv buildx-v0.8.1.linux-amd64 ~/.docker/cli-plugins/docker-buildx
- chmod a+x ~/.docker/cli-plugins/docker-buildx
# Create env
- docker context create tls-environment
@ -303,7 +305,7 @@ multi-arch-release:
tags:
- "privileged"
artifacts:
expire_in: 30 days
expire_in: 2 days
paths:
- ${APP_ASSET}
parallel:
@ -319,7 +321,7 @@ multi-arch-release:
# Release
release-upload:
stage: upload
image: framasoft/yakforms-assets-deploy:latest
image: framasoft/upload-packages:latest
variables:
APP_ASSET: "${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}_${ARCH}.tar.gz"
rules: *tag-rules

2
.tool-versions Normal file
View File

@ -0,0 +1,2 @@
elixir 1.13.3-otp-24
erlang 24.3.2

View File

@ -4,6 +4,125 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## 2.1.0 - 2022-03-28
### Added
- Event category field
- Redesigned federation admin section with dedicated instance pages
- Allow to filter moderation reports by domain
### Changed
- Expose some fields to ActivityStreams event representation: `isOnline`, `remainingAttendeeCapacity` and `participantCount`
- Expose a new field to ActivityStreams group representation: `memberCount`
- Improve group creation errors feedback
### Fixed
- Fixed actor refreshment being impossible
- Fixed ical export for undefined datetimes
- Fixed parsing links with hashtag characters
- Fixed fetching link details from Twitter
- Fixed Thunderbird accessing ICS feed endpoint with special `Accept` HTTP header
- Make sure every ICS/Feed caches are emptied when modifying entities
- Fixed time issues with DST changes
- Fixed group preview card not truncating description
### Translations
- Arabic
- Basque
- Belarusian
- Bengali
- Catalan
- Chinese (Traditional)
- Croatian
- Czech
- Danish
- Dutch
- Esperanto
- Finnish
- French
- Gaelic
- Galician
- German
- Hebrew
- Hungarian
- Indonesian
- Italian
- Japanese
- Kabyle
- Kannada
- Norwegian Nynorsk
- Occitan
- Persian
- Polish
- Portuguese
- Portuguese (Brazil)
- Russian
- Slovenian
- Spanish
- Swedish
- Welsh
## 2.0.2 - 2021-12-22
### Changed
- Improved handling of media file deletion
- Releases and Docker image are now using Elixir 1.13
### Fixed
- Fixed position of tentative tag on event cards
- Fixed text overflow when a link is too long in event mobile view
- Fixed filtering user own memberships and group members in event organizer & contacts picker
- Fixed first day of week not depending on locale in the datetime picker
- Fixed the admin page when a group/profile/user was not found
- Fixed group members pagination on admin group profile view
- Fixed admin edition of the instance's language
### Translations
- Croatian
- Czech
- Esperanto
- German
- Hebrew
- Occitan
- Persian
- Russian
- Spanish
## 2.0.1 - 2021-11-26
### Changed
- Remove litepub context
### Fixed
- Make sure my group upcoming events are ordered by their start date
- Fix event participants pagination
- Always focus the search field after results have been fetched
- Don't sign fetches to instance actor when refreshing their keys
- Fix reject of already following instances
- Added missing timezone data to the Docker image
- Replace @tiptap/starter-kit with indidual extensions, removing unneeded extensions that caused issues on old Firefox versions
- Better handling of Friendica Update activities without actor information
- Always show pending/cancelled status on event cards
- Fixed nightly docker build
- Refresh loggeduser information before the final step of onboarding, avoiding loop when finishing onboarding
- Handle tz_world data being absent
### Translations
- Croatian (New !)
- Czech
- Gaelic
- Hungarian
- Indonesian
- Welsh (New !)
## 2.0.0 - 2021-11-23
Please read the [UPGRADE.md](https://framagit.org/framasoft/mobilizon/-/blob/main/UPGRADE.md#upgrading-from-13-to-20) file as well.

View File

@ -34,7 +34,7 @@ In order to keep the release tarballs light, the geographic timezone data is not
sudo -u mobilizon curl -L 'https://packages.joinmobilizon.org/tz_world/timezones-geodata.dets' -o /var/lib/mobilizon/timezones/timezones-geodata.dets
```
In both cases, ~700Mio of disk will be used. You may use the following configuration to specify where the data is expected:
In both cases, ~700Mio of disk will be used. You may use the following configuration to specify where the data is expected if you decide to change it from the default location (`/var/lib/mobilizon/timezones`) :
```elixir
config :tz_world, data_dir: "/some/place"
```

View File

@ -185,7 +185,13 @@ config :phoenix, :filter_parameters, ["password", "token"]
config :absinthe, schema: Mobilizon.GraphQL.Schema
config :absinthe, Absinthe.Logger, filter_variables: ["token", "password", "secret"]
config :mobilizon, Mobilizon.Web.Gettext, one_module_per_locale: true
config :codepagex, :encodings, [
:ascii,
~r[iso8859]i,
:"VENDORS/MICSFT/WINDOWS/CP1252"
]
config :mobilizon, Mobilizon.Web.Gettext, split_module_by: [:locale, :domain]
config :ex_cldr,
default_locale: "en",
@ -290,6 +296,7 @@ config :mobilizon, Oban,
crontab: [
{"@hourly", Mobilizon.Service.Workers.BuildSiteMap, queue: :background},
{"17 4 * * *", Mobilizon.Service.Workers.RefreshGroups, queue: :background},
{"36 * * * *", Mobilizon.Service.Workers.RefreshInstances, queue: :background},
{"@hourly", Mobilizon.Service.Workers.CleanOrphanMediaWorker, queue: :background},
{"@hourly", Mobilizon.Service.Workers.CleanUnconfirmedUsersWorker, queue: :background},
{"@hourly", Mobilizon.Service.Workers.ExportCleanerWorker, queue: :background},

View File

@ -18,22 +18,27 @@ config :mobilizon, :cldr,
locales: [
"ar",
"be",
"bn",
"ca",
"cs",
"cy",
"de",
"en",
"es",
"fa",
"fi",
"fr",
"gd",
"gl",
"hu",
"id",
"it",
"ja",
"nl",
"nn",
"oc",
"pl",
"pt",
"ru",
"sv"
"sv",
"zh_Hant"
]

View File

@ -12,7 +12,7 @@ RUN yarn install --network-timeout 100000 \
&& yarn run build
# Then, build the application binary
FROM elixir:1.12-alpine AS builder
FROM elixir:1.13-alpine AS builder
RUN apk add --no-cache build-base git cmake
@ -49,11 +49,14 @@ LABEL org.opencontainers.image.title="mobilizon" \
org.opencontainers.image.revision=$VCS_REF \
org.opencontainers.image.created=$BUILD_DATE
RUN apk add --no-cache openssl ca-certificates ncurses-libs file postgresql-client libgcc libstdc++ imagemagick python3 py3-pip py3-pillow py3-cffi py3-brotli gcc musl-dev python3-dev pango libxslt-dev
RUN apk add --no-cache curl openssl ca-certificates ncurses-libs file postgresql-client libgcc libstdc++ imagemagick python3 py3-pip py3-pillow py3-cffi py3-brotli gcc musl-dev python3-dev pango libxslt-dev ttf-cantarell
RUN pip install weasyprint pyexcel-ods3
RUN mkdir -p /var/lib/mobilizon/uploads && chown nobody:nobody /var/lib/mobilizon/uploads
RUN mkdir -p /var/lib/mobilizon/timezones && chown nobody:nobody /var/lib/mobilizon/timezones
RUN mkdir -p /var/lib/mobilizon/uploads/exports/{csv,pdf,ods} && chown -R nobody:nobody /var/lib/mobilizon/uploads/exports
RUN mkdir -p /var/lib/mobilizon/timezones
RUN curl -L 'https://packages.joinmobilizon.org/tz_world/timezones-geodata.dets' -o /var/lib/mobilizon/timezones/timezones-geodata.dets
RUN chown nobody:nobody /var/lib/mobilizon/timezones
RUN mkdir -p /etc/mobilizon && chown nobody:nobody /etc/mobilizon
USER nobody

View File

@ -1,7 +1,7 @@
FROM elixir:latest
LABEL maintainer="Thomas Citharel <tcit@tcit.fr>"
ENV REFRESHED_AT=2021-10-04
ENV REFRESHED_AT=2021-12-15
RUN apt-get update -yq && apt-get install -yq build-essential inotify-tools postgresql-client git curl gnupg xvfb libgtk-3-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 cmake exiftool python3-pip python3-setuptools
RUN curl -sL https://deb.nodesource.com/setup_16.x | bash && apt-get install nodejs -yq
RUN npm install -g yarn wait-on

View File

@ -29,7 +29,6 @@ module.exports = {
},
],
"@typescript-eslint/no-explicit-any": "off",
"cypress/no-unnecessary-waiting": "off",
"vue/max-len": [
"off",
{

View File

@ -1 +1,6 @@
{}
{
"trailingComma": "es5",
"semi": true,
"singleQuote": false,
"bracketSpacing": true
}

View File

@ -1,6 +1,6 @@
{
"name": "mobilizon",
"version": "2.0.0",
"version": "2.0.2",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
@ -16,23 +16,33 @@
"@absinthe/socket-apollo-link": "^0.2.1",
"@apollo/client": "^3.3.16",
"@mdi/font": "^6.1.95",
"@tailwindcss/line-clamp": "^0.3.0",
"@tiptap/core": "^2.0.0-beta.41",
"@tiptap/extension-blockquote": "^2.0.0-beta.6",
"@tiptap/extension-blockquote": "^2.0.0-beta.25",
"@tiptap/extension-bold": "^2.0.0-beta.24",
"@tiptap/extension-bubble-menu": "^2.0.0-beta.9",
"@tiptap/extension-character-count": "^2.0.0-beta.5",
"@tiptap/extension-history": "^2.0.0-beta.5",
"@tiptap/extension-bullet-list": "^2.0.0-beta.23",
"@tiptap/extension-document": "^2.0.0-beta.15",
"@tiptap/extension-dropcursor": "^2.0.0-beta.25",
"@tiptap/extension-gapcursor": "^2.0.0-beta.33",
"@tiptap/extension-heading": "^2.0.0-beta.23",
"@tiptap/extension-history": "^2.0.0-beta.21",
"@tiptap/extension-image": "^2.0.0-beta.6",
"@tiptap/extension-italic": "^2.0.0-beta.24",
"@tiptap/extension-link": "^2.0.0-beta.8",
"@tiptap/extension-list-item": "^2.0.0-beta.6",
"@tiptap/extension-list-item": "^2.0.0-beta.19",
"@tiptap/extension-mention": "^2.0.0-beta.42",
"@tiptap/extension-ordered-list": "^2.0.0-beta.6",
"@tiptap/extension-ordered-list": "^2.0.0-beta.24",
"@tiptap/extension-paragraph": "^2.0.0-beta.22",
"@tiptap/extension-strike": "^2.0.0-beta.26",
"@tiptap/extension-text": "^2.0.0-beta.15",
"@tiptap/extension-underline": "^2.0.0-beta.7",
"@tiptap/starter-kit": "^2.0.0-beta.37",
"@tiptap/vue-2": "^2.0.0-beta.21",
"@vue-a11y/announcer": "^2.1.0",
"@vue-a11y/skip-to": "^2.1.2",
"@vue/apollo-option": "4.0.0-alpha.11",
"apollo-absinthe-upload-link": "^1.5.0",
"autoprefixer": "^10",
"blurhash": "^1.1.3",
"buefy": "^0.9.0",
"bulma-divider": "^0.2.0",
@ -44,13 +54,15 @@
"intersection-observer": "^0.12.0",
"jwt-decode": "^3.1.2",
"leaflet": "^1.4.0",
"leaflet.locatecontrol": "^0.74.0",
"leaflet.locatecontrol": "^0.76.0",
"lodash": "^4.17.11",
"ngeohash": "^0.6.3",
"p-debounce": "^4.0.0",
"phoenix": "^1.6",
"postcss": "^8",
"register-service-worker": "^1.7.2",
"sanitize-html": "^2.5.3",
"tailwindcss": "^3",
"tippy.js": "^6.2.3",
"unfetch": "^4.2.0",
"v-tooltip": "^2.1.3",
@ -65,9 +77,10 @@
"vuedraggable": "^2.24.3"
},
"devDependencies": {
"@rushstack/eslint-patch": "^1.1.0",
"@types/jest": "^27.0.2",
"@types/leaflet": "^1.5.2",
"@types/leaflet.locatecontrol": "^0.60.7",
"@types/leaflet.locatecontrol": "^0.74",
"@types/lodash": "^4.14.141",
"@types/ngeohash": "^0.6.2",
"@types/phoenix": "^1.5.2",
@ -78,22 +91,19 @@
"@types/sanitize-html": "^2.5.0",
"@typescript-eslint/eslint-plugin": "^5.3.0",
"@typescript-eslint/parser": "^5.3.0",
"@vue/cli-plugin-babel": "~5.0.0-rc.0",
"@vue/cli-plugin-e2e-cypress": "~5.0.0-rc.0",
"@vue/cli-plugin-eslint": "~5.0.0-rc.0",
"@vue/cli-plugin-pwa": "~5.0.0-rc.0",
"@vue/cli-plugin-router": "~5.0.0-rc.0",
"@vue/cli-plugin-typescript": "~5.0.0-rc.0",
"@vue/cli-plugin-unit-jest": "~5.0.0-rc.0",
"@vue/cli-service": "~5.0.0-rc.0",
"@vue/eslint-config-typescript": "^9.0.0",
"@vue/cli-plugin-babel": "~5.0.4",
"@vue/cli-plugin-eslint": "~5.0.4",
"@vue/cli-plugin-pwa": "~5.0.4",
"@vue/cli-plugin-router": "~5.0.4",
"@vue/cli-plugin-typescript": "~5.0.4",
"@vue/cli-plugin-unit-jest": "~5.0.4",
"@vue/cli-service": "~5.0.4",
"@vue/eslint-config-typescript": "^10.0.0",
"@vue/test-utils": "^1.1.0",
"@vue/vue2-jest": "^27.0.0-alpha.3",
"@vue/vue3-jest": "^27.0.0-alpha.1",
"cypress": "^8.3.0",
"eslint": "^8.2.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-cypress": "^2.10.3",
"eslint-plugin-import": "^2.20.2",
"eslint-plugin-prettier": "^4.0.0",
"eslint-plugin-vue": "^8.0.3",
@ -106,7 +116,8 @@
"sass": "^1.34.1",
"sass-loader": "^12.0.0",
"ts-jest": "27",
"typescript": "~4.4.3",
"typescript": "~4.5.5",
"vue-cli-plugin-tailwind": "~3.0.0",
"vue-i18n-extract": "^2.0.4",
"vue-template-compiler": "^2.6.11",
"webpack-cli": "^4.7.0"

6
js/postcss.config.js Normal file
View File

@ -0,0 +1,6 @@
module.exports = {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
};

View File

@ -216,7 +216,11 @@ export default class App extends Vue {
// Set the focus to the router view
// https://marcus.io/blog/accessible-routing-vuejs
setTimeout(() => {
const focusTarget = this.routerView?.$el as HTMLElement;
const focusTarget = (
this.routerView?.$refs?.componentFocusTarget !== undefined
? this.routerView?.$refs?.componentFocusTarget
: this.routerView?.$el
) as HTMLElement;
if (focusTarget) {
// Make focustarget programmatically focussable
focusTarget.setAttribute("tabindex", "-1");

View File

@ -70,6 +70,9 @@ export const typePolicies: TypePolicies = {
participantStats: { merge: replaceMergePolicy },
},
},
Instance: {
keyFields: ["domain"],
},
RootQueryType: {
fields: {
relayFollowers: paginatedLimitPagination<IFollower>(),

9
js/src/assets/logo.svg Normal file
View File

@ -0,0 +1,9 @@
<svg xmlns="http://www.w3.org/2000/svg" width="60" height="60">
<path style="opacity:0;fill:#fea72b;fill-opacity:1;stroke:none;stroke-opacity:0" d="M-5.801-6.164h72.69v72.871h-72.69z" />
<g data-name="Calque 2">
<g data-name="header">
<path d="M26.58 27.06q0 8-4.26 12.3a12.21 12.21 0 0 1-9 3.42 12.21 12.21 0 0 1-9-3.42Q0 35.1 0 27.06q0-8.04 4.26-12.3a12.21 12.21 0 0 1 9-3.42 12.21 12.21 0 0 1 9 3.42q4.32 4.24 4.32 12.3zM13.29 17q-5.67 0-5.67 10.06t5.67 10.08q5.71 0 5.71-10.08T13.29 17z" style="fill:#3a384c;fill-opacity:1" transform="translate(14.627 5.256) scale(1.15671)" />
<path d="M9 6.78a7.37 7.37 0 0 1-.6-3 7.37 7.37 0 0 1 .6-3A8.09 8.09 0 0 1 12.83 0a7.05 7.05 0 0 1 3.69.84 7.37 7.37 0 0 1 .6 3 7.37 7.37 0 0 1-.6 3 7.46 7.46 0 0 1-3.87.84A6.49 6.49 0 0 1 9 6.78z" style="fill:#fff" transform="translate(14.627 5.256) scale(1.15671)" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 920 B

View File

@ -0,0 +1,5 @@
@tailwind base;
@tailwind components;
@tailwind utilities;

View File

@ -11,17 +11,6 @@
// color: $violet-2;
// }
.title {
margin: 30px auto 45px;
}
.subtitle {
background: $secondary;
display: inline;
padding: 3px 8px;
margin: 15px auto 30px;
}
a.out,
.content a,
.ProseMirror a {

View File

@ -1,118 +0,0 @@
<template>
<b-autocomplete
:data="baseData"
:placeholder="$t('Actor')"
v-model="name"
field="preferredUsername"
:loading="$apollo.loading"
check-infinite-scroll
@typing="getAsyncData"
@select="handleSelect"
@infinite-scroll="getAsyncData"
>
<template #default="props">
<div class="media">
<div class="media-left">
<img
width="32"
:src="props.option.avatar.url"
v-if="props.option.avatar"
alt=""
/>
<b-icon v-else icon="account-circle" />
</div>
<div class="media-content">
<span v-if="props.option.name">
{{ props.option.name }}
<br />
<small>{{ `@${props.option.preferredUsername}` }}</small>
<small v-if="props.option.domain">{{
`@${props.option.domain}`
}}</small>
</span>
<span v-else>
{{ `@${props.option.preferredUsername}` }}
</span>
</div>
</div>
</template>
<template slot="footer">
<span class="has-text-grey" v-show="page > totalPages">
Thats it! No more movies found.
</span>
</template>
</b-autocomplete>
</template>
<script lang="ts">
import { Component, Model, Vue, Watch } from "vue-property-decorator";
import debounce from "lodash/debounce";
import { IPerson } from "@/types/actor";
import { SEARCH_PERSONS } from "@/graphql/search";
import { Paginate } from "@/types/paginate";
const SEARCH_PERSON_LIMIT = 10;
@Component
export default class ActorAutoComplete extends Vue {
@Model("change", { type: Object }) readonly defaultSelected!: IPerson | null;
baseData: IPerson[] = [];
selected: IPerson | null = this.defaultSelected;
name: string = this.defaultSelected
? this.defaultSelected.preferredUsername
: "";
page = 1;
totalPages = 1;
mounted(): void {
this.selected = this.defaultSelected;
}
data(): Record<string, unknown> {
return {
getAsyncData: debounce(this.doGetAsyncData, 500),
};
}
@Watch("defaultSelected")
updateDefaultSelected(defaultSelected: IPerson): void {
console.log("update defaultSelected", defaultSelected);
this.selected = defaultSelected;
this.name = defaultSelected.preferredUsername;
}
handleSelect(selected: IPerson): void {
this.selected = selected;
this.$emit("change", selected);
}
async doGetAsyncData(name: string): Promise<void> {
this.baseData = [];
if (this.name !== name) {
this.name = name;
this.page = 1;
}
if (!name.length) {
this.page = 1;
this.totalPages = 1;
return;
}
const {
data: { searchPersons },
} = await this.$apollo.query<{ searchPersons: Paginate<IPerson> }>({
query: SEARCH_PERSONS,
variables: {
searchText: this.name,
page: this.page,
limit: SEARCH_PERSON_LIMIT,
},
});
this.totalPages = Math.ceil(searchPersons.total / SEARCH_PERSON_LIMIT);
this.baseData.push(...searchPersons.elements);
}
}
</script>

View File

@ -1,31 +1,80 @@
<template>
<div class="media" style="align-items: top" dir="auto">
<div class="media-left">
<figure class="image is-32x32" v-if="actor.avatar">
<img class="is-rounded" :src="actor.avatar.url" alt="" />
<div
class="w-80 bg-white rounded-lg shadow-md flex space-x-4 items-center"
:class="{ 'flex-col p-4 sm:p-8 pb-10': !inline }"
>
<div>
<figure class="w-12 h-12" v-if="actor.avatar">
<img
class="rounded-lg"
:src="actor.avatar.url"
alt=""
width="48"
height="48"
/>
</figure>
<b-icon v-else size="is-medium" icon="account-circle" />
<b-icon
v-else
:size="inline ? 'is-medium' : 'is-large'"
icon="account-circle"
class="ltr:-mr-0.5 rtl:-ml-0.5"
/>
</div>
<div class="media-content">
<p>
{{ actor.name || `@${usernameWithDomain(actor)}` }}
</p>
<p class="has-text-grey-dark" v-if="actor.name">
<div :class="{ 'text-center': !inline }">
<h5 class="text-xl font-medium violet-title tracking-tight text-gray-900">
{{ displayName(actor) }}
</h5>
<p class="text-gray-500 truncate" v-if="actor.name">
<span dir="ltr">@{{ usernameWithDomain(actor) }}</span>
</p>
<div
v-if="full"
class="summary"
:class="{ limit: limit }"
:class="{ 'line-clamp-3': limit }"
v-html="actor.summary"
/>
</div>
</div>
<!-- <div
class="p-4 bg-white rounded-lg shadow-md sm:p-8 flex items-center space-x-4"
dir="auto"
>
<div class="flex-shrink-0">
<figure class="w-12 h-12" v-if="actor.avatar">
<img
class="rounded-lg"
:src="actor.avatar.url"
alt=""
width="48"
height="48"
/>
</figure>
<b-icon
v-else
size="is-large"
icon="account-circle"
class="ltr:-mr-0.5 rtl:-ml-0.5"
/>
</div>
<div class="flex-1 min-w-0">
<h5 class="text-xl font-medium violet-title tracking-tight text-gray-900">
{{ displayName(actor) }}
</h5>
<p class="text-gray-500 truncate" v-if="actor.name">
<span dir="ltr">@{{ usernameWithDomain(actor) }}</span>
</p>
<div
v-if="full"
class="line-clamp-3"
:class="{ limit: limit }"
v-html="actor.summary"
/>
</div>
</div> -->
</template>
<script lang="ts">
import { Component, Vue, Prop } from "vue-property-decorator";
import { IActor, usernameWithDomain } from "../../types/actor";
import { displayName, IActor, usernameWithDomain } from "../../types/actor";
@Component
export default class ActorCard extends Vue {
@ -33,140 +82,14 @@ export default class ActorCard extends Vue {
@Prop({ required: false, type: Boolean, default: false }) full!: boolean;
@Prop({ required: false, type: Boolean, default: false }) inline!: boolean;
@Prop({ required: false, type: Boolean, default: false }) popover!: boolean;
@Prop({ required: false, type: Boolean, default: true }) limit!: boolean;
usernameWithDomain = usernameWithDomain;
displayName = displayName;
}
</script>
<style lang="scss" scoped>
.summary.limit {
max-width: 25rem;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
}
</style>
<style lang="scss">
@use "@/styles/_mixins" as *;
.media {
.media-left {
margin-right: initial;
@include margin-right(1rem);
}
}
.tooltip {
display: block !important;
z-index: 10000;
.tooltip-inner {
background: black;
color: white;
border-radius: 16px;
padding: 5px 10px 4px;
}
.tooltip-arrow {
width: 0;
height: 0;
border-style: solid;
position: absolute;
margin: 5px;
border-color: black;
z-index: 1;
}
&[x-placement^="top"] {
margin-bottom: 5px;
.tooltip-arrow {
border-width: 5px 5px 0 5px;
border-left-color: transparent !important;
border-right-color: transparent !important;
border-bottom-color: transparent !important;
bottom: -5px;
left: calc(50% - 5px);
margin-top: 0;
margin-bottom: 0;
}
}
&[x-placement^="bottom"] {
margin-top: 5px;
.tooltip-arrow {
border-width: 0 5px 5px 5px;
border-left-color: transparent !important;
border-right-color: transparent !important;
border-top-color: transparent !important;
top: -5px;
left: calc(50% - 5px);
margin-top: 0;
margin-bottom: 0;
}
}
&[x-placement^="right"] {
@include margin-left(5px);
.tooltip-arrow {
border-width: 5px 5px 5px 0;
border-left-color: transparent !important;
border-top-color: transparent !important;
border-bottom-color: transparent !important;
left: -5px;
top: calc(50% - 5px);
@include margin-left(0);
@include margin-right(0);
}
}
&[x-placement^="left"] {
@include margin-right(5px);
.tooltip-arrow {
border-width: 5px 0 5px 5px;
border-top-color: transparent !important;
border-right-color: transparent !important;
border-bottom-color: transparent !important;
right: -5px;
top: calc(50% - 5px);
@include margin-left(0);
@include margin-right(0);
}
}
&.popover {
$color: #f9f9f9;
.popover-inner {
background: lighten($background-color, 65%);
color: black;
padding: 24px;
border-radius: 5px;
box-shadow: 0 5px 30px rgba(black, 0.1);
}
.popover-arrow {
border-color: $color;
}
}
&[aria-hidden="true"] {
visibility: hidden;
opacity: 0;
transition: opacity 0.15s, visibility 0.15s;
}
&[aria-hidden="false"] {
visibility: visible;
opacity: 1;
transition: opacity 0.15s;
}
}
</style>

View File

@ -9,20 +9,22 @@
<div class="actor-name">
<p>
{{ actor.name || `@${usernameWithDomain(actor)}` }}
{{ displayName(actor) }}
</p>
</div>
</div>
</template>
<script lang="ts">
import { Component, Vue, Prop } from "vue-property-decorator";
import { IActor, usernameWithDomain } from "../../types/actor";
import { displayName, IActor, usernameWithDomain } from "../../types/actor";
@Component
export default class ActorInline extends Vue {
@Prop({ required: true, type: Object }) actor!: IActor;
usernameWithDomain = usernameWithDomain;
displayName = displayName;
}
</script>
<style lang="scss" scoped>

View File

@ -1,262 +0,0 @@
<template>
<div>
<b-table
v-show="relayFollowers.elements.length > 0"
:data="relayFollowers.elements"
:loading="$apollo.queries.relayFollowers.loading"
ref="table"
:checked-rows.sync="checkedRows"
detailed
:show-detail-icon="false"
paginated
backend-pagination
:current-page.sync="page"
:aria-next-label="$t('Next page')"
:aria-previous-label="$t('Previous page')"
:aria-page-label="$t('Page')"
:aria-current-label="$t('Current page')"
:total="relayFollowers.total"
:per-page="FOLLOWERS_PER_PAGE"
@page-change="onFollowersPageChange"
checkable
checkbox-position="left"
>
<b-table-column
field="actor.id"
label="ID"
width="40"
numeric
v-slot="props"
>{{ props.row.actor.id }}</b-table-column
>
<b-table-column
field="actor.type"
:label="$t('Type')"
width="80"
v-slot="props"
>
<b-icon icon="lan" v-if="RelayMixin.isInstance(props.row.actor)" />
<b-icon icon="account-circle" v-else />
</b-table-column>
<b-table-column
field="approved"
:label="$t('Status')"
width="100"
sortable
centered
v-slot="props"
>
<span
:class="`tag ${props.row.approved ? 'is-success' : 'is-danger'}`"
>{{ props.row.approved ? $t("Accepted") : $t("Pending") }}</span
>
</b-table-column>
<b-table-column field="actor.domain" :label="$t('Domain')" sortable>
<template v-slot:default="props">
<a
@click="toggle(props.row)"
v-if="RelayMixin.isInstance(props.row.actor)"
>{{ props.row.actor.domain }}</a
>
<a @click="toggle(props.row)" v-else>{{
`${props.row.actor.preferredUsername}@${props.row.actor.domain}`
}}</a>
</template>
</b-table-column>
<b-table-column
field="targetActor.updatedAt"
:label="$t('Date')"
sortable
v-slot="props"
>
<span
:title="$options.filters.formatDateTimeString(props.row.updatedAt)"
>{{
formatDistanceToNow(new Date(props.row.updatedAt), {
locale: $dateFnsLocale,
})
}}</span
></b-table-column
>
<template #detail="props">
<article>
<div class="content">
<strong>{{ props.row.actor.name }}</strong>
<small v-if="props.row.actor.preferredUsername !== 'relay'"
>@{{ props.row.actor.preferredUsername }}</small
>
<p v-html="props.row.actor.summary" />
</div>
</article>
</template>
<template slot="bottom-left" v-if="checkedRows.length > 0">
<div class="buttons">
<b-button
@click="acceptRelays"
type="is-success"
v-if="checkedRowsHaveAtLeastOneToApprove"
>
{{
$tc(
"No instance to approve|Approve instance|Approve {number} instances",
checkedRows.length,
{ number: checkedRows.length }
)
}}
</b-button>
<b-button @click="rejectRelays" type="is-danger">
{{
$tc(
"No instance to reject|Reject instance|Reject {number} instances",
checkedRows.length,
{ number: checkedRows.length }
)
}}
</b-button>
</div>
</template>
</b-table>
<b-message type="is-danger" v-if="relayFollowers.elements.length === 0">{{
$t("No instance follows your instance yet.")
}}</b-message>
</div>
</template>
<script lang="ts">
import { Component, Mixins } from "vue-property-decorator";
import { SnackbarProgrammatic as Snackbar } from "buefy";
import { formatDistanceToNow } from "date-fns";
import {
ACCEPT_RELAY,
REJECT_RELAY,
RELAY_FOLLOWERS,
} from "../../graphql/admin";
import { IFollower } from "../../types/actor/follower.model";
import RelayMixin from "../../mixins/relay";
import RouteName from "@/router/name";
import { Paginate } from "@/types/paginate";
const FOLLOWERS_PER_PAGE = 10;
@Component({
apollo: {
relayFollowers: {
query: RELAY_FOLLOWERS,
variables() {
return {
page: this.page,
limit: FOLLOWERS_PER_PAGE,
};
},
},
},
metaInfo() {
return {
title: this.$t("Followers") as string,
titleTemplate: "%s | Mobilizon",
};
},
})
export default class Followers extends Mixins(RelayMixin) {
RelayMixin = RelayMixin;
formatDistanceToNow = formatDistanceToNow;
relayFollowers: Paginate<IFollower> = { elements: [], total: 0 };
checkedRows: IFollower[] = [];
FOLLOWERS_PER_PAGE = FOLLOWERS_PER_PAGE;
toggle(row: Record<string, unknown>): void {
this.table.toggleDetails(row);
}
get page(): number {
return parseInt((this.$route.query.page as string) || "1", 10);
}
set page(page: number) {
this.pushRouter(RouteName.RELAY_FOLLOWERS, {
page: page.toString(),
});
}
acceptRelays(): void {
this.checkedRows.forEach((row: IFollower) => {
this.acceptRelay(`${row.actor.preferredUsername}@${row.actor.domain}`);
});
}
rejectRelays(): void {
this.checkedRows.forEach((row: IFollower) => {
this.rejectRelay(`${row.actor.preferredUsername}@${row.actor.domain}`);
});
}
async acceptRelay(address: string): Promise<void> {
try {
await this.$apollo.mutate({
mutation: ACCEPT_RELAY,
variables: {
address,
},
});
await this.$apollo.queries.relayFollowers.refetch();
this.checkedRows = [];
} catch (e: any) {
if (e.message) {
Snackbar.open({
message: e.message,
type: "is-danger",
position: "is-bottom",
});
}
}
}
async rejectRelay(address: string): Promise<void> {
try {
await this.$apollo.mutate({
mutation: REJECT_RELAY,
variables: {
address,
},
});
await this.$apollo.queries.relayFollowers.refetch();
this.checkedRows = [];
} catch (e: any) {
if (e.message) {
Snackbar.open({
message: e.message,
type: "is-danger",
position: "is-bottom",
});
}
}
}
get checkedRowsHaveAtLeastOneToApprove(): boolean {
return this.checkedRows.some((checkedRow) => !checkedRow.approved);
}
async onFollowersPageChange(page: number): Promise<void> {
this.page = page;
try {
await this.$apollo.queries.relayFollowers.fetchMore({
variables: {
page: this.page,
limit: FOLLOWERS_PER_PAGE,
},
});
} catch (err: any) {
console.error(err);
}
}
}
</script>

View File

@ -1,311 +0,0 @@
<template>
<div>
<form @submit="followRelay">
<b-field
:label="$t('Add an instance')"
custom-class="add-relay"
horizontal
>
<b-field grouped expanded size="is-large">
<p class="control">
<b-input
v-model="newRelayAddress"
:placeholder="$t('Ex: mobilizon.fr')"
/>
</p>
<p class="control">
<b-button type="is-primary" native-type="submit">{{
$t("Add an instance")
}}</b-button>
</p>
</b-field>
</b-field>
</form>
<b-table
v-show="relayFollowings.elements.length > 0"
:data="relayFollowings.elements"
:loading="$apollo.queries.relayFollowings.loading"
ref="table"
:checked-rows.sync="checkedRows"
:is-row-checkable="(row) => row.id !== 3"
detailed
:show-detail-icon="false"
paginated
backend-pagination
:current-page.sync="page"
:aria-next-label="$t('Next page')"
:aria-previous-label="$t('Previous page')"
:aria-page-label="$t('Page')"
:aria-current-label="$t('Current page')"
:total="relayFollowings.total"
:per-page="FOLLOWINGS_PER_PAGE"
@page-change="onFollowingsPageChange"
checkable
checkbox-position="left"
>
<b-table-column
field="targetActor.id"
label="ID"
width="40"
numeric
v-slot="props"
>{{ props.row.targetActor.id }}</b-table-column
>
<b-table-column
field="targetActor.type"
:label="$t('Type')"
width="80"
v-slot="props"
>
<b-icon
icon="lan"
v-if="RelayMixin.isInstance(props.row.targetActor)"
/>
<b-icon icon="account-circle" v-else />
</b-table-column>
<b-table-column
field="approved"
:label="$t('Status')"
width="100"
sortable
centered
v-slot="props"
>
<span
:class="`tag ${props.row.approved ? 'is-success' : 'is-danger'}`"
>{{ props.row.approved ? $t("Accepted") : $t("Pending") }}</span
>
</b-table-column>
<b-table-column field="targetActor.domain" :label="$t('Domain')" sortable>
<template v-slot:default="props">
<a
@click="toggle(props.row)"
v-if="RelayMixin.isInstance(props.row.targetActor)"
>{{ props.row.targetActor.domain }}</a
>
<a @click="toggle(props.row)" v-else>{{
`${props.row.targetActor.preferredUsername}@${props.row.targetActor.domain}`
}}</a>
</template>
</b-table-column>
<b-table-column
field="targetActor.updatedAt"
:label="$t('Date')"
sortable
v-slot="props"
>
<span
:title="$options.filters.formatDateTimeString(props.row.updatedAt)"
>{{
formatDistanceToNow(new Date(props.row.updatedAt), {
locale: $dateFnsLocale,
})
}}</span
></b-table-column
>
<template #detail="props">
<article>
<div class="content">
<strong>{{ props.row.targetActor.name }}</strong>
<small v-if="props.row.actor.preferredUsername !== 'relay'"
>@{{ props.row.targetActor.preferredUsername }}</small
>
<p v-html="props.row.targetActor.summary" />
</div>
</article>
</template>
<template slot="bottom-left" v-if="checkedRows.length > 0">
<b-button @click="removeRelays" type="is-danger">
{{
$tc(
"No instance to remove|Remove instance|Remove {number} instances",
checkedRows.length,
{ number: checkedRows.length }
)
}}
</b-button>
</template>
</b-table>
<b-message type="is-danger" v-if="relayFollowings.total === 0">{{
$t("You don't follow any instances yet.")
}}</b-message>
</div>
</template>
<script lang="ts">
import { Component, Mixins } from "vue-property-decorator";
import { SnackbarProgrammatic as Snackbar } from "buefy";
import { formatDistanceToNow } from "date-fns";
import { ADD_RELAY, REMOVE_RELAY } from "../../graphql/admin";
import { IFollower } from "../../types/actor/follower.model";
import RelayMixin from "../../mixins/relay";
import { RELAY_FOLLOWINGS } from "@/graphql/admin";
import { Paginate } from "@/types/paginate";
import RouteName from "@/router/name";
import { ApolloCache, FetchResult, Reference } from "@apollo/client/core";
import gql from "graphql-tag";
const FOLLOWINGS_PER_PAGE = 10;
@Component({
apollo: {
relayFollowings: {
query: RELAY_FOLLOWINGS,
variables() {
return {
page: this.page,
limit: FOLLOWINGS_PER_PAGE,
};
},
},
},
metaInfo() {
return {
title: this.$t("Followings") as string,
titleTemplate: "%s | Mobilizon",
};
},
})
export default class Followings extends Mixins(RelayMixin) {
newRelayAddress = "";
RelayMixin = RelayMixin;
formatDistanceToNow = formatDistanceToNow;
relayFollowings: Paginate<IFollower> = { elements: [], total: 0 };
FOLLOWINGS_PER_PAGE = FOLLOWINGS_PER_PAGE;
checkedRows: IFollower[] = [];
get page(): number {
return parseInt((this.$route.query.page as string) || "1", 10);
}
set page(page: number) {
this.pushRouter(RouteName.RELAY_FOLLOWINGS, {
page: page.toString(),
});
}
async onFollowingsPageChange(page: number): Promise<void> {
this.page = page;
try {
await this.$apollo.queries.relayFollowings.fetchMore({
variables: {
page: this.page,
limit: FOLLOWINGS_PER_PAGE,
},
});
} catch (err: any) {
console.error(err);
}
}
async followRelay(e: Event): Promise<void> {
e.preventDefault();
try {
await this.$apollo.mutate<{ relayFollowings: Paginate<IFollower> }>({
mutation: ADD_RELAY,
variables: {
address: this.newRelayAddress.trim(), // trim to fix copy and paste domain name spaces and tabs
},
update(
cache: ApolloCache<{ relayFollowings: Paginate<IFollower> }>,
{ data }: FetchResult
) {
cache.modify({
fields: {
relayFollowings(
existingFollowings = { elements: [], total: 0 },
{ readField }
) {
const newFollowingRef = cache.writeFragment({
id: `${data?.addRelay.__typename}:${data?.addRelay.id}`,
data: data?.addRelay,
fragment: gql`
fragment NewFollowing on Follower {
id
}
`,
});
if (
existingFollowings.elements.some(
(ref: Reference) =>
readField("id", ref) === data?.addRelay.id
)
) {
return existingFollowings;
}
return {
total: existingFollowings.total + 1,
elements: [newFollowingRef, ...existingFollowings.elements],
};
},
},
broadcast: false,
});
},
});
this.newRelayAddress = "";
} catch (err: any) {
if (err.message) {
Snackbar.open({
message: err.message,
type: "is-danger",
position: "is-bottom",
});
}
}
}
removeRelays(): void {
this.checkedRows.forEach((row: IFollower) => {
this.removeRelay(row);
});
}
async removeRelay(follower: IFollower): Promise<void> {
const address = `${follower.targetActor.preferredUsername}@${follower.targetActor.domain}`;
try {
await this.$apollo.mutate<{ removeRelay: IFollower }>({
mutation: REMOVE_RELAY,
variables: {
address,
},
update(cache: ApolloCache<{ removeRelay: IFollower }>) {
cache.modify({
fields: {
relayFollowings(existingFollowingRefs, { readField }) {
return {
total: existingFollowingRefs.total - 1,
elements: existingFollowingRefs.elements.filter(
(followingRef: Reference) =>
follower.id !== readField("id", followingRef)
),
};
},
},
});
},
});
await this.$apollo.queries.relayFollowings.refetch();
this.checkedRows = [];
} catch (e: any) {
if (e.message) {
Snackbar.open({
message: e.message,
type: "is-danger",
position: "is-bottom",
});
}
}
}
}
</script>

View File

@ -195,10 +195,18 @@
<script lang="ts">
import { Component, Prop, Vue, Watch } from "vue-property-decorator";
import { Editor, EditorContent, BubbleMenu } from "@tiptap/vue-2";
import StarterKit from "@tiptap/starter-kit";
import Blockquote from "@tiptap/extension-blockquote";
import BulletList from "@tiptap/extension-bullet-list";
import Heading from "@tiptap/extension-heading";
import Document from "@tiptap/extension-document";
import Paragraph from "@tiptap/extension-paragraph";
import Bold from "@tiptap/extension-bold";
import Italic from "@tiptap/extension-italic";
import Strike from "@tiptap/extension-strike";
import Text from "@tiptap/extension-text";
import Dropcursor from "@tiptap/extension-dropcursor";
import Gapcursor from "@tiptap/extension-gapcursor";
import History from "@tiptap/extension-history";
import { IActor, IPerson, usernameWithDomain } from "../types/actor";
import CustomImage from "./Editor/Image";
import { UPLOAD_MEDIA } from "../graphql/upload";
@ -210,7 +218,6 @@ import OrderedList from "@tiptap/extension-ordered-list";
import ListItem from "@tiptap/extension-list-item";
import Underline from "@tiptap/extension-underline";
import Link from "@tiptap/extension-link";
import CharacterCount from "@tiptap/extension-character-count";
import { AutoDir } from "./Editor/Autodir";
import sanitizeHtml from "sanitize-html";
@ -269,7 +276,9 @@ export default class EditorComponent extends Vue {
transformPastedHTML: this.transformPastedHTML,
},
extensions: [
StarterKit,
Blockquote,
BulletList,
Heading,
Document,
Paragraph,
Text,
@ -279,12 +288,15 @@ export default class EditorComponent extends Vue {
CustomImage,
AutoDir,
Underline,
Bold,
Italic,
Strike,
Dropcursor,
Gapcursor,
History,
Link.configure({
HTMLAttributes: { target: "_blank", rel: "noopener noreferrer ugc" },
}),
CharacterCount.configure({
limit: this.maxSize,
}),
],
injectCSS: false,
content: this.value,

View File

@ -7,6 +7,8 @@ import apolloProvider from "@/vue-apollo";
import { IPerson } from "@/types/actor";
import pDebounce from "p-debounce";
import { NormalizedCacheObject } from "@apollo/client/cache/inmemory/types";
import { MentionOptions } from "@tiptap/extension-mention";
import { Editor } from "@tiptap/core";
const client =
apolloProvider.defaultClient as ApolloClient<NormalizedCacheObject>;
@ -24,13 +26,21 @@ const fetchItems = async (query: string): Promise<IPerson[]> => {
const debouncedFetchItems = pDebounce(fetchItems, 200);
const mentionOptions: Partial<any> = {
const mentionOptions: MentionOptions = {
HTMLAttributes: {
class: "mention",
dir: "ltr",
},
renderLabel({ options, node }) {
return `${options.suggestion.char}${node.attrs.label ?? node.attrs.id}`;
},
suggestion: {
items: async (query: string): Promise<IPerson[]> => {
items: async ({
query,
}: {
query: string;
editor: Editor;
}): Promise<IPerson[]> => {
if (query === "") {
return [];
}
@ -70,8 +80,12 @@ const mentionOptions: Partial<any> = {
return component.ref?.onKeyDown(props);
},
onExit() {
popup[0].destroy();
component.destroy();
if (popup && popup[0]) {
popup[0].destroy();
}
if (component) {
component.destroy();
}
},
};
},

View File

@ -7,7 +7,7 @@
:key="index"
@click="selectItem(index)"
>
<actor-card :actor="item" />
<actor-inline :actor="item" />
</button>
</div>
</template>
@ -16,11 +16,11 @@
import { Vue, Component, Prop, Watch } from "vue-property-decorator";
import { displayName, usernameWithDomain } from "@/types/actor/actor.model";
import { IPerson } from "@/types/actor";
import ActorCard from "../../components/Account/ActorCard.vue";
import ActorInline from "../../components/Account/ActorInline.vue";
@Component({
components: {
ActorCard,
ActorInline,
},
})
export default class MentionList extends Vue {

View File

@ -5,10 +5,14 @@
.ProseMirror {
position: relative;
}
.ProseMirror {
word-wrap: break-word;
white-space: pre-wrap;
white-space: break-spaces;
-webkit-font-variant-ligatures: none;
font-variant-ligatures: none;
font-feature-settings: "liga" 0; /* the above doesn't seem to work in Edge */
& [contenteditable="false"] {
white-space: normal;
@ -16,14 +20,22 @@
& [contenteditable="false"] [contenteditable="true"] {
white-space: pre-wrap;
}
pre {
& pre {
white-space: pre-wrap;
}
}
img.ProseMirror-separator {
display: inline !important;
border: none !important;
margin: 0 !important;
width: 1px !important;
height: 1px !important;
}
.ProseMirror-gapcursor {
display: none;
pointer-events: none;
position: absolute;
margin: 0;
&:after {
content: "";
@ -40,16 +52,17 @@
visibility: hidden;
}
}
.ProseMirror-hideselection * {
&::selection {
.ProseMirror-hideselection {
*::selection {
background: transparent;
}
&::-moz-selection {
*::-moz-selection {
background: transparent;
}
caret-color: transparent;
* {
caret-color: transparent;
}
}
.ProseMirror-focused .ProseMirror-gapcursor {
display: block;
}

View File

@ -188,16 +188,22 @@ a.card {
a {
text-decoration: none;
}
span.tag {
margin: 5px auto;
text-overflow: ellipsis;
overflow: hidden;
display: block;
font-size: 0.9em;
line-height: 1.75em;
span.tag {
margin: 5px auto;
text-overflow: ellipsis;
overflow: hidden;
display: block;
font-size: 0.9em;
line-height: 1.75em;
&:not(.is-info, .is-danger) {
background-color: #e6e4f4;
color: #3c376e;
color: $violet-3;
}
&.is-info {
color: $violet-3;
}
}
}

View File

@ -169,17 +169,20 @@ export default class EventFullDate extends Vue {
isSameDay(): boolean {
const sameDay =
new Date(this.beginsOn).toDateString() ===
new Date(this.endsOn).toDateString();
this.beginsOnDate.toDateString() === new Date(this.endsOn).toDateString();
return this.endsOn !== undefined && sameDay;
}
get beginsOnDate(): Date {
return new Date(this.beginsOn);
}
get differentFromUserTimezone(): boolean {
return (
!!this.timezone &&
!!this.userActualTimezone &&
getTimezoneOffset(this.timezone) !==
getTimezoneOffset(this.userActualTimezone) &&
getTimezoneOffset(this.timezone, this.beginsOnDate) !==
getTimezoneOffset(this.userActualTimezone, this.beginsOnDate) &&
this.timezone !== this.userActualTimezone
);
}

View File

@ -45,6 +45,7 @@ div.eventMetadataBlock {
.content-wrapper {
overflow: hidden;
width: 100%;
max-width: calc(100vw - 32px - 20px);
&.padding-left {
padding: 0 20px;

View File

@ -34,12 +34,6 @@
class="metadata-organized-by"
:title="$t('Organized by')"
>
<popover-actor-card
:actor="event.organizerActor"
v-if="!event.attributedTo"
>
<actor-card :actor="event.organizerActor" />
</popover-actor-card>
<router-link
v-if="event.attributedTo"
:to="{
@ -49,23 +43,20 @@
},
}"
>
<popover-actor-card
:actor="event.attributedTo"
<actor-card
v-if="
!event.attributedTo || !event.options.hideOrganizerWhenGroupEvent
"
>
<actor-card :actor="event.attributedTo" />
</popover-actor-card>
:actor="event.attributedTo"
:inline="true"
/>
</router-link>
<popover-actor-card
<actor-card v-else :actor="event.organizerActor" :inline="true" />
<actor-card
:actor="contact"
v-for="contact in event.contacts"
:key="contact.id"
>
<actor-card :actor="contact" />
</popover-actor-card>
/>
</event-metadata-block>
<event-metadata-block
v-if="event.onlineAddress && urlToHostname(event.onlineAddress)"

View File

@ -18,6 +18,20 @@
</div>
<div class="title-info-wrapper has-text-grey-dark">
<h3 class="event-minimalist-title" :lang="event.language" dir="auto">
<b-tag
type="is-info"
class="mr-1"
v-if="event.status === EventStatus.TENTATIVE"
>
{{ $t("Tentative") }}
</b-tag>
<b-tag
type="is-danger"
class="mr-1"
v-if="event.status === EventStatus.CANCELLED"
>
{{ $t("Cancelled") }}
</b-tag>
<b-tag
class="mr-2"
type="is-warning"
@ -105,7 +119,7 @@
import { Component, Prop, Vue } from "vue-property-decorator";
import { IEvent, organizer, organizerDisplayName } from "@/types/event.model";
import DateCalendarIcon from "@/components/Event/DateCalendarIcon.vue";
import { ParticipantRole } from "@/types/enums";
import { EventStatus, ParticipantRole } from "@/types/enums";
import RouteName from "../../router/name";
import LazyImageWrapper from "@/components/Image/LazyImageWrapper.vue";
import InlineAddress from "@/components/Address/InlineAddress.vue";
@ -129,6 +143,8 @@ export default class EventMinimalistCard extends Vue {
organizerDisplayName = organizerDisplayName;
organizer = organizer;
EventStatus = EventStatus;
}
</script>
<style lang="scss" scoped>

View File

@ -45,6 +45,22 @@
</div>
<div class="list-card-content">
<div class="title-wrapper" dir="auto">
<b-tag
type="is-info"
class="mr-1 mb-1"
size="is-medium"
v-if="participation.event.status === EventStatus.TENTATIVE"
>
{{ $t("Tentative") }}
</b-tag>
<b-tag
type="is-danger"
class="mr-1 mb-1"
size="is-medium"
v-if="participation.event.status === EventStatus.CANCELLED"
>
{{ $t("Cancelled") }}
</b-tag>
<router-link
:to="{
name: RouteName.EVENT,
@ -257,7 +273,7 @@ import { Component, Prop } from "vue-property-decorator";
import DateCalendarIcon from "@/components/Event/DateCalendarIcon.vue";
import { mixins } from "vue-class-component";
import { RawLocation, Route } from "vue-router";
import { EventVisibility, ParticipantRole } from "@/types/enums";
import { EventStatus, EventVisibility, ParticipantRole } from "@/types/enums";
import { IParticipant } from "../../types/participant.model";
import {
IEventCardOptions,
@ -326,6 +342,8 @@ export default class EventParticipationCard extends mixins(
RouteName = RouteName;
EventStatus = EventStatus;
get mergedOptions(): IEventCardOptions {
return { ...defaultOptions, ...this.options };
}

View File

@ -51,6 +51,13 @@ import { MemberRole } from "@/types/enums";
groupMemberships: {
query: LOGGED_USER_MEMBERSHIPS,
update: (data) => data.loggedUser.memberships,
variables() {
return {
page: 1,
limit: 10,
membershipName: this.actorFilter,
};
},
},
identities: IDENTITIES,
currentActor: CURRENT_ACTOR_CLIENT,

View File

@ -65,42 +65,60 @@
/>
</div>
<div class="column contact-picker">
<div v-if="isSelectedActorAGroup && actorMembers.length > 0">
<div v-if="isSelectedActorAGroup">
<p>{{ $t("Add a contact") }}</p>
<b-input
:placeholder="$t('Filter by name')"
v-model="contactFilter"
dir="auto"
/>
<p
class="field"
v-for="actor in filteredActorMembers"
:key="actor.id"
>
<b-checkbox v-model="actualContacts" :native-value="actor.id">
<div class="media">
<div class="media-left">
<figure class="image is-48x48" v-if="actor.avatar">
<img
class="image is-rounded"
:src="actor.avatar.url"
:alt="actor.avatar.alt"
<div v-if="actorMembers.length > 0">
<p
class="field"
v-for="actor in filteredActorMembers"
:key="actor.id"
>
<b-checkbox
v-model="actualContacts"
:native-value="actor.id"
>
<div class="media">
<div class="media-left">
<figure class="image is-48x48" v-if="actor.avatar">
<img
class="image is-rounded"
:src="actor.avatar.url"
:alt="actor.avatar.alt"
/>
</figure>
<b-icon
v-else
size="is-large"
icon="account-circle"
/>
</figure>
<b-icon v-else size="is-large" icon="account-circle" />
</div>
<div class="media-content" v-if="actor.name">
<p class="is-4">{{ actor.name }}</p>
<p class="is-6 has-text-grey-dark">
</div>
<div class="media-content" v-if="actor.name">
<p class="is-4">{{ actor.name }}</p>
<p class="is-6 has-text-grey-dark">
{{ `@${usernameWithDomain(actor)}` }}
</p>
</div>
<div class="media-content" v-else>
{{ `@${usernameWithDomain(actor)}` }}
</p>
</div>
</div>
<div class="media-content" v-else>
{{ `@${usernameWithDomain(actor)}` }}
</div>
</div>
</b-checkbox>
</p>
</b-checkbox>
</p>
</div>
<div
v-else-if="
actorMembers.length === 0 && contactFilter.length > 0
"
>
<empty-content icon="account-multiple" :inline="true">
{{ $t("No group member found") }}
</empty-content>
</div>
</div>
<div v-else class="content has-text-grey-dark has-text-centered">
<p>{{ $t("Your profile will be shown as contact.") }}</p>
@ -122,6 +140,7 @@ import { Component, Prop, Vue, Watch } from "vue-property-decorator";
import { IMember } from "@/types/actor/member.model";
import { IActor, IGroup, IPerson, usernameWithDomain } from "../../types/actor";
import OrganizerPicker from "./OrganizerPicker.vue";
import EmptyContent from "../Utils/EmptyContent.vue";
import {
CURRENT_ACTOR_CLIENT,
IDENTITIES,
@ -139,16 +158,17 @@ const MEMBER_ROLES = [
];
@Component({
components: { OrganizerPicker },
components: { OrganizerPicker, EmptyContent },
apollo: {
members: {
query: GROUP_MEMBERS,
variables() {
return {
name: usernameWithDomain(this.selectedActor),
groupName: usernameWithDomain(this.selectedActor),
page: this.membersPage,
limit: 10,
roles: MEMBER_ROLES.join(","),
name: this.contactFilter,
};
},
update: (data) => data.group.members,
@ -161,9 +181,11 @@ const MEMBER_ROLES = [
currentActor: CURRENT_ACTOR_CLIENT,
userMemberships: {
query: LOGGED_USER_MEMBERSHIPS,
variables: {
page: 1,
limit: 100,
variables() {
return {
page: 1,
limit: 10,
};
},
update: (data) => data.loggedUser.memberships,
},

View File

@ -21,7 +21,7 @@
maxlength="20"
maxtags="10"
:placeholder="$t('Eg: Stockholm, Dance, Chess…')"
@typing="getFilteredTags"
@typing="debouncedGetFilteredTags"
:id="id"
dir="auto"
>
@ -33,6 +33,7 @@ import { Component, Prop, Vue } from "vue-property-decorator";
import differenceBy from "lodash/differenceBy";
import { ITag } from "../../types/tag.model";
import { FILTER_TAGS } from "@/graphql/tags";
import debounce from "lodash/debounce";
@Component({
apollo: {
@ -63,6 +64,12 @@ export default class TagInput extends Vue {
return `tag-input-${TagInput.componentId}`;
}
data(): Record<string, unknown> {
return {
debouncedGetFilteredTags: debounce(this.getFilteredTags, 200),
};
}
async getFilteredTags(text: string): Promise<void> {
this.text = text;
await this.$apollo.queries.tags.refetch();

View File

@ -31,8 +31,12 @@
</span>
</div>
</div>
<div class="content mb-2" dir="auto" v-html="group.summary" />
<div class="card-custom-footer">
<div
class="content mb-2 line-clamp-3"
dir="auto"
v-html="group.summary"
/>
<div>
<inline-address
class="has-text-grey-dark"
v-if="group.physicalAddress"

View File

@ -28,7 +28,7 @@ export default class Vue2LeafletLocateControl extends Vue {
unknown
>;
@Prop({ type: Boolean, default: true }) visible = true;
@Prop({ type: Boolean, default: true }) visible!: boolean;
ready = false;

View File

@ -285,6 +285,11 @@ export default class NavBar extends Vue {
// If we don't have any identities, the user has validated their account,
// is logging for the first time but didn't create an identity somehow
if (this.identities.length === 0) {
console.debug(
"We have no identities listed for current user",
this.identities
);
console.debug("Pushing route to REGISTER_PROFILE");
try {
await this.$router.push({
name: RouteName.REGISTER_PROFILE,

View File

@ -78,7 +78,7 @@
/>
<SettingMenuItem
:title="$t('Federation')"
:to="{ name: RouteName.RELAYS }"
:to="{ name: RouteName.INSTANCES }"
/>
</SettingMenuSection>
</ul>

View File

@ -17,7 +17,8 @@ span.tag {
background: $purple-3;
color: $violet-2;
text-transform: uppercase;
&::before {
&:not(.category)::before {
content: "#";
}
}

View File

@ -7,29 +7,23 @@
<b-field :label="$t('Title')">
<b-input v-model="title" />
</b-field>
<b-field :label="$t('Assigned to')">
<actor-auto-complete v-model="assignedTo" />
</b-field>
<b-field :label="$t('Assigned to')"> </b-field>
<b-field :label="$t('Due on')">
<b-datepicker v-model="dueDate" />
<b-datepicker v-model="dueDate" :first-day-of-week="firstDayOfWeek" />
</b-field>
</div>
</div>
</template>
<script lang="ts">
import { Component, Prop, Vue } from "vue-property-decorator";
import { Prop, Vue } from "vue-property-decorator";
import debounce from "lodash/debounce";
import { DebouncedFunc } from "lodash";
import { SnackbarProgrammatic as Snackbar } from "buefy";
import { ITodo } from "../../types/todos";
import RouteName from "../../router/name";
import { UPDATE_TODO } from "../../graphql/todos";
import ActorAutoComplete from "../Account/ActorAutoComplete.vue";
import { IPerson } from "../../types/actor";
@Component({
components: { ActorAutoComplete },
})
export default class Todo extends Vue {
@Prop({ required: true, type: Object }) todo!: ITodo;
@ -99,5 +93,9 @@ export default class Todo extends Vue {
});
}
}
get firstDayOfWeek(): number {
return this.$dateFnsLocale?.options?.weekStartsOn || 0;
}
}
</script>

View File

@ -0,0 +1,69 @@
<template>
<nav class="flex mb-3" :aria-label="$t('Breadcrumbs')">
<ol class="inline-flex items-center space-x-1 md:space-x-3 flex-wrap">
<li
class="inline-flex items-center"
v-for="(element, index) in links"
:key="index"
:aria-current="index > 0 ? 'page' : undefined"
>
<router-link
v-if="index === 0"
:to="element"
class="inline-flex items-center text-gray-800 hover:text-gray-900"
>
{{ element.text }}
</router-link>
<div class="flex items-center" v-else-if="index === links.length - 1">
<svg
class="w-6 h-6 text-gray-400 rtl:rotate-180"
fill="currentColor"
viewBox="0 0 20 20"
xmlns="http://www.w3.org/2000/svg"
>
<path
fill-rule="evenodd"
d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
clip-rule="evenodd"
></path>
</svg>
<span
class="ltr:ml-1 rtl:mr-1 font-medium text-gray-600 md:ltr:ml-2 md:rtl:mr-2"
>{{ element.text }}</span
>
</div>
<div class="flex items-center" v-else>
<svg
class="w-6 h-6 text-gray-400 rtl:rotate-180"
fill="currentColor"
viewBox="0 0 20 20"
xmlns="http://www.w3.org/2000/svg"
>
<path
fill-rule="evenodd"
d="M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z"
clip-rule="evenodd"
></path>
</svg>
<router-link
:to="element"
class="ltr:ml-1 rtl:mr-1 font-medium text-gray-800 hover:text-gray-900 md:ltr:ml-2 md:rtl:mr-2"
>{{ element.text }}</router-link
>
</div>
</li>
<slot></slot>
</ol>
</nav>
</template>
<script lang="ts">
import { Component, Prop, Vue } from "vue-property-decorator";
import { Location } from "vue-router";
type LinkElement = Location & { text: string };
@Component
export default class Breadcrumbs extends Vue {
@Prop({ type: Array, required: true }) links!: LinkElement[];
}
</script>

View File

@ -41,6 +41,7 @@ export const FETCH_PERSON = gql`
uuid
title
beginsOn
status
}
}
}
@ -84,6 +85,7 @@ export const GET_PERSON = gql`
uuid
title
beginsOn
status
}
}
participations(page: $participationPage, limit: $participationLimit) {
@ -95,6 +97,7 @@ export const GET_PERSON = gql`
uuid
title
beginsOn
status
}
}
}
@ -213,6 +216,7 @@ export const LOGGED_USER_DRAFTS = gql`
alt
}
beginsOn
status
visibility
attributedTo {
...ActorFragment
@ -235,10 +239,14 @@ export const LOGGED_USER_DRAFTS = gql`
`;
export const LOGGED_USER_MEMBERSHIPS = gql`
query LoggedUserMemberships($page: Int, $limit: Int) {
query LoggedUserMemberships(
$membershipName: String
$page: Int
$limit: Int
) {
loggedUser {
id
memberships(page: $page, limit: $limit) {
memberships(name: $membershipName, page: $page, limit: $limit) {
total
elements {
id

View File

@ -70,6 +70,67 @@ export const RELAY_FOLLOWINGS = gql`
${RELAY_FRAGMENT}
`;
export const INSTANCE_FRAGMENT = gql`
fragment InstanceFragment on Instance {
domain
hasRelay
followerStatus
followedStatus
eventCount
personCount
groupCount
followersCount
followingsCount
reportsCount
mediaSize
}
`;
export const INSTANCE = gql`
query instance($domain: ID!) {
instance(domain: $domain) {
...InstanceFragment
}
}
${INSTANCE_FRAGMENT}
`;
export const INSTANCES = gql`
query Instances(
$page: Int
$limit: Int
$orderBy: InstancesSortFields
$direction: String
$filterDomain: String
$filterFollowStatus: InstanceFilterFollowStatus
$filterSuspendStatus: InstanceFilterSuspendStatus
) {
instances(
page: $page
limit: $limit
orderBy: $orderBy
direction: $direction
filterDomain: $filterDomain
filterFollowStatus: $filterFollowStatus
filterSuspendStatus: $filterSuspendStatus
) {
total
elements {
...InstanceFragment
}
}
}
${INSTANCE_FRAGMENT}
`;
export const ADD_INSTANCE = gql`
mutation addInstance($domain: String!) {
addInstance(domain: $domain) {
...InstanceFragment
}
}
${INSTANCE_FRAGMENT}
`;
export const ADD_RELAY = gql`
mutation addRelay($address: String!) {
addRelay(address: $address) {
@ -190,3 +251,26 @@ export const SAVE_ADMIN_SETTINGS = gql`
}
${ADMIN_SETTINGS_FRAGMENT}
`;
export const ADMIN_UPDATE_USER = gql`
mutation AdminUpdateUser(
$id: ID!
$email: String
$role: UserRole
$confirmed: Boolean
$notify: Boolean
) {
adminUpdateUser(
id: $id
email: $email
role: $role
confirmed: $confirmed
notify: $notify
) {
id
email
role
confirmedAt
}
}
`;

View File

@ -11,6 +11,10 @@ export const CONFIG = gql`
demoMode
countryCode
languages
eventCategories {
id
label
}
anonymous {
participation {
allowed
@ -103,6 +107,10 @@ export const CONFIG_EDIT_EVENT = gql`
features {
groups
}
eventCategories {
id
label
}
anonymous {
participation {
allowed

View File

@ -23,6 +23,7 @@ const FULL_EVENT_FRAGMENT = gql`
joinOptions
draft
language
category
picture {
id
url
@ -61,6 +62,7 @@ const FULL_EVENT_FRAGMENT = gql`
uuid
title
beginsOn
status
language
picture {
id
@ -202,11 +204,11 @@ export const CREATE_EVENT = gql`
$picture: MediaInput
$onlineAddress: String
$phoneAddress: String
$category: String
$category: EventCategory
$physicalAddress: AddressInput
$options: EventOptionsInput
$contacts: [Contact]
$metadata: EventMetadataInput
$metadata: [EventMetadataInput]
) {
createEvent(
organizerActorId: $organizerActorId
@ -252,11 +254,11 @@ export const EDIT_EVENT = gql`
$phoneAddress: String
$organizerActorId: ID
$attributedToId: ID
$category: String
$category: EventCategory
$physicalAddress: AddressInput
$options: EventOptionsInput
$contacts: [Contact]
$metadata: EventMetadataInput
$metadata: [EventMetadataInput]
) {
updateEvent(
eventId: $id
@ -438,6 +440,7 @@ export const FETCH_GROUP_EVENTS = gql`
uuid
title
beginsOn
status
draft
options {
...EventOptions

View File

@ -42,6 +42,7 @@ export const LIST_GROUPS = gql`
id
uuid
title
status
beginsOn
}
total
@ -104,6 +105,7 @@ export const GROUP_FIELDS_FRAGMENTS = gql`
uuid
title
beginsOn
status
draft
language
options {

View File

@ -36,6 +36,7 @@ export const HOME_USER_QUERIES = gql`
alt
}
beginsOn
status
visibility
language
organizerActor {
@ -77,6 +78,7 @@ export const HOME_USER_QUERIES = gql`
uuid
title
beginsOn
status
picture {
url
}
@ -127,6 +129,7 @@ export const CLOSE_CONTENT = gql`
title
uuid
beginsOn
status
picture {
id
url

View File

@ -44,10 +44,16 @@ export const REJECT_INVITATION = gql`
`;
export const GROUP_MEMBERS = gql`
query ($name: String!, $roles: String, $page: Int, $limit: Int) {
group(preferredUsername: $name) {
query (
$groupName: String!
$name: String
$roles: String
$page: Int
$limit: Int
) {
group(preferredUsername: $groupName) {
...ActorFragment
members(page: $page, limit: $limit, roles: $roles) {
members(name: $name, page: $page, limit: $limit, roles: $roles) {
elements {
id
role

View File

@ -32,6 +32,7 @@ export const LOGGED_USER_PARTICIPATIONS = gql`
alt
}
beginsOn
status
visibility
organizerActor {
...ActorFragment
@ -98,6 +99,7 @@ export const LOGGED_USER_UPCOMING_EVENTS = gql`
alt
}
beginsOn
status
visibility
organizerActor {
...ActorFragment
@ -144,6 +146,7 @@ export const LOGGED_USER_UPCOMING_EVENTS = gql`
uuid
title
beginsOn
status
picture {
url
}

View File

@ -2,8 +2,13 @@ import gql from "graphql-tag";
import { ACTOR_FRAGMENT } from "./actor";
export const REPORTS = gql`
query Reports($status: ReportStatus, $page: Int, $limit: Int) {
reports(status: $status, page: $page, limit: $limit) {
query Reports(
$status: ReportStatus
$domain: String
$page: Int
$limit: Int
) {
reports(status: $status, domain: $domain, page: $page, limit: $limit) {
total
elements {
id

View File

@ -11,6 +11,7 @@ export const SEARCH_EVENTS_AND_GROUPS = gql`
$tags: String
$term: String
$type: EventType
$category: String
$beginsOn: DateTime
$endsOn: DateTime
$eventPage: Int
@ -23,6 +24,7 @@ export const SEARCH_EVENTS_AND_GROUPS = gql`
tags: $tags
term: $term
type: $type
category: $category
beginsOn: $beginsOn
endsOn: $endsOn
page: $eventPage
@ -38,6 +40,7 @@ export const SEARCH_EVENTS_AND_GROUPS = gql`
id
url
}
status
tags {
...TagFragment
}
@ -108,6 +111,7 @@ export const INTERACT = gql`
title
uuid
beginsOn
status
picture {
id
url

View File

@ -209,14 +209,30 @@ export const UPDATE_ACTIVITY_SETTING = gql`
`;
export const LIST_USERS = gql`
query ListUsers($email: String, $page: Int, $limit: Int) {
users(email: $email, page: $page, limit: $limit) {
query ListUsers(
$email: String
$currentSignInIp: String
$page: Int
$limit: Int
$sort: SortableUserField
$direction: SortDirection
) {
users(
email: $email
currentSignInIp: $currentSignInIp
page: $page
limit: $limit
sort: $sort
direction: $direction
) {
total
elements {
id
email
locale
confirmedAt
currentSignInIp
currentSignInAt
disabled
actors {
...ActorFragment

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1263
js/src/i18n/cy.json Normal file

File diff suppressed because it is too large Load Diff

222
js/src/i18n/da.json Normal file
View File

@ -0,0 +1,222 @@
{
"A user-friendly, emancipatory and ethical tool for gathering, organising, and mobilising.": "Et brugervenligt, befriende og etisk værktøj for at samles, organisere og mobilisere.",
"A validation email was sent to {email}": "En godkendelsesemail er blevet sendt til {email}",
"Abandon editing": "Afbryd redigering",
"About": "Om",
"About Mobilizon": "Om Mobilizon",
"About this event": "Om denne begivenhed",
"About this instance": "Om denne udbyder",
"Accepted": "Accepteret",
"Account": "Konto",
"Add": "Tilføj",
"Add a note": "Tilføj et notat",
"Add an address": "Tilføj en addresse",
"Add an instance": "Tilføj en udbyder",
"Add some tags": "Tilføj nogle nøgleord",
"Add to my calendar": "Tilføj til min kalender",
"Additional comments": "Yderligere kommentarer",
"Admin": "Administrator",
"Admin settings successfully saved.": "Administrator indstillinger er blevet gemt.",
"Administration": "Administrering",
"All the places have already been taken": "Alle pladserne er allerede optaget",
"Allow registrations": "Tillad registrering",
"Anonymous participant": "Anonym deltager",
"Anonymous participants will be asked to confirm their participation through e-mail.": "Anonyme deltagere vil blive bedt om at bekræfte deres deltagelse via e-mail.",
"Anonymous participations": "Anonyme deltagelser",
"Are you really sure you want to delete your whole account? You'll lose everything. Identities, settings, events created, messages and participations will be gone forever.": "Er du helt sikker på at du vil slette hele din konto? Alt vil forsvinde. Identiteter, indstillinger, skabte begivenheder, beskeder og deltagelser vil være borte for evigt.",
"Are you sure you want to <b>delete</b> this comment? This action cannot be undone.": "Er du sikker på at du vil <b>slette</b> kommentaren? Denne handling kan ikke fortrydes.",
"Are you sure you want to <b>delete</b> this event? This action cannot be undone. You may want to engage the discussion with the event creator or edit its event instead.": "Er du sikker på at du vil <b>slette</b> begivenheden? Denne handling kan ikke fortrydes. Du kan overveje at snakke med begivenhedens skaber eller at redigere begivenheden i stedet.",
"Are you sure you want to cancel the event creation? You'll lose all modifications.": "Er du sikker på at du vil annullere at skabe begivenheden? Alle ændringer vil gå tabt.",
"Are you sure you want to cancel the event edition? You'll lose all modifications.": "Er du sikker på at du vil annullere at redigere begivenheden? Alle ændringer vil gå tabt.",
"Are you sure you want to cancel your participation at event \"{title}\"?": "Er du sikker på at du vil annullere din deltagelse i begivenheden \"{title}\"?",
"Are you sure you want to delete this event? This action cannot be reverted.": "Er du sikker på du vil slette begivenheden? Denne handling kan ikke fortrydes.",
"Avatar": "Avatar",
"Back to previous page": "Tilbage til forrige side",
"Before you can login, you need to click on the link inside it to validate your account.": "Før du kan logge ind skal du klikke på linket i den for at bekræfte din konto.",
"By {username}": "Af {username}",
"Cancel": "Annuller",
"Cancel anonymous participation": "Annuller anonym deltagelse",
"Cancel creation": "Annuller skabelse",
"Cancel edition": "Annuller redigering",
"Cancel my participation request…": "Annuller min anmodning om deltagelse…",
"Cancel my participation…": "Annuller min deltagelse…",
"Cancelled: Won't happen": "Afbrudt: Sker ikke",
"Change": "Ændre",
"Change my email": "Skift email",
"Change my identity…": "Ændre min identitet…",
"Change my password": "Skift kodeord",
"Clear": "Ryd",
"Click to upload": "Klik for at uploade",
"Close": "Luk",
"Close comments for all (except for admins)": "Luk kommentarer for alle (undtagen administratorer)",
"Closed": "Lukket",
"Comment deleted": "Kommentar slettet",
"Comment from @{username} reported": "Kommentaren fra @{username} er blevet indberettet",
"Comments": "Kommentarer",
"Confirm my participation": "Bekræft min deltagelse",
"Confirmed: Will happen": "Bekræftet: Kommer til at ske",
"Continue editing": "Fortsæt med at redigere",
"Country": "Land",
"Create": "Skab",
"Create a new event": "Lav en ny begivenhed",
"Create a new group": "Lav en ny gruppe",
"Create a new identity": "Lav en ny identitet",
"Create group": "Skab en gruppe",
"Create my event": "Skab min begivenhed",
"Create my group": "Skab min gruppe",
"Create my profile": "Skab min profil",
"Create token": "Skab token",
"Current identity has been changed to {identityName} in order to manage this event.": "Den aktive identitet er blevet ændret til {identityName} for at håndtere denne begivenhed.",
"Current page": "Nuværende side",
"Custom": "Tilpasset",
"Custom URL": "Tilpasset addresse",
"Custom text": "Tilpasset tekst",
"Dashboard": "Dashboard",
"Date": "Dato",
"Date and time settings": "Dato og tidsinstillinger",
"Date parameters": "Datoparametre",
"Default": "Standard",
"Delete": "Slet",
"Delete Comment": "Slet kommentar",
"Delete Event": "Slet begivenhed",
"Delete account": "Slet konto",
"Delete event": "Slet begivenhed",
"Delete everything": "Slet alt",
"Delete my account": "Slet min konto",
"Delete this identity": "Slet denne identitet",
"Delete your identity": "Slet din identitet",
"Delete {eventTitle}": "Slet {eventTitle}",
"Delete {preferredUsername}": "Slet {preferredUsername}",
"Deleting comment": "Sletter kommentar",
"Deleting event": "Sletter begivenhed",
"Deleting my account will delete all of my identities.": "Hvis jeg sletter min konto, bliver alle mine identiteter slettet.",
"Deleting your Mobilizon account": "Sletter din Mobilizon konto",
"Description": "Beskrivelse",
"Display name": "Viste navn",
"Display participation price": "Vis pris for deltagelse",
"Domain": "Domæne",
"Draft": "Kladde",
"Drafts": "Kladder",
"Edit": "Rediger",
"Eg: Stockholm, Dance, Chess…": "F.eks.: Stockholm, Dans, Skak…",
"Either on the {instance} instance or on another instance.": "Enten på {instance} udbyderen eller på en anden udbyder.",
"Either the account is already validated, either the validation token is incorrect.": "Enten er kontoen allerede godkendt, eller valideringskoden forkert.",
"Either the email has already been changed, either the validation token is incorrect.": "Enten er emailadressen allerede blevet ændret, eller valideringskoden er forkert.",
"Either the participation request has already been validated, either the validation token is incorrect.": "Enten er deltagelsesanmodningen allerede blevet godkendt, eller valideringskoden er forkert.",
"Email": "Email",
"Ends on…": "Slutter…",
"Enter the link URL": "Indtast linket",
"Error while changing email": "Fejl under ændring af emailadresse",
"Error while validating account": "Fejl under godkendelse af konto",
"Error while validating participation request": "Fejl under godkendelse af deltagelsesanmodning",
"Event": "Begivenhed",
"Event already passed": "Begivenheden er ovre",
"Event cancelled": "Begivenheden er aflyst",
"Event creation": "Skabelse af begivenhed",
"Event edition": "Redigering af begivenhed",
"Event list": "Liste af begivenheder",
"Event page settings": "Indstillinger for begivenhedens side",
"Event to be confirmed": "Begivenheden skal bekræftes",
"Event {eventTitle} deleted": "Begivenheden {eventTitle} blev slettet",
"Event {eventTitle} reported": "Begivenheden {eventTitle} blev indmeldt",
"Events": "Begivenheder",
"Ex: mobilizon.fr": "F.eks: mobilizon.fr",
"Explore": "Udforsk",
"Failed to save admin settings": "Kunne ikke gemme admin indstillinger",
"Featured events": "Udvalgte begivenheder",
"Federation": "Federation",
"Find an address": "Find en adresse",
"Find an instance": "Find en udbyder",
"Followers": "Følgere",
"Followings": "Følger",
"For instance: London, Taekwondo, Architecture…": "For eksempel: London, Taekwondo, Arkitektur…",
"Forgot your password ?": "Glemt dit kodeord?",
"From the {startDate} at {startTime} to the {endDate}": "Fra d. {startDate} kl. {startTime} til d. {endDate}",
"From the {startDate} at {startTime} to the {endDate} at {endTime}": "Fra d. {startDate} kl. {startTime} til d. {endDate} kl. {endTime}",
"From the {startDate} to the {endDate}": "Fra d. {startDate} til d. {endDate}",
"Gather ⋅ Organize ⋅ Mobilize": "Samles ⋅ Organiser ⋅ Mobiliser",
"General": "Generelt",
"General information": "Generel information",
"Getting location": "Henter placering",
"Go": "Gå",
"Group name": "Gruppenavn",
"Group {displayName} created": "Gruppen {displayName} er oprettet",
"Groups": "Grupper",
"Headline picture": "Hovedbillede",
"Hide replies": "Skjul svar",
"I create an identity": "Jeg skaber en identitet",
"I don't have a Mobilizon account": "Jeg har ikke en Mobilizon konto",
"I have a Mobilizon account": "Jeg har en Mobilizon konto",
"I have an account on another Mobilizon instance.": "Jeg har en konto på en anden Mobilizon udbyder.",
"I participate": "Jeg deltager",
"I want to allow people to participate without an account.": "Jeg vil lade personer uden en konto deltage.",
"I want to approve every participation request": "Jeg vil godkende for alle deltagelsesanmodninger",
"Identity {displayName} created": "Identiteten {displayName} er skabt",
"Identity {displayName} deleted": "Identiteten {displayName} er slettet",
"Identity {displayName} updated": "Identiteten {displayName} er opdateret",
"If an account with this email exists, we just sent another confirmation email to {email}": "Hvis en konto med denne emailadresse findes, har vi lige sendt en bekræftelsesmail til {email}",
"If this identity is the only administrator of some groups, you need to delete them before being able to delete this identity.": "Hvis denne identitet er den eneste administrator af nogle grupper, skal du slette grupperne før du kan slette identiteten.",
"If you want, you may send a message to the event organizer here.": "Hvis du vil kan du sende en besked til begivenhedens arrangør her.",
"Instance Name": "Udbyderens navn",
"Instance Terms": "Udbyderens brugsvilkår",
"Instance Terms Source": "Kilde til udbyderens vilkår",
"Instance Terms URL": "Adresse til udbyderens vilkår",
"Instance settings": "Indstillinger for udbyderen",
"Instances": "Udbydere",
"Join <b>{instance}</b>, a Mobilizon instance": "Bliv medlem af <b>{instance}</b>, en Mobilizon udbyder",
"Last published event": "Nyeste begivenhed",
"Last week": "Sidste uge",
"Learn more": "Lær mere",
"Learn more about Mobilizon": "Lær mere om Mobilizon",
"Leave event": "Forlad begivenhed",
"Leaving event \"{title}\"": "Forlader begivenheden \"{title}\"",
"License": "Licens",
"Limited number of places": "Begrænset antal pladser",
"Load more": "Indlæs flere",
"Locality": "Sted",
"Log in": "Log ind",
"Log out": "Log ud",
"Login": "Log ind",
"Login on Mobilizon!": "Log ind på Mobilizon!",
"Login on {instance}": "Log ind på {instance}",
"Manage participations": "Håndter deltagelser",
"Mark as resolved": "Marker som løst",
"Members": "Medlemmer",
"Message": "Besked",
"Mobilizon is a federated network. You can interact with this event from a different server.": "Mobilizon er et føderalt netværk. Du kan interagere med denne begivenhed fra andre udbydere.",
"Moderated comments (shown after approval)": "Modererede kommentarer (vist efter godkendelse)",
"Moderation": "Moderering",
"Moderation log": "Moderationslog",
"My account": "Min konto",
"My events": "Mine begivenheder",
"My identities": "Mine identiteter",
"Name": "Navn",
"New email": "Ny email",
"New note": "Nyt notat",
"New password": "Nyt kodeord",
"New profile": "Ny profil",
"Next page": "Næste side",
"No address defined": "Ingen adresse givet",
"No closed reports yet": "Ingen behandlede indmeldinger endnu",
"No comment": "Ingen kommentar",
"No comments yet": "Ingen kommentarer endnu",
"No end date": "Ingen slutdato",
"No events found": "Ingen begivenheder fundet",
"No group found": "Ingen gruppe fundet",
"No groups found": "Ingen grupper fundet",
"No instance follows your instance yet.": "Ingen udbydere følger din udbyder endnu.",
"No instance to approve|Approve instance|Approve {number} instances": "Ingen udbydere at godkende|Godkend udbyder|Godkend {number} udbydere",
"No instance to reject|Reject instance|Reject {number} instances": "Ingen udbydere at afvise|Afvis udbyder|Afvis {number} udbydere",
"No instance to remove|Remove instance|Remove {number} instances": "Ingen udbydere at fjerne|Fjern udbyder|Fjern {number} udbydere",
"No message": "Ingen besked",
"No open reports yet": "Ingen åbne indmeldinger endnu",
"No participant to approve|Approve participant|Approve {number} participants": "Ingen deltagere at godkende|Godkend deltager|Godkend {number} deltagere",
"No participant to reject|Reject participant|Reject {number} participants": "Ingen deltagere at afvise|Afvis deltagere|Afvis {number} deltagere",
"No resolved reports yet": "Ingen løste indmeldinger endnu",
"No results for \"{queryText}\"": "Ingen resultater for \"{queryText}\"",
"Notes": "Notater",
"Number of places": "Antal steder",
"OK": "OK",
"Old password": "Gammelt kodeord",
"Please do not use it in any real way.": "Brug det venligst ikke som andet end en prøve."
}

File diff suppressed because it is too large Load Diff

View File

@ -340,7 +340,6 @@
"Transfer to {outsideDomain}": "Transfer to {outsideDomain}",
"Type": "Type",
"URL": "URL",
"Unfortunately, this instance isn't opened to registrations": "Unfortunately, this instance isn't opened to registrations",
"Unfortunately, your participation request was rejected by the organizers.": "Unfortunately, your participation request was rejected by the organizers.",
"Unknown actor": "Unknown actor",
"Unknown error.": "Unknown error.",
@ -1253,5 +1252,62 @@
"The membership request from {profile} was rejected": "The membership request from {profile} was rejected",
"The member was approved": "The member was approved",
"Emails usually don't contain capitals, make sure you haven't made a typo.": "Emails usually don't contain capitals, make sure you haven't made a typo.",
"To follow groups and be informed of their latest events": "To follow groups and be informed of their latest events"
"To follow groups and be informed of their latest events": "To follow groups and be informed of their latest events",
"No group member found": "No group member found",
"This group was not found": "This group was not found",
"Back to group list": "Back to group list",
"This profile was not found": "This profile was not found",
"Back to profile list": "Back to profile list",
"This user was not found": "This user was not found",
"Back to user list": "Back to user list",
"Stop following instance": "Stop following instance",
"Follow instance": "Follow instance",
"Accept follow": "Accept follow",
"Reject follow": "Reject follow",
"This instance doesn't follow yours.": "This instance doesn't follow yours.",
"Only Mobilizon instances can be followed": "",
"Follow a new instance": "Follow a new instance",
"Follow status": "Follow status",
"All": "All",
"Following": "Following",
"Followed": "Followed",
"Followed, pending response": "Followed, pending response",
"Follows us": "Follows us",
"Follows us, pending approval": "Follows us, pending approval",
"No instance found.": "No instance found.",
"No instances match this filter. Try resetting filter fields?": "No instances match this filter. Try resetting filter fields?",
"You haven't interacted with other instances yet.": "You haven't interacted with other instances yet.",
"mobilizon-instance.tld": "mobilizon-instance.tld",
"Report status": "Report status",
"access the corresponding account": "access the corresponding account",
"Organized events": "Organized events",
"Memberships": "Memberships",
"This profile is located on this instance, so you need to {access_the_corresponding_account} to suspend it.": "This profile is located on this instance, so you need to {access_the_corresponding_account} to suspend it.",
"Total number of participations": "Total number of participations",
"Uploaded media total size": "Uploaded media total size",
"0 Bytes": "0 Bytes",
"Change email": "Change email",
"Confirm user": "Confirm user",
"Change role": "Change role",
"The user has been disabled": "The user has been disabled",
"This user doesn't have any profiles": "This user doesn't have any profiles",
"Edit user email": "Edit user email",
"Change user email": "Change user email",
"Previous email": "Previous email",
"Notify the user of the change": "Notify the user of the change",
"Change user role": "Change user role",
"Suspend the account?": "Suspend the account?",
"Do you really want to suspend this account? All of the user's profiles will be deleted.": "Do you really want to suspend this account? All of the user's profiles will be deleted.",
"Suspend the account": "Suspend the account",
"No user matches the filter": "No user matches the filter",
"new@email.com": "new@email.com",
"Other users with the same email domain": "Other users with the same email domain",
"Other users with the same IP address": "Other users with the same IP address",
"IP Address": "IP Address",
"Last seen on": "Last seen on",
"No user matches the filters": "No user matches the filters",
"Reset filters": "Reset filters",
"Category": "Category",
"Select a category": "Select a category",
"Any category": "Any category"
}

File diff suppressed because it is too large Load Diff

View File

@ -4,12 +4,10 @@
"(this folder)": "(esta carpeta)",
"(this link)": "(este enlace)",
"+ Add a resource": "+ Agregar un recurso",
"+ Add a todo": "+ Add to all",
"+ Create a post": "+ Crear una publicación",
"+ Create an event": "+ Crear un evento",
"+ Post a public message": "+ Publica un mensaje público",
"+ Start a discussion": "+ Iniciar una discusión",
"<b>Please do not use it in any real way.</b>": "<b>Por favor, no lo use de ninguna manera real</b>",
"0 Bytes": "0 Bytes",
"<b>{contact}</b> will be displayed as contact.": "<b> {contact} </b>se mostrará como contacto. |<b>{contact}</b>se mostrará como contactos.",
"@{group}": "@{group}",
"@{username}": "@{username}",
@ -17,7 +15,6 @@
"@{username}'s follow request was accepted": "Se aceptó la solicitud de seguimiento de @{username}",
"@{username}'s follow request was rejected": "Se rechazó la solicitud de seguimiento de @{username}",
"A cookie is a small file containing information that is sent to your computer when you visit a website. When you visit the site again, the cookie allows that site to recognize your browser. Cookies may store user preferences and other information. You can configure your browser to refuse all cookies. However, this may result in some website features or services partially working. Local storage works the same way but allows you to store more data.": "Una cookie es un pequeño archivo que contiene información que se envía a su computadora cuando visita un sitio web. Cuando vuelve a visitar el sitio, la cookie permite que ese sitio reconozca su navegador. Las cookies pueden almacenar preferencias del usuario y otra información. Puede configurar su navegador para rechazar todas las cookies. Sin embargo, esto puede provocar que algunas funciones o servicios del sitio web funcionen parcialmente. El almacenamiento local funciona de la misma manera, pero le permite almacenar más datos.",
"A cookie is a small file containing informations that is sent to your computer when you visit a website. When you visit the site again, the cookie allows that site to recognize your browser. Cookies may store user preferences and other information. You can configure your browser to refuse all cookies. However, this may result in some website features or services partially working. Local storage works the same way but allows to store more data.": "Una cookie es un pequeño archivo que contiene información que se envía a su computadora cuando visita un sitio web. Cuando vuelve a visitar el sitio, la cookie permite que ese sitio reconozca su navegador. Las cookies pueden almacenar las preferencias del usuario y otra información. Puede configurar su navegador para rechazar todas las cookies. Sin embargo, esto puede provocar que algunas funciones o servicios del sitio web funcionen parcialmente. El almacenamiento local funciona de la misma manera pero permite almacenar más datos.",
"A discussion has been created or updated": "Se ha creado o actualizado una discusión",
"A federated software": "Un software federado",
"A fediverse account URL to follow for event updates": "Una URL de cuenta de fediverse a seguir para actualizaciones de eventos",
@ -40,7 +37,6 @@
"A validation email was sent to {email}": "Un correo electrónico de confirmación fue enviado a {email}",
"API": "API",
"Abandon editing": "Abandonar la edición",
"Abandon edition": "Abandonar la edición",
"About": "Acerca de",
"About Mobilizon": "Acerca de Mobilizon",
"About anonymous participation": "Sobre la participación anónima",
@ -49,6 +45,7 @@
"About this instance": "Acerca de esta instancia",
"About {instance}": "Acerca de {instance}",
"Accept": "Aceptar",
"Accept follow": "Aceptar seguir",
"Accepted": "Aceptado",
"Accessibility": "Accesibilidad",
"Accessible only by link": "Accesible solo por enlace",
@ -57,7 +54,6 @@
"Account": "Cuenta",
"Account settings": "Configuración de la cuenta",
"Actions": "Acciones",
"Activate browser notification": "Activar la notificación del navegador",
"Activate browser push notifications": "Activar notificaciones push del navegador",
"Activated": "Activado",
"Active": "Activo",
@ -66,7 +62,6 @@
"Add": "Añadir",
"Add / Remove…": "Añadir / eliminar…",
"Add a contact": "Añade un contacto",
"Add a group": "Agregar un grupo",
"Add a new post": "Agregar una nueva publicación",
"Add a note": "Añade una nota",
"Add a todo": "Agrega una tarea pendiente",
@ -84,17 +79,15 @@
"Admin settings successfully saved.": "Ajustes de administración guardados correctamente.",
"Administration": "Administración",
"Administrator": "Administrador",
"All": "Todos",
"All activities": "Todas las actividades",
"All good, let's continue!": "Todo bien ¡continuemos!",
"All group members and other eventual server admins will still be able to view this information.": "Todos los miembros del grupo y otros administradores eventuales del servidor aún podrán ver esta información.",
"All the places have already been taken": "Todos los lugares ya han sido ocupados",
"Allow all comments": "Permitir todos los comentarios",
"Allow all comments from users with accounts": "Permitir todos los comentarios de los usuarios registrados",
"Allow registrations": "Permitir registros",
"An URL to an external ticketing platform": "Una URL a una plataforma de venta de entradas externa",
"An error has occured while refreshing the page.": "Ha ocurrido un error al actualizar la página.",
"An error has occured. Sorry about that. You may try to reload the page.": "Ha ocurrido un error. Lo siento por eso. Puede intentar volver a cargar la página.",
"An error has occurred.": "Se ha producido un error.",
"An ethical alternative": "Una alternativa ética",
"An event I'm going to has been updated": "Se ha actualizado un evento al que voy a asistir",
"An event I'm going to has posted an announcement": "Un evento al que voy a asistir ha publicado un anuncio",
@ -116,7 +109,6 @@
"Anyone can request being a member, but an administrator needs to approve the membership.": "Cualquiera puede solicitar ser miembro, pero un administrador debe aprobar la adesión.",
"Anyone wanting to be a member from your group will be able to from your group page.": "Cualquiera que desee ser miembro de su grupo podrá hacerlo desde la página de su grupo.",
"Application": "Applicación",
"Approve": "Aprobar",
"Approve member": "Aprobar miembro",
"Are you really sure you want to delete your whole account? You'll lose everything. Identities, settings, events created, messages and participations will be gone forever.": "¿Estás realmente seguro de que deseas eliminar toda tu cuenta? Lo perderás todo. Las identidades, la configuración, los eventos creados, los mensajes y las participaciones desaparecerán para siempre.",
"Are you sure you want to <b>completely delete</b> this group? All members - including remote ones - will be notified and removed from the group, and <b>all of the group data (events, posts, discussions, todos…) will be irretrievably destroyed</b>.": "¿Está seguro de que desea <b>eliminar completamente</b> este grupo? Todos los miembros, incluidos los remotos, serán notificados y eliminados del grupo, y <b>todos los datos del grupo (eventos, publicaciones, discusiones, todos…) serán irremediablemente destruidos</b>.",
@ -137,24 +129,23 @@
"Atom feed for events and posts": "Flujo Atom para eventos y publicaciones",
"Attending": "Asistiendo",
"Avatar": "Avatar",
"Back to group list": "Volver a la lista de grupos",
"Back to previous page": "Volver a la página anterior",
"Back to profile list": "Volver a la lista de perfiles",
"Back to top": "Volver arriba",
"Back to user list": "Volver a la lista de usuarios",
"Banner": "Pancarta",
"Before you can login, you need to click on the link inside it to validate your account.": "Antes de iniciar sesión, debe hacer clic en el enlace que se encuentra dentro para validar su cuenta.",
"Begins on": "Comienza en",
"Big Blue Button": "Big Blue Button",
"Bio": "Bio",
"Bold": "Negrita",
"Booking": "Reservacion",
"Breadcrumbs": "Migajas",
"Browser notifications": "Notificaciones del navegador",
"Bullet list": "Lista de puntos",
"By @{username} and @{group}": "Por @{username} y @{group}",
"By others": "Por otros",
"By {author}": "Por {author}",
"By {group}": "Por {group}",
"By {username}": "Por {username}",
"By {username} and {group}": "Por {username} y {group}",
"Can be an email or a link, or just plain text.": "Puede ser un correo electrónico o un enlace, o simplemente texto sin formato.",
"Cancel": "Cancelar",
"Cancel anonymous participation": "Cancelar participación anónima",
@ -167,12 +158,15 @@
"Cancel my participation…": "Cancelar mi participación …",
"Cancelled": "Cancelado",
"Cancelled: Won't happen": "Cancelado: no sucederá",
"Category": "Categoría",
"Change": "Cambiar",
"Change email": "Cambiar e-mail",
"Change my email": "Cambiar mi correo electrónico",
"Change my identity…": "Cambiar mi identidad …",
"Change my password": "Cambiar mi contraseña",
"Change role": "Cambiar rol",
"Change timezone": "Cambiar zona horaria",
"Change user email": "Cambiar correo de usuario",
"Change user role": "Cambiar rol de usuario",
"Check your inbox (and your junk mail folder).": "Revise su bandeja de entrada (y su carpeta de correo basura).",
"Choose the source of the instance's Privacy Policy": "Elija la fuente de la Política de privacidad de la instancia",
"Choose the source of the instance's Terms": "Elija la fuente de los Términos de la instancia",
@ -184,24 +178,20 @@
"Clear participation data for this event": "Datos claros de participación para este evento",
"Clear timezone field": "Borrar campo de zona horaria",
"Click for more information": "Haga clic para obtener más información",
"Click to select": "Haz clic para selaccionar",
"Click to upload": "Haz clic para subir (upload)",
"Close": "Cerrar",
"Close comments for all (except for admins)": "Cerrar comentarios para todos (excepto para administradores)",
"Closed": "Cerrado",
"Collections": "Colecciones",
"Comment body": "Cuerpo del comentario",
"Comment deleted": "Comentario borrado",
"Comment from @{username} reported": "Comentario de @{username} declarado",
"Comment text can't be empty": "El texto del comentario no puede estar vacío",
"Comments": "Comentarios",
"Comments are closed for everybody else.": "Los comentarios están cerrados para todos los demás.",
"Comments have been closed.": "Los comentarios han sido cerrados.",
"Conceived with care for humans": "Concebido con cuidado para los humanos",
"Concieved with care for humans": "Concierto con cuidado para los humanos",
"Confirm my participation": "Confirma mi participación",
"Confirm my particpation": "Confirmar mi participación",
"Confirm participation": "Confirmar participación",
"Confirm user": "Confirmar usuario",
"Confirmed": "Confirmado",
"Confirmed at": "Confirmado en",
"Confirmed: Will happen": "Confirmado: sucederá",
@ -216,36 +206,28 @@
"Create a calc": "Crear un calco",
"Create a discussion": "Crear una discusión",
"Create a folder": "Crear una carpeta",
"Create a new discussion": "Crea una nueva conversación",
"Create a new event": "Crear un nuevo evento",
"Create a new group": "Crear un nuevo grupo",
"Create a new identity": "Crear una nueva identidad",
"Create a new list": "Crear una nueva lista",
"Create a new profile": "Crea un nuevo perfil",
"Create a new task list": "Crear una nueva lista de tareas",
"Create a pad": "Crear un pad",
"Create a videoconference": "Crea una videoconferencia",
"Create a visioconference": "Crear una visioconferencia",
"Create an account": "Crear una cuenta",
"Create and manage several identities from the same account": "Crear y administrar varias identidades desde la misma cuenta",
"Create discussion": "Crear discusión",
"Create event": "Crear evento",
"Create folder": "Crear carpeta",
"Create group": "Crear un grupo",
"Create identity": "Crear identidad",
"Create my event": "Crear mi evento",
"Create my group": "Crear mi grupo",
"Create my profile": "Crear mi perfil",
"Create new links": "Crea nuevos enlaces",
"Create or join an group and start organizing with other people": "Cree o únase a un grupo y comience a organizarse con otras personas",
"Create resource": "Crear recurso",
"Create the discussion": "Crear la discusión",
"Create to-do lists for all the tasks you need to do, assign them and set due dates.": "Cree listas de tareas pendientes para todas las tareas que necesita hacer, asígnelas y establezca fechas de vencimiento.",
"Create token": "Crear token",
"Create, edit or delete events": "Crear, editar o eliminar eventos",
"Created by {name}": "Creado por {name}",
"Created by {username}": "Creado por {username}",
"Creator": "Creador",
"Current identity has been changed to {identityName} in order to manage this event.": "La identidad actual se ha cambiado a {identityName} para gestionar este evento.",
"Current page": "Página actual",
"Custom": "Personalizado",
@ -262,7 +244,6 @@
"Default": "Valor predeterminados",
"Default Mobilizon privacy policy": "Política de privacidad predeterminada de Mobilizon",
"Default Mobilizon terms": "Términos predeterminados de Mobilizon",
"Default Mobilizon.org terms": "Términos predeterminados de Mobilizon.org",
"Delete": "Eliminar",
"Delete Comment": "Eliminar comentario",
"Delete Event": "Eliminar evento",
@ -286,7 +267,6 @@
"Demote": "Degradar",
"Description": "Descripción",
"Details": "Detalles",
"Didn't receive the instructions ?": "¿No recibiste las instrucciones?",
"Didn't receive the instructions?": "¿No recibiste las instrucciones?",
"Disabled": "Deshabilitado",
"Discussions": "Discusiones",
@ -296,58 +276,51 @@
"Displayed nickname": "Apodo mostrado",
"Displayed on homepage and meta tags. Describe what Mobilizon is and what makes this instance special in a single paragraph.": "Se muestra en la página de inicio y metaetiquetas. Describa qué es Mobilizon y qué hace que esta instancia sea especial en un solo párrafo.",
"Do not receive any mail": "No recibir ningún correo",
"Do you really want to suspend this account? All of the user's profiles will be deleted.": "¿Realmente quieres suspender esta cuenta? Se eliminarán todos los perfiles de usuario.",
"Do you wish to {create_event} or {explore_events}?": "¿Deseas {create_event} o {explore_events}?",
"Do you wish to {create_group} or {explore_groups}?": "¿Deseas {create_group} o {explore_groups}?",
"Does the event needs to be confirmed later or is it cancelled?": "¿El evento necesita ser confirmado más tarde o se cancela?",
"Domain": "Dominio",
"Don't show @{organizer} as event host alongside @{group}": "No mostrar @{organizer} como anfitrión del evento junto @{group}",
"Draft": "Borrador",
"Drafts": "Borradores",
"Due on": "Debido a",
"Duplicate": "Duplicar",
"Edit": "Editar",
"Edit biography": "Editar biografía",
"Edit post": "Editar publicación",
"Edit profile {profile}": "Editar perfil {profile}",
"Edit user email": "Editar correo electrónico de usuario",
"Edited {ago}": "Editado {ago}",
"Edited {relative_time} ago": "Editado hace {relative_time}",
"Eg: Stockholm, Dance, Chess…": "Ej .: Estocolmo, Danza, Ajedrez …",
"Either on the {instance} instance or on another instance.": "Ya sea en la instancia {instancia} o en otra instancia.",
"Either the account is already validated, either the validation token is incorrect.": "O la cuenta ya está validada, o bien el testigo de validación es incorrecto.",
"Either the email has already been changed, either the validation token is incorrect.": "O el correo electrónico ya se ha cambiado, o bien el token de validación es incorrecto.",
"Either the participation has already been validated, either the validation token is incorrect.": "O la participación ya ha sido validada, o bien el token de validación es incorrecto.",
"Either the participation request has already been validated, either the validation token is incorrect.": "O la solicitud de participación ya se ha validado o el token de validación es incorrecto.",
"Element title": "Título del elemento",
"Element value": "Valor del elemento",
"Email": "Correo electrónico",
"Email address": "Dirección de correo electrónico",
"Email notifications": "Notificaciónes de Correo Electrónico",
"Email validate": "Validar correo electrónico",
"Emails usually don't contain capitals, make sure you haven't made a typo.": "Los correos electrónicos generalmente no contienen mayúsculas, asegúrese de no haber cometido un error tipográfico.",
"Enabled": "Habilitado",
"Ends on…": "Termina en …",
"Enjoy discovering Mobilizon!": "¡Disfruta descubriendo Mobilizon!",
"Enter the link URL": "Introduzca la URL del enlace",
"Enter your email address below, and we'll email you instructions on how to change your password.": "Introduce tu dirección de correo electrónico a continuación, y te enviaremos instrucciones sobre cómo cambiar tu contraseña.",
"Enter your own privacy policy. HTML tags allowed. The {mobilizon_privacy_policy} is provided as template.": "Ingrese su propia política de privacidad. Etiquetas HTML permitidas. La {mobilizon_privacy_policy} se proporciona como plantilla.",
"Enter your own terms. HTML tags allowed. Mobilizon.org's terms are provided as template.": "Introduzca sus propios términos. Etiquetas HTML permitidas. Los términos de Mobilizon.org se proporcionan como plantilla.",
"Enter your own terms. HTML tags allowed. The {mobilizon_terms} are provided as template.": "Ingrese sus propios términos. Etiquetas HTML permitidas. Los {mobilizon_terms} se proporcionan como plantilla.",
"Error": "Error",
"Error details copied!": "¡Se copiaron los detalles del error!",
"Error message": "Mensaje de error",
"Error stacktrace": "Seguimiento de errores",
"Error while changing email": "Error al cambiar el correo electrónico",
"Error while communicating with the server.": "Error al comunicarse con el servidor.",
"Error while loading the preview": "Error al cargar la vista previa",
"Error while login with {provider}. Retry or login another way.": "Error al iniciar sesión con {provider}. Vuelva a intentarlo o inicie sesión de otra manera.",
"Error while login with {provider}. This login provider doesn't exist.": "Error al iniciar sesión con {provider}. Este proveedor de inicio de sesión no existe.",
"Error while reporting group {groupTitle}": "Error al informar sobre el grupo {groupTitle}",
"Error while saving report.": "Error al guardar el informe.",
"Error while subscribing to push notifications": "Error al suscribirse a notificaciones push",
"Error while suspending group": "Error al suspender el grupo",
"Error while updating participation status inside this browser": "Error al actualizar el estado de participación dentro de este navegador",
"Error while validating account": "Error al validar la cuenta",
"Error while validating participation": "Error al validar la participación",
"Error while validating participation request": "Error al validar la solicitud de participación",
"Etherpad notes": "Notas de Etherpad",
"Ethical alternative to Facebook events, groups and pages, Mobilizon is a <b>tool designed to serve you</b>. Period.": "Alternativa ética a los eventos, grupos y páginas de Facebook, Mobilizon es una <b> herramienta diseñada para servirle </b>. Período.",
@ -360,7 +333,6 @@
"Event edition": "Edición del evento",
"Event list": "Lista de eventos",
"Event metadata": "Metadatos de eventos",
"Event not found.": "Evento no encontrado.",
"Event page settings": "Configuración de la página del evento",
"Event timezone will default to the timezone of the event's address if there is one, or to your own timezone setting.": "La zona horaria del evento se establecerá de forma predeterminada en la zona horaria de la dirección del evento, si la hay, o en su propia configuración de zona horaria.",
"Event to be confirmed": "Evento por confirmar",
@ -372,14 +344,12 @@
"Everything": "Todo",
"Ex: mobilizon.fr": "Ej: mobilizon.fr",
"Ex: someone@mobilizon.org": "Ejemplo: alguien@mobilizon.org",
"Exclude": "Excluir",
"Explore": "Explorar",
"Explore events": "Explorar eventos",
"Export": "Exportar",
"Failed to get location.": "No se pudo obtener la ubicación.",
"Failed to save admin settings": "Error al guardar la configuración de administrador",
"Featured events": "Eventos particulares",
"Features": "Caracteristicas",
"Federated Group Name": "Nombre del grupo federado",
"Federation": "Federación",
"Fediverse account": "Cuenta Fediverse",
@ -393,19 +363,24 @@
"Find or add an element": "Encuentra o agrega un elemento",
"First steps": "Primeros pasos",
"Follow": "Seguir",
"Followed by {count} persons": "Seguido por {count} personas",
"Follow a new instance": "Seguir una nueva instancia",
"Follow instance": "Seguir instancia",
"Follow status": "Seguir estado",
"Followed": "Seguidos",
"Followed, pending response": "Seguido, pendiente de respuesta",
"Follower": "Seguidor",
"Followers": "Seguidores",
"Followers will receive new public events and posts.": "Los seguidores recibirán nuevos eventos públicos y publicaciones.",
"Following": "Siguientes",
"Following the group will allow you to be informed of the {group_upcoming_public_events}, whereas joining the group means you will {access_to_group_private_content_as_well}, including group discussions, group resources and members-only posts.": "Seguir al grupo te permitirá estar informado de los {group_upcoming_public_events}, mientras que unirte al grupo significa que {access_to_group_private_content_as_well}, incluidas las discusiones grupales, los recursos del grupo y las publicaciones solo para miembros.",
"Followings": "Seguimientos",
"Follows us": "nos sigue",
"Follows us, pending approval": "Nos sigue, pendiente de aprobación",
"For instance: London": "Por ejemplo: Londres",
"For instance: London, Taekwondo, Architecture…": "Por ejemplo: Londres, Taekwondo, Arquitectura …",
"Forgot your password ?": "¿Olvidaste tu contraseña ?",
"Forgot your password?": "¿Olvidaste tu contraseña?",
"Framadate poll": "Encuesta Framadate",
"From a birthday party with friends and family to a march for climate change, right now, our gatherings are <b>trapped inside the tech giants platforms</b>. How can we organize, how can we click “Attend,” without <b>providing private data</b> to Facebook or <b>locking ourselves up</b> inside MeetUp?": "Desde una fiesta de cumpleaños con amigos y familiares hasta una marcha por el cambio climático, en este momento, nuestras reuniones están <b> atrapadas dentro de las plataformas de los gigantes tecnológicos </b>. ¿Cómo podemos organizarnos, cómo podemos hacer clic en \"Asistir\", sin <b> proporcionar datos privados </b> a Facebook o <b> encerrarnos </b> dentro de MeetUp?",
"From a birthday party with friends and family to a march for climate change, right now, our gatherings are <b>trapped inside the tech giants platforms</b>. How can we organize, how can we click “Attend,” without <b>providing private data</b> to Facebook or <b>locking ourselves</b> inside MeetUp?": "Desde una fiesta de cumpleaños con amigos y familiares hasta una marcha por el cambio climático, ahora mismo, nuestras reuniones están <b> atrapadas dentro de las plataformas de los gigantes tecnológicos </b>. ¿Cómo podemos organizarnos, cómo podemos hacer clic en \"Asistir\" sin <b> proporcionar datos privados </b> a Facebook o <b> encerrarnos </b> dentro de MeetUp?",
"From my groups": "De mis grupos",
"From the {startDate} at {startTime} to the {endDate}": "Desde {startDate} en {startTime} hasta {endDate}",
"From the {startDate} at {startTime} to the {endDate} at {endTime}": "Desde el {startDate} en {startTime} hasta el {endDate} en {endTime}",
@ -422,18 +397,15 @@
"Glossary": "Glosario",
"Go": "Ir",
"Go to the event page": "Ir a la página del evento",
"Going as {name}": "Ir como {nombre}",
"Google Meet": "Google Meet",
"Group": "Grupo",
"Group Followers": "Seguidores del grupo",
"Group List": "Lista de grupo",
"Group Members": "Miembros del grupo",
"Group URL": "URL de grupo",
"Group activity": "Actividad de grupo",
"Group address": "Dirección del grupo",
"Group description body": "Cuerpo de descripción de grupo",
"Group display name": "Nombre para mostrar del grupo",
"Group full name": "Nombre completo del grupo",
"Group name": "Nombre del grupo",
"Group profiles": "Perfiles de grupo",
"Group settings": "Configuraciones de grupo",
@ -450,7 +422,6 @@
"Heading Level 3": "Nivel de encabezado 3",
"Headline picture": "Imagen del titular",
"Hide replies": "Ocultar respuestas",
"Hide the organizer": "Ocultar el organizador",
"Home": "Inicio",
"Home to {number} users": "Inicio de {number} usuarios",
"Homepage": "Página de inicio",
@ -467,28 +438,23 @@
"I've been mentionned in a group discussion": "Me han mencionado en una discusión grupal",
"ICS feed for events": "Flujo ICS para eventos",
"ICS/WebCal Feed": "Flujo ICS/WebCal",
"IP Address": "Dirección IP",
"Identities": "Identidades",
"Identity {displayName} created": "Identidad {displayName} creada",
"Identity {displayName} deleted": "Identidad {displayName} eliminada",
"Identity {displayName} updated": "Identidad {displayName} actualizada",
"If allowed by organizer": "Si lo permite el organizador",
"If an account with this email exists, we just sent another confirmation email to {email}": "Si existe una cuenta con este correo electrónico, acabamos de enviar otro correo electrónico de confirmación a {email}",
"If the direction given by the development team does not suit you, you have the legal right to create your own version of the software, with your own governance choices.": "Si la dirección dada por el equipo de desarrollo no le conviene, tiene el derecho legal de crear su propia versión del software, con sus propias opciones de gobierno.",
"If this identity is the only administrator of some groups, you need to delete them before being able to delete this identity.": "Si esta identidad es el único administrador de algún grupo, debe eliminarlo antes de poder eliminar esta identidad.",
"If you are being asked for your federated indentity, it's composed of your username and your instance. For instance, the federated identity for your first profile is:": "Si se le solicita su identidad federada, se compone de su nombre de usuario y su instancia. Por ejemplo, la identidad federada para su primer perfil es:",
"If you have opted for manual validation of participants, Mobilizon will send you an email to inform you of new participations to be processed. You can choose the frequency of these notifications below.": "Si ha optado por la validación manual de participantes, Mobilizon le enviará un correo electrónico para informarle de las nuevas participaciones que se procesarán. Puede elegir la frecuencia de estas notificaciones a continuación.",
"If you want, you may send a message to the event organizer here.": "Si lo desea, puede enviar un mensaje al organizador del evento aquí.",
"Ignore": "Ignorar",
"Important event updates": "Actualizaciones importantes del evento",
"Impossible to login, your email or password seems incorrect.": "Imposible iniciar sesión, su correo electrónico o contraseña parece incorrecta.",
"In person": "En persona",
"In the following context, an application is a software, either provided by the Mobilizon team or by a 3rd-party, used to interact with your instance.": "En el siguiente contexto, una aplicación es un software, ya sea proporcionado por el equipo de Mobilizon o por un tercero, utilizado para interactuar con su instancia.",
"In the meantime, please consider that the software is not (yet) finished. More information {onBlog}.": "Mientras tanto, tenga en cuenta que el software no está (todavía) terminado. Más información {onBlog}.",
"In the past": "En el pasado",
"Increase": "Incrementar",
"Installing Mobilizon will allow communities to free themselves from the services of tech giants by creating <b>their own event platform</b>.": "La instalación de Mobilizon permitirá a las comunidades liberarse de los servicios de los gigantes tecnológicos creando <b> su propia plataforma de eventos </b>.",
"Instance": "Instancia",
"Instance Description": "Descripción de instancia",
"Instance Long Description": "Descripción larga de la instancia",
"Instance Name": "Nombre de instancia",
"Instance Privacy Policy": "Política de privacidad de instancias",
@ -521,7 +487,6 @@
"Join <b>{instance}</b>, a Mobilizon instance": "Únase a <b> {instance} </b>, una instancia de Mobilizon",
"Join group": "Unirse al grupo",
"Join group {group}": "Unirse al grupo {group}",
"Join {instance}, a Mobilizon instance": "Únase a {instancia}, una instancia de Mobilizon",
"Keep the entire conversation about a specific topic together on a single page.": "Mantenga toda la conversación sobre un tema específico en una sola página.",
"Key words": "Palabras clave",
"Language": "Idioma",
@ -529,6 +494,7 @@
"Last group created": "Último grupo creado",
"Last published event": "Último evento publicado",
"Last published events": "Últimos eventos publicados",
"Last seen on": "Visto por última vez en",
"Last sign-in": "Último inicio de sesión",
"Last week": "La semana pasada",
"Latest posts": "Últimas publicaciones",
@ -540,11 +506,8 @@
"Leave group": "Salir del grupo",
"Leaving event \"{title}\"": "Saliendo del evento \"{title}\"",
"Legal": "Legal",
"Let's create a new common": "Creemos un nuevo \"bien común\"",
"Let's define a few settings": "Definamos algunas configuraciones",
"Let\\'s create a new common": "Creemos un nuevo común",
"License": "Licencia",
"Like title update, start or end date change, event being confirmed or cancelled.": "Como cambiar el título del evento, su fecha de inicio o finalización, o ser confirmado o cancelado.",
"Limited number of places": "Número limitado de plazas",
"List title": "Título de la lista",
"Live": "En directo",
@ -562,8 +525,6 @@
"Login on {instance}": "Inicia sesión en {instancia}",
"Login status": "Estado de inicio de sesión",
"Main languages you/your moderators speak": "Idiomas principales que usted o sus moderadores hablan",
"Manage my notifications": "Administrar mis notificaciones",
"Manage my settings": "Administrar mi configuración",
"Manage participations": "Administrar participaciones",
"Manually approve new followers": "Aprobar manualmente nuevos seguidores",
"Manually invite new members": "Invitar nuevos miembros manualmente",
@ -571,23 +532,19 @@
"Member": "Miembro",
"Members": "Miembros",
"Members-only post": "Publicación solo para miembros",
"Memberships": "Miembros",
"Mentions": "Menciones",
"Message": "Mensaje",
"Microsoft Teams": "Microsoft Teams",
"Mobilizon": "Mobilizon",
"Mobilizon is a federated network. You can interact with this event from a different server.": "Mobilizon es una red federada. Puede interactuar con este evento desde un servidor diferente.",
"Mobilizon is a federated software, meaning you can interact - depending on your admin's federation settings - with content from other instances, such as joining groups or events that were created elsewhere.": "Mobilizon es un software federado, lo que significa que puede interactuar, según la configuración de su federación de administrador, con contenido de otras instancias, como unirse a grupos o eventos que se crearon en otro lugar.",
"Mobilizon is a free/libre software that will allow communities to create <b>their own spaces</b> to publish events in order to better emancipate themselves from tech giants.": "Mobilizon es un software gratuito/libre que permitirá a las comunidades crear <b> sus propios espacios </b> para publicar eventos con el fin de emanciparse mejor de los gigantes tecnológicos.",
"Mobilizon is a tool that helps you <b>find, create and organise events</b>.": "Mobilizon es una herramienta que le ayuda a <b> buscar, crear y organizar eventos </b>.",
"Mobilizon is not a giant platform, but a <b>multitude of interconnected Mobilizon websites</b>.": "Mobilizon no es una plataforma gigante, sino una <b> multitud de sitios web de Mobilizon interconectados </b>.",
"Mobilizon is not developed by a secretive start-up, but by a group of friends who strive to {change_world}. So while we do work slower, we remain attentive and in touch with our users.": "Mobilizon no está desarrollado por una startup secreta, sino por un grupo de amigos que se esfuerzan por {change_world}. Entonces, mientras trabajamos más lentamente, permanecemos atentos y en contacto con nuestros usuarios.",
"Mobilizon is under development, we will add new features to this site during regular updates, until the release of <b>version 1 of the software in the fall of 2020</b>.": "Mobilizon está en desarrollo, agregaremos nuevas funciones a este sitio durante las actualizaciones periódicas, hasta el lanzamiento d <b>versión 1 del software en el otoño de 2020</b>.",
"Mobilizon is under development, we will add new features to this site during regular updates, until the release of <b>version 1 of the software in the first half of 2020</b>.": "Mobilizon está en desarrollo, añadiremos nuevas funciones a este sitio durante las actualizaciones regulares, hasta el lanzamiento de la <b> versión 1 del software en la primera mitad de 2020 </b>.",
"Mobilizon software": "Software Mobilizon",
"Mobilizon uses a system of profiles to compartiment your activities. You will be able to create as many profiles as you want.": "Mobilizon utiliza un sistema de perfiles para compartimentar sus actividades. Podrás crear tantos perfiles como quieras.",
"Mobilizon version": "Versión Mobilizon",
"Mobilizon will send you an email when the events you are attending have important changes: date and time, address, confirmation or cancellation, etc.": "Mobilizon te enviará un correo electrónico cuando los eventos a los que asistas tengan cambios importantes: fecha y hora, dirección, confirmación o cancelación, etc.",
"Mobilizons licence": "Licencia de Mobilizon",
"Moderate new members": "Miembros nuevos moderados",
"Moderated comments (shown after approval)": "Comentarios moderados (mostrados después de la aprobación)",
"Moderation": "Moderación",
@ -618,7 +575,6 @@
"Next month": "Próximo mes",
"Next page": "Siguiente página",
"Next week": "La próxima semana",
"No actors found": "No se encontraron actores",
"No address defined": "Ninguna dirección definida",
"No closed reports yet": "Aún no hay informes cerrados",
"No comment": "Sin comentarios",
@ -629,12 +585,15 @@
"No follower matches the filters": "Ningún seguidor coincide con los filtros",
"No group found": "Ningún grupo encontrado",
"No group matches the filters": "Ningún grupo coincide con los filtros",
"No group member found": "No se encontró ningún miembro del grupo",
"No groups found": "No se encontraron grupos",
"No information": "Sin información",
"No instance follows your instance yet.": "Ninguna instancia sigue a tu instancia todavía.",
"No instance found.": "No se encontró ninguna instancia.",
"No instance to approve|Approve instance|Approve {number} instances": "No hay instancia para aprobar|Aprobar instancia|Aprobar {número} instancias",
"No instance to reject|Reject instance|Reject {number} instances": "Ninguna instancia para rechazar | Rechazar instancia | Rechazar {número} instancias",
"No instance to remove|Remove instance|Remove {number} instances": "No hay instancias para eliminar|Eliminar instancias|Eliminar {número} instancias",
"No instances match this filter. Try resetting filter fields?": "Ninguna instancia coincide con este filtro. ¿Intentar restablecer los campos de filtro?",
"No languages found": "No se encontraron idiomas",
"No member matches the filters": "Ningún miembro coincide con los filtros",
"No members found": "No se encontraron miembros",
@ -642,9 +601,7 @@
"No message": "Sin mensaje",
"No moderation logs yet": "Aún no hay registros de moderación",
"No more activity to display.": "No hay más actividad para mostrar.",
"No notification settings yet": "Aún no hay configuración de notificaciones",
"No one is participating|One person participating|{going} people participating": "Nadie está participando|Una persona participando|{van} personas participando",
"No ongoing todos": "No hay tareas pendientes (\"to-do\") en marcha",
"No open reports yet": "Aún no hay informes abiertos",
"No organized events found": "No se encontraron eventos organizados",
"No organized events listed": "No se enumeran eventos organizados",
@ -654,10 +611,7 @@
"No participations listed": "No se enumeran participaciones",
"No posts found": "No se han encontrado publicaciones",
"No posts yet": "Aún no hay publicaciones",
"No preferences yet": "Aún no hay preferencias",
"No profile matches the filters": "Ningún perfil coincide con los filtros",
"No profiles found": "No se encontraron perfiles",
"No public posts": "Sin aportaciones públicas",
"No public upcoming events": "No hay eventos públicos próximos",
"No resolved reports yet": "Aún no hay informes resueltos",
"No resources in this folder": "No hay recursos en esta carpeta",
@ -666,19 +620,20 @@
"No results for \"{queryText}\"": "No hay resultados para \"{queryText}\"",
"No results for {search}": "No hay resultados para {search}",
"No rules defined yet.": "No hay reglas definidas todavía.",
"No user account with this email was found. Maybe you made a typo?": "No se encontró ninguna cuenta de usuario con este correo electrónico. Tal vez hiciste un error tipográfico?",
"No user matches the filter": "Ningún usuario coincide con el filtro",
"No user matches the filters": "Ningún usuario coincide con los filtros",
"None": "Ninguno",
"Not accessible with a wheelchair": "No accesible con silla de ruedas",
"Not approved": "Sin aprovar",
"Not confirmed": "Sin confirmar",
"Notes": "Notas",
"Nothing to see here": "Nada que ver aqui",
"Notification before the event": "Notificación antes del evento",
"Notification on the day of the event": "Notificación el día del evento",
"Notification settings": "Configuración de las notificaciones",
"Notifications": "Notificaciones",
"Notifications for manually approved participations to an event": "Notificaciones para participaciones aprobadas manualmente a un evento",
"Notify participants": "Notificar a los participantes",
"Notify the user of the change": "Notificar al usuario del cambio",
"Now, create your first profile:": "Ahora, crea tu primer perfil:",
"Number of places": "Numero de plazas",
"OK": "OK",
@ -687,17 +642,13 @@
"On {date} ending at {endTime}": "El {fecha} que termina en {endTime}",
"On {date} from {startTime} to {endTime}": "El {fecha} de {startTime} a {endTime}",
"On {date} starting at {startTime}": "El {fecha} a partir de {startTime}",
"On {instance}": "En {instance}",
"On {instance} and other federated instances": "En {instance} y otras instancias federadas",
"One person is going": "Nadie va|Una persona va|personas {approved} van",
"Ongoing tasks": "Tareas en curso",
"Online": "En línea",
"Online ticketing": "Venta de entradas en línea",
"Only Mobilizon instances can be followed": "\n \n",
"Only accessible through link": "Solo accesible a través del enlace",
"Only accessible through link (private)": "Solo accesible a través del enlace (privado)",
"Only accessible through link and search (private)": "Solo accesible a través de enlace y búsqueda (privado)",
"Only accessible to members of the group": "Solo accesible para los miembros del grupo",
"Only alphanumeric characters and underscores are supported.": "Solo se admiten caracteres alfanuméricos y guiones bajos.",
"Only alphanumeric lowercased characters and underscores are supported.": "Solo se admiten caracteres alfanuméricos en minúscula y guiones bajos.",
"Only group members can access discussions": "Solo los miembros del grupo pueden acceder a las discusiones",
"Only group moderators can create, edit and delete events.": "Solo los moderadores de grupo pueden crear, editar y eliminar eventos.",
@ -709,11 +660,10 @@
"Opened reports": "Informes abiertos",
"Or": "O",
"Ordered list": "Lista ordenada",
"Organize and take action, freely": "Organiza y actua, libremente",
"Organized": "Organizado",
"Organized by": "Organizado por",
"Organized by you": "Organizado por ti",
"Organized by {name}": "Organizado por {name}",
"Organized events": "Eventos organizados",
"Organizer": "Organizador",
"Organizer notifications": "Notificaciones del organizador",
"Organizers": "Organizadores",
@ -721,6 +671,8 @@
"Other actions": "Otras acciones",
"Other notification options:": "Otras opciones de notificación:",
"Other software may also support this.": "Otro software también puede soportar esto.",
"Other users with the same IP address": "Otros usuarios con la misma dirección IP",
"Other users with the same email domain": "Otros usuarios con el mismo dominio de correo electrónico",
"Otherwise this identity will just be removed from the group administrators.": "De lo contrario, esta identidad solo se eliminará de los administradores del grupo.",
"Page": "Página",
"Page limited to my group (asks for auth)": "Página limitada a mi grupo (solicita autenticación)",
@ -728,8 +680,6 @@
"Parent folder": "Carpeta superior",
"Partially accessible with a wheelchair": "Parcialmente accesible con silla de ruedas",
"Participant": "Participante",
"Participant already was rejected.": "El participante ya fue rechazado.",
"Participant has already been approved as participant.": "El participante ya ha sido aprobado como participante.",
"Participants": "Participantes",
"Participate": "Participar",
"Participate using your email address": "Participa usando tu dirección de correo electrónico",
@ -749,7 +699,6 @@
"Pending": "Pendiente",
"Personal feeds": "Flujos personales",
"Pick": "Recoger",
"Pick a group": "Elige un grupo",
"Pick a profile or a group": "Elige un perfil o un grupo",
"Pick an identity": "Elige una identidad",
"Pick an instance": "Elige una instancia",
@ -759,14 +708,10 @@
"Please do not use it in any real way.": "Por favor, no lo use de ninguna manera real.",
"Please enter your password to confirm this action.": "Introduzca su contraseña para confirmar esta acción.",
"Please make sure the address is correct and that the page hasn't been moved.": "Asegúrese de que la dirección sea correcta y que la página no se haya movido.",
"Please read the full rules": "Por favor lea las reglas completas",
"Please read the instance's {fullRules}": "Por favor, lea las {fullRules} de la instancia",
"Please read the {fullRules} published by {instance}'s administrators.": "Lea las {fullRules} publicadas por los administradores de {instance}.",
"Please refresh the page and retry.": "Actualice la página y vuelva a intentarlo.",
"Post": "Publicación",
"Post URL": "URL de publicación",
"Post a comment": "Publicar un comentario",
"Post a public message": "Publica un mensaje público",
"Post a reply": "Publica una respuesta",
"Post body": "Cuerpo de la publicación",
"Post {eventTitle} reported": "Publicación {eventTitle} informada",
@ -776,6 +721,7 @@
"Powered by {mobilizon}. © 2018 - {date} The Mobilizon Contributors - Made with the financial support of {contributors}.": "Desarrollado por {mobilizon}. © 2018 - {date} The Mobilizon Contributors - Hecho con el apoyo financiero de {contributors}.",
"Preferences": "Preferencias",
"Previous": "Anterior",
"Previous email": "Email anterior",
"Previous month": "Mes anterior",
"Previous page": "Pagina anterior",
"Price sheet": "Hoja de precios",
@ -800,39 +746,33 @@
"Publication date": "Fecha de publicación",
"Publish": "Publicar",
"Published by {name}": "Publicado por {name}",
"Published events": "Eventos publicados",
"Published events with <b>{comments}</b> comments and <b>{participations}</b> confirmed participations": "Eventos publicados con <b> {comments} </b> comentarios y <b> {participations} </b> participaciones confirmadas",
"Push": "Empujar",
"Quote": "Cita",
"RSS/Atom Feed": "RSS/Suministro Atom",
"Radius": "Radio",
"Read Framasofts statement of intent on the Framablog": "Lea la declaración de intenciones de Framasoft en el Framablog",
"Recap every week": "Recordatorio semanal",
"Receive one email for each activity": "Reciba un correo electrónico por cada actividad",
"Receive one email per request": "Recibir un correo electrónico por solicitud",
"Redirecting in progress…": "Redirección en progreso…",
"Redirecting to Mobilizon": "Redirigiendo a Mobilizon",
"Redirecting to content…": "Redirigiendo al contenido…",
"Redirecting to event…": "Redirigiendo al evento …",
"Redo": "Rehacer",
"Refresh profile": "Actualizar perfil",
"Regenerate new links": "Regenerar nuevos enlaces",
"Region": "Región",
"Register": "Registrar",
"Register an account on Mobilizon!": "¡Registre una cuenta en Mobilizon!",
"Register an account on {instanceName}!": "¡Registre una cuenta en {instanceName}!",
"Register for an event by choosing one of your identities": "Regístrese para un evento eligiendo una de sus identidades",
"Register on this instance": "Registrarse en esta instancia",
"Registration is allowed, anyone can register.": "El registro está permitido, cualquiera puede registrarse.",
"Registration is closed.": "El registro está cerrado.",
"Registration is currently closed.": "El registro está actualmente cerrado.",
"Registrations": "Registros",
"Registrations are restricted by allowlisting.": "Las inscripciones están restringidas por lista de permisos.",
"Registrations are restricted by whitelisting.": "Los registros están restringidos por la lista blanca.",
"Reject": "Rechazar",
"Reject follow": "Rechazar seguir",
"Reject member": "Rechazar miembro",
"Rejected": "Rechazado",
"Rejected participations": "Participaciones rechazadas",
"Remember my participation in this browser": "Recuerda mi participación en este navegador",
"Remove": "Eliminar",
"Remove link": "Remover enlace",
@ -843,6 +783,7 @@
"Reply": "Respuesta",
"Report": "Declarar",
"Report #{reportNumber}": "Informe #{reportNumber}",
"Report status": "Informe de estado",
"Report this comment": "Informar de este comentario",
"Report this event": "Informa de este evento",
"Report this group": "Reportar este grupo",
@ -856,10 +797,10 @@
"Reports": "Declaraciones",
"Reports list": "Lista de informes",
"Request for participation confirmation sent": "Solicitud de confirmación de participación enviada",
"Requests": "Solicitudes",
"Resend confirmation email": "Reenviar correo electrónico de confirmación",
"Resent confirmation email": "Reenviar correo electrónico de confirmación",
"Reset": "Reiniciar",
"Reset filters": "Restablecer filtros",
"Reset my password": "Restablecer mi contraseña",
"Reset password": "Restablecer la contraseña",
"Resolved": "Resuelto",
@ -877,9 +818,7 @@
"Schedule": "Calendario",
"Search": "Buscar",
"Search events, groups, etc.": "Buscar eventos, grupos, etc.",
"Search results: \"{search}\"": "Resultados de búsqueda: \"{search}\"",
"Searching…": "Buscando…",
"Search…": "Buscar…",
"Select a language": "Selecciona un idioma",
"Select a radius": "Seleccione un radio",
"Select a timezone": "Selecciona una zona horaria",
@ -887,8 +826,6 @@
"Select the activities for which you wish to receive an email or a push notification.": "Seleccione las actividades para las que desea recibir un correo electrónico o una notificación automática.",
"Send": "Enviar",
"Send email": "Enviar correo electrónico",
"Send me an email to reset my password": "Enviarme un correo electrónico para restablecer mi contraseña",
"Send me the confirmation email once again": "Envíame el correo electrónico de confirmación una vez más",
"Send notification e-mails": "Enviar correos electrónicos de notificación",
"Send password reset": "Enviar restablecimiento de contraseña",
"Send the confirmation email again": "Enviar el correo electrónico de confirmación nuevamente",
@ -913,18 +850,18 @@
"Sign up": "Regístrate",
"Since you are a new member, private content can take a few minutes to appear.": "Dado que es un miembro nuevo, el contenido privado puede tardar unos minutos en aparecer.",
"Skip to main content": "Saltar al contenido principal",
"So that, right from its conception, Mobilizon would {fit_needs_uses_people} who are going to use it.": "De modo que, desde su concepción, Mobilizon podría {fit_needs_uses_people} quién lo va a usar.",
"Social": "Social",
"Software to the people": "Software para la gente",
"Some terms, technical or otherwise, used in the text below may cover concepts that are difficult to grasp. We have provided a glossary here to help you understand them better:": "Algunos términos, técnicos o de otro tipo, utilizados en el texto a continuación pueden abarcar conceptos que son difíciles de comprender. Hemos proporcionado un glosario aquí para ayudarlo a comprenderlos mejor:",
"Starts on…": "Comienza en …",
"Status": "Estado",
"Statut": "Estado",
"Stop following instance": "Dejar de seguir la instancia",
"Street": "Calle",
"Submit": "Enviar",
"Subtitles": "Subtítulos",
"Suspend": "Suspender",
"Suspend group": "Suspender grupo",
"Suspend the account": "Suspender la cuenta",
"Suspend the account?": "¿Suspender la cuenta?",
"Suspended": "Suspendido",
"Tag search": "Búsqueda de etiquetas",
"Task lists": "Listas de tareas",
@ -947,8 +884,6 @@
"The account's email address was changed. Check your emails to verify it.": "Se cambió la dirección de correo electrónico de la cuenta. Revise sus correos electrónicos para verificarlo.",
"The actual number of participants may differ, as this event is hosted on another instance.": "El número real de participantes puede diferir ya que este evento se aloja en otra instancia.",
"The content came from another server. Transfer an anonymous copy of the report?": "El contenido vino de otro servidor. ¿Transferir una copia anónima del informe?",
"The current identity doesn't have any permission on this event. You should probably change it.": "La identidad actual no tiene ningún permiso para este evento. Probablemente deberías cambiarlo.",
"The current password is invalid": "La contraseña actual no es válida",
"The draft event has been updated": "El borrador del evento ha sido actualizado",
"The event has a sign language interpreter": "El evento cuenta con intérprete de lengua de signos",
"The event has been created as a draft": "El evento ha sido creado como borrador",
@ -966,7 +901,6 @@
"The event will show as attributed to this group.": "El evento se mostrará como atribuido a este grupo.",
"The event will show as attributed to this profile.": "El evento se mostrará como atribuido a este perfil.",
"The event will show as attributed to your personal profile.": "El evento se mostrará como atribuido a su perfil personal.",
"The event will show the group as organizer.": "El evento mostrará al grupo como organizador.",
"The event {event} was created by {profile}.": "El evento {event} fue creado por {profile}.",
"The event {event} was deleted by {profile}.": "El evento {event} Ha sido borrado por {profile}.",
"The event {event} was updated by {profile}.": "El evento {event} fue actualizado por {profile}.",
@ -984,13 +918,9 @@
"The member was approved": "El miembro fue aprobado",
"The member was removed from the group {group}": "El miembro fue eliminado del grupo {grup}",
"The membership request from {profile} was rejected": "Se rechazó la solicitud de adesión de {profile}",
"The new email doesn't seem to be valid": "El nuevo correo electrónico no parece ser válido",
"The new email must be different": "El nuevo correo electrónico debe ser diferente",
"The new password must be different": "La nueva contraseña debe ser diferente",
"The only way for your group to get new members is if an admininistrator invites them.": "La única forma de que su grupo obtenga nuevos miembros es si un administrador los invita.",
"The organiser has chosen to close comments.": "El organizador ha optado por cerrar los comentarios.",
"The page you're looking for doesn't exist.": "La página que estás buscando no existe.",
"The password provided is invalid": "La contraseña proporcionada no es válida",
"The password was successfully changed": "La contraseña fue cambiada con éxito",
"The post {post} was created by {profile}.": "La publicación {post} fue creada por {profile}.",
"The post {post} was deleted by {profile}.": "La publicación {post} ha sido borrada por {profile}.",
@ -998,8 +928,7 @@
"The report will be sent to the moderators of your instance. You can explain why you report this content below.": "El informe se enviará a los moderadores de su instancia. Puede explicar por qué declara este contenido a continuación.",
"The selected picture is too heavy. You need to select a file smaller than {size}.": "La imagen seleccionada es demasiado pesada. Debe seleccionar un archivo menor que {size}.",
"The technical details of the error can help developers solve the problem more easily. Please add them to your feedback.": "Los detalles técnicos del error pueden ayudar a los desarrolladores a resolver el problema más fácilmente. Agrégalos a tus comentarios.",
"The user account you're trying to login as has not been confirmed yet. Check your email inbox and eventually your spam folder.": "La cuenta de usuario que está intentando iniciar sesión aún no se ha confirmado. Verifique su bandeja de entrada de correo electrónico y eventualmente su carpeta de correo no deseado.",
"The username is a unique identifier of your account on this and all the other instances. It's as unique as an email address, which makes it easy for other people to interact with it.": "El nombre de usuario es un identificador único de su cuenta en esta y todas las demás instancias. Es tan único como una dirección de correo electrónico, lo que facilita que otras personas interactúen con él.",
"The user has been disabled": "El usuario ha sido deshabilitado",
"The {default_privacy_policy} will be used. They will be translated in the user's language.": "Se utilizará {default_privacy_policy}. Se traducirán en el idioma del usuario.",
"The {default_terms} will be used. They will be translated in the user's language.": "Se utilizarán los {default_terms}. Se traducirán en el idioma del usuario.",
"There are {participants} participants.": "Hay {participantes} participantes.",
@ -1012,31 +941,29 @@
"This Mobilizon instance and this event organizer allows anonymous participations, but requires validation through email confirmation.": "Esta instancia de Mobilizon y este organizador de eventos permiten participaciones anónimas pero requieren validación mediante confirmación por correo electrónico.",
"This URL doesn't seem to be valid": "Esta URL no parece ser válida",
"This URL is not supported": "Esta URL no es compatible",
"This email is already registered as participant for this event": "Este correo electrónico ya está registrado como participante para este evento",
"This email is already used.": "Este correo electrónico ya está en uso.",
"This event has been cancelled.": "Este evento ha sido cancelado.",
"This event is accessible only through it's link. Be careful where you post this link.": "Este evento es accesible solo a través de su enlace. Tenga cuidado donde publica este enlace.",
"This group doesn't have a description yet.": "Este grupo aún no tiene una descripción.",
"This group is accessible only through it's link. Be careful where you post this link.": "Este grupo es accesible solo a través de su enlace. Tenga cuidado donde publica este enlace.",
"This group is invite-only": "Este grupo es solo por invitación",
"This group was not found": "No se encontró este grupo",
"This identifier is unique to your profile. It allows others to find you.": "Este identificador es único para su perfil. Permite que otros te encuentren.",
"This identity is not a member of any group.": "Esta identidad no es miembro de ningún grupo.",
"This information is saved only on your computer. Click for details": "Esta información se guarda solo en su computadora. Haga clic para más detalles",
"This installation (called “an instance“) can easily {interconnect}, thanks to {protocol}.": "Esta instalación (llamada \"una instancia\") se puede {interconect} fácilmente, gracias a {protocol}.",
"This installation (called “instance“) can easily {interconnect}, thanks to {protocol}.": "Esta instalación (llamada \"instancia\") puede fácilmente {interconnect}, gracias a {protocol}.",
"This instance doesn't follow yours.": "Esta instancia no sigue a la tuya.",
"This instance hasn't got push notifications enabled.": "Esta instancia no tiene habilitadas las notificaciones push.",
"This instance isn't opened to registrations, but you can register on other instances.": "Esta instancia no está abierta a registros pero puede registrarse en otras instancias.",
"This instance, <b>{instanceName} ({domain})</b>, hosts your profile, so remember its name.": "Esta instancia,<b>{instanceName} ({domain})</b>, aloja su perfil, así que recuerde su nombre.",
"This is a demonstration site to test Mobilizon.": "Este es un sitio de demostración para probar Mobilizon.",
"This is a demonstration site to test the beta version of Mobilizon.": "Este es un sitio de demostración para probar la versión beta de Mobilizon.",
"This is like your federated username (<code>{username}</code>) for groups. It will allow the group to be found on the federation, and is guaranteed to be unique.": "Esto es como su nombre de usuario federado (<code>{username}</code>) para grupos. Permitirá que el grupo se encuentre en la federación y se garantiza que será único.",
"This is like your federated username (<code>{username}</code>) for groups. It will allow you to be found on the federation, and is guaranteed to be unique.": "Esto es como su nombre de usuario federado (<code>{username}</code>) para grupos. Le permitirá ser encontrado en la federación y se garantiza que será único.",
"This month": "Este mes",
"This post is accessible only for members. You have access to it for moderation purposes only because you are an instance moderator.": "Esta publicación es accesible solo para miembros. Tiene acceso a él con fines de moderación solo porque es un moderador de instancia.",
"This post is accessible only through it's link. Be careful where you post this link.": "Esta publicación es accesible solo a través de su enlace. Tenga cuidado donde publica este enlace.",
"This profile is from another instance, the informations shown here may be incomplete.": "Este perfil es de otra instancia, la información que se muestra aquí puede estar incompleta.",
"This profile is located on this instance, so you need to {access_the_corresponding_account} to suspend it.": "Este perfil se encuentra en esta instancia, por lo que debe {access_the_corresponding_account} para suspenderlo.",
"This profile was not found": "No se encontró este perfil",
"This setting will be used to display the website and send you emails in the correct language.": "Esta configuración se utilizará para mostrar el sitio web y enviarle correos electrónicos en el idioma correcto.",
"This user has been disabled": "Este usuario ha sido deshabilitado",
"This user doesn't have any profiles": "Este usuario no tiene ningún perfil",
"This user was not found": "Este usuario no se encontró",
"This website isn't moderated and the data that you enter will be automatically destroyed every day at 00:01 (Paris timezone).": "Este sitio web no está moderado y los datos que ingrese se destruirán automáticamente todos los días a las 00:01 (zona horaria de París).",
"This week": "Esta semana",
"This weekend": "Este fin de semana",
@ -1046,9 +973,7 @@
"Timezone": "Zona horaria",
"Timezone detected as {timezone}.": "Zona horaria borrada como {timezone}.",
"Title": "Título",
"To achieve your registration, please create a first identity profile.": "Para conseguir su registro, cree un primer perfil de identidad.",
"To activate more notifications, head over to the notification settings.": "Para activar más notificaciones, dirígete a la configuración de notificaciones.",
"To change the world, change the software": "Para cambiar el mundo, cambia el software",
"To confirm, type your event title \"{eventTitle}\"": "Para confirmar, escriba el título de su evento \"{eventTitle}\"",
"To confirm, type your identity username \"{preferredUsername}\"": "Para confirmar, escriba su nombre de usuario de identidad \"{preferredUsername}\"",
"To create and manage multiples identities from a same account": "Para crear y administrar múltiples identidades desde una misma cuenta",
@ -1059,6 +984,7 @@
"Today": "Hoy",
"Tomorrow": "Mañana",
"Tools": "Herramientas",
"Total number of participations": "Número total de participaciones",
"Transfer to {outsideDomain}": "Transferir a {outsideDomain}",
"Triggered profile refreshment": "Refresco de perfil activado",
"Twitch live": "Twitch en vivo",
@ -1078,7 +1004,6 @@
"Underline": "Subrayar",
"Undo": "Deshacer",
"Unfollow": "Dejar de seguir",
"Unfortunately, this instance isn't opened to registrations": "Desafortunadamente, esta instancia no está abierta a registros",
"Unfortunately, your participation request was rejected by the organizers.": "Lamentablemente, su solicitud de participación fue rechazada por los organizadores.",
"Unknown": "Desconocido",
"Unknown actor": "Actor desconocido",
@ -1086,9 +1011,6 @@
"Unknown value for the openness setting.": "Valor desconocido para la configuración de apertura.",
"Unlogged participation": "Participación no registrada",
"Unsaved changes": "Cambios no guardados",
"Unset group": "Deseleccionar grupo",
"Unsubscribe to WebPush": "Cancelar la suscripción a WebPush",
"Unsubscribe to browser notifications": "Cancelar la suscripción a las notificaciones del navegador",
"Unsubscribe to browser push notifications": "Cancelar la suscripción a las notificaciones push del navegador",
"Unsuspend": "Aprobar",
"Upcoming": "Próximo",
@ -1103,6 +1025,7 @@
"Update post": "Actualizar publicación",
"Updated": "Actualizado",
"Uploaded media size": "Tamaño de los medios cargados",
"Uploaded media total size": "Tamaño total de medios cargados",
"Use my location": "Usa mi ubicación",
"User": "Usuario",
"User settings": "Ajustes de usuario",
@ -1114,12 +1037,8 @@
"View a reply": "|Ver una respuesta|Ver {totalReplies} respuestas",
"View account on {hostname} (in a new window)": "Ver cuenta en {hostname} (en una nueva ventana)",
"View all": "Ver todo",
"View all discussions": "Ver todas las discusiones",
"View all events": "Ver todos los eventos",
"View all posts": "Ver todas las publicaciones",
"View all resources": "Ver todos los recursos",
"View all todos": "Ver todas las tareas pendientes",
"View all upcoming events": "Ver todos los próximos eventos",
"View event page": "Ver página del evento",
"View everything": "Ver todo",
"View full profile": "Ver todo el perfil",
@ -1131,22 +1050,14 @@
"Visibility was set to public.": "La visibilidad se estableció en público.",
"Visible everywhere on the web": "Visible por todas partes en la web",
"Visible everywhere on the web (public)": "Visible en todas partes de la web (público)",
"Visit event page": "Visite la página del evento",
"Waiting for organization team approval.": "Esperando la aprobación del equipo de la organización.",
"Waiting list": "Lista de espera",
"Warning": "Advertencia",
"We asked professional designers to help us develop our vision for Mobilizon. We took time to study the {digital_habits} in order to understand the features they need to gather, organize, and mobilize so that right from its conception, Mobilizon would {fit_needs_uses_people} who are going to use it.": "Le pedimos a diseñadores profesionales que nos ayudaran a desarrollar nuestra visión de Mobilizon. Nos tomamos un tiempo para estudiar los {digital_habits} a fin de comprender las funciones que necesitan para recopilar, organizar y movilizar de modo que, desde su concepción, Mobilizon {fit_needs_uses_people} vaya a usarlo.",
"We asked professional designers to help us develop our vision for Mobilizon. We took time to study the {digital_habits} in order to understand the features they need to gather, organize, and mobilize.": "Pedimos a los diseñadores profesionales que nos ayuden a desarrollar nuestra visión para Mobilizon. Nos tomamos el tiempo de estudiar los {digital_habits} para comprender las características que necesitan para reunir, organizar y movilizar.",
"We cant change the world from within Facebook. The tool we dream of, surveillance capitalism corporations wont develop, as they cannot profit from it. This is an opportunity to build something better, by taking another approach.": "No podemos cambiar el mundo desde Facebook. La herramienta con la que soñamos, las corporaciones del capitalismo de vigilancia no la desarrollarán, ya que no pueden beneficiarse de ella. Esta es una oportunidad para construir algo mejor, adoptando otro enfoque.",
"We couldn't save your participation inside this browser. Not to worry, you have successfully confirmed your participation, we just couldn't save it's status in this browser because of a technical issue.": "No pudimos guardar su participación dentro de este navegador. No se preocupe, ha confirmado con éxito su participación, simplemente no pudimos guardar su estado en este navegador debido a un problema técnico.",
"We improve this software thanks to your feedback. To let us know about this issue, two possibilities (both unfortunately require user account creation):": "Mejoramos este software gracias a sus comentarios. Para informarnos sobre este problema, hay dos posibilidades (ambas lamentablemente requieren la creación de una cuenta de usuario):",
"We just sent an email to {email}": "Acabamos de enviar un correo electrónico a {email}",
"We use your timezone to make sure you get notifications for an event at the correct time.": "Usamos su zona horaria para asegurarnos de que reciba notificaciones de un evento en el momento correcto.",
"We want to develop a <b>digital common</b> that everyone can make their own, one which respects <b>privacy and activism by design</b>.": "Queremos desarrollar un <b> común digital </b> que todos puedan crear, uno que respete <b> la privacidad y el activismo por diseño </b>.",
"We want to develop a <b>digital common</b>, that everyone can make their own, which respects <b>privacy and activism by design</b>.": "Queremos desarrollar un <b> común digital </b>, que todos puedan hacer suyo, que respete la <b> privacidad y activismo por diseño </b>.",
"We will redirect you to your instance in order to interact with this event": "Lo redirigiremos a su instancia para interactuar con este evento",
"We will redirect you to your instance in order to interact with this group": "Te redireccionaremos a tu instancia para poder interactuar con este grupo",
"We wont change the world from Facebook. The tool we dream of, surveillance capitalism corporations wont develop it, as they couldnt profit from it. This is an opportunity to build something better, by taking another approach.": "No cambiaremos el mundo de Facebook. La herramienta con la que soñamos, las corporaciones de capitalismo de vigilancia no la desarrollarán ya que no podrían beneficiarse de ella. Esta es una oportunidad para construir algo mejor, adoptando otro enfoque.",
"We'll send you an email one hour before the event begins, to be sure you won't forget about it.": "Le enviaremos un correo electrónico una hora antes de que comience el evento, para asegurarnos de que no lo olvide.",
"We'll use your timezone settings to send a recap of the morning of the event.": "Usaremos la configuración de su zona horaria para enviarle un recordatorio la mañana del día evento.",
"Website": "Sitio web",
@ -1154,12 +1065,10 @@
"Weekly email summary": "Resumen de correo electrónico semanal",
"Welcome back {username}!": "¡Bienvenido de nuevo {username}!",
"Welcome back!": "¡Bienvenido de nuevo!",
"Welcome on your administration panel": "Bienvenido en tu panel de administración",
"Welcome to Mobilizon, {username}!": "¡Bienvenido a Mobilizon, {username}!",
"What can I do to help?": "¿Que puedo hacer para ayudar?",
"Wheelchair accessibility": "Accesibilidad para sillas de ruedas",
"When a moderator from the group creates an event and attributes it to the group, it will show up here.": "Cuando un moderador del grupo crea un evento y lo atribuye al grupo, se mostrará aquí.",
"When someone from the group creates an event and attributes it to the group, it will show up here.": "Cuando alguien del grupo crea un evento y lo atribuye al grupo, se mostrará aquí.",
"When the event is private, you'll need to share the link around.": "Cuando el evento sea privado, deberá compartir el enlace.",
"When the post is private, you'll need to share the link around.": "Cuando la publicación sea privada, deberá compartir el enlace.",
"Whether the event is accessible with a wheelchair": "Si el evento es accesible con silla de ruedas",
@ -1172,31 +1081,21 @@
"Why create an account?": "¿Por qué crear una cuenta?",
"Will allow to display and manage your participation status on the event page when using this device. Uncheck if you're using a public device.": "Permitirá mostrar y administrar su estado de participación en la página del evento cuando utilice este dispositivo. Desmarque si está usando un dispositivo público.",
"Within {number} kilometers of {place}": "|Dentro de un kilómetro de {place}|Dentro de {number} kilómetros de {place}",
"World map": "Mapa del mundo",
"Write something…": "Escribe algo…",
"Yesterday": "Ayer",
"You accepted the invitation to join the group.": "Aceptaste la invitación para unirte al grupo.",
"You added the member {member}.": "Agregaste al miembro {menber}.",
"You and one other person are going to this event": "Eres el único que va a este evento|Usted y otra persona asistirán a este evento|Usted y las personas {approved}asistirán a este evento.",
"You approved {member}'s membership.": "Aprobó la membresía de {member}.",
"You archived the discussion {discussion}.": "Archivaste la discusión {discussion}.",
"You are already a participant of this event.": "Ya eres un participante de este evento.",
"You are not an administrator for this group.": "No eres administrador de este grupo.",
"You are not part of any group": "No formas parte de ningún grupo",
"You are not part of any group.": "No formas parte de ningún grupo.",
"You are offline": "Estas desconectado",
"You are participating in this event anonymously": "Estás participando en este evento de forma anónima",
"You are participating in this event anonymously but didn't confirm participation": "Participas en este evento de forma anónima pero no has confirmado la participación",
"You can add tags by hitting the Enter key or by adding a comma": "Puede agregar etiquetas presionando la tecla Intro o agregando una coma",
"You can only get invited to groups right now.": "Solo puedes recibir invitaciones a grupos en este momento.",
"You can pick your timezone into your preferences.": "Puedes elegir tu zona horaria según tus preferencias.",
"You can try another search term or drag and drop the marker on the map": "Puedes probar con otro término de búsqueda o arrastrar y soltar el marcador en el mapa",
"You can't change your password because you are registered through {provider}.": "No puede cambiar su contraseña porque está registrado a través de {provider}.",
"You can't remove your last identity.": "No puedes eliminar tu última identidad.",
"You can't reset your password because you use a 3rd-party auth provider to login.": "No puede restablecer su contraseña porque utiliza un proveedor de autenticación de terceros para iniciar sesión.",
"You can't use notifications in this browser.": "No puede usar notificaciones en este navegador.",
"You can't use push notifications in this browser.": "No puede usar notificaciones push en este navegador.",
"You can't use webpush in this browser.": "No puedes usar webpush en este navegador.",
"You changed your email or password": "Cambiaste tu correo electrónico o contraseña",
"You created the discussion {discussion}.": "Creaste la discusión {discussion}.",
"You created the event {event}.": "Has creado el evento {event}.",
@ -1212,7 +1111,6 @@
"You demoted the member {member} to an unknown role.": "Has degradado al miembro {member} a una función desconocida.",
"You demoted {member} to moderator.": "Has degradado a {member} a moderador.",
"You demoted {member} to simple member.": "Has degradado a {member} a miembro simple.",
"You didn't create or join any event yet": "Aún no creaste ni te uniste a ningún evento",
"You didn't create or join any event yet.": "Aún no creaste ni te uniste a ningún evento.",
"You don't follow any instances yet.": "Todavía no sigues ninguna instancia.",
"You don't have any upcoming events. Maybe try another filter?": "No tienes ningún evento próximo. ¿Quizás probar con otro filtro?",
@ -1225,17 +1123,15 @@
"You have one event in {days} days.": "No tienes eventos en {days} días|Tienes un evento en {days} días. |Tienes {count} eventos en {days} días",
"You have one event today.": "No tienes eventos hoy|Tienes un evento hoy.|Tienes {count} eventos hoy",
"You have one event tomorrow.": "No tienes eventos mañana|Tienes un evento mañana.|Tienes {count} eventos mañana",
"You haven't interacted with other instances yet.": "Aún no has interactuado con otras instancias.",
"You invited {member}.": "as invitado a {member}.",
"You may also ask to {resend_confirmation_email}.": "También puede solicitar {resend_confirmation_email}.",
"You may clear all participation information for this device with the buttons below.": "Puede borrar toda la información de participación de este dispositivo con los botones a continuación.",
"You may now close this window, or {return_to_event}.": "Ahora puede cerrar esta ventana o {return_to_event}.",
"You may now close this window.": "Ahora puedes cerrar esta ventana.",
"You may show some members as contacts.": "Puede mostrar algunos miembros como contactos.",
"You moved the folder {resource} into {new_path}.": "Moviste la carpeta {resource} a {new_path}.",
"You moved the folder {resource} to the root folder.": "Moviste la carpeta {resource} a la carpeta raíz.",
"You moved the resource {resource} into {new_path}.": "Moviste el recurso {resource} a {new_path}.",
"You moved the resource {resource} to the root folder.": "Moviste el recurso {resource} a la carpeta raíz.",
"You need to create the group before you create an event.": "Necesitas crear un grupo antes de crear un evento.",
"You need to login.": "Necesitas iniciar sesión.",
"You posted a comment on the event {event}.": "Publicó un comentario sobre el evento {event}.",
"You promoted the member {member} to an unknown role.": "has ascendido al miembro {member} a un rol desconocido.",
@ -1261,12 +1157,10 @@
"You will be able to add an avatar and set other options in your account settings.": "Podrá agregar un avatar y establecer otras opciones en la configuración de su cuenta.",
"You will be redirected to the original instance": "Serás redirigido a la instancia original",
"You will find here all the events you have created or of which you are a participant, as well as events organized by groups you follow or are a member of.": "Aquí encontrará todos los eventos que ha creado o aquellos en los que es participante, además de eventos organizados por grupos a los que forma parte o sigue.",
"You will find here all the events you have created or of which you are a participant.": "Aquí encontrarás todos los eventos que has creado o de los que eres participante.",
"You will receive notifications about this group's public activity depending on %{notification_settings}.": "Recibirás notificaciones sobre la actividad pública de este grupo según% {notification_settings}.",
"You wish to participate to the following event": "Desea participar en el siguiente evento",
"You'll get a weekly recap every Monday for upcoming events, if you have any.": "Obtendrás un recordatorio semanal todos los lunes para los próximos eventos, si tiene alguno.",
"You'll need to change the URLs where there were previously entered.": "Deberá cambiar las URL donde se ingresaron anteriormente.",
"You'll need to transmit the group URL so people may access the group's profile.": "Deberá transmitir la URL del grupo para que las personas puedan acceder al perfil del grupo.",
"You'll need to transmit the group URL so people may access the group's profile. The group won't be findable in Mobilizon's search or regular search engines.": "Deberá transmitir la URL del grupo para que las personas puedan acceder al perfil del grupo. El grupo no se podrá encontrar en la búsqueda de Mobilizon ni en los motores de búsqueda habituales.",
"You'll receive a confirmation email.": "Recibirá un correo electrónico de confirmación.",
"YouTube live": "YouTube en vivo",
@ -1275,23 +1169,18 @@
"Your account has been validated": "Su cuenta ha sido validada",
"Your account is being validated": "Su cuenta esta siendo validada",
"Your account is nearly ready, {username}": "Su cuenta está casi lista, {username}",
"Your city or region and the radius will only be used to suggest you events nearby.": "Su ciudad o región y el radio solo se utilizarán para sugerirle eventos cercanos.",
"Your city or region and the radius will only be used to suggest you events nearby. The event radius will consider the administrative center of the area.": "Su ciudad o región y el radio solo se utilizarán para sugerirle eventos cercanos. El radio del evento considerará el centro administrativo del área.",
"Your current email is {email}. You use it to log in.": "Su correo electrónico actual es {correo electrónico}. Lo usas para iniciar sesión.",
"Your email": "Tu correo electrónico",
"Your email address was automatically set based on your {provider} account.": "Su dirección de correo electrónico se configuró automáticamente en función de su cuenta de {provider}.",
"Your email has been changed": "Su correo ha sido cambiado",
"Your email is being changed": "Su correo electrónico está siendo cambiado",
"Your email is not whitelisted, you can't register.": "Su correo electrónico no está en la lista blanca, no puede registrarse.",
"Your email will only be used to confirm that you're a real person and send you eventual updates for this event. It will NOT be transmitted to other instances or to the event organizer.": "Su correo electrónico solo se utilizará para confirmar que es una persona real y enviarle actualizaciones eventuales para este evento. NO se transmitirá a otras instancias ni al organizador del evento.",
"Your federated identity": "Su identidad federada",
"Your local administrator resumed its policy:": "Su administrador local reanudó su política:",
"Your membership was approved by {profile}.": "Su adesión fue aprobada por {profile}.",
"Your participation has been confirmed": "Su participación ha sido confirmada",
"Your participation has been rejected": "Su participación ha sido rechazada",
"Your participation has been requested": "Su participación ha sido solicitada",
"Your participation has been validated": "Su participación ha sido validada",
"Your participation is being validated": "Tu participación está siendo validada",
"Your participation request has been validated": "Tu participación ha sido validada",
"Your participation request is being validated": "Tu participación esta siendo validada",
"Your participation status has been changed": "Su estado de participación ha cambiado",
@ -1311,39 +1200,32 @@
"[This comment has been deleted by it's author]": "[Este comentario ha sido borrado por su autor]",
"[This comment has been deleted]": "[Este comentario ha sido eliminado]",
"[deleted]": "[eliminado]",
"a decentralised federation protocol": "un protocolo de federación descentralizado",
"a non-existent report": "un informe inexistente",
"access the corresponding account": "acceder a la cuenta correspondiente",
"access to the group's private content as well": "acceso al contenido privado del grupo también",
"and {number} groups": "y {number} grupos",
"any distance": "cualquier distancia",
"as {identity}": "como {identity}",
"change the world, one byte at a time": "cambiar el mundo, un byte cada vez",
"contact uninformed": "contacto desinformado",
"create a group": "crear un grupo",
"create an event": "crear un evento",
"default Mobilizon privacy policy": "política de privacidad predeterminada de Mobilizon",
"default Mobilizon terms": "términos predeterminados de Mobilizon",
"digital habits of activists": "hábitos digitales de activistas",
"e.g. 10 Rue Jangot": "e.j. 10 Rue Jangot",
"e.g. Accessibility, Twitch, PeerTube": "p.ej. Accesibilidad, Twitch, PeerTube",
"enable the feature": "habilitar la función",
"explore the events": "explorar los eventos",
"explore the groups": "explorar los grupos",
"firstDayOfWeek": "0",
"fit the needs and uses of the people": "se ajusta a las necesidades y usos de las personas",
"full rules": "reglas completas",
"group's upcoming public events": "próximos eventos públicos del grupo",
"https://mensuel.framapad.org/p/some-secret-token": "https://mensuel.framapad.org/p/algun-signo-secreto",
"iCal Feed": "Suministro iCal",
"instance rules": "reglas de instancia",
"interconnect with others like it": "interconectarse con otros como él",
"its source code is public": "su código fuente es público",
"mobilizon-instance.tld": "mobilizon-instance.tld",
"more than 1360 contributors": "más de 1360 contribuyentes",
"on our blog": "en nuestro blog",
"new@email.com": "nuevo@email.com",
"profile@instance": "perfil@instancia",
"report #{report_number}": "informe #{report_number}",
"resend confirmation email": "reenviar correo electrónico de confirmación",
"respect of the fundamental freedoms": "respeto de las libertades fundamentales",
"return to the event's page": "volver a la página del evento",
"terms of service": "términos de servicio",
"with another identity…": "con otra identidad …",
@ -1355,7 +1237,6 @@
"{count} members or followers": "Sin miembros ni seguidores|Un miembro o seguidor|{count} miembros o seguidores",
"{count} participants": "Aún no hay participantes|Un participante|{count} participantes",
"{count} requests waiting": "{count} solicitudes en espera",
"{count} team members": "{count} miembros del equipo",
"{folder} - Resources": "{folder} - Recursos",
"{group} activity timeline": "Cronograma de actividad de {group}",
"{group} events": "{group} eventos",
@ -1364,8 +1245,6 @@
"{group}'s todolists": "Trabajos pendientes de {group}",
"{instanceName} is an instance of the {mobilizon} software.": "{instanceName} es una instancia de lsoftware {mobilizon .",
"{instanceName} is an instance of {mobilizon_link}, a free software built with the community.": "{instanceName} es una instancia de {mobilizon_link}, un software gratuito creado con la comunidad.",
"{license} guarantees {respect} of the people who use it. Since {source}, anyone can audit it, which guarantees its transparency.": "{license} garantiza {respeto} a las personas que lo utilizan. Desde {fuente}, cualquiera puede auditarlo, lo que garantiza su transparencia.",
"{license} guarantees {respect} of the people who will use it. Since {source}, anyone can audit it, which guarantees its transparency.": "{license} garantiza {respect} de las personas que lo usarán. Desde {source}, cualquiera puede auditarlo, lo que garantiza su transparencia.",
"{member} accepted the invitation to join the group.": "{member} aceptó la invitación para unirse al grupo.",
"{member} joined the group.": "{member} se unió al grupo.",
"{member} rejected the invitation to join the group.": "{member} rechazó la invitación para unirse al grupo.",
@ -1427,6 +1306,5 @@
"{timezoneLongName} ({timezoneShortName})": "{timezoneLongName} ({timezoneShortName})",
"{title} ({count} todos)": "{title} ({count} trabajos pendientes)",
"{username} was invited to {group}": "{username} fue invitado a {group}",
"© The Mobilizon Contributors {date} - Made with Elixir, Phoenix, VueJS & with some love and some weeks": "© The Mobilizon Contributors {date} - Hecho con Elixir, Phoenix, VueJS y con un poco de amor y algunas semanas",
"© The OpenStreetMap Contributors": "© The OpenStreetMap Contributors"
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -6,8 +6,8 @@
"+ Add a resource": "+ Cuir goireas ris",
"+ Create a post": "+ Cruthaich post",
"+ Create an event": "+ Cruthaich tachartas",
"+ Post a public message": "+ Postaich teachdaireachd phoblach",
"+ Start a discussion": "+ Tòisich air deasbad",
"0 Bytes": "0 baidht",
"<b>{contact}</b> will be displayed as contact.": "Thèid <b>{contact}</b> a shealltain mar neach-conaltraidh.|Thèid <b>{contact}</b> a shealltain mar luchd-conaltraidh.|Thèid <b>{contact}</b> a shealltain mar luchd-conaltraidh.|Thèid <b>{contact}</b> a shealltain mar luchd-conaltraidh.",
"@{group}": "@{group}",
"@{username}": "@{username}",
@ -45,6 +45,7 @@
"About this instance": "Mun ionstans seo",
"About {instance}": "Mu {instance}",
"Accept": "Gabh ris",
"Accept follow": "Gabh ris an iarrtas leantainn",
"Accepted": "Air a ghabhail ris",
"Accessibility": "So-ruigsinneachd",
"Accessible only by link": "Inntrigeadh le ceangal a-mhàin",
@ -61,7 +62,6 @@
"Add": "Cuir ris",
"Add / Remove…": "Cuir ris / Thoir air falbh…",
"Add a contact": "Cuir fiosrachadh conaltraidh ris",
"Add a group": "Cuir buidheann ris",
"Add a new post": "Cuir post ùr ris",
"Add a note": "Cuir nòta ris",
"Add a todo": "Cuir rud ri dhèanamh ris",
@ -79,6 +79,7 @@
"Admin settings successfully saved.": "Chaidh roghainnean an rianaire a shàbhaladh.",
"Administration": "Rianachd",
"Administrator": "Rianaire",
"All": "Na h-uile",
"All activities": "A h-uile gnìomhachd",
"All good, let's continue!": "Tha seo dòigheil, leanamaid oirnn!",
"All the places have already been taken": "Chan eil àite saor air fhàgail",
@ -128,8 +129,11 @@
"Atom feed for events and posts": "Inbhir Atom dha na tachartasan is postaichean",
"Attending": "An làthair",
"Avatar": "Avatar",
"Back to group list": "Air ais gu liosta nam buidhnean",
"Back to previous page": "Air ais dhan duilleag roimhpe",
"Back to profile list": "Air ais gu liosta nam pròifilean",
"Back to top": "Air ais gun bhàrr",
"Back to user list": "Air ais gu liosta nan cleachdaichean",
"Banner": "Bratach",
"Before you can login, you need to click on the link inside it to validate your account.": "Mus urrainn dhut clàradh a-steach, feumaidh tu briogadh air a cheangal na broinn gus an cunntas agad a dhearbhadh.",
"Begins on": "Tòisichidh e aig",
@ -140,7 +144,6 @@
"Browser notifications": "Brathan a bhrabhsair",
"Bullet list": "Liosta pheilearaichte",
"By others": "Le daoine eile",
"By {author}": "Le {author}",
"By {group}": "Le {group}",
"By {username}": "Le {username}",
"Can be an email or a link, or just plain text.": "S urrainn dhut post-d no ceangal no teacsa lom a cleachdadh.",
@ -156,10 +159,14 @@
"Cancelled": "Chaidh a chur gu neoini",
"Cancelled: Won't happen": "Sguireadh dheth: Cha tachair seo",
"Change": "Atharraich",
"Change email": "Atharraich am post-d",
"Change my email": "Atharraich am post-d agam",
"Change my identity…": "Atharraich an dearbh-aithne agam…",
"Change my password": "Atharraich am facal-faire agam",
"Change role": "Atharraich an dreuchd",
"Change timezone": "Atharraich an roinn-tìde",
"Change user email": "Atharraich post-d a chleachdaiche",
"Change user role": "Atharraich dreuchd a chleachdaiche",
"Check your inbox (and your junk mail folder).": "Thoir sùil air a bhogsa a-steach agad (s air a phasgan airson puist-d thruilleis).",
"Choose the source of the instance's Privacy Policy": "Tagh tùs do phoileasaidh prìobhaideachd an ionstans",
"Choose the source of the instance's Terms": "Tagh tùs do theirmichean an ionstans",
@ -184,6 +191,7 @@
"Confirm my participation": "Dearbh an com-pàirteachadh agam",
"Confirm my particpation": "Dearbh an com-pàirteachadh agam",
"Confirm participation": "Dearbh an com-pàirteachadh",
"Confirm user": "Dearbh an cleachdaiche",
"Confirmed": "Air a dhearbhachadh",
"Confirmed at": "Chaidh a dhearbhachadh",
"Confirmed: Will happen": "Air dearbhadh: Tachraidh seo",
@ -268,6 +276,7 @@
"Displayed nickname": "Am far-ainm a chithear",
"Displayed on homepage and meta tags. Describe what Mobilizon is and what makes this instance special in a single paragraph.": "Thèid seo a shealltainn air an duilleag-dhachaigh agus am measg nan tagaichean meata. Mìnich dè th ann am Mobilizon agus dè tha sònraichte mun ionstans agad ann an earrann a-mhàin.",
"Do not receive any mail": "Na faigh post-d idir",
"Do you really want to suspend this account? All of the user's profiles will be deleted.": "A bheil thu cinnteach gu bheil thu airson an cunntas seo a chur à rèim? Thèid gach pròifil a chleachdaiche a sguabadh às.",
"Do you wish to {create_event} or {explore_events}?": "A bheil thu airson {create_event} no {explore_events}?",
"Do you wish to {create_group} or {explore_groups}?": "A bheil thu airson {create_group} no {explore_groups}?",
"Does the event needs to be confirmed later or is it cancelled?": "Am bi an tachartas feumach air dearbhadh uaireigin eile no an deach a chur dheth?",
@ -279,6 +288,7 @@
"Edit": "Deasaich",
"Edit post": "Deasaich am post",
"Edit profile {profile}": "Deasaich pròifil {profile}",
"Edit user email": "Deasaich post-d a chleachdaiche",
"Edited {ago}": "Air a dheasachadh {ago}",
"Edited {relative_time} ago": "Chaidh a dheasachadh {relative_time} air ais",
"Eg: Stockholm, Dance, Chess…": "M.e.: Steòrnabhagh, Cèilidh, Spòrs…",
@ -290,7 +300,6 @@
"Element value": "Luach na h-eileamaid",
"Email": "Post-d",
"Email address": "Seòladh puist-d",
"Email notifications": "Brathan puist-d",
"Email validate": "Dearbh am post-d",
"Emails usually don't contain capitals, make sure you haven't made a typo.": "Cha bhi litrichean mòra ann am post-d mar as trice, dèan cinnteach nach do rinn thu mearachd sgrìobhaidh.",
"Enabled": "An comas",
@ -354,11 +363,19 @@
"Find or add an element": "Lorg no cuir eileamaid ris",
"First steps": "Na ciad ceuman",
"Follow": "Lean air",
"Follow a new instance": "Lean air ionstans ùr",
"Follow instance": "Lean air an ionstans",
"Follow status": "Staid na leantainn",
"Followed": "Ga leantainn leinne",
"Followed, pending response": "Ga leantainn leinne, a feitheamh air freagairt",
"Follower": "Neach-leantainn",
"Followers": "Luchd-leantainn",
"Followers will receive new public events and posts.": "Gheibh an luchd-leantainn tachartasan is postaichean poblach.",
"Following": "A leantainn",
"Following the group will allow you to be informed of the {group_upcoming_public_events}, whereas joining the group means you will {access_to_group_private_content_as_well}, including group discussions, group resources and members-only posts.": "Ma leanas tu air a bhuidheann, gheibh thu fiosrachadh mu {group_upcoming_public_events} ach ma gheibh thu ballrachd sa bhuidheann, gheibh thu {access_to_group_private_content_as_well}, a gabhail a-staigh deasbadan a bhuidhinn, goireasan a bhuidhinn agus postaichean a tha do bhuill a-mhàin.",
"Followings": "A leantainn",
"Follows us": "A leantainn oirnn",
"Follows us, pending approval": "A leantainn oirnn, a feitheamh air dearbhadh",
"For instance: London": "Mar eisimpleir: Glaschu",
"For instance: London, Taekwondo, Architecture…": "Mar eisimpleir: Glaschu, Camanachd, Ailtireachd…",
"Forgot your password ?": "Na dhìochuimhnich thu am facal-faire agad?",
@ -421,6 +438,7 @@
"I've been mentionned in a group discussion": "Chaidh iomradh a thoirt orm ann an deasbad buidhinn",
"ICS feed for events": "Inbhir ICS dha na tachartasan",
"ICS/WebCal Feed": "Inbhir ICS/WebCal",
"IP Address": "Seòladh IP",
"Identities": "Dearbh-aithnean",
"Identity {displayName} created": "Chaidh an dearbh-aithne {displayName} a chruthachadh",
"Identity {displayName} deleted": "Chaidh an dearbh-aithne {displayName} a sguabadh às",
@ -451,7 +469,6 @@
"Instance administrator": "Rianaire ionstans",
"Instance configuration": "Rèiteachadh an ionstans",
"Instance feeds": "Inbhirean an ionstans",
"Instance follows": "Ionstansan gan leantainn",
"Instance languages": "Cànain an ionstans",
"Instance rules": "Riaghailtean an ionstans",
"Instance settings": "Roghainnean an ionstans",
@ -477,6 +494,7 @@
"Last group created": "Am buidheann mu dheireadh a chruthaich thu",
"Last published event": "An tachartas foillsichte as ùire",
"Last published events": "Na tachartasan foillsichte as ùire",
"Last seen on": "Chunnacas an turas mu dheireadh",
"Last sign-in": "An clàradh a-steach mu dheireadh",
"Last week": "An t-seachdain seo chaidh",
"Latest posts": "Na puist as ùire",
@ -514,6 +532,7 @@
"Member": "Ball",
"Members": "Buill",
"Members-only post": "Post do bhuill a-mhàin",
"Memberships": "Ballrachdan",
"Mentions": "Iomraidhean",
"Message": "Teachdaireachd",
"Microsoft Teams": "Microsoft Teams",
@ -566,12 +585,15 @@
"No follower matches the filters": "Chan eil neach-leantainn sam bith a maidseadh nan criathragan",
"No group found": "Cha deach buidheann sam bith a lorg",
"No group matches the filters": "Chan eil buidheann sam bith a maidseadh nan criathragan",
"No group member found": "Cha deach ball a lorg sa bhuidheann",
"No groups found": "Cha deach buidheann sam bith a lorg",
"No information": "Gun fhiosrachadh",
"No instance follows your instance yet.": "Chan eil ionstans sam bith a leantainn air an ionstans agad-sa fhathast.",
"No instance found.": "Cha deach ionstans a lorg.",
"No instance to approve|Approve instance|Approve {number} instances": "Aontaich ri {number} ionstans|Aontaich ri {number} ionstans|Aontaich ri {number} ionstansan|Aontaich ri {number} ionstans",
"No instance to reject|Reject instance|Reject {number} instances": "Diùlt {number} ionstans|Diùlt {number} ionstans|Diùlt {number} ionstansan|Diùlt {number} ionstans",
"No instance to remove|Remove instance|Remove {number} instances": "Thoir air falbh {number} ionstans|Thoir air falbh {number} ionstans|Thoir air falbh {number} ionstansan|Thoir air falbh {number} ionstans",
"No instances match this filter. Try resetting filter fields?": "Chan eil ionstans sam bith a freagairt ris a chriathrag seo. Saoil an ath-shuidhich thu raointean na criathraige?",
"No languages found": "Cha deach cànan a lorg",
"No member matches the filters": "Chan eil ball sam bith a maidseadh nan criathragan",
"No members found": "Cha deach ball a lorg",
@ -590,7 +612,6 @@
"No posts found": "Cha deach post a lorg",
"No posts yet": "Chan eil post ann fhathast",
"No profile matches the filters": "Chan eil pròifil sam bith a maidseadh nan criathragan",
"No profiles found": "Cha deach pròifil a lorg",
"No public upcoming events": "Cha bhi tachartas poblach ann a dhaithghearr",
"No resolved reports yet": "Cha deach gearan fuasgladh fhathast",
"No resources in this folder": "Chan eil goireas sa phasgan seo",
@ -599,18 +620,20 @@
"No results for \"{queryText}\"": "Cha deach toradh a lorg airson “{queryText}”",
"No results for {search}": "Cha deach toradh a lorg airson {search}",
"No rules defined yet.": "Cha deach riaghailt a mhìneachadh fhathast.",
"No user matches the filter": "Chan eil cleachdaiche sam bith a maidseadh na criathraige",
"No user matches the filters": "Chan eil cleachdaiche sam bith a maidseadh nan criathragan",
"None": "Chan eil gin",
"Not accessible with a wheelchair": "Cha ghabh a ruigsinn le cathair-chuibhle",
"Not approved": "Gun aonta",
"Not confirmed": "Gun dearbhadh",
"Notes": "Nòtaichean",
"Nothing to see here": "Chan eil dad ri fhaicinn an-seo",
"Notification before the event": "Brath ron tachartas",
"Notification on the day of the event": "Brath air latha an tachartais",
"Notification settings": "Roghainnean nam brathan",
"Notifications": "Brathan",
"Notifications for manually approved participations to an event": "Brathan mu chom-pàirteachaichean air tachartas a chaidh aontachadh riutha à làimh",
"Notify participants": "Cuir brath dha na com-pàirtichean",
"Notify the user of the change": "Leig fios leis a chleachdaiche mun atharrachadh",
"Now, create your first profile:": "Nise, cruthaich a chiad phròifil agad:",
"Number of places": "Co mheud àite",
"OK": "Ceart ma-thà",
@ -619,7 +642,6 @@
"On {date} ending at {endTime}": "{date}, a crìochnachadh aig {endTime}",
"On {date} from {startTime} to {endTime}": "{date} o {startTime} gu {endTime}",
"On {date} starting at {startTime}": "{date}, a tòiseachadh aig {startTime}",
"On {instance}": "Air {instance}",
"On {instance} and other federated instances": "Air {instance} agus ionstansan co-naisgte eile",
"Online": "Air loidhne",
"Online ticketing": "Ticeadan air loidhne",
@ -639,8 +661,8 @@
"Ordered list": "Liosta le òrdugh",
"Organized": "Ga eagrachadh",
"Organized by": "Ga eagrachadh le",
"Organized by you": "Air a chur air dòigh leatsa",
"Organized by {name}": "Ga eagrachadh le {ainm}",
"Organized events": "Tachartasan gan cur air dòigh",
"Organizer": "Eagraiche",
"Organizer notifications": "Brathan an eagraiche",
"Organizers": "Eagraichean",
@ -648,6 +670,8 @@
"Other actions": "Gnìomhan eile",
"Other notification options:": "Roghainnean eile nam brathan:",
"Other software may also support this.": "Dhfhaoidte gun doir bathar-bog eile taic ri seo cuideachd.",
"Other users with the same IP address": "Cleachdaichean eile aig a bheil an t-aon seòladh IP",
"Other users with the same email domain": "Cleachdaichean eile aig a bheil an aon àrainn puist-d",
"Otherwise this identity will just be removed from the group administrators.": "Air neo thèid an dearbh-aithne seo a thoirt air falbh le rianairean a bhuidhinn.",
"Page": "Duilleag",
"Page limited to my group (asks for auth)": "Duilleag cuingichte air a bhuidheann agam (thèid dearbhadh iarraidh)",
@ -674,7 +698,6 @@
"Pending": "Ri dhèiligeadh",
"Personal feeds": "Inbhirean pearsanta",
"Pick": "Tagh",
"Pick a group": "Tagh buidheann",
"Pick a profile or a group": "Tagh pròifil no buidheann",
"Pick an identity": "Tagh dearbh-aithne",
"Pick an instance": "Tagh ionstans",
@ -697,6 +720,7 @@
"Powered by {mobilizon}. © 2018 - {date} The Mobilizon Contributors - Made with the financial support of {contributors}.": "Le cumhachd {mobilizon}. © 2018 {date} Luchd-cuideachaidh Mobilizon Le taic maoineachaidh o {contributors}.",
"Preferences": "Roghainnean",
"Previous": "Air ais",
"Previous email": "Am post-d roimhe",
"Previous month": "Am mìos roimhe",
"Previous page": "An duilleag roimhpe",
"Price sheet": "Siota phrìsean",
@ -745,6 +769,7 @@
"Registrations": "Clàraidhean",
"Registrations are restricted by allowlisting.": "Tha an clàradh cuingichte le liosta ceadachaidh.",
"Reject": "Diùlt",
"Reject follow": "Diùlt an iarrtas leantainn",
"Reject member": "Diùlt am ball",
"Rejected": "Air a dhiùltadh",
"Remember my participation in this browser": "Cùm an com-pàirteachadh agam an cuimhne a bhrabhsair seo",
@ -757,6 +782,7 @@
"Reply": "Freagair",
"Report": "Dèan gearan",
"Report #{reportNumber}": "Gearan #{report_number}",
"Report status": "Staid a ghearain",
"Report this comment": "Dèan gearan mun bheachd seo",
"Report this event": "Dèan gearan mun tachartas seo",
"Report this group": "Dèan gearan mun bhuidheann seo",
@ -773,6 +799,7 @@
"Resend confirmation email": "Cuir am post-d dearbhaidh a-rithist",
"Resent confirmation email": "Chaidh am post-d dearbhaidh a chur a-rithist",
"Reset": "Ath-shuidhich",
"Reset filters": "Ath-shuidhich na criathragan",
"Reset my password": "Ath-shuidhich am facal-faire agam",
"Reset password": "Ath-shuidhich am facal-faire",
"Resolved": "Air fhuasgladh",
@ -791,7 +818,6 @@
"Search": "Lorg",
"Search events, groups, etc.": "Lorg tachartasan, buidhnean is msaa.",
"Searching…": "Ga lorg…",
"Search…": "Lorg…",
"Select a language": "Tagh cànan",
"Select a radius": "Tagh astar",
"Select a timezone": "Tagh roinn-tìde",
@ -827,11 +853,14 @@
"Some terms, technical or otherwise, used in the text below may cover concepts that are difficult to grasp. We have provided a glossary here to help you understand them better:": "Tha cuid dhe na faclan a tha gan cleachdadh san teacsa gu h-ìosal, co-dhiù an e faclan teicnigeach a th annta gus nach e, mu bheachdan a tha caran doirbh a thuigsinn ma dhfhaoidte. Rinn sinn briathrachan ach am bhiod e na b fhasa dhut an tuigsinn:",
"Starts on…": "Àm-tòiseachaidh…",
"Status": "Staid",
"Stop following instance": "Na lean tuilleadh air an ionstans",
"Street": "Sràid",
"Submit": "Cuir a-null",
"Subtitles": "Fo-thiotalan",
"Suspend": "Cuir à rèim",
"Suspend group": "Cuir am buidheann à rèim",
"Suspend the account": "Cuir an cunntas à rèim",
"Suspend the account?": "A bheil thu airson an cunntas a chur à rèim?",
"Suspended": "Chaidh a chur à rèim",
"Tag search": "Lorg taga",
"Task lists": "Liostaichean shaothraichean",
@ -871,7 +900,6 @@
"The event will show as attributed to this group.": "Thèid an tachartas seo iomruineadh dhan bhuidheann seo.",
"The event will show as attributed to this profile.": "Thèid an tachartas seo iomruineadh dhan phròifil seo.",
"The event will show as attributed to your personal profile.": "Thèid an tachartas seo iomruineadh dhan phròifil phearsanta agad.",
"The event will show the group as organizer.": "Seallaidh an tachartas am buidheann mar eagraiche.",
"The event {event} was created by {profile}.": "Chaidh an tachartas {event} a chruthachadh le {profile}.",
"The event {event} was deleted by {profile}.": "Chaidh an tachartas {event} a sguabadh às le {profile}.",
"The event {event} was updated by {profile}.": "Chaidh an tachartas {event} ùrachadh le {profile}.",
@ -899,6 +927,7 @@
"The report will be sent to the moderators of your instance. You can explain why you report this content below.": "Thèid do ghearan a chuir dha na maoir aig an ionstans agad. S urrainn dhut mìneachadh carson a tha thu a dèanamh gearan mun t-susbaint seo gu h-ìosal.",
"The selected picture is too heavy. You need to select a file smaller than {size}.": "Tha an dealbh a thagh thu ro throm. Feumaidh tu faidhle a thaghadh a tha nas lugha na {size}.",
"The technical details of the error can help developers solve the problem more easily. Please add them to your feedback.": "Cuidichidh am fiosrachadh teicnigeach mun mhearachd gum fuasgail an luchd-leasachaidh an duilgheadas nas fhasa. Cuir ri do bheachd e.",
"The user has been disabled": "Chaidh an cleachdaiche a chur à comas",
"The {default_privacy_policy} will be used. They will be translated in the user's language.": "Thèid {default_privacy_policy} a chleachdadh. Thèid a h-eadar-theangachadh gu cànan a chleachdaiche.",
"The {default_terms} will be used. They will be translated in the user's language.": "Thèid {default_terms} a chleachdadh. Thèid an eadar-theangachadh gu cànan a chleachdaiche.",
"There are {participants} participants.": "Tha {participants} com-pàirtiche(an) ann.",
@ -916,9 +945,10 @@
"This group doesn't have a description yet.": "Chan eil tuairisgeul aig a bhuidheann seo fhathast.",
"This group is accessible only through it's link. Be careful where you post this link.": "Cha ghabh an tachartas seo inntrigeadh ach leis a cheangal aige. Thoir an aire mus postaich thu an ceangal seo am badeigin.",
"This group is invite-only": "Feumaidh tu cuireadh airson ballrachd fhaighinn sa bhuidheann seo",
"This group was not found": "Cha deach am buidheann seo a lorg",
"This identifier is unique to your profile. It allows others to find you.": "Tha an t-aithnichear seo àraidh dhan phròifil agad. Leigidh e le càch do lorg.",
"This identity is not a member of any group.": "Chan eil an dearbh-aithne seo na ball ann am buidheann sam bith.",
"This information is saved only on your computer. Click for details": "Tha dèid am fiosrachadh seo a shàbhaladh ach air a choimpiutair agad. Briog airson mion-fhiosrachadh",
"This instance doesn't follow yours.": "Chan eil an t-ionstans seo a leantainn air an fhear agadsa.",
"This instance hasn't got push notifications enabled.": "Chan eil na brathan putaidh an comas aig an ionstans seo.",
"This instance isn't opened to registrations, but you can register on other instances.": "Chan eil an t-ionstans seo fosgailte a chùm clàraidh ach s urrainn dhut clàradh air ionstansan eile.",
"This instance, <b>{instanceName} ({domain})</b>, hosts your profile, so remember its name.": "S e an t-ionstans seo <b>{instanceName} ({domain})</b> a tha ag òstadh na pròifil agad, mar sin cuir ainm-san nad chuimhne.",
@ -928,7 +958,11 @@
"This post is accessible only for members. You have access to it for moderation purposes only because you are an instance moderator.": "Chan fhaigh ach na buill cothrom air a phost seo. Faodaidh tu inntrigeadh a chùm maorsainneachd a-mhàin on a tha thu nad mhaor air an ionstans seo.",
"This post is accessible only through it's link. Be careful where you post this link.": "Cha ghabh am post seo inntrigeadh ach leis a cheangal aige. Thoir an aire mus postaich thu an ceangal seo am badeigin.",
"This profile is from another instance, the informations shown here may be incomplete.": "Tha a phròifil seo o ionstans eile, dhfhaoidte nach eil am fiosrachadh a chì thu an-seo coileanta.",
"This profile is located on this instance, so you need to {access_the_corresponding_account} to suspend it.": "Tha a phròifil seo air an ionstans seo, mar sin feumaidh tu {access_the_corresponding_account} gus a cur à rèim.",
"This profile was not found": "Cha deach a phròifil seo a lorg",
"This setting will be used to display the website and send you emails in the correct language.": "Thèid an roghainn seo a chleachdadh airson an làrach-lìn a shealltainn agus puist-d a chur thugad sa chànan cheart.",
"This user doesn't have any profiles": "Chan eil pròifil sam bith aig a chleachdaiche seo",
"This user was not found": "Cha deach an cleachdaiche seo a lorg",
"This website isn't moderated and the data that you enter will be automatically destroyed every day at 00:01 (Paris timezone).": "Chan eil an làrach-lìn seo fo mhaorsainneachd agus thèid an dàta a chuireas tu a-steach a mhilleadh gu fèin-obrachail gach oidhche aig 00:01 (roinn-tìde Pharais).",
"This week": "An t-seachdain seo",
"This weekend": "An deireadh-seachdain seo",
@ -949,6 +983,7 @@
"Today": "An-diugh",
"Tomorrow": "A-màireach",
"Tools": "Innealan",
"Total number of participations": "Com-pàirteachaidhean iomlan",
"Transfer to {outsideDomain}": "Tar-chur gu {outsideDomain}",
"Triggered profile refreshment": "Thèid a phròifil ath-nuadhachadh",
"Twitch live": "Twitch beò",
@ -968,7 +1003,6 @@
"Underline": "Fo-loidhne",
"Undo": "Neo-dhèan",
"Unfollow": "Na lean tuilleadh",
"Unfortunately, this instance isn't opened to registrations": "Gu mì-fhortanach, chan eil an t-ionstans seo fosgailte a chùm clàraidh",
"Unfortunately, your participation request was rejected by the organizers.": "Gu mì-fhortanach, dhiùlt na h-eagraichean do chom-pàirteachadh.",
"Unknown": "Chan eil fhios",
"Unknown actor": "Actar nach aithne dhuinn",
@ -976,7 +1010,6 @@
"Unknown value for the openness setting.": "Chaidh luach nach aithne dhuinn a shuidheachadh air dè cho fosgailte s a tha am buidheann.",
"Unlogged participation": "Com-pàirteachadh gun logadh",
"Unsaved changes": "Atharraichean gun sàbhaladh",
"Unset group": "Dì-shuidhich am buidheann",
"Unsubscribe to browser push notifications": "Cuir crìoch air an fho-sgrìobhadh air brathan putaidh",
"Unsuspend": "Cuir an gnìomh a-rithist",
"Upcoming": "Ri thighinn",
@ -991,6 +1024,7 @@
"Update post": "Ùraich am post",
"Updated": "Air ùrachadh",
"Uploaded media size": "Meud a mheadhain a chaidh a luchdadh suas",
"Uploaded media total size": "Meud iomlan nam meadhanan a chaidh a luchdadh suas",
"Use my location": "Cleachd an t-ionad agam",
"User": "Cleachdaiche",
"User settings": "Roghainnean a chleachdaiche",
@ -1046,7 +1080,6 @@
"Why create an account?": "Carson a chruthaichinn cunntas?",
"Will allow to display and manage your participation status on the event page when using this device. Uncheck if you're using a public device.": "Leigidh seo leat staid do chom-pàirteachaidh a shealltainn s a stiùireadh air duilleag an tachartais nuair a chleachdas tu an t-uidheam seo. Thoir a chromag air falbh ma tha thu a cleachdadh uidheam poblach.",
"Within {number} kilometers of {place}": "Am broinn {number} chilemeatair o {place}|Am broinn {number} chilemeatair o {place}|Am broinn {number} cilemeatairean o {place}|Am broinn {number} cilemeatair o {place}",
"Write something…": "Sgrìobh rudeigin…",
"Yesterday": "An-dè",
"You accepted the invitation to join the group.": "Ghabh thu ris a bhallrachd sa bhuidheann.",
"You added the member {member}.": "Chuir thu am ball {member} ris.",
@ -1081,6 +1114,7 @@
"You don't follow any instances yet.": "Chan eil thu a leantainn air ionstans sam bith fhathast.",
"You don't have any upcoming events. Maybe try another filter?": "Chan eil tachartas ri thighinn agad. Am feuch thu criathrag eile?",
"You excluded member {member}.": "Dhùin thu am ball {member} a-mach.",
"You have attended {count} events in the past.": "",
"You have been disconnected": "Chaidh do cheangal a bhriseadh",
"You have been invited by {invitedBy} to the following group:": "Thug {invitedBy} cuireadh dhut dhan bhuidheann seo:",
"You have been removed from this group's members.": "Chaidh do thoirt air falbh o bhallrachd a bhuidhinn seo.",
@ -1088,6 +1122,7 @@
"You have one event in {days} days.": "| Bidh {count} tachartas agad sna {days} là(ithean) ri thighinn| Bidh {count} thachartas agad sna {days} là(ithean) ri thighinn| Bidh {count} tachartasan agad sna {days} là(ithean) ri thighinn| Bidh {count} tachartas agad sna {days} là(ithean) ri thighinn",
"You have one event today.": "Bidh {count} tachartas agad an-diugh| Bidh {count} thachartas agad an-diugh| Bidh {count} tachartasan agad an-diugh| Bidh {count} tachartas agad an-diugh",
"You have one event tomorrow.": "Bidh {count} tachartas agad a-màireach| Bidh {count} thachartas agad a-màireach| Bidh {count} tachartasan agad a-màireach| Bidh {count} tachartas agad a-màireach",
"You haven't interacted with other instances yet.": "Cha do rinn thu eadar-ghnìomh le ionstans sam bith eile fhathast.",
"You invited {member}.": "Thug thu cuireadh dha {member}.",
"You may clear all participation information for this device with the buttons below.": "S urrainn dhut gach fiosrachadh mun chom-pàirteachadh a shuathadh bàn on uidheam seo leis na putanan gu h-ìosal.",
"You may now close this window, or {return_to_event}.": "S urrainn dhut an uinneag seo a dhùnadh a-nis no {return_to_event}.",
@ -1096,7 +1131,6 @@
"You moved the folder {resource} to the root folder.": "Ghluais thu am pasgan {resource} dhan phasgan freumhach.",
"You moved the resource {resource} into {new_path}.": "Ghluais thu an goireas {resource} gu {new_path}.",
"You moved the resource {resource} to the root folder.": "Ghluais thu an goireas {resource} dhan phasgan freumhach.",
"You need to create the group before you create an event.": "Feumaidh buidheann a chruthachadh mus cruthaich thu tachartas.",
"You need to login.": "Feumaidh tu clàradh a-steach.",
"You posted a comment on the event {event}.": "Chuir thu beachd ris an tachartas {event}.",
"You promoted the member {member} to an unknown role.": "Thug thu dreuchd nach aithnich sinn dha {member} (àrdachadh).",
@ -1121,7 +1155,7 @@
"You were promoted to moderator by {profile}.": "Rinn {profile} maor dhiot (àrdachadh).",
"You will be able to add an avatar and set other options in your account settings.": "S urrainn dhut avatar a chur ris is roghainnean eile a thaghadh ann an roghainnean a chunntais agad.",
"You will be redirected to the original instance": "Thèid d ath-stiùireadh dhan ionstans tùsail",
"You will find here all the events you have created or of which you are a participant.": "Chì thu a h-uile tachartas a chruthaich thu no sa bheil thu a gabhail pàirt an-seo.",
"You will find here all the events you have created or of which you are a participant, as well as events organized by groups you follow or are a member of.": "Chì thu a h-uile tachartas a chruthaich thu no sa bheil thu a gabhail pàirt an-seo agus na tachartasan a chaidh a chur air dòigh le buidhnean air a leanas tu no sa bheil thu nad bhall cuideachd.",
"You will receive notifications about this group's public activity depending on %{notification_settings}.": "Gheibh thu brathan mu ghnìomhachd phoblach a bhuidhinn seo a-rèir %{notification_settings} agad.",
"You wish to participate to the following event": "Tha thu airson pàirt a ghabhail san tachartas a leanas",
"You'll get a weekly recap every Monday for upcoming events, if you have any.": "Gheibh thu cuimhneachan gach madainn DiLuain mu na tachartasan ri thighinn ma tha gin agad.",
@ -1166,6 +1200,7 @@
"[This comment has been deleted]": "[Chaidh am beachd seo a sguabadh às]",
"[deleted]": "[air a sguabadh às]",
"a non-existent report": "gearan nach eil ann",
"access the corresponding account": "an cunntas cho-cheangailte inntrigeadh",
"access to the group's private content as well": "inntrigeadh do shusbaint phrìobhaideach a bhuidhinn cuideachd",
"and {number} groups": "agus {number} buidheann/buidhnean",
"any distance": "astar sam bith",
@ -1185,7 +1220,9 @@
"https://mensuel.framapad.org/p/some-secret-token": "https://mensuel.framapad.org/p/some-secret-token",
"iCal Feed": "Inbhir iCal",
"instance rules": "riaghailtean an ionstans",
"mobilizon-instance.tld": "ionstans-mobilizon.tld",
"more than 1360 contributors": "còrr is 1360 luchd-cuideachaidh",
"new@email.com": "ùr@post-d.com",
"profile@instance": "ainm@ionstans",
"report #{report_number}": "gearan #{report_number}",
"return to the event's page": "till gu duilleag an tachartais",
@ -1196,9 +1233,9 @@
"{available}/{capacity} available places": "{available}/{capacity} àite air fhàgail|{available}/{capacity} àite air fhàgail|{available}/{capacity} àiteachan air fhàgail|{available}/{capacity} àite air fhàgail",
"{count} km": "{count} km",
"{count} members": "{count} bhall|{count} bhall|{count} buill|{count} ball",
"{count} members or followers": "",
"{count} participants": "{count} chom-pàirtiche| {count} chom-pàirtiche| {count} com-pàirtichean| {count} com-pàirtiche",
"{count} requests waiting": "Tha {count} iarrtas(an) a feitheamh",
"{count} team members": "Buill an sgioba ({count})",
"{folder} - Resources": "{folder} Goireasan",
"{group} activity timeline": "Loidhne-ama nan gnìomhachdan aig {group}",
"{group} events": "Tachartasan {group}",

File diff suppressed because it is too large Load Diff

308
js/src/i18n/he.json Normal file
View File

@ -0,0 +1,308 @@
{
"A user-friendly, emancipatory and ethical tool for gathering, organising, and mobilising.": "כלי ידידותי למשתמש.ת, חופשי ואתי להתאספות, להתארגנות ולגיוס לפעולה משותפת.",
"A validation email was sent to {email}": "הודעת אימות נשלחה בדואר אלקטרוני לכתובת {email}",
"Abandon editing": "עזיבת עריכה",
"About": "אודות",
"About Mobilizon": "אודות מוביליזון",
"About this event": "אודות האירוע",
"About this instance": "אודות האתר",
"Accepted": "התקבל",
"Account": "חשבון",
"Add": "הוספה",
"Add a note": "הוספת הערה",
"Add an address": "הוספת כתובת",
"Add an instance": "הוספת אתר",
"Add some tags": "הוספת תגיות",
"Add to my calendar": "הוספה ללוח השנה שלי",
"Additional comments": "הערות נוספות",
"Admin": "מנהל.ת",
"Admin settings successfully saved.": "הגדרות מנהל.ת נשמרו בהצלחה.",
"Administration": "ניהול",
"All the places have already been taken": "כל המקומות כבר תפוסים",
"Allow registrations": "אפשור הרשמה",
"Anonymous participant": "משתתפ.ת בלתי מזוהה",
"Anonymous participants will be asked to confirm their participation through e-mail.": "משתתפים.ות בלתי מזוהים.ות יתבקשו לאשר השתתפות באמצעות דואר אלקטרוני.",
"Anonymous participations": "השתתפות בלתי מזוהה",
"Are you really sure you want to delete your whole account? You'll lose everything. Identities, settings, events created, messages and participations will be gone forever.": "האם את.ה בטוח.ה שאת.ה רוצה למחוק לגמרי את החשבון שלך? תאבד.י הכל. זהויות, הגדרות, אירועים שנוצרו, הודעות והשתתפויות יימחקו לצמיתות.",
"Are you sure you want to <b>delete</b> this comment? This action cannot be undone.": "האם את.ה בטוח.ה שאת.ה רוצה <b>למחוק</b> את התגובה? לא ניתן יהיה לבטל את הפעולה.",
"Are you sure you want to <b>delete</b> this event? This action cannot be undone. You may want to engage the discussion with the event creator or edit its event instead.": "האם את.ה בטוח.ה שאת.ה רוצה <b>למחוק</b> את האירוע? לא ניתן יהיה לבטל את הפעולה. ייתכן שתרצ.י ליצור קשר עם יוצר.ת האירוע, או לערוך את האירוע, במקום למחוק.",
"Are you sure you want to cancel the event creation? You'll lose all modifications.": "האם את.ה בטוח.ה שאת.ה רוצה לבטל את יצירת האירוע? כל השינויים יאבדו.",
"Are you sure you want to cancel the event edition? You'll lose all modifications.": "האם את.ה בטוח.ה שאת.ה רוצה לבטל את עריכת האירוע? כל השינויים יאבדו.",
"Are you sure you want to cancel your participation at event \"{title}\"?": "האם את.ה בטוח.ה שאת.ה רוצה לבטל את השתתפותך באירוע \"{title}\"?",
"Are you sure you want to delete this event? This action cannot be reverted.": "האם את.ה בטוח.ה שאת.ה רוצה למחוק את האירוע? לא ניתן יהיה לבטל את הפעולה.",
"Avatar": "תמונה",
"Back to previous page": "חזרה לדף הקודם",
"Before you can login, you need to click on the link inside it to validate your account.": "לפני שתוכל.י להתחבר, עלייך ללחוץ על הקישור שבתוך ההודעה כדי לאשר את החשבון שלך.",
"By {username}": "נכתב על־ידי {username}",
"Cancel": "ביטול",
"Cancel anonymous participation": "ביטול השתתפות בלתי מזוהה",
"Cancel creation": "ביטול יצירה",
"Cancel edition": "ביטול עריכה",
"Cancel my participation request…": "ביטול בקשת ההשתתפות שלי…",
"Cancel my participation…": "ביטול ההשתתפות שלי…",
"Cancelled: Won't happen": "מבוטל: לא יתקיים",
"Change": "שינוי",
"Change my email": "שינוי כתובת דואר אלקטרוני",
"Change my identity…": "שינוי הזהות שלי…",
"Change my password": "שינוי ססמה",
"Clear": "ניקוי",
"Click to upload": "לחצ.י להעלאה",
"Close": "סגירה",
"Close comments for all (except for admins)": "ביטול תגובות לכולןם (מלבד מנהלים.ות)",
"Closed": "סגור",
"Comment deleted": "התגובה נמחקה",
"Comment from @{username} reported": "התגובה של @{username} דווחה",
"Comments": "תגובות",
"Confirm my participation": "אישור ההשתתפות שלי",
"Confirm my particpation": "אישור ההשתתפות שלי",
"Confirmed: Will happen": "מאושר: יתקיים",
"Continue editing": "המשך עריכה",
"Country": "מדינה",
"Create": "יצירה",
"Create a new event": "יצירת אירוע חדש",
"Create a new group": "יצירת קבוצה חדשה",
"Create a new identity": "יצירת זהות חדשה",
"Create group": "יצירת קבוצה",
"Create my event": "יצירת אירוע",
"Create my group": "יצירת קבוצה",
"Create my profile": "יצירת הפרופיל שלי",
"Create token": "יצירת אסימון",
"Current identity has been changed to {identityName} in order to manage this event.": "הזהות הנוכחית שונתה ל־{identityName} כדי לנהל אירוע זה.",
"Current page": "הדף הנוכחי",
"Custom": "התאמה אישית",
"Custom URL": "קישור מותאם אישית",
"Custom text": "טקסט מותאם אישית",
"Dashboard": "לוח בקרה",
"Date": "תאריך",
"Date and time settings": "הגדרות זמן ותאריך",
"Date parameters": "מאפייני תאריך",
"Default": "ברירת מחדל",
"Delete": "מחיקה",
"Delete Comment": "מחיקת תגובה",
"Delete Event": "מחיקת אירוע",
"Delete account": "מחיקת חשבון",
"Delete event": "מחיקת אירוע",
"Delete everything": "מחיקת הכל",
"Delete my account": "מחיקת החשבון שלי",
"Delete this identity": "מחיקת זהות",
"Delete your identity": "מחיקת הזהות שלך",
"Delete {eventTitle}": "מחיקת {eventTitle}",
"Delete {preferredUsername}": "מחיקת {preferredUsername}",
"Deleting comment": "מוחק תגובה",
"Deleting event": "מוחק אירוע",
"Deleting my account will delete all of my identities.": "מחיקת החשבון שלי תמחק את כל הזהויות שלי.",
"Deleting your Mobilizon account": "מחיקת החשבון שלך במוביליזון",
"Description": "תיאור",
"Display name": "שם תצוגה",
"Display participation price": "הצגת מחיר השתתפות",
"Draft": "טיוטה",
"Drafts": "טיוטות",
"Edit": "עריכה",
"Eg: Stockholm, Dance, Chess…": "למשל: תל אביב, ריקוד, שחמט…",
"Either on the {instance} instance or on another instance.": "או באתר {instance} או באתר אחר.",
"Either the account is already validated, either the validation token is incorrect.": "החשבון כבר מאומת, או שקוד האימות שגוי.",
"Either the email has already been changed, either the validation token is incorrect.": "או שכתובת הדואר האלקטרוני כבר שונתה, או שקוד האימות שגוי.",
"Either the participation request has already been validated, either the validation token is incorrect.": "או שבקשת ההשתתפות כבר אומתה, או שקוד האימות שגוי.",
"Email": "דואר אלקטרוני",
"Ends on…": "נמשך עד…",
"Enter the link URL": "הזינ.י את הקישור",
"Error while changing email": "שגיאה בעת שינוי כתובת דואר אלקטרוני",
"Error while validating account": "שגיאה בעת אימות חשבון",
"Error while validating participation request": "שגיאה בעת אימות בקשת השתתפות",
"Event": "אירוע",
"Event already passed": "האירוע כבר חלף",
"Event cancelled": "האירוע בוטל",
"Event creation": "יצירת אירוע",
"Event edition": "עריכת אירוע",
"Event list": "רשימת אירועים",
"Event page settings": "הגדרות עמוד אירוע",
"Event to be confirmed": "אירוע לאישור",
"Event {eventTitle} deleted": "האירוע {eventTitle} נמחק",
"Event {eventTitle} reported": "האירוע {eventTitle} דווח",
"Events": "אירועים",
"Ex: mobilizon.fr": "למשל: mobilizon.fr",
"Explore": "סיור",
"Failed to save admin settings": "שמירת הגדרות ניהול נכשלה",
"Featured events": "אירועים מומלצים",
"Federation": "ביזור",
"Find an address": "מציאת כתובת",
"Find an instance": "מציאת אתר",
"Followers": "עוקבים.ות",
"Followings": "עוקב.ת אחרי",
"For instance: London, Taekwondo, Architecture…": "לדוגמה: תל אביב, אייקידו, ארכיטקטורה…",
"Forgot your password ?": "שכחת ססמה?",
"From the {startDate} at {startTime} to the {endDate}": "מתאריך {startDate} בשעה {startTime} עד התאריך {endDate}",
"From the {startDate} at {startTime} to the {endDate} at {endTime}": "מתאריך {startDate} בשעה {startTime} עד התאריך {endDate} בשעה {endTime}",
"From the {startDate} to the {endDate}": "מהתאריך {startDate} עד התאריך {endDate}",
"Gather ⋅ Organize ⋅ Mobilize": "להתאסף ⋅ להתארגן ⋅ לפעול",
"General": "כללי",
"General information": "מידע כללי",
"Getting location": "מחפש מיקום",
"Go": "קדימה",
"Group name": "שם הקבוצה",
"Group {displayName} created": "הקבוצה {displayName} נוצרה",
"Groups": "קבוצות",
"Headline picture": "תמונת כותרת",
"Hide replies": "הסתרת תגובות",
"I create an identity": "אני יוצר.ת זהות",
"I don't have a Mobilizon account": "אין לי חשבון מוביליזון",
"I have a Mobilizon account": "יש לי חשבון מוביליזון",
"I have an account on another Mobilizon instance.": "יש לי חשבון באתר מוביליזון אחר.",
"I participate": "אני משתתפ.ת",
"I want to allow people to participate without an account.": "אני רוצה לאפשר לא.נשים להשתתף ללא חשבון.",
"I want to approve every participation request": "אני רוצה לאשר כל בקשת השתתפות",
"Identity {displayName} created": "הזהות {displayName} נוצרה",
"Identity {displayName} deleted": "הזהות {displayName} נמחקה",
"Identity {displayName} updated": "הזהות {displayName} עודכנה",
"If an account with this email exists, we just sent another confirmation email to {email}": "אם קיים חשבון עם כתובת הדואר האלקטרוני הזו, שלחנו עוד הודעת אימות לכתובת {email}",
"If this identity is the only administrator of some groups, you need to delete them before being able to delete this identity.": "אם הזהות הזו היא המנהלת היחידה של קבוצות כלשהן, עלייך למחוק אותן לפני שתוכלי למחוק את הזהות הזו.",
"If you want, you may send a message to the event organizer here.": "אם את.ה רוצה, באפשרותך לשלוח כאן הודעה למארגנ.ת האירוע.",
"Instance Name": "שם האתר",
"Instance Terms": "תנאי השימוש של האתר",
"Instance Terms Source": "תנאי השימוש של האתר",
"Instance Terms URL": "קישור לתנאי השימוש של האתר",
"Instance settings": "הגדרות האתר",
"Instances": "אתרים",
"Join <b>{instance}</b>, a Mobilizon instance": "הצטרפ.י ל־<b>{instance}</b>, אתר מוביליזון",
"Last published event": "האירוע האחרון שפורסם",
"Last week": "בשבוע שעבר",
"Learn more": "למדו עוד",
"Learn more about Mobilizon": "למדו עוד אודות מוביליזון",
"Leave event": "עזיבת האירוע",
"Leaving event \"{title}\"": "עוזב את האירוע \"{title}\"",
"License": "רישיון",
"Limited number of places": "מספר מוגבל של מקומות",
"Load more": "לטעון עוד",
"Locality": "מיקום",
"Log in": "כניסה",
"Log out": "יציאה",
"Login": "כניסה",
"Login on Mobilizon!": "כניסה למוביליזון!",
"Login on {instance}": "כניסה לאתר {instance}",
"Manage participations": "ניהול השתתפויות",
"Mark as resolved": "סימון כנפתר",
"Members": "חברים.ות",
"Message": "הודעה",
"Mobilizon is a federated network. You can interact with this event from a different server.": "מוביליזון היא רשת מבוזרת. ניתן לבצע פעולות בקשר לאירוע זה משרת אחר.",
"Moderated comments (shown after approval)": "תגובות שממתינות לאישור",
"Moderation": "אישור תגובות",
"Moderation log": "היסטוריית אישור תגובות",
"My account": "החשבון שלי",
"My events": "האירועים שלי",
"My identities": "הזהויות שלי",
"Name": "שם",
"New email": "הודעת דוא\"ל חדשה",
"New note": "הערה חדשה",
"New password": "ססמה חדשה",
"New profile": "פרופיל חדש",
"Next page": "הדף הבא",
"No address defined": "לא הוגדרה כתובת",
"No closed reports yet": "אין דיווחים סגורים עדיין",
"No comment": "אין תגובות",
"No comments yet": "אין תגובות עדיין",
"No end date": "אין תאריך סיום",
"No events found": "לא נמצאו אירועים",
"No group found": "לא נמצאה קבוצה",
"No groups found": "לא נמצאו קבוצות",
"No instance follows your instance yet.": "עדיין אין אתר שעוקב אחרי האתר שלך.",
"No instance to approve|Approve instance|Approve {number} instances": "אין אתרים לאשר|אישור האתר|אישור של {number} אתרים",
"No instance to reject|Reject instance|Reject {number} instances": "אין אתר לדחות|דחיית האתר|דחיית {number} אתרים",
"No instance to remove|Remove instance|Remove {number} instances": "אין אתרים להסיר|הסרת האתר|הסרת {number} אתרים",
"No message": "אין הודעות",
"No open reports yet": "אין דיווחים פתוחים עדיין",
"No participant to approve|Approve participant|Approve {number} participants": "אין משתתפים.ות לאשר|אישור המשתתפ.ת|אישור של {number} משתתפים.ות",
"No participant to reject|Reject participant|Reject {number} participants": "אין משתתפים.ות לדחות|דחיית המשתתפ.ת|דחיית {number} משתתפים.ות",
"No resolved reports yet": "אין דיווחים פתורים עדיין",
"No results for \"{queryText}\"": "אין תוצאות עבור \"{queryText}\"",
"Notes": "הערות",
"Number of places": "מספר מקומות",
"OK": "אישור",
"Old password": "ססמה ישנה",
"On {date}": "בתאריך {date}",
"On {date} ending at {endTime}": "בתאריך {date} מסתיים בשעה {endTime}",
"On {date} from {startTime} to {endTime}": "בתאריך {date} מהשעה {startTime} עד השעה {endTime}",
"On {date} starting at {startTime}": "בתאריך {date} החל מהשעה {startTime}",
"Only accessible through link (private)": "נגיש רק דרך קישור (פרטי)",
"Only alphanumeric lowercased characters and underscores are supported.": "רק אותיות קטנות באנגלית, ספרות וקו תחתי.",
"Open": "פתיחה",
"Opened reports": "דיווחים פתוחים",
"Or": "או",
"Organized": "מאורגן",
"Organized by {name}": "מאורגן על־ידי {name}",
"Organizer": "מארגנ.ת",
"Other software may also support this.": "תוכנות אחרות עשויות גם הן לתמוך בזה.",
"Otherwise this identity will just be removed from the group administrators.": "אחרת, זהות זו פשוט תוסר מניהול הקבוצה.",
"Page": "דף",
"Page limited to my group (asks for auth)": "הדף מוגבל לקבוצה שלי (מבקש להזדהות)",
"Participant": "משתתפ.ת",
"Participants": "משתתפים.ות",
"Participate": "השתתפות",
"Participate using your email address": "השתתפות בעזרת כתובת הדוא\"ל שלך",
"Participation approval": "אישור השתתפות",
"Participation confirmation": "אישור השתתפות",
"Participation requested!": "נשלחה בקשת השתתפות!",
"Password": "ססמה",
"Password (confirmation)": "ססמה (וידוא)",
"Password reset": "איפוס ססמה",
"Past events": "אירועים שחלפו",
"Pending": "ממתין",
"Pick an identity": "בחירת זהות",
"Please check your spam folder if you didn't receive the email.": "אנא בדק.י את תיקיית הספאם שלך אם לא קיבלת את הודעת הדוא\"ל.",
"Please contact this instance's Mobilizon admin if you think this is a mistake.": "אנא צר.י קשר עם מנהל.ת האתר אם את.ה חושב.ת שזו טעות.",
"Please enter your password to confirm this action.": "אנא הזינ.י את הסממה שלך כדי לאשר את הפעולה.",
"Please make sure the address is correct and that the page hasn't been moved.": "אנא ודא.י שהכתובת נכונה ושהעמוד לא הוזז.",
"Post a comment": "פרסום תגובה",
"Post a reply": "פרסום תגובה",
"Postal Code": "מיקוד",
"Preferences": "העדפות",
"Previous page": "הדף הקודם",
"Privacy Policy": "מדיניות פרטיות",
"Private event": "אירוע פרטי",
"Public RSS/Atom Feed": "ערוץ RSS/Atom פומבי",
"Public event": "אירוע פומבי",
"Public iCal Feed": "ערוץ iCal פומבי",
"Publish": "פרסום",
"Region": "אזור",
"Registration is allowed, anyone can register.": "ההרשמה מאופשרת, כל אחד.ת יכול.ה להירשם.",
"Registration is closed.": "ההרשמה סגורה.",
"Registration is currently closed.": "ההרשמה סגורה כעת.",
"Rejected": "נדחה",
"Reopen": "פתיחה מחדש",
"Reply": "תגובה",
"Report": "דיווח",
"Report this comment": "דיווח על תגובה זו",
"Report this event": "דיווח על אירוע זה",
"Reported by": "דווח על־ידי",
"Reported by someone on {domain}": "דווח על־ידי מישהו.י מהאתר {domain}",
"Reported by {reporter}": "דווח על־ידי {reporter}",
"Reports": "דיווחים",
"Reset my password": "איפוס הססמה שלי",
"Resolved": "נפתר",
"Resource provided is not an URL": "המשאב שהוזן אינו קישור תקין",
"Role": "תפקיד",
"Save": "שמירה",
"Save draft": "שמירת טיוטה",
"Search": "חיפוש",
"Search events, groups, etc.": "חיפוש אירועים, קבוצות וכו'",
"Searching…": "מחפש…",
"Send email": "שליחת דוא\"ל",
"Send the report": "שליחת הדיווח",
"Settings": "הגדרות",
"Share this event": "שיתוף אירוע זה",
"Show map": "הצגת מפה",
"Show remaining number of places": "הצגת מספר המקומות שנותרו",
"Show the time when the event begins": "הצגת זמן תחילת האירוע",
"Show the time when the event ends": "הצגת זמן סיום האירוע",
"Sign up": "הרשמה",
"Street": "רחוב",
"Tentative: Will be confirmed later": "לא סופי: יאושר בהמשך",
"Terms": "תנאים",
"The account's email address was changed. Check your emails to verify it.": "כתובת הדוא\"ל של החשבון שונתה. בדק.י את תיבת הדוא\"ל שלך כדי לאמת את השינוי.",
"The actual number of participants may differ, as this event is hosted on another instance.": "מספר המשתתפים.ות האמיתי עשוי להיות שונה, כי האירוע מתפרסם דרך אתר מוביליזון אחר.",
"The content came from another server. Transfer an anonymous copy of the report?": "התוכן הגיע משרת אחר. להעביר עותק אנונימי של הדיווח?",
"The draft event has been updated": "טיוטת האירוע עודכנה",
"The event has been created as a draft": "האירוע נוצר כטיוטה",
"The event has been published": "האירוע פורסם",
"The event has been updated": "האירוע עודכן",
"The event has been updated and published": "האירוע עודכן ופורסם"
}

1263
js/src/i18n/hr.json Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,26 +1,24 @@
{
"ar": "العربية",
"be": "Беларуская мова",
"bn": "বাংলা",
"ca": "Català",
"cs": "čeština",
"cy": "Cymraeg",
"de": "Deutsch",
"en": "English",
"eo": "Esperanto",
"es": "Español",
"eu": "Euskara",
"fa": "فارسی",
"fi": "suomi",
"fr": "Français",
"gd": "Gàidhlig",
"gl": "Galego",
"hu": "Magyar",
"id": "Bahasa Indonesia",
"it": "Italiano",
"ja": "日本語",
"kn": "Kannada",
"nl": "Dutch",
"nl": "Nederlands",
"nn": "Nynorsk",
"oc": "Occitan",
"pl": "Polski",
"pt": "Português",
"pt_BR": "Português brasileiro",
"ru": "Русский",
"sl": "Slovenščina",

File diff suppressed because it is too large Load Diff

View File

@ -6,8 +6,8 @@
"+ Add a resource": "+ Legg til ein ressurs",
"+ Create a post": "+ Skriv eit innlegg",
"+ Create an event": "+ Lag ei hending",
"+ Post a public message": "+ Legg ut ei melding til ålmenta",
"+ Start a discussion": "+ Start eit ordskifte",
"0 Bytes": "0 byte",
"<b>{contact}</b> will be displayed as contact.": "<b>{contact}</b> vil bli vist som kontakt.|<b>{contact}</b> vil bli viste som kontaktar.",
"@{group}": "@{group}",
"@{username}": "@{username}",
@ -37,7 +37,6 @@
"A validation email was sent to {email}": "Ein stadfestingsepost er sendt til {email}",
"API": "API",
"Abandon editing": "Avbryt redigeringa",
"Abandon edition": "Forkast utgåve",
"About": "Om",
"About Mobilizon": "Om Mobilizon",
"About anonymous participation": "Om anonym deltaking",
@ -46,8 +45,10 @@
"About this instance": "Om denne nettstaden",
"About {instance}": "Om {instance}",
"Accept": "Godta",
"Accept follow": "Godkjenn fylgjaren",
"Accepted": "Akseptert",
"Accessibility": "Tilgjenge",
"Accessible only by link": "Berre tilgjengeleg via lenke",
"Accessible only to members": "Berre tilgjengeleg for medlemer",
"Accessible through link": "Tilgjengeleg med ei lenke",
"Account": "Konto",
@ -61,7 +62,6 @@
"Add": "Legg til",
"Add / Remove…": "Legg til / fjern…",
"Add a contact": "Legg til ein kontakt",
"Add a group": "Legg til ei gruppe",
"Add a new post": "Skriv eit nytt innlegg",
"Add a note": "Legg til eit notat",
"Add a todo": "Legg til eit gjeremål",
@ -79,9 +79,9 @@
"Admin settings successfully saved.": "Administrasjonsinnstillingane er lagra.",
"Administration": "Administrering",
"Administrator": "Styrar",
"All": "Alle",
"All activities": "Alle aktivitetar",
"All good, let's continue!": "Fint, då kan me halda fram!",
"All group members and other eventual server admins will still be able to view this information.": "Alle gruppemedlemer og andre eventuelle tenar-administratorar vil framleis sjå desse opplysingane.",
"All the places have already been taken": "Alle plassane er opptekne",
"Allow all comments from users with accounts": "Skru på alle kommentarar frå innlogga brukarar",
"Allow registrations": "Tillat nye brukarar",
@ -104,10 +104,12 @@
"Anonymous participants will be asked to confirm their participation through e-mail.": "Anonyme deltakarar må stadfesta at dei blir med via epost.",
"Anonymous participations": "Anonyme deltakarar",
"Any day": "Uansett dag",
"Any type": "Alle slag",
"Anyone can join freely": "Alle kan fritt bli med",
"Anyone can request being a member, but an administrator needs to approve the membership.": "Alle kan be om å bli medlem, men ein styrar må godkjenna førespurnaden.",
"Anyone wanting to be a member from your group will be able to from your group page.": "Alle gruppemedlemer som vil bli medlem, kan gjera det frå gruppesida di.",
"Application": "Program",
"Approve": "Godkjenn",
"Approve member": "Godkjenn medlem",
"Are you really sure you want to delete your whole account? You'll lose everything. Identities, settings, events created, messages and participations will be gone forever.": "Er du sikker på at du vil sletta brukarkontoen din? Du mistar alt du har gjort her. Brukarnamn, innstillingar, hendingar du har laga, meldingar og deltakingar blir borte for alltid.",
"Are you sure you want to <b>completely delete</b> this group? All members - including remote ones - will be notified and removed from the group, and <b>all of the group data (events, posts, discussions, todos…) will be irretrievably destroyed</b>.": "Er du sikker på at du vil <b>sletta denne gruppa</b> for alltid? Alle medlemer - inkludert dei på andre nettstader - vil bli varsla og fjerna frå gruppa, og <b>alle gruppedata (hendingar, innlegg, ordskifte, gjeremål…) vil bli sletta for alltid</b>.",
"Are you sure you want to <b>delete</b> this comment? This action cannot be undone.": "Er du sikker på at du vil <b>sletta</b> denne kommentaren? Du kan ikkje angra dette.",
@ -119,13 +121,19 @@
"Are you sure you want to cancel your participation at event \"{title}\"?": "Er du sikker på at du vil melda deg av hendinga \"{title}\"?",
"Are you sure you want to delete this entire discussion?": "Er du sikker på at du vil sletta heile ordskiftet?",
"Are you sure you want to delete this event? This action cannot be reverted.": "Er du sikker på at du vil sletta denne hendinga? Du kan ikkje angra dette.",
"Are you sure you want to delete this post? This action cannot be reverted.": "Er du sikker på at du vil sletta innlegget? Du kan ikkje angra etterpå.",
"Are you sure you want to leave the group {groupName}? You'll loose access to this group's private content. This action cannot be undone.": "Er du sikker på at du vil forlata gruppa {groupName}? Du kjem til å mista tilgangen til det private innhaldet i gruppa. Du kan ikkje angra etterpå.",
"As the event organizer has chosen to manually validate participation requests, your participation will be really confirmed only once you receive an email stating it's being accepted.": "Tilskiparen har valt å godkjenna deltakarar manuelt. Difor vil du berre få éi stadfesting på epost når deltakinga di er godkjend.",
"Ask your instance admin to {enable_feature}.": "Be styraren på nettstaden om å skru på {enable_feature}.",
"Assigned to": "Tildelt",
"Atom feed for events and posts": "Atom-straum for hendingar og innlegg",
"Attending": "Deltek",
"Avatar": "Profilbilete",
"Back to group list": "Tilbake til gruppelista",
"Back to previous page": "Tilbake til førre sida",
"Back to profile list": "Tilbake til profillista",
"Back to top": "Til toppen",
"Back to user list": "Tilbake til brukarlista",
"Banner": "Banner",
"Before you can login, you need to click on the link inside it to validate your account.": "Før du kan logga inn, må du klikka på lenka der for å stadfesta brukarkontoen din.",
"Begins on": "Byrjar",
@ -135,37 +143,41 @@
"Breadcrumbs": "Navigeringsmerke",
"Browser notifications": "Nettlesarvarsel",
"Bullet list": "Punktliste",
"By {username}": "Av {username}",
"By others": "Av andre",
"By {author}": "Av {author}",
"By {group}": "Av {group}",
"By {username}": "Av {username}",
"Can be an email or a link, or just plain text.": "Kan vera ei epostadresse eller ei lenke, eller rein tekst.",
"Cancel": "Avbryt",
"Cancel anonymous participation": "Avbryt anonym deltaking",
"Cancel creation": "Ikkje opprett dette",
"Cancel discussion title edition": "Ikkje skriv inn ny tittel på diskusjonen",
"Cancel edition": "Avbryt redigeringa",
"Cancel follow request": "Avbryt fylging",
"Cancel membership request": "Ikkje bli medlem likevel",
"Cancel my participation request…": "Avbryt ynsket mitt om å delta…",
"Cancel my participation…": "Ikkje delta…",
"Cancelled": "Avbrote",
"Cancelled: Won't happen": "Avbrote: Kjem ikkje til å skje",
"Category": "Kategori",
"Change": "Endre",
"Change email": "Endre epost",
"Change my email": "Byt epostadresse",
"Change my identity…": "Byt identitet…",
"Change my password": "Byt passord",
"Change role": "Endre rolle",
"Change timezone": "Endra tidssone",
"Change user email": "Endre eposten til brukaren",
"Change user role": "Endre brukarrolla",
"Check your inbox (and your junk mail folder).": "Sjekk innboksen din (og søppelmappa).",
"Choose the source of the instance's Privacy Policy": "Vel kvar personvernsida for denne nettstaden er",
"Choose the source of the instance's Terms": "Vel kvar vilkåra for denne nettstaden er",
"City or region": "By eller område",
"Clear": "Tøm",
"Clear address field": "Tøm adressefeltet",
"Clear date filter field": "Tøm datofilteret",
"Clear participation data for all events": "Slett deltakingsdata for alle hendingar",
"Clear participation data for this event": "Slett deltakingsdata for denne hendinga",
"Clear timezone field": "Tøm tidssonefeltet",
"Click for more information": "Klikk for meir informasjon",
"Click to select": "Klikk for å velja",
"Click to upload": "Klikk for å lasta opp",
"Close": "Steng",
"Close comments for all (except for admins)": "Steng for kommentarar frå alle (unnateke administratorar)",
@ -179,6 +191,7 @@
"Confirm my participation": "Stadfest at eg deltek",
"Confirm my particpation": "Stadfest at eg deltek",
"Confirm participation": "Stadfest at du deltek",
"Confirm user": "Stadfest brukar",
"Confirmed": "Stadfesta",
"Confirmed at": "Stadfesta",
"Confirmed: Will happen": "Stadfesta: Kjem til å skje",
@ -215,7 +228,6 @@
"Create token": "Lag teikn",
"Created by {name}": "Laga av {name}",
"Created by {username}": "Laga av {username}",
"Creator": "Skapar",
"Current identity has been changed to {identityName} in order to manage this event.": "Identitenen din er endra til {identityName} for å handtera denne hendinga.",
"Current page": "Noverande side",
"Custom": "Tilpassa",
@ -264,11 +276,11 @@
"Displayed nickname": "Synleg kallenamn",
"Displayed on homepage and meta tags. Describe what Mobilizon is and what makes this instance special in a single paragraph.": "Står på heimesida og meta-skildring. Skriv kva Mobilizon er, og kva som gjer denne nettstaden spesiell, i eitt avsnitt.",
"Do not receive any mail": "Ikkje få nokon epostar",
"Do you really want to suspend this account? All of the user's profiles will be deleted.": "Vil du verkeleg stenga ute brukaren? Alle brukarprofilane vil bli sletta.",
"Do you wish to {create_event} or {explore_events}?": "Vil du {create_event} eller {explore_events}?",
"Do you wish to {create_group} or {explore_groups}?": "Vil du {create_group} eller {explore_groups}?",
"Does the event needs to be confirmed later or is it cancelled?": "Må du stadfesta hendinga seinare, eller er ho avlyst?",
"Domain": "Domene",
"Don't show @{organizer} as event host alongside @{group}": "Ikkje syn @{organizer} som vert ved sidan av @{group}",
"Draft": "Kladd",
"Drafts": "Kladdar",
"Due on": "Forfell",
@ -276,6 +288,7 @@
"Edit": "Rediger",
"Edit post": "Rediger innlegget",
"Edit profile {profile}": "Rediger profilen {profile}",
"Edit user email": "Rediger epostadressa til brukaren",
"Edited {ago}": "Redigert {ago}",
"Edited {relative_time} ago": "Endra for {relative_time} sidan",
"Eg: Stockholm, Dance, Chess…": "Td. Stockholm, dans, sjakk…",
@ -287,8 +300,8 @@
"Element value": "Verdi til elementet",
"Email": "Epost",
"Email address": "Epostadresse",
"Email notifications": "Epostvarslingar",
"Email validate": "Stadfesting av eposten",
"Emails usually don't contain capitals, make sure you haven't made a typo.": "Det er vanlegvis ikkje store bokstavar i epostadresser, sjå etter om du har skrive feil.",
"Enabled": "På",
"Ends on…": "Sluttar…",
"Enter the link URL": "Skriv inn lenkeadressa",
@ -331,7 +344,6 @@
"Everything": "Alt",
"Ex: mobilizon.fr": "Td. mobilizon.fr",
"Ex: someone@mobilizon.org": "Td. nokon@mobilizon.org",
"Exclude": "Utelat",
"Explore": "Utforsk",
"Explore events": "Utforsk hendingar",
"Export": "Eksporter",
@ -350,15 +362,26 @@
"Find another instance": "Finn ein annan nettstad",
"Find or add an element": "Finn eller legg til eit element",
"First steps": "Dei fyrste stega",
"Follow": "Fylg",
"Follow a new instance": "Fylg ein ny nettstad",
"Follow instance": "Fylg nettstaden",
"Follow status": "Fylgjestatus",
"Followed": "Fylgjer",
"Followed, pending response": "Fylgjer, ventar på svar",
"Follower": "Fylgjar",
"Followers": "Fylgjarar",
"Followers will receive new public events and posts.": "Fylgjarar får nye hendingar og innlegg.",
"Following": "Fylgjarar",
"Following the group will allow you to be informed of the {group_upcoming_public_events}, whereas joining the group means you will {access_to_group_private_content_as_well}, including group discussions, group resources and members-only posts.": "Viss du fylgjer gruppa, vil du få informasjon om {group_upcoming_public_events}, medan å bli med i gruppa tyder at du får {access_to_group_private_content_as_well}, inkludert gruppediskusjonar, grupperessursar og innlegg som berre er for medlemer.",
"Followings": "Fylgjer",
"Follows us": "Fylgjer oss",
"Follows us, pending approval": "Fylgjer oss, ventar på svar",
"For instance: London": "Til dømes: London",
"For instance: London, Taekwondo, Architecture…": "Til dømes: London, taekwondo, arkitektur…",
"Forgot your password ?": "Gløymt passordet?",
"Forgot your password?": "Har du gløymt passordet ditt?",
"Framadate poll": "Framadate-meiningsmåling",
"From my groups": "Frå gruppene mine",
"From the {startDate} at {startTime} to the {endDate}": "Frå {startDate} kl. {startTime} til {endDate}",
"From the {startDate} at {startTime} to the {endDate} at {endTime}": "Frå {startDate} kl. {startTime} til {endDate} kl. {endTime}",
"From the {startDate} to the {endDate}": "Frå {startDate} til {endDate}",
@ -374,7 +397,6 @@
"Glossary": "Ordliste",
"Go": "Gå",
"Go to the event page": "Gå til hendingssida",
"Going as {name}": "Går som {name}",
"Google Meet": "Google Meet",
"Group": "Gruppe",
"Group Followers": "Gruppefylgjarar",
@ -400,7 +422,6 @@
"Heading Level 3": "Overskrift 3",
"Headline picture": "Hovudbilete",
"Hide replies": "Gøym svar",
"Hide the organizer": "Gøym tilskiparen",
"Home": "Heim",
"Home to {number} users": "Ein heim for {number} brukarar",
"Homepage": "Heimeside",
@ -417,6 +438,7 @@
"I've been mentionned in a group discussion": "Nokon har nemnt meg i ein gruppediskusjon",
"ICS feed for events": "ICS-straum for hendingar",
"ICS/WebCal Feed": "ICS/WebCal-straum",
"IP Address": "IP-adresse",
"Identities": "Identitetar",
"Identity {displayName} created": "Identiteten {displayName} er oppretta",
"Identity {displayName} deleted": "Identiteten {displayName} er sletta",
@ -428,7 +450,9 @@
"If you have opted for manual validation of participants, Mobilizon will send you an email to inform you of new participations to be processed. You can choose the frequency of these notifications below.": "Viss du har skrudd på manuell godkjenning av deltakarar, vil Mobilizon senda deg ein epost når det kjem nye påmeldingar du må godkjenna. Du kan velja kor ofte desse epostane kjem under.",
"If you want, you may send a message to the event organizer here.": "Viss du vil, kan du senda ei melding til arrangøren her.",
"Ignore": "Oversjå",
"In person": "Personleg",
"In the following context, an application is a software, either provided by the Mobilizon team or by a 3rd-party, used to interact with your instance.": "I denne samanhengen tyder \"program\" ei programvare, anten utvila av Mobilizon-laget eller ein tredjepart, som blir brukt for å samhandla med nettstaden din.",
"In the past": "I fortida",
"Increase": "Auka",
"Instance": "Nettstad",
"Instance Long Description": "Lang skildring av nettstaden",
@ -445,7 +469,6 @@
"Instance administrator": "Styrar på nettstaden",
"Instance configuration": "Oppsett for nettstaden",
"Instance feeds": "Straumar frå nettstaden",
"Instance follows": "Denne nettstaden fylger",
"Instance languages": "Språk på nettstaden",
"Instance rules": "Reglar for nettstaden",
"Instance settings": "Innstillingar for nettstaden",
@ -471,6 +494,7 @@
"Last group created": "Den nyaste gruppa",
"Last published event": "Nyaste hending",
"Last published events": "Dei siste hendingane",
"Last seen on": "Sist sett på",
"Last sign-in": "Sist logga på",
"Last week": "Sist veka",
"Latest posts": "Siste innlegg",
@ -479,6 +503,7 @@
"Learn more about {instance}": "Lær meir om {instance}",
"Leave": "Forlat",
"Leave event": "Forlat hendinga",
"Leave group": "Forlat gruppa",
"Leaving event \"{title}\"": "Forlèt hendinga \"{title}\"",
"Legal": "Juridisk",
"Let's define a few settings": "La oss laga nokre innstillingar",
@ -500,8 +525,6 @@
"Login on {instance}": "Logg inn på {instance}",
"Login status": "Innloggingsstatus",
"Main languages you/your moderators speak": "Dei språka du og styrarane pratar",
"Manage my notifications": "Handter varsla mine",
"Manage my settings": "Endre innstillingane mine",
"Manage participations": "Handter deltakingar",
"Manually approve new followers": "Godkjenn nye fylgjarar manuelt",
"Manually invite new members": "Inviter nye medlemer manuelt",
@ -509,6 +532,7 @@
"Member": "Medlem",
"Members": "Medlemer",
"Members-only post": "Innlegg berre for medlemer",
"Memberships": "Medlemskap",
"Mentions": "Når nokon nemner deg",
"Message": "Melding",
"Microsoft Teams": "Microsoft Teams",
@ -521,6 +545,7 @@
"Mobilizon uses a system of profiles to compartiment your activities. You will be able to create as many profiles as you want.": "Mobilizon bruker ulike profilar for å skilja dei ulike aktivitetane dine. Du kan laga så mange profilar du vil.",
"Mobilizon version": "Mobilizon-versjon",
"Mobilizon will send you an email when the events you are attending have important changes: date and time, address, confirmation or cancellation, etc.": "Mobilizon sender deg ein epost dersom hendingane du deltek på har viktige endringar: dato og tid, adresse, stadfesting eller avlysing osb.",
"Moderate new members": "Godkjenn nye medlemer",
"Moderated comments (shown after approval)": "Kommentarar under gjennomsyn (blir synlege etter godkjenning)",
"Moderation": "Gjennomsyn",
"Moderation log": "Gjennomsynslogg",
@ -560,12 +585,15 @@
"No follower matches the filters": "Ingen fylgjar passar til filtra",
"No group found": "Fann ingen grupper",
"No group matches the filters": "Inga gruppe passar til søket",
"No group member found": "Fann ingen medlemer i gruppa",
"No groups found": "Fann ingen grupper",
"No information": "Ingen opplysingar",
"No instance follows your instance yet.": "Det er ingen nettstader som fylgjer din enno.",
"No instance found.": "Fann ingen nettstad.",
"No instance to approve|Approve instance|Approve {number} instances": "Ingen nettstad å godkjenna|Godkjenn nettstaden|Godkjenn {number} nettstader",
"No instance to reject|Reject instance|Reject {number} instances": "Ingen nettstad å avslå|Avslå nettstaden|Avslå {number} nettstader",
"No instance to remove|Remove instance|Remove {number} instances": "Ingen nettstad å fjerna|Fjern nettstaden|Fjern {number} nettstader",
"No instances match this filter. Try resetting filter fields?": "Ingen nettstader passar til søket. Kanskje du kan nullstilla søkjefiltra?",
"No languages found": "Fann ingen språk",
"No member matches the filters": "Ingen medlemer passar med filtra",
"No members found": "Fann ingen medlemer",
@ -584,7 +612,6 @@
"No posts found": "Fann ingen innlegg",
"No posts yet": "Ingen innlegg enno",
"No profile matches the filters": "Ingen profilar passar til filtra",
"No profiles found": "Fann ingen profilar",
"No public upcoming events": "Ingen offentlege komande hendingar",
"No resolved reports yet": "Ingen løyste rapportar enno",
"No resources in this folder": "Ingen ressursar i denne mappa",
@ -593,18 +620,20 @@
"No results for \"{queryText}\"": "Ingen resultat for \"{queryText}\"",
"No results for {search}": "Ingen resultat for {search}",
"No rules defined yet.": "Det er ikkje laga nokon reglar enno.",
"No user matches the filter": "Ingen brukar passar til søkjefiltra",
"No user matches the filters": "Ingen brukar passar til søkjefiltra",
"None": "Ingen",
"Not accessible with a wheelchair": "Ikkje tilgjenge for rullestol",
"Not approved": "Ikkje godkjent",
"Not confirmed": "Ikkje stadfesta",
"Notes": "Notat",
"Nothing to see here": "Ingenting å sjå her",
"Notification before the event": "Varsling før hendinga",
"Notification on the day of the event": "Varsling på dagen for hendinga",
"Notification settings": "Innstillingar for varsel",
"Notifications": "Varsel",
"Notifications for manually approved participations to an event": "Varslingar for manuelt godkjende deltakingar til ei hending",
"Notify participants": "Varsle deltakarane",
"Notify the user of the change": "Sei frå til brukaren om endringa",
"Now, create your first profile:": "No kan du laga din fyrste profil:",
"Number of places": "Tal plassar",
"OK": "OK",
@ -613,17 +642,18 @@
"On {date} ending at {endTime}": "{date}, slutt klokka {endTime}",
"On {date} from {startTime} to {endTime}": "{date} frå kl. {startTime} til {endTime}",
"On {date} starting at {startTime}": "{date}, startar klokka {startTime}",
"On {instance}": "På {instance}",
"On {instance} and other federated instances": "På {instance} og andre samankopla nettstader",
"Online": "På nett",
"Online ticketing": "Billettsal på nett",
"Only Mobilizon instances can be followed": "Du kan berre fylgja Mobilizon-nettstader",
"Only accessible through link": "Berre tilgjengeleg med denne lenka",
"Only accessible through link (private)": "Berre tilgjengeleg med lenka (private)",
"Only accessible to members of the group": "Berre tilgjengeleg for gruppemedlemer",
"Only alphanumeric characters and underscores are supported.": "Du kan berre bruka bokstavar, tal og understrek.",
"Only alphanumeric lowercased characters and underscores are supported.": "Du kan berre bruka små bokstavar (a-z) og tal.",
"Only group members can access discussions": "Berre gruppemedlemer kan sjå ordskifte",
"Only group moderators can create, edit and delete events.": "Berre gruppestyrarar kan laga, endra og sletta hendingar.",
"Only group moderators can create, edit and delete posts.": "Berre gruppestyrarar kan skriva, endra og sletta innlegg.",
"Only registered users may fetch remote events from their URL.": "Berre registrerte brukarar kan henta eksterne hendingar frå ei adresse.",
"Open": "Open",
"Open a topic on our forum": "Lag eit nytt emne på forumet vårt",
"Open an issue on our bug tracker (advanced users)": "Lag ei ny feilmelding på feilrettingsverktyet vårt (avanserte brukarar)",
@ -632,8 +662,8 @@
"Ordered list": "Nummerert liste",
"Organized": "Organisert",
"Organized by": "Organisert av",
"Organized by you": "Organisert av deg",
"Organized by {name}": "Organisert av {name}",
"Organized events": "Organiserte hendingar",
"Organizer": "Organisator",
"Organizer notifications": "Arrangørvarslingar",
"Organizers": "Tilskiparar",
@ -641,6 +671,8 @@
"Other actions": "Andre handlingar",
"Other notification options:": "Andre varslingsinnstillingar:",
"Other software may also support this.": "Anna programvare kan òg ha støtte for dette.",
"Other users with the same IP address": "Andre brukarar med same IP-adresse",
"Other users with the same email domain": "Andre brukarar med same epostdomene",
"Otherwise this identity will just be removed from the group administrators.": "Elles vil denne identiteten berre bli sletta frå gruppeadministratorane.",
"Page": "Side",
"Page limited to my group (asks for auth)": "Sida er avgrensa til gruppa mi (spør om godkjenning)",
@ -667,7 +699,6 @@
"Pending": "Ventar",
"Personal feeds": "Personlege straumar",
"Pick": "Vel",
"Pick a group": "Vel ei gruppe",
"Pick a profile or a group": "Vel ein profil eller ei gruppe",
"Pick an identity": "Vel ein identitet",
"Pick an instance": "Vel ein nettstad",
@ -679,15 +710,18 @@
"Please make sure the address is correct and that the page hasn't been moved.": "Sjå til at adressa er rett, og at sida ikkje er flytta.",
"Please read the {fullRules} published by {instance}'s administrators.": "Les gjerne{fullRules} som styrarane på {instance} har lagt ut.",
"Post": "Innlegg",
"Post URL": "Innleggsadresse",
"Post a comment": "Skriv ein kommentar",
"Post a reply": "Skriv eit svar",
"Post body": "Brødtekst i innlegget",
"Post {eventTitle} reported": "Innlegget {eventTitle} er meldt",
"Postal Code": "Postnummer",
"Posts": "Innlegg",
"Powered by Mobilizon": "Køyrer Mastodon",
"Powered by {mobilizon}. © 2018 - {date} The Mobilizon Contributors - Made with the financial support of {contributors}.": "Drive av {mobilizon}. © 2018 - {date} Mobilizon-bidragsytarane - laga med økonomisk støtte frå {contributors}.",
"Preferences": "Innstillingar",
"Previous": "Førre",
"Previous email": "Førre epost",
"Previous month": "Førre månad",
"Previous page": "Førre sida",
"Price sheet": "Prisliste",
@ -711,6 +745,7 @@
"Public preview": "Offentleg førehandsvising",
"Publication date": "Lagt ut dato",
"Publish": "Legg ut",
"Published by {name}": "Lagt ut av {name}",
"Published events with <b>{comments}</b> comments and <b>{participations}</b> confirmed participations": "Offentlege hendingar med <b>{comments}</b> kommentarar og <b>{participations}</b> stadfesta deltakarar",
"Push": "Straks",
"Quote": "Sitat",
@ -722,13 +757,11 @@
"Redirecting in progress…": "Omdirigerer…",
"Redirecting to Mobilizon": "Vidaresender til Mobilizon",
"Redirecting to content…": "Vidaresender til innhaldet…",
"Redirecting to event…": "Vidaresender til hendinga…",
"Redo": "Gjer om",
"Refresh profile": "Last profilen på nytt",
"Regenerate new links": "Lag nye lenker på nytt",
"Region": "Region",
"Register": "Registrer deg",
"Register an account on Mobilizon!": "Lag ein konto på Mobilizon!",
"Register an account on {instanceName}!": "Lag ein brukarkonto på {instancename}!",
"Register on this instance": "Bli medlem på denne nettstaden",
"Registration is allowed, anyone can register.": "Påmeldinga er open, alle kan registrera seg.",
@ -737,6 +770,8 @@
"Registrations": "Registreringar",
"Registrations are restricted by allowlisting.": "Registreringar er avgrensa av tilgangslister.",
"Reject": "Avslå",
"Reject follow": "Avslå fylgjaren",
"Reject member": "Avslå medlem",
"Rejected": "Avslege",
"Remember my participation in this browser": "Hugs deltakinga mi i denne nettlesaren",
"Remove": "Fjern",
@ -748,9 +783,11 @@
"Reply": "Svar",
"Report": "Rapporter",
"Report #{reportNumber}": "Rapport nr. {reportNumber}",
"Report status": "Rapportstatus",
"Report this comment": "Rapporter denne kommentaren",
"Report this event": "Rapporter denne hendinga",
"Report this group": "Rapporter denne gruppa",
"Report this post": "Meld dette innlegget",
"Reported": "Rapportert",
"Reported by": "Rapportert av",
"Reported by someone on {domain}": "Rapportert av nokon på {domain}",
@ -763,6 +800,7 @@
"Resend confirmation email": "Send stadfestingseposten på nytt",
"Resent confirmation email": "Stadfestingseposten er send ein gong til",
"Reset": "Nullstill",
"Reset filters": "Nullstill filter",
"Reset my password": "Nullstill passordet mitt",
"Reset password": "Nullstill passordet ditt",
"Resolved": "Løyst",
@ -781,12 +819,12 @@
"Search": "Søk",
"Search events, groups, etc.": "Søk gjennom hendingar, grupper osb.",
"Searching…": "Søkjer…",
"Search…": "Søk…",
"Select a language": "Vel språk",
"Select a radius": "Vel ein radius",
"Select a timezone": "Vel ein tidssone",
"Select languages": "Vel språk",
"Select the activities for which you wish to receive an email or a push notification.": "Vel kva aktivitetar du vil ha epost- eller straksvarsel om.",
"Send": "Send",
"Send email": "Send epost",
"Send notification e-mails": "Send varsel-epostar",
"Send password reset": "Send passordnullstilling",
@ -798,12 +836,15 @@
"Share": "Del",
"Share this event": "Del denne hendinga",
"Share this group": "Del denne gruppa",
"Share this post": "Del dette innlegget",
"Short bio": "Kort biografi",
"Show map": "Vis kart",
"Show me where I am": "Vis meg kvar eg er",
"Show remaining number of places": "Vis tal på ledige plassar",
"Show the time when the event begins": "Vis kva tid hendinga startar",
"Show the time when the event ends": "Vis kva tid hendinga sluttar",
"Showing events before": "Viser hendingar før",
"Showing events starting on": "Viser hendingar som startar den",
"Sign Language": "Teiknspråk",
"Sign in with": "Logg inn med",
"Sign up": "Bli med",
@ -813,11 +854,14 @@
"Some terms, technical or otherwise, used in the text below may cover concepts that are difficult to grasp. We have provided a glossary here to help you understand them better:": "Nokre omgrep i teksten under kan vera vanskelege å forstå, både dei tekniske og andre omgrep. Me har laga ei ordliste så du kan forstå dei betre:",
"Starts on…": "Startar…",
"Status": "Status",
"Stop following instance": "Slutt å fylgja nettstaden",
"Street": "Gate",
"Submit": "Send inn",
"Subtitles": "Undertekstar",
"Suspend": "Sperr",
"Suspend group": "Sperr gruppa",
"Suspend the account": "Steng brukaren",
"Suspend the account?": "Steng ute brukaren?",
"Suspended": "Sperra",
"Tag search": "Merkelappsøk",
"Task lists": "Oppgåveliste",
@ -827,6 +871,7 @@
"Terms": "Vilkår",
"Terms of service": "Bruksvilkår",
"Text": "Tekst",
"That you follow or of which you are a member": "Som du fylgjer eller er medlem av",
"The Big Blue Button video teleconference URL": "Nettadressa til Big Blue Button-videomøtet",
"The Google Meet video teleconference URL": "Nettadressa til Google Meet-videomøtet",
"The Jitsi Meet video teleconference URL": "Nettadressa til Jitsi-videomøtet",
@ -856,12 +901,12 @@
"The event will show as attributed to this group.": "Hendinga vil bli knytt til denne gruppa.",
"The event will show as attributed to this profile.": "Hendinga vil syna som tilkopla denne profilen.",
"The event will show as attributed to your personal profile.": "Hendinga vil bli knytt til den personlege profilen din.",
"The event will show the group as organizer.": "Denne hendinga vil syna gruppa som tilskipar.",
"The event {event} was created by {profile}.": "Brukaren {profile} laga hendinga {event}.",
"The event {event} was deleted by {profile}.": "Brukaren {profile} sletta hendinga {event}.",
"The event {event} was updated by {profile}.": "Brukaren {profile} oppdaterte hendinga {event}.",
"The events you created are not shown here.": "Dei hendingane du har laga, vil ikkje syna her.",
"The geolocation prompt was denied.": "Du sa nei til førespurnaden om å bruka posisjonen din.",
"The group can now be joined by anyone, but new members need to be approved by an administrator.": "Alle kan bli med i gruppa, men nye medlemer må bli godkjende av ein styrar fyrst.",
"The group can now be joined by anyone.": "Alle kan bli med i gruppa.",
"The group can now only be joined with an invite.": "Frå no må det invitasjon til for å bli med i gruppa.",
"The group will be publicly listed in search results and may be suggested in the explore section. Only public informations will be shown on it's page.": "Denne gruppa vil bli lista opp offentleg i søkjeresultat og kan bli føreslegen når folk utforskar nettstaden. Berre offentleg informasjon vil syna på sida til gruppa.",
@ -870,7 +915,9 @@
"The group's physical address was changed.": "Den fysiske adressa for gruppa er endra.",
"The group's short description was changed.": "Skildringa for gruppa er endra.",
"The instance administrator is the person or entity that runs this Mobilizon instance.": "Styraren er den personen eller eininga som driv denne Mobilizon-nettstaden.",
"The member was approved": "Medlemen vart godkjend",
"The member was removed from the group {group}": "Medlemen vart fjerna frå gruppa {group}",
"The membership request from {profile} was rejected": "{profile} vart nekta medlemskap",
"The only way for your group to get new members is if an admininistrator invites them.": "Den einaste måten gruppa di kan få nye medlemer på, er dersom ein administrator inviterer dei.",
"The organiser has chosen to close comments.": "Tilskiparen har valt å stenga for kommentarar.",
"The page you're looking for doesn't exist.": "Denne sida finst ikkje.",
@ -881,6 +928,7 @@
"The report will be sent to the moderators of your instance. You can explain why you report this content below.": "Rapporten blir sendt til dei som styrer nettstaden din. Du kan forklara kvifor du rapporterer dette innhaldet under her.",
"The selected picture is too heavy. You need to select a file smaller than {size}.": "Dette biletet er for stort. Du må velja ei fil som er mindre enn {size}.",
"The technical details of the error can help developers solve the problem more easily. Please add them to your feedback.": "Dei tekniske detaljane om feilen kan hjelpa utviklarar å løysa problemet lettare. Ta dei gjerne med i feilmeldinga di.",
"The user has been disabled": "Brukaren er gjort inaktiv",
"The {default_privacy_policy} will be used. They will be translated in the user's language.": "{default_privacy_policy} vil bli brukt. Dei vil vera omsett til språket til brukaren.",
"The {default_terms} will be used. They will be translated in the user's language.": "{default_terms} vil bli brukte. Dei vil bli omsette til språket til lesaren.",
"There are {participants} participants.": "Det er {participants} deltakarar.",
@ -898,9 +946,10 @@
"This group doesn't have a description yet.": "Denne gruppa har inga skildring enno.",
"This group is accessible only through it's link. Be careful where you post this link.": "Du kan berre gå til denne gruppa med lenka. Pass på når du legg ut lenka.",
"This group is invite-only": "Du må vera invitert for å bli medlem i denne gruppa",
"This group was not found": "Fann ikkje denne gruppa",
"This identifier is unique to your profile. It allows others to find you.": "Denne ID-en er unik for profilen din. Han gjer det mogleg for andre å finna deg.",
"This identity is not a member of any group.": "Denne identiteten er ikkje medlem av noka gruppe.",
"This information is saved only on your computer. Click for details": "Desse opplysingane blir berre lagra på datamaskina di. Klikk for meir info",
"This instance doesn't follow yours.": "Denne nettstaden fylgjer ikkje din.",
"This instance hasn't got push notifications enabled.": "Denne nettstaden har skrudd av straksvarsel.",
"This instance isn't opened to registrations, but you can register on other instances.": "Denne nettstaden tillèt ikkje nye registreringar, men du kan bli med på andre nettstader.",
"This instance, <b>{instanceName} ({domain})</b>, hosts your profile, so remember its name.": "Denne nettstaden, <b>{instanceName} ({domain})</b>, er vertskap for profilen din, så du bør hugsa kva han heiter.",
@ -908,7 +957,13 @@
"This is like your federated username (<code>{username}</code>) for groups. It will allow the group to be found on the federation, and is guaranteed to be unique.": "Dette er som det spreidde brukarnamnet (<code>{username}</code>) for grupper. Det gjer det mogleg å finna gruppa på heile nettverket, og vil garantert vera unikt.",
"This month": "Denne månaden",
"This post is accessible only for members. You have access to it for moderation purposes only because you are an instance moderator.": "Berre medlemer kan sjå dette innlegget. Du har tilgang til det for redaktørføremål fordi du er styrar på denne nettstaden.",
"This post is accessible only through it's link. Be careful where you post this link.": "Dette innlegget kan du berre sjå om du har lenka til det. Difor bør du vera varsam med kvar du legg ut lenka.",
"This profile is from another instance, the informations shown here may be incomplete.": "Denne profilen er frå ein annan nettstad. Opplysingane her kan vera mangelfulle.",
"This profile is located on this instance, so you need to {access_the_corresponding_account} to suspend it.": "Denne profilen er på denne nettstaden, så du må {access_the_corresponding_account} for å stenga han.",
"This profile was not found": "Fann ikkje denne profilen",
"This setting will be used to display the website and send you emails in the correct language.": "Denne innstillinga blir brukt til å visa nettsida og senda deg epostar på rett språk.",
"This user doesn't have any profiles": "Denne brukaren har ingen profilar",
"This user was not found": "Fann ikkje denne brukaren",
"This website isn't moderated and the data that you enter will be automatically destroyed every day at 00:01 (Paris timezone).": "Denne nettstaden er ikkje styrt, og alt du skriv her vil bli automatisk sletta kvar dag kl. 00:01 (Paris-tid).",
"This week": "Denne veka",
"This weekend": "I helga",
@ -924,10 +979,12 @@
"To create and manage multiples identities from a same account": "For å laga og handtera fleire identitetar frå same konto",
"To create and manage your events": "For å laga og handtera hendingar",
"To create or join an group and start organizing with other people": "For å laga eller bli med i ei gruppe, og byrja å organisera saman med andre folk",
"To follow groups and be informed of their latest events": "For å fylgja grupper og få veta om nye hendingar frå dei",
"To register for an event by choosing one of your identities": "For å melda deg på hendingar med ein av identitetane dine",
"Today": "I dag",
"Tomorrow": "I morgon",
"Tools": "Verkty",
"Total number of participations": "Tal på deltakarar",
"Transfer to {outsideDomain}": "Overfør til {outsideDomain}",
"Triggered profile refreshment": "Profilen vart lasta på nytt",
"Twitch live": "Twitch direkte",
@ -946,7 +1003,7 @@
"Unable to update the profile. The avatar picture may be too heavy.": "Greidde ikkje oppdatera profilen. Profilbiletet kan vera for stort.",
"Underline": "Understrek",
"Undo": "Angre",
"Unfortunately, this instance isn't opened to registrations": "Denne nettstaden er diverre ikkje open for innmeldingar no",
"Unfollow": "Ikkje fylg",
"Unfortunately, your participation request was rejected by the organizers.": "Tilskiparane har diverre avslege deltakinga di.",
"Unknown": "Ukjent",
"Unknown actor": "Ukjend aktør",
@ -954,11 +1011,11 @@
"Unknown value for the openness setting.": "Det er uvisst om gruppa er open eller ikkje.",
"Unlogged participation": "Ulogga deltaking",
"Unsaved changes": "Ulagra endringar",
"Unset group": "Ikkje vel gruppa",
"Unsubscribe to browser push notifications": "Meld deg av straksvarsel i nettlesaren",
"Unsuspend": "Opphev sperringa",
"Upcoming": "Komande",
"Upcoming events": "Komande hendingar",
"Upcoming events from your groups": "Komande hendingar frå gruppene dine",
"Update": "Oppdater",
"Update app": "Oppdater mobilprogrammet",
"Update discussion title": "Skriv ny tittel på diskusjonen",
@ -968,6 +1025,7 @@
"Update post": "Oppdater innlegget",
"Updated": "Oppdatert",
"Uploaded media size": "Storleik på opplasta media",
"Uploaded media total size": "Storleik på opplasta media",
"Use my location": "Bruk plasseringa mi",
"User": "Brukar",
"User settings": "Brukarinnstillingar",
@ -981,9 +1039,9 @@
"View all": "Sjå alle",
"View all events": "Sjå alle hendingar",
"View all posts": "Sjå alle innlegga",
"View all upcoming events": "Sjå alle komande hendingar",
"View event page": "Sjå på hendingssida",
"View everything": "Sjå alt",
"View full profile": "Sjå heile brukarprofilen",
"View less": "Sjå mindre",
"View more": "Sjå meir",
"View page on {hostname} (in a new window)": "Sjå sida på {hostname} (i eit nytt vindauga)",
@ -1023,10 +1081,10 @@
"Why create an account?": "Kvifor laga konto?",
"Will allow to display and manage your participation status on the event page when using this device. Uncheck if you're using a public device.": "Lèt deg syna og handtera deltakarstatusen din på hendingssida når du bruker denne eininga. Fjern merkinga viss du bruker ei offentleg eining.",
"Within {number} kilometers of {place}": "|Innan ein kilometer frå {place}|Innan {number} kilometer frå {place}",
"Write something…": "Skriv noko…",
"Yesterday": "I går",
"You accepted the invitation to join the group.": "Du tok imot invitasjonen om å bli med i gruppa.",
"You added the member {member}.": "Du la til medlemen {member}.",
"You approved {member}'s membership.": "Du godkjende {member} som medlem.",
"You archived the discussion {discussion}.": "Du arkiverte ordskiftet {discussion}.",
"You are not an administrator for this group.": "Du er ikkje styrar for denne gruppa.",
"You are not part of any group.": "Du er ikkje med i noko gruppe.",
@ -1034,7 +1092,6 @@
"You are participating in this event anonymously": "Du deltek på denne hendinga anonymt",
"You are participating in this event anonymously but didn't confirm participation": "Du deltek på denne hendinga anonymt, men har ikkje stadfesta at du deltek",
"You can add tags by hitting the Enter key or by adding a comma": "Du kan leggja til merkelappar ved å trykkja Enter eller skriva eit komma",
"You can only get invited to groups right now.": "Du kan berre få invitasjonar til grupper nett no.",
"You can pick your timezone into your preferences.": "Du kan velja tidssone i innstillingane dine.",
"You can try another search term or drag and drop the marker on the map": "Du kan søkja etter noko anna, eller dra og sleppa markøren på kartet",
"You can't change your password because you are registered through {provider}.": "Du kan ikkje endra passordet ditt, fordi du er registrert gjennom {provider}.",
@ -1056,7 +1113,9 @@
"You demoted {member} to simple member.": "Du degraderte {member} til vanleg medlem.",
"You didn't create or join any event yet.": "Du har ikkje laga eller vorte med på hendingar enno.",
"You don't follow any instances yet.": "Du fylgjer ingen nettstader enno.",
"You don't have any upcoming events. Maybe try another filter?": "Du har ingen komande hendingar. Kanskje du kan prøva eit anna søk?",
"You excluded member {member}.": "Du kasta ut medlemen {member}.",
"You have attended {count} events in the past.": "Du har ikkje vore med på hendingar tidlegare.|Du har vore med på ei hending tidlegare.|Du har vore med på {count} hendingar tidlegare.",
"You have been disconnected": "Du er fråkopla",
"You have been invited by {invitedBy} to the following group:": "{invitedBy} har invitert deg til denne gruppa:",
"You have been removed from this group's members.": "Du er ikkje lenger medlem i denne gruppa.",
@ -1064,21 +1123,21 @@
"You have one event in {days} days.": "Du har ingen hendingar dei neste {days} dagane | Du har ei hending dei neste {days} dagane. | Du har {count} hendingar dei neste {days} dagane",
"You have one event today.": "Du har ingen hendingar i dag | Du har ei hending i dag. | Du har {count} hendingar i dag",
"You have one event tomorrow.": "Du har ingen hendingar i morgon | Du har ei hending i morgon. | Du har {count} hendingar i morgon",
"You haven't interacted with other instances yet.": "Du har ikkje samhandla med andre nettstader enno.",
"You invited {member}.": "Du inviterte {member}.",
"You may clear all participation information for this device with the buttons below.": "Du kan sletta alle deltakingsopplysingar for denne eininga ved å bruka knappane under.",
"You may now close this window, or {return_to_event}.": "Du kan lata att dette vindauga no, eller {return_to_event}.",
"You may now close this window.": "No kan du stenga dette vindauga.",
"You may show some members as contacts.": "Du kan syna nokre medlemer som kontakter.",
"You moved the folder {resource} into {new_path}.": "Du flytta mappa {resource} til {new_path}.",
"You moved the folder {resource} to the root folder.": "Du flytta mappa {resource} til rotmappa.",
"You moved the resource {resource} into {new_path}.": "Du flytta ressursen {resource} til {new_path}.",
"You moved the resource {resource} to the root folder.": "Du flytta ressursen {resource} til rotmappa.",
"You need to create the group before you create an event.": "Du må laga ei gruppe før du lagar ei hending.",
"You need to login.": "Du må logga inn.",
"You posted a comment on the event {event}.": "Du kommenterte hendinga {event}.",
"You promoted the member {member} to an unknown role.": "Du forfremja medlemen {member} til ei ukjend rolle.",
"You promoted {member} to administrator.": "Du forfremja {member} til styrar.",
"You promoted {member} to moderator.": "Du forfremja {member} til redaktør.",
"You rejected {member}'s membership request.": "Du avslo {member} som medlem.",
"You renamed the discussion from {old_discussion} to {discussion}.": "Du døypte om ordskiftet frå {old_discussion} til {discussion}.",
"You renamed the folder from {old_resource_title} to {resource}.": "Du døypte om mappa frå {old_resource_title} til {resource}.",
"You renamed the resource from {old_resource_title} to {resource}.": "Du døypte om ressursen frå {old_resource_title} til {resource}.",
@ -1097,7 +1156,8 @@
"You were promoted to moderator by {profile}.": "{profile} forfremja deg til redaktør.",
"You will be able to add an avatar and set other options in your account settings.": "Du kan laga eit profilbilete og gjera andre val i kontoinnstillingane dine.",
"You will be redirected to the original instance": "Du blir send vidare til den opphavelege nettstaden",
"You will find here all the events you have created or of which you are a participant.": "Her finn du alle hendingane du har laga eller deltek på.",
"You will find here all the events you have created or of which you are a participant, as well as events organized by groups you follow or are a member of.": "Her finn du alle hendingane du har laga eller hendingar du deltek på, samt alle hendingane som er laga av grupper du er medlem i eller fylgjer.",
"You will receive notifications about this group's public activity depending on %{notification_settings}.": "Ut frå %{notification_settings} får du varsel om den offentlege aktiviteten i denne gruppa.",
"You wish to participate to the following event": "Du ynskjer å delta på denne hendinga",
"You'll get a weekly recap every Monday for upcoming events, if you have any.": "Du vil få eit samandrag kvar måndag over komande hendingar, om du har nokon.",
"You'll need to change the URLs where there were previously entered.": "Du må endra adressene der du har skrive dei inn tidlegare.",
@ -1117,6 +1177,7 @@
"Your email is being changed": "Epostadressa di blir endra",
"Your email will only be used to confirm that you're a real person and send you eventual updates for this event. It will NOT be transmitted to other instances or to the event organizer.": "Epostadressa di blir berre brukt til å stadfesta at du er ein verkeleg person, og til å senda deg eventuelle oppdateringar for denne hendinga. Me gjev IKKJE adressa di til andre nettstader eller til arrangøren.",
"Your federated identity": "Den spreidde identiteten din",
"Your membership was approved by {profile}.": "{profile} godkjende deg som medlem.",
"Your participation has been confirmed": "Me har stadfesta at du deltek",
"Your participation has been rejected": "Me har avslege deltakinga di",
"Your participation has been requested": "Du har spurt om å delta",
@ -1140,6 +1201,8 @@
"[This comment has been deleted]": "[Denne kommentaren er sletta]",
"[deleted]": "[sletta]",
"a non-existent report": "ein ikkje-eksisterande rapport",
"access the corresponding account": "få tilgang til den aktuelle kontoen",
"access to the group's private content as well": "tilgang til det private innhaldet til gruppa òg",
"and {number} groups": "og {number} grupper",
"any distance": "alle avstandar",
"as {identity}": "som {identity}",
@ -1153,24 +1216,27 @@
"enable the feature": "skru på funksjonen",
"explore the events": "utforska hendingane",
"explore the groups": "utforska gruppene",
"firstDayOfWeek": "1",
"full rules": "fullstendige reglar",
"group's upcoming public events": "dei komande offentlege hendingane frå gruppa",
"https://mensuel.framapad.org/p/some-secret-token": "https://pad.disroot.org/",
"iCal Feed": "iCal-straum",
"instance rules": "reglar for nettstaden",
"mobilizon-instance.tld": "mobilizon-nettstad.domene",
"more than 1360 contributors": "meir enn 1360 bidragsytarar",
"new@email.com": "ny@epost.no",
"profile@instance": "profil@nettstad",
"report #{report_number}": "rapport nr. {report_number}",
"return to the event's page": "gå tilbake til hendingssida",
"terms of service": "brukarvilkår",
"with another identity…": "med ein annan identitet…",
"your notification settings": "varslingsinnstillingane dine",
"{approved} / {total} seats": "{approved} / {total} plassar",
"{available}/{capacity} available places": "Ingen ledige plassar|{available}/{capacity} ledige plassar",
"{count} km": "{count}km",
"{count} members": "Ingen medlemer|Ein medlem|{count} medlemer",
"{count} members or followers": "Ingen medlemer eller fylgjarar|Ein medlem eller fylgjar|{count} medlemer eller fylgjarar",
"{count} participants": "Ingen deltakarar enno| Ein deltakar | {count} deltakarar",
"{count} requests waiting": "{count} førespurnader ventar",
"{count} team members": "{count} medlemer på laget",
"{folder} - Resources": "{folder} - Ressursar",
"{group} activity timeline": "Tidsline over aktiviteten i {group}",
"{group} events": "Hendingar i {group}",
@ -1180,6 +1246,7 @@
"{instanceName} is an instance of the {mobilizon} software.": "{instanceName} er ein nettstad som bruker {mobilizon}-programvara.",
"{instanceName} is an instance of {mobilizon_link}, a free software built with the community.": "{instanceName} er ein nettstad på {mobilizon_link}, fri programvare som er laga av brukarmiljøet.",
"{member} accepted the invitation to join the group.": "{member} tok imot invitasjonen om å bli med i gruppa.",
"{member} joined the group.": "{member} vart med i gruppa.",
"{member} rejected the invitation to join the group.": "{member} takka nei til invitasjonen om å bli med i gruppa.",
"{member} requested to join the group.": "{member} ba om å bli med i gruppa.",
"{member} was invited by {profile}.": "{profile} inviterte {member}.",
@ -1202,9 +1269,11 @@
"{number} organized events": "Ingen organiserte hendingar|Ei organisert hending|{number} organiserte hendingar",
"{number} participations": "Ingen deltakarar|Ein deltakar|{number} deltakarar",
"{number} posts": "Ingen innlegg|Eitt innlegg|{number} innlegg",
"{number} seats left": "{number} ledige sete",
"{old_group_name} was renamed to {group}.": "{old_group_name} vart døypt om til {group}.",
"{profile} (by default)": "{profile} (som standard)",
"{profile} added the member {member}.": "{profile} la til medlemen {member}.",
"{profile} approved {member}'s membership.": "{profile} godkjende {member} som medlem.",
"{profile} archived the discussion {discussion}.": "{profile} arkiverte ordskiftet {discussion}.",
"{profile} created the discussion {discussion}.": "{profile} laga ordskiftet {discussion}.",
"{profile} created the folder {resource}.": "{profile} laga mappa {resource}.",
@ -1226,6 +1295,7 @@
"{profile} promoted {member} to an unknown role.": "{profile} forfremja {member} til ei ukjend rolle.",
"{profile} promoted {member} to moderator.": "{profile} forfremja {member} til redaktør.",
"{profile} quit the group.": "{profile} forlét gruppa.",
"{profile} rejected {member}'s membership request.": "{profile} avslo {member} som medlem.",
"{profile} renamed the discussion from {old_discussion} to {discussion}.": "{profile} døypte om ordskiftet frå {old_discussion} til {discussion}.",
"{profile} renamed the folder from {old_resource_title} to {resource}.": "{profile} døypte om mappa frå {old_resource_title} til {resource}.",
"{profile} renamed the resource from {old_resource_title} to {resource}.": "{profile} døypte om ressursen frå {old_resource_title} til {resource}.",

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -6,7 +6,6 @@
"+ Add a resource": "+ Добавить ресурс",
"+ Create a post": "+ Создать пост",
"+ Create an event": "+ Создать мероприятие",
"+ Post a public message": "+ Опубликовать публичное сообщение",
"+ Start a discussion": "+ Начать обсуждение",
"<b>{contact}</b> will be displayed as contact.": "<b>{contact}</b> будет отображаться как контакт.|<b>{contact}</b> будут отображаться как контакты.",
"@{group}": "@{group}",
@ -47,12 +46,12 @@
"Accept": "Принять",
"Accepted": "Принято",
"Accessibility": "Доступность",
"Accessible only by link": "",
"Accessible only to members": "Доступно только участникам",
"Accessible through link": "Доступно по ссылке",
"Account": "Учётная запись",
"Account settings": "Настройки учётной записи",
"Actions": "Действия",
"Activate browser notification": "Активировать уведомления в браузере",
"Activate browser push notifications": "Активировать push-уведомления в браузере",
"Activated": "Активирован",
"Active": "Активный",
@ -61,7 +60,6 @@
"Add": "Добавить",
"Add / Remove…": "Добавить / удалить…",
"Add a contact": "Добавить контакт",
"Add a group": "Добавить группу",
"Add a new post": "Добавить новый пост",
"Add a note": "Добавить заметку",
"Add a todo": "Добавить в список задач",
@ -103,9 +101,12 @@
"Anonymous participants will be asked to confirm their participation through e-mail.": "Анонимные участники получат запрос на подтверждение своего участия по электронной почте.",
"Anonymous participations": "Анонимное участие",
"Any day": "В любой день",
"Any type": "",
"Anyone can join freely": "Каждый может присоединиться",
"Anyone can request being a member, but an administrator needs to approve the membership.": "",
"Anyone wanting to be a member from your group will be able to from your group page.": "Каждый, кто хочет стать участником вашей группы, сможет сделать это на странице этой группы.",
"Application": "Приложение",
"Approve member": "",
"Are you really sure you want to delete your whole account? You'll lose everything. Identities, settings, events created, messages and participations will be gone forever.": "Вы действительно уверены, что хотите удалить свою учетную запись? Вы потеряете всё. Идентификаторы, настройки, созданные мероприятия, сообщения и история исчезнут навсегда.",
"Are you sure you want to <b>completely delete</b> this group? All members - including remote ones - will be notified and removed from the group, and <b>all of the group data (events, posts, discussions, todos…) will be irretrievably destroyed</b>.": "Вы действительно хотите <b>полностью удалить</b> эту группу? Все участники, включая участников с других узлов, будут уведомлены и удалены из группы, а <b>все данные группы (мероприятия, сообщения, обсуждения, задачи…) будут безвозвратно уничтожены</b>.",
"Are you sure you want to <b>delete</b> this comment? This action cannot be undone.": "Вы действительно хотите <b>удалить</b> этот комментарий? Это действие не может быть отменено.",
@ -117,13 +118,19 @@
"Are you sure you want to cancel your participation at event \"{title}\"?": "Вы действительно хотите отказаться от участия в мероприятии \"{title}\"?",
"Are you sure you want to delete this entire discussion?": "Вы уверены, что хотите полностью удалить это обсуждение?",
"Are you sure you want to delete this event? This action cannot be reverted.": "Вы уверены, что хотите удалить это мероприятие? Это действие нельзя отменить.",
"Are you sure you want to delete this post? This action cannot be reverted.": "",
"Are you sure you want to leave the group {groupName}? You'll loose access to this group's private content. This action cannot be undone.": "",
"As the event organizer has chosen to manually validate participation requests, your participation will be really confirmed only once you receive an email stating it's being accepted.": "Поскольку организатор мероприятия решил вручную подтверждать запросы на участие, ваше участие будет фактически подтверждено после того, как вы получите электронное письмо о том, что оно было одобрено.",
"Ask your instance admin to {enable_feature}.": "Попросите администратора вашего узла {enable_feature}.",
"Assigned to": "Присвоен",
"Atom feed for events and posts": "Atom лента для мероприятий и публикаций",
"Attending": "",
"Avatar": "Аватар",
"Back to group list": "",
"Back to previous page": "Вернуться на предыдущую страницу",
"Back to profile list": "",
"Back to top": "Вернуться в начало",
"Back to user list": "",
"Banner": "Баннер",
"Before you can login, you need to click on the link inside it to validate your account.": "Перед тем как войти в систему, вы должны перейти по указанной в письме ссылке, чтобы подтвердить свою учетную запись.",
"Begins on": "Начинается",
@ -133,16 +140,17 @@
"Breadcrumbs": "Хлебные крошки",
"Browser notifications": "Уведомления в браузере",
"Bullet list": "Маркированный список",
"By {username}": "От {username}",
"By others": "Другими",
"By {author}": "Автор {author}",
"By {group}": "Автор: {group}",
"By {username}": "От {username}",
"Can be an email or a link, or just plain text.": "Может быть адресом электронной почты, ссылкой или простым текстом.",
"Cancel": "Отмена",
"Cancel anonymous participation": "Отменить анонимное участие",
"Cancel creation": "Отменить создание",
"Cancel discussion title edition": "Отменить редактирование заголовка обсуждения",
"Cancel edition": "Отменить редактирование",
"Cancel follow request": "",
"Cancel membership request": "",
"Cancel my participation request…": "Отменить мою заявку на участие…",
"Cancel my participation…": "Отменить моё участие…",
"Cancelled": "Отменено",
@ -158,6 +166,7 @@
"City or region": "Город, регион или область",
"Clear": "Очистить",
"Clear address field": "Очистить поле адреса",
"Clear date filter field": "",
"Clear participation data for all events": "Очистить данные об участии для всех мероприятий",
"Clear participation data for this event": "Очистить данные об участии в этом мероприятии",
"Clear timezone field": "Очистить поле часового пояса",
@ -281,8 +290,8 @@
"Element value": "Значение элемента",
"Email": "Электронная почта",
"Email address": "Адрес электронной почты",
"Email notifications": "Уведомления по электронной почте",
"Email validate": "Подтверждение электронной почты",
"Emails usually don't contain capitals, make sure you haven't made a typo.": "",
"Enabled": "Включено",
"Ends on…": "Заканчивается в…",
"Enter the link URL": "Введите URL ссылки",
@ -343,15 +352,18 @@
"Find another instance": "Найти другой узел",
"Find or add an element": "Найти или добавить элемент",
"First steps": "Первые шаги",
"Follow": "",
"Follower": "Подписчик",
"Followers": "Подписчики",
"Followers will receive new public events and posts.": "Подписчики будут оповещены о новых публичных мероприятиях и публикациях.",
"Following the group will allow you to be informed of the {group_upcoming_public_events}, whereas joining the group means you will {access_to_group_private_content_as_well}, including group discussions, group resources and members-only posts.": "",
"Followings": "Подписки",
"For instance: London": "Например: Москва",
"For instance: London, Taekwondo, Architecture…": "Например: Москва, йога, архитектура…",
"Forgot your password ?": "Забыли свой пароль?",
"Forgot your password?": "Забыли свой пароль?",
"Framadate poll": "Опрос Framadate",
"From my groups": "",
"From the {startDate} at {startTime} to the {endDate}": "От {startDate}, {startTime} до {endDate}",
"From the {startDate} at {startTime} to the {endDate} at {endTime}": "От {startDate}, {startTime} до {endDate}, {endTime}",
"From the {startDate} to the {endDate}": "От {startDate} до {endDate}",
@ -419,7 +431,9 @@
"If you have opted for manual validation of participants, Mobilizon will send you an email to inform you of new participations to be processed. You can choose the frequency of these notifications below.": "Если вы выбрали одобрение участников вручную, Mobilizon отправит вам электронное письмо о новых заявках на участие. Ниже вы можете выбрать, как часто вы желаете получать эти уведомления.",
"If you want, you may send a message to the event organizer here.": "Здесь вы можете отправить сообщение организатору мероприятия.",
"Ignore": "Игнорировать",
"In person": "",
"In the following context, an application is a software, either provided by the Mobilizon team or by a 3rd-party, used to interact with your instance.": "Приложение в этом контексте - это программное обеспечение, предоставленное командой Mobilizon или третьей стороной, которое используется для взаимодействия с вашим узлом.",
"In the past": "",
"Increase": "Увеличить",
"Instance": "Узел",
"Instance Long Description": "Подробное описание узла",
@ -436,7 +450,6 @@
"Instance administrator": "Администратор узла",
"Instance configuration": "Настройки узла",
"Instance feeds": "Ленты узла",
"Instance follows": "Подписки на узел",
"Instance languages": "Языки узла",
"Instance rules": "Правила узла",
"Instance settings": "Настройки узла",
@ -451,7 +464,6 @@
"Invited": "Приглашён",
"It is possible that the content is not accessible on this instance, because this instance has blocked the profiles or groups behind this content.": "Контент может быть недоступен на этом узле, потому что узел заблокировал профили или группы, которым этот контент принадлежит.",
"Italic": "Курсив",
"Jisti Meet": "Jitsi Meet",
"Jitsi Meet": "Jitsi Meet",
"Join <b>{instance}</b>, a Mobilizon instance": "Присоединиться к <b>{instance}</b>, узлу Mobilizon",
"Join group": "Вступить в группу",
@ -471,6 +483,7 @@
"Learn more about {instance}": "Подробнее о {instance}",
"Leave": "Покинуть",
"Leave event": "Покинуть мероприятие",
"Leave group": "",
"Leaving event \"{title}\"": "Покинуть мероприятие \"{title}\"",
"Legal": "Правовая информация",
"Let's define a few settings": "Сделаем некоторые настройки",
@ -511,6 +524,7 @@
"Mobilizon uses a system of profiles to compartiment your activities. You will be able to create as many profiles as you want.": "Mobilizon использует разные профили для разных видов деятельности. Вы можете создать столько профилей, сколько захотите.",
"Mobilizon version": "Версия Mobilizon",
"Mobilizon will send you an email when the events you are attending have important changes: date and time, address, confirmation or cancellation, etc.": "Mobilizon отправит вам электронное письмо, если в мероприятиях, в которых вы участвуете, произошли важные изменения: дата и время, адрес, подтверждение или отмена и т.д.",
"Moderate new members": "",
"Moderated comments (shown after approval)": "Модерируемые комментарии (будут видны после одобрения)",
"Moderation": "Модерирование",
"Moderation log": "Журнал модерирования",
@ -550,6 +564,7 @@
"No follower matches the filters": "Ни один подписчик не соответствует критериям",
"No group found": "Группа не найдена",
"No group matches the filters": "Ни одна группа не соответствует фильтрам",
"No group member found": "",
"No groups found": "Группы не найдены",
"No information": "Нет информации",
"No instance follows your instance yet.": "Ни один узел еще не подписан на ваш узел.",
@ -574,7 +589,6 @@
"No posts found": "Публикаций не найдено",
"No posts yet": "Публикаций пока нет",
"No profile matches the filters": "Ни один профиль не соответствует критериям",
"No profiles found": "Профили не найдены",
"No public upcoming events": "Нет предстоящих публичных мероприятий",
"No resolved reports yet": "Решённых отчётов пока нет",
"No resources in this folder": "В этой папке нет ресурсов",
@ -588,7 +602,6 @@
"Not approved": "Не одобрено",
"Not confirmed": "Не подтверждено",
"Notes": "Примечания",
"Nothing to see here": "Здесь ничего нет",
"Notification before the event": "Уведомление перед мероприятием",
"Notification on the day of the event": "Уведомление в день мероприятия",
"Notification settings": "Настройки уведомлений",
@ -603,8 +616,8 @@
"On {date} ending at {endTime}": "{date}, заканчивается в {endTime}",
"On {date} from {startTime} to {endTime}": "{date} c {startTime} до {endTime}",
"On {date} starting at {startTime}": "{date}, начало в {startTime}",
"On {instance}": "На {instance}",
"On {instance} and other federated instances": "В {instance} и других федеративных узлах",
"Online": "",
"Online ticketing": "Продажа билетов онлайн",
"Only accessible through link": "Доступно только по ссылке",
"Only accessible through link (private)": "Доступно только по ссылке (приватно)",
@ -613,6 +626,7 @@
"Only group members can access discussions": "Только участники группы имеют доступ к обсуждениям",
"Only group moderators can create, edit and delete events.": "Только модераторы группы могут создавать, редактировать и удалять мероприятия.",
"Only group moderators can create, edit and delete posts.": "Только модераторы группы могут создавать, редактировать и удалять публикации.",
"Only registered users may fetch remote events from their URL.": "",
"Open": "Открыто",
"Open a topic on our forum": "Откройте тему на нашем форуме",
"Open an issue on our bug tracker (advanced users)": "Сообщить о проблеме в нашем багтрекере (для опытных пользователей)",
@ -621,7 +635,6 @@
"Ordered list": "Нумерованный список",
"Organized": "Организованно",
"Organized by": "Организатор",
"Organized by you": "Организовано вами",
"Organized by {name}": "Организатор: {name}",
"Organizer": "Организатор",
"Organizer notifications": "Уведомления организатора",
@ -656,7 +669,6 @@
"Pending": "В ожидании",
"Personal feeds": "Личные ленты",
"Pick": "Выбрать",
"Pick a group": "Выберите группу",
"Pick a profile or a group": "Выберите профиль или группу",
"Pick an identity": "Выберите идентификатор",
"Pick an instance": "Выберите узел",
@ -668,9 +680,11 @@
"Please make sure the address is correct and that the page hasn't been moved.": "Убедитесь, что адрес правильный и страница не была перемещена.",
"Please read the {fullRules} published by {instance}'s administrators.": "Пожалуйста, прочтите {fullRules}, опубликованные администраторами {instance}.",
"Post": "Публикация",
"Post URL": "",
"Post a comment": "Оставить комментарий",
"Post a reply": "Ответить",
"Post body": "Содержимое публикации",
"Post {eventTitle} reported": "",
"Postal Code": "Почтовый индекс",
"Posts": "Публикации",
"Powered by Mobilizon": "На платформе Mobilizon",
@ -700,6 +714,7 @@
"Public preview": "Публичный предварительный просмотр",
"Publication date": "Дата публикации",
"Publish": "Опубликовать",
"Published by {name}": "",
"Published events with <b>{comments}</b> comments and <b>{participations}</b> confirmed participations": "Опубликованные мероприятия с <b>{comments}</b> комментариями и <b>{participations}</b> подтвержденными участниками",
"Push": "Push",
"Quote": "Цитата",
@ -724,6 +739,7 @@
"Registrations": "Регистрация",
"Registrations are restricted by allowlisting.": "Регистрация ограничена белым списком.",
"Reject": "Отклонить",
"Reject member": "",
"Rejected": "Отклонено",
"Remember my participation in this browser": "Запомнить моё участие для этого браузера",
"Remove": "Удалить",
@ -738,6 +754,7 @@
"Report this comment": "Пожаловаться на этот комментарий",
"Report this event": "Пожаловаться на это мероприятие",
"Report this group": "Пожаловаться на эту группу",
"Report this post": "",
"Reported": "Уведомлено",
"Reported by": "Сообщил",
"Reported by someone on {domain}": "Об этом сообщил пользователь из {domain}",
@ -768,12 +785,12 @@
"Search": "Поиск",
"Search events, groups, etc.": "Искать мероприятия, группы и т. п.",
"Searching…": "Поиск…",
"Search…": "Поиск…",
"Select a language": "Выберите язык",
"Select a radius": "Выберите радиус",
"Select a timezone": "Выберите часовой пояс",
"Select languages": "Выберите языки",
"Select the activities for which you wish to receive an email or a push notification.": "Выберите действия, для которых вы хотите получать электронные письма или push-уведомления.",
"Send": "",
"Send email": "Отправить электронное письмо",
"Send notification e-mails": "Отправлять уведомления по электронной почте",
"Send password reset": "Запрос на сброс пароля",
@ -785,12 +802,15 @@
"Share": "Поделиться",
"Share this event": "Поделиться этим мероприятием",
"Share this group": "Поделиться этой группой",
"Share this post": "",
"Short bio": "Коротко о себе",
"Show map": "Показать карту",
"Show me where I am": "Показать моё местоположение",
"Show remaining number of places": "Показать оставшееся количество мест",
"Show the time when the event begins": "Показать время начала мероприятия",
"Show the time when the event ends": "Показать время окончания мероприятия",
"Showing events before": "",
"Showing events starting on": "",
"Sign Language": "Сурдоперевод",
"Sign in with": "Войти в систему с",
"Sign up": "Зарегистрироваться",
@ -814,6 +834,7 @@
"Terms": "Условия",
"Terms of service": "Условия обслуживания",
"Text": "Текст",
"That you follow or of which you are a member": "",
"The Big Blue Button video teleconference URL": "URL-адрес видеоконференции Big Blue Button",
"The Google Meet video teleconference URL": "URL-адрес видеоконференции Google Meet",
"The Jitsi Meet video teleconference URL": "URL-адрес видеоконференции Jitsi Meet",
@ -843,12 +864,12 @@
"The event will show as attributed to this group.": "Событие будет отображаться как связанное с этой группой.",
"The event will show as attributed to this profile.": "Мероприятие будет отображаться как связанное с этим профилем.",
"The event will show as attributed to your personal profile.": "Мероприятие будет отображаться как связанное с вашим личным профилем.",
"The event will show the group as organizer.": "На мероприятии группа будет представлена как организатор.",
"The event {event} was created by {profile}.": "Мероприятие {event} было создано пользователем {profile}.",
"The event {event} was deleted by {profile}.": "Мероприятие {event} было удалено пользователем {profile}.",
"The event {event} was updated by {profile}.": "Мероприятие {event} было обновлено пользователем {profile}.",
"The events you created are not shown here.": "Созданные вами мероприятия здесь не отображаются.",
"The geolocation prompt was denied.": "Запрос на геолокацию был отклонен.",
"The group can now be joined by anyone, but new members need to be approved by an administrator.": "",
"The group can now be joined by anyone.": "Теперь каждый может присоединиться к группе.",
"The group can now only be joined with an invite.": "Теперь к группе можно присоединиться только по приглашению.",
"The group will be publicly listed in search results and may be suggested in the explore section. Only public informations will be shown on it's page.": "Группа будет представлена в результатах поиска и может быть предложена в разделе «Обзор». На её странице будет отображаться только общедоступная информация.",
@ -857,7 +878,9 @@
"The group's physical address was changed.": "Физический адрес группы был изменён.",
"The group's short description was changed.": "Краткое описание группы было изменено.",
"The instance administrator is the person or entity that runs this Mobilizon instance.": "Администратор узла - это физическое или юридическое лицо, которое управляет данным узлом Mobilizon.",
"The member was approved": "",
"The member was removed from the group {group}": "Участник удалён из группы {group}",
"The membership request from {profile} was rejected": "",
"The only way for your group to get new members is if an admininistrator invites them.": "Новые участники смогут вступать в вашу группу только по приглашению администратора.",
"The organiser has chosen to close comments.": "Организатор решил отключить комментарии.",
"The page you're looking for doesn't exist.": "Страницы, которую вы ищете, не существует.",
@ -885,8 +908,8 @@
"This group doesn't have a description yet.": "У этой группы ещё нет описания.",
"This group is accessible only through it's link. Be careful where you post this link.": "Эта группа доступна только по её ссылке. Будьте осторожны, когда размещаете эту ссылку.",
"This group is invite-only": "Эта группа только для приглашённых",
"This group was not found": "",
"This identifier is unique to your profile. It allows others to find you.": "Этот идентификатор уникален для вашего профиля. Он даёт возможность другим найти вас.",
"This identity is not a member of any group.": "Этот идентификатор не является членом какой-либо группы.",
"This information is saved only on your computer. Click for details": "Эта информация сохраняется только на вашем компьютере. Нажмите, чтобы узнать подробности",
"This instance hasn't got push notifications enabled.": "На этом узле не включены push-уведомления.",
"This instance isn't opened to registrations, but you can register on other instances.": "Этот узел не позволяет регистрироваться, но вы можете зарегистрироваться на других.",
@ -895,7 +918,11 @@
"This is like your federated username (<code>{username}</code>) for groups. It will allow the group to be found on the federation, and is guaranteed to be unique.": "Подобно федеративному имени пользователя (<code>{username}</code>) для групп. Это дает возможность найти группу во всей сети и гарантирует ее уникальность.",
"This month": "В этом месяце",
"This post is accessible only for members. You have access to it for moderation purposes only because you are an instance moderator.": "Этот пост доступен только для участников. У вас есть доступ к нему для модерации только потому, что вы являетесь модератором узла.",
"This post is accessible only through it's link. Be careful where you post this link.": "",
"This profile is from another instance, the informations shown here may be incomplete.": "",
"This profile was not found": "",
"This setting will be used to display the website and send you emails in the correct language.": "Этот параметр используется для отображения веб-сайта и отправки вам электронных писем на соответствующем языке.",
"This user was not found": "",
"This website isn't moderated and the data that you enter will be automatically destroyed every day at 00:01 (Paris timezone).": "Эта веб-сайт не модерируется, и любые введенные вами данные будут автоматически удаляться каждый день в 00:01 (время по Парижу).",
"This week": "На этой неделе",
"This weekend": "На эти выходные",
@ -911,6 +938,7 @@
"To create and manage multiples identities from a same account": "Для создания и управления несколькими идентификаторами из одной учётной записи",
"To create and manage your events": "Для создания и управления вашими мероприятиями",
"To create or join an group and start organizing with other people": "Создавать группы и присоединяться к ним для объединения с другими людьми",
"To follow groups and be informed of their latest events": "",
"To register for an event by choosing one of your identities": "Чтобы зарегистрироваться на мероприятие, выбрав один из ваших идентификаторов",
"Today": "Сегодня",
"Tomorrow": "Завтра",
@ -933,7 +961,7 @@
"Unable to update the profile. The avatar picture may be too heavy.": "Профиль не может быть обновлен. Аватарка, похоже, слишком большая.",
"Underline": "Нижнее подчёркивание",
"Undo": "Отменить",
"Unfortunately, this instance isn't opened to registrations": "К сожалению, регистрация на этом узле закрыта",
"Unfollow": "",
"Unfortunately, your participation request was rejected by the organizers.": "К сожалению, ваша заявка на участие была отклонена организаторами.",
"Unknown": "Неизвестный",
"Unknown actor": "Неизвестный агент",
@ -941,13 +969,11 @@
"Unknown value for the openness setting.": "Неизвестное значение ограничений доступа.",
"Unlogged participation": "Незарегистрированное участие",
"Unsaved changes": "Несохранённые изменения",
"Unset group": "Отменить выбор группы",
"Unsubscribe to WebPush": "Отписаться от WebPush уведомлений",
"Unsubscribe to browser notifications": "Отписаться от уведомлений в браузере",
"Unsubscribe to browser push notifications": "Отказаться от подписки на push-уведомления браузера",
"Unsuspend": "Отменить приостановку",
"Upcoming": "Предстоящие",
"Upcoming events": "Предстоящие мероприятия",
"Upcoming events from your groups": "",
"Update": "Обновить",
"Update app": "Обновить приложение",
"Update discussion title": "Обновить заголовок обсуждения",
@ -972,6 +998,7 @@
"View all posts": "Просмотреть все публикации",
"View event page": "Просмотреть страницу мероприятия",
"View everything": "Посмотреть всё",
"View full profile": "",
"View less": "Показать меньше",
"View more": "Показать больше",
"View page on {hostname} (in a new window)": "Просмотреть страницу на {hostname} (в новом окне)",
@ -1011,10 +1038,10 @@
"Why create an account?": "Почему стоит создать учётную запись?",
"Will allow to display and manage your participation status on the event page when using this device. Uncheck if you're using a public device.": "Это позволит вам просматривать и управлять своим статусом участия на странице мероприятия при использовании этого устройства. Снимите флажок, если вы используете общедоступное устройство.",
"Within {number} kilometers of {place}": "|В пределах километра от {place}|В пределах {number} километров от {place}",
"Write something…": "Напиши что-нибудь…",
"Yesterday": "Вчера",
"You accepted the invitation to join the group.": "Вы приняли приглашение присоединиться к группе.",
"You added the member {member}.": "Вы добавили участника {member}.",
"You approved {member}'s membership.": "",
"You archived the discussion {discussion}.": "Вы отправили {discussion} обсуждение в архив.",
"You are not an administrator for this group.": "Вы не являетесь администратором этой группы.",
"You are not part of any group.": "Вы не состоите ни в одной группе.",
@ -1025,9 +1052,7 @@
"You can pick your timezone into your preferences.": "Вы можете изменить часовой пояс по своему усмотрению.",
"You can try another search term or drag and drop the marker on the map": "Вы можете попробовать другие критерии поиска или перетащить маркер на карту",
"You can't change your password because you are registered through {provider}.": "Вы не можете изменить свой пароль, потому что вы зарегистрированы через {provider}.",
"You can't use notifications in this browser.": "Вы не можете использовать уведомления в этом браузере.",
"You can't use push notifications in this browser.": "В этом браузере нельзя использовать push-уведомления.",
"You can't use webpush in this browser.": "Вы не можете использовать webpush в этом браузере.",
"You changed your email or password": "Вы изменили свой адрес электронной почты или пароль",
"You created the discussion {discussion}.": "Вы создали обсуждение {discussion}.",
"You created the event {event}.": "Вы создали мероприятие {event}.",
@ -1045,7 +1070,9 @@
"You demoted {member} to simple member.": "Вы понизили статус {member} до обычного участника.",
"You didn't create or join any event yet.": "Вы ещё не создали и не участвовали ни в одном мероприятии.",
"You don't follow any instances yet.": "Вы пока не подписаны ни на один узел.",
"You don't have any upcoming events. Maybe try another filter?": "",
"You excluded member {member}.": "Вы исключили участника {member}.",
"You have attended {count} events in the past.": "",
"You have been disconnected": "Вы были отключены",
"You have been invited by {invitedBy} to the following group:": "Вы были приглашены пользователем {invitedBy} в следующую группу:",
"You have been removed from this group's members.": "Вы были удалены из участников этой группы.",
@ -1061,12 +1088,12 @@
"You moved the folder {resource} to the root folder.": "Вы переместили папку {resource} в корневую папку.",
"You moved the resource {resource} into {new_path}.": "Вы переместили ресурс {resource} в {new_path}.",
"You moved the resource {resource} to the root folder.": "Вы переместили ресурс {resource} в корневую папку.",
"You need to create the group before you create an event.": "Перед созданием мероприятия вам необходимо создать группу.",
"You need to login.": "Вы должны авторизоваться.",
"You posted a comment on the event {event}.": "Вы оставили комментарий к мероприятию {event}.",
"You promoted the member {member} to an unknown role.": "Вы повысили статус {member} до неизвестной роли.",
"You promoted {member} to administrator.": "Вы повысили статус {member} до администратора.",
"You promoted {member} to moderator.": "Вы повысили статус {member} до модератора.",
"You rejected {member}'s membership request.": "",
"You renamed the discussion from {old_discussion} to {discussion}.": "Вы переименовали обсуждение с {old_discussion} в {discussion}.",
"You renamed the folder from {old_resource_title} to {resource}.": "Вы переименовали папку с {old_resource_title} в {resource}.",
"You renamed the resource from {old_resource_title} to {resource}.": "Вы переименовали ресурс с {old_resource_title} в {resource}.",
@ -1085,7 +1112,8 @@
"You were promoted to moderator by {profile}.": "{profile} повысил ваш статус до модератора.",
"You will be able to add an avatar and set other options in your account settings.": "Вы сможете добавить аватар и изменить другие параметры в настройках своей учётной записи.",
"You will be redirected to the original instance": "Вы будете перенаправлены на исходный узел",
"You will find here all the events you have created or of which you are a participant.": "Здесь вы найдёте все мероприятия, которые вы создали или в которых участвовали.",
"You will find here all the events you have created or of which you are a participant, as well as events organized by groups you follow or are a member of.": "",
"You will receive notifications about this group's public activity depending on %{notification_settings}.": "",
"You wish to participate to the following event": "Вы хотите принять участие в следующем мероприятии",
"You'll get a weekly recap every Monday for upcoming events, if you have any.": "Каждый понедельник вы будете получать сводку о предстоящих мероприятиях, в которых вы принимаете участие.",
"You'll need to change the URLs where there were previously entered.": "Вы должны изменить URL-адреса там, где они были введены ранее.",
@ -1105,6 +1133,7 @@
"Your email is being changed": "Ваш адрес электронной почты меняется",
"Your email will only be used to confirm that you're a real person and send you eventual updates for this event. It will NOT be transmitted to other instances or to the event organizer.": "Ваш адрес электронной почты будет использоваться только для подтверждения того, что вы настоящий человек, и для отправки вам возможных новостей об этом мероприятии. Он НЕ будет передан другим узлам или организатору мероприятия.",
"Your federated identity": "Ваш федеративный идентификатор",
"Your membership was approved by {profile}.": "",
"Your participation has been confirmed": "Ваше участие подтверждено",
"Your participation has been rejected": "Ваше участие было отклонено",
"Your participation has been requested": "Вы попросили принять участие",
@ -1128,6 +1157,7 @@
"[This comment has been deleted]": "[Этот комментарий был удалён]",
"[deleted]": "[удалено]",
"a non-existent report": "несуществующий отчет",
"access to the group's private content as well": "",
"and {number} groups": "и {number} групп",
"any distance": "любое расстояние",
"as {identity}": "как {identity}",
@ -1142,6 +1172,7 @@
"explore the events": "просмотреть мероприятия",
"explore the groups": "посмотреть группы",
"full rules": "полные правила",
"group's upcoming public events": "",
"https://mensuel.framapad.org/p/some-secret-token": "https://mensuel.framapad.org/p/секретный-токен",
"iCal Feed": "iCal лента",
"instance rules": "правила узла",
@ -1151,13 +1182,14 @@
"return to the event's page": "вернуться на страницу мероприятия",
"terms of service": "условия обслуживания",
"with another identity…": "с другим идентификатором…",
"your notification settings": "",
"{approved} / {total} seats": "{approved} / {total} мест",
"{available}/{capacity} available places": "Мест нет|{available}/{capacity} свободных мест",
"{count} km": "{count} км",
"{count} members": "Нет участников|Один участник|{count} участников",
"{count} members or followers": "",
"{count} participants": "Нет участников | Один участник | {count} участников",
"{count} requests waiting": "{count} ожидающих рассмотрения заявок",
"{count} team members": "{count} членов команды",
"{folder} - Resources": "{folder} - Ресурсы",
"{group} activity timeline": "История активности {group}",
"{group} events": "{group} мероприятия",
@ -1167,6 +1199,7 @@
"{instanceName} is an instance of the {mobilizon} software.": "{instanceName} - это узел использующий ПО {mobilizon}.",
"{instanceName} is an instance of {mobilizon_link}, a free software built with the community.": "{instanceName} — это узел {mobilizon_link}, бесплатного программного обеспечения, созданного при участии сообщества.",
"{member} accepted the invitation to join the group.": "{member} принял приглашение присоединиться к группе.",
"{member} joined the group.": "",
"{member} rejected the invitation to join the group.": "{member} отклонил приглашение присоединиться к группе.",
"{member} requested to join the group.": "{member} попросил присоединиться к группе.",
"{member} was invited by {profile}.": "{member} был приглашен пользователем {profile}.",
@ -1189,9 +1222,11 @@
"{number} organized events": "Нет организованных мероприятий|Организованно одно мероприятие|Организованно {number} мероприятий",
"{number} participations": "Нет участников|Один участник|{number} участников",
"{number} posts": "Нет публикаций|Одна публикация|{number} публикаций",
"{number} seats left": "",
"{old_group_name} was renamed to {group}.": "{old_group_name} переименована в {group}.",
"{profile} (by default)": "{profile} (по умолчанию)",
"{profile} added the member {member}.": "{profile} добавил участника {member}.",
"{profile} approved {member}'s membership.": "",
"{profile} archived the discussion {discussion}.": "{profile} отправил обсуждение {discussion} в архив.",
"{profile} created the discussion {discussion}.": "{profile} создал обсуждение {discussion}.",
"{profile} created the folder {resource}.": "{profile} создал папку {resource}.",
@ -1213,6 +1248,7 @@
"{profile} promoted {member} to an unknown role.": "{profile} повысил статус {member} до неизвестной роли.",
"{profile} promoted {member} to moderator.": "{profile} повысил статус {member} до модератора.",
"{profile} quit the group.": "{profile} покинул группу.",
"{profile} rejected {member}'s membership request.": "",
"{profile} renamed the discussion from {old_discussion} to {discussion}.": "{profile} переименовал обсуждение с {old_discussion} в {discussion}.",
"{profile} renamed the folder from {old_resource_title} to {resource}.": "{profile} переименовал папку с {old_resource_title} в {resource}.",
"{profile} renamed the resource from {old_resource_title} to {resource}.": "{profile} переименовал ресурс с {old_resource_title} в {resource}.",

View File

@ -4,8 +4,8 @@
"(this folder)": "(ta mapa)",
"(this link)": "(ta povezava)",
"+ Add a resource": "+ Dodaj vir",
"+ Create a post": "",
"+ Create an event": "+ Ustvari dogodek",
"+ Post a public message": "+ Objavi javno sporočilo",
"+ Start a discussion": "+ Začni razpravo",
"<b>{contact}</b> will be displayed as contact.": "<b>{contact}</b> bo prikazan kot stik.|<b>{contact}</b> bodo prikazani kot stiki.",
"@{group}": "@{group}",
@ -14,13 +14,24 @@
"@{username}'s follow request was accepted": "Prošnja za sledenje je bila sprejeta. @{username} vam sedaj sledi",
"@{username}'s follow request was rejected": "Prošnja za sledenje od uporabnika @{username} je bila zavrnjena",
"A cookie is a small file containing information that is sent to your computer when you visit a website. When you visit the site again, the cookie allows that site to recognize your browser. Cookies may store user preferences and other information. You can configure your browser to refuse all cookies. However, this may result in some website features or services partially working. Local storage works the same way but allows you to store more data.": "Piškotek je majhna datoteka, ki vsebuje informacije, ki se pošljejo v vaš računalnik, ko obiščete spletno mesto. Ko znova obiščete spletno mesto, mu piškotek omogoča, da prepozna vaš brskalnik. Piškotki lahko shranjujejo uporabniške nastavitve in druge informacije. Vaš brskalnik lahko nastavite tako, da zavrne vse piškotke, vendar lahko nekatere funkcije ali storitve spletnega mesta delujejo le delno. Lokalni pomnilnik deluje na enak način, vendar omogoča shranjevanje več podatkov.",
"A discussion has been created or updated": "",
"A federated software": "Federirana programska oprema",
"A fediverse account URL to follow for event updates": "",
"A link to a page presenting the event schedule": "",
"A link to a page presenting the price options": "",
"A member has been updated": "",
"A member requested to join one of my groups": "",
"A new version is available.": "",
"A place for your code of conduct, rules or guidelines. You can use HTML tags.": "Prostor za kodeks ravnanja, pravila ali smernice. Uporabite lahko oznake HTML.",
"A place to explain who you are and the things that set your instance apart. You can use HTML tags.": "Prostor, kjer lahko razložite, kdo ste, in stvari, ki ločujejo vaše vozlišče od drugih. Uporabite lahko oznake HTML.",
"A place to publish something to the whole world, your community or just your group members.": "Prostor za objavo nečesa širnemu svetu, skupnosti ali samo članom skupine.",
"A place to store links to documents or resources of any type.": "Prostor za shranjevanje povezav do dokumentov ali virov katere koli vrste.",
"A post has been published": "",
"A post has been updated": "",
"A practical tool": "Praktično orodje",
"A resource has been created or updated": "",
"A short tagline for your instance homepage. Defaults to \"Gather ⋅ Organize ⋅ Mobilize\"": "Kratek slogan za domačo stran vašega vozlišča. Privzeto je »Zberi ⋅ Organiziraj ⋅ Mobiliziraj«",
"A twitter account handle to follow for event updates": "",
"A user-friendly, emancipatory and ethical tool for gathering, organising, and mobilising.": "Uporabniku prijazno, emancipatorno in etično orodje za zbiranje, organiziranje in mobilizacijo.",
"A validation email was sent to {email}": "E-pošta za potrditev je bla poslana na {email}",
"API": "API",
@ -28,15 +39,20 @@
"About": "O Mobilizonu",
"About Mobilizon": "O Mobilizon-u",
"About anonymous participation": "O anonimni udeležbi",
"About instance": "",
"About this event": "O tem dogodku",
"About this instance": "O tem vozlišču",
"About {instance}": "O {instance}",
"Accept": "Sprejmi",
"Accepted": "Sprejet",
"Accessibility": "",
"Accessible only by link": "",
"Accessible only to members": "Dostopno samo članom",
"Accessible through link": "Dostopno prek povezave",
"Account": "Račun",
"Account settings": "",
"Actions": "Dejanja",
"Activate browser push notifications": "",
"Activated": "Dejavno",
"Active": "Aktivno",
"Activity": "Dejavnost",
@ -44,16 +60,20 @@
"Add": "Dodaj",
"Add / Remove…": "Dodaj / odstrani …",
"Add a contact": "Dodaj stik",
"Add a group": "Dodaj supino",
"Add a new post": "Dodaj novo objavo",
"Add a note": "Dodaj opombo",
"Add a todo": "Dodaj opravilo",
"Add an address": "Dodaj naslov",
"Add an instance": "Dodaj vozlišče",
"Add link": "",
"Add new…": "",
"Add picture": "",
"Add some tags": "Dodaj oznake",
"Add to my calendar": "Dodaj v moj koledar",
"Additional comments": "Dodatni komentarji",
"Admin": "Skrbnik",
"Admin dashboard": "",
"Admin settings": "",
"Admin settings successfully saved.": "Nastavitve skrbnika so bile uspešno shranjene.",
"Administration": "Skrbništvo",
"Administrator": "Skrbnik",
@ -62,18 +82,31 @@
"All the places have already been taken": "Vsa mesta so že zasedena",
"Allow all comments from users with accounts": "Dovoli vse komentarje prijavljenih uporabnikov",
"Allow registrations": "Dovoli registracije",
"An URL to an external ticketing platform": "",
"An error has occured while refreshing the page.": "",
"An error has occured. Sorry about that. You may try to reload the page.": "Prišlo je do napake. Se opravičujemo. Stran lahko poskusite ponovno naložiti.",
"An ethical alternative": "Etična alternativa",
"An event I'm going to has been updated": "",
"An event I'm going to has posted an announcement": "",
"An event I'm organizing has a new comment": "",
"An event I'm organizing has a new participation": "",
"An event I'm organizing has a new pending participation": "",
"An event from one of my groups has been published": "",
"An event from one of my groups has been updated or deleted": "",
"An instance is an installed version of the Mobilizon software running on a server. An instance can be run by anyone using the {mobilizon_software} or other federated apps, aka the “fediverse”. This instance's name is {instance_name}. Mobilizon is a federated network of multiple instances (just like email servers), users registered on different instances may communicate even though they didn't register on the same instance.": "Vozlišče je nameščena različica programske opreme Mobilizon, ki se izvaja na strežniku. Vozlišče lahko zažene vsak, ki uporablja {mobilizon_software} ali druge federirane aplikacije, imenovane tudi \"fediverse\". Ime tega vozlišča je {instance_name}. Mobilizon je federirano omrežje več vozlišč (tako kot e-poštni strežniki), uporabniki, registrirani na različnih vozliščih, lahko komunicirajo, čeprav niso registrirani na istem vozlišču.",
"An “application programming interface” or “API” is a communication protocol that allows software components to communicate with each other. The Mobilizon API, for example, can allow third-party software tools to communicate with Mobilizon instances to carry out certain actions, such as posting events on your behalf, automatically and remotely.": "\"Vmesnik za namensko programiranje\" ali \"API\" je komunikacijski protokol, ki komponentam programske opreme omogoča medsebojno komunikacijo. API Mobilizon, na primer, lahko dovoli programskim orodjem tretjih oseb, da komunicirajo z Mobilizon vozlišči, da samodejno in na daljavo izvedejo določena dejanja, na primer objavljanje dogodkov v vašem imenu.",
"And {number} comments": "In {number} komentarjev",
"Announcements and mentions notifications are always sent straight away.": "",
"Anonymous participant": "Anonimni udeleženec",
"Anonymous participants will be asked to confirm their participation through e-mail.": "Anonimni udeleženci bodo morali svojo udeležbo potrditi preko e-pošte.",
"Anonymous participations": "Anonimni udeleženci",
"Any day": "Katerikoli dan",
"Any type": "",
"Anyone can join freely": "Vsak se lahko prosto pridruži",
"Anyone can request being a member, but an administrator needs to approve the membership.": "",
"Anyone wanting to be a member from your group will be able to from your group page.": "Vsakdo, ki želi postati član vaše skupine, bo to lahko storil na vaši strani skupine.",
"Application": "Program",
"Approve member": "",
"Are you really sure you want to delete your whole account? You'll lose everything. Identities, settings, events created, messages and participations will be gone forever.": "Ali ste prepričani, da želite izbrisati celoten račun? Izgubili boste vse. Identitete, nastavitve, ustvarjeni dogodki, sporočila in udeležbe bodo za vedno izbrisane.",
"Are you sure you want to <b>completely delete</b> this group? All members - including remote ones - will be notified and removed from the group, and <b>all of the group data (events, posts, discussions, todos…) will be irretrievably destroyed</b>.": "Ali ste prepričani, da želite <b>popolnoma izbrisati</b> to skupino? Vsi člani - vključno z oddaljenimi - bodo obveščeni in odstranjeni iz skupine, <b>vsi podatki skupine (dogodki, objave, razprave, zapiski…) pa bodo nepovratno uničeni</b>.",
"Are you sure you want to <b>delete</b> this comment? This action cannot be undone.": "Ali ste prepričani, da želite <b>izbrisati</b> ta komentar? Tega dejanja ni mogoče razveljaviti.",
@ -85,24 +118,39 @@
"Are you sure you want to cancel your participation at event \"{title}\"?": "Ali ste prepričani, da želite preklicati udeležbo na dogodku \"{title}\"?",
"Are you sure you want to delete this entire discussion?": "Ste prepričani, da želite izbrisati celotno razpravo?",
"Are you sure you want to delete this event? This action cannot be reverted.": "Ali ste prepričani, da želite izbrisati ta dogodek? Tega dejanja ni mogoče razveljaviti.",
"Are you sure you want to delete this post? This action cannot be reverted.": "",
"Are you sure you want to leave the group {groupName}? You'll loose access to this group's private content. This action cannot be undone.": "",
"As the event organizer has chosen to manually validate participation requests, your participation will be really confirmed only once you receive an email stating it's being accepted.": "Ker se je organizator dogodka odločil za ročno preverjanje prošenj za udeležbo, bo vaša udeležba potrjena šele, ko boste prejeli potrditveno e-pošto.",
"Ask your instance admin to {enable_feature}.": "",
"Assigned to": "Dodeljeno",
"Atom feed for events and posts": "Vir Atom za dogodke in objave",
"Attending": "",
"Avatar": "Podoba",
"Back to group list": "",
"Back to previous page": "Nazaj na prejšnjo stran",
"Back to profile list": "",
"Back to top": "",
"Back to user list": "",
"Banner": "Pasica",
"Before you can login, you need to click on the link inside it to validate your account.": "Preden se lahko prijavite, morate klikniti na povezavo znotraj njega, da potrdite svoj račun.",
"Begins on": "Začne se v",
"Big Blue Button": "",
"Bold": "Krepko",
"By {username}": "Od {username}",
"Booking": "",
"Breadcrumbs": "",
"Browser notifications": "",
"Bullet list": "",
"By others": "Od drugih",
"By {author}": "Od {author}",
"By {group}": "Od {group}",
"By {username}": "Od {username}",
"Can be an email or a link, or just plain text.": "Lahko je e-pošta ali povezava ali preprosto besedilo.",
"Cancel": "Prekliči",
"Cancel anonymous participation": "Prekliči anonimno udeležbo",
"Cancel creation": "Prekliči ustvarjanje",
"Cancel discussion title edition": "",
"Cancel edition": "Prekliči izdajo",
"Cancel follow request": "",
"Cancel membership request": "",
"Cancel my participation request…": "Prekliči mojo prošnjo za udeležbo …",
"Cancel my participation…": "Prekliči mojo udeležbo …",
"Cancelled": "Prekinjeno",
@ -113,16 +161,21 @@
"Change my password": "Spremeni moje geslo",
"Change timezone": "Spremeni časovni pas",
"Check your inbox (and your junk mail folder).": "Preverite mapo »Prejeto« (in mapo z neželeno pošto).",
"Choose the source of the instance's Privacy Policy": "",
"Choose the source of the instance's Terms": "",
"City or region": "Mesto ali regija",
"Clear": "Izbriši",
"Clear address field": "",
"Clear date filter field": "",
"Clear participation data for all events": "Izbriši podatke o udeležbi za vse dogodke",
"Clear participation data for this event": "Izbriši podatke o udeležbi za ta dogodek",
"Clear timezone field": "",
"Click for more information": "Klikni za več informacij",
"Click to select": "Kliknite za izbiro",
"Click to upload": "Kliknite za pošiljanje",
"Close": "Zapri",
"Close comments for all (except for admins)": "Zapri komentarje za vse (razen za skrbnike)",
"Closed": "Zaprto",
"Comment body": "",
"Comment deleted": "Komentar je izbrisan",
"Comment from @{username} reported": "Prijavljen je bil komentar uporabnika @{username}",
"Comment text can't be empty": "Besedilo komentarja ne sme biti prazno",
@ -130,6 +183,7 @@
"Comments are closed for everybody else.": "Komentarji so zaprti za vse ostale.",
"Confirm my participation": "Potrdi mojo udeležbo",
"Confirm my particpation": "Potrdi mojo udeležbo",
"Confirm participation": "",
"Confirmed": "Potrjeno",
"Confirmed at": "Potrjeno ob",
"Confirmed: Will happen": "Potrjeno: Zgodilo se bo",
@ -137,6 +191,7 @@
"Contact": "Kontakt",
"Continue editing": "Nadaljuj z urejanjem",
"Cookies and Local storage": "Piškotki in lokalna shramba",
"Copy URL to clipboard": "",
"Copy details to clipboard": "Kopiraj podrobnosti v odložišče",
"Country": "Država",
"Create": "Ustvari",
@ -151,8 +206,10 @@
"Create a pad": "Ustvari beležko",
"Create a videoconference": "Ustvari videokonferenco",
"Create an account": "Ustvari račun",
"Create discussion": "",
"Create event": "Ustvari dogodek",
"Create group": "Ustvari skupino",
"Create identity": "",
"Create my event": "Ustvari moj dogodek",
"Create my group": "Ustvari mojo skupino",
"Create my profile": "Ustvari moj profil",
@ -175,6 +232,7 @@
"Date and time settings": "Nastavitve datuma in ure",
"Date parameters": "Parametri datuma",
"Decline": "Zavrni",
"Decrease": "",
"Default": "Privzeto",
"Default Mobilizon privacy policy": "Privzeti pravilnik o zasebnosti za Mobilizon",
"Default Mobilizon terms": "Privzeti pogoji za Mobilizon",
@ -200,9 +258,11 @@
"Deleting your Mobilizon account": "Brisanje računa Mobilizon",
"Demote": "Degradiraj",
"Description": "Opis",
"Details": "",
"Didn't receive the instructions?": "Niste prejeli navodil?",
"Disabled": "Onemogočeno",
"Discussions": "Razprave",
"Discussions list": "",
"Display name": "Prikazno ime",
"Display participation price": "Prikaži ceno udeležbe",
"Displayed nickname": "Prikazan vzdevek",
@ -210,6 +270,7 @@
"Do not receive any mail": "Ne prejemaj nobene e-pošte",
"Do you wish to {create_event} or {explore_events}?": "Želite {create_event} ali {explore_events}?",
"Do you wish to {create_group} or {explore_groups}?": "Želite {create_group} ali {explore_groups}?",
"Does the event needs to be confirmed later or is it cancelled?": "",
"Domain": "Domena",
"Draft": "Osnutek",
"Drafts": "Osnutki",
@ -219,14 +280,18 @@
"Edit post": "Uredi objavo",
"Edit profile {profile}": "Uredi profil {profile}",
"Edited {ago}": "Urejeno {ago}",
"Edited {relative_time} ago": "",
"Eg: Stockholm, Dance, Chess…": "Npr.: Stockholm, ples, šah …",
"Either on the {instance} instance or on another instance.": "Ali na vozlišču {instance}, ali na drugem.",
"Either the account is already validated, either the validation token is incorrect.": "Ali je račun že potrjen, ali je žeton za preverjanje veljavnosti napačen.",
"Either the email has already been changed, either the validation token is incorrect.": "Ali je bil e-poštni naslov že spremenjen, ali je žeton za preverjanje veljavnosti napačen.",
"Either the participation request has already been validated, either the validation token is incorrect.": "Ali je bila prošnja za udeležbo že potrjena, ali je žeton za preverjanje veljavnosti napačen.",
"Element title": "",
"Element value": "",
"Email": "E-pošta",
"Email address": "E-poštni naslov",
"Email notifications": "Obvestila po e-pošti",
"Email validate": "",
"Emails usually don't contain capitals, make sure you haven't made a typo.": "",
"Enabled": "Omogočeno",
"Ends on…": "Se konča …",
"Enter the link URL": "Vnesite URL povezave",
@ -242,16 +307,24 @@
"Error while login with {provider}. Retry or login another way.": "Napaka pri prijavi s {provider}. Poskusite znova ali se prijavite na drug način.",
"Error while login with {provider}. This login provider doesn't exist.": "Napaka pri prijavi s {provider}. Ta ponudnik ne obstaja.",
"Error while reporting group {groupTitle}": "Napaka pri poročanju skupine {groupTitle}",
"Error while subscribing to push notifications": "",
"Error while suspending group": "",
"Error while updating participation status inside this browser": "",
"Error while validating account": "Napaka pri preverjanju veljavnosti računa",
"Error while validating participation request": "Napaka pri preverjanju veljavnosti računa",
"Etherpad notes": "",
"Ethical alternative to Facebook events, groups and pages, Mobilizon is a <b>tool designed to serve you</b>. Period.": "Etična alternativa dogodkom, skupinam in stranem na Facebooku, Mobilizon je <b>orodje, namenjeno vam</b>. Pika.",
"Event": "Dogodek",
"Event URL": "",
"Event already passed": "Dogodek je že minil",
"Event cancelled": "Dogodek preklican",
"Event creation": "Ustvarjanje dogodkov",
"Event description body": "",
"Event edition": "Izdaja dogodka",
"Event list": "Seznam dogodkov",
"Event metadata": "",
"Event page settings": "Nastavitve dogodka",
"Event timezone will default to the timezone of the event's address if there is one, or to your own timezone setting.": "",
"Event to be confirmed": "Dogodek bo potrjen",
"Event {eventTitle} deleted": "Dogodek {eventTitle} je izbrisan",
"Event {eventTitle} reported": "Dogodek {eventTitle} je prijavljen",
@ -263,39 +336,60 @@
"Ex: someone@mobilizon.org": "Npr.: nekdo@mobilizon.org",
"Explore": "Razišči",
"Explore events": "Razišči dogodke",
"Export": "",
"Failed to get location.": "",
"Failed to save admin settings": "Skrbniških nastavitev ni bilo mogoče shraniti",
"Featured events": "Izbrani dogodki",
"Federated Group Name": "Ime federirane skupine",
"Federation": "Federacija",
"Fediverse account": "",
"Fetch more": "Pridobi več",
"Filter": "",
"Filter by name": "",
"Filter by profile or group name": "",
"Find an address": "Poišči naslov",
"Find an instance": "Poišči vozlišče",
"Find another instance": "Poišči drugo vozlišče",
"Find or add an element": "",
"First steps": "",
"Follow": "",
"Follower": "Sledilec",
"Followers": "Sledilci",
"Followers will receive new public events and posts.": "Sledilci bodo prejemali nove javne dogodke in objave.",
"Following the group will allow you to be informed of the {group_upcoming_public_events}, whereas joining the group means you will {access_to_group_private_content_as_well}, including group discussions, group resources and members-only posts.": "",
"Followings": "Sledi",
"For instance: London": "Na primer: Ljubljana",
"For instance: London, Taekwondo, Architecture…": "Na primer: London, taekwondo, arhitektura …",
"Forgot your password ?": "Ste pozabili geslo?",
"Forgot your password?": "Ste pozabili geslo?",
"Framadate poll": "",
"From my groups": "",
"From the {startDate} at {startTime} to the {endDate}": "Od {startDate} ob {startTime}, do {endDate}",
"From the {startDate} at {startTime} to the {endDate} at {endTime}": "Od {startDate} ob {startTime}, do {endDate} ob {endTime}",
"From the {startDate} to the {endDate}": "Od {startDate}, do {endDate}",
"From yourself": "Od sebe",
"Fully accessible with a wheelchair": "",
"Gather ⋅ Organize ⋅ Mobilize": "Zberi ⋅ Organiziraj ⋅ Mobiliziraj",
"General": "Splošno",
"General information": "Splošne informacije",
"General settings": "",
"Geolocation was not determined in time.": "",
"Getting location": "Pridobivanje lokacije",
"Getting there": "Približujemo se",
"Glossary": "Slovar",
"Go": "Pojdi",
"Go to the event page": "Pojdi na stran dogodka",
"Google Meet": "",
"Group": "",
"Group Followers": "Sledilci skupine",
"Group Members": "Člani skupine",
"Group URL": "",
"Group activity": "",
"Group address": "Naslov skupine",
"Group description body": "",
"Group display name": "Prikazno ime skupine",
"Group name": "Ime skupine",
"Group profiles": "",
"Group settings": "Nastavitve skupine",
"Group settings saved": "Nastavitve skupine so shranjene",
"Group short description": "Kratek opis skupine",
@ -305,10 +399,14 @@
"Groups": "Skupine",
"Groups are not enabled on this instance.": "Skupine na tem vozlišču niso omogočene.",
"Groups are spaces for coordination and preparation to better organize events and manage your community.": "Skupine so prostori za usklajevanje in priprave za boljšo organizacijo dogodkov in upravljanje vaše skupnosti.",
"Heading Level 1": "",
"Heading Level 2": "",
"Heading Level 3": "",
"Headline picture": "Naslovna slika",
"Hide replies": "Skrij odgovore",
"Home": "Domov",
"Home to {number} users": "Dom {number} uporabnikom",
"Homepage": "",
"Hourly email summary": "Urni povzetek po e-pošti",
"I agree to the {instanceRules} and {termsOfService}": "Strinjam se s {instanceRules} in {termsOfService}",
"I create an identity": "Ustvarim identiteto",
@ -318,6 +416,8 @@
"I participate": "Sodelujem",
"I want to allow people to participate without an account.": "Ljudem želim omogočiti udeležbo brez računa.",
"I want to approve every participation request": "Želim odobriti vsako prošnjo za udeležbo",
"I've been mentionned in a comment under an event": "",
"I've been mentionned in a group discussion": "",
"ICS feed for events": "Vir ICS za dogodke",
"ICS/WebCal Feed": "Vir ICS/WebCal",
"Identities": "Identitete",
@ -330,7 +430,11 @@
"If you are being asked for your federated indentity, it's composed of your username and your instance. For instance, the federated identity for your first profile is:": "Če vas prosijo za federirano identiteto, je sestavljena iz vašega uporabniškega imena in vozlišča. Na primer, federirana identiteta za vaš prvi profil je:",
"If you have opted for manual validation of participants, Mobilizon will send you an email to inform you of new participations to be processed. You can choose the frequency of these notifications below.": "Če ste se odločili za ročno potrjevanje udeležencev, vam bo Mobilizon poslal e-pošto o novih udeležbah, ki jih je treba obravnavati. Pogostost teh obvestil lahko izberete spodaj.",
"If you want, you may send a message to the event organizer here.": "Če želite, lahko tukaj pošljete sporočilo organizatorju dogodka.",
"Ignore": "",
"In person": "",
"In the following context, an application is a software, either provided by the Mobilizon team or by a 3rd-party, used to interact with your instance.": "V naslednjem kontekstu je program programska oprema, ki jo je zagotovila skupina Mobilizon ali neodvisna stranka in se uporablja za interakcijo z vašim vozliščem.",
"In the past": "",
"Increase": "",
"Instance": "Vozlišče",
"Instance Long Description": "Daljši opis vozlišča",
"Instance Name": "Ime vozlišča",
@ -352,13 +456,18 @@
"Instances": "Vozlišča",
"Instances following you": "Vozlišča, ki vam sledijo",
"Instances you follow": "Vozlišča, katerim sledite",
"Integrate this event with 3rd-party tools and show metadata for the event.": "",
"Interact": "",
"Interact with a remote content": "",
"Invite a new member": "Povabi novega člana",
"Invite member": "Povabi člana",
"Invited": "Povabljeni",
"It is possible that the content is not accessible on this instance, because this instance has blocked the profiles or groups behind this content.": "Možno je, da vsebina na tem vozlišču ni dostopna, ker je to vozlišče blokiralo profile ali skupine, ki stojijo za to vsebino.",
"Italic": "Ležeče",
"Jitsi Meet": "",
"Join <b>{instance}</b>, a Mobilizon instance": "Pridruži se <b>{instance}</b>, ki je Mobilizon vozlišče",
"Join group": "Pridruži se skupini",
"Join group {group}": "",
"Keep the entire conversation about a specific topic together on a single page.": "Celoten pogovor o določeni temi naj bo na eni strani.",
"Key words": "Ključne besede",
"Language": "Jezik",
@ -374,16 +483,19 @@
"Learn more about {instance}": "Več o {instance}",
"Leave": "Zapusti",
"Leave event": "Zapusti dogodek",
"Leave group": "",
"Leaving event \"{title}\"": "Zapuščanje dogodka »{title}«",
"Legal": "Pravno",
"Let's define a few settings": "Določimo nekaj nastavitev",
"License": "Licenca",
"Limited number of places": "Omejeno število mest",
"List title": "Naslov seznama",
"Live": "",
"Load more": "Naloži več",
"Load more activities": "Naloži več dejavnosti",
"Loading comments…": "Nalaganje komentarjev…",
"Local": "Lokalno",
"Local time ({timezone})": "",
"Locality": "Okolica",
"Location": "Lokacija",
"Log in": "Vpiši se",
@ -399,7 +511,10 @@
"Mark as resolved": "Označi kot razrešeno",
"Member": "Član",
"Members": "Člani",
"Members-only post": "",
"Mentions": "",
"Message": "Sporočilo",
"Microsoft Teams": "",
"Mobilizon": "Mobilizon",
"Mobilizon is a federated network. You can interact with this event from a different server.": "Mobilizon je federirano omrežje. S tem dogodkom lahko komunicirate z drugega strežnika.",
"Mobilizon is a federated software, meaning you can interact - depending on your admin's federation settings - with content from other instances, such as joining groups or events that were created elsewhere.": "Mobilizon je federirana programska oprema, kar pomeni, da lahko komunicirate (odvisno od skrbniških nastavitev federacije) z vsebino iz drugih vozlišč, na primer z združevanjem skupin ali dogodkov, ki so bili ustvarjeni drugje.",
@ -409,12 +524,15 @@
"Mobilizon uses a system of profiles to compartiment your activities. You will be able to create as many profiles as you want.": "Mobilizon uporablja sistem profilov za ločevanje vaših dejavnosti. Ustvarili boste lahko poljubno število profilov.",
"Mobilizon version": "Mobilizon različica",
"Mobilizon will send you an email when the events you are attending have important changes: date and time, address, confirmation or cancellation, etc.": "Mobilizon vam bo poslal e-pošto, ko se bodo dogodki, ki se jih udeležujete, spremenili: datum in čas, naslov, potrditev ali odpoved itd.",
"Moderate new members": "",
"Moderated comments (shown after approval)": "Moderirani komentarji (prikazani po odobritvi)",
"Moderation": "Moderiranje",
"Moderation log": "Dnevnik moderiranja",
"Moderation logs": "",
"Moderator": "Moderator",
"Move": "Premakni",
"Move \"{resourceName}\"": "Premakni \"{resourceName}\"",
"Move resource to the root folder": "",
"Move resource to {folder}": "Premakni vir v {folder}",
"My account": "Moj račun",
"My events": "Moji dogodki",
@ -422,6 +540,7 @@
"My identities": "Moje identitete",
"NOTE! The default terms have not been checked over by a lawyer and thus are unlikely to provide full legal protection for all situations for an instance admin using them. They are also not specific to all countries and jurisdictions. If you are unsure, please check with a lawyer.": "OPOMBA! Privzetih pogojev ni preveril odvetnik in zato verjetno ne bodo zagotovili popolnega pravnega varstva za vse primere, ki jih uporablja skrbnika vozlišča. Prav tako niso značilne za vse države in jurisdikcije. Če niste prepričani, se obrnite na odvetnika.",
"Name": "Ime",
"Navigated to {pageTitle}": "",
"New discussion": "Nova razprava",
"New email": "Nov e-poštni naslov",
"New folder": "Nova mapa",
@ -444,6 +563,8 @@
"No events found": "Najdenih ni nobenih dogodkov",
"No follower matches the filters": "Noben sledilec ne ustreza filtrom",
"No group found": "Najdena ni nobena skupina",
"No group matches the filters": "",
"No group member found": "",
"No groups found": "Najdenih ni nobenih skupin",
"No information": "Ni informacij",
"No instance follows your instance yet.": "Nobeno vozlišče še ne sledi vašemu.",
@ -453,34 +574,40 @@
"No languages found": "Ni najdenih jezikov",
"No member matches the filters": "Noben član se ne ujema s filtri",
"No members found": "Ni najdenih članov",
"No memberships found": "",
"No message": "Ni sporočil",
"No moderation logs yet": "Nobenega dnevnika moderiranja še ni",
"No more activity to display.": "Ni več dejavnosti za prikaz.",
"No one is participating|One person participating|{going} people participating": "Nihče se ne udeležuje|Ena oseba se udeležuje|{going} oseb se udeležuje",
"No open reports yet": "Še ni odprtih poročil",
"No organized events found": "",
"No organized events listed": "",
"No participant matches the filters": "Noben udeleženec se ne ujema s filtri",
"No participant to approve|Approve participant|Approve {number} participants": "Nobenega udeleženca za odobritev|Odobri udeleženca|Odobri {number} udeležencev",
"No participant to reject|Reject participant|Reject {number} participants": "Nobenega udeleženca za zavrnitev|Zavrni udeleženca|Zavrni {number} udeležencev",
"No participations listed": "",
"No posts found": "Ni najdenih objav",
"No posts yet": "Nobenih objav",
"No profile matches the filters": "Noben profil se ne ujema s filtri",
"No profiles found": "Ni najdenih profilov",
"No public upcoming events": "Ni javnih prihajajočih dogodkov",
"No resolved reports yet": "Še ni razrešenih poročil",
"No resources in this folder": "V tej mapi ni virov",
"No resources selected": "Izbran ni noben vir|En vir je izbran|{count} virov je izbranih",
"No resources yet": "Nobenih virov",
"No results for \"{queryText}\"": "Ni rezultatov za \"{queryText}\"",
"No results for {search}": "",
"No rules defined yet.": "Pravila še niso določena.",
"None": "Nihče",
"Not accessible with a wheelchair": "",
"Not approved": "Ni odobreno",
"Not confirmed": "Ni potrjeno",
"Notes": "Opombe",
"Nothing to see here": "Tukaj ni ničesar za videti",
"Notification before the event": "Obvestilo pred dogodkom",
"Notification on the day of the event": "Obvestilo na dan dogodka",
"Notification settings": "",
"Notifications": "Obvestila",
"Notifications for manually approved participations to an event": "Obvestila o ročno odobrenih udeležbah na dogodku",
"Notify participants": "",
"Now, create your first profile:": "Ustvarite svoj prvi profil:",
"Number of places": "Število mest",
"OK": "V redu",
@ -489,18 +616,23 @@
"On {date} ending at {endTime}": "{date}, do {endTime}",
"On {date} from {startTime} to {endTime}": "{date}, od {startTime} do {endTime}",
"On {date} starting at {startTime}": "{date}, ob {startTime}",
"On {instance}": "Na {instance}",
"On {instance} and other federated instances": "",
"Online": "",
"Online ticketing": "",
"Only accessible through link": "Dostopno samo prek povezave",
"Only accessible through link (private)": "Dostopno samo prek povezave (zasebno)",
"Only accessible to members of the group": "Dostopno samo članom skupine",
"Only alphanumeric lowercased characters and underscores are supported.": "Podprte so samo alfanumerične male črke in podčrtaji.",
"Only group members can access discussions": "Do razprav lahko dostopajo samo člani skupine",
"Only group moderators can create, edit and delete events.": "",
"Only group moderators can create, edit and delete posts.": "Samo moderatorji skupin lahko ustvarjajo, urejajo in brišejo objave.",
"Only registered users may fetch remote events from their URL.": "",
"Open": "Odpri",
"Open a topic on our forum": "Odpri temo na forumu",
"Open an issue on our bug tracker (advanced users)": "Odprite težavo v našem programu za sledenje hroščev (napredni uporabniki)",
"Opened reports": "Odprta poročila",
"Or": "Ali",
"Ordered list": "",
"Organized": "Organizirano",
"Organized by": "Organizira",
"Organized by {name}": "Organizira {name}",
@ -508,12 +640,15 @@
"Organizer notifications": "Obvestila organizatorja",
"Organizers": "Organizatorji",
"Other": "Ostalo",
"Other actions": "",
"Other notification options:": "Druge možnosti obveščanja:",
"Other software may also support this.": "To lahko podpira tudi druga programska oprema.",
"Otherwise this identity will just be removed from the group administrators.": "V nasprotnem primeru bo ta identiteta odstranjena samo iz skupine skrbnikov.",
"Page": "Stran",
"Page limited to my group (asks for auth)": "Stran je omejena na mojo skupino (prosi za avtorizacijo)",
"Page not found": "",
"Parent folder": "Nadrejena mapa",
"Partially accessible with a wheelchair": "",
"Participant": "Udeleženec",
"Participants": "Udeleženci",
"Participate": "Udeleži se",
@ -522,15 +657,18 @@
"Participation confirmation": "Potrditev udeležbe",
"Participation notifications": "Obvestila o udeležbi",
"Participation requested!": "Udeležba zahtevana!",
"Participation with account": "",
"Participation without account": "",
"Participations": "Udeležbe",
"Password": "Geslo",
"Password (confirmation)": "Geslo (potrditev)",
"Password reset": "Ponastavitev gesla",
"Past events": "Pretekli dogodki",
"PeerTube live": "",
"PeerTube replay": "",
"Pending": "Na čakanju",
"Personal feeds": "Osebni viri",
"Pick": "Izberi",
"Pick a group": "Izberi skupino",
"Pick a profile or a group": "Izberi profil ali skupino",
"Pick an identity": "Izberi si identiteto",
"Pick an instance": "Izberi vozlišče",
@ -542,14 +680,21 @@
"Please make sure the address is correct and that the page hasn't been moved.": "Prepričajte se, da je naslov pravilen in da stran ni bila premaknjena.",
"Please read the {fullRules} published by {instance}'s administrators.": "Preberite {fullRules}, ki so jih objavili skrbniki vozlišča {instance}.",
"Post": "Objava",
"Post URL": "",
"Post a comment": "Objavi komentar",
"Post a reply": "Objavi odgovor",
"Post body": "",
"Post {eventTitle} reported": "",
"Postal Code": "Poštna številka",
"Posts": "Objave",
"Powered by Mobilizon": "",
"Powered by {mobilizon}. © 2018 - {date} The Mobilizon Contributors - Made with the financial support of {contributors}.": "Poganja {mobilizon}. © 2018 - {date} Mobilizon sodelavci - Izdelano s finančno podporo {contributors}.",
"Preferences": "Možnosti",
"Previous": "Prejšnje",
"Previous month": "",
"Previous page": "Prejšnja stran",
"Price sheet": "",
"Privacy": "",
"Privacy Policy": "Pravilnik o zasebnosti",
"Privacy policy": "Politika zasebnosti",
"Private event": "Zasebni dogodek",
@ -566,14 +711,22 @@
"Public feeds": "Javni viri",
"Public iCal Feed": "Javni vir iCal",
"Public page": "Javna stran",
"Public preview": "",
"Publication date": "Datum objave",
"Publish": "Objavi",
"Published by {name}": "",
"Published events with <b>{comments}</b> comments and <b>{participations}</b> confirmed participations": "Objavljeni dogodki s <b>{comments}</b> komentarji in <b>{participations}</b> potrjenimi udeležbami",
"Push": "",
"Quote": "",
"RSS/Atom Feed": "Vir RSS/Atom",
"Radius": "Območje",
"Recap every week": "Povzetek vsak teden",
"Receive one email for each activity": "",
"Receive one email per request": "Na zahtevo prejmi eno e-pošto",
"Redirecting in progress…": "",
"Redirecting to Mobilizon": "",
"Redirecting to content…": "Preusmeritev na vsebino …",
"Redo": "",
"Refresh profile": "Osveži profil",
"Regenerate new links": "Obnovi nove povezave",
"Region": "Regija",
@ -586,18 +739,22 @@
"Registrations": "Registracije",
"Registrations are restricted by allowlisting.": "Registracije so omejene s seznamom dovoljenj.",
"Reject": "Zavrni",
"Reject member": "",
"Rejected": "Zavrnjeno",
"Remember my participation in this browser": "Zapomni si moje udeležbe v tem brskalniku",
"Remove": "Odstrani",
"Remove link": "",
"Rename": "Preimenuj",
"Rename resource": "Preimenuj vir",
"Reopen": "Ponovno odprto",
"Replay": "",
"Reply": "Odgovori",
"Report": "Prijavi",
"Report #{reportNumber}": "Prijava #{reportNumber}",
"Report this comment": "Prijavi ta komentar",
"Report this event": "Prijavi ta dogodek",
"Report this group": "Prijavi to skupino",
"Report this post": "",
"Reported": "Prijavljeno",
"Reported by": "Prijavil",
"Reported by someone on {domain}": "Prijavil nekdo na {domain}",
@ -605,9 +762,13 @@
"Reported group": "Skupina je prijavljena",
"Reported identity": "Prijavljena identiteta",
"Reports": "Prijave",
"Reports list": "",
"Request for participation confirmation sent": "Prošnja za potrditev udeležbe je poslana",
"Resend confirmation email": "Ponovno pošljite potrditveno e-pošto",
"Resent confirmation email": "",
"Reset": "",
"Reset my password": "Ponastavi geslo",
"Reset password": "",
"Resolved": "Razrešeno",
"Resource provided is not an URL": "Navedeni vir ni URL",
"Resources": "Viri",
@ -620,37 +781,52 @@
"SSL/TLS": "SSL/TLS",
"Save": "Shrani",
"Save draft": "Shrani osnutek",
"Schedule": "",
"Search": "Poišči",
"Search events, groups, etc.": "Poišči dogodke, skupine itd.",
"Searching…": "Iskanje…",
"Search…": "Iskanje…",
"Select a language": "Izberi jezik",
"Select a radius": "Izberite območje",
"Select a timezone": "Izberi časovni pas",
"Select languages": "Izberi jezike",
"Select the activities for which you wish to receive an email or a push notification.": "",
"Send": "",
"Send email": "Pošlji e-pošto",
"Send notification e-mails": "",
"Send password reset": "",
"Send the confirmation email again": "Ponovno pošlji potrditveno e-pošto",
"Send the report": "Pošlji prijavo",
"Set an URL to a page with your own privacy policy.": "Nastavite URL strani s lastnim pravilnikom o zasebnosti.",
"Set an URL to a page with your own terms.": "Nastavi URL na stran s svojimi pogoji.",
"Settings": "Nastavitve",
"Share": "",
"Share this event": "Daj dogodek v skupno rabo",
"Share this group": "",
"Share this post": "",
"Short bio": "Kratka biografija",
"Show map": "Pokaži zemljevid",
"Show me where I am": "",
"Show remaining number of places": "Prikaži preostalo število mest",
"Show the time when the event begins": "Prikaži uro, ko se dogodek začne",
"Show the time when the event ends": "Prikaži uro, ko se dogodek konča",
"Showing events before": "",
"Showing events starting on": "",
"Sign Language": "",
"Sign in with": "Prijavi se z",
"Sign up": "Registracija",
"Since you are a new member, private content can take a few minutes to appear.": "Ker ste novi član, lahko traja nekaj minut, da se prikaže zasebna vsebina.",
"Skip to main content": "",
"Social": "",
"Some terms, technical or otherwise, used in the text below may cover concepts that are difficult to grasp. We have provided a glossary here to help you understand them better:": "Nekateri izrazi, tehnični ali drugačni, uporabljeni v spodnjem besedilu, lahko zajemajo pojme, ki jih je težko razumeti. Tukaj smo pripravili slovar, ki vam bo pomagal bolje jih razumeti:",
"Starts on…": "Začne se…",
"Status": "Stanje",
"Street": "Ulica",
"Submit": "Pošlji",
"Subtitles": "",
"Suspend": "Suspendiraj",
"Suspend group": "Začasno ustavi skupino",
"Suspended": "Suspendirano",
"Tag search": "",
"Task lists": "Seznami nalog",
"Technical details": "Tehnične podrobnosti",
"Tentative": "Začasno",
@ -658,14 +834,29 @@
"Terms": "Pogoji",
"Terms of service": "Pogoji storitve",
"Text": "Tekst",
"That you follow or of which you are a member": "",
"The Big Blue Button video teleconference URL": "",
"The Google Meet video teleconference URL": "",
"The Jitsi Meet video teleconference URL": "",
"The Microsoft Teams video teleconference URL": "",
"The URL of a pad where notes are being taken collaboratively": "",
"The URL of a poll where the choice for the event date is happening": "",
"The URL where the event can be watched live": "",
"The URL where the event live can be watched again after it has ended": "",
"The Zoom video teleconference URL": "",
"The account's email address was changed. Check your emails to verify it.": "E-poštni naslov računa je bil spremenjen. Poglejte e-pošto, da preverite naslov.",
"The actual number of participants may differ, as this event is hosted on another instance.": "Dejansko število udeležencev se lahko razlikuje, saj ta dogodek gosti drugo vozlišče.",
"The content came from another server. Transfer an anonymous copy of the report?": "Vsebina je prišla z drugega strežnika. Želite prenesti anonimno kopijo poročila?",
"The draft event has been updated": "Osnutek dogodka je posodobljen",
"The event has a sign language interpreter": "",
"The event has been created as a draft": "Dogodek je ustvarjen kot osnutek",
"The event has been published": "Dogodek je objavljen",
"The event has been updated": "Dogodek je posodobljen",
"The event has been updated and published": "Dogodek je posodobljen in objavljen",
"The event hasn't got a sign language interpreter": "",
"The event is fully online": "",
"The event live video contains subtitles": "",
"The event live video does not contain subtitles": "",
"The event organiser has chosen to validate manually participations. Do you want to add a little note to explain why you want to participate to this event?": "Organizator dogodka se je odločil, da ročno potrdi udeležbe. Ali želite dodati kratko opombo, da razložite, zakaj želite sodelovati na tem dogodku?",
"The event organizer didn't add any description.": "Organizator dogodka ni dodal nobenega opisa.",
"The event organizer manually approves participations. Since you've chosen to participate without an account, please explain why you want to participate to this event.": "Organizator dogodka ročno odobri udeležbe. Ker ste se odločili za udeležbo brez računa, pojasnite, zakaj želite sodelovati na tem dogodku.",
@ -673,11 +864,12 @@
"The event will show as attributed to this group.": "Dogodek bo prikazan kot dodeljen tej skupini.",
"The event will show as attributed to this profile.": "Dogodek bo prikazan kot dodeljen temu profilu.",
"The event will show as attributed to your personal profile.": "Dogodek bo prikazan kot pripisan vašemu osebnemu profilu.",
"The event will show the group as organizer.": "Na dogodku bo skupina prikazana kot organizator.",
"The event {event} was created by {profile}.": "Dogodek {event} je ustvaril/a {profil}.",
"The event {event} was deleted by {profile}.": "Dogodek {event} je izbrisal/a {profil}.",
"The event {event} was updated by {profile}.": "Dogodek {event} je posodobil/a {profile}.",
"The events you created are not shown here.": "Dogodki, ki ste jih ustvarili, tukaj niso prikazani.",
"The geolocation prompt was denied.": "",
"The group can now be joined by anyone, but new members need to be approved by an administrator.": "",
"The group can now be joined by anyone.": "Skupini se lahko pridruži kdorkoli.",
"The group can now only be joined with an invite.": "Skupini se lahko pridružite le z vabilom.",
"The group will be publicly listed in search results and may be suggested in the explore section. Only public informations will be shown on it's page.": "Skupina bo javno navedena v rezultatih iskanja in bo morda predlagana v razdelku za raziskovanje. Na tej strani bodo prikazane samo javne informacije.",
@ -686,7 +878,9 @@
"The group's physical address was changed.": "Fizični naslov skupine je bil spremenjen.",
"The group's short description was changed.": "Kratek opis skupine je bil spremenjen.",
"The instance administrator is the person or entity that runs this Mobilizon instance.": "Skrbnik vozlišča je fizična ali pravna oseba, ki vodi to Mobilizon vozlišče.",
"The member was approved": "",
"The member was removed from the group {group}": "Član je bil odstranjen iz skupine {group}",
"The membership request from {profile} was rejected": "",
"The only way for your group to get new members is if an admininistrator invites them.": "Edini način, da vaša skupina pridobi nove člane, je da jih povabi skrbnik.",
"The organiser has chosen to close comments.": "Organizator se je odločil zapreti komentarje.",
"The page you're looking for doesn't exist.": "Stran, ki jo iščete, ne obstaja.",
@ -707,24 +901,34 @@
"These feeds contain event data for the events for which any of your profiles is a participant or creator. You should keep these private. You can find feeds for specific profiles on each profile edition page.": "Viri vsebujejo podatke za dogodke, pri katerih je kateri koli od vaših profilov udeleženec ali ustvarjalec. Ti viri naj bodo zasebni. Viri za posamezne profile so na voljo na strani za urejanje profila.",
"These feeds contain event data for the events for which this specific profile is a participant or creator. You should keep these private. You can find feeds for all of your profiles into your notification settings.": "Viri vsebujejo podatke za dogodke, pri katerih je ta profil udeleženec ali ustvarjalec. Ti viri naj bodo zasebni. Viri za vse svoje profile so na voljo v nastavitvah obveščanja.",
"This Mobilizon instance and this event organizer allows anonymous participations, but requires validation through email confirmation.": "To Mobilizon vozlišče in organizator dogodkov omogočata anonimne udeležbe, vendar zahtevata potrditev po e-pošti.",
"This URL doesn't seem to be valid": "",
"This URL is not supported": "Ta URL ni podprt",
"This event has been cancelled.": "Ta dogodek je bil preklican.",
"This event is accessible only through it's link. Be careful where you post this link.": "Ta dogodek je dostopen samo prek njegove povezave. Bodite previdni, kje objavite to povezavo.",
"This group doesn't have a description yet.": "Ta skupina še nima opisa.",
"This group is accessible only through it's link. Be careful where you post this link.": "",
"This group is invite-only": "Ta skupina je samo za povabljence",
"This group was not found": "",
"This identifier is unique to your profile. It allows others to find you.": "Ta identifikator je edinstven za vaš profil. Omogoča drugim, da vas najdejo.",
"This identity is not a member of any group.": "Ta identiteta ni članica nobene skupine.",
"This information is saved only on your computer. Click for details": "Ti podatki so shranjeni samo na vašem računalniku. Kliknite za podrobnosti",
"This instance hasn't got push notifications enabled.": "",
"This instance isn't opened to registrations, but you can register on other instances.": "To vozlišče ni odprto za registracije, lahko pa se registrirate na drugih vozliščih.",
"This instance, <b>{instanceName} ({domain})</b>, hosts your profile, so remember its name.": "Vozlišče <b>{instanceName} ({domain})</b> gosti vaš profil, zato si zapomnite njegovo ime.",
"This is a demonstration site to test Mobilizon.": "To je demonstracijska stran za preizkušanje Mobilizona.",
"This is like your federated username (<code>{username}</code>) for groups. It will allow the group to be found on the federation, and is guaranteed to be unique.": "To je kot vaše federirano uporabniško ime (<code>{username}</code>) za skupine. To omogoči, da skupino lahko najdejo v federaciji in ji zagotovi edinstvenost.",
"This month": "Ta mesec",
"This post is accessible only for members. You have access to it for moderation purposes only because you are an instance moderator.": "",
"This post is accessible only through it's link. Be careful where you post this link.": "",
"This profile is from another instance, the informations shown here may be incomplete.": "",
"This profile was not found": "",
"This setting will be used to display the website and send you emails in the correct language.": "Ta nastavitev bo uporabljena za prikaz spletišča in pošiljanje e-pošte v pravilnem jeziku.",
"This user was not found": "",
"This website isn't moderated and the data that you enter will be automatically destroyed every day at 00:01 (Paris timezone).": "To spletno mesto ni moderirano in vneseni podatki se samodejno uničijo vsak dan ob 00:01 (pariški časovni pas).",
"This week": "Ta teden",
"This weekend": "Ta vikend",
"This will delete / anonymize all content (events, comments, messages, participations…) created from this identity.": "S tem boste izbrisali / anonimizirali vso vsebino (dogodke, komentarje, sporočila, udeležbe ...), ustvarjeno iz te identitete.",
"Time in your timezone ({timezone})": "",
"Times in your timezone ({timezone})": "",
"Timezone": "Časovni pas",
"Timezone detected as {timezone}.": "Časovni pas je zaznan kot {timezone}.",
"Title": "Naslov",
@ -734,10 +938,16 @@
"To create and manage multiples identities from a same account": "Ustvarjanje in upravljanje več identitet iz istega računa",
"To create and manage your events": "Ustvarjanje in upravljanje dogodkov",
"To create or join an group and start organizing with other people": "Če želite ustvariti skupino ali se ji pridružiti in začeti organizirati z drugimi",
"To follow groups and be informed of their latest events": "",
"To register for an event by choosing one of your identities": "Če se želite prijaviti na dogodek z izbiro ene od svojih identitet",
"Today": "Danes",
"Tomorrow": "Jutri",
"Tools": "",
"Transfer to {outsideDomain}": "Prenesi na {outsideDomain}",
"Triggered profile refreshment": "",
"Twitch live": "",
"Twitch replay": "",
"Twitter account": "",
"Type": "Tip",
"Type or select a date…": "Vnesite ali izberite datum…",
"URL": "URL",
@ -749,18 +959,24 @@
"Unable to load event for participation. The error details are provided below:": "Ni mogoče naložiti dogodka za udeležbo. Podrobnosti o napaki so navedene spodaj:",
"Unable to save your participation in this browser.": "V tem brskalniku ni mogoče shraniti vaše udeležbe.",
"Unable to update the profile. The avatar picture may be too heavy.": "Ni mogoče posodobiti profila. Slika podobe je morda prevelika.",
"Unfortunately, this instance isn't opened to registrations": "Na žalost tao vozlišče ni odprto za registracije",
"Underline": "",
"Undo": "",
"Unfollow": "",
"Unfortunately, your participation request was rejected by the organizers.": "Na žalost so organizatorji zavrnili vašo prošnjo za udeležbo.",
"Unknown": "Neznano",
"Unknown actor": "Neznani udeleženec",
"Unknown error.": "Neznana napaka.",
"Unknown value for the openness setting.": "Neznana vrednost za nastavitev odprtosti.",
"Unlogged participation": "",
"Unsaved changes": "Neshranjene spremembe",
"Unset group": "Ponastavi skupino",
"Unsubscribe to browser push notifications": "",
"Unsuspend": "Odsuspendiraj",
"Upcoming": "Prihajajoči",
"Upcoming events": "Prihajajoči dogodki",
"Upcoming events from your groups": "",
"Update": "Posodobi",
"Update app": "",
"Update discussion title": "",
"Update event {name}": "Posodobi dogodek {name}",
"Update group": "Posodobi skupino",
"Update my event": "Posodobi moj dogodek",
@ -769,14 +985,22 @@
"Uploaded media size": "Velikost poslanega medija",
"Use my location": "Uporabi mojo lokacijo",
"User": "Uporabnik",
"User settings": "",
"Username": "Uporabniško ime",
"Users": "Uporabniki",
"Validating account": "",
"Validating email": "",
"Video Conference": "",
"View a reply": "|Pokaži en odgovor|Pokaži {totalReplies} odgovorov",
"View account on {hostname} (in a new window)": "",
"View all": "Poglej vse",
"View all events": "Prikaži vse dogodke",
"View all posts": "Prikaži vse objave",
"View event page": "Pokaži stran dogodka",
"View everything": "Pokaži vse",
"View full profile": "",
"View less": "",
"View more": "",
"View page on {hostname} (in a new window)": "Pokaži stran na {hostname} (v novem oknu)",
"Visibility was set to an unknown value.": "Vidnost je bila nastavljena na neznano vrednost.",
"Visibility was set to private.": "Vidnost je bila nastavljena na zasebno.",
@ -785,6 +1009,7 @@
"Visible everywhere on the web (public)": "Vidno povsod v spletu (javno)",
"Waiting for organization team approval.": "Čakanje na odobritev organizacijske ekipe.",
"Warning": "Opozorilo",
"We couldn't save your participation inside this browser. Not to worry, you have successfully confirmed your participation, we just couldn't save it's status in this browser because of a technical issue.": "",
"We improve this software thanks to your feedback. To let us know about this issue, two possibilities (both unfortunately require user account creation):": "Zaradi vaših povratnih informacij lahko to programsko opremo izboljšujemo. Če nas želite obvestiti o tej težavi, lahko uporabite dve možnosti (obe žal zahtevata ustvarjanje uporabniškega računa):",
"We just sent an email to {email}": "Pravkar smo poslali e-pošto na naslov {email}",
"We use your timezone to make sure you get notifications for an event at the correct time.": "Vaš časovni pas uporabljamo za to, da ob pravem času prejemate obvestila o dogodku.",
@ -794,21 +1019,29 @@
"We'll use your timezone settings to send a recap of the morning of the event.": "Na podlagi časovnega pasa, bomo poslali povzetek na jutro dogodka.",
"Website": "Spletna stran",
"Website / URL": "URL spletne strani",
"Weekly email summary": "",
"Welcome back {username}!": "Dobrodošli nazaj {username}!",
"Welcome back!": "Dobrodošli nazaj!",
"Welcome to Mobilizon, {username}!": "Dobrodošli na Mobilizonu, {username}!",
"What can I do to help?": "Kako lahko pomagam?",
"Wheelchair accessibility": "",
"When a moderator from the group creates an event and attributes it to the group, it will show up here.": "Ko moderator iz skupine ustvari dogodek in ga pripiše skupini, se bo prikazal tukaj.",
"When the event is private, you'll need to share the link around.": "",
"When the post is private, you'll need to share the link around.": "",
"Whether the event is accessible with a wheelchair": "",
"Whether the event is interpreted in sign language": "",
"Whether the event live video is subtitled": "",
"Who can post a comment?": "",
"Who can view this event and participate": "Kdo si lahko ogleda ta dogodek in se ga udeleži",
"Who can view this post": "Kdo si lahko ogleda to objavo",
"Who published {number} events": "Ki so objavili {number} dogodkov",
"Why create an account?": "Zakaj ustvariti račun?",
"Will allow to display and manage your participation status on the event page when using this device. Uncheck if you're using a public device.": "Omogoča prikaz in upravljanje vašega stanja udeležbe na napravi. Odoznači, če uporabljate javno napravo.",
"Within {number} kilometers of {place}": "|Znotraj kilometra od {place}|Znotraj {number} kilometrov od {place}",
"Write something…": "Napišite nekaj …",
"Yesterday": "Včeraj",
"You accepted the invitation to join the group.": "Sprejeli ste povabilo v skupino.",
"You added the member {member}.": "Dodali ste člana {member}.",
"You approved {member}'s membership.": "",
"You archived the discussion {discussion}.": "Arhivirali ste razpravo {discussion}.",
"You are not an administrator for this group.": "Niste skrbnik te skupine.",
"You are not part of any group.": "Niste član nobene skupine.",
@ -819,6 +1052,8 @@
"You can pick your timezone into your preferences.": "Časovni pas lahko izberete po svojih željah.",
"You can try another search term or drag and drop the marker on the map": "Lahko poskusite z drugim iskalnim izrazom ali povlečete in spustite oznako na zemljevidu",
"You can't change your password because you are registered through {provider}.": "Gesla ne morete spremeniti, ker ste registrirani pri {provider}.",
"You can't use push notifications in this browser.": "",
"You changed your email or password": "",
"You created the discussion {discussion}.": "Ustvarili ste razpravo {discussion}.",
"You created the event {event}.": "Ustvarili ste dogodek {event}.",
"You created the folder {resource}.": "Ustvarili ste mapo {resource}.",
@ -835,7 +1070,9 @@
"You demoted {member} to simple member.": "Člana {member} ste degradirali v navadnega člana.",
"You didn't create or join any event yet.": "Niste ustvarili nobenega dogodka ali se mu pridružili.",
"You don't follow any instances yet.": "Še nobenega vozlišča ne spremljate.",
"You don't have any upcoming events. Maybe try another filter?": "",
"You excluded member {member}.": "Izključili ste člana {member}.",
"You have attended {count} events in the past.": "",
"You have been disconnected": "Povezava je bila prekinjena",
"You have been invited by {invitedBy} to the following group:": "{invitedBy} vas je povabil v naslednjo skupino:",
"You have been removed from this group's members.": "Odstranjeni ste bili iz te skupine.",
@ -851,12 +1088,12 @@
"You moved the folder {resource} to the root folder.": "Premaknili ste mapo {resource} v korensko mapo.",
"You moved the resource {resource} into {new_path}.": "Vir {resource} ste premaknili v {new_path}.",
"You moved the resource {resource} to the root folder.": "Vir {resource} ste premaknili v korensko mapo.",
"You need to create the group before you create an event.": "Preden ustvarite dogodek, morate ustvariti skupino.",
"You need to login.": "Morate se prijaviti.",
"You posted a comment on the event {event}.": "Objavili ste komentar o dogodku {event}.",
"You promoted the member {member} to an unknown role.": "Člana {member} ste povišali v neznano vlogo.",
"You promoted {member} to administrator.": "Člana {member} ste povišali v skrbnika.",
"You promoted {member} to moderator.": "Člana {member} ste povišali v moderatorja.",
"You rejected {member}'s membership request.": "",
"You renamed the discussion from {old_discussion} to {discussion}.": "Razpravo ste preimenovali iz {old_discussion} v {discussion}.",
"You renamed the folder from {old_resource_title} to {resource}.": "Preimenovali ste mapo iz {old_resource_title} v {resource}.",
"You renamed the resource from {old_resource_title} to {resource}.": "Vir ste preimenovali iz {old_resource_title} v {resource}.",
@ -875,12 +1112,15 @@
"You were promoted to moderator by {profile}.": "V moderatorja vas je povišal/a {profile}.",
"You will be able to add an avatar and set other options in your account settings.": "V nastavitvah računa boste lahko dodali podobo in nastavili druge možnosti.",
"You will be redirected to the original instance": "Preusmerjeni boste na prvotno vozlišče",
"You will find here all the events you have created or of which you are a participant.": "Tu boste našli vse dogodke, ki ste jih ustvarili ali pri katerih sodelujete.",
"You will find here all the events you have created or of which you are a participant, as well as events organized by groups you follow or are a member of.": "",
"You will receive notifications about this group's public activity depending on %{notification_settings}.": "",
"You wish to participate to the following event": "Želite se udeležiti naslednjega dogodka",
"You'll get a weekly recap every Monday for upcoming events, if you have any.": "Vsak ponedeljek boste dobili tedenski povzetek prihajajočih dogodkov.",
"You'll need to change the URLs where there were previously entered.": "Spremeniti boste morali naslove URL, ki so bili predhodno vneseni.",
"You'll need to transmit the group URL so people may access the group's profile. The group won't be findable in Mobilizon's search or regular search engines.": "Morali boste poslati URL skupine, da bodo lahko ljudje dostopali do profila skupine. Skupine ne bo mogoče najti v iskalnikih Mobilizon ali običajnih iskalnikih.",
"You'll receive a confirmation email.": "Prejeli boste potrditveno e-pošto.",
"YouTube live": "",
"YouTube replay": "",
"Your account has been successfully deleted": "Vaš račun je uspešno izbrisan",
"Your account has been validated": "Vaš račun je potrjen",
"Your account is being validated": "Vaš račun je v procesu potrjevanja",
@ -893,6 +1133,7 @@
"Your email is being changed": "Vaš e-poštni naslov je bil spremenjen",
"Your email will only be used to confirm that you're a real person and send you eventual updates for this event. It will NOT be transmitted to other instances or to the event organizer.": "Vaš e-poštni naslov bo uporabljen samo za potrditev, da ste resnična oseba, in za morebitne posodobitve za ta dogodek. NE bo posredovan drugim vozliščem ali organizatorju dogodka.",
"Your federated identity": "Vaša federirana identiteta",
"Your membership was approved by {profile}.": "",
"Your participation has been confirmed": "Vaša udeležba je potrjena",
"Your participation has been rejected": "Vaša udeležba je bila zavrnjena",
"Your participation has been requested": "Zahtevana je vaša udeležba",
@ -903,15 +1144,20 @@
"Your participation still has to be approved by the organisers.": "Organizatorji morajo še odobriti vašo udeležbo.",
"Your participation will be validated once you click the confirmation link into the email, and after the organizer manually validates your participation.": "Udeležba bo potrjena, ko boste kliknili potrditveno povezavo v e-pošti in ko bo organizator ročno potrdil vašo udeležbo.",
"Your participation will be validated once you click the confirmation link into the email.": "Udeležba bo potrjena, ko boste kliknili potrditveno povezavo v e-pošti..",
"Your position was not available.": "",
"Your profile will be shown as contact.": "Vaš profil bo prikazan kot stik.",
"Your timezone is currently set to {timezone}.": "Vaš časovni pas je trenutno nastavljen na {timezone}.",
"Your timezone was detected as {timezone}.": "Vaš časovni pas je bil zaznan kot {timezone}.",
"Your timezone {timezone} isn't supported.": "Vaš časovni pas {timezone} ni podprt.",
"Your upcoming events": "Prihajajoči dogodki",
"Zoom": "",
"Zoom in": "",
"Zoom out": "",
"[This comment has been deleted by it's author]": "[Ta komentar je avtor izbrisal]",
"[This comment has been deleted]": "[Ta komentar je bil izbrisan]",
"[deleted]": "[izbrisano]",
"a non-existent report": "neobstoječe poročilo",
"access to the group's private content as well": "",
"and {number} groups": "in {number} skupin",
"any distance": "vse razdalje",
"as {identity}": "kot {identity}",
@ -921,9 +1167,13 @@
"default Mobilizon privacy policy": "privzet pravilnik o zasebnosti za Mobilizon",
"default Mobilizon terms": "privzeti pogoji Mobilizona",
"e.g. 10 Rue Jangot": "npr. Kersnikova ulica 4",
"e.g. Accessibility, Twitch, PeerTube": "",
"enable the feature": "",
"explore the events": "razišči dogodke",
"explore the groups": "razišči skupine",
"full rules": "polna pravila",
"group's upcoming public events": "",
"https://mensuel.framapad.org/p/some-secret-token": "",
"iCal Feed": "vir iCal",
"instance rules": "pravila vozlišča",
"more than 1360 contributors": "več kot 1360 sodelavcev",
@ -932,17 +1182,24 @@
"return to the event's page": "vrnitev na stran dogodka",
"terms of service": "pogoji storitve",
"with another identity…": "z drugo identiteto…",
"your notification settings": "",
"{approved} / {total} seats": "{approved} / {total} mest",
"{available}/{capacity} available places": "Prostih mest ni več|{available}/{capacity} prostih mest",
"{count} km": "{count} km",
"{count} members": "",
"{count} members or followers": "",
"{count} participants": "Še ni udeležencev | En udeleženec | {count} udeležencev",
"{count} requests waiting": "{count} zahtev čaka",
"{count} team members": "{count} članov skupine",
"{folder} - Resources": "",
"{group} activity timeline": "Časovnica dejavnosti od {group}",
"{group} events": "",
"{group} posts": "",
"{group}'s events": "Dogodki skupine {group}",
"{group}'s todolists": "",
"{instanceName} is an instance of the {mobilizon} software.": "{instanceName} je vozlišče programske opreme {mobilizon}.",
"{instanceName} is an instance of {mobilizon_link}, a free software built with the community.": "{instanceName} je vozlišče {mobilizon_link} brezplačne programske opreme, ki je nastala v sodelovanju s skupnostjo.",
"{member} accepted the invitation to join the group.": "{member} je sprejel/a povabilo v skupino.",
"{member} joined the group.": "",
"{member} rejected the invitation to join the group.": "{member} je zavrnil/a povabilo v skupino.",
"{member} requested to join the group.": "{member} je zaprosil/a za članstvo v skupini.",
"{member} was invited by {profile}.": "{profile} je povabil/a {member}.",
@ -961,12 +1218,15 @@
"{moderator} suspended profile {profile}": "{moderator} je suspendiral_a profil {profile}",
"{nb} km": "{nb} km",
"{number} members": "{number} članov",
"{number} memberships": "",
"{number} organized events": "Ni organiziranih dogodkov|En organiziran dogodek|{number} organiziranih dogodkov",
"{number} participations": "Ni udeležencev|En udeleženec|{number} udeležencev",
"{number} posts": "Ni objav|Ena objava|{number} objav",
"{number} seats left": "",
"{old_group_name} was renamed to {group}.": "{old_group_name} je bilo preimenovano v {group}.",
"{profile} (by default)": "{profile} (privzeto)",
"{profile} added the member {member}.": "{profile} je dodal/a člana {member}.",
"{profile} approved {member}'s membership.": "",
"{profile} archived the discussion {discussion}.": "{profile} je arhiviral/a razpravo {discussion}.",
"{profile} created the discussion {discussion}.": "{profile} je ustvaril/a razpravo {discussion}.",
"{profile} created the folder {resource}.": "{profile} je ustvaril/a mapo {resource}.",
@ -988,6 +1248,7 @@
"{profile} promoted {member} to an unknown role.": "{profile} je promoviral {member} v neznano vlogo.",
"{profile} promoted {member} to moderator.": "{profile} je promoviral {member} v moderatorja.",
"{profile} quit the group.": "{profile} je zapustil/a skupno.",
"{profile} rejected {member}'s membership request.": "",
"{profile} renamed the discussion from {old_discussion} to {discussion}.": "{profile} je preimenoval/a razpravo iz {old_discussion} v {discussion}.",
"{profile} renamed the folder from {old_resource_title} to {resource}.": "{profile} je preimenoval/a mapo iz {old_resource_title} v {resource}.",
"{profile} renamed the resource from {old_resource_title} to {resource}.": "{profile} je preimenoval/a vir iz {old_resource_title} v {resource}.",
@ -995,6 +1256,7 @@
"{profile} replied to the discussion {discussion}.": "{profile} je odgovoril/a na razpravo {discussion}.",
"{profile} updated the group {group}.": "{profile} je posodobil/a skupino {group}.",
"{profile} updated the member {member}.": "{profile} je posodobil člana {member}.",
"{timezoneLongName} ({timezoneShortName})": "",
"{title} ({count} todos)": "{title} ({count} todos)",
"{username} was invited to {group}": "{username} je povabljen/a v {group}",
"© The OpenStreetMap Contributors": "© The OpenStreetMap Contributors"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -12,7 +12,9 @@ import { NotifierPlugin } from "./plugins/notifier";
import filters from "./filters";
import { i18n } from "./utils/i18n";
import apolloProvider from "./vue-apollo";
import Breadcrumbs from "@/components/Utils/Breadcrumbs.vue";
import "./registerServiceWorker";
import "./assets/tailwind.css";
Vue.config.productionTip = false;
@ -24,6 +26,7 @@ Vue.use(VueScrollTo);
Vue.use(VTooltip);
Vue.use(VueAnnouncer);
Vue.use(VueSkipTo);
Vue.component("breadcrumbs-nav", Breadcrumbs);
// Register the router hooks with their names
Component.registerHooks([

View File

@ -1,38 +0,0 @@
import { IActor } from "@/types/actor";
import { ActorType } from "@/types/enums";
import { Component, Vue, Ref } from "vue-property-decorator";
import VueRouter from "vue-router";
const { isNavigationFailure, NavigationFailureType } = VueRouter;
@Component
export default class RelayMixin extends Vue {
@Ref("table") readonly table!: any;
toggle(row: Record<string, unknown>): void {
this.table.toggleDetails(row);
}
protected async pushRouter(
routeName: string,
args: Record<string, string>
): Promise<void> {
try {
await this.$router.push({
name: routeName,
query: { ...this.$route.query, ...args },
});
} catch (e) {
if (isNavigationFailure(e, NavigationFailureType.redirected)) {
throw Error(e.toString());
}
}
}
static isInstance(actor: IActor): boolean {
return (
actor.type === ActorType.APPLICATION &&
(actor.preferredUsername === "relay" ||
actor.preferredUsername === actor.domain)
);
}
}

View File

@ -11,9 +11,8 @@ export enum SettingsRouteName {
ADMIN = "ADMIN",
ADMIN_DASHBOARD = "ADMIN_DASHBOARD",
ADMIN_SETTINGS = "ADMIN_SETTINGS",
RELAYS = "Relays",
RELAY_FOLLOWINGS = "Followings",
RELAY_FOLLOWERS = "Followers",
INSTANCES = "INSTANCES",
INSTANCE = "INSTANCE",
USERS = "USERS",
PROFILES = "PROFILES",
ADMIN_PROFILE = "ADMIN_PROFILE",
@ -21,7 +20,7 @@ export enum SettingsRouteName {
ADMIN_GROUPS = "ADMIN_GROUPS",
ADMIN_GROUP_PROFILE = "ADMIN_GROUP_PROFILE",
MODERATION = "MODERATION",
REPORTS = "Reports",
REPORTS = "REPORTS",
REPORT = "Report",
REPORT_LOGS = "Logs",
CREATE_IDENTITY = "CreateIdentity",
@ -199,44 +198,35 @@ export const settingsRoutes: RouteConfig[] = [
meta: { requiredAuth: true, announcer: { skip: true } },
},
{
path: "admin/relays",
name: SettingsRouteName.RELAYS,
redirect: { name: SettingsRouteName.RELAY_FOLLOWINGS },
path: "admin/instances",
name: SettingsRouteName.INSTANCES,
component: (): Promise<ImportedComponent> =>
import(/* webpackChunkName: "Follows" */ "@/views/Admin/Follows.vue"),
meta: { requiredAuth: true, announcer: { skip: true } },
children: [
{
path: "followings",
name: SettingsRouteName.RELAY_FOLLOWINGS,
component: (): Promise<ImportedComponent> =>
import(
/* webpackChunkName: "Followings" */ "@/components/Admin/Followings.vue"
),
meta: {
requiredAuth: true,
announcer: {
message: (): string => i18n.t("Followings") as string,
},
},
import(
/* webpackChunkName: "Instances" */ "@/views/Admin/Instances.vue"
),
meta: {
requiredAuth: true,
announcer: {
message: (): string => i18n.t("Instances") as string,
},
{
path: "followers",
name: SettingsRouteName.RELAY_FOLLOWERS,
component: (): Promise<ImportedComponent> =>
import(
/* webpackChunkName: "Followers" */ "@/components/Admin/Followers.vue"
),
meta: {
requiredAuth: true,
announcer: {
message: (): string => i18n.t("Followers") as string,
},
},
},
],
},
props: true,
},
{
path: "admin/instances/:domain",
name: SettingsRouteName.INSTANCE,
component: (): Promise<ImportedComponent> =>
import(
/* webpackChunkName: "Instance" */ "@/views/Admin/Instance.vue"
),
props: true,
meta: {
requiredAuth: true,
announcer: {
message: (): string => i18n.t("Instance") as string,
},
},
},
{
path: "/moderation",
name: SettingsRouteName.MODERATION,
@ -244,7 +234,7 @@ export const settingsRoutes: RouteConfig[] = [
meta: { requiredAuth: true, announcer: { skip: true } },
},
{
path: "/moderation/reports/:filter?",
path: "/moderation/reports",
name: SettingsRouteName.REPORTS,
component: (): Promise<ImportedComponent> =>
import(

View File

@ -17,6 +17,7 @@ export interface IConfig {
registrationsAllowlist: boolean;
demoMode: boolean;
countryCode: string;
eventCategories: { id: string; label: string }[];
languages: string[];
location: {
latitude: number;

View File

@ -72,14 +72,6 @@ export enum EventVisibilityJoinOptions {
LIMITED = "LIMITED",
}
export enum Category {
BUSINESS = "business",
CONFERENCE = "conference",
BIRTHDAY = "birthday",
DEMONSTRATION = "demonstration",
MEETING = "meeting",
}
export enum LoginErrorCode {
NEED_TO_LOGIN = "need_to_login",
}
@ -276,3 +268,15 @@ export enum EventMetadataCategories {
BOOKING = "BOOKING",
VIDEO_CONFERENCE = "VIDEO_CONFERENCE",
}
export enum InstanceFilterFollowStatus {
ALL = "ALL",
FOLLOWING = "FOLLOWING",
FOLLOWED = "FOLLOWED",
}
export enum InstanceFollowStatus {
APPROVED = "APPROVED",
PENDING = "PENDING",
NONE = "NONE",
}

View File

@ -0,0 +1,16 @@
import { Operation, NextLink } from "@apollo/client/core";
import { NetworkError } from "@apollo/client/errors";
import { ExecutionResult, GraphQLError } from "graphql";
export declare class AbsintheGraphQLError extends GraphQLError {
field?: string;
}
export declare type AbsintheGraphQLErrors = ReadonlyArray<AbsintheGraphQLError>;
export interface ErrorResponse {
graphQLErrors?: AbsintheGraphQLErrors;
networkError?: NetworkError;
response?: ExecutionResult;
operation: Operation;
forward: NextLink;
}

View File

@ -53,6 +53,7 @@ interface IEventEditJSON {
options: IEventOptions;
contacts: { id?: string }[];
metadata: IEventMetadata[];
category: string;
}
export interface IEvent {
@ -91,6 +92,7 @@ export interface IEvent {
metadata: IEventMetadata[];
contacts: IActor[];
language: string;
category: string;
toEditJSON(): IEventEditJSON;
}
@ -166,6 +168,8 @@ export class EventModel implements IEvent {
metadata: IEventMetadata[] = [];
category = "MEETING";
constructor(hash?: IEvent | IEditableEvent) {
if (!hash) return;
@ -214,6 +218,7 @@ export class EventModel implements IEvent {
this.tags = hash.tags;
this.metadata = hash.metadata;
this.language = hash.language;
this.category = hash.category;
if (hash.options) this.options = hash.options;
}
@ -240,6 +245,7 @@ export function toEditJSON(event: IEditableEvent): IEventEditJSON {
beginsOn: event.beginsOn ? event.beginsOn.toISOString() : null,
endsOn: event.endsOn ? event.endsOn.toISOString() : null,
status: event.status,
category: event.category,
visibility: event.visibility,
joinOptions: event.joinOptions,
draft: event.draft,

View File

@ -0,0 +1,14 @@
import { InstanceFollowStatus } from "./enums";
export interface IInstance {
domain: string;
hasRelay: boolean;
followerStatus: InstanceFollowStatus;
followedStatus: InstanceFollowStatus;
personCount: number;
groupCount: number;
followersCount: number;
followingsCount: number;
reportsCount: number;
mediaSize: number;
}

Some files were not shown because too many files have changed in this diff Show More