]> git.openstreetmap.org Git - rails.git/commitdiff
Merge pull request #5449 from AntonKhorev/edit-preferences
authorAndy Allan <git@gravitystorm.co.uk>
Wed, 15 Jan 2025 12:49:34 +0000 (12:49 +0000)
committerGitHub <noreply@github.com>
Wed, 15 Jan 2025 12:49:34 +0000 (12:49 +0000)
Make preferences page editable without clicking 'Edit Preferences'

240 files changed:
.rubocop_todo.yml
CONTRIBUTING.md
Gemfile
Gemfile.lock
app/abilities/ability.rb
app/assets/javascripts/diary_entry.js
app/assets/javascripts/index/changeset.js
app/assets/javascripts/index/history.js
app/assets/javascripts/index/new_note.js
app/assets/javascripts/leaflet.map.js
app/assets/javascripts/leaflet.note.js
app/assets/stylesheets/common.scss
app/controllers/accounts/deletions_controller.rb [moved from app/controllers/account/deletions_controller.rb with 92% similarity]
app/controllers/accounts/terms_controller.rb [new file with mode: 0644]
app/controllers/api/messages_controller.rb
app/controllers/application_controller.rb
app/controllers/concerns/session_methods.rb
app/controllers/confirmations_controller.rb
app/controllers/diary_comments_controller.rb
app/controllers/diary_entries_controller.rb
app/controllers/elements_controller.rb [new file with mode: 0644]
app/controllers/geocoder_controller.rb
app/controllers/messages/inboxes_controller.rb [new file with mode: 0644]
app/controllers/messages/mailboxes_controller.rb [new file with mode: 0644]
app/controllers/messages/muted_inboxes_controller.rb [new file with mode: 0644]
app/controllers/messages/outboxes_controller.rb [new file with mode: 0644]
app/controllers/messages/replies_controller.rb [new file with mode: 0644]
app/controllers/messages_controller.rb
app/controllers/nodes_controller.rb
app/controllers/notes_controller.rb
app/controllers/old_elements_controller.rb [new file with mode: 0644]
app/controllers/old_nodes_controller.rb
app/controllers/old_relations_controller.rb
app/controllers/old_ways_controller.rb
app/controllers/relations_controller.rb
app/controllers/site_controller.rb
app/controllers/user_blocks_controller.rb
app/controllers/users/issued_blocks_controller.rb [new file with mode: 0644]
app/controllers/users/received_blocks_controller.rb [new file with mode: 0644]
app/controllers/users_controller.rb
app/controllers/ways_controller.rb
app/helpers/application_helper.rb
app/helpers/changesets_helper.rb
app/helpers/user_blocks_helper.rb
app/mailers/user_mailer.rb
app/models/trace.rb
app/views/accounts/deletions/show.html.erb [moved from app/views/account/deletions/show.html.erb with 100% similarity]
app/views/accounts/edit.html.erb
app/views/accounts/terms/_terms.html.erb [moved from app/views/users/_terms.html.erb with 100% similarity]
app/views/accounts/terms/_terms_declined_flash.html.erb [moved from app/views/users/_terms_declined_flash.html.erb with 100% similarity]
app/views/accounts/terms/show.html.erb [moved from app/views/users/terms.html.erb with 98% similarity]
app/views/application/_auth_providers.html.erb
app/views/browse/not_found.html.erb
app/views/changesets/_changeset.html.erb
app/views/changesets/_not_found_message.html.erb [new file with mode: 0644]
app/views/changesets/show.html.erb
app/views/confirmations/confirm.html.erb
app/views/elements/show.html.erb [moved from app/views/browse/feature.html.erb with 100% similarity]
app/views/layouts/_header.html.erb
app/views/layouts/map.html.erb
app/views/messages/inboxes/show.html.erb [moved from app/views/messages/inbox.html.erb with 52% similarity]
app/views/messages/mailboxes/_heading.html.erb [moved from app/views/messages/_heading.html.erb with 60% similarity]
app/views/messages/mailboxes/_message.html.erb [moved from app/views/messages/_message_summary.html.erb with 100% similarity]
app/views/messages/mailboxes/_messages_table.html.erb [moved from app/views/messages/_messages_table.html.erb with 75% similarity]
app/views/messages/muted_inboxes/show.html.erb [moved from app/views/messages/muted.html.erb with 82% similarity]
app/views/messages/new.html.erb
app/views/messages/outboxes/_message.html.erb [moved from app/views/messages/_sent_message_summary.html.erb with 100% similarity]
app/views/messages/outboxes/show.html.erb [moved from app/views/messages/outbox.html.erb with 87% similarity]
app/views/messages/show.html.erb
app/views/nodes/_not_found_message.html.erb [new file with mode: 0644]
app/views/notes/_not_found_message.html.erb [new file with mode: 0644]
app/views/notes/new.html.erb
app/views/old_elements/_actions.html.erb [moved from app/views/browse/_version_actions.erb with 87% similarity]
app/views/old_elements/index.html.erb [moved from app/views/browse/history.html.erb with 72% similarity]
app/views/old_nodes/_not_found_message.html.erb [new file with mode: 0644]
app/views/old_nodes/not_found.html.erb [deleted file]
app/views/old_nodes/show.html.erb
app/views/old_relations/_not_found_message.html.erb [new file with mode: 0644]
app/views/old_relations/not_found.html.erb [deleted file]
app/views/old_relations/show.html.erb
app/views/old_ways/_not_found_message.html.erb [new file with mode: 0644]
app/views/old_ways/not_found.html.erb [deleted file]
app/views/old_ways/show.html.erb
app/views/relations/_not_found_message.html.erb [new file with mode: 0644]
app/views/site/fixthemap.html.erb
app/views/user_blocks/_navigation.html.erb
app/views/user_blocks/_page.html.erb
app/views/user_mailer/_gpx_description.html.erb [deleted file]
app/views/user_mailer/_gpx_description.text.erb [deleted file]
app/views/user_mailer/_gpx_details.html.erb [new file with mode: 0644]
app/views/user_mailer/_gpx_details.text.erb [new file with mode: 0644]
app/views/user_mailer/gpx_failure.html.erb
app/views/user_mailer/gpx_failure.text.erb
app/views/user_mailer/gpx_success.html.erb
app/views/user_mailer/gpx_success.text.erb
app/views/users/issued_blocks/show.html.erb [moved from app/views/user_blocks/blocks_by.html.erb with 77% similarity]
app/views/users/received_blocks/edit.html.erb [moved from app/views/user_blocks/revoke_all.html.erb with 88% similarity]
app/views/users/received_blocks/show.html.erb [moved from app/views/user_blocks/blocks_on.html.erb with 77% similarity]
app/views/users/show.html.erb
app/views/ways/_not_found_message.html.erb [new file with mode: 0644]
config/locales/af.yml
config/locales/aln.yml
config/locales/ar.yml
config/locales/arz.yml
config/locales/ast.yml
config/locales/az.yml
config/locales/ba.yml
config/locales/be-Tarask.yml
config/locales/be.yml
config/locales/bg.yml
config/locales/bn.yml
config/locales/br.yml
config/locales/bs.yml
config/locales/ca.yml
config/locales/ce.yml
config/locales/cs.yml
config/locales/cy.yml
config/locales/da.yml
config/locales/de.yml
config/locales/diq.yml
config/locales/dsb.yml
config/locales/el.yml
config/locales/en-GB.yml
config/locales/en.yml
config/locales/eo.yml
config/locales/es.yml
config/locales/et.yml
config/locales/eu.yml
config/locales/fa.yml
config/locales/fi.yml
config/locales/fit.yml
config/locales/fr.yml
config/locales/fur.yml
config/locales/fy.yml
config/locales/ga.yml
config/locales/gcf.yml
config/locales/gd.yml
config/locales/gl.yml
config/locales/gu.yml
config/locales/he.yml
config/locales/hi.yml
config/locales/hr.yml
config/locales/hsb.yml
config/locales/hu.yml
config/locales/ia.yml
config/locales/id.yml
config/locales/is.yml
config/locales/it.yml
config/locales/ja.yml
config/locales/ka.yml
config/locales/kab.yml
config/locales/kk-cyrl.yml
config/locales/km.yml
config/locales/kn.yml
config/locales/ko.yml
config/locales/ksh.yml
config/locales/ku-Latn.yml
config/locales/lb.yml
config/locales/lt.yml
config/locales/lv.yml
config/locales/mk.yml
config/locales/mr.yml
config/locales/ms.yml
config/locales/my.yml
config/locales/nb.yml
config/locales/nds.yml
config/locales/ne.yml
config/locales/nl.yml
config/locales/nn.yml
config/locales/nqo.yml
config/locales/oc.yml
config/locales/pa.yml
config/locales/pl.yml
config/locales/pnb.yml
config/locales/ps.yml
config/locales/pt-PT.yml
config/locales/pt.yml
config/locales/ro.yml
config/locales/ru.yml
config/locales/sat.yml
config/locales/sc.yml
config/locales/scn.yml
config/locales/sco.yml
config/locales/sh.yml
config/locales/sk.yml
config/locales/skr-arab.yml
config/locales/sl.yml
config/locales/sq.yml
config/locales/sr-Latn.yml
config/locales/sr.yml
config/locales/sv.yml
config/locales/ta.yml
config/locales/te.yml
config/locales/th.yml
config/locales/tl.yml
config/locales/tr.yml
config/locales/tt.yml
config/locales/uk.yml
config/locales/vi.yml
config/locales/yi.yml
config/locales/zh-CN.yml
config/locales/zh-HK.yml
config/locales/zh-TW.yml
config/routes.rb
lib/auth.rb
package.json
test/application_system_test_case.rb
test/controllers/accounts/terms_controller_test.rb [new file with mode: 0644]
test/controllers/confirmations_controller_test.rb
test/controllers/diary_comments_controller_test.rb
test/controllers/diary_entries_controller_test.rb
test/controllers/messages/inboxes_controller_test.rb [new file with mode: 0644]
test/controllers/messages/muted_inboxes_controller_test.rb [new file with mode: 0644]
test/controllers/messages/outboxes_controller_test.rb [new file with mode: 0644]
test/controllers/messages/replies_controller_test.rb [new file with mode: 0644]
test/controllers/messages_controller_test.rb
test/controllers/nodes_controller_test.rb
test/controllers/old_nodes_controller_test.rb
test/controllers/old_relations_controller_test.rb
test/controllers/old_ways_controller_test.rb
test/controllers/relations_controller_test.rb
test/controllers/sessions_controller_test.rb
test/controllers/user_blocks/table_test_helper.rb [new file with mode: 0644]
test/controllers/user_blocks_controller_test.rb
test/controllers/users/issued_blocks_controller_test.rb [new file with mode: 0644]
test/controllers/users/received_blocks_controller_test.rb [new file with mode: 0644]
test/controllers/users_controller_test.rb
test/controllers/ways_controller_test.rb
test/helpers/user_blocks_helper_test.rb
test/integration/user_creation_test.rb
test/integration/user_terms_seen_test.rb
test/mailers/user_mailer_test.rb
test/system/browse_test.rb [new file with mode: 0644]
test/system/confirmation_resend_test.rb [deleted file]
test/system/create_note_test.rb
test/system/messages_test.rb
test/system/user_blocks_test.rb
test/system/user_signup_test.rb
vendor/assets/leaflet/leaflet.osm.js
yarn.lock

index 071abc44c37d72262c8765515e88725fb1618ffb..b3379b91a14243fec617620f973a8f5c3aaa8db7 100644 (file)
@@ -27,6 +27,8 @@ FactoryBot/ExcessiveCreateList:
     - 'test/controllers/notes_controller_test.rb'
     - 'test/controllers/traces_controller_test.rb'
     - 'test/controllers/user_blocks_controller_test.rb'
+    - 'test/controllers/users/issued_blocks_controller_test.rb'
+    - 'test/controllers/users/received_blocks_controller_test.rb'
     - 'test/system/users_test.rb'
 
 # Offense count: 635
@@ -50,7 +52,6 @@ Lint/AssignmentInCondition:
     - 'app/helpers/application_helper.rb'
     - 'app/helpers/browse_tags_helper.rb'
     - 'app/mailers/user_mailer.rb'
-    - 'app/models/client_application.rb'
     - 'lib/nominatim.rb'
     - 'lib/osm.rb'
     - 'script/deliver-message'
index e298c944f5819d2b72d8bf14cfb34e6a692de7a1..aea8b30b908eb569223ea2d9b82207ee19577ba0 100644 (file)
@@ -20,7 +20,7 @@ development to check that your code matches our guidelines:
 ```
 bundle exec rubocop
 bundle exec rails eslint
-bundle exec erblint .
+bundle exec erb_lint .
 ```
 
 You can also install hooks to have git run checks automatically when
diff --git a/Gemfile b/Gemfile
index 277346b8388df908c3e110cff5b9bbb55a18cf84..60a8fcaceae8671347e148a61b2a756f1ca62f33 100644 (file)
--- a/Gemfile
+++ b/Gemfile
@@ -55,6 +55,7 @@ gem "bootstrap_form", "~> 5.0"
 gem "cancancan"
 gem "config"
 gem "delayed_job_active_record"
+gem "dry-schema", "< 1.14.0" # see https://github.com/openstreetmap/openstreetmap-website/issues/5482
 gem "dry-validation"
 gem "frozen_record"
 gem "http_accept_language", "~> 2.1.1"
index ab8d9f9d1428f42b5ca152fa810a1f0ab4c2b307..475ef50c490a92282f1724e6d8c721eb59779745 100644 (file)
@@ -92,8 +92,8 @@ GEM
     autoprefixer-rails (10.4.19.0)
       execjs (~> 2)
     aws-eventstream (1.3.0)
-    aws-partitions (1.1026.0)
-    aws-sdk-core (3.214.0)
+    aws-partitions (1.1036.0)
+    aws-sdk-core (3.215.0)
       aws-eventstream (~> 1, >= 1.3.0)
       aws-partitions (~> 1, >= 1.992.0)
       aws-sigv4 (~> 1.9)
@@ -101,11 +101,11 @@ GEM
     aws-sdk-kms (1.96.0)
       aws-sdk-core (~> 3, >= 3.210.0)
       aws-sigv4 (~> 1.5)
-    aws-sdk-s3 (1.176.1)
+    aws-sdk-s3 (1.177.0)
       aws-sdk-core (~> 3, >= 3.210.0)
       aws-sdk-kms (~> 1)
       aws-sigv4 (~> 1.5)
-    aws-sigv4 (1.10.1)
+    aws-sigv4 (1.11.0)
       aws-eventstream (~> 1, >= 1.0.2)
     base64 (0.2.0)
     benchmark (0.4.0)
@@ -120,7 +120,7 @@ GEM
       erubi (~> 1.4)
       parser (>= 2.4)
       smart_properties
-    bigdecimal (3.1.8)
+    bigdecimal (3.1.9)
     binding_of_caller (1.0.1)
       debug_inspector (>= 1.2.0)
     bootsnap (1.18.4)
@@ -131,7 +131,7 @@ GEM
     bootstrap_form (5.4.0)
       actionpack (>= 6.1)
       activemodel (>= 6.1)
-    brakeman (6.2.2)
+    brakeman (7.0.0)
       racc
     brotli (0.6.0)
     browser (5.3.1)
@@ -162,7 +162,7 @@ GEM
     config (5.5.2)
       deep_merge (~> 1.2, >= 1.2.1)
       ostruct
-    connection_pool (2.4.1)
+    connection_pool (2.5.0)
     cork (0.3.0)
       colored2 (~> 3.1)
     crack (1.0.0)
@@ -216,18 +216,19 @@ GEM
       doorkeeper (>= 5.5, < 5.9)
       jwt (>= 2.5)
     drb (2.2.1)
-    dry-configurable (1.2.0)
-      dry-core (~> 1.0, < 2)
+    dry-configurable (1.3.0)
+      dry-core (~> 1.1)
       zeitwerk (~> 2.6)
-    dry-core (1.0.2)
+    dry-core (1.1.0)
       concurrent-ruby (~> 1.0)
       logger
       zeitwerk (~> 2.6)
-    dry-inflector (1.1.0)
-    dry-initializer (3.1.1)
-    dry-logic (1.5.0)
+    dry-inflector (1.2.0)
+    dry-initializer (3.2.0)
+    dry-logic (1.6.0)
+      bigdecimal
       concurrent-ruby (~> 1.0)
-      dry-core (~> 1.0, < 2)
+      dry-core (~> 1.1)
       zeitwerk (~> 2.6)
     dry-schema (1.13.4)
       concurrent-ruby (~> 1.0)
@@ -237,7 +238,7 @@ GEM
       dry-logic (>= 1.4, < 2)
       dry-types (>= 1.7, < 2)
       zeitwerk (~> 2.6)
-    dry-types (1.7.2)
+    dry-types (1.8.0)
       bigdecimal (~> 3.0)
       concurrent-ruby (~> 1.0)
       dry-core (~> 1.0)
@@ -250,7 +251,7 @@ GEM
       dry-initializer (~> 3.0)
       dry-schema (>= 1.12, < 2)
       zeitwerk (~> 2.6)
-    erb_lint (0.7.0)
+    erb_lint (0.8.0)
       activesupport
       better_html (>= 2.0.1)
       parser (>= 2.7.1.4)
@@ -259,7 +260,7 @@ GEM
       smart_properties
     erubi (1.13.1)
     execjs (2.10.0)
-    exifr (1.4.0)
+    exifr (1.4.1)
     factory_bot (6.5.0)
       activesupport (>= 5.0.0)
     factory_bot_rails (6.4.4)
@@ -273,7 +274,7 @@ GEM
       faraday (>= 0.8)
     faraday-net_http (3.4.0)
       net-http (>= 0.5.0)
-    ffi (1.17.0)
+    ffi (1.17.1)
     ffi-compiler (1.3.2)
       ffi (>= 1.15.5)
       rake
@@ -293,7 +294,7 @@ GEM
     google-protobuf (3.25.5)
     hashdiff (1.1.2)
     hashie (5.0.0)
-    highline (3.1.1)
+    highline (3.1.2)
       reline
     htmlentities (4.3.4)
     http_accept_language (2.1.1)
@@ -340,7 +341,7 @@ GEM
       railties (>= 4.2.0)
       thor (>= 0.14, < 2.0)
     json (2.9.1)
-    jwt (2.9.3)
+    jwt (2.10.1)
       base64
     kgio (2.11.4)
     kramdown (2.5.1)
@@ -353,11 +354,11 @@ GEM
     listen (3.9.0)
       rb-fsevent (~> 0.10, >= 0.10.3)
       rb-inotify (~> 0.9, >= 0.9.10)
-    logger (1.6.4)
+    logger (1.6.5)
     logstasher (2.1.5)
       activesupport (>= 5.2)
       request_store
-    loofah (2.23.1)
+    loofah (2.24.0)
       crass (~> 1.0.2)
       nokogiri (>= 1.12.0)
     mail (2.8.1)
@@ -383,7 +384,7 @@ GEM
     nap (1.1.0)
     net-http (0.6.0)
       uri
-    net-imap (0.5.2)
+    net-imap (0.5.5)
       date
       net-protocol
     net-pop (0.1.2)
@@ -393,7 +394,7 @@ GEM
     net-smtp (0.5.0)
       net-protocol
     nio4r (2.7.4)
-    nokogiri (1.17.2)
+    nokogiri (1.18.1)
       mini_portile2 (~> 2.8.2)
       racc (~> 1.4)
     oauth (1.1.0)
@@ -481,7 +482,7 @@ GEM
       rack (~> 2.2, >= 2.2.4)
     rack-session (1.0.2)
       rack (< 3)
-    rack-test (2.1.0)
+    rack-test (2.2.0)
       rack (>= 1.3)
     rack-uri_sanitizer (0.0.2)
     rackup (1.0.1)
@@ -531,10 +532,10 @@ GEM
     rb-fsevent (0.11.2)
     rb-inotify (0.11.1)
       ffi (~> 1.0)
-    rchardet (1.8.0)
+    rchardet (1.9.0)
     rdoc (6.10.0)
       psych (>= 4.0.0)
-    regexp_parser (2.9.3)
+    regexp_parser (2.10.0)
     reline (0.6.0)
       io-console (~> 0.5)
     request_store (1.7.0)
@@ -545,7 +546,7 @@ GEM
     rouge (4.5.1)
     rtlcss (0.2.1)
       mini_racer (>= 0.6.3)
-    rubocop (1.69.2)
+    rubocop (1.70.0)
       json (~> 2.3)
       language_server-protocol (>= 3.17.0)
       parallel (~> 1.10)
@@ -564,10 +565,10 @@ GEM
     rubocop-minitest (0.36.0)
       rubocop (>= 1.61, < 2.0)
       rubocop-ast (>= 1.31.1, < 2.0)
-    rubocop-performance (1.23.0)
+    rubocop-performance (1.23.1)
       rubocop (>= 1.48.1, < 2.0)
       rubocop-ast (>= 1.31.1, < 2.0)
-    rubocop-rails (2.27.0)
+    rubocop-rails (2.28.0)
       activesupport (>= 4.2.0)
       rack (>= 1.1)
       rubocop (>= 1.52.0, < 2.0)
@@ -579,10 +580,10 @@ GEM
     ruby-vips (2.2.2)
       ffi (~> 1.12)
       logger
-    rubyzip (2.3.2)
-    sanitize (6.1.3)
+    rubyzip (2.4.1)
+    sanitize (7.0.0)
       crass (~> 1.0.2)
-      nokogiri (>= 1.12.0)
+      nokogiri (>= 1.16.8)
     sass-embedded (1.64.2)
       google-protobuf (~> 3.23)
       rake (>= 13.0.0)
@@ -630,7 +631,7 @@ GEM
     terser (1.2.4)
       execjs (>= 0.3.0, < 3)
     thor (1.3.2)
-    tilt (2.4.0)
+    tilt (2.6.0)
     timeout (0.4.3)
     turbo-rails (2.0.11)
       actionpack (>= 6.0.0)
@@ -651,7 +652,8 @@ GEM
       hashdiff (>= 0.4.0, < 2.0.0)
     webrick (1.9.1)
     websocket (1.2.11)
-    websocket-driver (0.7.6)
+    websocket-driver (0.7.7)
+      base64
       websocket-extensions (>= 0.1.0)
     websocket-extensions (0.1.5)
     xpath (3.2.0)
@@ -694,6 +696,7 @@ DEPENDENCIES
   doorkeeper
   doorkeeper-i18n
   doorkeeper-openid_connect
+  dry-schema (< 1.14.0)
   dry-validation
   erb_lint
   factory_bot_rails
index e4b9dcf6bf5727ef63a580fc0dda0b1605c7e2fe..9516a30126ce8f05211fe593386dfe17bd521ba7 100644 (file)
@@ -23,8 +23,9 @@ class Ability
       can :read, Redaction
       can [:create, :destroy], :session
       can [:read, :data, :georss], Trace
-      can [:read, :terms, :create, :save, :suspended, :auth_success, :auth_failure], User
-      can [:read, :blocks_on, :blocks_by], UserBlock
+      can [:read, :create, :suspended, :auth_success, :auth_failure], User
+      can [:read, :update], :account_terms
+      can :read, UserBlock
     end
 
     if user&.active?
@@ -42,7 +43,7 @@ class Ability
         can :update, DiaryEntry, :user => user
         can [:create], DiaryComment
         can [:make_friend, :remove_friend], Friendship
-        can [:read, :create, :reply, :inbox, :outbox, :muted, :mark, :unmute, :destroy], Message
+        can [:read, :create, :mark, :unmute, :destroy], Message
         can [:close, :reopen], Note
         can [:read, :update], :preference
         can :update, :profile
@@ -56,7 +57,7 @@ class Ability
           can [:read, :resolve, :ignore, :reopen], Issue
           can :create, IssueComment
           can [:create, :update, :destroy], Redaction
-          can [:create, :revoke_all], UserBlock
+          can [:create, :destroy], UserBlock
           can :update, UserBlock, :creator => user
           can :update, UserBlock, :revoker => user
           can :update, UserBlock, :active? => true
index 625d43a5228f0b07a391f988a43cae3327364e67..bd5fd4dd62f359ecd0b163e555c87bd6420bd0f3 100644 (file)
@@ -2,8 +2,10 @@ $(document).ready(function () {
   var marker, map;
 
   function setLocation(e) {
-    $("#latitude").val(e.latlng.lat);
-    $("#longitude").val(e.latlng.lng);
+    const latlng = e.latlng.wrap();
+
+    $("#latitude").val(latlng.lat);
+    $("#longitude").val(latlng.lng);
 
     if (marker) {
       map.removeLayer(marker);
index 75a1f7b4dfa770463867cf7fafafbaf05babb1e3..caf40f6b6e7322ce5923e3f8b201a6a41ac73d42 100644 (file)
@@ -1,30 +1,26 @@
 OSM.Changeset = function (map) {
   var page = {},
-      content = $("#sidebar_content"),
-      currentChangesetId;
+      content = $("#sidebar_content");
 
-  page.pushstate = page.popstate = function (path, id) {
+  page.pushstate = page.popstate = function (path) {
     OSM.loadSidebarContent(path, function () {
-      page.load(path, id);
+      page.load();
     });
   };
 
-  page.load = function (path, id) {
-    if (id) currentChangesetId = id;
-    initialize();
-    addChangeset(currentChangesetId, true);
-  };
+  page.load = function () {
+    const changesetData = content.find("[data-changeset]").data("changeset");
+    changesetData.type = "changeset";
 
-  function addChangeset(id, center) {
-    map.addObject({ type: "changeset", id: parseInt(id, 10) }, function (bounds) {
-      if (!window.location.hash && bounds.isValid() &&
-          (center || !map.getBounds().contains(bounds))) {
+    initialize();
+    map.addObject(changesetData, function (bounds) {
+      if (!window.location.hash && bounds.isValid()) {
         OSM.router.withoutMoveListener(function () {
           map.fitBounds(bounds);
         });
       }
     });
-  }
+  };
 
   function updateChangeset(method, url, include_data) {
     var data;
index c6ba0c2edc9831853eedfec9f533531d71d5f341..ae8f027ed8727586f2b48d317f473f6fc8f1fe67 100644 (file)
@@ -164,6 +164,7 @@ OSM.History = function (map) {
   page.unload = function () {
     map.removeLayer(group);
     map.off("moveend", update);
+    map.off("zoomend", updateBounds);
   };
 
   return page;
index 887ba043b12b00bda5478b4e2dfd3aeec305efd3..4f38f8b55754267eab293788c51793df986a3064 100644 (file)
@@ -5,7 +5,7 @@ OSM.NewNote = function (map) {
       content = $("#sidebar_content"),
       page = {},
       addNoteButton = $(".control-note .control-button"),
-      newNote,
+      newNoteMarker,
       halo;
 
   var noteIcons = {
@@ -35,39 +35,21 @@ OSM.NewNote = function (map) {
     OSM.router.route("/note/new");
   });
 
-  function createNote(marker, form, url) {
-    var location = marker.getLatLng().wrap();
-
-    marker.options.draggable = false;
-    marker.dragging.disable();
-
-    $(form).find("input[type=submit]").prop("disabled", true);
-
+  function createNote(location, text, callback) {
     $.ajax({
-      url: url,
+      url: "/api/0.6/notes.json",
       type: "POST",
       oauth: true,
       data: {
         lat: location.lat,
         lon: location.lng,
-        text: $(form.text).val()
+        text
       },
-      success: function (feature) {
-        noteCreated(feature, marker);
-      }
+      success: callback
     });
-
-    function noteCreated(feature, marker) {
-      content.find("textarea").val("");
-      updateMarker(feature);
-      newNote = null;
-      noteLayer.removeLayer(marker);
-      addNoteButton.removeClass("active");
-      OSM.router.route("/note/" + feature.properties.id);
-    }
   }
 
-  function updateMarker(feature) {
+  function addCreatedNoteMarker(feature) {
     var marker = L.marker(feature.geometry.coordinates.reverse(), {
       icon: noteIcons[feature.properties.status],
       opacity: 0.9,
@@ -75,38 +57,78 @@ OSM.NewNote = function (map) {
     });
     marker.id = feature.properties.id;
     marker.addTo(noteLayer);
-    return marker;
   }
 
-  page.pushstate = page.popstate = function (path) {
-    OSM.loadSidebarContent(path, function () {
-      page.load(path);
+  function addHalo(latlng) {
+    if (halo) map.removeLayer(halo);
+
+    halo = L.circleMarker(latlng, {
+      weight: 2.5,
+      radius: 20,
+      fillOpacity: 0.5,
+      color: "#FF6200"
     });
-  };
 
-  function newHalo(loc, a) {
-    var hasHalo = halo && map.hasLayer(halo);
+    map.addLayer(halo);
+  }
 
-    if (a === "dragstart" && hasHalo) {
-      map.removeLayer(halo);
-    } else {
-      if (hasHalo) map.removeLayer(halo);
+  function removeHalo() {
+    if (halo) map.removeLayer(halo);
+    halo = null;
+  }
 
-      halo = L.circleMarker(loc, {
-        weight: 2.5,
-        radius: 20,
-        fillOpacity: 0.5,
-        color: "#FF6200"
-      });
+  function addNewNoteMarker(latlng) {
+    if (newNoteMarker) map.removeLayer(newNoteMarker);
 
-      map.addLayer(halo);
-    }
+    newNoteMarker = L.marker(latlng, {
+      icon: noteIcons.new,
+      opacity: 0.9,
+      draggable: true
+    });
+
+    newNoteMarker.on("dragstart dragend", function (a) {
+      removeHalo();
+      if (a.type === "dragend") {
+        addHalo(newNoteMarker.getLatLng());
+      }
+    });
+
+    newNoteMarker.addTo(map);
+    addHalo(newNoteMarker.getLatLng());
+
+    newNoteMarker.on("dragend", function () {
+      content.find("textarea").focus();
+    });
   }
 
-  page.load = function (path) {
-    if (addNoteButton.hasClass("disabled")) return;
-    if (addNoteButton.hasClass("active")) return;
+  function removeNewNoteMarker() {
+    removeHalo();
+    if (newNoteMarker) map.removeLayer(newNoteMarker);
+    newNoteMarker = null;
+  }
+
+  function moveNewNotMarkerToClick(e) {
+    if (newNoteMarker) newNoteMarker.setLatLng(e.latlng);
+    if (halo) halo.setLatLng(e.latlng);
+    content.find("textarea").focus();
+  }
+
+  function updateControls() {
+    const zoomedOut = addNoteButton.hasClass("disabled");
+    const withoutText = content.find("textarea").val() === "";
 
+    content.find("#new-note-zoom-warning").prop("hidden", !zoomedOut);
+    content.find("input[type=submit]").prop("disabled", zoomedOut || withoutText);
+    if (newNoteMarker) newNoteMarker.setOpacity(zoomedOut ? 0.5 : 0.9);
+  }
+
+  page.pushstate = page.popstate = function (path) {
+    OSM.loadSidebarContent(path, function () {
+      page.load(path);
+    });
+  };
+
+  page.load = function (path) {
     addNoteButton.addClass("active");
 
     map.addLayer(noteLayer);
@@ -124,44 +146,43 @@ OSM.NewNote = function (map) {
       padding: [50, 50]
     });
 
-    newNote = L.marker(markerLatlng, {
-      icon: noteIcons.new,
-      opacity: 0.9,
-      draggable: true
-    });
-
-    newNote.on("dragstart dragend", function (a) {
-      newHalo(newNote.getLatLng(), a.type);
-    });
-
-    newNote.addTo(noteLayer);
-    newHalo(newNote.getLatLng());
-
-    newNote.on("remove", function () {
-      addNoteButton.removeClass("active");
-    }).on("dragend", function () {
-      content.find("textarea").focus();
-    });
+    addNewNoteMarker(markerLatlng);
 
     content.find("textarea")
-      .on("input", disableWhenBlank)
+      .on("input", updateControls)
       .focus();
 
-    function disableWhenBlank(e) {
-      $(e.target.form.add).prop("disabled", $(e.target).val() === "");
-    }
-
     content.find("input[type=submit]").on("click", function (e) {
+      const location = newNoteMarker.getLatLng().wrap();
+      const text = content.find("textarea").val();
+
       e.preventDefault();
-      createNote(newNote, e.target.form, "/api/0.6/notes.json");
+      $(this).prop("disabled", true);
+      newNoteMarker.options.draggable = false;
+      newNoteMarker.dragging.disable();
+
+      createNote(location, text, (feature) => {
+        if (typeof OSM.user === "undefined") {
+          var anonymousNotesCount = Number(Cookies.get("_osm_anonymous_notes_count")) || 0;
+          Cookies.set("_osm_anonymous_notes_count", anonymousNotesCount + 1, { secure: true, expires: 30, path: "/", samesite: "lax" });
+        }
+        content.find("textarea").val("");
+        addCreatedNoteMarker(feature);
+        OSM.router.route("/note/" + feature.properties.id);
+      });
     });
 
+    map.on("click", moveNewNotMarkerToClick);
+    addNoteButton.on("disabled enabled", updateControls);
+    updateControls();
+
     return map.getState();
   };
 
   page.unload = function () {
-    if (newNote) noteLayer.removeLayer(newNote);
-    if (halo) map.removeLayer(halo);
+    map.off("click", moveNewNotMarkerToClick);
+    addNoteButton.off("disabled enabled", updateControls);
+    removeNewNoteMarker();
     addNoteButton.removeClass("active");
   };
 
index 6537b0b233568ada1988c56d6c215789864a8f30..e0c2ee60b47fb0ddd5251ac520b3c8e234f8ebca 100644 (file)
@@ -267,7 +267,7 @@ L.OSM.Map = L.Map.extend({
 
     this.removeObject();
 
-    if (object.type === "note") {
+    if (object.type === "note" || object.type === "changeset") {
       this._objectLoader = {
         abort: function () {}
       };
@@ -275,18 +275,27 @@ L.OSM.Map = L.Map.extend({
       this._object = object;
       this._objectLayer = L.featureGroup().addTo(this);
 
-      L.circleMarker(object.latLng, haloStyle).addTo(this._objectLayer);
+      if (object.type === "note") {
+        L.circleMarker(object.latLng, haloStyle).addTo(this._objectLayer);
 
-      if (object.icon) {
-        L.marker(object.latLng, {
-          icon: object.icon,
-          opacity: 1,
-          interactive: true
-        }).addTo(this._objectLayer);
+        if (object.icon) {
+          L.marker(object.latLng, {
+            icon: object.icon,
+            opacity: 1,
+            interactive: true
+          }).addTo(this._objectLayer);
+        }
+      } else if (object.type === "changeset") {
+        if (object.bbox) {
+          L.rectangle([
+            [object.bbox.minlat, object.bbox.minlon],
+            [object.bbox.maxlat, object.bbox.maxlon]
+          ], changesetStyle).addTo(this._objectLayer);
+        }
       }
 
       if (callback) callback(this._objectLayer.getBounds());
-    } else { // element or changeset handled by L.OSM.DataLayer
+    } else { // element handled by L.OSM.DataLayer
       var map = this;
       this._objectLoader = $.ajax({
         url: OSM.apiUrl(object),
@@ -303,13 +312,11 @@ L.OSM.Map = L.Map.extend({
             }
           });
 
-          map._objectLayer.interestingNode = function (node, ways, relations) {
+          map._objectLayer.interestingNode = function (node, wayNodes, relationNodes) {
             if (object.type === "node") {
               return true;
             } else if (object.type === "relation") {
-              for (var i = 0; i < relations.length; i++) {
-                if (relations[i].members.indexOf(node) !== -1) return true;
-              }
+              return Boolean(relationNodes[node.id]);
             } else {
               return false;
             }
index 5f801096731793a376ca0c3cdf0f729c2c2312a5..19fc9392c0af65497bf686f8e0c24020cdba3050 100644 (file)
@@ -14,12 +14,19 @@ L.OSM.note = function (options) {
     map.on("zoomend", update);
 
     function update() {
-      var disabled = OSM.STATUS === "database_offline" || map.getZoom() < 12;
+      var wasDisabled = link.hasClass("disabled"),
+          isDisabled = OSM.STATUS === "database_offline" || map.getZoom() < 12;
       link
-        .toggleClass("disabled", disabled)
-        .attr("data-bs-original-title", I18n.t(disabled ?
+        .toggleClass("disabled", isDisabled)
+        .attr("data-bs-original-title", I18n.t(isDisabled ?
           "javascripts.site.createnote_disabled_tooltip" :
           "javascripts.site.createnote_tooltip"));
+
+      if (isDisabled && !wasDisabled) {
+        link.trigger("disabled");
+      } else if (wasDisabled && !isDisabled) {
+        link.trigger("enabled");
+      }
     }
 
     update();
index 323f60e08c192a91d2934f5e2309c1841591f357..9ce6aec3439542d7f213ab62faaee26222308b6d 100644 (file)
@@ -818,7 +818,7 @@ tr.turn {
 
 /* Rules for the account confirmation page */
 
-.users-terms {
+.accounts-terms-show {
   .legale {
     padding: $lineheight;
     margin-bottom: $lineheight;
similarity index 92%
rename from app/controllers/account/deletions_controller.rb
rename to app/controllers/accounts/deletions_controller.rb
index 2e3c777fa362b7cd4a3070215715468e14c6388e..303da6cfb5d0d9bb9f0e7b1dde499a084d79abe5 100644 (file)
@@ -1,4 +1,4 @@
-module Account
+module Accounts
   class DeletionsController < ApplicationController
     layout "site"
 
diff --git a/app/controllers/accounts/terms_controller.rb b/app/controllers/accounts/terms_controller.rb
new file mode 100644 (file)
index 0000000..0513a03
--- /dev/null
@@ -0,0 +1,65 @@
+module Accounts
+  class TermsController < ApplicationController
+    include SessionMethods
+
+    layout "site"
+
+    before_action :disable_terms_redirect
+    before_action :authorize_web
+    before_action :set_locale
+    before_action :check_database_readable
+
+    authorize_resource :class => :account_terms
+
+    def show
+      @legale = params[:legale] || OSM.ip_to_country(request.remote_ip) || Settings.default_legale
+      @text = OSM.legal_text_for_country(@legale)
+
+      if request.xhr?
+        render :partial => "terms"
+      else
+        @title = t ".title"
+
+        if current_user&.terms_agreed?
+          # Already agreed to terms, so just show settings
+          redirect_to edit_account_path
+        elsif current_user.nil?
+          redirect_to login_path(:referer => request.fullpath)
+        end
+      end
+    end
+
+    def update
+      @title = t "users.new.title"
+
+      if params[:decline] || !(params[:read_tou] && params[:read_ct])
+        if current_user
+          current_user.terms_seen = true
+
+          flash[:notice] = { :partial => "accounts/terms/terms_declined_flash" } if current_user.save
+
+          referer = safe_referer(params[:referer]) if params[:referer]
+
+          redirect_to referer || edit_account_path
+        elsif params[:decline]
+          redirect_to t("users.terms.declined"), :allow_other_host => true
+        else
+          redirect_to account_terms_path
+        end
+      elsif current_user
+        unless current_user.terms_agreed?
+          current_user.consider_pd = params[:user][:consider_pd]
+          current_user.tou_agreed = Time.now.utc
+          current_user.terms_agreed = Time.now.utc
+          current_user.terms_seen = true
+
+          flash[:notice] = t "users.new.terms accepted" if current_user.save
+        end
+
+        referer = safe_referer(params[:referer]) if params[:referer]
+
+        redirect_to referer || edit_account_path
+      end
+    end
+  end
+end
index cbbd8539cc76e7333437615341a8a2f9b45ba06f..ea5abe8dfc57a2afcab4638ae390dcd61163af15 100644 (file)
@@ -5,7 +5,6 @@ module Api
     before_action :authorize
 
     before_action :check_api_writable, :only => [:create, :update, :destroy]
-    before_action :check_api_readable, :except => [:create, :update, :destroy]
 
     authorize_resource
 
index 32b53bad71c3f431d79234d65e354f6cafcf13c9..f6006fe5e4ccdc7139a6db14d5e0cf7adf5ee748 100644 (file)
@@ -20,7 +20,7 @@ class ApplicationController < ActionController::Base
   helper_method :oauth_token
 
   def self.allow_thirdparty_images(**options)
-    content_security_policy(options) do |policy|
+    content_security_policy(**options) do |policy|
       policy.img_src("*", :data)
     end
   end
@@ -56,11 +56,11 @@ class ApplicationController < ActionController::Base
       # don't allow access to any auth-requiring part of the site unless
       # the new CTs have been seen (and accept/decline chosen).
       elsif !current_user.terms_seen && flash[:skip_terms].nil?
-        flash[:notice] = t "users.terms.you need to accept or decline"
+        flash[:notice] = t "accounts.terms.show.you need to accept or decline"
         if params[:referer]
-          redirect_to :controller => "users", :action => "terms", :referer => params[:referer]
+          redirect_to account_terms_path(:referer => params[:referer])
         else
-          redirect_to :controller => "users", :action => "terms", :referer => request.fullpath
+          redirect_to account_terms_path(:referer => request.fullpath)
         end
       end
     end
@@ -114,7 +114,7 @@ class ApplicationController < ActionController::Base
 
   def check_database_writable(need_api: false)
     if Settings.status == "database_offline" || Settings.status == "database_readonly" ||
-       (need_api && (Settings.status == "api_offline" || Settings.status == "api_readonly"))
+       (need_api && %w[api_offline api_readonly].include?(Settings.status))
       if request.xhr?
         report_error "Database offline for maintenance", :service_unavailable
       else
@@ -339,7 +339,7 @@ class ApplicationController < ActionController::Base
     begin
       referer = URI.parse(referer)
 
-      if referer.scheme == "http" || referer.scheme == "https"
+      if %w[http https].include?(referer.scheme)
         referer.scheme = nil
         referer.host = nil
         referer.port = nil
index 45cf0d9439607642725c088feb5517215e232524..4bbfac34f6dff3305b576e343a6e119e95784249 100644 (file)
@@ -39,6 +39,8 @@ module SessionMethods
     session[:fingerprint] = user.fingerprint
     session_expires_after 28.days if session[:remember_me]
 
+    cookies.delete :_osm_anonymous_notes_count
+
     target = referer || url_for(:controller => :site, :action => :index)
 
     # The user is logged in, so decide where to send them:
@@ -48,7 +50,7 @@ module SessionMethods
     # - If they were referred to the login, send them back there.
     # - Otherwise, send them to the home page.
     if !user.terms_seen
-      redirect_to :controller => :users, :action => :terms, :referer => target
+      redirect_to account_terms_path(:referer => target)
     elsif user.blocked_on_view
       redirect_to user.blocked_on_view, :referer => target
     else
index 7bbb3a0937b538ef95abffd014c58bab7443418c..72c1955e039ebf225f862752dff681b978fc2e78 100644 (file)
@@ -30,6 +30,7 @@ class ConfirmationsController < ApplicationController
         user.email_valid = true
         flash[:notice] = gravatar_status_message(user) if gravatar_enable(user)
         user.save!
+        cookies.delete :_osm_anonymous_notes_count
         referer = safe_referer(params[:referer]) if params[:referer]
 
         pending_user = session.delete(:pending_user)
index f6597cf4c0fac1f74fa69a2c12b9851fdc6ab4ad..676bc22a66a10306f1fc8c5f7628d40c5e7baee5 100644 (file)
@@ -13,7 +13,7 @@ class DiaryCommentsController < ApplicationController
   before_action :lookup_user, :only => :index
   before_action :check_database_writable, :only => [:create, :hide, :unhide]
 
-  allow_thirdparty_images :only => :index
+  allow_thirdparty_images :only => [:index, :create]
 
   def index
     @title = t ".title", :user => @user.display_name
index 760c9a301248d5bba8ff9b03ca7540e2d31d875d..27099cd9cf9835558624088b34568b0fa9e587fa 100644 (file)
@@ -123,7 +123,7 @@ class DiaryEntriesController < ApplicationController
       # Subscribe user to diary comments
       @diary_entry.subscriptions.create(:user => current_user)
 
-      redirect_to :action => "index", :display_name => current_user.display_name
+      redirect_to diary_entry_path(@diary_entry.user, @diary_entry)
     else
       render :action => "new"
     end
diff --git a/app/controllers/elements_controller.rb b/app/controllers/elements_controller.rb
new file mode 100644 (file)
index 0000000..99c8afe
--- /dev/null
@@ -0,0 +1,12 @@
+class ElementsController < ApplicationController
+  layout :map_layout
+
+  before_action :authorize_web
+  before_action :set_locale
+  before_action -> { check_database_readable(:need_api => true) }
+  before_action :require_oauth
+
+  authorize_resource
+
+  around_action :web_timeout
+end
index 43f276efa020a35cfdbb1719155c4a3f5e61c1fe..85b4476f6d4f2d620b65a4244bb23e7b0b458a20 100644 (file)
@@ -101,8 +101,9 @@ class GeocoderController < ApplicationController
       if klass == "boundary" && type == "administrative"
         rank = (place.attributes["address_rank"].to_i + 1) / 2
         prefix_name = t "geocoder.search_osm_nominatim.admin_levels.level#{rank}", :default => prefix_name
+        place_tags = %w[linked_place place]
         place.elements["extratags"].elements.each("tag") do |extratag|
-          prefix_name = t "geocoder.search_osm_nominatim.prefix.place.#{extratag.attributes['value']}", :default => prefix_name if extratag.attributes["key"] == "linked_place" || extratag.attributes["key"] == "place"
+          prefix_name = t "geocoder.search_osm_nominatim.prefix.place.#{extratag.attributes['value']}", :default => prefix_name if place_tags.include?(extratag.attributes["key"])
         end
       end
       prefix = t ".prefix_format", :name => prefix_name
diff --git a/app/controllers/messages/inboxes_controller.rb b/app/controllers/messages/inboxes_controller.rb
new file mode 100644 (file)
index 0000000..96ec27c
--- /dev/null
@@ -0,0 +1,8 @@
+module Messages
+  class InboxesController < MailboxesController
+    # Display the list of messages that have been sent to the user.
+    def show
+      @title = t ".title"
+    end
+  end
+end
diff --git a/app/controllers/messages/mailboxes_controller.rb b/app/controllers/messages/mailboxes_controller.rb
new file mode 100644 (file)
index 0000000..a0da9f5
--- /dev/null
@@ -0,0 +1,12 @@
+module Messages
+  class MailboxesController < ApplicationController
+    layout "site"
+
+    before_action :authorize_web
+    before_action :set_locale
+
+    authorize_resource :class => Message
+
+    before_action :check_database_readable
+  end
+end
diff --git a/app/controllers/messages/muted_inboxes_controller.rb b/app/controllers/messages/muted_inboxes_controller.rb
new file mode 100644 (file)
index 0000000..2d025cc
--- /dev/null
@@ -0,0 +1,10 @@
+module Messages
+  class MutedInboxesController < MailboxesController
+    # Display the list of muted messages received by the user.
+    def show
+      @title = t ".title"
+
+      redirect_to messages_inbox_path if current_user.muted_messages.none?
+    end
+  end
+end
diff --git a/app/controllers/messages/outboxes_controller.rb b/app/controllers/messages/outboxes_controller.rb
new file mode 100644 (file)
index 0000000..f4d0a50
--- /dev/null
@@ -0,0 +1,8 @@
+module Messages
+  class OutboxesController < MailboxesController
+    # Display the list of messages that the user has sent to other users.
+    def show
+      @title = t ".title"
+    end
+  end
+end
diff --git a/app/controllers/messages/replies_controller.rb b/app/controllers/messages/replies_controller.rb
new file mode 100644 (file)
index 0000000..b1e7b8d
--- /dev/null
@@ -0,0 +1,50 @@
+module Messages
+  class RepliesController < ApplicationController
+    layout "site"
+
+    before_action :authorize_web
+    before_action :set_locale
+
+    authorize_resource :class => Message
+
+    before_action :check_database_readable
+    before_action :check_database_writable
+
+    allow_thirdparty_images
+
+    # Allow the user to reply to another message.
+    def new
+      message = Message.find(params[:message_id])
+
+      if message.recipient == current_user
+        message.update(:message_read => true)
+
+        @message = Message.new(
+          :recipient => message.sender,
+          :title => "Re: #{message.title.sub(/^Re:\s*/, '')}",
+          :body => "On #{message.sent_on} #{message.sender.display_name} wrote:\n\n#{message.body.gsub(/^/, '> ')}"
+        )
+
+        @title = @message.title
+
+        render "messages/new"
+      elsif message.sender == current_user
+        @message = Message.new(
+          :recipient => message.recipient,
+          :title => "Re: #{message.title.sub(/^Re:\s*/, '')}",
+          :body => "On #{message.sent_on} #{message.sender.display_name} wrote:\n\n#{message.body.gsub(/^/, '> ')}"
+        )
+
+        @title = @message.title
+
+        render "messages/new"
+      else
+        flash[:notice] = t ".wrong_user", :user => current_user.display_name
+        redirect_to login_path(:referer => request.fullpath)
+      end
+    rescue ActiveRecord::RecordNotFound
+      @title = t "messages.no_such_message.title"
+      render "messages/no_such_message", :status => :not_found
+    end
+  end
+end
index 7d86796b1ff18f0a62303851cf2457238817e987..cc5f6c56d19dd4a6481534bc082eace36fa403ef 100644 (file)
@@ -10,7 +10,7 @@ class MessagesController < ApplicationController
 
   before_action :lookup_user, :only => [:new, :create]
   before_action :check_database_readable
-  before_action :check_database_writable, :only => [:new, :create, :reply, :mark, :destroy]
+  before_action :check_database_writable, :only => [:new, :create, :mark, :destroy]
 
   allow_thirdparty_images :only => [:new, :create, :show]
 
@@ -49,7 +49,7 @@ class MessagesController < ApplicationController
     elsif @message.save
       flash[:notice] = t ".message_sent"
       UserMailer.message_notification(@message).deliver_later if @message.notify_recipient?
-      redirect_to :action => :inbox
+      redirect_to messages_outbox_path
     else
       @title = t "messages.new.title"
       render :action => "new"
@@ -66,65 +66,13 @@ class MessagesController < ApplicationController
 
       referer = safe_referer(params[:referer]) if params[:referer]
 
-      redirect_to referer || { :action => :inbox }, :status => :see_other
+      redirect_to referer || messages_inbox_path, :status => :see_other
     end
   rescue ActiveRecord::RecordNotFound
     @title = t "messages.no_such_message.title"
     render :action => "no_such_message", :status => :not_found
   end
 
-  # Allow the user to reply to another message.
-  def reply
-    message = Message.find(params[:message_id])
-
-    if message.recipient == current_user
-      message.update(:message_read => true)
-
-      @message = Message.new(
-        :recipient => message.sender,
-        :title => "Re: #{message.title.sub(/^Re:\s*/, '')}",
-        :body => "On #{message.sent_on} #{message.sender.display_name} wrote:\n\n#{message.body.gsub(/^/, '> ')}"
-      )
-
-      @title = @message.title
-
-      render :action => "new"
-    elsif message.sender == current_user
-      @message = Message.new(
-        :recipient => message.recipient,
-        :title => "Re: #{message.title.sub(/^Re:\s*/, '')}",
-        :body => "On #{message.sent_on} #{message.sender.display_name} wrote:\n\n#{message.body.gsub(/^/, '> ')}"
-      )
-
-      @title = @message.title
-
-      render :action => "new"
-    else
-      flash[:notice] = t ".wrong_user", :user => current_user.display_name
-      redirect_to login_path(:referer => request.fullpath)
-    end
-  rescue ActiveRecord::RecordNotFound
-    @title = t "messages.no_such_message.title"
-    render :action => "no_such_message", :status => :not_found
-  end
-
-  # Display the list of messages that have been sent to the user.
-  def inbox
-    @title = t ".title"
-  end
-
-  # Display the list of messages that the user has sent to other users.
-  def outbox
-    @title = t ".title"
-  end
-
-  # Display the list of muted messages received by the user.
-  def muted
-    @title = t ".title"
-
-    redirect_to inbox_messages_path if current_user.muted_messages.none?
-  end
-
   # Set the message as being read or unread.
   def mark
     @message = current_user.messages.unscope(:where => :muted).find(params[:message_id])
@@ -139,9 +87,9 @@ class MessagesController < ApplicationController
     if @message.save
       flash[:notice] = notice
       if @message.muted?
-        redirect_to muted_messages_path, :status => :see_other
+        redirect_to messages_muted_inbox_path, :status => :see_other
       else
-        redirect_to inbox_messages_path, :status => :see_other
+        redirect_to messages_inbox_path, :status => :see_other
       end
     end
   rescue ActiveRecord::RecordNotFound
@@ -160,9 +108,9 @@ class MessagesController < ApplicationController
     end
 
     if current_user.muted_messages.none?
-      redirect_to inbox_messages_path
+      redirect_to messages_inbox_path
     else
-      redirect_to muted_messages_path
+      redirect_to messages_muted_inbox_path
     end
   end
 
index a05fa8cd2455ced0d35476e6502f3e4c0557f6a5..0ef07dbbfc689772637c4fdffc3e2affc31802d0 100644 (file)
@@ -1,19 +1,7 @@
-class NodesController < ApplicationController
-  layout :map_layout
-
-  before_action :authorize_web
-  before_action :set_locale
-  before_action -> { check_database_readable(:need_api => true) }
-  before_action :require_oauth
-
-  authorize_resource
-
-  around_action :web_timeout
-
+class NodesController < ElementsController
   def show
     @type = "node"
     @feature = Node.preload(:node_tags, :containing_relation_members, :changeset => [:changeset_tags, :user], :ways => :way_tags).find(params[:id])
-    render "browse/feature"
   rescue ActiveRecord::RecordNotFound
     render "browse/not_found", :status => :not_found
   end
index c40e776b444074efc192c9e4ae496924a05dc640..4b4f3d6515f3698370e74d2c92cc96b779b642ac 100644 (file)
@@ -45,6 +45,7 @@ class NotesController < ApplicationController
   end
 
   def new
+    @anonymous_notes_count = request.cookies["_osm_anonymous_notes_count"].to_i || 0
     render :action => :new_readonly if api_status != "online"
   end
 end
diff --git a/app/controllers/old_elements_controller.rb b/app/controllers/old_elements_controller.rb
new file mode 100644 (file)
index 0000000..02c999b
--- /dev/null
@@ -0,0 +1,19 @@
+class OldElementsController < ApplicationController
+  layout :map_layout
+
+  before_action :authorize_web
+  before_action :set_locale
+  before_action -> { check_database_readable(:need_api => true) }
+  before_action :require_oauth
+
+  authorize_resource
+
+  before_action :require_moderator_for_unredacted_history
+  around_action :web_timeout
+
+  private
+
+  def require_moderator_for_unredacted_history
+    deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
+  end
+end
index 596b579673649c4bcd806c628dd8a8218a8344ed..3b187e4abff31d2d3c74574b9839073777a5b25d 100644 (file)
@@ -1,20 +1,7 @@
-class OldNodesController < ApplicationController
-  layout :map_layout
-
-  before_action :authorize_web
-  before_action :set_locale
-  before_action -> { check_database_readable(:need_api => true) }
-  before_action :require_oauth
-
-  authorize_resource
-
-  before_action :require_moderator_for_unredacted_history
-  around_action :web_timeout
-
+class OldNodesController < OldElementsController
   def index
     @type = "node"
     @feature = Node.preload(:node_tags, :old_nodes => [:old_tags, { :changeset => [:changeset_tags, :user] }]).find(params[:id])
-    render "browse/history"
   rescue ActiveRecord::RecordNotFound
     render "browse/not_found", :status => :not_found
   end
@@ -23,12 +10,6 @@ class OldNodesController < ApplicationController
     @type = "node"
     @feature = OldNode.preload(:old_tags, :changeset => [:changeset_tags, :user]).find([params[:id], params[:version]])
   rescue ActiveRecord::RecordNotFound
-    render :action => "not_found", :status => :not_found
-  end
-
-  private
-
-  def require_moderator_for_unredacted_history
-    deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
+    render "browse/not_found", :status => :not_found
   end
 end
index d57cf25fe070dc3d3a278650ede0c2d049c67e89..ec256d6af680caaf10b39f4b20c453d1885b16da 100644 (file)
@@ -1,20 +1,7 @@
-class OldRelationsController < ApplicationController
-  layout :map_layout
-
-  before_action :authorize_web
-  before_action :set_locale
-  before_action -> { check_database_readable(:need_api => true) }
-  before_action :require_oauth
-
-  authorize_resource
-
-  before_action :require_moderator_for_unredacted_history
-  around_action :web_timeout
-
+class OldRelationsController < OldElementsController
   def index
     @type = "relation"
     @feature = Relation.preload(:relation_tags, :old_relations => [:old_tags, { :changeset => [:changeset_tags, :user], :old_members => :member }]).find(params[:id])
-    render "browse/history"
   rescue ActiveRecord::RecordNotFound
     render "browse/not_found", :status => :not_found
   end
@@ -23,12 +10,6 @@ class OldRelationsController < ApplicationController
     @type = "relation"
     @feature = OldRelation.preload(:old_tags, :changeset => [:changeset_tags, :user], :old_members => :member).find([params[:id], params[:version]])
   rescue ActiveRecord::RecordNotFound
-    render :action => "not_found", :status => :not_found
-  end
-
-  private
-
-  def require_moderator_for_unredacted_history
-    deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
+    render "browse/not_found", :status => :not_found
   end
 end
index de60de317fde2ed5c89e5e6d675b51e545d69ebe..1b3ebd747147d18e1502b51a6dd5eac08550499a 100644 (file)
@@ -1,20 +1,7 @@
-class OldWaysController < ApplicationController
-  layout :map_layout
-
-  before_action :authorize_web
-  before_action :set_locale
-  before_action -> { check_database_readable(:need_api => true) }
-  before_action :require_oauth
-
-  authorize_resource
-
-  before_action :require_moderator_for_unredacted_history
-  around_action :web_timeout
-
+class OldWaysController < OldElementsController
   def index
     @type = "way"
     @feature = Way.preload(:way_tags, :old_ways => [:old_tags, { :changeset => [:changeset_tags, :user], :old_nodes => { :node => [:node_tags, :ways] } }]).find(params[:id])
-    render "browse/history"
   rescue ActiveRecord::RecordNotFound
     render "browse/not_found", :status => :not_found
   end
@@ -23,12 +10,6 @@ class OldWaysController < ApplicationController
     @type = "way"
     @feature = OldWay.preload(:old_tags, :changeset => [:changeset_tags, :user], :old_nodes => { :node => [:node_tags, :ways] }).find([params[:id], params[:version]])
   rescue ActiveRecord::RecordNotFound
-    render :action => "not_found", :status => :not_found
-  end
-
-  private
-
-  def require_moderator_for_unredacted_history
-    deny_access(nil) if params[:show_redactions] && !current_user&.moderator?
+    render "browse/not_found", :status => :not_found
   end
 end
index 8aeefd6cccec983d13ab103d2f5e76de5bf3bc8b..9199c9e4a633a5d3945a94d5cf2c923efb45772d 100644 (file)
@@ -1,19 +1,7 @@
-class RelationsController < ApplicationController
-  layout :map_layout
-
-  before_action :authorize_web
-  before_action :set_locale
-  before_action -> { check_database_readable(:need_api => true) }
-  before_action :require_oauth
-
-  authorize_resource
-
-  around_action :web_timeout
-
+class RelationsController < ElementsController
   def show
     @type = "relation"
     @feature = Relation.preload(:relation_tags, :containing_relation_members, :changeset => [:changeset_tags, :user], :relation_members => :member).find(params[:id])
-    render "browse/feature"
   rescue ActiveRecord::RecordNotFound
     render "browse/not_found", :status => :not_found
   end
index 58f0a11c9340bbd796082622f3d6dcdbe852d13d..9adbaa1953fd9fe774bf9bb90eb130da53aed90e 100644 (file)
@@ -24,7 +24,7 @@ class SiteController < ApplicationController
   end
 
   def index
-    session[:location] ||= OSM.ip_location(request.env["REMOTE_ADDR"]) unless Settings.status == "database_readonly" || Settings.status == "database_offline"
+    session[:location] ||= OSM.ip_location(request.env["REMOTE_ADDR"]) unless %w[database_readonly database_offline].include?(Settings.status)
   end
 
   def permalink
index 551371794240836b53110059bd945b979c9cc287..a526f529e9e1fb2da92e982708106898e56b9e46 100644 (file)
@@ -9,11 +9,11 @@ class UserBlocksController < ApplicationController
 
   authorize_resource
 
-  before_action :lookup_user, :only => [:new, :create, :revoke_all, :blocks_on, :blocks_by]
+  before_action :lookup_user, :only => [:new, :create]
   before_action :lookup_user_block, :only => [:show, :edit, :update]
   before_action :require_valid_params, :only => [:create, :update]
   before_action :check_database_readable
-  before_action :check_database_writable, :only => [:create, :update, :revoke_all]
+  before_action :check_database_writable, :only => [:create, :update]
 
   def index
     @params = params.permit
@@ -105,46 +105,6 @@ class UserBlocksController < ApplicationController
     end
   end
 
-  ##
-  # revokes all active blocks
-  def revoke_all
-    if request.post? && params[:confirm]
-      @user.blocks.active.each { |block| block.revoke!(current_user) }
-      flash[:notice] = t ".flash"
-      redirect_to user_blocks_on_path(@user)
-    end
-  end
-
-  ##
-  # shows a list of all the blocks on the given user
-  def blocks_on
-    @params = params.permit(:display_name)
-
-    user_blocks = UserBlock.where(:user => @user)
-
-    @user_blocks, @newer_user_blocks_id, @older_user_blocks_id = get_page_items(user_blocks, :includes => [:user, :creator, :revoker])
-
-    @show_user_name = false
-    @show_creator_name = true
-
-    render :partial => "page" if turbo_frame_request_id == "pagination"
-  end
-
-  ##
-  # shows a list of all the blocks by the given user.
-  def blocks_by
-    @params = params.permit(:display_name)
-
-    user_blocks = UserBlock.where(:creator => @user)
-
-    @user_blocks, @newer_user_blocks_id, @older_user_blocks_id = get_page_items(user_blocks, :includes => [:user, :creator, :revoker])
-
-    @show_user_name = true
-    @show_creator_name = false
-
-    render :partial => "page" if turbo_frame_request_id == "pagination"
-  end
-
   private
 
   ##
diff --git a/app/controllers/users/issued_blocks_controller.rb b/app/controllers/users/issued_blocks_controller.rb
new file mode 100644 (file)
index 0000000..b533b5f
--- /dev/null
@@ -0,0 +1,31 @@
+module Users
+  class IssuedBlocksController < ApplicationController
+    include UserMethods
+    include PaginationMethods
+
+    layout "site"
+
+    before_action :authorize_web
+    before_action :set_locale
+
+    authorize_resource :class => UserBlock
+
+    before_action :lookup_user
+    before_action :check_database_readable
+
+    ##
+    # shows a list of all the blocks by the given user.
+    def show
+      @params = params.permit(:user_display_name)
+
+      user_blocks = UserBlock.where(:creator => @user)
+
+      @user_blocks, @newer_user_blocks_id, @older_user_blocks_id = get_page_items(user_blocks, :includes => [:user, :creator, :revoker])
+
+      @show_user_name = true
+      @show_creator_name = false
+
+      render :partial => "user_blocks/page" if turbo_frame_request_id == "pagination"
+    end
+  end
+end
diff --git a/app/controllers/users/received_blocks_controller.rb b/app/controllers/users/received_blocks_controller.rb
new file mode 100644 (file)
index 0000000..6f6cabd
--- /dev/null
@@ -0,0 +1,48 @@
+module Users
+  class ReceivedBlocksController < ApplicationController
+    include UserMethods
+    include PaginationMethods
+
+    layout "site"
+
+    before_action :authorize_web
+    before_action :set_locale
+
+    authorize_resource :class => UserBlock
+
+    before_action :lookup_user
+    before_action :check_database_readable
+    before_action :check_database_writable, :only => :destroy
+
+    ##
+    # shows a list of all the blocks on the given user
+    def show
+      @params = params.permit(:user_display_name)
+
+      user_blocks = UserBlock.where(:user => @user)
+
+      @user_blocks, @newer_user_blocks_id, @older_user_blocks_id = get_page_items(user_blocks, :includes => [:user, :creator, :revoker])
+
+      @show_user_name = false
+      @show_creator_name = true
+
+      render :partial => "user_blocks/page" if turbo_frame_request_id == "pagination"
+    end
+
+    ##
+    # shows revoke all active blocks page
+    def edit; end
+
+    ##
+    # revokes all active blocks
+    def destroy
+      if params[:confirm]
+        @user.blocks.active.each { |block| block.revoke!(current_user) }
+        flash[:notice] = t ".flash"
+        redirect_to user_received_blocks_path(@user)
+      else
+        render :action => :edit
+      end
+    end
+  end
+end
index 471215c92234f8535cd459dad4b44e52b5f929f4..904b960a28e157ec9c7484179debcd4efa3d637e 100644 (file)
@@ -6,7 +6,6 @@ class UsersController < ApplicationController
   layout "site"
 
   skip_before_action :verify_authenticity_token, :only => [:auth_success]
-  before_action :disable_terms_redirect, :only => [:terms, :save]
   before_action :authorize_web
   before_action :set_locale
   before_action :check_database_readable
@@ -77,7 +76,24 @@ class UsersController < ApplicationController
         render :action => "new"
       else
         # Save the user record
-        save_new_user params[:email_hmac], params[:referer]
+        if save_new_user params[:email_hmac]
+          SIGNUP_IP_LIMITER&.update(request.remote_ip)
+          SIGNUP_EMAIL_LIMITER&.update(canonical_email(current_user.email))
+
+          flash[:matomo_goal] = Settings.matomo["goals"]["signup"] if defined?(Settings.matomo)
+
+          referer = welcome_path(welcome_options(params[:referer]))
+
+          if current_user.status == "active"
+            successful_login(current_user, referer)
+          else
+            session[:pending_user] = current_user.id
+            UserMailer.signup_confirm(current_user, current_user.generate_token_for(:new_user), referer).deliver_later
+            redirect_to :controller => :confirmations, :action => :confirm, :display_name => current_user.display_name
+          end
+        else
+          render :action => "new", :referer => params[:referer]
+        end
       end
     end
   end
@@ -89,57 +105,6 @@ class UsersController < ApplicationController
     redirect_to user_path(:display_name => params[:display_name])
   end
 
-  def terms
-    @legale = params[:legale] || OSM.ip_to_country(request.remote_ip) || Settings.default_legale
-    @text = OSM.legal_text_for_country(@legale)
-
-    if request.xhr?
-      render :partial => "terms"
-    else
-      @title = t ".title"
-
-      if current_user&.terms_agreed?
-        # Already agreed to terms, so just show settings
-        redirect_to edit_account_path
-      elsif current_user.nil?
-        redirect_to login_path(:referer => request.fullpath)
-      end
-    end
-  end
-
-  def save
-    @title = t "users.new.title"
-
-    if params[:decline] || !(params[:read_tou] && params[:read_ct])
-      if current_user
-        current_user.terms_seen = true
-
-        flash[:notice] = { :partial => "users/terms_declined_flash" } if current_user.save
-
-        referer = safe_referer(params[:referer]) if params[:referer]
-
-        redirect_to referer || edit_account_path
-      elsif params[:decline]
-        redirect_to t("users.terms.declined"), :allow_other_host => true
-      else
-        redirect_to :action => :terms
-      end
-    elsif current_user
-      unless current_user.terms_agreed?
-        current_user.consider_pd = params[:user][:consider_pd]
-        current_user.tou_agreed = Time.now.utc
-        current_user.terms_agreed = Time.now.utc
-        current_user.terms_seen = true
-
-        flash[:notice] = t "users.new.terms accepted" if current_user.save
-      end
-
-      referer = safe_referer(params[:referer]) if params[:referer]
-
-      redirect_to referer || edit_account_path
-    end
-  end
-
   def go_public
     current_user.data_public = true
     current_user.save
@@ -238,7 +203,7 @@ class UsersController < ApplicationController
 
   private
 
-  def save_new_user(email_hmac, referer = nil)
+  def save_new_user(email_hmac)
     current_user.data_public = true
     current_user.description = "" if current_user.description.nil?
     current_user.creation_address = request.remote_ip
@@ -254,24 +219,7 @@ class UsersController < ApplicationController
       current_user.activate
     end
 
-    if current_user.save
-      SIGNUP_IP_LIMITER&.update(request.remote_ip)
-      SIGNUP_EMAIL_LIMITER&.update(canonical_email(current_user.email))
-
-      flash[:matomo_goal] = Settings.matomo["goals"]["signup"] if defined?(Settings.matomo)
-
-      referer = welcome_path(welcome_options(referer))
-
-      if current_user.status == "active"
-        successful_login(current_user, referer)
-      else
-        session[:pending_user] = current_user.id
-        UserMailer.signup_confirm(current_user, current_user.generate_token_for(:new_user), referer).deliver_later
-        redirect_to :controller => :confirmations, :action => :confirm, :display_name => current_user.display_name
-      end
-    else
-      render :action => "new", :referer => params[:referer]
-    end
+    current_user.save
   end
 
   def welcome_options(referer = nil)
index d4abe2db7fca9e289d4e5ef163241fa26d120a50..d5c5d8736004f50672f3878787df11db86efeec5 100644 (file)
@@ -1,19 +1,7 @@
-class WaysController < ApplicationController
-  layout :map_layout
-
-  before_action :authorize_web
-  before_action :set_locale
-  before_action -> { check_database_readable(:need_api => true) }
-  before_action :require_oauth
-
-  authorize_resource
-
-  around_action :web_timeout
-
+class WaysController < ElementsController
   def show
     @type = "way"
     @feature = Way.preload(:way_tags, :containing_relation_members, :changeset => [:changeset_tags, :user], :nodes => [:node_tags, { :ways => :way_tags }]).find(params[:id])
-    render "browse/feature"
   rescue ActiveRecord::RecordNotFound
     render "browse/not_found", :status => :not_found
   end
index fcf253289ea45ff65e11f0f30c5909146bfa1f10..ff6dcd2ff194820556e8a85382f97677ddd97d30 100644 (file)
@@ -37,7 +37,8 @@ module ApplicationHelper
     if content_for? :body_class
       content_for :body_class
     else
-      "#{params[:controller]} #{params[:controller]}-#{params[:action]}"
+      controller_part = params[:controller].tr("/", "-")
+      "#{controller_part} #{controller_part}-#{params[:action]}"
     end
   end
 
index ae953c5833c59c59e2b135d342f0d2c7aa2f21e5..4605658f65c0a3f1f0202cd70b7e3934adad9f96 100644 (file)
@@ -41,4 +41,20 @@ module ChangesetsHelper
       t "changesets.index.title"
     end
   end
+
+  def changeset_data(changeset)
+    changeset_data = { :id => changeset.id }
+
+    if changeset.bbox_valid?
+      bbox = changeset.bbox.to_unscaled
+      changeset_data[:bbox] = {
+        :minlon => bbox.min_lon,
+        :minlat => bbox.min_lat,
+        :maxlon => bbox.max_lon,
+        :maxlat => bbox.max_lat
+      }
+    end
+
+    changeset_data
+  end
 end
index 8a3a8a3eb460f2b8c550d7daeba3c99e724e48f2..f18a6250c9e556f65892b30eca7691fd2e6f1ba4 100644 (file)
@@ -27,19 +27,15 @@ module UserBlocksHelper
 
   def block_short_status(block)
     if block.active?
-      if block.needs_view?
-        if block.ends_at > Time.now.utc
-          t("user_blocks.helper.short.active_unread")
-        else
-          t("user_blocks.helper.short.expired_unread")
-        end
-      else
+      if block.ends_at > Time.now.utc
         t("user_blocks.helper.short.active")
+      else
+        t("user_blocks.helper.short.active_until_read")
       end
     else
       if block.revoker_id.nil?
-        if block.updated_at > block.ends_at
-          t("user_blocks.helper.short.read_html", :time => block_short_time_in_past(block.updated_at))
+        if block.deactivates_at > block.ends_at
+          t("user_blocks.helper.short.read_html", :time => block_short_time_in_past(block.deactivates_at))
         else
           t("user_blocks.helper.short.ended")
         end
index dee3dafbed35562ab865f11c64fcad4d61e8a067..1dd13fb2d220787af6562f11281abb6bd0da07cc 100644 (file)
@@ -78,7 +78,7 @@ class UserMailer < ApplicationMailer
       @text = message.body
       @title = message.title
       @readurl = message_url(message)
-      @replyurl = message_reply_url(message)
+      @replyurl = new_message_reply_url(message)
       @author = @from_user
 
       attach_user_avatar(message.sender)
index 20723b98d01ddc7e0efe3d732879c12c8345d77b..4d71b4b2933d02fdd63453147970f36d8369b24e 100644 (file)
@@ -86,11 +86,11 @@ class Trace < ApplicationRecord
   end
 
   def public?
-    visibility == "public" || visibility == "identifiable"
+    %w[public identifiable].include?(visibility)
   end
 
   def trackable?
-    visibility == "trackable" || visibility == "identifiable"
+    %w[trackable identifiable].include?(visibility)
   end
 
   def identifiable?
index a3e6f943bb9ef714979811c8c1c2e56015990a07..16f109c9f99b77d23ced80ae371be78bae461c4d 100644 (file)
   <fieldset class="mb-3">
     <label for="user_auth_provider" class="form-label"><%= t(".external auth") %></label>
     <div class="row">
-      <%= f.select(:auth_provider, { t("auth.providers.none") => "" }.merge(Auth.providers), :hide_label => true, :wrapper => { :class => "col-auto mb-0" }) %>
+      <%= f.select :auth_provider,
+                   Auth.providers.map { |provider| [I18n.t("auth.providers.#{provider}"), provider] },
+                   :include_blank => t("auth.providers.none"),
+                   :hide_label => true,
+                   :wrapper => { :class => "col-auto mb-0" } %>
       <%= f.text_field(:auth_uid, :hide_label => true, :wrapper => { :class => "col mb-0" }) %>
     </div>
     <small class="form-text text-body-secondary">(<a href="<%= t ".openid.link" %>" target="_new"><%= t ".openid.link text" %></a>)</small>
@@ -49,7 +53,7 @@
         <% end %>
       <% else %>
         <%= t ".contributor terms.not yet agreed" %>
-        <%= link_to t(".contributor terms.review link text"), :controller => "users", :action => "terms" %>
+        <%= link_to t(".contributor terms.review link text"), account_terms_path %>
       <% end %>
     </span>
   </div>
similarity index 98%
rename from app/views/users/terms.html.erb
rename to app/views/accounts/terms/show.html.erb
index a5dc3291de8968c1a02ab8a59a198ee853e0d8d8..3cc52302ff8a3d537d958e4ecf65ea5ecc19a6d6 100644 (file)
@@ -9,7 +9,7 @@
   </div>
 <% end %>
 
-<%= form_tag({ :action => "save" }) do %>
+<%= form_tag account_terms_path, :method => :put do %>
   <!-- legale is <%= @legale %> -->
   <p class="text-body-secondary"><%= t ".read and accept with tou" %></p>
   <h4>
index 3feda6139a4473b637ae4d678fd90da8f6879be6..3edc6edd2476d9a8fd195867f7d01b832c7f29eb 100644 (file)
@@ -1,4 +1,4 @@
-<% prefered_auth_button_available = @preferred_auth_provider != "openid" && Auth.providers.value?(@preferred_auth_provider) %>
+<% prefered_auth_button_available = @preferred_auth_provider != "openid" && Auth.providers.include?(@preferred_auth_provider) %>
 
 <div>
   <%= tag.div :id => "login_auth_buttons",
@@ -11,7 +11,7 @@
     <% end %>
 
     <div class="col justify-content-center d-flex align-items-center flex-wrap gap-2">
-      <% Auth.providers.each_value do |provider| %>
+      <% Auth.providers.each do |provider| %>
         <% if provider == "openid" %>
           <%= button_tag image_tag("auth_providers/openid.svg",
                                    :alt => t(".openid.alt"),
index 36ee4c883769ee3b28da09693c025bb499ffb7a5..47b299e0310f6ed3baacd6138edfc95e29f8e314 100644 (file)
@@ -2,6 +2,4 @@
 
 <%= render "sidebar_header", :title => t(".title") %>
 
-<div>
-  <p><%= t ".sorry", :type => t(".type.#{@type}"), :id => params[:id] %>
-</div>
+<%= render "not_found_message" %>
index 2a3f6585943012583e7cb94eb413d4610c8f97f2..e29cf01b012c23a81648ad69921d36ed22bcaa49 100644 (file)
@@ -1,16 +1,4 @@
-<% changeset_data = { :id => changeset.id }
-
-   if changeset.bbox_valid?
-     bbox = changeset.bbox.to_unscaled
-     changeset_data[:bbox] = {
-       :minlon => bbox.min_lon,
-       :minlat => bbox.min_lat,
-       :maxlon => bbox.max_lon,
-       :maxlat => bbox.max_lat
-     }
-   end %>
-
-<%= tag.li :id => "changeset_#{changeset.id}", :data => { :changeset => changeset_data }, :class => "list-group-item list-group-item-action" do %>
+<%= tag.li :id => "changeset_#{changeset.id}", :data => { :changeset => changeset_data(changeset) }, :class => "list-group-item list-group-item-action" do %>
   <p class="fs-6 text-truncate text-wrap">
     <a class="changeset_id link-body-emphasis stretched-link" href="<%= changeset_path(changeset) %>">
       <span><%= changeset.tags["comment"].to_s.presence || t("browse.no_comment") %></span>
diff --git a/app/views/changesets/_not_found_message.html.erb b/app/views/changesets/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..9297f3b
--- /dev/null
@@ -0,0 +1,3 @@
+<div>
+  <p><%= t ".sorry", :id => params[:id] %></p>
+</div>
index a47049e999620a70effb50d2d5edb0a30db41229..167bcb5cb807d5fc2d147a049853b2284125d25b 100644 (file)
@@ -6,7 +6,9 @@
   <p class="fs-6 overflow-x-auto">
     <%= linkify(@changeset.tags["comment"].to_s.presence || t("browse.no_comment")) %>
   </p>
-  <p class="details"><%= changeset_details(@changeset) %></p>
+  <%= tag.p :class => "details", :data => { :changeset => changeset_data(@changeset) } do %>
+    <%= changeset_details(@changeset) %>
+  <% end %>
 
   <%= render :partial => "browse/tag_details", :object => @changeset.tags.except("comment") %>
 
index 4f98a85399a206d93f0be0dca30d3a9d49676e40..08dea27b633e7b14a823d80fa26db567aa4e0356 100644 (file)
@@ -28,7 +28,9 @@
   </h1>
 
   <p class='text-body-secondary'>
-    <%= t ".resend_html",
-          :reconfirm_link => link_to(t(".click_here"), url_for(:action => "confirm_resend")) %>
+    <%= t ".if_need_resend" %>
   </p>
+  <%= bootstrap_form_tag :url => url_for(:action => "confirm_resend") do |f| %>
+    <%= f.submit t(".resend_button"), :class => "btn btn-outline-primary" %>
+  <% end %>
 <% end %>
index 190ea44e5654b53b63af24f070ad8b0130609f9a..45e23fc2b914471be7f4f40a830ef341447c2ef6 100644 (file)
@@ -96,7 +96,7 @@
         </button>
         <div class='dropdown-menu dropdown-menu-end'>
           <%= link_to t("users.show.my_dashboard"), dashboard_path, :class => "dropdown-item" %>
-          <%= link_to inbox_messages_path, :class => "dropdown-item" do %>
+          <%= link_to messages_inbox_path, :class => "dropdown-item" do %>
             <%= t("users.show.my messages") %>
             <span class='badge count-number'><%= number_with_delimiter(current_user.new_messages.size) %></span>
           <% end %>
     <% else %>
       <div class="d-inline-flex btn-group login-menu" role="">
         <%= link_to t("layouts.log_in"), login_path(:referer => request.fullpath), :class => "geolink btn btn-outline-secondary" %>
-        <%= link_to t("layouts.sign_up"), user_new_path, :class => "btn btn-outline-secondary" %>
+        <%= link_to t("layouts.sign_up"), new_user_path, :class => "btn btn-outline-secondary" %>
       </div>
     <% end %>
   </nav>
index 0630dace5bc0f93e3ebbbae7e646f7a216a5cc5f..e17ea4ed826bf2f9593973f766dd76f8ba54d4c0 100644 (file)
@@ -51,7 +51,7 @@
         </p>
         <div class="d-flex gap-2">
           <a class="btn btn-primary w-100 d-flex align-items-center justify-content-center" href="<%= about_path %>"><%= t("layouts.learn_more") %></a>
-          <a class="btn btn-primary w-100 d-flex align-items-center justify-content-center" href="<%= user_new_path %>"><%= t("layouts.start_mapping") %></a>
+          <a class="btn btn-primary w-100 d-flex align-items-center justify-content-center" href="<%= new_user_path %>"><%= t("layouts.start_mapping") %></a>
         </div>
       </div>
     <% end %>
similarity index 52%
rename from app/views/messages/inbox.html.erb
rename to app/views/messages/inboxes/show.html.erb
index 835d70a74cd8ee1f7d4c4af4c0ddf381b156f89b..4e74dbe1fc1152f8410f15ad23eb5b6cfb712791 100644 (file)
@@ -2,12 +2,12 @@
   <%= javascript_include_tag "messages" %>
 <% end %>
 
-<%= render :partial => "heading", :locals => { :active_link_path => inbox_messages_path } %>
+<%= render :partial => "heading", :locals => { :active_link_path => messages_inbox_path } %>
 
-<h4><%= t "messages.inbox.messages", :new_messages => t(".new_messages", :count => current_user.new_messages.size), :old_messages => t(".old_messages", :count => current_user.messages.size - current_user.new_messages.size) %></h4>
+<h4><%= t ".messages", :new_messages => t(".new_messages", :count => current_user.new_messages.size), :old_messages => t(".old_messages", :count => current_user.messages.size - current_user.new_messages.size) %></h4>
 
 <% if current_user.messages.size > 0 %>
-  <%= render :partial => "messages_table", :locals => { :columns => %w[from subject date], :messages => current_user.messages, :inner_partial => "message_summary" } %>
+  <%= render :partial => "messages_table", :locals => { :columns => %w[from subject date], :messages => current_user.messages } %>
 <% else %>
   <div><%= t(".no_messages_yet_html", :people_mapping_nearby_link => link_to(t(".people_mapping_nearby"), dashboard_path)) %></div>
 <% end %>
similarity index 60%
rename from app/views/messages/_heading.html.erb
rename to app/views/messages/mailboxes/_heading.html.erb
index c3b4792021c211040e04ae95d7d5d50b72d7c9a2..ff69f0a386047ff6672e7c8dd570ccde76750e66 100644 (file)
@@ -3,8 +3,8 @@
 <% content_for :heading do %>
   <h1><%= t("users.show.my messages") %></h1>
   <ul class="nav nav-tabs">
-    <% { t(".my_inbox") => inbox_messages_path, t(".my_outbox") => outbox_messages_path, t(".muted_messages") => muted_messages_path }.each do |label, path| %>
-    <% next if path == muted_messages_path && current_user.muted_messages.none? %>
+    <% { t(".my_inbox") => messages_inbox_path, t(".my_outbox") => messages_outbox_path, t(".muted_messages") => messages_muted_inbox_path }.each do |label, path| %>
+    <% next if path == messages_muted_inbox_path && current_user.muted_messages.none? %>
 
     <li class="nav-item">
       <% if path == active_link_path %>
similarity index 75%
rename from app/views/messages/_messages_table.html.erb
rename to app/views/messages/mailboxes/_messages_table.html.erb
index 567b5e8283ab4b5a60a62071f75cfa3216050dce..f9c00c71427dfff2950e740b9968d9192fd14d88 100644 (file)
@@ -8,6 +8,6 @@
     </tr>
   </thead>
   <tbody>
-    <%= render :partial => inner_partial, :collection => messages, :as => "message" %>
+    <%= render :partial => "message", :collection => messages %>
   </tbody>
 </table>
similarity index 82%
rename from app/views/messages/muted.html.erb
rename to app/views/messages/muted_inboxes/show.html.erb
index 40c74e915762cb918a76233ff6faec6943528cdd..b94e80115d901be7c82d93179b51c502d8f41641 100644 (file)
@@ -2,8 +2,8 @@
   <%= javascript_include_tag "messages" %>
 <% end %>
 
-<%= render :partial => "heading", :locals => { :active_link_path => muted_messages_path } %>
+<%= render :partial => "heading", :locals => { :active_link_path => messages_muted_inbox_path } %>
 
 <h4><%= t ".messages", :count => current_user.muted_messages.size %></h4>
 
-<%= render :partial => "messages_table", :locals => { :columns => %w[from subject date], :messages => current_user.muted_messages, :inner_partial => "message_summary" } %>
+<%= render :partial => "messages_table", :locals => { :columns => %w[from subject date], :messages => current_user.muted_messages } %>
index 2838a5dab1c93ca9ba866e9451f049e0e7ca5eab..fb1bc48e7148c9ee6e1e7e74b319d7e5b507d51b 100644 (file)
@@ -8,5 +8,5 @@
   <%= f.richtext_field :body, :cols => 80, :rows => 20 %>
 
   <%= f.primary %>
-  <%= link_to t(".back_to_inbox"), inbox_messages_path, :class => "btn btn-link" %>
+  <%= link_to t(".back_to_inbox"), messages_inbox_path, :class => "btn btn-link" %>
 <% end %>
similarity index 87%
rename from app/views/messages/outbox.html.erb
rename to app/views/messages/outboxes/show.html.erb
index 5cb357f6fa19c899e88eb4970ca7caeb0844816e..c82ee585e41eb78065f9522c5db2338cf6844088 100644 (file)
@@ -2,12 +2,12 @@
   <%= javascript_include_tag "messages" %>
 <% end %>
 
-<%= render :partial => "heading", :locals => { :active_link_path => outbox_messages_path } %>
+<%= render :partial => "heading", :locals => { :active_link_path => messages_outbox_path } %>
 
 <h4><%= t ".messages", :count => current_user.sent_messages.size %></h4>
 
 <% if current_user.sent_messages.size > 0 %>
-  <%= render :partial => "messages_table", :locals => { :columns => %w[to subject date], :messages => current_user.sent_messages, :inner_partial => "sent_message_summary" } %>
+  <%= render :partial => "messages_table", :locals => { :columns => %w[to subject date], :messages => current_user.sent_messages } %>
 <% else %>
   <div class="messages"><%= t(".no_sent_messages_html", :people_mapping_nearby_link => link_to(t(".people_mapping_nearby"), dashboard_path)) %></div>
 <% end %>
index 99d6d0435512d0f8e33ef8ccc3112dec762ad20f..d3147c9699c3c24c95b1a12aa2c7d74acf24be0c 100644 (file)
@@ -18,7 +18,7 @@
 <div class="richtext text-break"><%= @message.body.to_html %></div>
 
 <div>
-  <%= link_to t(".reply_button"), message_reply_path(@message), :class => "btn btn-primary" %>
+  <%= link_to t(".reply_button"), new_message_reply_path(@message), :class => "btn btn-primary" %>
   <% if current_user == @message.recipient %>
     <%= link_to t(".unread_button"), message_mark_path(@message, :mark => "unread"), :method => "post", :class => "btn btn-primary" %>
     <%= link_to t(".destroy_button"), message_path(@message), :method => "delete", :class => "btn btn-danger" %>
diff --git a/app/views/nodes/_not_found_message.html.erb b/app/views/nodes/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..9297f3b
--- /dev/null
@@ -0,0 +1,3 @@
+<div>
+  <p><%= t ".sorry", :id => params[:id] %></p>
+</div>
diff --git a/app/views/notes/_not_found_message.html.erb b/app/views/notes/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..9297f3b
--- /dev/null
@@ -0,0 +1,3 @@
+<div>
+  <p><%= t ".sorry", :id => params[:id] %></p>
+</div>
index c9b1275b9493f43c9bca1525341dd9b6910af7d2..5be707dfe38462acc700e9fd4a1c8449799ab801 100644 (file)
@@ -5,10 +5,19 @@
 <div class="note">
   <p class="alert alert-info"><%= t(".intro") %></p>
   <% if !current_user %>
-    <p class="alert alert-warning"><%= t ".anonymous_warning_html",
-                                         :log_in => link_to(t(".anonymous_warning_log_in"), login_path(:referer => new_note_path)),
-                                         :sign_up => link_to(t(".anonymous_warning_sign_up"), user_new_path) %></p>
+    <div class="alert alert-warning pb-0">
+      <p><%= t ".anonymous_warning_html",
+               :log_in => link_to(t(".anonymous_warning_log_in"), login_path(:referer => new_note_path)),
+               :sign_up => link_to(t(".anonymous_warning_sign_up"), new_user_path) %></p>
+    <% if @anonymous_notes_count >= 10 %>
+      <p><%= t ".counter_warning_html",
+               :x_anonymous_notes => t(".x_anonymous_notes", :count => @anonymous_notes_count),
+               :contribute_by_yourself => link_to(t(".counter_warning_guide_link.text"), t(".counter_warning_guide_link.url")),
+               :community_can_help => link_to(t(".counter_warning_forum_link.text"), t(".counter_warning_forum_link.url")) %></p>
+    <% end %>
+    </div>
   <% end %>
+  <p class="alert alert-warning" id="new-note-zoom-warning" hidden><%= t "javascripts.site.createnote_disabled_tooltip" %></p>
   <form action="#">
     <input type="hidden" name="lon" autocomplete="off">
     <input type="hidden" name="lat" autocomplete="off">
similarity index 87%
rename from app/views/browse/_version_actions.erb
rename to app/views/old_elements/_actions.html.erb
index 94e18e45777bb27e950f573b7d86039634fe0b4a..36a16abb4543ffb74c3a00276c5e34e9d877b932 100644 (file)
@@ -6,9 +6,9 @@
   <% elsif current_user&.moderator? %>
     &middot;
     <% if !params[:show_redactions] %>
-      <%= link_to t("browse.view_redacted_data"), :params => { :show_redactions => true } %>
+      <%= link_to t(".view_redacted_data"), :params => { :show_redactions => true } %>
     <% else %>
-      <%= link_to t("browse.view_redaction_message") %>
+      <%= link_to t(".view_redaction_message") %>
     <% end %>
   <% end %>
 </div>
similarity index 72%
rename from app/views/browse/history.html.erb
rename to app/views/old_elements/index.html.erb
index 1595df0216d129772d953d07c5a5923d85f32fa8..d4ecbfa60480c618041bb7902bd601abd91ec644 100644 (file)
@@ -1,6 +1,6 @@
-<% set_title(t("browse.#{@type}.history_title_html", :name => printable_element_name(@feature))) %>
+<% set_title(t(".#{@type}.title_html", :name => printable_element_name(@feature))) %>
 
-<%= render "sidebar_header", :title => t("browse.#{@type}.history_title_html", :name => printable_element_name(@feature)) %>
+<%= render "sidebar_header", :title => t(".#{@type}.title_html", :name => printable_element_name(@feature)) %>
 
 <%= render :partial => "browse/#{@type}", :collection => @feature.send(:"old_#{@type}s").reverse %>
 
diff --git a/app/views/old_nodes/_not_found_message.html.erb b/app/views/old_nodes/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..402905a
--- /dev/null
@@ -0,0 +1,7 @@
+<div>
+  <% if params[:version] %>
+    <p><%= t ".sorry", :id => params[:id], :version => params[:version] %></p>
+  <% else %>
+    <p><%= t "nodes.not_found_message.sorry", :id => params[:id] %></p>
+  <% end %>
+</div>
diff --git a/app/views/old_nodes/not_found.html.erb b/app/views/old_nodes/not_found.html.erb
deleted file mode 100644 (file)
index 1ee5d9d..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<% set_title(t("browse.not_found.title")) %>
-
-<%= render "sidebar_header", :title => t("browse.not_found.title") %>
-
-<div>
-  <p><%= t ".sorry", :id => params[:id], :version => params[:version] %></p>
-</div>
index 093a3e7c15c962c45ca5694adbeebf45c71737ba..ad6b75ab10468a67ef145c30d15021e66f0f92a6 100644 (file)
@@ -4,4 +4,4 @@
 
 <%= render :partial => "browse/node", :object => @feature %>
 
-<%= render :partial => "browse/version_actions" %>
+<%= render :partial => "actions" %>
diff --git a/app/views/old_relations/_not_found_message.html.erb b/app/views/old_relations/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..a4598eb
--- /dev/null
@@ -0,0 +1,7 @@
+<div>
+  <% if params[:version] %>
+    <p><%= t ".sorry", :id => params[:id], :version => params[:version] %></p>
+  <% else %>
+    <p><%= t "relations.not_found_message.sorry", :id => params[:id] %></p>
+  <% end %>
+</div>
diff --git a/app/views/old_relations/not_found.html.erb b/app/views/old_relations/not_found.html.erb
deleted file mode 100644 (file)
index 1ee5d9d..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<% set_title(t("browse.not_found.title")) %>
-
-<%= render "sidebar_header", :title => t("browse.not_found.title") %>
-
-<div>
-  <p><%= t ".sorry", :id => params[:id], :version => params[:version] %></p>
-</div>
index 94e3674d8759432efae525c54c215141791c2774..bfed1fb877ed5a06d4668657900d0c33ebe362f6 100644 (file)
@@ -4,4 +4,4 @@
 
 <%= render :partial => "browse/relation", :object => @feature %>
 
-<%= render :partial => "browse/version_actions" %>
+<%= render :partial => "actions" %>
diff --git a/app/views/old_ways/_not_found_message.html.erb b/app/views/old_ways/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..09c97ac
--- /dev/null
@@ -0,0 +1,7 @@
+<div>
+  <% if params[:version] %>
+    <p><%= t ".sorry", :id => params[:id], :version => params[:version] %></p>
+  <% else %>
+    <p><%= t "ways.not_found_message.sorry", :id => params[:id] %></p>
+  <% end %>
+</div>
diff --git a/app/views/old_ways/not_found.html.erb b/app/views/old_ways/not_found.html.erb
deleted file mode 100644 (file)
index 1ee5d9d..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<% set_title(t("browse.not_found.title")) %>
-
-<%= render "sidebar_header", :title => t("browse.not_found.title") %>
-
-<div>
-  <p><%= t ".sorry", :id => params[:id], :version => params[:version] %></p>
-</div>
index 1e4d14c805ceb079d53d3eeba02d858e445d2ac8..213ad13b0b5d43216d3a89706ea4d4cea8232fb1 100644 (file)
@@ -4,4 +4,4 @@
 
 <%= render :partial => "browse/way", :object => @feature %>
 
-<%= render :partial => "browse/version_actions" %>
+<%= render :partial => "actions" %>
diff --git a/app/views/relations/_not_found_message.html.erb b/app/views/relations/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..9297f3b
--- /dev/null
@@ -0,0 +1,3 @@
+<div>
+  <p><%= t ".sorry", :id => params[:id] %></p>
+</div>
index 1e943c7cc8dc8eccffa8856a10cdb387cac7b1a4..9d9ef9232bc8d5f3728df5fa117915d7fa6c824a 100644 (file)
@@ -16,7 +16,7 @@
     <h3 class='fs-5'><%= t ".how_to_help.join_the_community.title" %></h3>
     <p><%= t ".how_to_help.join_the_community.explanation_html" %></p>
     <p class='text-center'>
-      <a class="btn btn-primary" href="<%= user_new_path %>"><%= t("layouts.start_mapping") %></a>
+      <a class="btn btn-primary" href="<%= new_user_path %>"><%= t("layouts.start_mapping") %></a>
     </p>
   </div>
   <div class='col-sm'>
index 0770e331fdd7827d13eac1b95092bf6de36b379d..891315e6eb09b3a8dd69a49a46190fe5b627914f 100644 (file)
@@ -7,31 +7,31 @@
   <% if current_user&.blocks&.exists? %>
     <li class="nav-item">
       <%= link_to t(".blocks_on_me"),
-                  user_blocks_on_path(current_user),
-                  :class => ["nav-link", { :active => action_name == "blocks_on" && current_user == @user }] %>
+                  user_received_blocks_path(current_user),
+                  :class => ["nav-link", { :active => controller_name == "received_blocks" && current_user == @user }] %>
     </li>
   <% end %>
   <% on_user = @user || @user_block&.user %>
   <% if on_user != current_user && on_user&.blocks&.exists? %>
     <li class="nav-item">
       <%= link_to t(".blocks_on_user_html", :user => tag.span(on_user.display_name, :class => "username text-truncate d-inline-block align-bottom", :dir => "auto")),
-                  user_blocks_on_path(on_user),
-                  :class => ["nav-link", { :active => action_name == "blocks_on" }] %>
+                  user_received_blocks_path(on_user),
+                  :class => ["nav-link", { :active => controller_name == "received_blocks" }] %>
     </li>
   <% end %>
   <% if current_user&.blocks_created&.exists? %>
     <li class="nav-item">
       <%= link_to t(".blocks_by_me"),
-                  user_blocks_by_path(current_user),
-                  :class => ["nav-link", { :active => action_name == "blocks_by" && current_user == @user }] %>
+                  user_issued_blocks_path(current_user),
+                  :class => ["nav-link", { :active => controller_name == "issued_blocks" && current_user == @user }] %>
     </li>
   <% end %>
   <% by_user = @user || @user_block&.creator %>
   <% if by_user != current_user && by_user&.blocks_created&.exists? %>
     <li class="nav-item">
       <%= link_to t(".blocks_by_user_html", :user => tag.span(by_user.display_name, :class => "username text-truncate d-inline-block align-bottom", :dir => "auto")),
-                  user_blocks_by_path(by_user),
-                  :class => ["nav-link", { :active => action_name == "blocks_by" }] %>
+                  user_issued_blocks_path(by_user),
+                  :class => ["nav-link", { :active => controller_name == "issued_blocks" }] %>
     </li>
   <% end %>
   <% if @user_block&.persisted? %>
index c2e516170a2ee655c65aca2dfbaf8cca5f9967e8..fa9f0b2d2d4d35164ab2b02b68fee09863940210 100644 (file)
         <th></th>
       </tr>
     </thead>
-    <%= render :partial => "block", :collection => @user_blocks %>
+    <%= render :partial => "user_blocks/block", :collection => @user_blocks %>
   </table>
 
   <%= render "shared/pagination",
+             :translation_scope => "shared.pagination.user_blocks",
              :newer_id => @newer_user_blocks_id,
              :older_id => @older_user_blocks_id %>
 </turbo-frame>
diff --git a/app/views/user_mailer/_gpx_description.html.erb b/app/views/user_mailer/_gpx_description.html.erb
deleted file mode 100644 (file)
index 85b4c7c..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-<% trace_name = tag.strong(@trace_name) %>
-<% trace_name = link_to(trace_name, @trace_url) if @trace_url %>
-<% trace_description = tag.em(@trace_description) %>
-<% if @trace_tags.length > 0 %>
-  <% tags = safe_join @trace_tags.map { |trace_tag| tag.em trace_tag.tag }, ", " %>
-  <%= t ".description_with_tags_html", :trace_name => trace_name, :trace_description => trace_description, :tags => tags %>
-<% else %>
-  <%= t ".description_with_no_tags_html", :trace_name => trace_name, :trace_description => trace_description %>
-<% end %>
diff --git a/app/views/user_mailer/_gpx_description.text.erb b/app/views/user_mailer/_gpx_description.text.erb
deleted file mode 100644 (file)
index 6f7a978..0000000
+++ /dev/null
@@ -1,8 +0,0 @@
-<% trace_name = @trace_name %>
-<% trace_description = @trace_description %>
-<% if @trace_tags.length > 0 %>
-  <% tags = @trace_tags.map { |trace_tag| trace_tag.tag }.join(", ") %>
-  <%= t ".description_with_tags", :trace_name => trace_name, :trace_description => trace_description, :tags => tags %>
-<% else %>
-  <%= t ".description_with_no_tags", :trace_name => trace_name, :trace_description => trace_description %>
-<% end %>
diff --git a/app/views/user_mailer/_gpx_details.html.erb b/app/views/user_mailer/_gpx_details.html.erb
new file mode 100644 (file)
index 0000000..0ca88bb
--- /dev/null
@@ -0,0 +1,24 @@
+<p><%= t ".details" %></p>
+
+<dl>
+  <dt><%= t ".filename" %>
+  <% if @trace_url %>
+    <dd><%= link_to(@trace_name, @trace_url) %>
+  <% else %>
+    <dd><%= @trace_name %>
+  <% end %>
+  <dt><%= t ".description" %>
+  <dd><%= @trace_description %>
+  <% if @trace_tags.length > 0 %>
+    <dt><%= t ".tags" %>
+    <dd><%= @trace_tags.map(&:tag).join(", ") %>
+  <% end %>
+  <% if @possible_points %>
+    <dt><%= t ".total_points" %>
+    <dd><%= @possible_points %>
+  <% end %>
+  <% if @trace_points %>
+    <dt><%= t ".imported_points" %>
+    <dd><%= @trace_points %>
+  <% end %>
+</dl>
diff --git a/app/views/user_mailer/_gpx_details.text.erb b/app/views/user_mailer/_gpx_details.text.erb
new file mode 100644 (file)
index 0000000..e828068
--- /dev/null
@@ -0,0 +1,22 @@
+<%= t ".details" %>
+
+<%= t ".filename" %>
+       <%= @trace_name %>
+<% if @trace_url %>
+<%= t ".url" %>
+       <%= @trace_url %>
+<% end %>
+<%= t ".description" %>
+       <%= @trace_description %>
+<% if @trace_tags.length > 0 %>
+<%= t ".tags" %>
+       <%= @trace_tags.map(&:tag).join(", ") %>
+<% end %>
+<% if @possible_points %>
+<%= t ".total_points" %>
+       <%= @possible_points %>
+<% end %>
+<% if @trace_points %>
+<%= t ".imported_points" %>
+       <%= @trace_points %>
+<% end %>
index d2059af38209904c473ec7310d6a113a59db12de..2e5a283b84fa83e79f6d5c6843fad2aa4283df50 100644 (file)
@@ -1,9 +1,10 @@
 <p><%= t ".hi", :to_user => @to_user %></p>
 
-<p>
-  <%= render :partial => "gpx_description" %>
-  <%= t ".failed_to_import" %>
-</p>
+<p><%= t ".failed_to_import" %>
+
+<%= render :partial => "gpx_details" %>
+
+<p><%= t ".verify" %></p>
 
 <blockquote>
   <%= @error %>
index 9544c74a9dcf46bf00408eb29af2a2cf54713bf0..0c5edebdee92bcbb01ac929057da02a663800274 100644 (file)
@@ -1,8 +1,11 @@
 <%= t ".hi", :to_user => @to_user %>
 
-<%= render :partial => "gpx_description" %>
 <%= t ".failed_to_import" %>
 
+<%= render :partial => "gpx_details" %>
+
+<%= t ".verify" %>
+
 ==
 <%= @error %>
 ==
index 4354db20afa708ca0e8753577e54bb83acf3cabd..b7f6beadc85db24edea224573aa618d1c646ead3 100644 (file)
@@ -1,9 +1,8 @@
 <p><%= t ".hi", :to_user => @to_user %></p>
 
-<p>
-  <%= render :partial => "gpx_description" %>
-  <%= t(".loaded", :trace_points => @trace_points, :count => @possible_points) %>
-</p>
+<p><%= t ".imported_successfully" %></p>
+
+<%= render :partial => "gpx_details" %>
 
 <p>
   <%= t ".all_your_traces_html", :url => link_to(@my_traces_url, @my_traces_url) %>
index aee3a0f11f954799b597a12043545977768bb945..fa4fed7d6e68b6680b2ca54c0a5adc59220de8f0 100644 (file)
@@ -1,8 +1,7 @@
 <%= t ".hi", :to_user => @to_user %>
 
-<%= render :partial => "gpx_description" %>
-<%= t(".loaded", :trace_points => @trace_points, :count => @possible_points) %>
+<%= t ".imported_successfully" %>
 
-<%= t ".trace_location", :trace_url => @trace_url %>
+<%= render :partial => "gpx_details" %>
 
 <%= t ".all_your_traces", :url => @my_traces_url %>
similarity index 77%
rename from app/views/user_blocks/blocks_by.html.erb
rename to app/views/users/issued_blocks/show.html.erb
index 73748e5570757fffcdf16294fbf781bbcfb2f6d1..ada2a568fe4b667afb1c6b454610096ffac4ca04 100644 (file)
@@ -3,11 +3,11 @@
 <% content_for :heading_class, "pb-0" %>
 <% content_for :heading do %>
   <h1><%= t(".heading_html", :name => link_to(@user.display_name, @user)) %></h1>
-  <%= render :partial => "navigation" %>
+  <%= render :partial => "user_blocks/navigation" %>
 <% end %>
 
 <% unless @user_blocks.empty? %>
-<%= render :partial => "page" %>
+<%= render :partial => "user_blocks/page" %>
 <% else %>
 <p><%= t ".empty", :name => @user.display_name %></p>
 <% end %>
similarity index 88%
rename from app/views/user_blocks/revoke_all.html.erb
rename to app/views/users/received_blocks/edit.html.erb
index f9a17d3e627c2670e76c3d7efc09b3f29b069795..ff1a38be5586be299cc7178257f3a045d829276c 100644 (file)
@@ -6,7 +6,7 @@
 
 <% unless @user.blocks.active.empty? %>
 
-  <%= bootstrap_form_for :revoke_all, :url => { :action => "revoke_all" } do |f| %>
+  <%= bootstrap_form_for :revoke_all, :url => { :action => :destroy }, :method => :delete do |f| %>
     <div class="mb-3">
       <div class="form-check">
         <%= check_box_tag "confirm", "yes", false, { :class => "form-check-input" } %>
similarity index 77%
rename from app/views/user_blocks/blocks_on.html.erb
rename to app/views/users/received_blocks/show.html.erb
index 73748e5570757fffcdf16294fbf781bbcfb2f6d1..ada2a568fe4b667afb1c6b454610096ffac4ca04 100644 (file)
@@ -3,11 +3,11 @@
 <% content_for :heading_class, "pb-0" %>
 <% content_for :heading do %>
   <h1><%= t(".heading_html", :name => link_to(@user.display_name, @user)) %></h1>
-  <%= render :partial => "navigation" %>
+  <%= render :partial => "user_blocks/navigation" %>
 <% end %>
 
 <% unless @user_blocks.empty? %>
-<%= render :partial => "page" %>
+<%= render :partial => "user_blocks/page" %>
 <% else %>
 <p><%= t ".empty", :name => @user.display_name %></p>
 <% end %>
index f3922450225c92cb34fb48f1dd5da6732649c485..c168972aac44a945a8118454ec5c97e807505bdc 100644 (file)
 
             <% if current_user.blocks.exists? %>
               <li>
-                <%= link_to t(".blocks on me"), user_blocks_on_path(current_user) %>
+                <%= link_to t(".blocks on me"), user_received_blocks_path(current_user) %>
                 <span class='badge count-number'><%= number_with_delimiter(current_user.blocks.active.size) %></span>
               </li>
             <% end %>
 
             <% if can?(:create, UserBlock) and current_user.blocks_created.exists? %>
               <li>
-                <%= link_to t(".blocks by me"), user_blocks_by_path(current_user) %>
+                <%= link_to t(".blocks by me"), user_issued_blocks_path(current_user) %>
                 <span class='badge count-number'><%= number_with_delimiter(current_user.blocks_created.active.size) %></span>
               </li>
             <% end %>
 
             <% if @user.blocks.exists? %>
               <li>
-                <%= link_to t(".block_history"), user_blocks_on_path(@user) %>
+                <%= link_to t(".block_history"), user_received_blocks_path(@user) %>
                 <span class='badge count-number'><%= number_with_delimiter(@user.blocks.active.size) %></span>
               </li>
             <% end %>
 
             <% if @user.moderator? and @user.blocks_created.exists? %>
               <li>
-                <%= link_to t(".moderator_history"), user_blocks_by_path(@user) %>
+                <%= link_to t(".moderator_history"), user_issued_blocks_path(@user) %>
                 <span class='badge count-number'><%= number_with_delimiter(@user.blocks_created.active.size) %></span>
               </li>
             <% end %>
 
-            <% if can?(:revoke_all, UserBlock) and @user.blocks.active.exists? %>
+            <% if can?(:destroy, UserBlock) and @user.blocks.active.exists? %>
               <li>
-                <%= link_to t(".revoke_all_blocks"), revoke_all_user_blocks_path(@user) %>
+                <%= link_to t(".revoke_all_blocks"), edit_user_received_blocks_path(@user) %>
               </li>
             <% end %>
 
diff --git a/app/views/ways/_not_found_message.html.erb b/app/views/ways/_not_found_message.html.erb
new file mode 100644 (file)
index 0000000..9297f3b
--- /dev/null
@@ -0,0 +1,3 @@
+<div>
+  <p><%= t ".sorry", :id => params[:id] %></p>
+</div>
index ff8a392e6fb267eb40e20f212e20104e20484206..e0fe36b61504e2c128fb401a66c5d06db1b815fa 100644 (file)
@@ -1439,20 +1439,6 @@ af:
       button: Bevestig
       success: Die verandering van u e-posadres is bevestig!
   messages:
-    inbox:
-      title: In-vakkie
-      no_messages_yet_html: U het nog geen boodskappe nie. Waarom tree u nie met sommige
-        van die %{people_mapping_nearby_link} in verbinding nie?
-      people_mapping_nearby: nabygeleë karteerders
-    messages_table:
-      from: Van
-      to: Aan
-      subject: Onderwerp
-      date: Datum
-    message_summary:
-      unread_button: Merk as ongelees
-      read_button: Merk as gelees
-      destroy_button: Skrap
     new:
       title: Stuur boodskap
       send_message_to_html: Stuur 'n nuwe boodskap aan %{name}
@@ -1462,27 +1448,44 @@ af:
     no_such_message:
       title: Geen so 'n boodskap nie
       heading: Geen so 'n boodskap nie
-    outbox:
-      title: Uit-vakkie
-      no_sent_messages_html: U het nog geen boodskappe gestuur nie. Waarom tree u
-        nie met sommige van die %{people_mapping_nearby_link} in verbinding nie?
-      people_mapping_nearby: nabygeleë karteerders
     show:
       title: Lees boodskap
       reply_button: Beantwoord
       unread_button: Merk as ongelees
       destroy_button: Skrap
       back: Terug
-    sent_message_summary:
-      destroy_button: Skrap
-    heading:
-      my_inbox: My in-vakkie
-      my_outbox: My uit-vakkie
     mark:
       as_read: Boodskap as gelees gemerk
       as_unread: Boodskap as ongelees gemerk
     destroy:
       destroyed: Boodskap is verwyder
+    mailboxes:
+      heading:
+        my_inbox: My in-vakkie
+        my_outbox: My uit-vakkie
+      messages_table:
+        from: Van
+        to: Aan
+        subject: Onderwerp
+        date: Datum
+      message:
+        unread_button: Merk as ongelees
+        read_button: Merk as gelees
+        destroy_button: Skrap
+    inboxes:
+      show:
+        title: In-vakkie
+        no_messages_yet_html: U het nog geen boodskappe nie. Waarom tree u nie met
+          sommige van die %{people_mapping_nearby_link} in verbinding nie?
+        people_mapping_nearby: nabygeleë karteerders
+    outboxes:
+      show:
+        title: Uit-vakkie
+        no_sent_messages_html: U het nog geen boodskappe gestuur nie. Waarom tree
+          u nie met sommige van die %{people_mapping_nearby_link} in verbinding nie?
+        people_mapping_nearby: nabygeleë karteerders
+      message:
+        destroy_button: Skrap
   passwords:
     new:
       title: Wagwoord verloor
@@ -1867,6 +1870,16 @@ af:
       delete_user: Skrap dié Gebruiker
       confirm: Bevestig
       report: Rapporteer hierdie gebruiker
+    issued_blocks:
+      show:
+        title: Versperrings deur %{name}
+        heading_html: Lys van versperrings deur %{name}
+        empty: '%{name} het nog niemand versper nie.'
+    received_blocks:
+      show:
+        title: Versperrings op %{name}
+        heading_html: Lys van versperrings teen %{name}
+        empty: '%{name} is nog nooit versper nie.'
     lists:
       show:
         title: Gebruikers
@@ -1914,14 +1927,6 @@ af:
         months:
           one: 1 maand
           other: '%{count} maande'
-    blocks_on:
-      title: Versperrings op %{name}
-      heading_html: Lys van versperrings teen %{name}
-      empty: '%{name} is nog nooit versper nie.'
-    blocks_by:
-      title: Versperrings deur %{name}
-      heading_html: Lys van versperrings deur %{name}
-      empty: '%{name} het nog niemand versper nie.'
     show:
       title: '%{block_on} is deur %{block_by} versper'
       heading_html: '%{block_on} is deur %{block_by} versper'
@@ -1973,7 +1978,6 @@ af:
       scale: 'Skaal:'
       download: Laai af
       paste_html: Plak HTML om in die webblad te versteek
-      only_standard_layer: Slegs die standaardlaag kan as ’n beeld uitgevoer word
     embed:
       report_problem: Rapporteer 'n probleem
     key:
index 11b94199d6e0da96318fa8af50846c760f7316db..109fc8a6a2062204ed496ccb8ac90c44f1986648 100644 (file)
@@ -696,20 +696,6 @@ aln:
       success: Konfirmo email adresën tone, ju faleminderit për regjistrim!
       failure: Ni email adres tashma osht konfirmue me kët token.
   messages:
-    inbox:
-      title: Inbox
-      no_messages_yet_html: Ju nuk keni asnjë mesazh. Pse nuk po llidheni me disa
-        prej %{people_mapping_nearby_link}?
-      people_mapping_nearby: njerëzit pranë hartës
-    messages_table:
-      from: Prej
-      to: Te
-      subject: Tema
-      date: Data
-    message_summary:
-      unread_button: Bone si të palexume
-      read_button: Bone si të lexume
-      destroy_button: Fshije
     new:
       title: Qo mesazh
       send_message_to_html: Qoje një mesazh të ri te %{name}
@@ -722,11 +708,6 @@ aln:
       title: Nuk ka ksi mesazhi
       heading: Nuk ka ksi mesazhi
       body: Me na fal por nuk ka asnjë mesazh me at id.
-    outbox:
-      title: Dalje
-      no_sent_messages_html: Ju nuk keni dërgu asnjë mesazh. Pse nuk po llidheni me
-        disa prej %{people_mapping_nearby_link}?
-      people_mapping_nearby: njerëzit pranë hartës
     reply:
       wrong_user: Ju keni hy si `%{user}' por mesazhi që po doni me ju përgjigj nuk
         u dërgu për at anëtar. Ju lutem hyni si anëtari korrekt nëse doni me ju përgjigj
@@ -738,15 +719,37 @@ aln:
       wrong_user: Ju keni hy si `%{user}' por mesazhi që po doni me lexu nuk u dërgu
         për ose nga ai anëtar. Ju lutem hyni si anëtari korrekt nëse doni me lexu
         atë mesazh.
-    sent_message_summary:
-      destroy_button: Fshij
-    heading:
-      my_inbox: postë e mia
     mark:
       as_read: Mesazhi u bo si i lexum
       as_unread: Mesazhi u bo si i palexum
     destroy:
       destroyed: Mesazhi u fshi
+    mailboxes:
+      heading:
+        my_inbox: postë e mia
+      messages_table:
+        from: Prej
+        to: Te
+        subject: Tema
+        date: Data
+      message:
+        unread_button: Bone si të palexume
+        read_button: Bone si të lexume
+        destroy_button: Fshije
+    inboxes:
+      show:
+        title: Inbox
+        no_messages_yet_html: Ju nuk keni asnjë mesazh. Pse nuk po llidheni me disa
+          prej %{people_mapping_nearby_link}?
+        people_mapping_nearby: njerëzit pranë hartës
+    outboxes:
+      show:
+        title: Dalje
+        no_sent_messages_html: Ju nuk keni dërgu asnjë mesazh. Pse nuk po llidheni
+          me disa prej %{people_mapping_nearby_link}?
+        people_mapping_nearby: njerëzit pranë hartës
+      message:
+        destroy_button: Fshij
   passwords:
     new:
       title: T'ka hup fjalkalimi
@@ -1039,6 +1042,16 @@ aln:
     go_public:
       flash success: Gjitha ndryshimet tuja janë publike tash, edhe tash t'lejohet
         me ndryshue
+    issued_blocks:
+      show:
+        title: Blloqe me %{name}
+        heading_html: Lista e blloqeve me %{name}
+        empty: '%{name} nuk ka bërë ndonjë blloqe ende.'
+    received_blocks:
+      show:
+        title: Blocks në %{name}
+        heading_html: Lista e blloqeve në %{name}
+        empty: '%{name} nuk është bllokuar akoma.'
     lists:
       show:
         title: Perdoruesit
@@ -1100,14 +1113,6 @@ aln:
         hours:
           one: 1 orë
           other: '%{count} orë'
-    blocks_on:
-      title: Blocks në %{name}
-      heading_html: Lista e blloqeve në %{name}
-      empty: '%{name} nuk është bllokuar akoma.'
-    blocks_by:
-      title: Blloqe me %{name}
-      heading_html: Lista e blloqeve me %{name}
-      empty: '%{name} nuk ka bërë ndonjë blloqe ende.'
     show:
       title: '%{block_on} bllokuar nga %{block_by}'
       heading_html: '%{block_on} bllokuar nga %{block_by}'
index 1d0b6fd79e8f1a995b5a3b48ffec8dc10f752262..a3f3a9c9f581ac3038d2602cd65727c48b9b52f2 100644 (file)
@@ -1745,9 +1745,6 @@ ar:
       success: تم تأكيد حسابك، شكرًا للاشتراك!
       already active: هذا الحساب سبق أن تم تأكيده.
       unknown token: رمز التأكيد انتهت صلاحيته أو غير موجود.
-      resend_html: إذا كنت تريد منا إعادة إرسال رسالة التأكيد عبر البريد الإلكتروني
-        ، %{reconfirm_link}.
-      click_here: انقر هنا
     confirm_resend:
       failure: المستخدم %{name} غير موجود.
     confirm_email:
@@ -1765,27 +1762,6 @@ ar:
         ، فيرجى التأكد من إدراج %{sender} في القائمة البيضاء حيث يتعذر علينا الرد
         على أي طلبات تأكيد.
   messages:
-    inbox:
-      title: الوارد
-      messages: لديك %{new_messages} و%{old_messages}
-      new_messages:
-        one: '%{count} رسالة جديدة'
-        other: '%{count} رسائل جديدة'
-      old_messages:
-        one: '%{count} رسالة قديمة'
-        other: '%{count} رسائل قديمة'
-      no_messages_yet_html: ليست لديك رسائل بعد، لماذا لا تقوم بالاتصال ببعض %{people_mapping_nearby_link}؟
-      people_mapping_nearby: مخططون في جواري
-    messages_table:
-      from: من
-      to: إلى
-      subject: الموضوع
-      date: التاريخ
-      actions: الإجراءات
-    message_summary:
-      unread_button: التعليم كغير مقروءة
-      read_button: التعليم كمقروءة
-      destroy_button: حذف
     new:
       title: أرسل رسالة
       send_message_to_html: أرسل رسالة جديدة إلى %{name}
@@ -1798,16 +1774,6 @@ ar:
       title: "\uFEFFلا توجد مثل هذه الرسالة"
       heading: "\uFEFFلا توجد مثل هذه الرسالة"
       body: عذرًا لا توجد رسالة بذلك المعرف.
-    outbox:
-      title: صندوق الصادر
-      messages:
-        one: لديك %{count} رسالة مبعوثة
-        other: لديك %{count} رسائل مبعوثة
-      no_sent_messages_html: ليست لديك رسائل مرسلة بعد، لماذا لا تقوم بالاتصال ببعض
-        %{people_mapping_nearby_link}؟
-      people_mapping_nearby: مخططون في جواري
-    muted:
-      title: الرسائل المخفية
     reply:
       wrong_user: لقد قمت بتسجيل الدخول باسم '%{user}' ولكن الرسالة التي طلبت الرد
         عليها لم يتم إرسالها إلى هذا المستخدم. يرجى تسجيل الدخول باسم المستخدم الصحيح
@@ -1821,11 +1787,6 @@ ar:
       wrong_user: لقد قمت بتسجيل الدخول باسم '%{user}' ولكن الرسالة التي طلبت قراءتها
         لم يتم إرسالها من قبل هذا المستخدم أو إليه. يرجى تسجيل الدخول باسم المستخدم
         الصحيح حتى تتمكن من قراءتها.
-    sent_message_summary:
-      destroy_button: حذف
-    heading:
-      my_inbox: الوارد
-      my_outbox: صندوق الصادر الخاص بي
     mark:
       as_read: عُلِّمت الرسالة كمقروءة
       as_unread: عُلِّمت الرسالة كغير مقروءة
@@ -1833,6 +1794,46 @@ ar:
       error: لم يتم نقل الرسالة إلى صندوق البريد
     destroy:
       destroyed: حُذِفت الرسالة
+    mailboxes:
+      heading:
+        my_inbox: الوارد
+        my_outbox: صندوق الصادر الخاص بي
+      messages_table:
+        from: من
+        to: إلى
+        subject: الموضوع
+        date: التاريخ
+        actions: الإجراءات
+      message:
+        unread_button: التعليم كغير مقروءة
+        read_button: التعليم كمقروءة
+        destroy_button: حذف
+    inboxes:
+      show:
+        title: الوارد
+        messages: لديك %{new_messages} و%{old_messages}
+        new_messages:
+          one: '%{count} رسالة جديدة'
+          other: '%{count} رسائل جديدة'
+        old_messages:
+          one: '%{count} رسالة قديمة'
+          other: '%{count} رسائل قديمة'
+        no_messages_yet_html: ليست لديك رسائل بعد، لماذا لا تقوم بالاتصال ببعض %{people_mapping_nearby_link}؟
+        people_mapping_nearby: مخططون في جواري
+    muted_inboxes:
+      show:
+        title: الرسائل المخفية
+    outboxes:
+      show:
+        title: صندوق الصادر
+        messages:
+          one: لديك %{count} رسالة مبعوثة
+          other: لديك %{count} رسائل مبعوثة
+        no_sent_messages_html: ليست لديك رسائل مرسلة بعد، لماذا لا تقوم بالاتصال ببعض
+          %{people_mapping_nearby_link}؟
+        people_mapping_nearby: مخططون في جواري
+      message:
+        destroy_button: حذف
   passwords:
     new:
       title: نسيان كلمة السر
@@ -2465,6 +2466,16 @@ ar:
       report: أبلغ عن هذا المستخدم
     go_public:
       flash success: جميع تعديلاتك الآن عامة، ومسموح لك بالتعديل الآن.
+    issued_blocks:
+      show:
+        title: العرقلات بواسطة %{name}
+        heading_html: لائحة العرقلات بواسطة %{name}
+        empty: '%{name} لم يقم بعد بأي عرقلة'
+    received_blocks:
+      show:
+        title: العرقلات على %{name}
+        heading_html: لائحة العرقلات على %{name}
+        empty: '%{name} لم يتم عرقلته بعد.'
     lists:
       show:
         title: المستخدمون
@@ -2574,14 +2585,6 @@ ar:
           few: سنين قليلة
           many: سنين كثيرة
           other: '%{count} سنوات'
-    blocks_on:
-      title: العرقلات على %{name}
-      heading_html: لائحة العرقلات على %{name}
-      empty: '%{name} لم يتم عرقلته بعد.'
-    blocks_by:
-      title: العرقلات بواسطة %{name}
-      heading_html: لائحة العرقلات بواسطة %{name}
-      empty: '%{name} لم يقم بعد بأي عرقلة'
     show:
       title: '%{block_on} عُرقل بواسطة %{block_by}'
       heading_html: '%{block_on} عُرقل بواسطة %{block_by}'
@@ -2668,7 +2671,6 @@ ar:
       center_marker: مركز الخريطة على العلامة
       paste_html: ألصق HTML لتضمينه في موقع ويب
       view_larger_map: عرض خريطة بحجم أكبر
-      only_standard_layer: يمكن تصدير الطبقات القياسية وخريطة الدورة والنقل فقط كصورة
     embed:
       report_problem: أبلغ عن مشكلة
     key:
index a983f1b8b917eb98a9df872d50048230a16ba7ee..29837c924d334dbcf1e78774cba4955726c43e95 100644 (file)
@@ -632,20 +632,6 @@ arz:
       success: تم تأكيد تغيير عنوان بريدك الإلكترونى!
       failure: عنوان بريد إلكترونى تم تفعيله مسبقًا بهذه البيانات.
   messages:
-    inbox:
-      title: الوارد
-      no_messages_yet_html: لا يوجد لديك رسائل بعد. لماذا لا تقوم بالاتصال مع بعض
-        %{people_mapping_nearby_link}؟
-      people_mapping_nearby: مخططون فى جواري
-    messages_table:
-      from: من
-      to: إلى
-      subject: الموضوع
-      date: التاريخ
-    message_summary:
-      unread_button: علّم كغير مقروءة
-      read_button: علّم كمقروءة
-      destroy_button: احذف
     new:
       title: أرسل رسالة
       send_message_to_html: أرسل رساله جديده إلى %{name}
@@ -654,24 +640,41 @@ arz:
       message_sent: تم إرسال الرسالة
       limit_exceeded: لقد أرسلت الكثير من الرسائل مؤخرًا. الرجاء الانتظار بعض الوقت
         قبل أن تحاول إرسال المزيد.
-    outbox:
-      title: صندوق الصادر
-      no_sent_messages_html: لا يوجد لديك رسائل مرسله بعد. لماذا لا تقوم بالاتصال
-        مع بعض %{people_mapping_nearby_link}؟
-      people_mapping_nearby: مخططون فى جواري
     show:
       title: اقرأ الرسالة
       reply_button: رد
       unread_button: علّم كغير مقروءة
-    sent_message_summary:
-      destroy_button: احذف
-    heading:
-      my_inbox: الوارد
     mark:
       as_read: عُلّمت الرساله مقروءة
       as_unread: عُلّمت الرساله كغير مقروءة
     destroy:
       destroyed: حُذفت الرسالة
+    mailboxes:
+      heading:
+        my_inbox: الوارد
+      messages_table:
+        from: من
+        to: إلى
+        subject: الموضوع
+        date: التاريخ
+      message:
+        unread_button: علّم كغير مقروءة
+        read_button: علّم كمقروءة
+        destroy_button: احذف
+    inboxes:
+      show:
+        title: الوارد
+        no_messages_yet_html: لا يوجد لديك رسائل بعد. لماذا لا تقوم بالاتصال مع بعض
+          %{people_mapping_nearby_link}؟
+        people_mapping_nearby: مخططون فى جواري
+    outboxes:
+      show:
+        title: صندوق الصادر
+        no_sent_messages_html: لا يوجد لديك رسائل مرسله بعد. لماذا لا تقوم بالاتصال
+          مع بعض %{people_mapping_nearby_link}؟
+        people_mapping_nearby: مخططون فى جواري
+      message:
+        destroy_button: احذف
   passwords:
     new:
       title: نسيان كلمه المرور
@@ -882,6 +885,16 @@ arz:
       confirm: أكّد
     go_public:
       flash success: جميع تعديلاتك الآن عامه، ومسموح لك بالتعديل الآن.
+    issued_blocks:
+      show:
+        title: العرقلات بواسطه %{name}
+        heading_html: لائحه العرقلات بواسطه %{name}
+        empty: '%{name} لم يقم بعد بأى عرقلة'
+    received_blocks:
+      show:
+        title: العرقلات على %{name}
+        heading_html: لائحه العرقلات على %{name}
+        empty: '%{name} لم يتم عرقلته بعد.'
   user_role:
     filter:
       not_a_role: السطر '%{role}' مش دور صالح.
@@ -928,14 +941,6 @@ arz:
           one: ساعه واحد
           two: ساعتين
           other: '%{count} ساعة'
-    blocks_on:
-      title: العرقلات على %{name}
-      heading_html: لائحه العرقلات على %{name}
-      empty: '%{name} لم يتم عرقلته بعد.'
-    blocks_by:
-      title: العرقلات بواسطه %{name}
-      heading_html: لائحه العرقلات بواسطه %{name}
-      empty: '%{name} لم يقم بعد بأى عرقلة'
     show:
       title: '%{block_on} عُرقل بواسطه %{block_by}'
       heading_html: '%{block_on} عُرقل بواسطه %{block_by}'
index f253fe90a5832e972985d6771fbebffb713d304d..411344b5c2bb4c87d0655bcdbb9e44fa2c5d744f 100644 (file)
@@ -1313,27 +1313,6 @@ ast:
       failure: Yá se confirmó una direición de corréu electrónicu con esti token.
       unknown_token: El códigu de confirmación caducó o nun esiste.
   messages:
-    inbox:
-      title: Buzón
-      messages: Tienes %{new_messages} y %{old_messages}
-      new_messages:
-        one: '%{count} mensaxe nuevu'
-        other: '%{count} mensaxes nuevos'
-      old_messages:
-        one: '%{count} mensaxe vieyu'
-        other: '%{count} mensaxes vieyos'
-      no_messages_yet_html: Inda nun tienes mensaxes. ¿Y si te pones en contautu con
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: xente que ta mapeando cerca
-    messages_table:
-      from: De
-      to: Pa
-      subject: Asuntu
-      date: Data
-    message_summary:
-      unread_button: Marcar como non lleíu
-      read_button: Marcar como lleíu
-      destroy_button: Desaniciar
     new:
       title: Unviar mensaxe
       send_message_to_html: Unviar un mensaxe nuevu a %{name}
@@ -1346,14 +1325,6 @@ ast:
       title: Esi mensaxe nun esiste
       heading: Esi mensaxe nun esiste
       body: Nun hai dengún mensaxe con esa id.
-    outbox:
-      title: Buzón de salida
-      messages:
-        one: Tienes %{count} mensaxe unviáu
-        other: Tienes %{count} mensaxes unviaos
-      no_sent_messages_html: Inda nun unviasti mensaxes. ¿Y si te pones en contautu
-        con %{people_mapping_nearby_link}?
-      people_mapping_nearby: xente que ta mapeando cerca
     reply:
       wrong_user: Tas coneutáu como `%{user}' pero'l mensaxe que quies contestar nun
         s'unvió a esi usuariu. Anicia sesión col usuariu correchu pa contestar.
@@ -1365,15 +1336,47 @@ ast:
       back: Anterior
       wrong_user: Tas coneutáu como `%{user}' pero'l mensaxe que quies lleer nun s'unvió
         por o a esi usuariu. Anicia sesión col usuariu correchu pa contestar.
-    sent_message_summary:
-      destroy_button: Desaniciar
-    heading:
-      my_inbox: El mio buzón
     mark:
       as_read: Mensaxe marcáu como lleíu
       as_unread: Mensaxe marcáu como non lleíu
     destroy:
       destroyed: Mensaxe desaniciáu
+    mailboxes:
+      heading:
+        my_inbox: El mio buzón
+      messages_table:
+        from: De
+        to: Pa
+        subject: Asuntu
+        date: Data
+      message:
+        unread_button: Marcar como non lleíu
+        read_button: Marcar como lleíu
+        destroy_button: Desaniciar
+    inboxes:
+      show:
+        title: Buzón
+        messages: Tienes %{new_messages} y %{old_messages}
+        new_messages:
+          one: '%{count} mensaxe nuevu'
+          other: '%{count} mensaxes nuevos'
+        old_messages:
+          one: '%{count} mensaxe vieyu'
+          other: '%{count} mensaxes vieyos'
+        no_messages_yet_html: Inda nun tienes mensaxes. ¿Y si te pones en contautu
+          con %{people_mapping_nearby_link}?
+        people_mapping_nearby: xente que ta mapeando cerca
+    outboxes:
+      show:
+        title: Buzón de salida
+        messages:
+          one: Tienes %{count} mensaxe unviáu
+          other: Tienes %{count} mensaxes unviaos
+        no_sent_messages_html: Inda nun unviasti mensaxes. ¿Y si te pones en contautu
+          con %{people_mapping_nearby_link}?
+        people_mapping_nearby: xente que ta mapeando cerca
+      message:
+        destroy_button: Desaniciar
   passwords:
     new:
       title: Contraseña perdida
@@ -1885,6 +1888,16 @@ ast:
     go_public:
       flash success: Agora toles ediciones tuyes son públiques, y tienes permisu pa
         editar.
+    issued_blocks:
+      show:
+        title: Bloqueos fechos por %{name}
+        heading_html: Llista de los bloqueos por %{name}
+        empty: '%{name} entá nun fexo dengún bloquéu.'
+    received_blocks:
+      show:
+        title: Bloqueos fechos a %{name}
+        heading_html: Llista de los bloqueos a %{name}
+        empty: '%{name} inda nun foi bloquiáu.'
     lists:
       show:
         title: Usuarios
@@ -1974,14 +1987,6 @@ ast:
         years:
           one: 1 añu
           other: '%{count} años'
-    blocks_on:
-      title: Bloqueos fechos a %{name}
-      heading_html: Llista de los bloqueos a %{name}
-      empty: '%{name} inda nun foi bloquiáu.'
-    blocks_by:
-      title: Bloqueos fechos por %{name}
-      heading_html: Llista de los bloqueos por %{name}
-      empty: '%{name} entá nun fexo dengún bloquéu.'
     show:
       title: '%{block_on} bloquiáu por %{block_by}'
       heading_html: '%{block_on} bloquiáu por %{block_by}'
@@ -2053,7 +2058,6 @@ ast:
       center_marker: Centrar el mapa na marca
       paste_html: Pegar el HTML pa empotrar nun sitiu web
       view_larger_map: Ver mapa mayor
-      only_standard_layer: Sólo la capa estándar puede esportase como imaxen
     embed:
       report_problem: Informar d'un problema
     key:
index a82d9acf53b2f35267ee4102f9d64d04d734b03d..3bf82067592002c6213e5f65ca589018ecb3fc0e 100644 (file)
@@ -35,6 +35,11 @@ az:
       client_application:
         create: Qeydiyyatdan keç
         update: Yenilə
+      oauth2_application:
+        create: Qeydiyyatdan keç
+        update: Yenilə
+      redaction:
+        create: Redaksiya yarat
       trace:
         create: Yüklə
         update: Dəyişiklikləri yadda saxla
@@ -72,8 +77,8 @@ az:
       tracepoint: Trek Nöqtəsi
       tracetag: Trek Teqi
       user: İstifadəçi
-      user_preference: İstifadəçi Qurmaları
-      user_token: İstifadəçi Əlaməti
+      user_preference: İstifadəçi nizamlamaları
+      user_token: İstifadəçi tokeni
       way: Xətt
       way_node: Xəttin Nöqtələri
       way_tag: Xəttin Teqi
@@ -103,7 +108,7 @@ az:
         longitude: Uzunluq dairəsi
         public: İctimai
         description: İzah
-        gpx_file: GPX faylı yüklə
+        gpx_file: GPS İz Faylını seçin
         visibility: Görünüş
         tagstring: Etiketlər
       message:
@@ -167,7 +172,12 @@ az:
       contributor terms:
         link text: bu nədir?
       save changes button: Dəyişiklikləri yadda saxla
+    go_public:
+      make_edits_public_button: Bütün redaktələrimi açıq et
+    destroy:
+      success: Hesab Silindi.
   browse:
+    deleted_ago_by_html: '%{user} tərəfindən %{time_ago} əvvəl silindi'
     version: Versiya
     in_changeset: Dəyişikliklər
     anonymous: anonim
@@ -186,8 +196,9 @@ az:
         way: Xətt
         relation: Əlaqə
     containing_relation:
-      entry_role_html: Əlaqəsi %{relation_name} (%{relation_role} kimi)
+      entry_role_html: '%{relation_name} (%{relation_role} kimi)'
     not_found:
+      title: Tapılmadı
       sorry: Təəsüf ki, %{id} %{type} tapılmadı.
       type:
         node: nöqtə
@@ -197,7 +208,7 @@ az:
         note: qeyd
     timeout:
       sorry: Bağışlayın, %{id} identifikatorlu %{type} üçün məlumatlar çıxarılmaq
-        üçün cox uzundurlar.
+        üçün çox uzundurlar.
       type:
         node: nöqtə
         way: xətt
@@ -221,6 +232,7 @@ az:
         key: '%{key} teqini təsvir edən viki səhifəsi'
         tag: '%{key}=%{value} teqini təsvir edən viki səhifəsi'
       wikipedia_link: Vikipediyada %{page} məqaləsi
+      email_link: E-poçt %{email}
   changesets:
     changeset:
       no_edits: (redaktə yoxdur)
@@ -238,6 +250,7 @@ az:
         belongs_to: Müəllif
     show:
       title: 'Dəyişikliklər dəsti: %{id}'
+      hide_comment: gizlət
       changesetxml: XML dəyişikliklər dəsti
       osmchangexml: osmChange XML
     paging_nav:
@@ -251,6 +264,11 @@ az:
     popup:
       your location: Yerləşdiyin yer
       friend: Dost
+    show:
+      edit_your_profile: Profilinizi redaktə edin
+      my friends: Dostlarım
+      no friends: Hələ heç bir dost əlavə etməmisiniz.
+      nearby users: Yaxınlıqdakı digər istifadəçilər
   diary_entries:
     new:
       title: Yeni Gündəlik Yazısı
@@ -281,21 +299,23 @@ az:
       title: Belə bir gündəlik yazısı mövcud deyil
       heading: 'Bu nömrəyə sahib yazı mövcud deyil: %{id}'
     diary_entry:
-      posted_by_html: '%{link_user} tərəfindən %{created} yazılıb, %{language_link}
-        dilində.'
-      comment_link: Bu yazıyı şərh et
-      reply_link: Bu yazıya cavab ver
+      posted_by_html: '%{link_user} tərəfindən %{created} tarixində %{language_link}
+        dilində paylaşılıb.'
+      comment_link: Bu yazıya şərh yaz
+      reply_link: Müəllifə mesaj göndər
       comment_count:
-        one: '%{count} şərh var'
-        zero: Şərh yoxdur
-        other: '%{count} şərh var'
-      edit_link: Bu yazıyı redaktə et
+        one: '%{count} şərh'
+        other: '%{count} şərh'
+      no_comments: Şərh yoxdur
+      edit_link: Bu yazını redaktə et
       hide_link: Bu yazını gizlət
-      confirm: Təsdiq etmək
+      unhide_link: Bu yazını göstər
+      confirm: Təsdiq et
     diary_comment:
       comment_from_html: Şərh %{link_user} tərəfindən %{comment_created_at}
       hide_link: Bu şərhi gizlət
-      confirm: Təsdiq etmək
+      confirm: Təsdiq et
+      report: Bu şərhi şikayət et
     location:
       location: 'Yerləşdiyi yer:'
     feed:
@@ -314,6 +334,9 @@ az:
       post: Post
       when: Nə vaxt
       comment: Şərh
+  errors:
+    not_found:
+      title: Fayl tapılmadı
   friendships:
     make_friend:
       heading: '%{user}-i(ı) dostluğa əlavə edək?'
@@ -426,6 +449,13 @@ az:
           viaduct: Viaduk
           "yes": Körpü
         building:
+          apartment: Yaşayış binası
+          office: Ofis binası
+          public: İctimai bina
+          residential: Yaşayış binası
+          roof: Dam
+          ruins: Dağılmış Bina
+          school: Məktəb binası
           "yes": Tikili
         craft:
           brewery: Pivə zavodu
@@ -514,8 +544,8 @@ az:
           brownfield: Tərk edilmiş ərazi
           cemetery: Məzarlıq
           commercial: Ticarət sahəsi
-          conservation: Konservasiya ərazisi
-          construction: Tikinti
+          conservation: Mühafizə zonası
+          construction: Tikinti sahəsi
           farmland: Kənd təsərrüfatı
           farmyard: Ferma həyəti
           forest: Meşə təsərrüfatı
@@ -528,6 +558,7 @@ az:
           military: Hərbi ərazi
           mine: Mədən
           orchard: Meyvə bağı
+          plant_nursery: Tinglik
           quarry: Karxana
           railway: Dəmir yolu
           recreation_ground: Istirahət guşəsi
@@ -782,11 +813,11 @@ az:
     history: Tarix
     export: İxrac
     gps_traces: GPS cizgilər
-    user_diaries: İstifadəçi Gündəlikləri
+    user_diaries: İstifadəçi gündəlikləri
     edit_with: '%{editor} köməyi ilə dəyişdir'
     partners_partners: partnyorlar
     help: Kömək
-    copyright: Müəllif hüquqları və Lisenziyalar
+    copyright: Müəllif hüququ
   user_mailer:
     diary_comment_notification:
       subject: '[OpenStreetMap] %{user} adlı istifadəçi sənin gündəliy yazına şərh
@@ -812,27 +843,6 @@ az:
     confirm_email:
       button: Təsdiq et
   messages:
-    inbox:
-      title: Gələnlər
-      messages: 'Sizin varınızdır: %{new_messages} və %{old_messages}.'
-      new_messages:
-        one: '%{count} yeni mesaj'
-        other: '%{count} yeni mesaj'
-      old_messages:
-        one: '%{count} köhnə mesaj'
-        other: '%{count} köhnə mesaj'
-      no_messages_yet_html: Sizin hələdə mesajınız yoxdur. Niyə də ki, %{people_mapping_nearby_link}
-        danışmırsınız?
-      people_mapping_nearby: yaxınlıqdakı istifadəçilərlə
-    messages_table:
-      from: Kimdən
-      to: Kimə
-      subject: Mövzu
-      date: Tarix
-    message_summary:
-      unread_button: Oxunulmamış kimi işarələ
-      read_button: Oxunulmuş kimi işarələ
-      destroy_button: Sil
     new:
       title: Mesaj göndər
       send_message_to_html: '%{name} yeni mesaj göndər'
@@ -845,22 +855,46 @@ az:
       title: Belə bir mesaj yoxdur
       heading: Belə bir mesaj yoxdur
       body: Bağışlayın, amma belə ID ilə mesaj yoxdur.
-    outbox:
-      title: Göndərilənlər
-      people_mapping_nearby: yaxınlıqdakı istifadəçilərlə
     show:
       title: Mesajı oxu
       reply_button: Geri göndər
       unread_button: Oxunulmamış kimi işarələ
-    sent_message_summary:
-      destroy_button: Sil
-    heading:
-      my_inbox: Mənim gələnlər
     mark:
       as_read: Mesaj oxunulmuş kimi işarələndi
       as_unread: Mesaj oxunulmamış kimi işarələndi
     destroy:
       destroyed: Mesaj silindi
+    mailboxes:
+      heading:
+        my_inbox: Mənim gələnlər
+      messages_table:
+        from: Kimdən
+        to: Kimə
+        subject: Mövzu
+        date: Tarix
+      message:
+        unread_button: Oxunulmamış kimi işarələ
+        read_button: Oxunulmuş kimi işarələ
+        destroy_button: Sil
+    inboxes:
+      show:
+        title: Gələnlər
+        messages: 'Sizin varınızdır: %{new_messages} və %{old_messages}.'
+        new_messages:
+          one: '%{count} yeni mesaj'
+          other: '%{count} yeni mesaj'
+        old_messages:
+          one: '%{count} köhnə mesaj'
+          other: '%{count} köhnə mesaj'
+        no_messages_yet_html: Sizin hələdə mesajınız yoxdur. Niyə də ki, %{people_mapping_nearby_link}
+          danışmırsınız?
+        people_mapping_nearby: yaxınlıqdakı istifadəçilərlə
+    outboxes:
+      show:
+        title: Göndərilənlər
+        people_mapping_nearby: yaxınlıqdakı istifadəçilərlə
+      message:
+        destroy_button: Sil
   passwords:
     new:
       title: İtirilmiş parol
@@ -1017,6 +1051,9 @@ az:
       hide_user: Bu istifadəçini gizlət
       delete_user: bu istifadəçini sil
       confirm: Təsdiq et
+    issued_blocks:
+      show:
+        title: '%{name} tərəfindən blok edilib'
     lists:
       show:
         title: İstifadəçilər
@@ -1036,8 +1073,6 @@ az:
       heading: İstifadəçi blokları siyahısı
     helper:
       time_past_html: '%{time} əvvəl sona çatıb.'
-    blocks_by:
-      title: '%{name} tərəfindən blok edilib'
     show:
       title: '%{block_on}, %{block_by} tərəfindən blok edilib'
       status: Status
index aa273e8768de7a53adadf3e42d906cd25529301d..4d835ac77ffb8977fe28c8d8a6007000f421ab3e 100644 (file)
@@ -1686,8 +1686,6 @@ ba:
     notes_paging_nav:
       showing_page: ' %{page} бите'
   javascripts:
-    share:
-      only_standard_layer: Бары стандарт ҡатлам ғына һүрәт кеүек экспортлана ала
     embed:
       report_problem: Проблема хаҡында хәбәр итергә
 ...
index 0c9f085753b8b6921f67dd16dcfd969802f25d0f..f82ed651426699f54d46d2f52f04f1d6673b5a43 100644 (file)
@@ -63,6 +63,7 @@ be-Tarask:
       message: Паведамленьне
       node: Вузел
       node_tag: Тэг вузла
+      note: Заўвага
       old_node: Стары вузел
       old_node_tag: Стары тэг вузла
       old_relation: Старая сувязь
@@ -124,7 +125,7 @@ be-Tarask:
         longitude: Даўгата
         public: Публічны
         description: Апісаньне
-        gpx_file: Ð\97агÑ\80Ñ\83зÑ\96Ñ\86Ñ\8c GPX-Ñ\84айл
+        gpx_file: Ð\90бÑ\80аÑ\86Ñ\8c Ñ\84айл GPS-Ñ\81Ñ\8cледÑ\83
         visibility: Бачнасьць
         tagstring: Тэгі
       message:
@@ -237,6 +238,7 @@ be-Tarask:
         reopened_at_by_html: Пераадкрыта %{when} удзельнікам %{user}
       rss:
         title: Нататкі OpenStreetMap
+        description_all: Сьпіс павядомленых, пракамэнтаваных або закрытых нататак
         description_area: Сьпіс заўвагаў, створаных, пракамэнтаваных ці закрытых каля
           вас [(%{min_lat}|%{min_lon}) — (%{max_lat}|%{max_lon})]
         description_item: RSS-стужка для заўвагаў %{id}
@@ -250,6 +252,9 @@ be-Tarask:
   account:
     deletions:
       show:
+        title: Выдаліць мой уліковы запіс
+        warning: Увага! Працэс выдаленьня ўліковага запісу канчатковы і незваротны.
+        delete_account: Выдаліць уліковы запіс
         confirm_delete: Вы ўпэўненыя?
   accounts:
     edit:
@@ -324,7 +329,7 @@ be-Tarask:
         way: Шлях
         relation: Адносіны
     containing_relation:
-      entry_role_html: Адносіны %{relation_name} (як %{relation_role})
+      entry_role_html: '%{relation_name} (як %{relation_role})'
     not_found:
       title: Ня знойдзена
       sorry: Прабачце, %{type} № %{id} ня знойдзены.
@@ -903,7 +908,10 @@ be-Tarask:
       see_their_profile: Вы можаце прагледзець яго профіль на %{userurl}.
       befriend_them: Вы таксама можаце дадаць іх у якасьці сябраў на %{befriendurl}.
     gpx_failure:
-      failed_to_import: 'немагчыма імпартаваць. Адбылася памылка:'
+      failed_to_import: 'немагчыма імпартаваць як файл GPS-сьледу. Праверце, ці сапраўды
+        гэты файл ёсьць GPX альбо архівам з файлам(і) GPX падтрымліванага фармату
+        (.tar.gz, .tar.bz2, .tar, .zip, .gpx.gz, .gpx.bz2). Магчыма, праблема з фарматам
+        ці сынтаксам вашага файлу? Памылка імпарту такая:'
       subject: '[OpenStreetMap] памылка імпарту GPX'
     gpx_success:
       subject: '[OpenStreetMap] імпарт GPX адбыўся пасьпяхова'
@@ -941,29 +949,6 @@ be-Tarask:
       success: Зьмена Вашага адрасу электроннай пошты пацьверджаная!
       failure: Адрас электроннай пошты ужо быў пацьверджаны гэтым ключом.
   messages:
-    inbox:
-      title: Уваходзячыя
-      messages: Вы маеце %{new_messages} і %{old_messages}
-      new_messages:
-        one: '%{count} новае паведамленьне'
-        few: '%{count} новыя паведамленьні'
-        other: '%{count} новых паведамленьняў'
-      old_messages:
-        one: '%{count} старое паведамленьне'
-        few: '%{count} старыя паведамленьні'
-        other: '%{count} старых паведамленьняў'
-      no_messages_yet_html: Вы яшчэ ня маеце паведамленьняў. Чаму б не зьвязацца з
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: людзьмі, якія жывуць каля Вас
-    messages_table:
-      from: Ад
-      to: Да
-      subject: Тэма
-      date: Дата
-    message_summary:
-      unread_button: Пазначыць як непрачытанае
-      read_button: Пазначыць як прачытанае
-      destroy_button: Выдаліць
     new:
       title: Даслаць паведамленьне
       send_message_to_html: Даслаць новае паведамленьне да %{name}
@@ -976,35 +961,61 @@ be-Tarask:
       title: Няма такога паведамленьня
       heading: Няма такога паведамленьня
       body: Прабачце, няма паведамленьня з такім ідэнтыфікатарам.
-    outbox:
-      title: Зыходзячыя
-      messages:
-        one: Вы маеце %{count} дасланае паведамленьне
-        few: Вы маеце %{count} дасланыя паведамленьні
-        other: Вы маеце %{count} дасланых паведамленьняў
-      no_sent_messages_html: Вы яшчэ не даслалі паведамленьне. Чаму б не зьвязацца
-        з %{people_mapping_nearby_link}?
-      people_mapping_nearby: людзьмі, якія жывуць каля Вас
     reply:
-      wrong_user: Вы ўвайшлі ў сыстэму як `%{user}', але паведамленьне, на якое Вы
-        Ð¶Ð°Ð´Ð°ÐµÑ\86е Ð°Ð´ÐºÐ°Ð·Ð°Ñ\86Ñ\8c, Ð½Ðµ Ð±Ñ\8bло Ð´Ð°Ñ\81ланае Ð³Ñ\8dÑ\82амÑ\83 ÐºÐ°Ñ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96кÑ\83. Ð\9aалÑ\96 Ð»Ð°Ñ\81ка, Ñ\83вайдзÑ\96Ñ\86е
-        як карыстальнік, адпаведна запыту, каб адказаць.
+      wrong_user: Вы ўвайшлі ў сыстэму як '%{user}', але паведамленьне, на якое жадаеце
+        Ð°Ð´ÐºÐ°Ð·Ð°Ñ\86Ñ\8c, Ð½Ðµ Ð±Ñ\8bло Ð´Ð°Ñ\81ланае Ð³Ñ\8dÑ\82амÑ\83 ÐºÐ°Ñ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96кÑ\83. Ð\9aалÑ\96 Ð»Ð°Ñ\81ка, Ñ\83вайдзÑ\96Ñ\86е Ñ\8fк
+        карыстальнік, адпаведна запыту, каб адказаць.
     show:
       title: Чытаць паведамленьне
       reply_button: Адказаць
       unread_button: Пазначыць як непрачытанае
-      wrong_user: Вы ўвайшлі ў сыстэму як `%{user}', але паведамленьне, якое Вы жадаеце
-        прачытаць, было дасланае не гэтым ці гэтаму карыстальніку. Калі ласка, увайдзіце
+      wrong_user: Вы ўвайшлі ў сыстэму як '%{user}', але паведамленьне, якое жадаеце
+        прачытаць, было дасланае ня гэтым ці гэтаму карыстальніку. Калі ласка, увайдзіце
         як карыстальнік, адпаведна запыту, каб прачытаць.
-    sent_message_summary:
-      destroy_button: Выдаліць
-    heading:
-      my_inbox: Мае ўваходзячыя
     mark:
       as_read: Паведамленьне пазначанае як прачытанае
       as_unread: Паведамленьне пазначанае як непрачытанае
     destroy:
       destroyed: Паведамленьне выдаленае
+    mailboxes:
+      heading:
+        my_inbox: Мае ўваходзячыя
+      messages_table:
+        from: Ад
+        to: Да
+        subject: Тэма
+        date: Дата
+      message:
+        unread_button: Пазначыць як непрачытанае
+        read_button: Пазначыць як прачытанае
+        destroy_button: Выдаліць
+    inboxes:
+      show:
+        title: Уваходзячыя
+        messages: Вы маеце %{new_messages} і %{old_messages}
+        new_messages:
+          one: '%{count} новае паведамленьне'
+          few: '%{count} новыя паведамленьні'
+          other: '%{count} новых паведамленьняў'
+        old_messages:
+          one: '%{count} старое паведамленьне'
+          few: '%{count} старыя паведамленьні'
+          other: '%{count} старых паведамленьняў'
+        no_messages_yet_html: Вы яшчэ ня маеце паведамленьняў. Чаму б не зьвязацца
+          з %{people_mapping_nearby_link}?
+        people_mapping_nearby: людзьмі, якія жывуць каля Вас
+    outboxes:
+      show:
+        title: Зыходзячыя
+        messages:
+          one: Вы маеце %{count} дасланае паведамленьне
+          few: Вы маеце %{count} дасланыя паведамленьні
+          other: Вы маеце %{count} дасланых паведамленьняў
+        no_sent_messages_html: Вы яшчэ не даслалі паведамленьне. Чаму б не зьвязацца
+          з %{people_mapping_nearby_link}?
+        people_mapping_nearby: людзьмі, якія жывуць каля Вас
+      message:
+        destroy_button: Выдаліць
   passwords:
     new:
       title: Згублены пароль
@@ -1315,6 +1326,16 @@ be-Tarask:
     go_public:
       flash success: Усе Вашыя рэдагаваньні цяпер публічныя, і цяпер Вам дазволена
         рэдагаваньне.
+    issued_blocks:
+      show:
+        title: Блякаваньні створаныя %{name}
+        heading_html: Сьпіс блякаваньняў, якія стварыў %{name}
+        empty: '%{name} яшчэ не стварыў блякаваньняў.'
+    received_blocks:
+      show:
+        title: Блякаваньні для %{name}
+        heading_html: Сьпіс блякаваньняў %{name}
+        empty: '%{name} ня быў яшчэ заблякаваны.'
     lists:
       show:
         title: Удзельнікі
@@ -1333,13 +1354,13 @@ be-Tarask:
       invalid_credentials: Хібныя аўтэнтыфікацыйныя зьвесткі
   user_role:
     filter:
-      not_a_role: Радок «%{role}» не зьяўляецца слушнай роляй.
+      not_a_role: Радок «%{role}» ня ёсьць слушнай роляй.
       already_has_role: Карыстальнік ужо мае ролю %{role}.
       doesnt_have_role: Карыстальнік ня мае ролі %{role}.
     grant:
-      are_you_sure: Вы ўпэўнены, што жадаеце надаць ролю `%{role}' удзельніку `%{name}'?
+      are_you_sure: Вы ўпэўнены, што жадаеце надаць ролю '%{role}' удзельніку '%{name}'?
     revoke:
-      are_you_sure: Вы ўпэўнены, што жадаеце скасаваць ролю `%{role}' удзельніка `%{name}'?
+      are_you_sure: Вы ўпэўнены, што жадаеце скасаваць ролю '%{role}' удзельніка '%{name}'?
   user_blocks:
     model:
       non_moderator_update: Трэба быць мадэратарам, каб стварыць ці адбавіць блякаваньне.
@@ -1379,14 +1400,6 @@ be-Tarask:
           one: '%{count} гадзіна'
           few: '%{count} гадзіны'
           other: '%{count} гадзінаў'
-    blocks_on:
-      title: Блякаваньні для %{name}
-      heading_html: Сьпіс блякаваньняў %{name}
-      empty: '%{name} ня быў яшчэ заблякаваны.'
-    blocks_by:
-      title: Блякаваньні створаныя %{name}
-      heading_html: Сьпіс блякаваньняў, якія стварыў %{name}
-      empty: '%{name} яшчэ не стварыў блякаваньняў.'
     show:
       title: '%{block_on} заблякаваны %{block_by}'
       heading_html: '%{block_on} заблякаваны %{block_by}'
index 981ce60260c2823d82e17b72a47905f225f8e4d4..f8236a0b93fa3f3ff96d9b3122bd4645c7b91881 100644 (file)
@@ -1820,9 +1820,6 @@ be:
       success: Уліковы запіс пацверджаны, дзякуй за рэгістрацыю!
       already active: Гэты ўліковы запіс ужо пацверджаны.
       unknown token: Тэрмін дзеяння кода пацвярджэння ўжо прайшоў ці ён не існуе.
-      resend_html: Калі вам патрэбна атрымаць паўторна электронны ліст пацвярджэння,
-        перайдзіце праз %{reconfirm_link}.
-      click_here: націсніце тут
     confirm_resend:
       failure: Карыстальнік %{name} не знойдзены.
     confirm_email:
@@ -1840,29 +1837,6 @@ be:
         на пацвярджэнне, калі ласка, унясіце %{sender} у белы спіс, паколькі мы не
         можам адказаць на аніякія запыты на пацвярджэнне.
   messages:
-    inbox:
-      title: Уваходныя
-      messages: У вас %{new_messages} і %{old_messages}
-      new_messages:
-        one: '%{count} новае паведамленне'
-        other: '%{count} новых паведамленняў'
-      old_messages:
-        one: '%{count} старое паведамленне'
-        other: '%{count} старых паведамленняў'
-      no_messages_yet_html: У вас пакуль няма паведамленняў. Чаму б не зкаардынавацца
-        з  %{people_mapping_nearby_link}?
-      people_mapping_nearby: людзьмі, што жывуць непадалёку
-    messages_table:
-      from: Ад
-      to: Каму
-      subject: Тэма
-      date: Дата
-      actions: Дзеянні
-    message_summary:
-      unread_button: Адзначыць як нечытанае
-      read_button: Адзначыць як прачытанае
-      destroy_button: Выдаліць
-      unmute_button: Перамясціць у папку "Уваходныя"
     new:
       title: Даслаць паведамленне
       send_message_to_html: Даслаць новае паведамленне %{name}
@@ -1875,21 +1849,6 @@ be:
       title: Няма такога паведамлення
       heading: Няма такога паведамлення
       body: Шкада, паведамлення з гэтым ідэнтыфікатарам няма.
-    outbox:
-      title: Зыходныя
-      messages:
-        one: Вы адаслалі %{count} паведамленне
-        other: Вы адаслалі %{count} паведамленняў
-      no_sent_messages_html: У вас пакуль няма дасланых паведамленняў. Чаму б не зкаардынавацца
-        з %{people_mapping_nearby_link}?
-      people_mapping_nearby: людзьмі, што жывуць непадалёку
-    muted:
-      title: Прыглушаныя паведамленні
-      messages:
-        one: '%{count} прыглушанае паведамленне'
-        few: '%{count} прыглушаных паведамлення'
-        many: '%{count} прыглушаных паведамленняў'
-        other: '%{count} прыглушанных паведамлення(-яў)'
     reply:
       wrong_user: Вы ўвайшлі ў сістэму як "%{user}", але паведамленне, на якое вы
         жадаеце адказаць, не было дасланае гэтаму карыстальніку. Калі ласка, увайдзіце
@@ -1903,12 +1862,6 @@ be:
       wrong_user: Вы ўвайшлі ў сістэму пад імем "%{user}", але паведамленне, якое
         вы жадаеце прачытаць, не было адпраўленае гэтым карыстальнікам. Калі ласка,
         увайдзіце ў сістэму пад правільным імем, каб прачытаць яго.
-    sent_message_summary:
-      destroy_button: Выдаліць
-    heading:
-      my_inbox: Мае уваходныя
-      my_outbox: Мае выходныя
-      muted_messages: Прыглушаныя паведамленні
     mark:
       as_read: Паведамленне адмечана прачытаным
       as_unread: Паведамленне адмечана нечытаным
@@ -1917,6 +1870,54 @@ be:
       error: Паведамленне не можа быць перамешчана ў папку "Уваходныя".
     destroy:
       destroyed: Паведамленне выдалена
+    mailboxes:
+      heading:
+        my_inbox: Мае уваходныя
+        my_outbox: Мае выходныя
+        muted_messages: Прыглушаныя паведамленні
+      messages_table:
+        from: Ад
+        to: Каму
+        subject: Тэма
+        date: Дата
+        actions: Дзеянні
+      message:
+        unread_button: Адзначыць як нечытанае
+        read_button: Адзначыць як прачытанае
+        destroy_button: Выдаліць
+        unmute_button: Перамясціць у папку "Уваходныя"
+    inboxes:
+      show:
+        title: Уваходныя
+        messages: У вас %{new_messages} і %{old_messages}
+        new_messages:
+          one: '%{count} новае паведамленне'
+          other: '%{count} новых паведамленняў'
+        old_messages:
+          one: '%{count} старое паведамленне'
+          other: '%{count} старых паведамленняў'
+        no_messages_yet_html: У вас пакуль няма паведамленняў. Чаму б не зкаардынавацца
+          з  %{people_mapping_nearby_link}?
+        people_mapping_nearby: людзьмі, што жывуць непадалёку
+    muted_inboxes:
+      show:
+        title: Прыглушаныя паведамленні
+        messages:
+          one: '%{count} прыглушанае паведамленне'
+          few: '%{count} прыглушаных паведамлення'
+          many: '%{count} прыглушаных паведамленняў'
+          other: '%{count} прыглушанных паведамлення(-яў)'
+    outboxes:
+      show:
+        title: Зыходныя
+        messages:
+          one: Вы адаслалі %{count} паведамленне
+          other: Вы адаслалі %{count} паведамленняў
+        no_sent_messages_html: У вас пакуль няма дасланых паведамленняў. Чаму б не
+          зкаардынавацца з %{people_mapping_nearby_link}?
+        people_mapping_nearby: людзьмі, што жывуць непадалёку
+      message:
+        destroy_button: Выдаліць
   passwords:
     new:
       title: згублены пароль
@@ -2614,6 +2615,16 @@ be:
       report: Паскардзіцца на гэтага карыстальніка
     go_public:
       flash success: Усе вашыя змены цяпер публічныя, і вам цяпер дазволена рэдагаванне
+    issued_blocks:
+      show:
+        title: Блакіроўкі створаныя %{name}
+        heading_html: Спіс блакіровак, якія стварыў %{name}
+        empty: '%{name} яшчэ не стварыў блакіровак.'
+    received_blocks:
+      show:
+        title: Блакіроўкі для %{name}
+        heading_html: Спіс блакіровак %{name}
+        empty: '%{name} не быў яшчэ заблакіраваны.'
     lists:
       show:
         title: Удзельнікі
@@ -2712,14 +2723,6 @@ be:
           one: 1 год
           few: '%{count} гады'
           other: '%{count} гадоў'
-    blocks_on:
-      title: Блакіроўкі для %{name}
-      heading_html: Спіс блакіровак %{name}
-      empty: '%{name} не быў яшчэ заблакіраваны.'
-    blocks_by:
-      title: Блакіроўкі створаныя %{name}
-      heading_html: Спіс блакіровак, якія стварыў %{name}
-      empty: '%{name} яшчэ не стварыў блакіровак.'
     show:
       title: '%{block_on} заблакіраваны %{block_by}'
       heading_html: '%{block_on} заблакіраваны %{block_by}'
@@ -2803,8 +2806,6 @@ be:
       center_marker: Цэнтраваць карту па маркеры
       paste_html: Уставіць HTML для ўбудовы ў вэб-сайт
       view_larger_map: Праглядзець большую карту
-      only_standard_layer: Толькі стандартны пласт можа быць экспартаваны ў выглядзе
-        выявы
     embed:
       report_problem: Паведаміць аб праблеме
     key:
index 07655beb076498128e0aaeb865ca09447e401a3f..f3b327175648695c9f360b066b39594f718e1f2d 100644 (file)
@@ -1317,7 +1317,6 @@ bg:
       success: Профилът е потвърден, благодарим за регистрацията!
       already active: Този профил вече е бил потвърден.
       unknown token: Този код за потвърждение е изтекъл или не съществува.
-      click_here: Кликнете тук
     confirm_resend:
       failure: Потребителят %{name} не е открит.
     confirm_email:
@@ -1328,28 +1327,6 @@ bg:
       success: Промяната на електронна поща е потвърдена!
       unknown_token: Този код за потвърждение е изтекъл или не съществува.
   messages:
-    inbox:
-      title: Входящи
-      messages: Имате %{new_messages} и %{old_messages}
-      new_messages:
-        one: '%{count} ново съобщение'
-        other: '%{count} нови съобщения'
-      old_messages:
-        one: '%{count} прочетено съобщение'
-        other: '%{count} прочетени съобщения'
-      no_messages_yet_html: Все още нямате никакви съобщения. Не искате ли да се свържете
-        с други %{people_mapping_nearby_link}?
-      people_mapping_nearby: картографи в близост
-    messages_table:
-      from: От
-      to: До
-      subject: Тема
-      date: Дата
-      actions: Действия
-    message_summary:
-      unread_button: Отбелязване като непрочетено
-      read_button: Отбелязване като прочетено
-      destroy_button: Изтриване
     new:
       title: Изпращане на съобщение
       send_message_to_html: Изпращане ново съобщение на %{name}
@@ -1360,14 +1337,6 @@ bg:
       title: Няма такова съобщение
       heading: Няма такова съобщение
       body: Съжаляваме но няма съобщение със това id.
-    outbox:
-      title: Изходящи
-      messages:
-        one: Изпратили сте %{count} съобщение
-        other: Изпратили сте %{count} съобщения
-      no_sent_messages_html: Все още нямате никакви съобщения. Не искате ли да се
-        свържете с други %{people_mapping_nearby_link}?
-      people_mapping_nearby: картографи в близост
     reply:
       wrong_user: Вие сте влезли като `%{user}' но съобщението на което искате да
         отговорите не е изпратено на този потребител. Моля влезте като правилния потребител
@@ -1378,17 +1347,50 @@ bg:
       unread_button: Отбелязване като непрочетено
       destroy_button: Изтриване
       back: Назад
-    sent_message_summary:
-      destroy_button: Изтриване
-    heading:
-      my_inbox: Входяща кутия
-      my_outbox: Изходяща кутия
-      muted_messages: Заглушени съобщения
     mark:
       as_read: Съобщението е отбелязано като прочетено
       as_unread: Съобщението е отбелязано като непрочетено
     destroy:
       destroyed: Съобщението беше изтрито
+    mailboxes:
+      heading:
+        my_inbox: Входяща кутия
+        my_outbox: Изходяща кутия
+        muted_messages: Заглушени съобщения
+      messages_table:
+        from: От
+        to: До
+        subject: Тема
+        date: Дата
+        actions: Действия
+      message:
+        unread_button: Отбелязване като непрочетено
+        read_button: Отбелязване като прочетено
+        destroy_button: Изтриване
+    inboxes:
+      show:
+        title: Входящи
+        messages: Имате %{new_messages} и %{old_messages}
+        new_messages:
+          one: '%{count} ново съобщение'
+          other: '%{count} нови съобщения'
+        old_messages:
+          one: '%{count} прочетено съобщение'
+          other: '%{count} прочетени съобщения'
+        no_messages_yet_html: Все още нямате никакви съобщения. Не искате ли да се
+          свържете с други %{people_mapping_nearby_link}?
+        people_mapping_nearby: картографи в близост
+    outboxes:
+      show:
+        title: Изходящи
+        messages:
+          one: Изпратили сте %{count} съобщение
+          other: Изпратили сте %{count} съобщения
+        no_sent_messages_html: Все още нямате никакви съобщения. Не искате ли да се
+          свържете с други %{people_mapping_nearby_link}?
+        people_mapping_nearby: картографи в близост
+      message:
+        destroy_button: Изтриване
   passwords:
     new:
       title: Възстановяване на парола
@@ -2055,8 +2057,6 @@ bg:
       include_marker: Добавяне на маркер
       center_marker: Центриране на маркера
       view_larger_map: Преглед на по-голяма карта
-      only_standard_layer: Само стандартния слой, колоездачната карта и транспортната
-        карта могат да бъдат изнесени като изображение
     embed:
       report_problem: Докладване за проблем
     key:
index 073ab4da81242316f20abbd2500bc782d1b7b23d..72dba0e56ec2620b1ab4b50bcb2e9ae42ef3e1c7 100644 (file)
@@ -1485,34 +1485,11 @@ bn:
       heading: আপনার ইমেইল দেখুন!
       introduction_1: আমরা আপনাকে একটি নিশ্চিতকরণ ইমেইল পাঠিয়েছি।
       button: নিশ্চিত করুন
-      click_here: এখানে ক্লিক করুন
     confirm_resend:
       failure: ব্যবহারকারী %{name}-কে পাওয়া যায়নি।
     confirm_email:
       button: নিশ্চিত করুন
   messages:
-    inbox:
-      title: ইনবক্স
-      messages: আপনার %{new_messages} ও %{old_messages} রয়েছে
-      new_messages:
-        one: '%{count}টি নতুন বার্তা'
-        other: '%{count}টি নতুন বার্তা'
-      old_messages:
-        one: '%{count}টি পুরনো বার্তা'
-        other: '%{count}টি পুরনো বার্তা'
-      no_messages_yet_html: আপনার কাছে এখনো কোনো বার্তা নেই। কেন কিছু %{people_mapping_nearby_link}-এর
-        সাথে যোগাযোগ করবেন না?
-      people_mapping_nearby: কাছাকাছি অবদানকারী
-    messages_table:
-      from: প্রেরক
-      to: প্রাপক
-      subject: বিষয়
-      date: তারিখ
-    message_summary:
-      unread_button: অপঠিত হিসেবে চিহ্নিত করুন
-      read_button: পঠিত হিসেবে চিহ্নিত করুন
-      destroy_button: মুছুন
-      unmute_button: ইনবক্সে সরান
     new:
       title: বার্তা পাঠান
       send_message_to_html: '%{name}কে একটি নতুন বার্তা পাঠান'
@@ -1525,28 +1502,53 @@ bn:
       title: কোনো বার্তা নেই
       heading: কোনো বার্তা নেই
       body: এই আইডির সাথে কোনও বার্তালাপ নেই।
-    outbox:
-      title: বহির্বাক্স
-      messages:
-        one: আপনি %{count}টি বার্তা পাঠিয়েছেন
-        other: আপনি %{count}টি বার্তা পাঠিয়েছেন
-      people_mapping_nearby: কাছাকাছি মানচিত্রকার
     show:
       title: বার্তা পড়ুন
       reply_button: প্রত্যুত্তর
       unread_button: অপঠিত হিসেবে চিহ্নিত করুন
       destroy_button: অপসারণ
       back: পিছনে
-    sent_message_summary:
-      destroy_button: অপসারণ
-    heading:
-      my_inbox: আমার ইনবক্স
-      my_outbox: আমার আউটবক্স
     mark:
       as_read: বার্তা পঠিত হিসেবে চিহ্নিত করুন
       as_unread: বার্তা অপঠিত হিসেবে চিহ্নিত করুন
     destroy:
       destroyed: বার্তা মোছা হয়েছে
+    mailboxes:
+      heading:
+        my_inbox: আমার ইনবক্স
+        my_outbox: আমার আউটবক্স
+      messages_table:
+        from: প্রেরক
+        to: প্রাপক
+        subject: বিষয়
+        date: তারিখ
+      message:
+        unread_button: অপঠিত হিসেবে চিহ্নিত করুন
+        read_button: পঠিত হিসেবে চিহ্নিত করুন
+        destroy_button: মুছুন
+        unmute_button: ইনবক্সে সরান
+    inboxes:
+      show:
+        title: ইনবক্স
+        messages: আপনার %{new_messages} ও %{old_messages} রয়েছে
+        new_messages:
+          one: '%{count}টি নতুন বার্তা'
+          other: '%{count}টি নতুন বার্তা'
+        old_messages:
+          one: '%{count}টি পুরনো বার্তা'
+          other: '%{count}টি পুরনো বার্তা'
+        no_messages_yet_html: আপনার কাছে এখনো কোনো বার্তা নেই। কেন কিছু %{people_mapping_nearby_link}-এর
+          সাথে যোগাযোগ করবেন না?
+        people_mapping_nearby: কাছাকাছি অবদানকারী
+    outboxes:
+      show:
+        title: বহির্বাক্স
+        messages:
+          one: আপনি %{count}টি বার্তা পাঠিয়েছেন
+          other: আপনি %{count}টি বার্তা পাঠিয়েছেন
+        people_mapping_nearby: কাছাকাছি মানচিত্রকার
+      message:
+        destroy_button: অপসারণ
   passwords:
     new:
       title: পাসওয়ার্ড ভুলে গেছেন
@@ -2003,6 +2005,9 @@ bn:
     go_public:
       flash success: আপনার সকল সম্পাদনা এখন উন্মুক্ত, এবং এখন আপনার সম্পাদনের অনুমতি
         রয়েছে।
+    received_blocks:
+      edit:
+        revoke: প্রত্যাহার!
     lists:
       show:
         title: ব্যবহারকারীগণ
@@ -2050,8 +2055,6 @@ bn:
     not_found:
       sorry: দুঃখিত, ID %{id} সহ ব্যবহারকারী ব্লক খুঁজে পাওয়া যায়নি।
       back: সূচকে ফিরে যান
-    revoke_all:
-      revoke: প্রত্যাহার!
     helper:
       block_duration:
         hours:
index ec77ff4cf15fd3c2a45785b921004eb2c27c17dd..86bea2392cae91f786e3dc61201071aa1d371008 100644 (file)
@@ -72,6 +72,7 @@ br:
       message: Kemennadenn
       node: Skoulm
       node_tag: Tikedenn ar skoulm
+      note: Notenn
       old_node: Skoulm kozh
       old_node_tag: Tikedenn ar skoulm kozh
       old_relation: Darempred kozh
@@ -404,7 +405,7 @@ br:
         way: Hent
         relation: Darempred
     containing_relation:
-      entry_role_html: Darempred %{relation_name} (evel %{relation_role})
+      entry_role_html: '%{relation_name} (evel %{relation_role})'
     not_found:
       title: N'eo ket bet kavet
       sorry: 'Ho tigarez, n''heller ket kavout %{type} #%{id}.'
@@ -416,8 +417,8 @@ br:
         note: notenn
     timeout:
       title: Diamzeret eo an teul
-      sorry: Digarezit, ar roadennoù evit ar seurt %{type}  ha gant an id %{id} a
-        zo re hir da adtapout.
+      sorry: Hon digarezit, ar roadennoù evit ar seurt %{type} ha gant an id %{id}
+        zo re hir da adtapout.
       type:
         node: skoulm
         way: hent
@@ -454,6 +455,10 @@ br:
       introduction: Klikit war ar gartenn evit kavout arc'hweladurioù e-kichen.
       nearby: Arc'hweladurioù e-kichen
       enclosing: Arc'hweladurioù enklozañ
+  nodes:
+    timeout:
+      sorry: Hon digarezit, ar roadennoù evit ar skoulm gant an id %{id} a zo re hir
+        da adtapout.
   old_nodes:
     not_found:
       sorry: 'Hon digarezit, n''eo ket bet kavet ar stumm %{version} eus ar skoulm
@@ -501,8 +506,10 @@ br:
         closed: Serret
         belongs_to: Aozer
     subscribe:
+      heading: Koumanantiñ da gaozeadenn an hollad cheñchamantoù-mañ?
       button: Koumanantiñ ouzh ar gaozeadenn
     unsubscribe:
+      heading: Digoumanantiñ diouzh kaozeadenn an hollad cheñchamantoù-mañ?
       button: Digoumanantiñ diouzh ar gaozeadenn
     heading:
       title: Hollad cheñchamantoù %{id}
@@ -1016,6 +1023,9 @@ br:
           wayside_shrine: Ti-pediñ
           wreck: Peñse
           "yes": Lec'h Istorel
+        information:
+          map: Kartenn
+          office: Ti an douristed
         junction:
           "yes": Kej
         landuse:
@@ -1088,6 +1098,8 @@ br:
           track: Roudenn redek
           water_park: Kreizenn dour
           "yes": Diduamantoù
+        lock:
+          "yes": Skluz
         man_made:
           adit: Toullenn moned d'ar mengleuz
           advertising: Bruderezh
@@ -1428,6 +1440,13 @@ br:
           building_passage: Tremen savadur
           culvert: kan-dour
           "yes": Riboul
+        water:
+          lake: Lenn
+          pond: Stank
+          reservoir: Mirlenn
+          basin: Oglenn
+          oxbow: Brec'h marv
+          lock: Skluz
         waterway:
           artificial: Gwazh-dour artifisiel
           boatyard: Chanter bigi
@@ -1494,6 +1513,8 @@ br:
         open: Digor
         resolved: Diskoulmet
     show:
+      title:
+        resolved: Kudenn diskoulmet %{issue_id}
       reports:
         one: 1 danevell
         two: 2 zanevell
@@ -1747,8 +1768,6 @@ br:
       success: Kadarnaet eo ho kont, trugarez evit bezañ en em enskrivet !
       already active: Kadarnaet eo bet ar gont-mañ c'hoazh.
       unknown token: Diamzeret eo ar c'hod gwiriekaat pe n'eus ket anezhañ.
-      resend_html: M'ho peus ezhomm da adkas ur postel kadarnaat, %{reconfirm_link}.
-      click_here: Klikit amañ
     confirm_resend:
       failure: N'eo ket bet kavet an implijer %{name}.
     confirm_email:
@@ -1760,29 +1779,6 @@ br:
       failure: Kadarnaet ez eus bet ur chomlec'h postel dija gant art jedouer-mañ.
       unknown_token: N'eo ket mat ar c'hod kadarnaat-mañ ken pe n'eus ket anezhañ
   messages:
-    inbox:
-      title: Boest resev
-      messages: '%{new_messages} ha %{old_messages} zo evidoc''h'
-      new_messages:
-        one: '%{count} gemennadenn nevez'
-        other: '%{count} kemennadenn nevez'
-      old_messages:
-        one: '%{count} gemennadenn gozh'
-        other: '%{count} kemennadenn gozh'
-      no_messages_yet_html: N'hoc'h eus kemennadenn ebet c'hoazh. Ha ma'z afec'h e
-        darempred gant darn eus an %{people_mapping_nearby_link}?
-      people_mapping_nearby: tud o kartennañ en ardremez
-    messages_table:
-      from: A-berzh
-      to: Da
-      subject: Danvez
-      date: Deiziad
-      actions: Oberoù
-    message_summary:
-      unread_button: Merkañ evel anlennet
-      read_button: Merkañ evel lennet
-      destroy_button: Dilemel
-      unmute_button: Dilec'hiañ d'ar voest resev
     new:
       title: Kas ur gemennadenn
       send_message_to_html: Kas ur gemennadenn nevez da %{name}
@@ -1795,16 +1791,6 @@ br:
       title: N'eus ket eus ar gemennadenn-se
       heading: N'eus ket eus ar gemennadenn-se
       body: Ho tigarez, n'eus kemennadenn ebet gant an id-se.
-    outbox:
-      title: Boest kas
-      messages:
-        one: Kaset hoc'h eus %{count} gemennadenn
-        other: Kaset hoc'h eus %{count} kemennadenn
-      no_sent_messages_html: N'hoc'h eus kaset kemennadenn ebet c'hoazh. Ha ma'z afec'h
-        a darempred gant darn eus an %{people_mapping_nearby_link}?
-      people_mapping_nearby: tud o kartennañ en ardremez
-    muted:
-      title: Kemennadennoù kuzhet
     reply:
       wrong_user: Kevreet oc'h evel "%{user}", met ar gemennadenn a fell deoc'h respont
         outi n'eo ket bet kaset d'an implijer-se. Mar plij kevreit gant ar gont reizh
@@ -1818,12 +1804,6 @@ br:
       wrong_user: Kevreet oc'h evel "%{user}", met ar gemennadenn a fell deoc'h lenn
         n'eo ket bet kaset na gant na d'an implijer-se. Mar plij kevreit gant ar gont
         reizh evit gellout lenn anezhi.
-    sent_message_summary:
-      destroy_button: Dilemel
-    heading:
-      my_inbox: Ma boest resev
-      my_outbox: Ma boest kas
-      muted_messages: Kemennadennoù kuzhet
     mark:
       as_read: Kemennadenn merket evel lennet
       as_unread: Merkañ evel anlennet
@@ -1832,6 +1812,49 @@ br:
       error: Ne c'haller ket dilec'hiañ ar gemennadenn d'ar voest resev.
     destroy:
       destroyed: Kemennadenn dilamet
+    mailboxes:
+      heading:
+        my_inbox: Ma boest resev
+        my_outbox: Ma boest kas
+        muted_messages: Kemennadennoù kuzhet
+      messages_table:
+        from: A-berzh
+        to: Da
+        subject: Danvez
+        date: Deiziad
+        actions: Oberoù
+      message:
+        unread_button: Merkañ evel anlennet
+        read_button: Merkañ evel lennet
+        destroy_button: Dilemel
+        unmute_button: Dilec'hiañ d'ar voest resev
+    inboxes:
+      show:
+        title: Boest resev
+        messages: '%{new_messages} ha %{old_messages} zo evidoc''h'
+        new_messages:
+          one: '%{count} gemennadenn nevez'
+          other: '%{count} kemennadenn nevez'
+        old_messages:
+          one: '%{count} gemennadenn gozh'
+          other: '%{count} kemennadenn gozh'
+        no_messages_yet_html: N'hoc'h eus kemennadenn ebet c'hoazh. Ha ma'z afec'h
+          e darempred gant darn eus an %{people_mapping_nearby_link}?
+        people_mapping_nearby: tud o kartennañ en ardremez
+    muted_inboxes:
+      show:
+        title: Kemennadennoù kuzhet
+    outboxes:
+      show:
+        title: Boest kas
+        messages:
+          one: Kaset hoc'h eus %{count} gemennadenn
+          other: Kaset hoc'h eus %{count} kemennadenn
+        no_sent_messages_html: N'hoc'h eus kaset kemennadenn ebet c'hoazh. Ha ma'z
+          afec'h a darempred gant darn eus an %{people_mapping_nearby_link}?
+        people_mapping_nearby: tud o kartennañ en ardremez
+      message:
+        destroy_button: Dilemel
   passwords:
     new:
       title: Ger-tremen kollet
@@ -1853,6 +1876,16 @@ br:
       title: Ma fenndibaboù
       preferred_editor: Aozer karetañ
       preferred_languages: 'Yezhoù gwellañ karet :'
+      preferred_site_color_scheme: Liv gwellañ al lec'hienn
+      site_color_schemes:
+        auto: Emgefreek
+        light: Sklaer
+        dark: Teñval
+      preferred_map_color_scheme: Liv gwellañ ar gartenn
+      map_color_schemes:
+        auto: Emgefreek
+        light: Sklaer
+        dark: Teñval
       edit_preferences: Kemmañ ar penndibaboù
     edit:
       title: Kemmañ ar penndibaboù
@@ -1892,6 +1925,7 @@ br:
   sessions:
     new:
       tab_title: Kevreañ
+      login_to_authorize_html: Kennaskit ouzh OpenStreetMap evit kaout %{client_app_name}.
       email or username: Chomlec'h postel pe anv implijer
       password: Ger-tremen
       remember: Derc'hel soñj ac'hanon
@@ -2051,6 +2085,8 @@ br:
         contributors_fr_france: Bro-C'hall
         contributors_hr_croatia: Kroatia
         contributors_hr_open_data_portal: Porched broadel ar roadennoù frank
+        contributors_nl_credit_html: '%{netherlands}: ennañ roadennoù © AND, 2007
+          (%{and_link})'
         contributors_nl_netherlands: Izelvroioù
         contributors_nz_new_zealand: Zeland Nevez
         contributors_nz_linz_data_service: Servij roadennoù LINZ
@@ -2058,6 +2094,9 @@ br:
         contributors_rs_serbia: Serbia
         contributors_rs_rgz: Aotrouniezh Geodezek Serbia
         contributors_rs_open_data_portal: Porched broadel ar roadennoù frank
+        contributors_si_credit_html: |-
+          %{slovenia}: ennañ roadennoù eus %{gu_link} ha %{mkgp_link}
+          (titoutoù publik eus Slovenia).
         contributors_si_slovenia: Slovenia
         contributors_si_mkgp: Ministrerezh al Labour-douar, ar C'hoadegi hag ar Boued
         contributors_es_spain: Spagn
@@ -2244,6 +2283,7 @@ br:
           scrubland: Strouezheg
           lake: Lenn
           reservoir: Mirlenn
+          intermittent_water: Ledennad dour a-bep-eil
           glacier: Skorneg
           reef: Karreg
           wetland: Takad gleborek
@@ -2470,6 +2510,28 @@ br:
       wikipedia:
         title: Kevreañ gant Wikipedia
         alt: Logo Wikipedia
+    share:
+      email:
+        title: Rannañ gant ar chomlec'h postel
+        alt: Ikon ar postel
+      bluesky:
+        title: Rannañ dre v-Bluesky
+        alt: Ikon Bluesky
+      facebook:
+        title: Rannañ dre Facebook
+        alt: Ikon Facebook
+      linkedin:
+        title: Rannañ dre LinkedIn
+        alt: Ikon LinkedIn
+      mastodon:
+        title: Rannañ war Mastodon
+        alt: Ikon Mastodon
+      telegram:
+        title: Rannañ war Telegram
+        alt: Ikon Telegram
+      x:
+        title: Rannañ war X
+        alt: Ikon X
   oauth:
     permissions:
       missing: N'eo ket bet aotreet an arload ganeoc'h d'ober gan an arc'hwel-mañ
@@ -2650,6 +2712,30 @@ br:
     go_public:
       flash success: Foran eo hoc'h holl aozadennoù bremañ, ha n'oc'h ket aotreet
         da aozañ.
+    issued_blocks:
+      show:
+        title: Stankadurioù gant %{name}
+        heading_html: Roll ar stankadurioù gant %{name}
+        empty: '%{name} n''en deus graet stankadur ebet c''hoazh.'
+    received_blocks:
+      show:
+        title: Stankadurioù evit %{name}
+        heading_html: Roll ar stankadurioù evit %{name}
+        empty: '%{name} n''eo ket bet stanket c''hoazh.'
+      edit:
+        title: Disteurel an holl stankadurioù evit %{block_on}
+        heading_html: O tisteurel an holl stankadurioù evit %{block_on}
+        empty: '%{name} n''en/he deus stankadur oberiant ebet.'
+        confirm: Ha sur oc'h hoc'h eus c'hoant da nullañ %{active_blocks}?
+        active_blocks:
+          one: '%{count} stankadur oberiant'
+          two: '%{count} stankadur oberiant'
+          few: '%{count} stankadur oberiant'
+          many: '%{count} stankadur oberiant'
+          other: '%{count} stankadur oberiant'
+        revoke: Disteuler!
+      destroy:
+        flash: Nullet eo bet an holl stankadurioù.
     lists:
       show:
         title: Implijerien
@@ -2730,10 +2816,6 @@ br:
       title: Stankadurioù an implijer
       heading: Roll stankadurioù an implijer
       empty: N'eus bet graet stankadur ebet c'hoazh.
-    revoke_all:
-      title: Disteurel an holl stankadurioù evit %{block_on}
-      heading_html: O tisteurel an holl stankadurioù evit %{block_on}
-      revoke: Disteuler!
     helper:
       time_future_html: Echuiñ a ray a-benn %{time}.
       until_login: Oberiant betek ma kevre an implijer.
@@ -2771,14 +2853,13 @@ br:
           few: '%{count} bloaz'
           many: '%{count} bloaz'
           other: '%{count} bloaz'
-    blocks_on:
-      title: Stankadurioù evit %{name}
-      heading_html: Roll ar stankadurioù evit %{name}
-      empty: '%{name} n''eo ket bet stanket c''hoazh.'
-    blocks_by:
-      title: Stankadurioù gant %{name}
-      heading_html: Roll ar stankadurioù gant %{name}
-      empty: '%{name} n''en deus graet stankadur ebet c''hoazh.'
+      short:
+        ended: echu
+        revoked_html: nullet gant %{name}
+        active: oberiant
+        read_html: bet lennet da %{time}
+        time_in_future_title: '%{time_absolute}; e %{time_relative}'
+        time_in_past_title: '%{time_absolute}; %{time_relative}'
     show:
       title: '%{block_on} stanket gant %{block_by}'
       heading_html: '%{block_on} stanket gant %{block_by}'
@@ -2795,6 +2876,8 @@ br:
       display_name: Implijer stanket
       creator_name: Krouer
       reason: Abeg evit stankañ
+      start: Deroù
+      end: Fin
       status: Statud
     navigation:
       all_blocks: An holl stankadurioù
@@ -2842,6 +2925,11 @@ br:
       description: Deskrivadur
       created_at: Krouet e
       last_changed: Kemm diwezhañ
+      apply: Lakaat da dalvezout
+      all: An holl
+      open: Digor
+      closed: Serret
+      status: Statud
     show:
       title: 'Notenn: %{id}'
       description: Deskrivadur
@@ -2861,6 +2949,9 @@ br:
       report: danevelliñ an notenn-mañ
       anonymous_warning: En notenn-mañ ez eus evezhiadennoù gant implijerien dianav
         hag a zlefe bezañ gwiriekaet unan-ha-unan.
+      discussion: Kaozeadenn
+      subscribe: Koumanantiñ
+      unsubscribe: Digoumanantiñ
       hide: Kuzhat
       resolve: Diskoulmañ
       reactivate: Adweredekaat
@@ -2879,6 +2970,8 @@ br:
         gartenn. Setu perak eo arabat ebarzhiñ titouroù personel pe titouroù o tont
         eus kartennoù gwarezet na endalc'hioù rolloù.
       add: Ouzhpennañ un notenn
+    new_readonly:
+      title: Notenn nevez
     notes_paging_nav:
       showing_page: Pajenn %{page}
       next: War-lerc'h
@@ -2897,15 +2990,13 @@ br:
       custom_dimensions: Lakaat mentoù personelaet
       format: 'Furmad :'
       scale: 'Skeuliad :'
-      image_dimensions: Ar skeudenn a vo lakaet e stumm standard %{width} × %{height}
+      image_dimensions: Ar skeudenn a ziskouezo ar gwiskad %{layer} er stumm %{width} × %{height}
       download: Pellgargañ
       short_url: URL berr
       include_marker: Lakaat ur merker
       center_marker: Kreizañ ar gartenn war ar merker
       paste_html: Pegañ HTML evit bezañ enkorfet en ul lec'hienn web
       view_larger_map: Gwelet ur gartenn vrasoc'h
-      only_standard_layer: Ar gwiskad standart hepken a c'hall bezañ ezporzhiet evel
-        ur skeudenn.
     embed:
       report_problem: Menegiñ ur gudenn
     key:
index f8d5437bd4823e1ab79b5f8c1575a5f32be1ffbe..21bd8d9587e3653c9fedaee9e93134152c61dadd 100644 (file)
@@ -914,27 +914,6 @@ bs:
       success: Promjena adrese e-pošte je potvrđena!
       failure: E-mail adresa je već potvrđena sa ovom značkom.
   messages:
-    inbox:
-      title: Dolazna pošta
-      messages: Imate %{new_messages} i %{old_messages}
-      new_messages:
-        one: '%{count} nova poruka'
-        other: '%{count} nove/ih poruke/a'
-      old_messages:
-        one: '%{count} stara poruka'
-        other: '%{count} stare poruke'
-      no_messages_yet_html: Još uvijek nemate poruka. Zašto nebi stupili u kontakt
-        s nekim ljudima iz okoline %{people_mapping_nearby_link}?
-      people_mapping_nearby: osobe koje uređuju kartu blizu Vas
-    messages_table:
-      from: Od
-      to: Za
-      subject: Predmet
-      date: Datum
-    message_summary:
-      unread_button: Označiti kao nepročitano
-      read_button: Označiti kao pročitano
-      destroy_button: Izbrisati
     new:
       title: Poslati poruku
       send_message_to_html: Poslati novu poruku za %{name}
@@ -947,14 +926,6 @@ bs:
       title: Nema takve poruke
       heading: Nema takve poruke
       body: Žao nam je nema poruke s tim id.
-    outbox:
-      title: Odlazna pošta
-      messages:
-        one: Poslali ste %{count} poruku
-        other: Poslali ste %{count} poruke/a
-      no_sent_messages_html: Još uvijek nemate poslanih poruka. Zašto nebi stupili
-        u kontakt s nekim ljudima iz okoline %{people_mapping_nearby_link}?
-      people_mapping_nearby: osobe koje uređuju kartu blizu Vas
     reply:
       wrong_user: 'Prijavljeni ste kao: `%{user}'', ali poruka za koju ste zamoljeni
         da odgovorite nije poslana tom korisniku. Molimo, prijavite se kao ispravan
@@ -967,15 +938,47 @@ bs:
       wrong_user: 'Prijavljeni ste kao: `%{user}'', ali poruka za koju ste tražili
         da pročitate nije poslana od strane ili tom korisniku. Molimo, prijavite se
         kao ispravan korisnik kako bi ste je pročitali.'
-    sent_message_summary:
-      destroy_button: Izbrisati
-    heading:
-      my_inbox: Moja dolazna pošta
     mark:
       as_read: Poruka označena kao pročitana
       as_unread: Poruka označena kao nepročitana
     destroy:
       destroyed: Poruka izbrisana
+    mailboxes:
+      heading:
+        my_inbox: Moja dolazna pošta
+      messages_table:
+        from: Od
+        to: Za
+        subject: Predmet
+        date: Datum
+      message:
+        unread_button: Označiti kao nepročitano
+        read_button: Označiti kao pročitano
+        destroy_button: Izbrisati
+    inboxes:
+      show:
+        title: Dolazna pošta
+        messages: Imate %{new_messages} i %{old_messages}
+        new_messages:
+          one: '%{count} nova poruka'
+          other: '%{count} nove/ih poruke/a'
+        old_messages:
+          one: '%{count} stara poruka'
+          other: '%{count} stare poruke'
+        no_messages_yet_html: Još uvijek nemate poruka. Zašto nebi stupili u kontakt
+          s nekim ljudima iz okoline %{people_mapping_nearby_link}?
+        people_mapping_nearby: osobe koje uređuju kartu blizu Vas
+    outboxes:
+      show:
+        title: Odlazna pošta
+        messages:
+          one: Poslali ste %{count} poruku
+          other: Poslali ste %{count} poruke/a
+        no_sent_messages_html: Još uvijek nemate poslanih poruka. Zašto nebi stupili
+          u kontakt s nekim ljudima iz okoline %{people_mapping_nearby_link}?
+        people_mapping_nearby: osobe koje uređuju kartu blizu Vas
+      message:
+        destroy_button: Izbrisati
   passwords:
     new:
       title: Izgubljena lozinka
@@ -1323,6 +1326,16 @@ bs:
       confirm: Potvrditi
     go_public:
       flash success: Sva Vaša uređivanja su sada javna i sada vam je dozvoljeno uređivanje.
+    issued_blocks:
+      show:
+        title: Blokade od %{name}
+        heading_html: Lista blokada od %{name}
+        empty: '%{name} nije napravio/la još nijednu blokadu.'
+    received_blocks:
+      show:
+        title: Blokade na %{name}
+        heading_html: Lista blokada na %{name}
+        empty: '%{name} nije još bio blokiran.'
     lists:
       show:
         title: Korisnici
@@ -1382,14 +1395,6 @@ bs:
         hours:
           one: 1 sat
           other: '%{count} sata/i'
-    blocks_on:
-      title: Blokade na %{name}
-      heading_html: Lista blokada na %{name}
-      empty: '%{name} nije još bio blokiran.'
-    blocks_by:
-      title: Blokade od %{name}
-      heading_html: Lista blokada od %{name}
-      empty: '%{name} nije napravio/la još nijednu blokadu.'
     show:
       title: '%{block_on} blokiran od strane %{block_by}'
       heading_html: '%{block_on} blokiran od strane %{block_by}'
index d927e0ed92557a2fb6086b7efcf07032b037d301..c89fee5e5736831e116d57b8212b5ea54dfb2691 100644 (file)
@@ -1708,9 +1708,6 @@ ca:
       success: Heu confirmat el vostre compte, gràcies per registrar-vos!
       already active: Aquest compte ja ha estat confirmat.
       unknown token: Aquest codi de confirmació ha expirat o no existeix.
-      resend_html: Si necessiteu que us tornem a enviar el correu electrònic de confirmació,
-        %{reconfirm_link}.
-      click_here: cliqueu aquí
     confirm_resend:
       failure: L'usuari %{name} no s'ha trobat.
     confirm_email:
@@ -1728,28 +1725,6 @@ ca:
         aleshores assegureu-vos d'afegir %{sender} a la vostra llista blanca, ja que
         no podrem respondre a cap petició de confirmació.
   messages:
-    inbox:
-      title: Safata d'entrada
-      messages: Teniu %{new_messages} i %{old_messages}
-      new_messages:
-        one: '%{count} missatge nou'
-        other: '%{count} missatges nous'
-      old_messages:
-        one: '%{count} missatge antic'
-        other: '%{count} missatges antics'
-      no_messages_yet_html: No teniu cap missatge. Per què no contacteu amb %{people_mapping_nearby_link}?
-      people_mapping_nearby: gent que cartografia a prop
-    messages_table:
-      from: De
-      to: Per a
-      subject: Assumpte
-      date: Data
-      actions: Accions
-    message_summary:
-      unread_button: Marca com a no llegit
-      read_button: Marca com a llegit
-      destroy_button: Suprimeix
-      unmute_button: Mou a la safata d'entrada
     new:
       title: Envia un missatge
       send_message_to_html: Envia un missatge nou a %{name}
@@ -1762,16 +1737,6 @@ ca:
       title: Aquest missatge no existeix
       heading: Aquest missatge no existeix
       body: No hi ha cap missatge amb aquesta id.
-    outbox:
-      title: Safata de sortida
-      messages:
-        one: Teniu %{count} missatge enviat
-        other: Teniu %{count} missatges enviats
-      no_sent_messages_html: Encara no heu enviat cap missatge. Per què no contacteu
-        amb algunes de les %{people_mapping_nearby_link}?
-      people_mapping_nearby: gent que cartografia a prop
-    muted:
-      title: Missatges silenciats
     reply:
       wrong_user: Heu iniciat la sessió com a «%{user}», però el missatge que voleu
         respondre no s'ha enviat a aquest usuari. Per a poder respondre, inicieu la
@@ -1785,12 +1750,6 @@ ca:
       wrong_user: Heu iniciat la sessió com a «%{user}», però aquest usuari no ha
         escrit ni ha rebut el missatge que voleu llegir. Per a poder llegir-lo, inicieu
         la sessió amb l'usuari correcte.
-    sent_message_summary:
-      destroy_button: Suprimeix
-    heading:
-      my_inbox: La meva safata d'entrada
-      my_outbox: La meva safata de sortida
-      muted_messages: Missatges silenciats
     mark:
       as_read: Missatge marcat com a llegit
       as_unread: Missatge marcat com a no llegit
@@ -1799,6 +1758,48 @@ ca:
       error: No s'ha pogut moure el missatge a la safata d'entrada.
     destroy:
       destroyed: Missatge suprimit
+    mailboxes:
+      heading:
+        my_inbox: La meva safata d'entrada
+        my_outbox: La meva safata de sortida
+        muted_messages: Missatges silenciats
+      messages_table:
+        from: De
+        to: Per a
+        subject: Assumpte
+        date: Data
+        actions: Accions
+      message:
+        unread_button: Marca com a no llegit
+        read_button: Marca com a llegit
+        destroy_button: Suprimeix
+        unmute_button: Mou a la safata d'entrada
+    inboxes:
+      show:
+        title: Safata d'entrada
+        messages: Teniu %{new_messages} i %{old_messages}
+        new_messages:
+          one: '%{count} missatge nou'
+          other: '%{count} missatges nous'
+        old_messages:
+          one: '%{count} missatge antic'
+          other: '%{count} missatges antics'
+        no_messages_yet_html: No teniu cap missatge. Per què no contacteu amb %{people_mapping_nearby_link}?
+        people_mapping_nearby: gent que cartografia a prop
+    muted_inboxes:
+      show:
+        title: Missatges silenciats
+    outboxes:
+      show:
+        title: Safata de sortida
+        messages:
+          one: Teniu %{count} missatge enviat
+          other: Teniu %{count} missatges enviats
+        no_sent_messages_html: Encara no heu enviat cap missatge. Per què no contacteu
+          amb algunes de les %{people_mapping_nearby_link}?
+        people_mapping_nearby: gent que cartografia a prop
+      message:
+        destroy_button: Suprimeix
   passwords:
     new:
       title: Contrasenya perduda
@@ -2693,6 +2694,20 @@ ca:
     go_public:
       flash success: Ara totes les vostres edicions són públiques i ja teniu autorització
         per editar
+    issued_blocks:
+      show:
+        title: Blocs %{name}
+        heading_html: Llista de blocs %{name}
+        empty: '%{name} no ha fet cap bloc encara.'
+    received_blocks:
+      show:
+        title: Blocs en %{name}
+        heading_html: Llista de quadres a %{name}
+        empty: '%{name} no ha estat blocat encara.'
+      edit:
+        revoke: Revoca
+      destroy:
+        flash: S'han revocat tots els bloquejos actius.
     lists:
       show:
         title: Usuaris
@@ -2765,9 +2780,6 @@ ca:
       title: Blocs de l'usuari
       heading: Llista de quadres de l'usuari
       empty: Encara no s'ha fet cap bloc.
-    revoke_all:
-      revoke: Revoca
-      flash: S'han revocat tots els bloquejos actius.
     helper:
       time_future_html: Finalitza en %{time}.
       until_login: Activa fins que l'usuari es connecta.
@@ -2790,14 +2802,6 @@ ca:
         years:
           one: '%{count} any'
           other: '%{count} anys'
-    blocks_on:
-      title: Blocs en %{name}
-      heading_html: Llista de quadres a %{name}
-      empty: '%{name} no ha estat blocat encara.'
-    blocks_by:
-      title: Blocs %{name}
-      heading_html: Llista de blocs %{name}
-      empty: '%{name} no ha fet cap bloc encara.'
     show:
       title: '%{block_on} blocat per %{block_by}'
       heading_html: '%{block_on} blocat per %{block_by}'
@@ -2924,8 +2928,6 @@ ca:
       center_marker: Centra el mapa al marcador
       paste_html: Enganxa l'HTML per inserir-ho a un lloc web
       view_larger_map: Mostra un mapa més gran
-      only_standard_layer: Solament es poden exportar com a imatge les capes Standard,
-        Cycle Map i Transport
     embed:
       report_problem: Informeu sobre un problema
     key:
index 7b8b76ecadf3cac2cfc2d8741fd43689f891554e..893b4fa79110062a92a336481902ee18139a395e 100644 (file)
@@ -1757,9 +1757,6 @@ ce:
       success: Хьайн аккаунт тӀечӀагӀйина, баркалла хьуна дӀаязвелла хиларна!
       already active: И аккаунт хӀинцале а тӀечӀагӀйина йу.
       unknown token: И тӀечӀагӀдаран код чекхъяьлла йа йолуш йац.
-      resend_html: Нагахь санна хьуна оха тӀечӀагӀдаран почта йуха дӀаяхьийта оьшуш
-        делахь, %{reconfirm_link}.
-      click_here: тӀетаӀайе кхузахь
     confirm_resend:
       failure: Декъашхо %{name} ца карийна.
     confirm_email:
@@ -1777,29 +1774,6 @@ ce:
         дохьуьйту, тӀаккха дехар ду ахь %{sender} хьан кӀайн тептаре язде, хӀунда
         аьлча тхан аьтто бац и санна дехаршна жоп дала.
   messages:
-    inbox:
-      title: ЧуйогӀурш
-      messages: Хьан %{new_messages} а, %{old_messages} а ду
-      new_messages:
-        one: '%{count} керла хаам'
-        other: '%{count} керла хаамаш'
-      old_messages:
-        one: '%{count} шира хаам'
-        other: '%{count} шира хаамаш'
-      no_messages_yet_html: Цкъачунна цхьа а хаам бац хьан. ХӀокхарца  %{people_mapping_nearby_link}
-        къамел да мегар дарий?
-      people_mapping_nearby: Карта хӀоттош нах бу уллехь
-    messages_table:
-      from: Хьаьнгара
-      to: Хьаьнга
-      subject: Тема
-      date: Терахь
-      actions: Дар
-    message_summary:
-      unread_button: Билгалйе ца йешна санна
-      read_button: Билгалйе йешна санна
-      destroy_button: ДӀайаккха
-      unmute_button: ДӀаяхийта Инбокс чу
     new:
       title: ДӀабахьийта хаам
       send_message_to_html: Керла хаам кхунга %{name} бахийта
@@ -1812,19 +1786,6 @@ ce:
       title: Иштта хаам бац
       heading: Иштта хаам бац
       body: Бехк ма билла цу ID-ца цхьа а хаам бац.
-    outbox:
-      title: ДӀайохьуьйтурш
-      messages:
-        one: Хьан %{count} дIабахийтина хаам
-        other: Хьан %{count} дIабахийтина хаамаш
-      no_sent_messages_html: Хьан цкъачунна дIакхехийтина хаамаш бац. ХӀокхарца %{people_mapping_nearby_link}
-        къамел да мегар дарий?
-      people_mapping_nearby: Карта хӀоттош нах бу уллехь
-    muted:
-      title: ДӀадаьхна хаамаш
-      messages:
-        one: '%{count} дӀабаькхина хаам'
-        other: You have %{count} дӀадаьхна хаамаш
     reply:
       wrong_user: Хьо чуваьлла `%{user}' санна, амма ахь жоп дала дехна хаам цу декъашхочуьнга
         ца баийтина. Дехар ду, нийса лелош верг санна чу вала, жоп даларна а.
@@ -1837,12 +1798,6 @@ ce:
       wrong_user: Хьо `%{user}' санна чуваьлла ву, амма ахь деша дехна хаам цу декъашхочо
         я цуьнга дӀа ца бахьийтина. Дехар ду, нийса лелош верг санна чу вала, иза
         ешара а.
-    sent_message_summary:
-      destroy_button: ДӀайаккха
-    heading:
-      my_inbox: Сан чудохурша
-      my_outbox: Сан дIадохитнарш
-      muted_messages: ДӀадаьхна хаамаш
     mark:
       as_read: Хаам баьшна аьлла билгалбаьккхина
       as_unread: Хаам ца баьшна аьлла билгалбаьккхина
@@ -1851,6 +1806,52 @@ ce:
       error: Хаам дӀа ца бахийтина "Чудохурша" чу.
     destroy:
       destroyed: Хаам дӀабаьккхина
+    mailboxes:
+      heading:
+        my_inbox: Сан чудохурша
+        my_outbox: Сан дIадохитнарш
+        muted_messages: ДӀадаьхна хаамаш
+      messages_table:
+        from: Хьаьнгара
+        to: Хьаьнга
+        subject: Тема
+        date: Терахь
+        actions: Дар
+      message:
+        unread_button: Билгалйе ца йешна санна
+        read_button: Билгалйе йешна санна
+        destroy_button: ДӀайаккха
+        unmute_button: ДӀаяхийта Инбокс чу
+    inboxes:
+      show:
+        title: ЧуйогӀурш
+        messages: Хьан %{new_messages} а, %{old_messages} а ду
+        new_messages:
+          one: '%{count} керла хаам'
+          other: '%{count} керла хаамаш'
+        old_messages:
+          one: '%{count} шира хаам'
+          other: '%{count} шира хаамаш'
+        no_messages_yet_html: Цкъачунна цхьа а хаам бац хьан. ХӀокхарца  %{people_mapping_nearby_link}
+          къамел да мегар дарий?
+        people_mapping_nearby: Карта хӀоттош нах бу уллехь
+    muted_inboxes:
+      show:
+        title: ДӀадаьхна хаамаш
+        messages:
+          one: '%{count} дӀабаькхина хаам'
+          other: You have %{count} дӀадаьхна хаамаш
+    outboxes:
+      show:
+        title: ДӀайохьуьйтурш
+        messages:
+          one: Хьан %{count} дIабахийтина хаам
+          other: Хьан %{count} дIабахийтина хаамаш
+        no_sent_messages_html: Хьан цкъачунна дIакхехийтина хаамаш бац. ХӀокхарца
+          %{people_mapping_nearby_link} къамел да мегар дарий?
+        people_mapping_nearby: Карта хӀоттош нах бу уллехь
+      message:
+        destroy_button: ДӀайаккха
   passwords:
     new:
       title: Пароль меттахӀоттор
@@ -2807,6 +2808,27 @@ ce:
     go_public:
       flash success: Хьан берриге а хийцамаш хӀинца массо а агӀор хьажа мегаш бу,
         хӀинца хийцамаш бан йиш йу хьан.
+    issued_blocks:
+      show:
+        title: '%{name} кхоьллина блокаш'
+        heading_html: '%{name} кхоьллина блокийн тептар'
+        empty: '%{name} цкъачунна цхьа а блок ца йина.'
+    received_blocks:
+      show:
+        title: Блокаш йу  %{name} тӀехь
+        heading_html: Декъашхочун %{name} блокийн тептар
+        empty: '%{name} цкъа а блок тоьхна вац.'
+      edit:
+        title: '%{block_on} тӀера ерриг блокаш йухаяхар'
+        heading_html: '%{block_on} тӀера ерриг блокаш йухаяхар'
+        empty: '%{name} жигара блокаш йац.'
+        confirm: Хьо тешна вуй хьайна %{active_blocks} йухаяккха лаьий?
+        active_blocks:
+          one: '%{count} жигара блок'
+          other: '%{count} жигара блокаш'
+        revoke: ДӀайаккха блок!
+      destroy:
+        flash: Массо а жигара блокаш йухаяьхна.
     lists:
       show:
         title: Декъашхой
@@ -2889,16 +2911,6 @@ ce:
       title: Декъашхочун блоктохар
       heading: Декъашхойн блокийн тептар
       empty: Цкъачунна а блокаш йина йац.
-    revoke_all:
-      title: '%{block_on} тӀера ерриг блокаш йухаяхар'
-      heading_html: '%{block_on} тӀера ерриг блокаш йухаяхар'
-      empty: '%{name} жигара блокаш йац.'
-      confirm: Хьо тешна вуй хьайна %{active_blocks} йухаяккха лаьий?
-      active_blocks:
-        one: '%{count} жигара блок'
-        other: '%{count} жигара блокаш'
-      revoke: ДӀайаккха блок!
-      flash: Массо а жигара блокаш йухаяьхна.
     helper:
       time_future_html: '%{time} йалча чекхйолу.'
       until_login: Активни йу, декъашхо системан чу валлалц.
@@ -2921,14 +2933,6 @@ ce:
         years:
           one: '%{count} шо'
           other: '%{count} шераш'
-    blocks_on:
-      title: Блокаш йу  %{name} тӀехь
-      heading_html: Декъашхочун %{name} блокийн тептар
-      empty: '%{name} цкъа а блок тоьхна вац.'
-    blocks_by:
-      title: '%{name} кхоьллина блокаш'
-      heading_html: '%{name} кхоьллина блокийн тептар'
-      empty: '%{name} цкъачунна цхьа а блок ца йина.'
     show:
       title: '%{block_on} декъашхо дӀакъевлина %{block_by}'
       heading_html: '%{block_on} декъашхо дӀакъевлина %{block_by}'
@@ -3060,8 +3064,6 @@ ce:
       center_marker: Маркер тӀехь карта йуккъе даккха
       paste_html: HTML-код веб-сайта чу дӀаязъян
       view_larger_map: Доккха картага хьажа
-      only_standard_layer: Стандартни, циклан карта а, транспортан а чкъоьраш бен
-        экспорт йан йиш йац сурт санна
     embed:
       report_problem: Проблемах лаьцна хаийта
     key:
index e1b9acf21f87079322c9549e4fc330d04ed96bea..7e33e7ee1cdefe6a12ae58af096a53ae8985cad7 100644 (file)
@@ -1608,6 +1608,10 @@ cs:
         open: Otevřeno
         resolved: Vyřešeno
     show:
+      title:
+        open: Otevřít problém č. %{issue_id}
+        ignored: Ignorovaný problém č. %{issue_id}
+        resolved: Vyřešený problém č. %{issue_id}
       reports:
         one: '%{count} hlášení'
         few: '%{count} hlášení'
@@ -1879,8 +1883,6 @@ cs:
       success: Účet potvrzen, děkujeme za registraci!
       already active: Tento uživatelský účet už byl potvrzen.
       unknown token: Zadaný potvrzovací kód vypršel nebo neexistuje.
-      resend_html: Pokud potřebujete, abychom znovu poslali potvrzovací e-mail, %{reconfirm_link}.
-      click_here: klikněte zde
     confirm_resend:
       failure: Uživatel %{name} nebyl nalezen.
     confirm_email:
@@ -1898,31 +1900,6 @@ cs:
         nezapomeňte zařídit výjimku pro %{sender}, neboť na žádosti o potvrzení nejsme
         schopni reagovat.
   messages:
-    inbox:
-      title: Doručená pošta
-      messages: Máte %{new_messages} a %{old_messages}
-      new_messages:
-        few: '%{count} nové zprávy'
-        one: '%{count} novou zprávu'
-        other: '%{count} nových zpráv'
-      old_messages:
-        few: '%{count} staré zprávy'
-        one: '%{count} starou zprávu'
-        other: '%{count} starých zpráv'
-      no_messages_yet_html: Zatím nemáte žádné zprávy. Co třeba kontaktovat nějaké
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: uživatele poblíž
-    messages_table:
-      from: Od
-      to: Komu
-      subject: Předmět
-      date: Datum
-      actions: Akce
-    message_summary:
-      unread_button: Označit jako nepřečtené
-      read_button: Označit jako přečtené
-      destroy_button: Smazat
-      unmute_button: Přesunout do doručené pošty
     new:
       title: Odeslat zprávu
       send_message_to_html: Poslat novou zprávu uživateli %{name}
@@ -1935,22 +1912,6 @@ cs:
       title: Zpráva neexistuje
       heading: Zpráva neexistuje
       body: Je mi líto, ale žádná zpráva s tímto ID neexistuje.
-    outbox:
-      title: Odeslaná pošta
-      messages:
-        few: Máte %{count} odeslané zprávy
-        one: Máte %{count} odeslanou zprávu
-        other: Máte %{count} odeslaných zpráv
-      no_sent_messages_html: Nemáte žádné odeslané zprávy. Co třeba kontaktovat nějaké
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: uživatele poblíž
-    muted:
-      title: Ztlumené zprávy
-      messages:
-        one: Máte %{count} ztlumenou zprávu
-        few: Máte %{count} ztlumené zprávy
-        many: Máte %{count} ztlumené zprávy
-        other: Máte %{count} ztlumených zpráv
     reply:
       wrong_user: Jste přihlášeni jako „%{user}“, ale zpráva, na kterou chcete odpovědět,
         nebyla poslána tomuto uživateli. Pokud na ni chcete odpovědět, přihlaste se
@@ -1964,12 +1925,6 @@ cs:
       wrong_user: Jste přihlášeni jako „%{user}“, ale zpráva, kterou si chcete přečíst,
         není ani od, ani pro tohoto uživatele. Pokud si ji chcete přečíst, přihlaste
         se pod správným účtem.
-    sent_message_summary:
-      destroy_button: Smazat
-    heading:
-      my_inbox: Má doručená pošta
-      my_outbox: Moje odchozí
-      muted_messages: Ztlumené zprávy
     mark:
       as_read: Zpráva označena jako přečtená
       as_unread: Zpráva označena jako nepřečtená
@@ -1978,6 +1933,57 @@ cs:
       error: Zprávu se nepodařilo přesunout do doručené pošty.
     destroy:
       destroyed: Zpráva smazána
+    mailboxes:
+      heading:
+        my_inbox: Má doručená pošta
+        my_outbox: Moje odchozí
+        muted_messages: Ztlumené zprávy
+      messages_table:
+        from: Od
+        to: Komu
+        subject: Předmět
+        date: Datum
+        actions: Akce
+      message:
+        unread_button: Označit jako nepřečtené
+        read_button: Označit jako přečtené
+        destroy_button: Smazat
+        unmute_button: Přesunout do doručené pošty
+    inboxes:
+      show:
+        title: Doručená pošta
+        messages: Máte %{new_messages} a %{old_messages}
+        new_messages:
+          few: '%{count} nové zprávy'
+          one: '%{count} novou zprávu'
+          other: '%{count} nových zpráv'
+        old_messages:
+          few: '%{count} staré zprávy'
+          one: '%{count} starou zprávu'
+          other: '%{count} starých zpráv'
+        no_messages_yet_html: Zatím nemáte žádné zprávy. Co třeba kontaktovat nějaké
+          %{people_mapping_nearby_link}?
+        people_mapping_nearby: uživatele poblíž
+    muted_inboxes:
+      show:
+        title: Ztlumené zprávy
+        messages:
+          one: Máte %{count} ztlumenou zprávu
+          few: Máte %{count} ztlumené zprávy
+          many: Máte %{count} ztlumené zprávy
+          other: Máte %{count} ztlumených zpráv
+    outboxes:
+      show:
+        title: Odeslaná pošta
+        messages:
+          few: Máte %{count} odeslané zprávy
+          one: Máte %{count} odeslanou zprávu
+          other: Máte %{count} odeslaných zpráv
+        no_sent_messages_html: Nemáte žádné odeslané zprávy. Co třeba kontaktovat
+          nějaké %{people_mapping_nearby_link}?
+        people_mapping_nearby: uživatele poblíž
+      message:
+        destroy_button: Smazat
   passwords:
     new:
       title: Ztracené heslo
@@ -2746,6 +2752,28 @@ cs:
       wikipedia:
         title: Přihlásit se účtem na Wikipedii
         alt: Logo Wikipedie
+    share:
+      email:
+        title: Sdílejte e-mailem
+        alt: Ikona e-mailu
+      bluesky:
+        title: Sdílejte přes Bluesky
+        alt: Ikona Bluesky
+      facebook:
+        title: Sdílejte přes Facebook
+        alt: Ikona Facebooku
+      linkedin:
+        title: Sdílejte přes LinkedIn
+        alt: Ikona LinkedIn
+      mastodon:
+        title: Sdílejte na Mastodon
+        alt: Ikona Mastodon
+      telegram:
+        title: Sdílejte na Telegramu
+        alt: Ikona Telegramu
+      x:
+        title: Sdílejte na X
+        alt: Ikona X
   oauth:
     permissions:
       missing: Aplikaci jste nedovolili přístup k této funkci
@@ -2960,6 +2988,29 @@ cs:
       report: Nahlásit tohoto uživatele
     go_public:
       flash success: Všechny vaše úpravy jsou nyní veřejné a máte oprávnění k úpravám.
+    issued_blocks:
+      show:
+        title: Bloky od %{name}
+        heading_html: Blokace od %{name}
+        empty: '%{name} ještě nikoho nezablokoval.'
+    received_blocks:
+      show:
+        title: Zablokování uživatele %{name}
+        heading_html: Seznam zablokování uživatele %{name}
+        empty: '%{name} dosud nebyl(a) zablokován(a).'
+      edit:
+        title: Zrušení všech bloků uživatele %{block_on}
+        heading_html: Zrušení všech bloků uživatele %{block_on}
+        empty: Uživatel %{name} nemá žádné aktivní bloky.
+        confirm: Opravdu chcete zrušit %{active_blocks}?
+        active_blocks:
+          one: '%{count} aktivní bloky'
+          few: '%{count} aktivní bloky'
+          many: '%{count} aktivního bloku'
+          other: '%{count} aktivních bloků'
+        revoke: Zrušit!
+      destroy:
+        flash: Všechny aktivní bloky byly zrušeny.
     lists:
       show:
         title: Uživatelé
@@ -3041,18 +3092,6 @@ cs:
       title: Bloky uživatele
       heading: Seznam blokovaných uživatelů
       empty: Ještě nebyl vytvořen žádny blok.
-    revoke_all:
-      title: Zrušení všech bloků uživatele %{block_on}
-      heading_html: Zrušení všech bloků uživatele %{block_on}
-      empty: Uživatel %{name} nemá žádné aktivní bloky.
-      confirm: Opravdu chcete zrušit %{active_blocks}?
-      active_blocks:
-        one: '%{count} aktivní bloky'
-        few: '%{count} aktivní bloky'
-        many: '%{count} aktivního bloku'
-        other: '%{count} aktivních bloků'
-      revoke: Zrušit!
-      flash: Všechny aktivní bloky byly zrušeny.
     helper:
       time_future_html: Končí za %{time}.
       until_login: Aktivní dokud se uživatel nepřihlásí.
@@ -3091,14 +3130,8 @@ cs:
         active_unread: aktivní nepřečtený
         expired_unread: vypršel nepřečtený
         read_html: přečteno %{time}
-    blocks_on:
-      title: Zablokování uživatele %{name}
-      heading_html: Seznam zablokování uživatele %{name}
-      empty: '%{name} dosud nebyl(a) zablokován(a).'
-    blocks_by:
-      title: Bloky od %{name}
-      heading_html: Blokace od %{name}
-      empty: '%{name} ještě nikoho nezablokoval.'
+        time_in_future_title: '%{time_absolute}; v %{time_relative}'
+        time_in_past_title: '%{time_absolute}; %{time_relative}'
     show:
       title: '%{block_on} zablokován uživatelem %{block_by}'
       heading_html: '%{block_on} zablokován uživatelem %{block_by}'
@@ -3216,6 +3249,7 @@ cs:
         žádné osobní údaje ani informace z autorskoprávně chráněných map či adresářů.
       add: Přidat poznámku
     new_readonly:
+      title: Nová poznámka
       warning: Nové poznámky nelze vytvářet, protože OpenStreetMap API je momentálně
         v režimu pouze pro čtení.
     notes_paging_nav:
@@ -3243,8 +3277,8 @@ cs:
       center_marker: Vycentrovat mapu na značku
       paste_html: HTML ke vložení na webovou stránku
       view_larger_map: Zobrazit větší mapu
-      only_standard_layer: Jako obrázek lze exportovat jen vrstvy Standardní, Cyklomapa
-        a Dopravní
+      only_layers_exported_as_image: 'Jako obrázek lze exportovat pouze následující
+        vrstvy:'
     embed:
       report_problem: Nahlásit problém
     key:
index 94c336ed41d6b151bd925747180eef10e878039e..03eccc40f3c3ff3afb6bc392e38b02a6c8c0a61e 100644 (file)
@@ -50,9 +50,9 @@ cy:
     models:
       acl: Rhestr Rheoli Mynediad
       changeset: Grŵp newid
-      changeset_tag: Tag Grŵp newid
+      changeset_tag: Tag Grŵp Newid
       country: Gwlad
-      diary_comment: Nodyn Dyddiadur
+      diary_comment: Sylw Dyddiadur
       diary_entry: Cofnod Dyddiadur
       friend: Ffrind
       issue: Gwall
@@ -72,7 +72,7 @@ cy:
       relation: Perthynas
       relation_member: Aelod Perthynol
       relation_tag: Tag Perthynas
-      report: Rhoi gwybod
+      report: Adroddiad
       session: Sesiwn
       trace: Ôl
       tracepoint: Pwynt Olion
@@ -85,9 +85,9 @@ cy:
       way_tag: Tag Llwybr
     attributes:
       client_application:
-        name: Enw (gofynnol)
-        url: URL y Prif Ap (Gofynnol)
-        callback_url: URL galw'n ôl
+        name: Enw (Gofynnol)
+        url: Prif URL yr Ap (Gofynnol)
+        callback_url: URL Galw'n Ôl
         support_url: URL Cefnogaeth
         allow_read_prefs: darllen eu dewisiadau defnyddiwr
         allow_write_prefs: addasu eu dewisiadau defnyddiwr
@@ -109,7 +109,7 @@ cy:
         name: Enw
         redirect_uri: Ailgyfeirio URIs
         confidential: Ap cyfrinachol?
-        scopes: Caniatâd
+        scopes: Caniatadau
       friend:
         user: Defnyddiwr
         friend: Ffrind
@@ -135,21 +135,21 @@ cy:
         description: Disgrifiad
       report:
         category: Dewiswch reswm dros roi gwybod
-        details: Rhowch mwy o fanylion am y broblem (gofynnol).
+        details: Rhowch ragor o fanylion am y broblem (gofynnol).
       user:
         auth_provider: Darparwr Ap
         auth_uid: UID Dilysu
         email: E-bost
-        new_email: Cyfeiriad e-bost newydd
+        new_email: Cyfeiriad E-bost Newydd
         active: Gweithredol
-        display_name: Enw defnyddiwr
-        description: Disgrifiad proffil
+        display_name: Enw Defnyddiwr
+        description: Disgrifiad Proffil
         home_lat: Lledred
         home_lon: Hydred
-        languages: Ieithoedd a Ffefrir
-        preferred_editor: Golygydd a Ffefrir
+        languages: Dewis Ieithoedd
+        preferred_editor: Dewis Golygydd
         pass_crypt: Cyfrinair
-        pass_crypt_confirmation: Cadarnhau cyfrinair
+        pass_crypt_confirmation: Cadarnhau Cyfrinair
     help:
       doorkeeper/application:
         redirect_uri: Defnyddiwch un llinell fesul URI
@@ -161,10 +161,10 @@ cy:
           gofio y bydd eich neges yn weladwy gan y cyhoedd. Byddwch yn ymwybodol na
           fydd pob defnyddiwr yn deall jargon y gymuned, felly ceisiwch ddefnyddio
           termau cyffredinol.
-        needs_view: Oes angen i'r defnyddiwr fewngofnodi cyn y bydd y bloc hwn yn
-          cael ei ddirymu?
+        needs_view: A fydd angen i'r defnyddiwr fewngofnodi cyn y bydd y bloc hwn
+          yn cael ei ddirymu?
       user:
-        new_email: (byth ei ddangos yn gyhoeddus)
+        new_email: (ni chaiff byth ei ddangos yn gyhoeddus)
   datetime:
     distance_in_words_ago:
       about_x_hours:
@@ -187,14 +187,14 @@ cy:
         two: tua %{count} flynedd yn ôl
         few: tua %{count} mlynedd yn ôl
         many: tua %{count} mlynedd yn ôl
-        other: tua %{count} blynedd yn ôl
+        other: tua %{count} mlynedd yn ôl
       almost_x_years:
         zero: bron %{count} flwyddyn yn ôl
-        one: bron flwyddyn yn ôl
-        two: bron %{count} flynedd yn ôl
-        few: bron i %{count} blynedd yn ôl
-        many: bron i %{count} blynedd yn ôl
-        other: bron i %{count} blynedd yn ôl
+        one: bron flwyddyn yn ôl
+        two: bron %{count} flynedd yn ôl
+        few: bron %{count} mlynedd yn ôl
+        many: bron %{count} mlynedd yn ôl
+        other: bron %{count} mlynedd yn ôl
       half_a_minute: hanner munud yn ôl
       less_than_x_seconds:
         zero: llai nag eiliad yn ôl.
@@ -214,9 +214,9 @@ cy:
         zero: dros %{count} blynedd yn ôl
         one: dros flwyddyn yn ôl
         two: dros %{count} flynedd yn ôl
-        few: dros %{count} blynedd yn ôl
-        many: dros %{count} blynedd yn ôl
-        other: dros %{count} blynedd yn ôl
+        few: dros %{count} mlynedd yn ôl
+        many: dros %{count} mlynedd yn ôl
+        other: dros %{count} mlynedd yn ôl
       x_seconds:
         zero: '%{count} eiliad yn ôl'
         one: '%{count} eiliad yn ôl'
@@ -247,13 +247,13 @@ cy:
         other: '%{count} mis yn ôl'
       x_years:
         zero: '%{count} flwyddyn yn ôl'
-        one: Blwyddyn yn ôl
+        one: '%{count} blwyddyn yn ôl'
         two: '%{count} flynedd yn ôl'
-        few: '%{count} blynedd yn ôl'
-        many: '%{count} blynedd yn ôl'
-        other: '%{count} blynedd yn ôl'
+        few: '%{count} mlynedd yn ôl'
+        many: '%{count} mlynedd yn ôl'
+        other: '%{count} mlynedd yn ôl'
   editor:
-    default: (%{name} yn gyfredol) diofyn
+    default: Diofyn (%{name} yn gyfredol)
     id:
       name: iD
       description: iD (golygydd y porwr)
@@ -295,7 +295,7 @@ cy:
   account:
     deletions:
       show:
-        title: Dileu fy nghyfrif
+        title: Dileu Fy Nghyfrif
         warning: Rhybudd! Mae'r broses dileu cyfrif yn derfynol, ac ni ellir ei gwrthdroi.
         delete_account: Dileu Cyfrif
         delete_introduction: 'Gallwch chi ddileu eich cyfrif OpenStreetMap gan ddefnyddio''r
@@ -318,8 +318,8 @@ cy:
   accounts:
     edit:
       title: Golygu cyfrif
-      my settings: Fy ngosodiadau
-      current email address: Cyfeiriad e-bost cyfredol
+      my settings: Fy Ngosodiadau
+      current email address: Cyfeiriad E-bost Cyfredol
       external auth: Dilysu Allanol
       openid:
         link text: beth yw hwn?
@@ -337,7 +337,7 @@ cy:
         agreed_with_pd: Rydych hefyd wedi datgan eich bod yn ystyried bod eich golygiadau
           yn y Parth Cyhoeddus.
         link text: beth yw hwn?
-      save changes button: Cadw newidiadau
+      save changes button: Cadw Newidiadau
       delete_account: Dileu Cyfrif...
     go_public:
       heading: Golygu cyhoeddus
@@ -347,7 +347,7 @@ cy:
         isod.
       only_public_can_edit: Ers y newid yn fersiwn 0.6 yr API, dim ond defnyddwyr
         cyhoeddus all olygu data map.
-      find_out_why: dyma pam
+      find_out_why: dysgwch pam
       email_not_revealed: Ni fydd eich cyfeiriad e-bost yn cael ei ddatgelu wrth fod
         yn gyhoeddus.
       not_reversible: Ni ellir gwrthdroi'r weithred hon ac mae pob defnyddiwr newydd
@@ -383,15 +383,15 @@ cy:
       many: '%{count} llwybr'
       other: '%{count} llwybr'
     download_xml: Lawrlwytho XML
-    view_history: Gweld hanes
+    view_history: Gweld Hanes
     view_unredacted_history: Gweld Hanes Heb Ei Orchuddio
-    view_details: Gweld manylion
+    view_details: Gweld Manylion
     view_redacted_data: Gweld Data Wedi'i Gorchuddio
     view_redaction_message: Gweld Neges Orchuddio
     location: Lleoliadː
     node:
       title_html: 'Nod: %{name}'
-      history_title_html: 'Hanes y nod: %{name}'
+      history_title_html: 'Hanes Nod: %{name}'
     way:
       title_html: 'Llwybr: %{name}'
       history_title_html: 'Hanes Llwybr: %{name}'
@@ -412,7 +412,7 @@ cy:
         other: rhan o lwybr %{related_ways}
     relation:
       title_html: 'Perthynas: %{name}'
-      history_title_html: 'Hanes Perthynas: %{name}'
+      history_title_html: 'Hanes Perthynas: %{name}'
       members: Aelodau
       members_count:
         zero: '%{count} aelod'
@@ -431,7 +431,7 @@ cy:
       entry_role_html: '%{relation_name} (fel %{relation_role})'
     not_found:
       title: Heb ei Ganfod
-      sorry: 'Ymddiheurwn, ni ellir canfod %{type} #%{id}.'
+      sorry: 'Sori, ni ellir canfod %{type} #%{id}.'
       type:
         node: nod
         way: llwybr
@@ -448,9 +448,9 @@ cy:
         changeset: grŵp newid
         note: nodyn
     redacted:
-      redaction: Golygiad %{id}
-      message_html: Ni ellir dangos %{version} o math %{type} gan iddo gael ei olygu.
-        Gweler %{redaction_link} am y manylion.
+      redaction: Gorchuddiad %{id}
+      message_html: Ni ellir dangos fersiwn %{version} o math %{type} gan ei fod wedi
+        cael ei orchuddio. Gweler %{redaction_link} am fanylion.
       type:
         node: nod
         way: llwybr
@@ -458,7 +458,7 @@ cy:
     start_rjs:
       feature_warning: Wrthi'n llwytho %{num_features} nodwedd, a all arafu neu chwalu
         eich porwr. Ydych chi wir eisiau gweld y data?
-      load_data: Llwytho data
+      load_data: Llwytho Data
       loading: Wrthi'n llwytho...
     tag_details:
       tags: Tagiau
@@ -475,7 +475,7 @@ cy:
       title: Ymholiad Nodweddion
       introduction: Cliciwch ar y map i weld nodweddion gerllaw.
       nearby: Nodweddion gerllaw
-      enclosing: Nodweddion amgáu
+      enclosing: Nodweddion amgaeëdig
   nodes:
     timeout:
       sorry: Sori, cymerodd yn rhy hir i adalw data'r nod gyda'r id %{id}.
@@ -520,14 +520,14 @@ cy:
       title_user: Grwpiau newid gan %{user}
       title_user_link_html: Grwpiau newid gan %{user_link}
       title_friend: Grwpiau newid gan fy ffrindiau
-      title_nearby: Grwpiau newid gan ddefnyddwyr cyfagos
+      title_nearby: Grwpiau newid gan ddefnyddwyr gerllaw
       empty: Heb ganfod grwpiau newid.
       empty_area: Heb ganfod grwpiau newid yn yr ardal hon.
       empty_user: Heb ganfod grwpiau newid gan y defnyddiwr hwn.
-      no_more: Heb ganfod mwy o grwpiau newid.
-      no_more_area: Heb ganfod mwy o grwpiau newid yn yr ardal hon.
-      no_more_user: Heb ganfod mwy o grwpiau newid gan y defnyddiwr hwn.
-      load_more: Llwytho mwy
+      no_more: Heb ganfod rhagor o grwpiau newid.
+      no_more_area: Heb ganfod rhagor o grwpiau newid yn yr ardal hon.
+      no_more_user: Heb ganfod rhagor o grwpiau newid gan y defnyddiwr hwn.
+      load_more: Llwytho rhagor
       feed:
         title: Grŵp newid %{id}
         title_comment: Grŵp newid %{id} - %{comment}
@@ -576,8 +576,8 @@ cy:
       relations: Perthnasau (%{count})
       relations_paginated: Perthnasau (%{x}-%{y} o %{count})
     timeout:
-      sorry: Mae'n ddrwg gennym, cymerodd y rhestr o grwpiau newid y gofynnoch amdanynt
-        rhy hir i'w hadalw.
+      sorry: Sori, cymerodd y rhestr o grwpiau newid y gofynnoch amdanynt rhy hir
+        i'w hadalw.
   dashboards:
     contact:
       km away: '%{count}km i ffwrdd'
@@ -588,15 +588,15 @@ cy:
       nearby mapper: Mapiwr gerllaw
       friend: Ffrind
     show:
-      title: Dangosfwrdd
+      title: Fy Nangosfwrdd
       no_home_location_html: '%{edit_profile_link} a gosodwch eich lleoliad i weld
         defnyddwyr cyfagos.'
-      edit_your_profile: Golygu eich proffil
+      edit_your_profile: Golygwch eich proffil
       my friends: Fy ffrindiau
       no friends: Nid ydych wedi ychwanegu unrhyw ffrindiau eto.
       nearby users: Defnyddwyr eraill gerllaw
       no nearby users: Nid oes defnyddwyr gerllaw sy'n dweud eu bod yn mapio eto.
-      friends_changesets: Grwpiau newid eich ffrindiau
+      friends_changesets: grwpiau newid eich ffrindiau
       friends_diaries: cofnodion dyddiaduron ffrindiau
       nearby_changesets: grwpiau newid defnyddwyr gerllaw
       nearby_diaries: cofnodion dyddiaduron defnyddwyr gerllaw
@@ -720,12 +720,12 @@ cy:
   errors:
     contact:
       contact_url_title: Esboniad o sianeli cyswllt amrywiol
-      contact: Cysylltwch
-      contact_the_community_html: '%{contact_link} â''r gymuned OpenStreetMap os ydych
-        chi wedi dod o hyd i nam neu ddolen sydd wedi torri. Nodwch yr URL cywir o''ch
-        cais.'
+      contact: gysylltu
+      contact_the_community_html: Mae croeso i chi %{contact_link} â'r gymuned OpenStreetMap
+        os ydych wedi dod o hyd i nam neu ddolen sydd wedi torri. Nodwch yr URL cywir
+        o'ch cais.
     bad_request:
-      title: Cais Drwg
+      title: Cais drwg
     forbidden:
       title: Gwaharddedig
     internal_server_error:
@@ -737,7 +737,7 @@ cy:
       heading: Ychwanegu %{user} fel ffrind?
       button: Ychwanegu fel ffrind
       success: Mae %{name} nawr yn ffrind i chi!
-      failed: Ymddiheuriadau, methwyd ychwanegu %{name} fel ffrind.
+      failed: Sori, methwyd ychwanegu %{name} fel ffrind.
       already_a_friend: Rydych chi eisoes yn ffrindiau gyda %{name}.
     remove_friend:
       heading: Dad-ffrindio %{user}?
@@ -779,7 +779,7 @@ cy:
         amenity:
           animal_boarding: Lletya Anifeiliaid
           animal_shelter: Cysgod Anifeiliaid
-          arts_centre: Canolfan Grefftau
+          arts_centre: Canolfan Gelfyddydau
           atm: Peiriant Codi Arian
           bank: Banc
           bar: Bar
@@ -802,7 +802,7 @@ cy:
           charging_station: Gorsaf Gwefru
           childcare: Man Gwarchod Plant
           cinema: Sinema
-          clinic: Clinic
+          clinic: Clinig
           clock: Cloc
           college: Coleg
           community_centre: Canolfan Cymunedol
@@ -842,8 +842,8 @@ cy:
           nightclub: Clwb Nôs
           nursing_home: Cartref Nyrsio
           parking: Parcio
-          parking_entrance: Mynedfa Man Parcio
-          parking_space: Man Parcio
+          parking_entrance: Mynedfa Maes Parcio
+          parking_space: Lle Parcio
           payment_terminal: Terfynell Talu
           pharmacy: Fferyllfa
           place_of_worship: Man Addoli
@@ -894,7 +894,7 @@ cy:
           "yes": Ffin
         bridge:
           aqueduct: Dyfrbont
-          boardwalk: Rhodfa Estyll
+          boardwalk: Llwybr Pren
           suspension: Pont Grog
           swing: Pont Droelli
           viaduct: Pont Trenau
@@ -912,7 +912,7 @@ cy:
           commercial: Adeilad Masnachol
           construction: Adeilad yn cael ei Adeiladu
           cowshed: Beudy
-          detached: Tŷ Datgysylltiedig
+          detached: Tŷ Sengl
           dormitory: Dorm
           duplex: Tŷ Pâr
           farm: Ffermdy
@@ -969,7 +969,7 @@ cy:
           metal_construction: Adeiladwr Metel
           painter: Peintiwr
           photographer: Ffotograffydd
-          plumber: Plymar
+          plumber: Plymwr
           roofer: Towr
           sawmill: Melin Lifio
           shoemaker: Crydd
@@ -981,7 +981,7 @@ cy:
         emergency:
           access_point: Pwynt Mynediad
           ambulance_station: Gorsaf Ambiwlans
-          assembly_point: Man Ymgynull
+          assembly_point: Man Ymgynnull
           defibrillator: Diffibriliwr
           fire_extinguisher: Diffoddwr Tân
           fire_water_pond: Pwll Dŵr Tân
@@ -1024,14 +1024,14 @@ cy:
           road: Ffordd
           secondary: Ffordd Eilaidd
           secondary_link: Ffordd Eilaidd
-          service: Ffordd Waith
+          service: Ffordd Wasanaeth
           services: Gwasanaethau Traffordd
           speed_camera: Camera Cyflymder
           steps: Grisiau
           stop: Arwydd Stop
           street_lamp: Golau Stryd
-          tertiary: Ffordd Trydyddol
-          tertiary_link: Ffordd Trydyddol
+          tertiary: Ffordd Drydyddol
+          tertiary_link: Ffordd Drydyddol
           track: Trac
           traffic_mirror: Drych Traffig
           traffic_signals: Goleuadau Traffig
@@ -1078,13 +1078,21 @@ cy:
           wayside_shrine: Cysegrfa Min y Ffordd
           wreck: Llongddrylliad
           "yes": Safle Hanesyddol
+        information:
+          guidepost: Post Tywys
+          board: Bwrdd Gwybodaeth
+          map: Map
+          office: Swyddfa Dwristiaeth
+          terminal: Terfynell Gwybodaeth
+          sign: Arwydd Gwybodaeth
+          stele: Stele Gwybodaeth
         junction:
           "yes": Cyffordd
         landuse:
           allotments: Rhandiroedd
           aquaculture: Dyframaeth
           basin: Basn
-          brownfield: Browndir
+          brownfield: Safle Tir Llwyd
           cemetery: Mynwent
           commercial: Ardal Fasnachol
           conservation: Ardal Gadwraeth
@@ -1094,7 +1102,7 @@ cy:
           forest: Coedwig
           garages: Garejis
           grass: Glaswellt
-          greenfield: Glastir
+          greenfield: Safle Maes Glas
           industrial: Ardal Ddiwydiannol
           landfill: Safle Tirlenwi
           meadow: Gwaun
@@ -1124,7 +1132,7 @@ cy:
           common: Tir Comin
           dance: Neuadd Ddawns
           dog_park: Parc Cwn
-          firepit: Ardal Dân
+          firepit: Pit Tân
           fishing: Man Pysgota
           fitness_centre: Canolfan Hamdden
           fitness_station: Gorsaf Hamdden
@@ -1141,7 +1149,7 @@ cy:
           pitch: Cae Chwaraeon
           playground: Ardal Chwarae
           recreation_ground: Ardal Hamdden
-          resort: Cyrchfan Gwyliau
+          resort: Cyrchfan
           sauna: Sawna
           slipway: Llithrffordd
           sports_centre: Canolfan Chwaraeon
@@ -1168,7 +1176,7 @@ cy:
           crane: Craen
           cross: Croes
           dolphin: Man Angori
-          dyke: Morglawdd
+          dyke: Clawdd
           embankment: Arglawdd
           flagpole: Polyn Baner
           gasometer: Tanc Nwy
@@ -1202,7 +1210,7 @@ cy:
           water_works: Gwaith Dŵr
           windmill: Melin Wynt
           works: Ffatri
-          "yes": Wnaed gan Ddyn
+          "yes": Gwaith Dyn
         military:
           airfield: Maes Awyr Milwrol
           barracks: Barics
@@ -1247,7 +1255,7 @@ cy:
           saddle: Adwy
           sand: Tywod
           scree: Sgri
-          scrub: Llwyni
+          scrub: Prysgwydd
           shingle: Cerrig Mân
           spring: Ffynnon
           stone: Carreg
@@ -1325,7 +1333,7 @@ cy:
           funicular: Rheilffordd fynydd
           halt: Stop Trenau
           junction: Cyffordd Rheilffyrdd
-          level_crossing: Croesfan reilffordd
+          level_crossing: Croesfan Reilffordd
           light_rail: Rheilffordd Ysgafn
           miniature: Lein Fach
           monorail: Trên Un Gledren
@@ -1338,8 +1346,8 @@ cy:
           station: Gorsaf Drenau
           stop: Siop Reilffordd
           subway: Gorsaf Tanddaearol
-          subway_entrance: Mynedfa at Drenau Tanddaearol
-          switch: Pwyntiau Atal (Rheilffyrdd)
+          subway_entrance: Mynedfa Tanddaearol
+          switch: Pwyntiau Rheilffordd
           tram: Tramffordd
           tram_stop: Stop Tramiau
           turntable: Trofwrdd
@@ -1408,7 +1416,7 @@ cy:
           hardware: Siop Galedwedd
           health_food: Siop Fwyd Iach
           hearing_aids: Cymhorthion Clyw
-          herbalist: Herbwr
+          herbalist: Herbalydd
           hifi: Siop Hi-Fi
           houseware: Siop Offer Tŷ
           ice_cream: Siop Hufen Iâ
@@ -1470,11 +1478,11 @@ cy:
           attraction: Atyniad
           bed_and_breakfast: Gweldy a Brecwast
           cabin: Caban Twristiaeth
-          camp_pitch: Gwersyll
+          camp_pitch: Safle Gwersyll
           camp_site: Gwersyll
           caravan_site: Parc Carafanau
           chalet: Sialet
-          gallery: Galeri
+          gallery: Oriel
           guest_house: Llety
           hostel: Hostel
           hotel: Gwesty
@@ -1490,6 +1498,12 @@ cy:
           building_passage: Ffordd Trwodd
           culvert: Cwlfer
           "yes": Twnnel
+        water:
+          lake: Llyn
+          pond: Pwll
+          reservoir: Cronfa Ddŵr
+          basin: Basn Dwr
+          fishpond: Pwll Pysgod
         waterway:
           artificial: Dyfrffyrdd Artiffisial
           boatyard: Iard Gychod
@@ -1624,8 +1638,8 @@ cy:
           threat_label: Mae'r sylw dyddiadur hwn yn cynnwys bygythiad
           other_label: Arall
         user:
-          spam_label: Mae'r proffil defnyddiwr hwn yn / yn cynnwys sbam
-          offensive_label: Mae'r proffil defnyddiwr hwn yn anweddus / sarhaus
+          spam_label: Mae'r proffil defnyddiwr hwn yn/yn cynnwys sbam
+          offensive_label: Mae'r proffil defnyddiwr hwn yn anweddus/sarhaus
           threat_label: Mae'r proffil defnyddiwr hwn yn cynnwys bygythiad
           vandal_label: Mae'r defnyddiwr hwn yn fandal
           other_label: Arall
@@ -1636,7 +1650,7 @@ cy:
           other_label: Arall
     create:
       successful_report: Anfonwyd eich adroddiad yn llwyddiannus
-      provide_details: Rhowch y manylion gofynnol os gwelwch yn dda
+      provide_details: Rhowch y manylion gofynnol
   layouts:
     logo:
       alt_text: Logo OpenStreetMap
@@ -1644,14 +1658,14 @@ cy:
     logout: Allgofnodi
     log_in: Mewngofnodi
     sign_up: Cofrestru
-    start_mapping: Dechrau mapio
+    start_mapping: Dechrau Mapio
     edit: Golygu
     history: Hanes
     export: Allforio
     issues: Problemau
     gps_traces: Olion GPS
     user_diaries: Dyddiaduron
-    edit_with: Golygu gyda %{editor}
+    edit_with: Golygu gydag %{editor}
     intro_header: Croeso i OpenStreetMap!
     intro_text: Mae OpenStreetMap yn fap o'r byd, wedi'i greu gan bobl fel chi ac
       sydd ar gael i'w ddefnyddio am ddim a dan drwydded rydd.
@@ -1670,8 +1684,8 @@ cy:
     about: Ynghylch
     copyright: Hawlfraint
     communities: Cymunedau
-    learn_more: Dysgu Mwy
-    more: Mwy
+    learn_more: Dysgu Rhagor
+    more: Rhagor
   user_mailer:
     diary_comment_notification:
       description: 'Cofnod Dyddiadur OpenStreetMap #%{id}'
@@ -1801,7 +1815,7 @@ cy:
         yn %{url}.
   confirmations:
     confirm:
-      heading: Gwiriwch eich e-byst!
+      heading: Gwiriwch eich negeseuon e-bost!
       introduction_1: Rydym wedi anfon e-bost cadarnhau atoch.
       introduction_2: Cadarnhewch eich cyfrif drwy glicio ar y ddolen yn y neges e-bost
         a byddwch yn gallu dechrau mapio.
@@ -1809,8 +1823,10 @@ cy:
       button: Cadarnhau
       success: Wedi cadarnhau eich cyfrif, diolch am gofrestru!
       already active: Mae'r cyfrif hwn eisoes wedi'i gadarnhau.
-      resend_html: Os bydd angen i ni ailanfon yr e-bost cadarnhau, %{reconfirm_link}.
-      click_here: cliciwch yma
+      unknown token: Mae'r cod cadarnhau hwnnw wedi dod i ben, neu nid yw'n bodoli.
+      if_need_resend: Os oes angen i ni ailanfon y neges e-bost cadarnhau, cliciwch
+        ar y botwm isod.
+      resend_button: Anfon y neges e-bost cadarnhau eto
     confirm_resend:
       failure: Heb ganfod y defnyddiwr %{name}.
     confirm_email:
@@ -1821,37 +1837,6 @@ cy:
       success: Wedi cadarnhau eich newid cyfeiriad e-bost!
       failure: Mae cyfeiriad e-bost eisoes wedi'i gadarnhau gyda'r tocyn hwn.
   messages:
-    inbox:
-      title: Mewnflwch
-      messages: Mae gennych %{new_messages} a %{old_messages}
-      new_messages:
-        zero: '%{count} neges newydd'
-        one: '%{count} neges newydd'
-        two: '%{count} new messages'
-        few: '%{count} neges newydd'
-        many: '%{count} neges newydd'
-        other: '%{count} neges newydd'
-      old_messages:
-        zero: '%{count} hen neges'
-        one: '%{count} hen neges'
-        two: '%{count} hen neges'
-        few: '%{count} hen neges'
-        many: '%{count} hen neges'
-        other: '%{count} hen neges'
-      no_messages_yet_html: Nid oes gennych unrhyw negeseuon eto. Beth am gysylltu
-        â'r %{people_mapping_nearby_link}?
-      people_mapping_nearby: pobl yn mapio gerllaw
-    messages_table:
-      from: O
-      to: I
-      subject: Pwnc
-      date: Dyddiad
-      actions: Gweithredoedd
-    message_summary:
-      unread_button: Marcio fel heb ei ddarllen
-      read_button: Marcio fel wedi'i ddarllen
-      destroy_button: Dileu
-      unmute_button: Symud i'r Mewnflwch
     new:
       title: Anfon neges
       send_message_to_html: Anfon neges newydd at %{name}
@@ -1864,42 +1849,78 @@ cy:
       title: Dim neges o'r fath
       heading: Dim neges o'r fath
       body: Sori, nid oes neges gyda'r id yno.
-    outbox:
-      title: Blwch Allan
-      messages:
-        one: Mae gennych %{count} neges wedi ei anfon
-        other: Mae gennych %{count} neges wedi eu hanfon
-      no_sent_messages_html: Nid oes gennych unrhyw negeseuon wedi'u hanfon eto. Beth
-        am gysylltu â'r %{people_mapping_nearby_link}?
-      people_mapping_nearby: pobl yn mapio gerllaw
-    muted:
-      title: Negeseuon ag Anwybyddwyd
-      messages:
-        zero: '%{count} neges wedi''i anwybyddu'
-        one: '%{count} neges wedi''i anwybyddu'
-        two: Mae gennych %{count} neges wedi'i anwybyddu
-        few: Mae gennych %{count} neges wedi'i anwybyddu
-        many: Mae gennych %{count} neges wedi'i anwybyddu
-        other: Mae gennych %{count} neges wedi'i anwybyddu
     show:
       title: Darllen neges
       reply_button: Ateb
       unread_button: Marcio fel heb ei ddarllen
       destroy_button: Dileu
       back: Yn ôl
-    sent_message_summary:
-      destroy_button: Dileu
-    heading:
-      my_inbox: Fy Mewnflwch
-      my_outbox: Fy Mlwch Allan
-      muted_messages: Negeseuon ag anwybyddwyd
     mark:
       as_read: Nodwyd fod y neges wedi ei ddarllen
       as_unread: Nodwyd nad yw'r neges wedi ei ddarllen
     unmute:
       notice: Symudwyd y neges i'r Mewnflwch
+      error: Nid oedd modd symud y neges i'r Mewnflwch.
     destroy:
       destroyed: Neges wedi'i dileu
+    mailboxes:
+      heading:
+        my_inbox: Fy Mewnflwch
+        my_outbox: Fy Mlwch Allan
+        muted_messages: Negeseuon ag anwybyddwyd
+      messages_table:
+        from: O
+        to: I
+        subject: Pwnc
+        date: Dyddiad
+        actions: Gweithredoedd
+      message:
+        unread_button: Marcio fel heb ei ddarllen
+        read_button: Marcio fel wedi'i ddarllen
+        destroy_button: Dileu
+        unmute_button: Symud i'r Mewnflwch
+    inboxes:
+      show:
+        title: Mewnflwch
+        messages: Mae gennych %{new_messages} a %{old_messages}
+        new_messages:
+          zero: '%{count} neges newydd'
+          one: '%{count} neges newydd'
+          two: '%{count} new messages'
+          few: '%{count} neges newydd'
+          many: '%{count} neges newydd'
+          other: '%{count} neges newydd'
+        old_messages:
+          zero: '%{count} hen neges'
+          one: '%{count} hen neges'
+          two: '%{count} hen neges'
+          few: '%{count} hen neges'
+          many: '%{count} hen neges'
+          other: '%{count} hen neges'
+        no_messages_yet_html: Nid oes gennych unrhyw negeseuon eto. Beth am gysylltu
+          â'r %{people_mapping_nearby_link}?
+        people_mapping_nearby: pobl yn mapio gerllaw
+    muted_inboxes:
+      show:
+        title: Negeseuon ag Anwybyddwyd
+        messages:
+          zero: '%{count} neges wedi''i anwybyddu'
+          one: '%{count} neges wedi''i anwybyddu'
+          two: Mae gennych %{count} neges wedi'i anwybyddu
+          few: Mae gennych %{count} neges wedi'i anwybyddu
+          many: Mae gennych %{count} neges wedi'i anwybyddu
+          other: Mae gennych %{count} neges wedi'i anwybyddu
+    outboxes:
+      show:
+        title: Blwch Allan
+        messages:
+          one: Mae gennych %{count} neges wedi ei anfon
+          other: Mae gennych %{count} neges wedi eu hanfon
+        no_sent_messages_html: Nid oes gennych unrhyw negeseuon wedi'u hanfon eto.
+          Beth am gysylltu â'r %{people_mapping_nearby_link}?
+        people_mapping_nearby: pobl yn mapio gerllaw
+      message:
+        destroy_button: Dileu
   passwords:
     new:
       title: Ailosod cyfrinair
@@ -1917,8 +1938,8 @@ cy:
   preferences:
     show:
       title: Dewisiadau
-      preferred_editor: Hoff Olygydd
-      preferred_languages: Ieithoedd
+      preferred_editor: Dewis Golygydd
+      preferred_languages: Dewis Ieithoedd
       preferred_site_color_scheme: Dewis Lliw Gwefan
       site_color_schemes:
         auto: Awtomatig
@@ -1943,7 +1964,7 @@ cy:
       title: Golygu proffil
       save: Diweddaru proffil
       cancel: Canslo
-      image: Delwedd
+      image: Llun
       gravatar:
         gravatar: Defnyddio Gravatar
         what_is_gravatar: Beth yw Gravatar?
@@ -1953,7 +1974,7 @@ cy:
       keep image: Cadw'r ddelwedd gyfredol
       delete image: Tynnu'r ddelwedd gyfredol
       replace image: Newid y ddelwedd gyfredol
-      image size hint: (delweddau sgwâr o leiaf 100x100 yw'r gorau)
+      image size hint: (lluniau sgwâr o leiaf 100x100 yw'r gorau)
       home location: Lleoliad Cartref
       no home location: Nid ydych wedi gosod eich lleoliad cartref.
       update home location on click: Diweddaru lleoliad cartref pan fyddaf yn clicio
@@ -1968,7 +1989,7 @@ cy:
     new:
       tab_title: Mewngofnodi
       login_to_authorize_html: Mewngofnodwch i OpenStreetMap i gael mynediad i %{client_app_name}.
-      email or username: Cyfeiriad E-Bost neu Enw Defnyddiwr
+      email or username: Cyfeiriad E-bost neu Enw Defnyddiwr
       password: Cyfrinair
       remember: Cofiwch fi
       lost password link: Wedi anghofio eich cyfrinair?
@@ -2056,7 +2077,7 @@ cy:
       open_data_open_data: ddata agored
       open_data_copyright_license: dudalen Hawlfraint a Thrwydded
       legal_title: Cyfreithiol
-      legal_1_1_openstreetmap_foundation: OpenStreetMap Foundation
+      legal_1_1_openstreetmap_foundation: Sefydliad OpenStreetMap
       legal_1_1_terms_of_use: Telerau Gwasanaeth
       legal_1_1_aup: Polisïau Defnydd Derbyniol
       legal_1_1_privacy_policy: Polisi Preifatrwydd
@@ -2249,8 +2270,8 @@ cy:
         geofabrik:
           title: Lawrlwythiadau Geofabrik
         other:
-          title: Ffynonellau eraill
-          description: Ffynonellau ychwanegol a nodir ar wici OpenStreetMap
+          title: Ffynonellau Eraill
+          description: Nodir ffynonellau ychwanegol ar Wici OpenStreetMap
       export_button: Allforio
     fixthemap:
       title: Rhoi gwybod am broblem / Cywiro'r map
@@ -2262,7 +2283,7 @@ cy:
             mae heol ar goll neu eich cyfeiriad chi, gallwch chi ymuno â chymuned
             OpenStreetMap ac ychwanegu neu atgyweirio'r data eich hun.
       other_concerns:
-        title: Gofidion eraill
+        title: Pryderon eraill
         concerns_html: |-
           Os oes gennych bryderon am sut caiff ein data ei ddefnyddio neu am y cynnwys, cysylltwch â'n
           %{copyright_link} am ragor o wybodaeth gyfreithiol, neu cysylltwch â'r %{working_group_link} priodol.
@@ -2324,11 +2345,11 @@ cy:
       table:
         entry:
           motorway: Traffordd
-          main_road: Prif ffordd
+          main_road: Priffordd
           trunk: Cefnffordd
           primary: Priffordd
           secondary: Ffordd eilaidd
-          unclassified: Ffordd annosbarthedig
+          unclassified: Ffordd Diddosbarth
           pedestrian: Llwybr cerddwyr
           track: Trac
           bridleway: Llwybr ceffylau
@@ -2367,12 +2388,12 @@ cy:
           park: Parc
           common: Comin
           built_up: Ardal Adeiledig
-          resident: Ardal breswyl
-          retail: Ardal fanwerthu
-          industrial: Ardal ddiwydiannol
-          commercial: Ardal fasnachol
+          resident: Ardal Breswyl
+          retail: Ardal Fanwerthu
+          industrial: Ardal Ddiwydiannol
+          commercial: Ardal Fasnachol
           heathland: Rhos
-          scrubland: Prysgoed
+          scrubland: Prysgwydd
           lake: Llyn
           reservoir: Cronfa Ddŵr
           intermittent_water: Dŵr ysbeidiol
@@ -2518,7 +2539,7 @@ cy:
       cancel: Canslo
       title: Wrthi'n golygu Ôl %{name}
       heading: Wrthi'n golygu Ôl %{name}
-      visibility_help: beth mae hyn yn golygu?
+      visibility_help: beth mae hyn yn ei olygu?
     update:
       updated: Ôl wedi'i ddiweddaru
     show:
@@ -2633,6 +2654,28 @@ cy:
       wikipedia:
         title: Mewngofnodi ag Wicipedia
         alt: Logo Wicipedia
+    share:
+      email:
+        title: Rhannu drwy E-bost
+        alt: Eicon e-bost
+      bluesky:
+        title: Rhannu drwy Bluesky
+        alt: Eicon Bluesky
+      facebook:
+        title: Rhannu drwy Facebook
+        alt: Eicon Facebook
+      linkedin:
+        title: Rhannu drwy LinkedIn
+        alt: Eicon LinkedIn
+      mastodon:
+        title: Rhannu ar Mastodon
+        alt: Eicon Mastodon
+      telegram:
+        title: Rhannu ar Telegram
+        alt: Eicon Telegram
+      x:
+        title: Rhannu ar X
+        alt: Eicon X
   oauth:
     scopes:
       openid: Mewngofnodi ag OpenStreetMap
@@ -2789,7 +2832,7 @@ cy:
           importer: Tynnu statws mewnforiwr
       block_history: Blociau Gweithredol
       moderator_history: Blociau a roddwyd
-      revoke_all_blocks: Diddymu pob bloc
+      revoke_all_blocks: Dirymu pob bloc
       comments: Sylwadau
       create_block: Blocio'r Defnyddiwr Hwn
       activate_user: Gwneud y cyfri'n fyw
@@ -2804,6 +2847,31 @@ cy:
     go_public:
       flash success: Mae eich holl olygiadau nawr yn gyhoeddus a gallech nawr parhau
         i olygu.
+    issued_blocks:
+      show:
+        title: Blociau gan %{name}
+        heading_html: Rhestr Blociau gan %{name}
+        empty: Nid oes unrhyw blociau gan %{name} eto.
+    received_blocks:
+      show:
+        title: Blociau ar %{name}
+        heading_html: Rhestr Blociau ar %{name}
+        empty: Nid oes unrhyw blociau ar %{name} eto.
+      edit:
+        title: Diddymu pob bloc ar %{block_on}
+        heading_html: Diddymu pob bloc ar %{block_on}
+        empty: Nid oes gan %{name} flociau gweithredol.
+        confirm: Ydych chi wir eisiau diddymu %{active_blocks}?
+        active_blocks:
+          zero: '%{count} blociau cyfredol.'
+          one: '%{count} %{count} bloc cyfredol.'
+          two: '%{count} floc cyfredol.'
+          few: '%{count} bloc cyfredol.'
+          many: '%{count} bloc cyfredol.'
+          other: '%{count} bloc cyfredol.'
+        revoke: Dirymu!
+      destroy:
+        flash: Dirymwyd pob bloc gweithredol.
     lists:
       show:
         title: Defnyddwyr
@@ -2848,7 +2916,7 @@ cy:
     edit:
       title: Wrthi'n golygu bloc ar %{name}
       heading_html: Wrthi'n golygu bloc ar %{name}
-      revoke: Diddymu bloc
+      revoke: Dirymu bloc
     create:
       flash: Wedi creu bloc ar ddefnyddiwr %{name}.
     update:
@@ -2860,20 +2928,6 @@ cy:
       title: Blociau defnyddiwr
       heading: Rhestr o flociau defnyddwyr
       empty: Dim blociau eto.
-    revoke_all:
-      title: Diddymu pob bloc ar %{block_on}
-      heading_html: Diddymu pob bloc ar %{block_on}
-      empty: Nid oes gan %{name} flociau gweithredol.
-      confirm: Ydych chi wir eisiau diddymu %{active_blocks}?
-      active_blocks:
-        zero: '%{count} blociau cyfredol.'
-        one: '%{count} %{count} bloc cyfredol.'
-        two: '%{count} floc cyfredol.'
-        few: '%{count} bloc cyfredol.'
-        many: '%{count} bloc cyfredol.'
-        other: '%{count} bloc cyfredol.'
-      revoke: Dad-flocio!
-      flash: Diddymwyd pob bloc gweithredol.
     helper:
       time_future_html: Yn dod i ben mewn %{time}.
       until_login: Gweithredol hyd nes bod y defnyddiwr yn mewngofnodi.
@@ -2917,16 +2971,14 @@ cy:
           many: '%{count} blynedd'
           other: '%{count} blynedd'
       short:
+        ended: wedi gorffen
+        revoked_html: dirymwyd gan %{name}
+        active: gweithredol
+        active_unread: gweithredol heb ei ddarllen
+        expired_unread: wedi gorffen heb ei ddarllen
+        read_html: darllenwyd am %{time}
         time_in_future_title: '%{time_absolute}; ymhen %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blociau ar %{name}
-      heading_html: Rhestr Blociau ar %{name}
-      empty: Nid oes unrhyw blociau ar %{name} eto.
-    blocks_by:
-      title: Blociau gan %{name}
-      heading_html: Rhestr Blociau gan %{name}
-      empty: Nid oes unrhyw blociau gan %{name} eto.
     show:
       title: Blociwyd %{block_on} gan %{block_by}
       heading_html: Blociwyd %{block_on} gan %{block_by}
@@ -2993,7 +3045,7 @@ cy:
       description: Disgrifiad
       created_at: Crëwyd
       last_changed: Newidiwyd ddiwethaf
-      apply: Rhoi ar waith
+      apply: Gweithredu
       all: Popeth
       open: Agored
       closed: Wedi cau
@@ -3044,6 +3096,10 @@ cy:
         felly peidiwch ag ysgrifennu gwybodaeth bersonol, na gwybodaeth o fapiau hawlfreintiedig
         neu gyfeiriaduron.
       add: Ychwanegu Nodyn
+    new_readonly:
+      title: Nodyn Newydd
+      warning: Ni ellir creu nodiadau newydd oherwydd bod API OpenStreetMap ym modd
+        darllen-yn-unig ar hyn o bryd.
     notes_paging_nav:
       showing_page: Tudalen %{page}
       next: Nesaf
@@ -3053,7 +3109,7 @@ cy:
     share:
       title: Rhannu
       cancel: Canslo
-      image: Delwedd
+      image: Llun
       link: Dolen neu HTML
       long_link: Dolen
       short_link: Dolen Fer
@@ -3069,6 +3125,8 @@ cy:
       center_marker: Canoli'r map ar y marciwr
       paste_html: Gludwch HTML i'w fewnosod yn y wefan
       view_larger_map: Gweld Map Mawr
+      only_layers_exported_as_image: 'Dim ond yr haenau canlynol y gellir eu hallforio
+        fel delwedd:'
     embed:
       report_problem: Rhoi gwybod am broblem
     key:
@@ -3081,6 +3139,20 @@ cy:
         out: Chwyddo Allan
       locate:
         title: Dangos Fy Lleoliad
+        metersPopup:
+          zero: Rydych chi o fewn %{count} metr i'r pwynt hwn
+          one: Rydych chi o fewn %{count} metr i'r pwynt hwn
+          two: Rydych chi o fewn %{count} fetr i'r pwynt hwn
+          few: Rydych chi o fewn %{count} metr i'r pwynt hwn
+          many: Rydych chi o fewn %{count} metr i'r pwynt hwn
+          other: Rydych chi o fewn %{count} metr i'r pwynt hwn
+        feetPopup:
+          zero: Rydych chi o fewn %{count} troedfedd i'r pwynt hwn
+          one: Rydych chi o fewn %{count} troedfedd i'r pwynt hwn
+          two: Rydych chi o fewn %{count} droedfedd i'r pwynt hwn
+          few: Rydych chi o fewn %{count} throedfedd i'r pwynt hwn
+          many: Rydych chi o fewn %{count} troedfedd i'r pwynt hwn
+          other: Rydych chi o fewn %{count} troedfedd i'r pwynt hwn
       base:
         standard: Safonol
         cycle_map: Map Beicio
index 2785d01f46a45dec96addcece27ea1319a8ae19a..80151e26fe7b7cbbe076692580d1b3cc1f9089eb 100644 (file)
@@ -1829,8 +1829,9 @@ da:
       success: Din konto er bekræftet, tak for din registrering!
       already active: Denne konto er allerede blevet bekræftet.
       unknown token: Den bekræftelseskode er udløbet eller eksisterer ikke.
-      resend_html: Hvis du har brug for at vi gensender bekræftelsesmeddelelsen, %{reconfirm_link}.
-      click_here: klik her
+      if_need_resend: Hvis du har brug for, at vi sender bekræftelses-e-mailen igen,
+        skal du klikke på knappen nedenfor.
+      resend_button: Send bekræftelses-e-mailen igen
     confirm_resend:
       failure: Bruger %{name} ikke fundet.
     confirm_email:
@@ -1848,29 +1849,6 @@ da:
         så vær sikker på at du tilføjer %{sender} til whitelist, da vi ikke kan svare
         på nogen bekræftelsesforespørgsler.
   messages:
-    inbox:
-      title: Indbakke
-      messages: Du har %{new_messages} og %{old_messages}
-      new_messages:
-        one: '%{count} nye besked'
-        other: '%{count} nye beskeder'
-      old_messages:
-        one: '%{count} gammel besked'
-        other: '%{count} gamle beskeder'
-      no_messages_yet_html: Du har ingen beskeder endnu. Hvorfor ikke komme i kontakt
-        med nogle af de %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk som kortlægger i nærheden
-    messages_table:
-      from: Fra
-      to: Til
-      subject: Emne
-      date: Dato
-      actions: Handlinger
-    message_summary:
-      unread_button: Marker som ulæst
-      read_button: Marker som læst
-      destroy_button: Slet
-      unmute_button: Flyt til Indbakke
     new:
       title: Send besked
       send_message_to_html: Send en ny besked til %{name}
@@ -1883,19 +1861,6 @@ da:
       title: Ingen besked fundet
       heading: Ingen besked fundet
       body: Beklager, der er ingen besked med det id.
-    outbox:
-      title: Udbakke
-      messages:
-        one: Du har %{count} sendt besked
-        other: Du har %{count} sendte beskeder
-      no_sent_messages_html: Du har ingen sendte beskeder endnu. Hvorfor ikke komme
-        i kontakt med nogle af de %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk som kortlægger i nærheden
-    muted:
-      title: Stillegjorte beskeder
-      messages:
-        one: '%{count} stillegjort besked'
-        other: Du har  %{count} stillegjorte beskeder
     reply:
       wrong_user: Du er logget på som '%{user}', men den besked du har bedt om at
         svare på, blev ikke sendt til den bruger. Log venligst på som den korrekte
@@ -1909,12 +1874,6 @@ da:
       wrong_user: Du er logget på som '%{user}', men den besked du har bedt om at
         læse, er ikke sendt af eller til den bruger. Log venligst på som den korrekte
         bruger for at læse den.
-    sent_message_summary:
-      destroy_button: Slet
-    heading:
-      my_inbox: Min indbakke
-      my_outbox: Min udbakke
-      muted_messages: Stillegjorte beskeder
     mark:
       as_read: Besked markeret som læst
       as_unread: Besked markeret som ulæst
@@ -1923,6 +1882,52 @@ da:
       error: Beskeden kunne ikke flyttes til Indbakke.
     destroy:
       destroyed: Besked slettet
+    mailboxes:
+      heading:
+        my_inbox: Min indbakke
+        my_outbox: Min udbakke
+        muted_messages: Stillegjorte beskeder
+      messages_table:
+        from: Fra
+        to: Til
+        subject: Emne
+        date: Dato
+        actions: Handlinger
+      message:
+        unread_button: Marker som ulæst
+        read_button: Marker som læst
+        destroy_button: Slet
+        unmute_button: Flyt til Indbakke
+    inboxes:
+      show:
+        title: Indbakke
+        messages: Du har %{new_messages} og %{old_messages}
+        new_messages:
+          one: '%{count} nye besked'
+          other: '%{count} nye beskeder'
+        old_messages:
+          one: '%{count} gammel besked'
+          other: '%{count} gamle beskeder'
+        no_messages_yet_html: Du har ingen beskeder endnu. Hvorfor ikke komme i kontakt
+          med nogle af de %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk som kortlægger i nærheden
+    muted_inboxes:
+      show:
+        title: Stillegjorte beskeder
+        messages:
+          one: '%{count} stillegjort besked'
+          other: Du har  %{count} stillegjorte beskeder
+    outboxes:
+      show:
+        title: Udbakke
+        messages:
+          one: Du har %{count} sendt besked
+          other: Du har %{count} sendte beskeder
+        no_sent_messages_html: Du har ingen sendte beskeder endnu. Hvorfor ikke komme
+          i kontakt med nogle af de %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk som kortlægger i nærheden
+      message:
+        destroy_button: Slet
   passwords:
     new:
       title: Glemt adgangskode
@@ -2921,6 +2926,27 @@ da:
     go_public:
       flash success: Alle dine redigeringer er nu offentlige, og du har lov til at
         redigere.
+    issued_blocks:
+      show:
+        title: Blokeringer af %{name}
+        heading_html: Liste over blokeringer af %{name}
+        empty: '%{name} har ikke foretaget nogen blokeringer endnu.'
+    received_blocks:
+      show:
+        title: Blokeringer af %{name}
+        heading_html: Liste over blokeringer af %{name}
+        empty: '%{name} er endnu ikke blevet blokeret.'
+      edit:
+        title: Træk alle blokeringer på %{block_on} tilbage
+        heading_html: Fjerner alle blokeringer på %{block_on}
+        empty: '%{name} har ingen aktive blokeringer.'
+        confirm: Er du sikker på at du vil trække %{active_blocks}?
+        active_blocks:
+          one: '%{count} aktiv blokering'
+          other: '%{count} aktive blokringer'
+        revoke: Træk tilbage!
+      destroy:
+        flash: Alle aktive blokeringer er blevet tilbagetrukket.
     lists:
       show:
         title: Brugere
@@ -3009,16 +3035,6 @@ da:
       title: Brugerblokeringer
       heading: Liste over brugerblokeringer
       empty: Ingen blokeringer er blevet udført endnu.
-    revoke_all:
-      title: Træk alle blokeringer på %{block_on} tilbage
-      heading_html: Fjerner alle blokeringer på %{block_on}
-      empty: '%{name} har ingen aktive blokeringer.'
-      confirm: Er du sikker på at du vil trække %{active_blocks}?
-      active_blocks:
-        one: '%{count} aktiv blokering'
-        other: '%{count} aktive blokringer'
-      revoke: Træk tilbage!
-      flash: Alle aktive blokeringer er blevet tilbagetrukket.
     helper:
       time_future_html: Slutter om %{time}.
       until_login: Aktiv, indtil brugeren logger på.
@@ -3050,14 +3066,6 @@ da:
         read_html: læst %{time}
         time_in_future_title: '%{time_absolute}; om %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blokeringer af %{name}
-      heading_html: Liste over blokeringer af %{name}
-      empty: '%{name} er endnu ikke blevet blokeret.'
-    blocks_by:
-      title: Blokeringer af %{name}
-      heading_html: Liste over blokeringer af %{name}
-      empty: '%{name} har ikke foretaget nogen blokeringer endnu.'
     show:
       title: '%{block_on} blokeret af %{block_by}'
       heading_html: '%{block_on} blokeret af %{block_by}'
@@ -3202,8 +3210,7 @@ da:
       center_marker: Centrér kortet på markøren
       paste_html: Indsæt HTML som skal indlejres i websiden
       view_larger_map: Vis større kort
-      only_standard_layer: Kun lagene standard, cykelkort og transport kan eksporteres
-        som et billede
+      only_layers_exported_as_image: 'Kun de følgende lag kan eksporteres som et billede:'
     embed:
       report_problem: Rapporter et problem
     key:
index 7bd8d9d44235bd943841f44af16d9437d8250460..9d2451bfe9017daf8a15df0eea1e09199afa4321 100644 (file)
@@ -93,6 +93,7 @@
 # Author: Robert Wetzlmayr
 # Author: Schmackes
 # Author: Sebastian Wallroth
+# Author: SergeCroise
 # Author: Simon04
 # Author: SimonPoole
 # Author: Snocker15
@@ -1656,6 +1657,10 @@ de:
         open: Offen
         resolved: Erledigt
     show:
+      title:
+        open: 'Offenes Problem #%{issue_id}'
+        ignored: 'Ignoriertes Problem #%{issue_id}'
+        resolved: 'Behobenes Problem #%{issue_id}'
       reports:
         one: Eine Meldung
         other: '%{count} Meldungen'
@@ -1939,8 +1944,9 @@ de:
       success: Dein Benutzerkonto wurde bestätigt, danke fürs Registrieren!
       already active: Dieses Benutzerkonto wurde bereits bestätigt.
       unknown token: Dieser Bestätigungscode ist abgelaufen oder nicht vorhanden.
-      resend_html: Wenn du eine neue Bestätigungsemail brauchst, %{reconfirm_link}.
-      click_here: klicke hier
+      if_need_resend: Wenn wir Ihnen die Bestätigungs-E-Mail erneut senden sollen,
+        klicken Sie auf die Schaltfläche unten.
+      resend_button: Bestätigungs-E-Mail erneut senden
     confirm_resend:
       failure: Benutzer %{name} konnte nicht gefunden werden.
     confirm_email:
@@ -1958,29 +1964,6 @@ de:
         sendet, stelle bitte sicher, dass du %{sender} auf eine Erlaubnisliste setzt,
         da wir keine Bestätigungsanfragen beantworten können.
   messages:
-    inbox:
-      title: Posteingang
-      messages: Du hast %{new_messages} und %{old_messages}
-      new_messages:
-        one: '%{count} ungelesene Nachricht'
-        other: '%{count} ungelesene Nachrichten'
-      old_messages:
-        one: '%{count} gelesene Nachricht'
-        other: '%{count} gelesene Nachrichten'
-      no_messages_yet_html: Du hast noch keine Nachrichten. Möchtest du mit %{people_mapping_nearby_link}
-        Kontakt aufnehmen?
-      people_mapping_nearby: Mappern in deiner Nähe
-    messages_table:
-      from: Absender
-      to: An
-      subject: Betreff
-      date: Datum
-      actions: Aktionen
-    message_summary:
-      unread_button: Als ungelesen markieren
-      read_button: Als gelesen markieren
-      destroy_button: Löschen
-      unmute_button: In den Posteingang verschieben
     new:
       title: Nachricht senden
       send_message_to_html: Eine Nachricht an %{name} senden
@@ -1993,19 +1976,6 @@ de:
       title: Nachricht nicht vorhanden
       heading: Nachricht nicht vorhanden
       body: Leider existiert keine Nachricht mit dieser ID.
-    outbox:
-      title: Gesendet
-      messages:
-        one: Du hast %{count} Nachricht gesendet
-        other: Du hast %{count} Nachrichten gesendet
-      no_sent_messages_html: Du hast noch keine Nachrichten versendet. Möchtest du
-        mit  %{people_mapping_nearby_link} Kontakt aufnehmen?
-      people_mapping_nearby: Mappern in deiner Nähe
-    muted:
-      title: Stummgeschaltete Nachrichten
-      messages:
-        one: '%{count} stummgeschatete Nachricht'
-        other: '%{count} stummgeschatete Nachrichten'
     reply:
       wrong_user: Du bist als '%{user}' angemeldet, aber die Nachricht, auf die du
         antworten möchtest, wurde nicht an diesen Benutzer gesendet. Bitte melde dich
@@ -2019,12 +1989,6 @@ de:
       wrong_user: Du bist als '%{user}' angemeldet, aber die Nachricht, die du lesen
         möchtest, wurde nicht von diesem Benutzer oder an diesen gesendet. Bitte melde
         dich mit dem korrekten Benutzer an, um sie zu lesen.
-    sent_message_summary:
-      destroy_button: Löschen
-    heading:
-      my_inbox: Posteingang
-      my_outbox: Mein Postausgang
-      muted_messages: Stummgeschaltete Nachrichten
     mark:
       as_read: Nachricht als gelesen markiert
       as_unread: Nachricht als ungelesen markiert
@@ -2033,6 +1997,52 @@ de:
       error: Die Nachricht konnte nicht in den Posteingang verschoben werden.
     destroy:
       destroyed: Nachricht gelöscht
+    mailboxes:
+      heading:
+        my_inbox: Posteingang
+        my_outbox: Mein Postausgang
+        muted_messages: Stummgeschaltete Nachrichten
+      messages_table:
+        from: Absender
+        to: An
+        subject: Betreff
+        date: Datum
+        actions: Aktionen
+      message:
+        unread_button: Als ungelesen markieren
+        read_button: Als gelesen markieren
+        destroy_button: Löschen
+        unmute_button: In den Posteingang verschieben
+    inboxes:
+      show:
+        title: Posteingang
+        messages: Du hast %{new_messages} und %{old_messages}
+        new_messages:
+          one: '%{count} ungelesene Nachricht'
+          other: '%{count} ungelesene Nachrichten'
+        old_messages:
+          one: '%{count} gelesene Nachricht'
+          other: '%{count} gelesene Nachrichten'
+        no_messages_yet_html: Du hast noch keine Nachrichten. Möchtest du mit %{people_mapping_nearby_link}
+          Kontakt aufnehmen?
+        people_mapping_nearby: Mappern in deiner Nähe
+    muted_inboxes:
+      show:
+        title: Stummgeschaltete Nachrichten
+        messages:
+          one: '%{count} stummgeschatete Nachricht'
+          other: '%{count} stummgeschatete Nachrichten'
+    outboxes:
+      show:
+        title: Gesendet
+        messages:
+          one: Du hast %{count} Nachricht gesendet
+          other: Du hast %{count} Nachrichten gesendet
+        no_sent_messages_html: Du hast noch keine Nachrichten versendet. Möchtest
+          du mit  %{people_mapping_nearby_link} Kontakt aufnehmen?
+        people_mapping_nearby: Mappern in deiner Nähe
+      message:
+        destroy_button: Löschen
   passwords:
     new:
       title: Passwort vergessen
@@ -2835,6 +2845,28 @@ de:
       wikipedia:
         title: Mit Wikipedia anmelden
         alt: Wikipedia Logo
+    share:
+      email:
+        title: Per E-Mail teilen
+        alt: E-Mail-Symbol
+      bluesky:
+        title: Auf Bluesky teilen
+        alt: Bluesky-Symbol
+      facebook:
+        title: Auf Facebook teilen
+        alt: Facebook-Symbol
+      linkedin:
+        title: Auf LinkedIn teilen
+        alt: LinkedIn-Symbol
+      mastodon:
+        title: Auf Mastodon teilen
+        alt: Mastodon-Symbol
+      telegram:
+        title: Auf Telegram teilen
+        alt: Telegramm-Symbol
+      x:
+        title: Auf X teilen
+        alt: X-Symbol
   oauth:
     permissions:
       missing: Du hast den Anwendungszugriff auf diese Einrichtung nicht zugelassen.
@@ -3055,6 +3087,27 @@ de:
     go_public:
       flash success: Alle deine Bearbeitungen sind nun öffentlich und du kannst nun
         die Kartendaten bearbeiten.
+    issued_blocks:
+      show:
+        title: Sperre durch %{name}
+        heading_html: Liste der Sperren durch %{name}
+        empty: '%{name} hat noch keine Sperren eingerichtet.'
+    received_blocks:
+      show:
+        title: Sperren für %{name}
+        heading_html: Liste der Sperren für %{name}
+        empty: '%{name} wurde bisher nicht gesperrt.'
+      edit:
+        title: Alle Sperren auf %{block_on} aufheben
+        heading_html: Alle Sperren auf %{block_on} aufheben
+        empty: '%{name} hat keine aktiven Sperren.'
+        confirm: Bist du sicher, dass du %{active_blocks} aufheben möchtest?
+        active_blocks:
+          one: '%{count} aktive Sperre'
+          other: '%{count} aktive Sperren'
+        revoke: Aufheben!
+      destroy:
+        flash: Alle aktiven Sperren wurden aufgehoben.
     lists:
       show:
         title: Benutzer
@@ -3144,16 +3197,6 @@ de:
       title: Benutzersperren
       heading: Liste der Benutzersperren
       empty: Noch nie gesperrt.
-    revoke_all:
-      title: Alle Sperren auf %{block_on} aufheben
-      heading_html: Alle Sperren auf %{block_on} aufheben
-      empty: '%{name} hat keine aktiven Sperren.'
-      confirm: Bist du sicher, dass du %{active_blocks} aufheben möchtest?
-      active_blocks:
-        one: '%{count} aktive Sperre'
-        other: '%{count} aktive Sperren'
-      revoke: Aufheben!
-      flash: Alle aktiven Sperren wurden aufgehoben.
     helper:
       time_future_html: Endet in %{time}.
       until_login: Aktiv, bis der Benutzer sich anmeldet.
@@ -3177,17 +3220,14 @@ de:
           one: 1 Jahr
           other: '%{count} Jahre'
       short:
+        ended: geendet
+        revoked_html: von %{name} aufgehoben
         active: Aktiv
+        active_unread: ungelesen aktiv
+        expired_unread: ungelesen abgelaufen
         read_html: gelesen am %{time}
+        time_in_future_title: '%{time_absolute}; in %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Sperren für %{name}
-      heading_html: Liste der Sperren für %{name}
-      empty: '%{name} wurde bisher nicht gesperrt.'
-    blocks_by:
-      title: Sperre durch %{name}
-      heading_html: Liste der Sperren durch %{name}
-      empty: '%{name} hat noch keine Sperren eingerichtet.'
     show:
       title: '%{block_on} gesperrt durch  %{block_by}'
       heading_html: '%{block_on} gesperrt durch %{block_by}'
@@ -3335,8 +3375,8 @@ de:
       center_marker: Karte am Marker zentrieren
       paste_html: HTML zur Einbettung in Webseiten kopieren
       view_larger_map: Größere Karte anzeigen
-      only_standard_layer: Nur die Standard-, Fahrrad- und Transportebenen können
-        als Bild exportiert werden
+      only_layers_exported_as_image: 'Nur die folgenden Ebenen können als Bild exportiert
+        werden:'
     embed:
       report_problem: Ein Problem melden
     key:
index 55872284fbd91c496896c06d3f7ea3f798774ffa..fc4b57c8faf5c74f9758aca29907f6c3b732a877 100644 (file)
@@ -840,28 +840,31 @@ diq:
     confirm_email:
       button: Tesdiq ke
   messages:
-    inbox:
-      title: Ameyan
-    messages_table:
-      from: Rıştoğ
-      to: Gırewtoğ
-      subject: Mewzu
-      date: Tarix
-    message_summary:
-      destroy_button: Bestere
     new:
       title: Mesac bırışê
-    outbox:
-      title: Şıyenan
     show:
       title: Mesaci bıwane
       reply_button: Cewab bıde
       destroy_button: Bestere
       back: Peyser
-    sent_message_summary:
-      destroy_button: Bestere
-    heading:
-      my_inbox: Amayenê mı
+    mailboxes:
+      heading:
+        my_inbox: Amayenê mı
+      messages_table:
+        from: Rıştoğ
+        to: Gırewtoğ
+        subject: Mewzu
+        date: Tarix
+      message:
+        destroy_button: Bestere
+    inboxes:
+      show:
+        title: Ameyan
+    outboxes:
+      show:
+        title: Şıyenan
+      message:
+        destroy_button: Bestere
   passwords:
     new:
       title: Parolaya vınibyayi
@@ -1034,6 +1037,14 @@ diq:
       unhide_user: nê karberi menımnê
       delete_user: nê karberi esternê
       confirm: Tesdiq ke
+    issued_blocks:
+      show:
+        title: Blokeyê ke %{name} kerdê
+        heading_html: '%{name} ra lista blokan'
+    received_blocks:
+      show:
+        title: Blokeyê ke %{name} kerdê
+        heading_html: Blokeyê ke %{name} kerdê listey ênan
     lists:
       show:
         title: Karberi
@@ -1065,12 +1076,6 @@ diq:
         hours:
           one: 1 seate
           other: '%{count} seati'
-    blocks_on:
-      title: Blokeyê ke %{name} kerdê
-      heading_html: Blokeyê ke %{name} kerdê listey ênan
-    blocks_by:
-      title: Blokeyê ke %{name} kerdê
-      heading_html: '%{name} ra lista blokan'
     show:
       title: Karber %{block_by} karber %{block_on} ke bloqe
       heading_html: Karber %{block_by} karber %{block_on} ke bloqe
index d7cab32a4610b5ce980395752c75e4a58df20d29..22ed3a1e43595a6a5317b2de701ec10d909c155e 100644 (file)
@@ -972,31 +972,6 @@ dsb:
       success: Twója e-mailowa adresa jo se wobkšuśiła, źěkujomy se za registrěrowanje!
       failure: E-mailowa adresa jo se južo wobkšuśiła pśez toś ten wótkaz.
   messages:
-    inbox:
-      title: Post
-      messages: Maš %{new_messages} a %{old_messages}
-      new_messages:
-        few: '%{count} nowe powěsći'
-        one: '%{count} nowa powěsć'
-        two: '%{count} nowej powěsći'
-        other: '%{count} nowych powěsćow'
-      old_messages:
-        few: '%{count} stare powěsći'
-        one: '%{count} stara powěsć'
-        two: '%{count} starej powěsći'
-        other: '%{count} starych powěsćow'
-      no_messages_yet_html: Hyšći njamaš powěsći. Cogodla njestajaš se z %{people_mapping_nearby_link}
-        do zwiska?
-      people_mapping_nearby: Luźe, kótarež kartěruju w bliskosći
-    messages_table:
-      from: Wót
-      to: Komu
-      subject: Temowe nadpismo
-      date: Datum
-    message_summary:
-      unread_button: Ako njepśecytany markěrowaś
-      read_button: Ako pśecytany markěrowaś
-      destroy_button: Lašowaś
     new:
       title: Powěsć pósłaś
       send_message_to_html: '%{name} nowu powěsć pósłaś'
@@ -1009,16 +984,6 @@ dsb:
       title: Powěsć njeeksistěrujo
       heading: Powěsć njeeksistěrujo
       body: Bóžko powěźeńka z tym ID njeeksistěrujo.
-    outbox:
-      title: Pósłany
-      messages:
-        few: Sy %{count} powěsći pósłał
-        one: Sy %{count} powěsć pósłał
-        two: Sy %{count} powěsći pósłał
-        other: Sy %{count} powěsćow pósłał
-      no_sent_messages_html: Hyšći njejsy powěsći rozpósłał. Cogodla njestajaš se
-        z jadnym z %{people_mapping_nearby_link}, do zwiska?
-      people_mapping_nearby: luźe, kótarež kartěruju w bliskosći
     reply:
       wrong_user: |-
         Sy ako `%{user}' pśizjawjony, ale powěsć, na kótaruž sy kśěł wótegroniś, njejo se pósłała k tomu wužywarjeju.
@@ -1031,15 +996,53 @@ dsb:
       wrong_user: Sy ako `%{user} pśizjawjony, ale powěsć, kótaruž sy kśěł cytaś,
         njejo se pósłała wót togo wužywarja abo k tomu wužywarjeju. Pšosym pśizjaw
         se ako korektny wužywaŕ, aby ju cytał.
-    sent_message_summary:
-      destroy_button: Lašowaś
-    heading:
-      my_inbox: Mój post
     mark:
       as_read: Powěsć jo se markěrowała ako pśecytana
       as_unread: Powěsć jo se markěrowała ako njepśecytana
     destroy:
       destroyed: Powěsć wulašowana
+    mailboxes:
+      heading:
+        my_inbox: Mój post
+      messages_table:
+        from: Wót
+        to: Komu
+        subject: Temowe nadpismo
+        date: Datum
+      message:
+        unread_button: Ako njepśecytany markěrowaś
+        read_button: Ako pśecytany markěrowaś
+        destroy_button: Lašowaś
+    inboxes:
+      show:
+        title: Post
+        messages: Maš %{new_messages} a %{old_messages}
+        new_messages:
+          few: '%{count} nowe powěsći'
+          one: '%{count} nowa powěsć'
+          two: '%{count} nowej powěsći'
+          other: '%{count} nowych powěsćow'
+        old_messages:
+          few: '%{count} stare powěsći'
+          one: '%{count} stara powěsć'
+          two: '%{count} starej powěsći'
+          other: '%{count} starych powěsćow'
+        no_messages_yet_html: Hyšći njamaš powěsći. Cogodla njestajaš se z %{people_mapping_nearby_link}
+          do zwiska?
+        people_mapping_nearby: Luźe, kótarež kartěruju w bliskosći
+    outboxes:
+      show:
+        title: Pósłany
+        messages:
+          few: Sy %{count} powěsći pósłał
+          one: Sy %{count} powěsć pósłał
+          two: Sy %{count} powěsći pósłał
+          other: Sy %{count} powěsćow pósłał
+        no_sent_messages_html: Hyšći njejsy powěsći rozpósłał. Cogodla njestajaš se
+          z jadnym z %{people_mapping_nearby_link}, do zwiska?
+        people_mapping_nearby: luźe, kótarež kartěruju w bliskosći
+      message:
+        destroy_button: Lašowaś
   passwords:
     new:
       title: Zabyte gronidło
@@ -1472,6 +1475,16 @@ dsb:
       confirm: Wobkšuśiś
     go_public:
       flash success: Wše twóje změny su něnto zjawne, a ty móžoš je něnto wobźěłaś.
+    issued_blocks:
+      show:
+        title: Blokěrowanja wót %{name}
+        heading_html: Lisćina blokěrowanjow wót %{name}
+        empty: '%{name} hyšći njejo žedne blokěrowanja wuźělił.'
+    received_blocks:
+      show:
+        title: Blokěrowanja pśeśiwo %{name}
+        heading_html: Lisćina blokěrowanjow pśeśiwo %{name}
+        empty: '%{name} hyšći njejo se zablokěrował.'
     lists:
       show:
         title: Wužywarje
@@ -1533,14 +1546,6 @@ dsb:
           one: 1 góźina
           two: '%{count} góźinje'
           other: '%{count} góźinow'
-    blocks_on:
-      title: Blokěrowanja pśeśiwo %{name}
-      heading_html: Lisćina blokěrowanjow pśeśiwo %{name}
-      empty: '%{name} hyšći njejo se zablokěrował.'
-    blocks_by:
-      title: Blokěrowanja wót %{name}
-      heading_html: Lisćina blokěrowanjow wót %{name}
-      empty: '%{name} hyšći njejo žedne blokěrowanja wuźělił.'
     show:
       title: '%{block_on} zablokěrowany wót %{block_by}'
       heading_html: '%{block_on} jo se zablokěrował wót %{block_by}'
index d8ad331617e4b0a2d5be2beca39cdc73ced32e03..2f2975f37c9ba192a24778979c76ee4fad54857b 100644 (file)
@@ -611,7 +611,7 @@ el:
       in_language_title: Καταχωρήσεις ημερολογίων στα %{language}
       new: Νέα καταχώρηση ημερολογίου
       new_title: Σύνταξη νέας καταχώρησης στο ημερολόγιό μου
-      my_diary: Το ημερολόγιό μου
+      my_diary: Το ημερολόγιο μου
       no_entries: Χωρίς καταχωρήσεις ημερολογίου
     page:
       recent_entries: Πρόσφατες καταχωρήσεις ημερολογίου
@@ -758,12 +758,13 @@ el:
     remove_friend:
       heading: Αφαίρεση φίλου %{user};
       button: Αφαίρεση φίλου
-      success: Ο χρήστης %{name} αφαιρέθηκε από τους φίλους.
-      not_a_friend: Ο χρήστης %{name} δεν είναι ένας από τους φίλους σας.
+      success: '{{GENDER:%{name}|Ο|Η}} χρήστης %{name} αφαιρέθηκε από τους φίλους.'
+      not_a_friend: '{{GENDER:%{name}|Ο|Η}} χρήστης %{name} δεν είναι ένας από τους
+        φίλους σας.'
   geocoder:
     search:
       title:
-        latlon: Internal
+        latlon: Εσωτερικό
         osm_nominatim: OpenStreetMap Nominatim
         osm_nominatim_reverse: OpenStreetMap Nominatim
     search_osm_nominatim:
@@ -776,7 +777,7 @@ el:
           magic_carpet: Ανελκυστήρας για σκι/σνόουμπορντ
           platter: Πιατέλα ανύψωσης
           pylon: Πυλώνας
-          station: Σταθμός εναέριου δρόμου
+          station: Σταθμός εναέριων μεταφορών
           t-bar: T-Bar Ασανσέρ
           "yes": Τελεφερίκ
         aeroway:
@@ -866,7 +867,7 @@ el:
           pharmacy: Φαρμακείο
           place_of_worship: Τόπος λατρείας
           police: Αστυνομία
-          post_box: Î¤Î±Ï\87Ï\85δÏ\81ομική Î¸Ï\85Ï\81ίδα
+          post_box: Î\93Ï\81αμμαÏ\84οκιβÏ\8eÏ\84ιο
           post_office: Ταχυδρομείο
           prison: Φυλακή
           pub: Παμπ
@@ -881,7 +882,7 @@ el:
           shelter: Καταφύγιο
           shower: Ντους
           social_centre: Κοινωνικό κέντρο
-          social_facility: Î\9aοινÏ\89νική ÎµÎ³ÎºÎ±Ï\84άÏ\83Ï\84αÏ\83η
+          social_facility: Î\9aοινÏ\89νική Î´Î¿Î¼Î®
           studio: Στούντιο
           swimming_pool: Πισίνα
           taxi: Ταξί
@@ -892,15 +893,15 @@ el:
           training: Εκπαιδευτήριο
           university: Πανεπιστήμιο
           vehicle_inspection: Επιθεώρηση οχήματος
-          vending_machine: Î\9cηÏ\87άνημα Î±Ï\85Ï\84Ï\8cμαÏ\84ηÏ\82 Ï\80Ï\8eληÏ\83ης
+          vending_machine: Î\91Ï\85Ï\84Ï\8cμαÏ\84οÏ\82 Ï\80Ï\89ληÏ\84ής
           veterinary: Κτηνιατρική Χειρουργική
-          village_hall: Î\91ίθοÏ\85Ï\83α Ï\87Ï\89Ï\81ιοÏ\8d
+          village_hall: Î\9aοινοÏ\84ική Î±Î¯Î¸Î¿Ï\85Ï\83α
           waste_basket: Καλάθι απορριμμάτων
-          waste_disposal: Î\94ιάθεÏ\83η Î±Ï\80οβλήτων
+          waste_disposal: Î\9aάδοÏ\82 Î±Ï\80οÏ\81Ï\81ιμάτων
           waste_dump_site: Χώρος απόρριψης απορριμάτων
           watering_place: Γούρνα
           water_point: Σημείο ανεφοδιασμού νερού
-          weighbridge: Î\93έÏ\86Ï\85Ï\81α Î¶Ï\85γοÏ\83Ï\84άθμιÏ\83ηÏ\82
+          weighbridge: Î\93εÏ\86Ï\85Ï\81οÏ\80λάÏ\83Ï\84ιγγα
           "yes": Υποδομή
         boundary:
           aboriginal_lands: Περιοχή Αυτόχθονων
@@ -909,30 +910,30 @@ el:
           national_park: Εθνικό πάρκο
           political: Σύνορο εκλογικής περιφέρειας
           protected_area: Προστατευόμενη περιοχή
-          "yes": Î£Ï\8dνοÏ\81ο
+          "yes": Î\8cÏ\81ιο
         bridge:
           aqueduct: Υδραγωγείο
-          boardwalk: Î ÎµÎ¶Î¿Î´Ï\81Ï\8cμιο
+          boardwalk: Î\9eÏ\8dλινο Î¼Î¿Î½Î¿Ï\80άÏ\84ι
           suspension: Κρεμαστή γέφυρα
           swing: Αιωρούμενη γέφυρα
-          viaduct: Î\9fδογέφυρα
+          viaduct: Î\9aοιλαδογέφυρα
           "yes": Γέφυρα
         building:
           apartment: Διαμέρισμα
           apartments: Διαμερίσματα
-          barn: Î£Ï\84αÏ\8dλος
+          barn: Î\91Ï\87Ï\85Ï\81Ï\8eνας
           bungalow: Μπάνγκαλοου
-          cabin: Î\9aαμÏ\80ίνα
+          cabin: Î\9aαλÏ\8dβα
           chapel: Παρεκκλήσι
           church: Εκκλησία
-          civic: Î Î¿Î»Î¹τικό κτήριο
-          college: Î Î±Î½ÎµÏ\80ιÏ\83Ï\84ημιακÏ\8c ÎºÏ\84ήÏ\81ιο
+          civic: Î\94ημοÏ\84ικÏ\8c/αÏ\83τικό κτήριο
+          college: Î\9aÏ\84ήÏ\81ιο Î\9cεÏ\84αλÏ\85κειακήÏ\82 Î\95κÏ\80αίδεÏ\85Ï\83ηÏ\82
           commercial: Εμπορικό κτήριο
           construction: Κτήριο υπό κατασκευή
-          cowshed: Î\91γελαδοστάσιο
-          detached: Μεζονέτα
+          cowshed: Î\92οÏ\85στάσιο
+          detached: Mονοκατοικία
           dormitory: Κοιτώνας
-          duplex: Î\9cεζονέÏ\84α
+          duplex: Î\94ιÏ\80λοκαÏ\84οικία
           farm: Αγροικία
           farm_auxiliary: Βοηθητική αγροικία
           garage: Γκαράζ
@@ -940,30 +941,30 @@ el:
           greenhouse: Θερμοκήπιο
           hangar: Υπόστεγο αεροσκαφών
           hospital: Κτήριο Νοσοκομείου
-          hotel: Î\9eενοδοÏ\87είο
+          hotel: Î\9aÏ\84ήÏ\81ιο Î\9eενοδοÏ\87είοÏ\85
           house: Σπίτι
           houseboat: Πλωτή κατοικία
           hut: Καλύβα
           industrial: Βιομηχανικό Κτήριο
           kindergarten: Κτήριο νηπιαγωγείου
-          manufacture: Î\95Ï\81γοÏ\83Ï\84άÏ\83ιο Î\9aαÏ\84αÏ\83κεÏ\85ής
+          manufacture: Î\9aÏ\84ήÏ\81ιο Î\9cεÏ\84αÏ\80οίηÏ\83ης
           office: Κτήριο Γραφείων
           public: Δημόσιο κτήριο
-          residential: Î Î¿Î»Ï\85καÏ\84οικία
+          residential: Î\9aÏ\84ήÏ\81ιο Î\9aαÏ\84οικιÏ\8eν
           retail: Κτήριο λιανικής
           roof: Οροφή
           ruins: Ερειπωμένο Κτήριο
           school: Σχολικό Κτήριο
           semidetached_house: Ημιμονοκατοικία
           service: Κτήριο Υπηρεσιών
-          shed: Î¥Ï\80Ï\8cÏ\83Ï\84εγο
+          shed: Î\91Ï\80οθήκη
           stable: Στάβλος
           static_caravan: Τροχόσπιτο
           sty: Χοιροστάσιο
           temple: Κτήριο ναού
           terrace: Σειρά όμοιων σπιτιών
           train_station: Κτήριο Σιδηροδρομικού Σταθμού
-          university: Î\9aÏ\84ήÏ\81ιο Î Î±Î½ÎµÏ\80ιÏ\83Ï\84ημίοÏ\85
+          university: Î Î±Î½ÎµÏ\80ιÏ\83Ï\84ημιακÏ\8c ÎºÏ\84ήÏ\81ιο
           warehouse: Αποθήκη
           "yes": Κτήριο
         club:
@@ -975,7 +976,7 @@ el:
           blacksmith: Σιδηρουργός
           brewery: Ζυθοποιείο
           carpenter: Ξυλουργός
-          caterer: Εστιάτορας
+          caterer: Catering
           confectionery: Εργαστήριο Ζαχαροπλαστικής
           dressmaker: Μοδίστρα
           electrician: Ηλεκτρολόγος
@@ -983,9 +984,9 @@ el:
           gardener: Κηπουρός
           glaziery: Υαλουργείο
           handicraft: Χειροκατασκευές
-          hvac: Î\9cηÏ\87ανοÏ\85Ï\81γείο HVAC
+          hvac: Î¤ÎµÏ\87νικÏ\8cÏ\82 Î\95γκαÏ\84αÏ\83Ï\84άÏ\83εÏ\89ν Î¨Ï\8dξηÏ\82\91εÏ\81ιÏ\83μοÏ\8d\9aλιμαÏ\84ιÏ\83μοÏ\8d
           metal_construction: Κατασκευαστής Μετάλλων
-          painter: Î\96Ï\89γÏ\81άÏ\86ος
+          painter: Î\95λαιοÏ\87Ï\81Ï\89μαÏ\84ιÏ\83Ï\84ής
           photographer: Φωτογράφος
           plumber: Υδραυλικός
           roofer: Στεγαστής
@@ -1010,9 +1011,9 @@ el:
           suction_point: Σημείο Άντλησης Έκτακτης Ανάγκης
           water_tank: Δεξαμενή νερού έκτακτης ανάγκης
         highway:
-          abandoned: Î\95γκαÏ\84αλελειμμένοÏ\82 Î±Ï\85Ï\84οκινηÏ\84Ï\8cδÏ\81ομος
+          abandoned: Î\95γκαÏ\84αλελειμμένη Î¿Î´Ï\8cς
           bridleway: Μονοπάτι για άλογα
-          bus_guideway: Î\9aαθοÏ\81ιÏ\83μένη Î»Ï\89Ï\81ίδα λεωφορείου
+          bus_guideway: Î\9bÏ\89Ï\81ίδα ÎºÎ±Î¸Î¿Î´Î·Î³Î¿Ï\8dμενοÏ\85 λεωφορείου
           bus_stop: Στάση λεωφορείου
           construction: Δρόμος υπό κατασκευή
           corridor: Διάδρομος
@@ -1020,14 +1021,14 @@ el:
           cycleway: Ποδηλατόδρομος
           elevator: Ανελκυστήρας
           emergency_access_point: Σημείο πρόσβασης έκτακτης ανάγκης
-          emergency_bay: Î\9aÏ\8cλÏ\80ος έκτακτης ανάγκης
+          emergency_bay: Î§Ï\8eÏ\81οÏ\82 Ï\83Ï\84άÏ\83ης έκτακτης ανάγκης
           footway: Μονοπάτι
-          ford: Î\9aοιÏ\84Ï\8cÏ\83Ï\84Ï\81Ï\89Ï\83η
-          give_way: Î\94Ï\8eÏ\83Ï\84ε Ï\84ο Ï\83ήμα
-          living_street: Î\9cεικÏ\84Ï\8cÏ\82 Î´Ï\81Ï\8cμος
+          ford: Î Ï\8cÏ\81οÏ\82
+          give_way: Î Î¹Î½Î±ÎºÎ¯Î´Î± Ï\80αÏ\81αÏ\87Ï\8eÏ\81ηÏ\83ηÏ\82 Ï\80Ï\81οÏ\84εÏ\81αιÏ\8cÏ\84ηÏ\84αÏ\82
+          living_street: Î\9fδÏ\8cÏ\82 Î®Ï\80ιαÏ\82 ÎºÏ\85κλοÏ\86οÏ\81ίας
           milestone: Χιλιομετρικό Σημείο
           motorway: Αυτοκινητόδρομος
-          motorway_junction: Î\94ιαÏ\83Ï\84αÏ\8dÏ\81Ï\89Ï\83η αυτοκινητόδρομου
+          motorway_junction: Î\9aÏ\8cμβοÏ\82 αυτοκινητόδρομου
           motorway_link: Αυτοκινητόδρομος
           passing_place: Πέρασμα
           path: Διαδρομή
@@ -1036,7 +1037,7 @@ el:
           primary: Κύρια οδός
           primary_link: Κύρια οδός
           proposed: Προτεινόμενος δρόμος
-          raceway: Î\91Ï\85Ï\84οκινηÏ\84οδÏ\81Ï\8cμιο
+          raceway: Î Î¯Ï\83Ï\84α Î±Î³Ï\8eνÏ\89ν Î±Ï\85Ï\84οκινήÏ\84Ï\89ν
           residential: Δρόμος σε κατοικημένη περιοχή
           rest_area: Περιοχή ανάπαυσης
           road: Δρόμος
@@ -1047,17 +1048,17 @@ el:
           speed_camera: Κάμερα ταχύτητας
           steps: Σκαλοπάτια
           stop: Πινακίδα στοπ
-          street_lamp: Î\9bάμÏ\80α δρόμου
+          street_lamp: Î¦Ï\89Ï\84ιÏ\83Ï\84ικÏ\8c δρόμου
           tertiary: Τριτεύων δρόμος
           tertiary_link: Τριτεύων δρόμος
           track: Αγροτικός / Δασικός δρόμος
           traffic_mirror: Καθρέφτης κυκλοφορίας
-          traffic_signals: Î£Î®Î¼Î±Ï\84α ÎºÏ\85κλοÏ\86οÏ\81ίας
+          traffic_signals: Î¦Ï\89Ï\84εινοί Ï\83ημαÏ\84οδÏ\8cÏ\84ες
           trailhead: Άκρη μονοπατιού
           trunk: Εθνική οδός
           trunk_link: Εθνική οδός
           turning_circle: Κύκλος Αναστροφής
-          turning_loop: Î\9aÏ\85κλικÏ\8cÏ\82 Î\9aÏ\8cμβος
+          turning_loop: Î\9aÏ\85κλικÏ\8cÏ\82 ÎºÏ\8cμβοÏ\82 Î±Î½Î±Ï\83Ï\84Ï\81οÏ\86ής
           unclassified: Αταξινόμητη οδός
           "yes": Δρόμος
         historic:
@@ -1072,7 +1073,7 @@ el:
           castle: Κάστρο
           charcoal_pile: Ιστορική Στιβάδα Κάρβουνου
           church: Εκκλησία
-          city_gate: Î\95ίÏ\83οδοÏ\82 της πόλης
+          city_gate: Î Ï\8dλη της πόλης
           citywalls: Τείχη της πόλης
           fort: Οχυρό
           heritage: Μνημείο πολιτιστικής κληρονομιάς
@@ -1080,24 +1081,30 @@ el:
           house: Σπίτι
           manor: Έπαυλη
           memorial: Μνημείο
-          milestone: Ιστορικό Χιλιομετρικό Σημείο
+          milestone: Ιστορικό χιλιομετρικό σημείο
           mine: Ορυχείο
           mine_shaft: Φρεάτιο ορυχείου
           monument: Μνημείο
-          railway: Ιστορικός Σιδηρόδρομος
+          railway: Ιστορικός σιδηρόδρομος
           roman_road: Ρωμαϊκός δρόμος
           ruins: Ερείπιο
-          rune_stone: Î Î­Ï\84Ï\81α Î¼Îµ Î³Ï\81άμμαÏ\84α Ï\81οÏ\85νικοÏ\8d Î±Î»Ï\86αβήÏ\84οÏ\85
+          rune_stone: Î¡Î¿Ï\85νική Î»Î¯Î¸Î¿Ï\82
           stone: Πέτρα
           tomb: Τάφος
           tower: Πύργος
-          wayside_chapel: Παρεκκλήσι δίπλα στο δρόμο
-          wayside_cross: Î£Ï\84αÏ\85Ï\81Ï\8cÏ\82 Ï\83Ï\84ην Î¬ÎºÏ\81η Ï\84οÏ\85 Î´Ï\81Ï\8cμοÏ\85
-          wayside_shrine: Î\95ικονοÏ\83Ï\84άÏ\83ιο Ï\83Ï\84ην Î¬ÎºÏ\81η Ï\84οÏ\85 Î´Ï\81Ï\8cμοÏ\85
+          wayside_chapel: Παρόδιο παρεκκλήσι
+          wayside_cross: Î Î±Ï\81Ï\8cδιοÏ\82 Ï\83Ï\84αÏ\85Ï\81Ï\8cÏ\82
+          wayside_shrine: Î Î±Ï\81Ï\8cδιο ÎµÎ¹ÎºÎ¿Î½Î¿Ï\83Ï\84άÏ\83ι
           wreck: Ναυάγιο
           "yes": Ιστορικός Χώρος
         information:
+          guidepost: Οδοδείκτης
+          board: Πληροφοριακός πίνακας
           map: Χάρτης
+          office: Τουριστικό Γραφείο
+          terminal: Τερματικό πληροφοριών
+          sign: Πληροφοριακή πινακίδα
+          stele: Πληροφοριακή στήλη
         junction:
           "yes": Διασταύρωση
         landuse:
@@ -1108,8 +1115,8 @@ el:
           cemetery: Κοιμητήριο
           commercial: Εμπορική περιοχή
           conservation: Περιοχή Διατήρησης
-          construction: Î§Ï\8eÏ\81οÏ\82 Î\9aαÏ\84αÏ\83κεÏ\85ήÏ\82
-          farmland: Î\93εÏ\89Ï\81γική Î³η
+          construction: Î\95Ï\81γοÏ\84άξιο
+          farmland: Î\9aαλλιεÏ\81γήÏ\83ιμη Î­ÎºÏ\84αÏ\83η
           farmyard: Αγρόκτημα
           forest: Δάσος
           garages: Κλειστοί χώροι στάθμευσης
@@ -1130,24 +1137,24 @@ el:
           reservoir_watershed: Δεξαμενή απορροής υδάτων
           residential: Κατοικημένη περιοχή
           retail: Περιοχή Λιανικής
-          village_green: Î Ï\81άÏ\83ινο Ï\87Ï\89Ï\81ιÏ\8c
+          village_green: Î§Ï\8eÏ\81οÏ\82 Ï\80Ï\81αÏ\83ίνοÏ\85 Ï\84οÏ\85 Ï\87Ï\89Ï\81ιοÏ\8d
           vineyard: Αμπελώνας
           "yes": Χρήση γης
         leisure:
-          adult_gaming_centre: Î\9aένÏ\84Ï\81ο Î Î±Î¹Ï\87νιδιÏ\8eν Î³Î¹Î± Î\95νήλικεÏ\82
+          adult_gaming_centre: Î\9aένÏ\84Ï\81ο Î¤Ï\85Ï\87εÏ\81Ï\8eν Î Î±Î¹Î³Î½Î¯Ï\89ν
           amusement_arcade: Ψυχαγωγικά παιχνίδια
           bandstand: Εξέδρα Συναυλιών
-          beach_resort: Î Î±Ï\81αθαλάÏ\83Ï\83ιο Î¸Î­Ï\81εÏ\84Ï\81ο
+          beach_resort: Î\9fÏ\81γανÏ\89μένη Ï\80αÏ\81αλία
           bird_hide: Καταφύγιο πουλιών
           bleachers: Εξέδρα χωρίς στέγαστρο
           bowling_alley: Αίθουσα μπόουλινγκ
           common: Κοινόχρηστη γη
-          dance: Αίθουσα χωρού
+          dance: Αίθουσα χορού
           dog_park: Πάρκο σκύλων
-          firepit: Λάκκος Φωτιάς
+          firepit: Λάκκος φωτιάς
           fishing: Αλιευτική περιοχή
-          fitness_centre: Î\9aένÏ\84Ï\81ο Î±Î´Ï\85ναÏ\84ίÏ\83μαÏ\84οÏ\82
-          fitness_station: Î\93υμναστήριο
+          fitness_centre: Î\93Ï\85μναÏ\83Ï\84ήÏ\81ιο
+          fitness_station: Î¥Ï\80αίθÏ\81ιο Î³υμναστήριο
           garden: Κήπος
           golf_course: Γήπεδο γκολφ
           horse_riding: Ιππικός Όμιλος
@@ -1157,8 +1164,8 @@ el:
           nature_reserve: Καταφύγιο της φύσης
           outdoor_seating: Υπαίθρια καθίσματα
           park: Πάρκο
-          picnic_table: Î¤Ï\81αÏ\80έζι Ï\80ικνικ
-          pitch: Γήπεδο αθλητισμού
+          picnic_table: Î¤Ï\81αÏ\80έζι Ï\80ικνίκ
+          pitch: Γήπεδο
           playground: Παιδική χαρά
           recreation_ground: Χώρος αναψυχής
           resort: Θέρετρο
@@ -1170,12 +1177,14 @@ el:
           track: Στίβος
           water_park: Υδάτινο πάρκο
           "yes": Ψυχαγωγία
+        lock:
+          "yes": Δεξαμενή ανύψωσης
         man_made:
           adit: Οριζόντια είσοδος σε ορυχείο
           advertising: Διαφήμιση
           antenna: Κεραία
           avalanche_protection: Προστασία χιονοστιβάδας
-          beacon: φάρος
+          beacon: Φάρος
           beam: Ακτίνα
           beehive: Κυψέλη
           breakwater: Κυματοθραύστης
@@ -1183,8 +1192,8 @@ el:
           bunker_silo: Οχυρό
           cairn: Σωρός από πέτρες
           chimney: Καμινάδα
-          clearcut: Î\9eέφωτο
-          communications_tower: Πύργος Επικοινωνιών
+          clearcut: Î\91Ï\80οÏ\88ιλÏ\89μένο Î¾έφωτο
+          communications_tower: Πύργος τηλεπικοινωνιών
           crane: Γερανός
           cross: Σταυρός
           dolphin: Δέστρα
@@ -1200,8 +1209,8 @@ el:
           mine: Ορυχείο
           mineshaft: Φρεάτιο ορυχείου
           monitoring_station: Σταθμός παρακολούθησης
-          petroleum_well: Î\93εÏ\8eÏ\84Ï\81ηÏ\83η Î ÎµÏ\84Ï\81ελαίοÏ\85
-          pier: Î\91Ï\80οβάθÏ\81α
+          petroleum_well: Î ÎµÏ\84Ï\81ελαιοÏ\80ηγή
+          pier: Î Ï\81οβλήÏ\84α
           pipeline: Αγωγός
           pumping_station: Αντλιοστάσιο
           reservoir_covered: Σκεπαστή Δεξαμενή
@@ -1219,8 +1228,8 @@ el:
           water_tap: Βρύση
           water_tower: Πύργος νερού
           water_well: Πηγάδι
-          water_works: Î\88Ï\81γα Î¥Î´Î¬Ï\84Ï\89ν
-          windmill: Î\91εÏ\81όμυλος
+          water_works: Î\94ιÏ\85λιÏ\83Ï\84ήÏ\81ιο Î½ÎµÏ\81οÏ\8d
+          windmill: Î\91νεμόμυλος
           works: Εργοστάσιο
           "yes": Τεχνητό
         military:
@@ -1233,8 +1242,8 @@ el:
         mountain_pass:
           "yes": Ορεινό πέρασμα
         natural:
-          atoll: Î\9aοÏ\81αλλιογενέÏ\82 Î½Î·Ï\83ί
-          bare_rock: Î\93Ï\85μνÏ\8cÏ\82 Î\92ράχος
+          atoll: Î\91Ï\84Ï\8cλη
+          bare_rock: Î\93Ï\85μνÏ\8cÏ\82 Î²ράχος
           bay: Κόλπος
           beach: Παραλία
           cape: Ακρωτήριο
@@ -1243,20 +1252,20 @@ el:
           coastline: Ακτογραμμή
           crater: Κρατήρας
           dune: Αμμόλοφος
-          fell: Î\9bÏ\8cÏ\86οÏ\82
+          fell: Î\9fικοÏ\83Ï\8dÏ\83Ï\84ημα Ï\80άνÏ\89 Î±Ï\80Ï\8c Ï\84ην Î´ÎµÎ½Î´Ï\81ογÏ\81αμμή
           fjord: Φιόρδ
           forest: Δάσος
           geyser: Θερμοπίδακας
           glacier: Παγετώνας
           grassland: Λιβάδι
-          heath: Î\91καλλιέÏ\81γηÏ\84η Î³Î·
+          heath: Î§ÎµÏ\81Ï\83Ï\8cÏ\84οÏ\80οÏ\82
           hill: Λόφος
           hot_spring: Θερμές Πηγές
           island: Νησί
           isthmus: Ισθμός
           land: Ξηρά
           marsh: Βάλτος
-          moor: Î\94έÏ\83Ï\84Ï\81α
+          moor: Î§ÎµÏ\81Ï\83Ï\8cÏ\84οÏ\80οÏ\82
           mud: Λάσπη
           peak: Κορυφή
           peninsula: Χερσόνησος
@@ -1298,21 +1307,21 @@ el:
           insurance: Ασφαλιστικό γραφείο
           it: Γραφείο πληροφορικής
           lawyer: Δικηγόρος
-          logistics: Î\9bογιÏ\83Ï\84ικÏ\8c Î³Ï\81αÏ\86είο
+          logistics: Î\93Ï\81αÏ\86είο Logistics
           newspaper: Γραφείο εφημερίδας
           ngo: Γραφείο ΜΚΟ
           notary: Συμβολαιογράφος
           religion: Θρησκευτικό γραφείο
           research: Ερευνητικό γραφείο
-          tax_advisor: Φορολογικός σύμβουλος
+          tax_advisor: Φοροτεχνικός σύμβουλος
           telecommunication: Γραφείο τηλεπικοινωνιών
           travel_agent: Ταξιδιωτικό πρακτορείο
           "yes": Γραφείο
         place:
-          allotments: Î\9bαÏ\87ανÏ\8cκηÏ\80οι
+          allotments: Î Î±Ï\81αÏ\87Ï\8eÏ\81ηÏ\83η Î³Î·Ï\82
           archipelago: Αρχιπέλαγος
           city: Πόλη
-          city_block: Οικοδομικό τετράγωνο πόλης
+          city_block: Οικοδομικό τετράγωνο
           country: Χώρα
           county: Κομητεία
           farm: Αγρόκτημα
@@ -1341,33 +1350,33 @@ el:
           abandoned: Εγκαταλελειμμένος σιδηρόδρομος
           buffer_stop: Ταμπονιέρα
           construction: Σιδηρόδρομος υπό κατασκευή
-          disused: Î£Î¹Î´Î·Ï\81Ï\8cδÏ\81ομοÏ\82 ÎµÎºÏ\84Ï\8cÏ\82 Ï\87Ï\81ήÏ\83ης
-          funicular: Î¤ÎµÎ»ÎµÏ\86εÏ\81ίκ Ï\83ε Ï\81άγες
-          halt: Σταθμός τραίνου
+          disused: Î\91νενεÏ\81γÏ\8cÏ\82 Ï\83ιδηÏ\81Ï\8cδÏ\81ομος
+          funicular: Î\9aαλÏ\89διοκίνηÏ\84οÏ\82 Ï\83ιδηÏ\81Ï\8cδÏ\81ομος
+          halt: Σιδηροδρομική στάση
           junction: Σιδηροδρομικός κόμβος
           level_crossing: Ισόπεδη διάβαση
           light_rail: Ελαφρύς σιδηρόδρομος
           miniature: Σιδηρόδρομος μινιατούρα
           monorail: Μονοτρόχιος σιδηρόδρομος
-          narrow_gauge: Î£Î¹Î´Î·Ï\81Ï\8cδÏ\81ομοÏ\82 Ï\83Ï\84ενήÏ\82 Ï\84Ï\81οÏ\87ιάς
-          platform: Î Î»Î±Ï\84Ï\86Ï\8cÏ\81μα Ï\83ιδηÏ\81οδÏ\81Ï\8cμοÏ\85
+          narrow_gauge: Î£Î¹Î´Î·Ï\81Ï\8cδÏ\81ομοÏ\82 Ï\83Ï\84ενοÏ\8d ÎµÏ\8dÏ\81οÏ\85ς
+          platform: Î£Î¹Î´Î·Ï\81οδÏ\81ομική Ï\80λαÏ\84Ï\86Ï\8cÏ\81μα
           preserved: Διατηρητέος σιδηρόδρομος
           proposed: Προτεινόμενος σιδηρόδρομος
           rail: Ράγες
           spur: Παρακλάδι σιδηροδρόμου
           station: Σιδηροδρομικός σταθμός
-          stop: Î£Î¹Î´Î·Ï\81οδÏ\81ομική Ï\83Ï\84άÏ\83η
+          stop: Î£Î·Î¼ÎµÎ¯Î¿ Ï\83ιδηÏ\81οδÏ\81ομικήÏ\82 Ï\83Ï\84άÏ\83ηÏ\82
           subway: Mετρό
           subway_entrance: Είσοδος μετρό
-          switch: Σιδηροδρομικά σημεία
+          switch: Σιδηροδρομικό κλειδί
           tram: Γραμμή τραμ
           tram_stop: Στάση τραμ
-          turntable: Περιστροφική πλάκα ραγών
+          turntable: Περιστροφική πλάκα
           yard: Σιδηροδρομικός Σταθμός Διαλογής
         shop:
           agrarian: Κατάστημα Αγροτικών Προμηθειών
-          alcohol: Î\95κÏ\84Ï\8cÏ\82 Î¬Î´ÎµÎ¹Î±Ï\82
-          antiques: Î\91νÏ\84ίκεÏ\82
+          alcohol: Î\9aάβα
+          antiques: Î Î±Î»Î±Î¹Î¿Ï\80Ï\89λείο
           appliance: Κατάστημα Λευκών Συσκευών
           art: Κατάστημα τέχνης
           baby_goods: Βρεφικά είδη
@@ -1375,62 +1384,62 @@ el:
           bakery: Φούρνος
           bathroom_furnishing: Εξοπλισμός μπάνιου
           beauty: Σαλόνι ομορφιάς
-          bed: Î\9aαÏ\84άÏ\83Ï\84ημα Î\9aλινοσκεπασμάτων
+          bed: Î\9aαÏ\84άÏ\83Ï\84ημα Îºλινοσκεπασμάτων
           beverages: Κατάστημα ποτών
           bicycle: Κατάστημα ποδηλάτων
-          bookmaker: Î Ï\81άκÏ\84οÏ\81αÏ\82 Ï\83Ï\84οιÏ\87ημάÏ\84Ï\89ν
+          bookmaker: Î£Ï\84οιÏ\87ημαÏ\84ικÏ\8c Ï\80Ï\81ακÏ\84οÏ\81είο
           books: Βιβλιοπωλείο
           boutique: Μπουτίκ
           butcher: Κρεοπωλείο
-          car: Î\9aαÏ\84άÏ\83Ï\84ημα αυτοκινήτων
-          car_parts: Î\95ξαÏ\81Ï\84ήμαÏ\84α αυτοκινήτων
+          car: Î\91νÏ\84ιÏ\80Ï\81οÏ\83Ï\89Ï\80εία αυτοκινήτων
+          car_parts: Î\91νÏ\84αλλακÏ\84ικά αυτοκινήτων
           car_repair: Συνεργείο αυτοκινήτων
           carpet: Κατάστημα χαλιών
           charity: Φιλανθρωπικό κατάστημα
           cheese: Τυροπωλείο
-          chemist: Î§Î·Î¼Î¹ÎºÏ\8cÏ\82
+          chemist: Î\9dÏ\84Ï\81ογκεÏ\81ί
           chocolate: Σοκολατερί
           clothes: Κατάστημα ρούχων
-          coffee: Καφετέρια
+          coffee: Καφεκοπτείο
           computer: Κατάστημα υπολογιστών
-          confectionery: Î\96αÏ\87αÏ\81οÏ\80λαÏ\83Ï\84ική
-          convenience: Î Î±Î½Ï\84οÏ\80Ï\89λείο
-          copyshop: Î\9aαÏ\84άÏ\83Ï\84ημα Ï\86Ï\89Ï\84οανÏ\84ιγÏ\81άÏ\86Ï\89ν
+          confectionery: Î\9aαÏ\84άÏ\83Ï\84ημα Î¶Î±Ï\87αÏ\81Ï\89Ï\84Ï\8eν
+          convenience: Î¨Î¹Î»Î¹ÎºÎ±Ï\84ζίδικο
+          copyshop: Î¦Ï\89Ï\84οÏ\84Ï\85Ï\80είο
           cosmetics: Κατάστημα καλλυντικών
-          craft: Î\9aαÏ\84άÏ\83Ï\84ημα Î\95ιδÏ\8eν Î§ειροτεχνίας
-          curtain: Î\9aαÏ\84άÏ\83Ï\84ημα ÎºÎ¿Ï\85Ï\81Ï\84ίνÏ\89ν
-          dairy: Î\9aαÏ\84άÏ\83Ï\84ημα Î³Î±Î»Î±ÎºÏ\84οκομικÏ\8eν
+          craft: Î\9aαÏ\84άÏ\83Ï\84ημα ÎµÎ¹Î´Ï\8eν Ï\87ειροτεχνίας
+          curtain: Î\9aαÏ\84άÏ\83Ï\84ημα ÎºÎ¿Ï\85Ï\81Ï\84ινÏ\8eν
+          dairy: Î\93αλακÏ\84οÏ\80Ï\89λείο
           deli: Ντελικατέσεν
           department_store: Πολυκατάστημα
           discount: Εκπτωτικό κατάστημα
           doityourself: Κατάστημα Φτιάξτο μόνος σου
-          dry_cleaning: Στεγνό καθάρισμα
+          dry_cleaning: Στεγνοκαθαριστήριο
           e-cigarette: Κατάστημα ηλεκτρονικών τσιγάρων
           electronics: Κατάστημα ηλεκτρονικών
           erotic: Κατάστημα ερωτικών ειδών
-          estate_agent: Î\9aÏ\84ημαÏ\84ομεÏ\83ίÏ\84ηÏ\82
+          estate_agent: Î\9aÏ\84ημαÏ\84ομεÏ\83ιÏ\84ικÏ\8c Î³Ï\81αÏ\86είο
           fabric: Κατάστημα υφασμάτων
           farm: Γεωργικά εφόδια
           fashion: Κατάστημα μόδας
           fishing: Κατάστημα ειδών αλιείας
-          florist: Î\91νθοÏ\80Ï\8eληÏ\82
+          florist: Î\91νθοÏ\80Ï\89λείο
           food: Κατάστημα τροφίμων
-          frame: Î\9aαÏ\84άÏ\83Ï\84ημα Î\9aοÏ\81νίζÏ\89ν
-          funeral_directors: Γραφείο κηδειών
-          furniture: Î\88Ï\80ιÏ\80λα
+          frame: Î\9aαÏ\84άÏ\83Ï\84ημα ÎºÎ¿Ï\81νιζÏ\8eν
+          funeral_directors: Γραφείο τελετών
+          furniture: Î\9aαÏ\84άÏ\83Ï\84ημα ÎµÏ\80ίÏ\80λÏ\89ν
           garden_centre: Κέντρο κήπου
-          gas: Κατάστημα Υγραερίου
+          gas: Κατάστημα υγραερίου
           general: Παντοπωλείο
           gift: Κατάστημα δώρων
-          greengrocer: Î\9cανάβηÏ\82
-          grocery: Î\9fÏ\80Ï\89Ï\81οÏ\80Ï\89λείο
+          greengrocer: Î\9fÏ\80Ï\89Ï\81οÏ\80Ï\89λείο
+          grocery: Î\9cÏ\80ακάλικο
           hairdresser: Κομμωτήριο
           hardware: Κατάστημα με χρώματα-σιδηρικά
-          health_food: Κατάστημα Υγιεινών Τροφίμων
+          health_food: Κατάστημα υγιεινών τροφίμων
           hearing_aids: Βοηθήματα ακοής
           herbalist: Βοτανολόγος
           hifi: Κατάστημα Hi-Fi
-          houseware: Î\9cαγαζί Î¼Îµ Î¿Î¹ÎºÎ¹Î±ÎºÎ¬ ÎµÎ¯Î´Î·
+          houseware: Î\9aαÏ\84άÏ\83Ï\84ημα Î¿Î¹ÎºÎ¹Î±ÎºÏ\8eν ÎµÎ¹Î´Ï\8eν
           ice_cream: Παγωτατζίδικο
           interior_decoration: Διακόσμηση εσωτερικού χώρου
           jewelry: Κοσμηματοπωλείο
@@ -1438,7 +1447,7 @@ el:
           kitchen: Μαγαζί κουζινών
           laundry: Πλυντήριο
           locksmith: Κλειδαράς
-          lottery: Î\9bοÏ\84αÏ\81ία
+          lottery: Î\9bαÏ\87ειοÏ\80Ï\89λείο
           mall: Εμπορικό κέντρο
           massage: Μασάζ
           medical_supply: Κατάστημα ιατρικών προμηθειών
@@ -1455,24 +1464,24 @@ el:
           outdoor: Υπαίθριο κατάστημα
           paint: Χρωματοπωλείο
           pastry: Ζαχαροπλαστείο
-          pawnbroker: Î\95νεÏ\87Ï\85Ï\81οδανειÏ\83Ï\84ήÏ\82
+          pawnbroker: Î\95νεÏ\87Ï\85Ï\81οδανειÏ\83Ï\84ήÏ\81ιο
           perfumery: Αρωματοπωλείο
           pet: Κατάστημα κατοικίδιων
           pet_grooming: Περιποίηση κατοικίδιων ζώων
           photo: Φωτογραφείο
-          seafood: Î\98αλαÏ\83Ï\83ινÏ\8c Ï\86αγηÏ\84Ï\8c
+          seafood: Î\99Ï\87θÏ\85οÏ\80Ï\89λείο
           second_hand: Κατάστημα μεταχειρισμένων
           sewing: Ραπτοπωλείο
           shoes: Κατάστημα υποδημάτων
           sports: Κατάστημα αθλητικών
-          stationery: Î\9aαÏ\84άÏ\83Ï\84ημα Ï\87αÏ\81Ï\84ικÏ\8eν/ειδÏ\8eν Î³Ï\81αÏ\86είοÏ\85
+          stationery: Î§Î±Ï\81Ï\84οÏ\80Ï\89λείο
           storage_rental: Ενοικιαζόμενος Χώρος Αποθήκευσης
           supermarket: Σουπερμάρκετ
           tailor: Ράφτης
-          tattoo: Î\9aαÏ\84άÏ\83Ï\84ημα Î¤Î±Ï\84οÏ\85άζ
-          tea: Κατάστημα για τσάι
-          ticket: Î\9cαγαζί εισιτηρίων
-          tobacco: Î\9cαγαζί Ï\80Ï\81οÏ\8aÏ\8cνÏ\84Ï\89ν ÎºÎ±Ï\80νοÏ\8d
+          tattoo: Î¤Î±Ï\84οÏ\85αÏ\84ζίδικο
+          tea: Κατάστημα τσαγιού
+          ticket: Î\9aαÏ\84άÏ\83Ï\84ημα εισιτηρίων
+          tobacco: Î\9aαÏ\80νοÏ\80Ï\89λείο
           toys: Κατάστημα παιχνιδιών
           travel_agency: Ταξιδιωτικό πρακτορείο
           tyres: Κατάστημα ελαστικών
@@ -1484,36 +1493,41 @@ el:
           wine: Κατάστημα κρασιών
           "yes": Κατάστημα
         tourism:
-          alpine_hut: Î\91λÏ\80ικό καταφύγιο
-          apartment: Î\95ξοÏ\87ικÏ\8c Î´Î¹Î±Î¼Î­Ï\81ιÏ\83μα
+          alpine_hut: Î\9fÏ\81ειβαÏ\84ικό καταφύγιο
+          apartment: Î\95νοικιαζÏ\8cμενο Î´Ï\89μάÏ\84ιο
           artwork: Έργο τέχνης
           attraction: Αξιοθέατο
           bed_and_breakfast: Ενοικιαζόμενα δωμάτια
           cabin: Τουριστική καμπίνα
-          camp_pitch: Î\9cέÏ\81οÏ\82 Î³Î¹Î± ÎºÎ±Ï\84αÏ\83κήνÏ\89Ï\83η
-          camp_site: Î§Ï\8eÏ\81οÏ\82 ÎºÎ±Ï\84αÏ\83κήνÏ\89Ï\83ηÏ\82
+          camp_pitch: Î§Ï\8eÏ\81οÏ\82 Ï\83κηνήÏ\82
+          camp_site: Î\9aάμÏ\80ινγκ
           caravan_site: Χώρος τροχόσπιτων
-          chalet: Î£Î±Î»Î­
+          chalet: Î\92ίλα
           gallery: Γκαλερί
           guest_house: Ξενώνας
-          hostel: Î\9eενÏ\8eναÏ\82
+          hostel: Î§Ï\8cÏ\83Ï\84ελ
           hotel: Ξενοδοχείο
           information: Πληροφορίες
           motel: Μοτέλ
           museum: Μουσείο
-          picnic_site: Î¤Î¿Ï\80οθεÏ\83ία Î±Î½Î±Ï\88Ï\85Ï\87ήÏ\82\86αγηÏ\84οÏ\8d
+          picnic_site: Î§Ï\8eÏ\81οÏ\82 Ï\80ικνίκ
           theme_park: Θεματικό πάρκο
-          viewpoint: Î Î±Ï\81αÏ\84ηÏ\81ηÏ\84ήÏ\81ιο
-          wilderness_hut: Î\95ξÏ\89Ï\84ική Î\9aαλÏ\8dβα
+          viewpoint: Î£Î·Î¼ÎµÎ¯Î¿ Î¼Îµ Î¸Î­Î±
+          wilderness_hut: Î\9aαÏ\84αÏ\86Ï\8dγιο Î±Î½Î¬Î³ÎºÎ·Ï\82
           zoo: Ζωολογικός κήπος
         tunnel:
           building_passage: Πέρασμα κτιρίου
-          culvert: Î\9fÏ\87εÏ\84ός
+          culvert: Î\91γÏ\89γός
           "yes": Σήραγγα
         water:
           lake: Λίμνη
           pond: Λιμνούλα
           reservoir: Ταμιευτήρας
+          basin: Λεκάνη νερού
+          fishpond: Λιμνούλα ψαριών
+          lagoon: Λιμνοθάλασσα
+          wastewater: Λύματα
+          lock: Δεξαμενή ανύψωσης
         waterway:
           artificial: Τεχνητή υδατοδιαδρομή
           boatyard: Ναυπηγείο
@@ -1523,21 +1537,21 @@ el:
           ditch: Χαντάκι
           dock: Αποβάθρα
           drain: Υπόνομος
-          lock: Î\9aλειδαÏ\81ιά
-          lock_gate: Î Ï\8dλη ÎºÎ±Î½Î±Î»Î¹Î¿Ï\8d
+          lock: Î\94εξαμενή Î±Î½Ï\8dÏ\88Ï\89Ï\83ηÏ\82
+          lock_gate: Î Ï\8dλη Î´ÎµÎ¾Î±Î¼ÎµÎ½Î®Ï\82 Î±Î½Ï\8dÏ\88Ï\89Ï\83ηÏ\82
           mooring: Αγκυροβόλι
           rapids: Χείμαρροι
           river: Ποτάμι
           stream: Ρέμα
-          wadi: Î¡Î­Î¼Î±
+          wadi: Î§ÎµÎ¯Î¼Î±Ï\81Ï\81οÏ\82
           waterfall: Καταρράκτης
           weir: Υδατοφράκτης
-          "yes": Î\9aανάλι
+          "yes": Î¥Î´Î±Ï\84οδιαδÏ\81ομή
       admin_levels:
         level2: Σύνορο χώρας
         level3: Σύνορο περιοχής
         level4: Σύνορο πολιτείας
-        level5: Σύνορο περιοχής
+        level5: Σύνορο περιφέρειας
         level6: Σύνορο κομητείας
         level7: Σύνορο δήμου
         level8: Σύνορο πόλης
@@ -1560,7 +1574,7 @@ el:
       states:
         ignored: Παραβλέφθηκε
         open: Άνοιγμα
-        resolved: Επιλυμένος
+        resolved: Επιλυμένο
     page:
       user_not_found: Ο χρήστης δεν υπάρχει
       issues_not_found: Δεν βρέθηκαν τέτοια ζητήματα
@@ -1632,18 +1646,18 @@ el:
           που αναφέρεται
       categories:
         diary_entry:
-          spam_label: Î\97 καταχώρηση ημερολογίου είναι/περιέχει σπαμ
-          offensive_label: Î\97 καταχώρηση ημερολογίου είναι άσεμνη/προσβλητική
-          threat_label: Î\97 καταχώρηση ημερολογίου περιέχει απειλή
+          spam_label: Î\91Ï\85Ï\84ή Î· καταχώρηση ημερολογίου είναι/περιέχει σπαμ
+          offensive_label: Î\91Ï\85Ï\84ή Î· καταχώρηση ημερολογίου είναι άσεμνη/προσβλητική
+          threat_label: Î\91Ï\85Ï\84ή Î· καταχώρηση ημερολογίου περιέχει απειλή
           other_label: Άλλο
         diary_comment:
-          spam_label: Î¤ο σχόλιο ημερολογίου είναι/περιέχει σπαμ
-          offensive_label: Î¤ο σχόλιο ημερολογίου είναι άσεμνο/προσβλητικό
-          threat_label: Î¤ο σχόλιο ημερολογίου περιέχει απειλή
+          spam_label: Î\91Ï\85Ï\84Ï\8c Ï\84ο σχόλιο ημερολογίου είναι/περιέχει σπαμ
+          offensive_label: Î\91Ï\85Ï\84Ï\8c Ï\84ο σχόλιο ημερολογίου είναι άσεμνο/προσβλητικό
+          threat_label: Î\91Ï\85Ï\84Ï\8c Ï\84ο σχόλιο ημερολογίου περιέχει απειλή
           other_label: Άλλο
         user:
-          spam_label: Î¤ο προφίλ χρήστη είναι/περιέχει σπαμ
-          offensive_label: Î¤ο προφίλ χρήστη είναι άσεμνο/προσβλητικό
+          spam_label: Î\91Ï\85Ï\84Ï\8c Ï\84ο προφίλ χρήστη είναι/περιέχει σπαμ
+          offensive_label: Î\91Ï\85Ï\84Ï\8c Ï\84ο προφίλ χρήστη είναι άσεμνο/προσβλητικό
           threat_label: Αυτό το προφίλ χρήστη περιέχει απειλή
           vandal_label: Αυτός ο χρήστης είναι βάνδαλος
           other_label: Άλλο
@@ -1658,7 +1672,7 @@ el:
   layouts:
     logo:
       alt_text: Λογότυπο OpenStreetMap
-    home: Î\94είξε Ï\84ο Ï\83Ï\80ίÏ\84ι Î¼Î¿Ï\85
+    home: Î\9cεÏ\84άβαÏ\83η Ï\83Ï\84η Ï\84οÏ\80οθεÏ\83ία Ï\83Ï\80ιÏ\84ιοÏ\8d
     logout: Αποσύνδεση
     log_in: Σύνδεση
     sign_up: Εγγραφή
@@ -1671,9 +1685,9 @@ el:
     user_diaries: Ημερολόγια χρηστών
     edit_with: Επεξεργασία με %{editor}
     intro_header: Καλώς ήρθατε στο OpenStreetMap!
-    intro_text: Το OpenStreetMap είναι χάρτης του κόσμου, που δημιουργήθηκε από ανθρώπους
-      σαν κι εσάς και είναι δωρεάν, υπό άδεια ελεύθερης χρήσης.
-    hosting_partners_2024_html: Η φιλοξενία υποστηρίζεται από %{fastly}, %{corpmembers}
+    intro_text: Το OpenStreetMap είναι ένας χάρτης του κόσμου, που δημιουργήθηκε από
+      ανθρώπους σαν κι εσάς και είναι δωρεάν για χρήση υπό άδεια ελεύθερης χρήσης.
+    hosting_partners_2024_html: Η φιλοξενία υποστηρίζεται από το %{fastly}, τα %{corpmembers}
       και άλλους %{partners}.
     partners_fastly: Fastly
     partners_corpmembers: εταιρικά μέλη του OSMF
@@ -1693,7 +1707,8 @@ el:
   user_mailer:
     diary_comment_notification:
       description: 'OpenStreetMap Καταχώριση Ημερολογίου #%{id}'
-      subject: '[OpenStreetMap] Ο χρήστης %{user} σχολίασε μια καταχώριση ημερολογίου'
+      subject: '[OpenStreetMap] {{GENDER:%{user}|Ο|Η}} χρήστης %{user} σχολίασε μια
+        καταχώριση ημερολογίου'
       hi: Γεια σας %{to_user},
       header: 'Ο %{from_user} έχει σχολιάσει την καταχώριση ημερολογίου στο OpenStreetMap
         με θέμα %{subject}:'
@@ -1708,30 +1723,32 @@ el:
     message_notification:
       subject: '[OpenStreetMap] %{message_title}'
       hi: Γεια σας %{to_user},
-      header: 'Ο χρήστης %{from_user} σάς έχει στείλει ένα μήνυμα μέσω του OpenStreetMap
-        με θέμα %{subject}:'
-      header_html: 'Ο χρήστης %{from_user} σάς έχει στείλει ένα μήνυμα μέσω του OpenStreetMap
-        με θέμα %{subject}:'
+      header: '{{GENDER:%{from_user}|Ο|Η}} χρήστης %{from_user} σάς έχει στείλει ένα
+        Î¼Î®Î½Ï\85μα Î¼Î­Ï\83Ï\89 Ï\84οÏ\85 OpenStreetMap Î¼Îµ Î¸Î­Î¼Î± %{subject}:'
+      header_html: '{{GENDER:%{from_user}|Ο|Η}} χρήστης %{from_user} σάς έχει στείλει
+        Î­Î½Î± Î¼Î®Î½Ï\85μα Î¼Î­Ï\83Ï\89 Ï\84οÏ\85 OpenStreetMap Î¼Îµ Î¸Î­Î¼Î± %{subject}:'
       footer: Μπορείτε επίσης να διαβάσετε το μήνυμα στο %{readurl} και να στείλετε
         μήνυμα στον συγγραφέα στο %{replyurl}
       footer_html: Μπορείτε επίσης να διαβάσετε το μήνυμα στο %{readurl} και να στείλετε
         μήνυμα στον συγγραφέα στο %{replyurl}
     friendship_notification:
       hi: Γεια σας %{to_user},
-      subject: '[OpenStreetMap] Ο χρήστης %{user} σας πρόσθεσε ως φίλο'
-      had_added_you: Ο χρήστης %{user} σας πρόσθεσε ως φίλο στο OpenStreetMap.
-      see_their_profile: Μπορείτε να δείτε το προφίλ του στο %{userurl}.
-      see_their_profile_html: Μπορείτε να δείτε το προφίλ του στο %{userurl}.
-      befriend_them: Μπορείτε επίσης να τους προσθέσετε ως φίλους στο %{befriendurl}.
-      befriend_them_html: Μπορείτε επίσης να τους προσθέσετε ως φίλους στο %{befriendurl}.
+      subject: '[OpenStreetMap] {{GENDER:%{user}|Ο|Η}} χρήστης %{user} σας πρόσθεσε
+        ως φίλο'
+      had_added_you: '{{GENDER:%{user}|Ο|Η}} χρήστης %{user} σας πρόσθεσε ως φίλο
+        στο OpenStreetMap.'
+      see_their_profile: Μπορείτε να δείτε το προφίλ του/της στο %{userurl}.
+      see_their_profile_html: Μπορείτε να δείτε το προφίλ του/της στο %{userurl}.
+      befriend_them: Μπορείτε επίσης να τον/την προσθέσετε ως φίλο στο %{befriendurl}.
+      befriend_them_html: Μπορείτε επίσης να τον/την προσθέσετε ως φίλο στο %{befriendurl}.
     gpx_description:
       description_with_tags: 'Φαίνεται πως το αρχείο σας %{trace_name} με την περιγραφή
         %{trace_description} και με τις παρακάτω ετικέτες: %{tags}'
-      description_with_tags_html: 'ΦαίνεÏ\84αι Ï\80Ï\89Ï\82 Ï\84ο Î±Ï\81Ï\87είο Ï\83οÏ\85 %{trace_name} με την
+      description_with_tags_html: 'ΦαίνεÏ\84αι Ï\80Ï\89Ï\82 Ï\84ο Î±Ï\81Ï\87είο Ï\83αÏ\82 %{trace_name} με την
         περιγραφή %{trace_description} και με τις παρακάτω ετικέτες: %{tags}'
       description_with_no_tags: Φαίνεται πως το αρχείο σας %{trace_name} με την περιγραφή
         %{trace_description} και χωρίς ετικέτες
-      description_with_no_tags_html: Î¦Î±Î¯Î½ÎµÏ\84αι Ï\80Ï\89Ï\82 Ï\84ο Î±Ï\81Ï\87είο Ï\83οÏ\85 %{trace_name} με την
+      description_with_no_tags_html: Î¦Î±Î¯Î½ÎµÏ\84αι Ï\80Ï\89Ï\82 Ï\84ο Î±Ï\81Ï\87είο Ï\83αÏ\82 %{trace_name} με την
         περιγραφή %{trace_description} και χωρίς ετικέτες
     gpx_failure:
       hi: Γεια σας %{to_user},
@@ -1740,11 +1757,11 @@ el:
         περιέχει αρχείο/αρχεία GPX στην υποστηριζόμενη μορφή (.tar.gz, .tar.bz2, .tar,
         .zip, .gpx.gz, .gpx.bz2). Μπορεί να υπάρχει πρόβλημα μορφής ή σύνταξης με
         το αρχείο σας; Το σφάλμα της εισαγωγής είναι:'
-      more_info: Î ÎµÏ\81ιÏ\83Ï\83Ï\8cÏ\84εÏ\81εÏ\82 Ï\80ληÏ\81οÏ\86οÏ\81ίεÏ\82 Ï\83Ï\87εÏ\84ικά Î¼Îµ Ï\84α Ï\83Ï\86άλμαÏ\84α εισαγωγής GPX και
-        Ï\80Ï\89Ï\82 Î½Î± Ï\84α Î±Ï\80οÏ\86Ï\8dγεÏ\84ε, Î¼Ï\80οÏ\81είÏ\84ε Î½Î± Î²Ï\81είÏ\84ε Ï\83Ï\84ο %{url}.
+      more_info: Î ÎµÏ\81ιÏ\83Ï\83Ï\8cÏ\84εÏ\81εÏ\82 Ï\80ληÏ\81οÏ\86οÏ\81ίεÏ\82 Ï\83Ï\87εÏ\84ικά Î¼Îµ Ï\84ιÏ\82 Î±Ï\80οÏ\84Ï\85Ï\87ίεÏ\82 εισαγωγής GPX και
+        Ï\84ον Ï\84Ï\81Ï\8cÏ\80ο Î±Ï\80οÏ\86Ï\85γήÏ\82 Ï\84οÏ\85Ï\82 Î¼Ï\80οÏ\81είÏ\84ε Î½Î± Î²Ï\81είÏ\84ε Ï\83Ï\84η Î´Î¹ÎµÏ\8dθÏ\85νÏ\83η %{url}.
       more_info_html: Περισσότερες πληροφορίες σχετικά με τις αποτυχίες εισαγωγής
         GPX και τον τρόπο αποφυγής τους μπορείτε να βρείτε στη διεύθυνση %{url}.
-      subject: '[OpenStreetMap] Î\97 ÎµÎ¹Ï\83αγÏ\89γή GPX Î±Ï\80έÏ\84Ï\85Ï\87ε'
+      subject: '[OpenStreetMap] Î\91Ï\80οÏ\84Ï\85Ï\87ία ÎµÎ¹Ï\83αγÏ\89γήÏ\82 GPX'
     gpx_success:
       hi: Γεια σας %{to_user},
       loaded:
@@ -1753,13 +1770,14 @@ el:
       trace_location: Το ίχνος σας είναι διαθέσιμο στο %{trace_url}
       all_your_traces: Όλα τα επιτυχώς ανεβασμένα ίχνη GPX σας μπορούν να βρεθούν
         στο %{url}
-      all_your_traces_html: Î\8cλα Ï\84α Î¯Ï\87νη GPX Ï\80οÏ\85 Î±Î½ÎµÎ²Î¬Ï\83αÏ\84ε Î¼Îµ ÎµÏ\80ιÏ\84Ï\85Ï\87ία μπορούν να βρεθούν
-        Ï\83Ï\84η Î´Î¹ÎµÏ\8dθÏ\85νÏ\83η %{url}.
-      subject: '[OpenStreetMap] Î\97 ÎµÎ¹Ï\83αγÏ\89γή GPX Ï\80έÏ\84Ï\85Ï\87ε'
+      all_your_traces_html: Î\8cλα Ï\84α ÎµÏ\80ιÏ\84Ï\85Ï\87Ï\8eÏ\82 Î±Î½ÎµÎ²Î±Ï\83μένα Î¯Ï\87νη GPX Ï\83αÏ\82 μπορούν να βρεθούν
+        Ï\83Ï\84ο %{url}.
+      subject: '[OpenStreetMap] Î\95Ï\80ιÏ\84Ï\85Ï\87ία ÎµÎ¹Ï\83αγÏ\89γήÏ\82 GPX'
     signup_confirm:
       subject: '[OpenStreetMap] Καλώς ήλθατε στο OpenStreetMap'
-      greeting: Γεια σου!
-      created: Κάποιος (ας ελπίσουμε εσύ) μόλις δημιούργησε έναν λογαριασμό στο %{site_url}.
+      greeting: Γεια σας!
+      created: Κάποιος (ας ελπίσουμε εσείς) μόλις δημιούργησε έναν λογαριασμό στο
+        %{site_url}.
       confirm: 'Πριν κάνουμε οτιδήποτε άλλο, πρέπει να επιβεβαιώσουμε ότι η αίτηση
         ήρθε από εσάς, άρα αν το κάνατε εσείς παρακαλώ πατήστε τον παρακάτω σύνδεσμο
         για να επιβεβαιώσετε τον λογαριασμό σας:'
@@ -1782,46 +1800,50 @@ el:
         να επαναφέρετε τον κωδικό πρόσβασής σας.
     note_comment_notification:
       description: 'OpenStreetMap Σημείωση #%{id}'
-      anonymous: Î\91νώνυμος χρήστης
+      anonymous: Î±νώνυμος χρήστης
       greeting: Γεια,
       commented:
-        subject_own: '[OpenStreetMap] %{commenter} σχολίασε μια από τις σημειώσεις
-          σας'
-        subject_other: '[OpenStreetMap] Ο %{commenter} σχολίασε μια σημείωση που σας
-          ενδιαφέρει'
-        your_note: Ο %{commenter} σχολίασε μία από τις σημειώσεις σας κοντά στο %{place}.
-        your_note_html: Ο χρήστης %{commenter} έχει σχολιάσει σε μία σημείωση σας
-          στον χάρτη κοντά στο %{place}.
-        commented_note: Ο %{commenter} σχολίασε μια σημείωση που έχετε σχολιάσει.
-          Η σημείωση είναι κοντά σε %{place}.
-        commented_note_html: Ο χρήστης %{commenter} έχει σχολιάσει σε μία σημείωση
-          στον χάρτη στην οποία έχετε αφήσει ένα σχόλιο. Η σημείωση είναι κοντά στο
-          %{place}.
+        subject_own: '[OpenStreetMap] {{GENDER:%{commenter}|Ο|Η}} %{commenter} σχολίασε
+          μια από τις σημειώσεις σας'
+        subject_other: '[OpenStreetMap] {{GENDER:%{commenter}|Ο|Η}} %{commenter} σχολίασε
+          μια σημείωση που σας ενδιαφέρει.'
+        your_note: '{{GENDER:%{commenter}|Ο|Η}} σχολίασε μία από τις σημειώσεις σας
+          κοντά στο %{place}.'
+        your_note_html: '{{GENDER:%{commenter}|Ο|Η}} χρήστης %{commenter} έχει σχολιάσει
+          σε μία σημείωση σας στον χάρτη κοντά στο %{place}.'
+        commented_note: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} σχολίασε μια σημείωση
+          που έχετε σχολιάσει. Η σημείωση είναι κοντά σε %{place}.'
+        commented_note_html: '{{GENDER:%{commenter}|Ο|Η}} χρήστης %{commenter} έχει
+          σχολιάσει σε μία σημείωση στον χάρτη στην οποία έχετε αφήσει ένα σχόλιο.
+          Η σημείωση είναι κοντά στο %{place}.'
       closed:
-        subject_own: '[OpenStreetMap] Ο %{commenter} επίλυσε μια από τις σημειώσεις
-          σας'
-        subject_other: '[OpenStreetMap] Ο %{commenter} επίλυσε μια σημείωση που σας
-          ενδιαφέρει'
-        your_note: Ο %{commenter} σχολίασε μια από τις σημειώσεις σας κοντά στο %{place}.
-        your_note_html: '%{commenter} έχει επιλύσει μία σημείωση στον χάρτη κοντά
-          στο μέρος %{place}.'
-        commented_note: Ο %{commenter} επίλυσε μια σημείωση που έχετε σχολιάσει. Η
-          σημείωση είναι κοντά σε %{place}.
-        commented_note_html: '%{commenter} έχει επιλύσει μία σημείωση στην οποία έχετε
-          αφήσει σχόλιιο. Η σημείωση είναι κοντά στο %{place}.'
+        subject_own: '[OpenStreetMap] {{GENDER:%{commenter}|Ο|Η}} %{commenter} επίλυσε
+          μια από τις σημειώσεις σας'
+        subject_other: '[OpenStreetMap] {{GENDER:%{commenter}|Ο|Η}} %{commenter} επίλυσε
+          μια σημείωση που σας ενδιαφέρει'
+        your_note: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} σχολίασε μια από τις
+          σημειώσεις σας κοντά στο %{place}.'
+        your_note_html: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} έχει επιλύσει μία
+          σημείωση στον χάρτη κοντά στο μέρος %{place}.'
+        commented_note: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} επίλυσε μια σημείωση
+          που έχετε σχολιάσει. Η σημείωση είναι κοντά σε %{place}.'
+        commented_note_html: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} έχει επιλύσει
+          μία σημείωση στην οποία έχετε αφήσει σχόλιιο. Η σημείωση είναι κοντά στο
+          %{place}.'
       reopened:
-        subject_own: '[OpenStreetMap] Ο %{commenter} επανενεργοποίησε μια από τις
-          σημειώσεις σας'
-        subject_other: '[OpenStreetMap] Ο %{commenter} επανενεργοποίησε μια σημείωση
-          που σας ενδιαφέρει'
-        your_note: Ο %{commenter} επανενεργοποίησε μια από τις σημειώσεις σας κοντά
-          στο %{place}.
-        your_note_html: Ο χρήστης %{commenter} έχει επαναενεργοποιήσει τις σημειώσεις
-          στον χάρτη σας κόντα στο %{place}.
-        commented_note: Ο %{commenter} επανενεργοποίησε μια σημείωση που έχετε σχολιάσει.
-          Η σημείωση είναι κοντά σε %{place}.
-        commented_note_html: ο χρήστης %{commenter} έχει επαναενεργοποιήσει μία σημείωση
-          στον χάρτη την οποία έχετε σχολιάσει. Η σημείωση είναι κοντά στο %{place}.
+        subject_own: '[OpenStreetMap] {{GENDER:%{commenter}|Ο|Η}} %{commenter} επανενεργοποίησε
+          μια από τις σημειώσεις σας'
+        subject_other: '[OpenStreetMap] {{GENDER:%{commenter}|Ο|Η}} %{commenter} επανενεργοποίησε
+          μια σημείωση που σας ενδιαφέρει'
+        your_note: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} επανενεργοποίησε μια
+          από τις σημειώσεις σας κοντά στο %{place}.'
+        your_note_html: '{{GENDER:%{commenter}|Ο|Η}} χρήστης %{commenter} έχει επαναενεργοποιήσει
+          τις σημειώσεις στον χάρτη σας κόντα στο %{place}.'
+        commented_note: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} επανενεργοποίησε
+          μια σημείωση που έχετε σχολιάσει. Η σημείωση είναι κοντά σε %{place}.'
+        commented_note_html: '{{GENDER:%{commenter}|Ο|Η}} χρήστης %{commenter} έχει
+          επαναενεργοποιήσει μία σημείωση στον χάρτη την οποία έχετε σχολιάσει. Η
+          σημείωση είναι κοντά στο %{place}.'
       details: Απαντήστε ή μάθετε περισσότερα για τη σημείωση στο %{url}.
       details_html: Απαντήστε ή μάθετε περισσότερα για τη σημείωση στο %{url}.
     changeset_comment_notification:
@@ -1839,8 +1861,9 @@ el:
         commented_changeset: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} άφησε ένα σχόλιο
           στις %{time}, σε ένα σύνολο αλλαγών που παρακολουθείτε, δημιουργημένο από
           {{GENDER:%{changeset_author}|τον|την}} %{changeset_author}.'
-        commented_changeset_html: Ο/Η %{commenter} άφησε ένα σχόλιο στις %{time} σε
-          ένα σύνολο αλλαγών που παρακολουθείτε που δημιουργήθηκε από τον %{changeset_author}
+        commented_changeset_html: '{{GENDER:%{commenter}|Ο|Η}} %{commenter} άφησε
+          ένα σχόλιο στις %{time} σε ένα σύνολο αλλαγών που παρακολουθείτε που δημιουργήθηκε
+          από {{GENDER:%{commenter}|τον|την}} %{changeset_author}'
         partial_changeset_with_comment: με το σχόλιο «%{changeset_comment}»
         partial_changeset_with_comment_html: με το σχόλιο «%{changeset_comment}»
         partial_changeset_without_comment: χωρίς σχόλιο
@@ -1856,16 +1879,17 @@ el:
       introduction_1: Σας στείλαμε ένα email επιβεβαίωσης.
       introduction_2: Επιβεβαιώστε το λογαριασμό σας κάνοντας κλικ στο σύνδεσμο στο
         email και θα είστε σε θέση να ξεκινήσετε τη χαρτογράφηση.
-      press confirm button: Πατήστε το κουμπί "Επιβεβαίωση" για να ενεργοποιήσετε
+      press confirm button: Πατήστε το κουμπί «Επιβεβαίωση» για να ενεργοποιήσετε
         το λογαριασμό σας.
       button: Επιβεβαίωση
       success: Επιβεβαιώθηκε ο λογαριασμός σας, ευχαριστούμε για την εγγραφή σας!
       already active: Αυτός ο λογαριασμός έχει ήδη επιβεβαιωθεί.
       unknown token: Ο κωδικός επιβεβαίωσης έληξε ή δεν υπάρχει.
-      resend_html: Εάν θέλετε να στείλουμε ξανά το email επιβεβαίωσης, %{reconfirm_link}.
-      click_here: κάντε κλικ εδώ
+      if_need_resend: Εάν θέλετε να στείλουμε ξανά το email επιβεβαίωσης, κάντε κλικ
+        στο παρακάτω κουμπί.
+      resend_button: Επανάληψη αποστολής του email επιβεβαίωσης
     confirm_resend:
-      failure: Ο χρήστης %{name} δεν βρέθηκε.
+      failure: '{{GENDER:%{name}|Ο|Η}} χρήστης %{name} δεν βρέθηκε.'
     confirm_email:
       heading: Επιβεβαίωση αλλαγής της διεύθυνσης ηλεκτρονικού ταχυδρομείου
       press confirm button: Πατήστε το κουμπί «Επιβεβαίωση» παρακάτω για να επιβεβαιώσετε
@@ -1878,34 +1902,11 @@ el:
     resend_success_flash:
       confirmation_sent: Έχουμε στείλει μια νέα σημείωση επιβεβαίωσης στο %{email}
         και μόλις επιβεβαιώσετε τον λογαριασμό σας θα μπορείτε να χαρτογραφήσετε.
-      whitelist: Î\91ν Ï\87Ï\81ηÏ\83ιμοÏ\80οιήÏ\83εÏ\84ε Ï\83Ï\8dÏ\83Ï\84ημα Î­Î»ÎµÎ³Ï\87οÏ\85 ÎºÎ±ÎºÏ\8cβοÏ\85λÏ\89ν Î¼Î·Î½Ï\85μάÏ\84Ï\89ν Ï\84ο Î¿Ï\80οίο
-        Ï\83Ï\84έλνει Î±Î¹Ï\84ήμαÏ\84α ÎµÏ\80ιβεβαίÏ\89Ï\83ηÏ\82 Ï\84Ï\8cÏ\84ε Ï\80αÏ\81ακαλοÏ\8dμε Ï\83ιγοÏ\85Ï\81εÏ\85Ï\84είÏ\84ε Î½Î± Ï\80Ï\81οÏ\83θέÏ\83εÏ\84ε
-        Ï\83Ï\84ην Î»Î¯Ï\83Ï\84α Î¼Î· ÎºÎ±ÎºÏ\8cβοÏ\85λÏ\89ν Ï\87Ï\81ηÏ\83Ï\84Ï\8eν Ï\84ον/Ï\84ην %{sender}  Î¼Î¹Î±Ï\82 ÎºÎ±Î¹ Î´ÎµÎ½ Î¼Ï\80οÏ\81οÏ\8dμε
-        Î½Î± Ï\83Ï\84είλοÏ\85με Î±Ï\80άνÏ\84ηÏ\83η Ï\83ε Î¿Ï\80οιαδήÏ\80οÏ\84ε Î±Î¯Ï\84ηÏ\83η ÎµÏ\80αλήθεÏ\85Ï\83ηÏ\82.
+      whitelist: Î\91ν Ï\87Ï\81ηÏ\83ιμοÏ\80οιείÏ\84ε Ï\83Ï\8dÏ\83Ï\84ημα antispam Ï\84ο Î¿Ï\80οίο Ï\83Ï\84έλνει Î±Î¹Ï\84ήμαÏ\84α ÎµÏ\80ιβεβαίÏ\89Ï\83ηÏ\82
+        Ï\84Ï\8cÏ\84ε Ï\80αÏ\81ακαλοÏ\8dμε Ï\83ιγοÏ\85Ï\81εÏ\85Ï\84είÏ\84ε Î½Î± Ï\80Ï\81οÏ\83θέÏ\83εÏ\84ε Ï\83Ï\84ην Î»Î¯Ï\83Ï\84α Î¼Î· ÎºÎ±ÎºÏ\8cβοÏ\85λÏ\89ν Ï\87Ï\81ηÏ\83Ï\84Ï\8eν
+        Ï\84ο %{sender}  Î¼Î¹Î±Ï\82 ÎºÎ±Î¹ Î´ÎµÎ½ Î¼Ï\80οÏ\81οÏ\8dμε Î½Î± Ï\83Ï\84είλοÏ\85με Î±Ï\80άνÏ\84ηÏ\83η Ï\83ε Î¿Ï\80οιαδήÏ\80οÏ\84ε Î±Î¯Ï\84ηÏ\83η
+        επαλήθευσης.
   messages:
-    inbox:
-      title: Εισερχόμενα
-      messages: Έχετε %{new_messages} και %{old_messages}
-      new_messages:
-        one: '%{count} νέο μήνυμα'
-        other: '%{count} νέα μηνύματα'
-      old_messages:
-        one: '%{count} παλιό μήνυμα'
-        other: '%{count} παλιά μηνύματα'
-      no_messages_yet_html: Δεν έχετε μηνύματα ακόμα. Γιατί δεν έρχεστε σε επαφή με
-        μερικά από τα %{people_mapping_nearby_link}?
-      people_mapping_nearby: άτομα που χαρτογραφούν κοντά σας
-    messages_table:
-      from: Από
-      to: Προς
-      subject: Θέμα
-      date: Ημερομηνία
-      actions: Ενέργειες
-    message_summary:
-      unread_button: Σήμανση ως αδιάβαστο
-      read_button: Σήμανση ως διαβασμένο
-      destroy_button: Διαγραφή
-      unmute_button: Μετακίνηση στα Εισερχόμενα
     new:
       title: Αποστολή μηνύματος
       send_message_to_html: Αποστολή νέου μηνύματος προς %{name}
@@ -1918,21 +1919,8 @@ el:
       title: Κανένα τέτοιο μήνυμα
       heading: Κανένα τέτοιο μήνυμα
       body: Λυπάμαι δεν υπάρχει μήνυμα με αυτό το αναγνωριστικό.
-    outbox:
-      title: Εξερχόμενα
-      messages:
-        one: Έχετε %{count} απεσταλμένο μήνυμα
-        other: Έχετε %{count} απεσταλμένα μηνύματα
-      no_sent_messages_html: Δεν έχετε στείλει κανένα μήνυμα ακόμα. Γιατί δεν έρχεστε
-        σε επαφή με μερικά %{people_mapping_nearby_link}?
-      people_mapping_nearby: άτομα που χαρτογραφούν κοντά σας
-    muted:
-      title: Μηνύματα σε Σίγαση
-      messages:
-        one: '%{count} μήνυμα σε σίγαση'
-        other: Έχετε %{count} μηνύματα σε σίγαση
     reply:
-      wrong_user: Έχετε συνδεθεί ως '%{user}' αλλά το μήνυμα που ζητάτε να απαντήσετε
+      wrong_user: Έχετε συνδεθεί ως «%{user}» αλλά το μήνυμα που ζητάτε να απαντήσετε
         δεν έχει σταλεί σε αυτόν το χρήστη. Παρακαλούμε συνδεθείτε με το σωστό όνομα
         χρήστη ώστε να μπορέσετε να απαντήσετε.
     show:
@@ -1941,15 +1929,9 @@ el:
       unread_button: Σήμανση ως αδιάβαστο
       destroy_button: Διαγραφή
       back: Επιστροφή
-      wrong_user: Έχετε συνδεθεί ως '%{user}' αλλά το μήνυμα που ζητάτε να διαβάσετε
+      wrong_user: Έχετε συνδεθεί ως «%{user}» αλλά το μήνυμα που ζητάτε να διαβάσετε
         δεν έχει σταλεί σε εσάς ούτε από εσάς. Παρακαλούμε συνδεθείτε με το σωστό
         όνομα χρήστη ώστε να μπορέσετε να το διαβάσετε.
-    sent_message_summary:
-      destroy_button: Διαγραφή
-    heading:
-      my_inbox: Τα εισερχόμενα μου
-      my_outbox: Τα εξερχόμενα μου
-      muted_messages: Μηνύματα σε Σίγαση
     mark:
       as_read: Το μήνυμα σημειώθηκε ως αναγνωσμένο
       as_unread: Το μήνυμα σημειώθηκε ως μη αναγνωσμένο
@@ -1958,6 +1940,52 @@ el:
       error: Δεν ήταν δυνατή η μετακίνηση του μηνύματος στα Εισερχόμενα.
     destroy:
       destroyed: Το μήνυμα διαγράφηκε
+    mailboxes:
+      heading:
+        my_inbox: Τα εισερχόμενα μου
+        my_outbox: Τα εξερχόμενα μου
+        muted_messages: Μηνύματα σε σίγαση
+      messages_table:
+        from: Από
+        to: Προς
+        subject: Θέμα
+        date: Ημερομηνία
+        actions: Ενέργειες
+      message:
+        unread_button: Σήμανση ως αδιάβαστο
+        read_button: Σήμανση ως διαβασμένο
+        destroy_button: Διαγραφή
+        unmute_button: Μετακίνηση στα Εισερχόμενα
+    inboxes:
+      show:
+        title: Εισερχόμενα
+        messages: Έχετε %{new_messages} και %{old_messages}
+        new_messages:
+          one: '%{count} νέο μήνυμα'
+          other: '%{count} νέα μηνύματα'
+        old_messages:
+          one: '%{count} παλιό μήνυμα'
+          other: '%{count} παλιά μηνύματα'
+        no_messages_yet_html: Δεν έχετε μηνύματα ακόμα. Γιατί δεν έρχεστε σε επαφή
+          με μερικά από τα %{people_mapping_nearby_link}?
+        people_mapping_nearby: άτομα που χαρτογραφούν κοντά σας
+    muted_inboxes:
+      show:
+        title: Μηνύματα σε σίγαση
+        messages:
+          one: '%{count} μήνυμα σε σίγαση'
+          other: Έχετε %{count} μηνύματα σε σίγαση
+    outboxes:
+      show:
+        title: Εξερχόμενα
+        messages:
+          one: Έχετε %{count} απεσταλμένο μήνυμα
+          other: Έχετε %{count} απεσταλμένα μηνύματα
+        no_sent_messages_html: Δεν έχετε στείλει κανένα μήνυμα ακόμα. Γιατί δεν έρχεστε
+          σε επαφή με μερικά %{people_mapping_nearby_link}?
+        people_mapping_nearby: άτομα που χαρτογραφούν κοντά σας
+      message:
+        destroy_button: Διαγραφή
   passwords:
     new:
       title: Χάσατε το συνθηματικό σας
@@ -1968,16 +1996,16 @@ el:
         για να εγγραφείτε. Θα στείλουμε έναν σύνδεσμο τον οποίον μπορείτε να χρησιμοποιήσετε
         για να επαναφέρετε το συνθηματικό σας.
     create:
-      send_paranoid_instructions: Εάν η διεύθυνση email σας υπάρχει στο σύστημα μας,
-        θα λάβετε έναν σύνδεσμο ανάκτησης κωδικού στην διεύθυνση email σας σε λίγα
-        λεπτά.
+      send_paranoid_instructions: Εάν η διεύθυνση ηλεκτρονικού ταχυδρομείου σας υπάρχει
+        στο σύστημα μας, θα λάβετε έναν σύνδεσμο ανάκτησης κωδικού στην διεύθυνση
+        Î·Î»ÎµÎºÏ\84Ï\81ονικοÏ\8d Ï\84αÏ\87Ï\85δÏ\81ομείοÏ\85 Ï\83αÏ\82 Ï\83ε Î»Î¯Î³Î± Î»ÎµÏ\80Ï\84ά.
     edit:
       title: Επαναφορά συνθηματικού
       heading: Επαναφορά συνθηματικού για τον χρήστη %{user}
       reset: Επαναφορά συνθηματικού
-      flash token bad: Î\94εν Î²Ï\81ήκαÏ\84ε Î±Ï\85Ï\84Ï\8c Ï\84ο ÎºÎ¿Î¼Î¼Î¬Ï\84ι, Î¼Î®Ï\80Ï\89Ï\82 Ï\80Ï\81έÏ\80ει Î½Î± ÎµÎ»Î­Î³Î¾ÎµÏ\84ε Ï\84ο URL;
+      flash token bad: Î\94εν Î²Ï\81έθηκε Î±Ï\85Ï\84Ï\8c Ï\84ο token, ÎµÎ»Î­Î³Î¾Ï\84ε Î¯Ï\83Ï\89Ï\82 Ï\84η Î´Î¹ÎµÏ\8dθÏ\85νÏ\83η URL;
     update:
-      flash changed: Το συνθηματικό σας άλλαξε!
+      flash changed: Το συνθηματικό σας άλλαξε.
       flash token bad: Δεν βρέθηκε αυτό το token, ελέγξτε ίσως τη διεύθυνση URL;
   preferences:
     show:
@@ -1996,7 +2024,7 @@ el:
         dark: Σκοτεινό
       edit_preferences: Επεξεργασία προτιμήσεων
     edit:
-      title: Î\95Ï\80εξεÏ\81γαÏ\83ία Ï\80Ï\81οÏ\84ιμίσεων
+      title: Î\95Ï\80εξεÏ\81γαÏ\83ία Ï\80Ï\81οÏ\84ιμήσεων
       save: Ενημέρωση προτιμήσεων
       cancel: Ακύρωση
     update:
@@ -2012,7 +2040,7 @@ el:
       gravatar:
         gravatar: Χρήση Gravatar
         what_is_gravatar: Τί είναι το Gravatar;
-        disabled: 'Το Gravatar έχει απενεργοποιηθεί:'
+        disabled: Το Gravatar έχει απενεργοποιηθεί.
         enabled: Έχει ενεργοποιηθεί η εμφάνιση του Gravatar σας.
       new image: Προσθήκη εικόνας
       keep image: Διατήρηση της τρέχουσας εικόνας
@@ -2088,11 +2116,11 @@ el:
         older: Παλαιότερες φραγές
         newer: Νεότερες φραγές
       users:
-        older: Παλαιότεροι Χρήστες
-        newer: Νεότεροι Χρήστες
+        older: Παλαιότεροι χρήστες
+        newer: Νεότεροι χρήστες
   site:
     about:
-      heading_html: '%{copyright}OpenStreetMap %{br} συνεισφέροντες'
+      heading_html: '%{copyright}συνεισφέροντες %{br} OpenStreetMap'
       used_by_html: Το %{name} προσφέρει δεδομένα χάρτη σε χιλιάδες ιστότοπους, εφαρμογές
         κινητού και συσκευές υλισμικού
       lede_text: Το OpenStreetMap αναπτύσσεται από μια κοινότητα χαρτογράφων που συνεισφέρουν
@@ -2108,7 +2136,7 @@ el:
         Οι συνεισφέροντες μας, περιλαμβάνουν ενθουσιώδεις χαρτογράφους, επαγγελματίες GIS, μηχανικούς
         που τρέχουν τους διακομιστές OSM, ανθρωπιστές που χαρτογραφούν περιοχές που έχουν πληγεί από καταστροφές,
         και πολλά άλλα.
-        Για να μάθετε περισσότερα σχετικά με την κοινότητα, δείτε στον ιστότοπο %{osm_blog_link}, %{user_diaries_link}, %{community_blogs_link} και στο %{osm_foundation_link}.
+        Για να μάθετε περισσότερα σχετικά με την κοινότητα, δείτε στο %{osm_blog_link}, %{user_diaries_link}, %{community_blogs_link} και στο %{osm_foundation_link}.
       community_driven_osm_blog: Ιστολόγιο OpenStreetMap
       community_driven_user_diaries: ημερολόγια χρηστών
       community_driven_community_blogs: ιστολόγια κοινότητας
@@ -2128,7 +2156,7 @@ el:
         μας, στις %{aup_link} και στην %{privacy_policy_link} μας.
       legal_1_1_openstreetmap_foundation: Ίδρυμα OpenStreetMap
       legal_1_1_terms_of_use: Όρους Χρήσης
-      legal_1_1_aup: Î\91Ï\80οδεκÏ\84έÏ\82 Î Î¿Î»Î¹Ï\84ικές Χρήσης
+      legal_1_1_aup: Î Î¿Î»Î¹Ï\84ικέÏ\82 Î\91Ï\80οδεκÏ\84ής Χρήσης
       legal_1_1_privacy_policy: Πολιτική Απορρήτου
       legal_2_1_html: |-
         Παρακαλούμε %{contact_the_osmf_link}
@@ -2154,7 +2182,7 @@ el:
         mapping_link: αρχίστε τη χαρτογράφηση
       legal_babble:
         introduction_1_html: |-
-          Î¤Î¿ OpenStreetMap%{registered_trademark_link} ÎµÎ¯Î½Î±Î¹ %{open_data}, Î¼Îµ Î¬Î´ÎµÎ¹Î± Ï\87Ï\81ήÏ\83ηÏ\82 Ï\85Ï\80Ï\8c Ï\84ο
+          Î¤Î¿ OpenStreetMap%{registered_trademark_link} ÎµÎ¯Î½Î±Î¹ %{open_data}, Î¼Îµ Î¬Î´ÎµÎ¹Î± Ï\87Ï\81ήÏ\83ηÏ\82 Ï\85Ï\80Ï\8c Ï\84ην
           %{odc_odbl_link} (ODbL) από το %{osm_foundation_link} (OSMF).
         introduction_1_open_data: ανοιχτά δεδομένα
         introduction_1_odc_odbl: Open Data Commons Άδεια Ανοικτής Βάσης Δεδομένων
@@ -2202,7 +2230,7 @@ el:
         more_1_1_osmf_licence_page: Σελίδα Άδειας Χρήσης OSMF
         more_2_1_html: |-
           Παρόλο που το OpenStreetMap είναι ανοιχτά δεδομένα, δεν μπορούμε να παρέχουμε API χάρτη για τρίτα μέρη χωρίς χρέωση.
-          Δείτε την %{api_usage_policy_link}, %{tile_usage_policy_link} και %{nominatim_usage_policy_link}.
+          Δείτε την %{api_usage_policy_link}, την %{tile_usage_policy_link} και την %{nominatim_usage_policy_link}.
         more_2_1_api_usage_policy: Πολιτική Χρήσης API
         more_2_1_tile_usage_policy: Πολιτική Χρήσης Πλακιδίων
         more_2_1_nominatim_usage_policy: Πολιτική Χρήσης Nominatim
@@ -2211,12 +2239,12 @@ el:
           έχουμε περιλάβει δεδομένα ανοικτής άδειας από εθνικές υπηρεσίες χαρτογράφησης
           και άλλες πηγές, μεταξύ αυτών:'
         contributors_at_credit_html: |-
-          %{austria}: Περιέχει δεδομένα από %{stadt_wien_link} (υπό %{cc_by_link}), %{land_vorarlberg_link}
-          και Land Tirol (υπό %{cc_by_at_with_amendments_link}).
+          %{austria}: Περιέχει δεδομένα από τη %{stadt_wien_link} (υπό %{cc_by_link}), το %{land_vorarlberg_link}
+          και το Κρατίδιο του Τυρόλου (υπό %{cc_by_at_with_amendments_link}).
         contributors_at_austria: Αυστρία
-        contributors_at_stadt_wien: Stadt Wien
+        contributors_at_stadt_wien: Πόλη της Βιέννης
         contributors_at_cc_by: CC BY
-        contributors_at_land_vorarlberg: Land Vorarlberg
+        contributors_at_land_vorarlberg: Κρατίδιο του Vorarlberg
         contributors_at_cc_by_at_with_amendments: CC BY AT με τροποποιήσεις
         contributors_au_credit_html: |-
           %{australia}: Ενσωματώνει ή ανεπτυγμένα χρησιμοποιώντας τα Διοικητικά Όρια &copy; %{geoscape_australia_link}
@@ -2313,10 +2341,10 @@ el:
     index:
       js_1: Είτε χρησιμοποιείτε πρόγραμμα περιήγησης που δεν υποστηρίζει JavaScript
         ή έχετε απενεργοποιήσει την JavaScript.
-      js_2: Το OpenStreetMap χρησιμοποιεί JavaScript για το ολισθαίνοντα χάρτη του.
+      js_2: Το OpenStreetMap χρησιμοποιεί JavaScript για τον ολισθηρό χάρτη του.
       license:
-        copyright: Πνευματικά δικαιώματα του OpenStreetMap και των συντακτών του,
-          υπό ελεύθερη άδεια
+        copyright: Πνευματικά δικαιώματα του OpenStreetMap και των συνεισφερόντων
+          Ï\84οÏ\85, Ï\85Ï\80Ï\8c ÎµÎ»ÎµÏ\8dθεÏ\81η Î¬Î´ÎµÎ¹Î±
       remote_failed: Η επεξεργασία απέτυχε - βεβαιωθείτε ότι ο JOSM ή ο Merkaartor
         έχουν φορτωθεί και η επιλογή τηλεχειρισμού είναι ενεργή
     edit:
@@ -2332,7 +2360,7 @@ el:
       licence: Άδεια
       licence_details_html: Τα δεδομένα OpenStreetMap αδειοδοτούνται με %{odbl_link}
         (ODbL).
-      odbl: Άδεια χρήσης Open Data Commons Open Database
+      odbl: Open Data Commons Άδεια Ανοικτής Βάσης Δεδομένων
       too_large:
         advice: 'Αν η εξαγωγή αποτυγχάνει, παρακαλούμε δοκιμάστε μία από τις πηγές
           που αναφέρονται παρακάτω:'
@@ -2358,9 +2386,9 @@ el:
     fixthemap:
       title: Αναφέρετε πρόβλημα / Διορθώστε τον χάρτη
       how_to_help:
-        title: Î Ï\89Ï\82 Î½Î± Î\92οηθήσετε
+        title: Î Ï\89Ï\82 Î½Î± Î²οηθήσετε
         join_the_community:
-          title: Î\93νÏ\89Ï\81ίÏ\83τε την κοινότητα
+          title: Î\9cÏ\80είτε την κοινότητα
           explanation_html: Αν έχετε παρατηρήσει ένα πρόβλημα με τα δεδομένα του χάρτη
             μας, παραδείγματος χάριν ένας δρόμος που λείπει στη διεύθυνσή σας, ο καλύτερος
             τρόπος να προχωρήσετε είναι να ενταχθείτε στην κοινότητα του OpenStreetMap
@@ -2389,14 +2417,14 @@ el:
           του OpenStreetMap.
       beginners_guide:
         url: https://wiki.openstreetmap.org/wiki/El:Beginners%27_guide
-        title: Î\9fδηγÏ\8cÏ\82 Î\91ρχαρίων
+        title: Î\9fδηγÏ\8cÏ\82 Î±ρχαρίων
         description: Οδηγός αρχαρίων διατηρούμενος από την κοινότητα.
       community:
         title: Φόρουμ κοινότητας & βοήθειας
         description: Ένα κοινόχρηστο μέρος για αναζήτηση βοήθειας και για συνομιλίες
           σχετικά με το OpenStreetMap.
       mailing_lists:
-        title: Î\9bίÏ\83Ï\84εÏ\82 Î\91λληλογραφίας
+        title: Î\9bίÏ\83Ï\84εÏ\82 Î±λληλογραφίας
         description: Κάντε μία ερώτηση ή συζητήστε ενδιαφέροντα θέματα σε ένα ευρύ
           φάσμα τοπικών ή περιφερειακών λιστών αλληλογραφίας.
       irc:
@@ -2408,21 +2436,21 @@ el:
         description: Βοήθεια για εταιρείες και οργανισμούς για μετάβαση σε χάρτες
           που βασίζονται στο OpenStreetMap και άλλες υπηρεσίες.
       welcomemat:
-        title: Για τις Οργανώσεις
-        description: Î\93ια Î¼Î¹Î± Î¿Ï\81γάνÏ\89Ï\83η Ï\80οÏ\85 ÎºÎ¬Î½ÎµÎ¹ Ï\83Ï\87έδια Î³Î¹Î± Ï\84ο OpenStreetMap; Î\92Ï\81είÏ\84ε
-          ότι χρειάζεται στο Welcome Mat.
+        title: Για οργανισμούς
+        description: Î\95ίÏ\83Ï\84ε Î¼Î­Î»Î¿Ï\82 Î¿Ï\81γάνÏ\89Ï\83ηÏ\82 Ï\80οÏ\85 ÎºÎ¬Î½ÎµÎ¹ Ï\83Ï\87έδια Î³Î¹Î± Ï\84ο OpenStreetMap;
+          Βρείτε ότι χρειάζεται στο Welcome Mat.
       wiki:
         title: OpenStreetMap Wiki
         description: Περιηγηθείτε το wiki για επιμελής τεκμηρίωση του OpenStreetMap.
     potlatch:
-      removed: Ο προεπιλεγμένος σας επεξεργαστής του OpenStreetMap έχει τεθεί ως Potlatch.
-        Επειδή το Adobe Flash Player έχει αποσυρθεί, ο Potlatch δεν είναι πια διαθέσιμος
-        για χρήση σε πρόγραμμα περιήγησης ιστού.
-      desktop_application_html: Î\9cÏ\80οÏ\81είÏ\84ε Î½Î± Ï\87Ï\81ηÏ\83ιμοÏ\80οιήÏ\83εÏ\84ε Î±ÎºÏ\8cμα Ï\84ο Potlatch Î±Ï\80Ï\8c
+      removed: Ο Potlatch έχει τεθεί ως  ο προεπιλεγμένος σας επεξεργαστής για το
+        OpenStreetMap. Επειδή το Adobe Flash Player έχει αποσυρθεί, ο Potlatch δεν
+        ÎµÎ¯Î½Î±Î¹ Ï\80ια Î´Î¹Î±Î¸Î­Ï\83ιμοÏ\82 Î³Î¹Î± Ï\87Ï\81ήÏ\83η Ï\83ε Ï\80Ï\81Ï\8cγÏ\81αμμα Ï\80εÏ\81ιήγηÏ\83ηÏ\82 Î¹Ï\83Ï\84οÏ\8d.
+      desktop_application_html: Î\9cÏ\80οÏ\81είÏ\84ε Î½Î± Ï\87Ï\81ηÏ\83ιμοÏ\80οιήÏ\83εÏ\84ε Î±ÎºÏ\8cμα Ï\84ο Potlatch ÎºÎ¬Î½Î¿Î½Ï\84αÏ\82
         %{download_link}.
-      download: Î»Î®Ï\88η Ï\84ηÏ\82 ÎµÏ\86αÏ\81μογήÏ\82 ÎµÏ\80ιÏ\86άνειαÏ\82 ÎµÏ\81γαÏ\83ίαÏ\82 Î³Î¹Î± Mac ÎºÎ±Î¹ Windows
-      id_editor_html: Î\95ναλλακÏ\84ικά, Î¼Ï\80οÏ\81είÏ\84ε Î½Î± Î¿Ï\81ίÏ\83εÏ\84ε Ï\84ο προεπιλεγμένο πρόγραμμα
-        ÎµÏ\80εξεÏ\81γαÏ\83ίαÏ\82 Ï\83ε iD, το οποίο εκτελείται στο πρόγραμμα περιήγησής σας όπως
+      download: λήψη της εφαρμογής για Mac και Windows
+      id_editor_html: Î\95ναλλακÏ\84ικά, Î¼Ï\80οÏ\81είÏ\84ε Î½Î± Î¿Ï\81ίÏ\83εÏ\84ε Ï\89Ï\82 προεπιλεγμένο πρόγραμμα
+        ÎµÏ\80εξεÏ\81γαÏ\83ίαÏ\82 Ï\83αÏ\82 Ï\84ο iD, το οποίο εκτελείται στο πρόγραμμα περιήγησής σας όπως
         έκανε στο παρελθόν το Potlatch. %{change_preferences_link}.
       change_preferences: Αλλάξτε τις προτιμήσεις σας εδώ
     any_questions:
@@ -2433,7 +2461,7 @@ el:
       get_help_here: Λάβετε βοήθεια εδώ
       welcome_mat: Δείτε το Χαλάκι Καλωσορίσματος
     sidebar:
-      search_results: Î\91Ï\80οÏ\84ελέÏ\83μαÏ\84α Î\91ναζήτησης
+      search_results: Î\91Ï\80οÏ\84ελέÏ\83μαÏ\84α Î±ναζήτησης
     search:
       search: Αναζήτηση
       get_directions_title: Βρείτε οδηγίες μεταξύ δύο σημείων
@@ -2448,13 +2476,13 @@ el:
         entry:
           motorway: Αυτοκινητόδρομος
           main_road: Κύρια οδός
-          trunk: Î\91Ï\85Ï\84οκινηÏ\84Ï\8cδÏ\81ομος
-          primary: Î\9aÏ\8dÏ\81ια Î\9fδός
-          secondary: Î\94εÏ\85Ï\84εÏ\81εÏ\8dοÏ\85Ï\83α Î\9fδός
-          unclassified: Î\91Ï\84αξινÏ\8cμηÏ\84η Î\9fδός
+          trunk: Î\95θνική Î¿Î´Ï\8cς
+          primary: Î\9aÏ\8dÏ\81ια Î¿δός
+          secondary: Î\94εÏ\85Ï\84εÏ\81εÏ\8dοÏ\85Ï\83α Î¿δός
+          unclassified: Î\91Ï\84αξινÏ\8cμηÏ\84η Î¿δός
           pedestrian: Πεζόδρομος
           track: Αγροτικός / Δασικός δρόμος
-          bridleway: Î\9cονοÏ\80άÏ\84ι Î³Î¹Î± Î\86λογα
+          bridleway: Î\9cονοÏ\80άÏ\84ι Î³Î¹Î± Î¬λογα
           cycleway: Ποδηλατόδρομος
           cycleway_national: Εθνικός ποδηλατόδρομος
           cycleway_regional: Περιφερειακός ποδηλατόδρομος
@@ -2480,7 +2508,7 @@ el:
           orchard: Περιβόλι
           vineyard: Αμπελώνας
           forest: Δάσος
-          wood: Î¦Ï\85Ï\83ικÏ\8c Î´άσος
+          wood: Î\94άσος
           farmland: Καλλιεργήσιμη έκταση
           grass: Γρασίδι
           meadow: Λιβάδι
@@ -2539,7 +2567,7 @@ el:
         χαρτογράφηση. Εδώ είναι ένας γρήγορος οδηγός με τα πιο σημαντικά πράγματα
         που πρέπει να ξέρετε.
       whats_on_the_map:
-        title: Τι είναι στον Χάρτη
+        title: Τι είναι στον χάρτη
         on_the_map_html: Το OpenStreetMap είναι ένα μέρος για τη χαρτογράφηση πραγμάτων
           που είναι %{real_and_current} - περιλαμβάνει εκατομμύρια κτίρια, δρόμους
           και άλλες λεπτομέρειες σχετικά με μέρη. Μπορείτε να χαρτογραφήσετε οποιαδήποτε
@@ -2551,8 +2579,8 @@ el:
           άδεια, μην αντιγράφετε από διαδικτυακούς ή έντυπους χάρτες.
         doesnt: δεν
       basic_terms:
-        title: Βασικοί όροι για τη Χαρτογράφηση
-        paragraph_1: Η κοινότητα OpenStreetMap έχει δικό της γλωσσάρι. Παρακάτω είναι
+        title: Βασικοί όροι για τη χαρτογράφηση
+        paragraph_1: Η κοινότητα OpenStreetMap έχει τη δική της αργκό. Παρακάτω είναι
           μερικές λέξεις που μπορεί να σας φανούν χρήσιμες.
         an_editor_html: Ο %{editor} είναι ένα πρόγραμμα ή ένας ιστότοπος που μπορείτε
           να χρησιμοποιήσετε για να επεξεργαστείτε τον χάρτη.
@@ -2568,18 +2596,18 @@ el:
         tag: ετικέτα
       rules:
         title: Κανόνες!
-        para_1_html: Î¤Î¿ OpenStreetMap Î­Ï\87ει Î»Î¯Î³Î¿Ï\85ς επίσημους κανόνες, αλλά αναμένουμε
-          Î±Ï\80Ï\8c Ï\8cλοÏ\85Ï\82 Ï\84οÏ\85Ï\82 Ï\83Ï\85μμεÏ\84έÏ\87ονÏ\84εÏ\82 Î½Î± Ï\83Ï\85νεÏ\81γαÏ\83Ï\84οÏ\8dν Î¼Îµ ÎºÎ±Î¹ Î½Î± ÎµÏ\80ικοινÏ\89νήÏ\83οÏ\85ν Î¼Îµ
-          την κοινότητα. Εάν σκέφτεστε οποιεσδήποτε άλλες δραστηριότητες εκτός από
+        para_1_html: Î¤Î¿ OpenStreetMap Î´ÎµÎ½ Î­Ï\87ει Ï\80ολλοÏ\8dς επίσημους κανόνες, αλλά αναμένουμε
+          Î±Ï\80Ï\8c Ï\8cλοÏ\85Ï\82 Ï\84οÏ\85Ï\82 Ï\83Ï\85μμεÏ\84έÏ\87ονÏ\84εÏ\82 Î½Î± Ï\83Ï\85νεÏ\81γάζονÏ\84αι ÎºÎ±Î¹ Î½Î± ÎµÏ\80ικοινÏ\89νοÏ\8dν Î¼Îµ Ï\84ην
+          κοινότητα. Εάν αναλογίζεστε οποιεσδήποτε άλλες δραστηριότητες εκτός από
           την επεξεργασία με το χέρι, παρακαλούμε διαβάστε και ακολουθήστε τις οδηγίες
           για %{imports_link} και %{automated_edits_link}.
         imports: Εισαγωγές
         automated_edits: Αυτοματοποιημένες Επεξεργασίες
-      start_mapping: Ξεκινήστε τη Χαρτογράφηση
-      continue_authorization: Î£Ï\85νέÏ\87ιÏ\83η Î\95ξουσιοδότησης
+      start_mapping: Ξεκινήστε την χαρτογράφηση
+      continue_authorization: Î£Ï\85νέÏ\87εια Îµξουσιοδότησης
       add_a_note:
         title: Δεν έχετε χρόνο για χαρτογράφηση; Προσθέστε μια σημείωση!
-        para_1: Î\95άν Î¸Î­Î»ÎµÏ\84ε ÎºÎ¬Ï\84ι Î¼Î¹ÎºÏ\81Ï\8c Î½Î± Î´Î¹Î¿Ï\81θÏ\89θεί και δεν έχετε χρόνο να εγγραφείτε
+        para_1: Î\95άν Î¸Î­Î»ÎµÏ\84ε Î±Ï\80λά Î½Î± Î´Î¹Î¿Ï\81θÏ\89θεί ÎºÎ¬Ï\84ι Î¼Î¹ÎºÏ\81Ï\8c και δεν έχετε χρόνο να εγγραφείτε
           και να μάθετε πως να επεξεργάζεστε τον χάρτη, είναι εύκολο να προσθέσετε
           μια σημείωση.
         para_2_html: 'Απλώς μεταβείτε %{map_link} και κάντε κλικ στο εικονίδιο σημείωσης:
@@ -2612,12 +2640,11 @@ el:
         communities_wiki: Wiki σελίδα κοινοτήτων
   traces:
     visibility:
-      private: Προσωπικό (διαμοιρασμός μόνο σαν ανώνυμος, μη χρονοσημασμένα σημεία)
-      public: Δημόσιο (εμφανίζεστε στη λίστα ιχνών σαν ανώνυμος, μη χρονοσημασμένα
-        σημεία)
-      trackable: Ανιχνεύσιμο (κοινοποιείται ως ανώνυμα διατεταγμένα σημεία με χρονοσημάνσεις)
-      identifiable: Μπορεί να αναγνωριστεί (φαίνεται στην λίστα παρακολούθησης και
-        ως αναγνωρίσιμο, τα σημεία ταξινόμησης με χρονικά σήματα)
+      private: Ιδιωτικό (διαμοιρασμός μόνο ως ανώνυμα, μη χρονοσημασμένα σημεία)
+      public: Δημόσιο (εμφανίση στη λίστα ιχνών ως ανώνυμα, μη χρονοσημασμένα σημεία)
+      trackable: Ανιχνεύσιμο (κοινοποιείται ως ανώνυμα, διατεταγμένα σημεία με χρονοσημάνσεις)
+      identifiable: Αναγνωρίσιμο (εμφάνιση στη λίστα ιχνών ως αναγνωρίσιμα, διατεταγμένα
+        σημεία με χρονοσημάνσεις)
     new:
       upload_trace: Μεταφόρτωση ίχνους GPS
       visibility_help: τι σημαίνει αυτό;
@@ -2701,11 +2728,11 @@ el:
     offline_warning:
       message: Το σύστημα μεταφόρτωσης αρχείων GPX δεν είναι διαθέσιμο προς το παρών
     offline:
-      heading: GPX Αποθηκευτικός χώρος εκτός σύνδεσης
-      message: O φάκελλος αποθήκευσης GPX και το σύστημα μεταφόρτωσης αρχείων δεν
-        ÎµÎ¯Î½Î±Î¹ Î´Î¹Î±Î¸Î­Ï\83ιμα Î±Ï\85Ï\84ή Ï\84ην Ï\83Ï\84ιγμή
+      heading: Αποθήκευση GPX εκτός σύνδεσης
+      message: Το σύστημα αποθήκευσης και μεταφόρτωσης αρχείων GPX δεν είναι διαθέσιμο
+        αυτή την στιγμή
     georss:
-      title: OpenStreetMap Ίχνη GPS
+      title: Ίχνη GPS OpenStreetMap
     description:
       description_with_count:
         one: αρχείο GPX με %{count} σημείο από %{user}
@@ -2730,7 +2757,7 @@ el:
       account_settings: Ρυθμίσεις λογαριασμού
       oauth2_applications: Εφαρμογές OAuth 2
       oauth2_authorizations: Εξουσιοδοτήσεις OAuth 2
-      muted_users: Χρήστες σε Σίγαση
+      muted_users: Χρήστες σε σίγαση
     auth_providers:
       openid_url: OpenID URL
       openid_login_button: Συνέχεια
@@ -2750,8 +2777,30 @@ el:
         title: Σύνδεση με GitHub
         alt: Λογότυπο GitHub
       wikipedia:
-        title: Σύνδεση με Wikipedia
-        alt: Λογότυπο Wikipedia
+        title: Σύνδεση με Βικιπαίδεια
+        alt: Λογότυπο Βικιπαίδειας
+    share:
+      email:
+        title: Κοινοποίηση μέσω email
+        alt: Εικονίδιο email
+      bluesky:
+        title: Κοινοποίηση μέσω Bluesky
+        alt: Εικονίδιο Bluesky
+      facebook:
+        title: Κοινοποίηση μέσω Facebook
+        alt: Εικονίδιο Facebook
+      linkedin:
+        title: Κοινοποίηση μέσω LinkedIn
+        alt: Εικονίδιο LinkedIn
+      mastodon:
+        title: Κοινοποίηση στο Mastodon
+        alt: Εικονίδιο Mastodon
+      telegram:
+        title: Κοινοποίηση στο Telegram
+        alt: Εικονίδιο Telegram
+      x:
+        title: Κοινοποίηση στο X
+        alt: Εικονίδιο X
   oauth:
     permissions:
       missing: Δεν έχετε επιτρέψει την πρόσβαση εφαρμογής σε αυτήν την λειτουργία
@@ -2774,7 +2823,7 @@ el:
       moderator: Αυτή η άδεια είναι για ενέργειες διαθέσιμες μόνο στους διαχειριστές
   oauth2_applications:
     index:
-      title: Î\9fι Î\95Ï\86αÏ\81μογέÏ\82 Î ελάτη μου
+      title: Î\9fι ÎµÏ\86αÏ\81μογέÏ\82 Ï\80ελάτη μου
       no_applications_html: Έχετε μια εφαρμογή που θέλετε να καταχωρήσετε για χρήση
         μαζί μας χρησιμοποιώντας το πρότυπο %{oauth2}; Πρέπει να δηλώσετε την εφαρμογή
         σας πριν μπορέσει να υποβάλει αιτήματα OAuth σε αυτήν την υπηρεσία.
@@ -2814,7 +2863,7 @@ el:
       title: Κωδικός εξουσιοδότησης
   oauth2_authorized_applications:
     index:
-      title: Î\9fι Î\95ξοÏ\85Ï\83ιοδοÏ\84ημένεÏ\82 Î\95φαρμογές μου
+      title: Î\9fι ÎµÎ¾Î¿Ï\85Ï\83ιοδοÏ\84ημένεÏ\82 Îµφαρμογές μου
       application: Εφαρμογή
       permissions: Άδειες
       last_authorized: Τελευταία Εξουσιοδότηση
@@ -2883,7 +2932,7 @@ el:
         μου στο κοινό κτήμα (για ελεύθερη χρήση)
       consider_pd_why: τι είναι αυτό;
       guidance_info_html: 'Πληροφορίες για να βοηθήσουν να κατανοήσετε αυτούς τους
-        όρους: a %{readable_summary_link} και μερικά %{informal_translations_link}'
+        όρους: μια %{readable_summary_link} και μερικές %{informal_translations_link}'
       readable_summary: περίληψη αναγνώσιμη από τον άνθρωπο
       informal_translations: ανεπίσημες μεταφράσεις
       continue: Συνέχεια
@@ -2907,28 +2956,28 @@ el:
         τη σελίδα.
       deleted: διεγράφη
     show:
-      my diary: Το ημερολόγιό μου
+      my diary: Το ημερολόγιο μου
       my edits: Οι επεξεργασίες μου
       my traces: Τα ίχνη μου
-      my notes: Οι Σημειώσεις Μου
+      my notes: Οι σημειώσεις μου
       my messages: Τα μηνύματά μου
       my profile: Το προφίλ μου
       my settings: Οι ρυθμίσεις μου
-      my comments: Τα Σχόλιά Μου
+      my comments: Τα σχόλιά μου
       my_preferences: Οι προτιμήσεις μου
       my_dashboard: Το ταμπλό μου
-      blocks on me: Î¦Ï\81αγέÏ\82 Ï\83ε Î\95μένα
-      blocks by me: Î¦Ï\81αγέÏ\82 Î±Ï\80Ï\8c Î\95μένα
+      blocks on me: Î¦Ï\81αγέÏ\82 Ï\83ε Îµμένα
+      blocks by me: Î¦Ï\81αγέÏ\82 Î±Ï\80Ï\8c Îµμένα
       create_mute: Σίγαση αυτού του χρήστη
       destroy_mute: Κατάργηση σίγασης αυτού του χρήστη
       edit_profile: Επεξεργασία προφίλ
-      send message: Î\91Ï\80οÏ\83Ï\84ολή Î\9cηνύματος
+      send message: Î\91Ï\80οÏ\83Ï\84ολή Î¼ηνύματος
       diary: Ημερολόγιο
       edits: Επεξεργασίες
       traces: Ίχνη
       notes: Σημειώσεις χάρτη
-      remove as friend: Αφαίρεση Φίλου
-      add as friend: Προσθήκη Φίλου
+      remove as friend: Αφαίρεση φίλου
+      add as friend: Προσθήκη φίλου
       mapper since: 'Χαρτογράφος από:'
       last map edit: 'Τελευταία επεξεργασία χάρτη:'
       no activity yet: Καμία δραστηριότητα ακόμη
@@ -2947,28 +2996,49 @@ el:
         grant:
           administrator: Χορήγηση πρόσβασης διαχειριστή
           moderator: Χορήγηση πρόσβασης συντονιστή
-          importer: Î Î±Ï\81αÏ\87ήÏ\81ηÏ\83η Ï\80Ï\81Ï\8cÏ\83βαÏ\83ηÏ\82 Î³Î¹Î± εισαγωγέα
+          importer: Î§Î¿Ï\81ήγηÏ\83η Ï\80Ï\81Ï\8cÏ\83βαÏ\83ηÏ\82 εισαγωγέα
         revoke:
           administrator: Ανακαλέστε την πρόσβαση διαχειριστή
           moderator: Ανάκληση πρόσβασης συντονιστή
           importer: Ανάκληση πρόσβασης εισαγωγέα
-      block_history: Ενεργές Φραγές
-      moderator_history: Î¦Ï\81αγέÏ\82 Ï\80οÏ\85 Î\95πιβλήθηκαν
+      block_history: Ενεργές φραγές
+      moderator_history: Î¦Ï\81αγέÏ\82 Ï\80οÏ\85 Îµπιβλήθηκαν
       revoke_all_blocks: Ανάκληση όλων των φραγών
       comments: Σχόλια
-      create_block: Φραγή αυτού του Χρήστη
-      activate_user: Ενεργοποίηση αυτού του λογαριασμού Χρήστη
-      confirm_user: Επιβεβαίωση αυτού του λογαριασμού Χρήστη
+      create_block: Φραγή αυτού του χρήστη
+      activate_user: Ενεργοποίηση αυτού του χρήστη
+      confirm_user: Επιβεβαίωση αυτού του χρήστη
       unconfirm_user: Καταργήση της επιβεβαίωσης αυτού του χρήστη
       unsuspend_user: Κατάργηση αναστολής αυτού του χρήστη
-      hide_user: Απόκρυψη αυτού του λογαριασμού Χρήστη
-      unhide_user: Επανεμφάνιση αυτού του λογαριασμού Χρήστη
-      delete_user: Διαγραφή αυτού του Χρήστη
+      hide_user: Απόκρυψη αυτού του χρήστη
+      unhide_user: Επανεμφάνιση αυτού του χρήστη
+      delete_user: Διαγραφή αυτού του χρήστη
       confirm: Επιβεβαίωση
       report: Αναφορά αυτού του χρήστη
     go_public:
       flash success: Όλες οι επεξεργασίες σας είναι τώρα δημόσιες και έχετε τη δυνατότητα
         να επεξεργαστείτε τον χάρτη.
+    issued_blocks:
+      show:
+        title: Φραγές από {{GENDER:%{name}|τον|την}} %{name}
+        heading_html: Κατάλογος φραγών από {{GENDER:%{name}|τον|την}} %{name}
+        empty: '{{GENDER:%{name}|Ο|Η}} %{name} δεν έχει κάνει φραγή ακόμα.'
+    received_blocks:
+      show:
+        title: Φραγές {{GENDER:%{name}|στον|στην}} %{name}
+        heading_html: Κατάλογος φραγών {{GENDER:%{name}|στον|στην}} %{name}
+        empty: '{{GENDER:%{name}|Ο|Η}} %{name} δεν έχει φραγεί ακόμα.'
+      edit:
+        title: Ανάκληση όλων των φραγών σε %{block_on}
+        heading_html: Ανάκληση όλων των φραγών σε %{block_on}
+        empty: Ο χρήστης %{name} δεν έχει ενεργές φραγές.
+        confirm: Είστε σίγουροι ότι θέλετε να ανακαλέσετε %{active_blocks};
+        active_blocks:
+          one: '%{count} ενεργή φραγή'
+          other: '%{count} ενεργές φραγές'
+        revoke: Ανάκληση!
+      destroy:
+        flash: Όλες οι ενεργές φραγές έχουν ανακληθεί.
     lists:
       show:
         title: Χρήστες
@@ -2978,15 +3048,15 @@ el:
         found_users:
           one: '%{count} χρήστης βρέθηκε'
           other: '%{count} χρήστες βρέθηκαν'
-        confirm: Î\95Ï\80ιβεβαίÏ\89Ï\83η Î\95Ï\80ιλεγμένÏ\89ν Î§ρηστών
+        confirm: Î\95Ï\80ιβεβαίÏ\89Ï\83η ÎµÏ\80ιλεγμένÏ\89ν Ï\87ρηστών
         hide: Απόκρυψη επιλεγμένων χρηστών
       user:
         summary_html: '%{name} δημιουργήθηκε από την διεύθυνση IP %{ip_address} στις
           %{date}'
         summary_no_ip_html: '%{name} δημιουργήθηκε στις %{date}'
     suspended:
-      title: Î\9f Î\9bογαÏ\81ιαÏ\83μÏ\8cÏ\82 Î­Ï\87ει Î\91νασταλεί
-      heading: Î\9f Î\9bογαÏ\81ιαÏ\83μÏ\8cÏ\82 Î­Ï\87ει Î\91νασταλεί
+      title: Î\9f Î»Î¿Î³Î±Ï\81ιαÏ\83μÏ\8cÏ\82 Î­Ï\87ει Î±νασταλεί
+      heading: Î\9f Î»Î¿Î³Î±Ï\81ιαÏ\83μÏ\8cÏ\82 Î­Ï\87ει Î±νασταλεί
       support: υποστήριξη
       automatically_suspended: Λυπούμαστε, ο λογαριασμός σας έχει τεθεί αυτόματα σε
         αναστολή λόγω ύποπτης δραστηριότητας.
@@ -3013,13 +3083,12 @@ el:
       already_has_role: Ο χρήστης έχει ήδη ρόλο %{role}.
       doesnt_have_role: Ο χρήστης δεν έχει ρόλο %{role}.
       not_revoke_admin_current_user: Ο διαχειριστικός ρόλος δεν μπορεί να αναιρεθεί
-        από τον τρέχον χρήστη.
+        από τον τρέχοντα χρήστη.
     grant:
-      are_you_sure: Είστε βέβαιος ότι θέλετε να εκχωρήσετε το ρόλο '%{role}' στον
-        χρήστη '%{name}';
+      are_you_sure: Σίγουρα θέλετε να εκχωρήσετε το ρόλο «%{role}» στον χρήστη «%{name}»;
     revoke:
-      are_you_sure: Σίγουρα θέλετε να ανακαλέστε τον ρόλο '%{role}' από τον χρήστη
-        '%{name}';
+      are_you_sure: Σίγουρα θέλετε να ανακαλέστε τον ρόλο «%{role}» από τον χρήστη
+        «%{name}»;
   user_blocks:
     model:
       non_moderator_update: Πρέπει να είστε συντονιστής για να δημιουργήσετε ή να
@@ -3029,19 +3098,19 @@ el:
       sorry: Συγγνώμη, δε βρέθηκε φραγή χρήστη με ID %{id}.
       back: Επιστροφή στο ευρετήριο
     new:
-      title: Δημιουργία φραγής στον %{name}
-      heading_html: Δημιουργία φραγής στον %{name}
+      title: Δημιουργία φραγής {{GENDER:%{name}|στον|στην}} %{name}
+      heading_html: Δημιουργία φραγής {{GENDER:%{name}|στον|στην}} %{name}
       period: Για πόσο καιρό από τώρα θα είναι αποκλεισμένος ο χρήστης από το API.
     edit:
-      title: Επεξεργασία φραγής στον %{name}
-      heading_html: Επεξεργασία φραγής στον %{name}
+      title: Επεξεργασία φραγής {{GENDER:%{name}|στον|στην}} %{name}
+      heading_html: Επεξεργασία φραγής {{GENDER:%{name}|στον|στην}} %{name}
       period: Για πόσο καιρό από τώρα θα είναι αποκλεισμένος ο χρήστης από το API.
       revoke: Ανάκληση φραγής
     filter:
       block_period: Η περίοδος φραγής πρέπει να είναι μία από τις τιμές στην πτυσσόμενη
         λίστα.
     create:
-      flash: Δημιουργήθηκε φραγή στον χρήστη %{name}.
+      flash: Δημιουργήθηκε φραγή {{GENDER:%{name}|στον|στην}} χρήστη %{name}.
     update:
       only_creator_can_edit: Μόνο ο συντονιστής που δημιούργησε αυτήν τη φραγή μπορεί
         να την επεξεργαστεί.
@@ -3056,16 +3125,6 @@ el:
       title: Φραγές χρήστη
       heading: Λίστα φραγών του χρήστη
       empty: Δεν έχουν γίνει ακόμα φραγές.
-    revoke_all:
-      title: Ανάκληση όλων των φραγών σε %{block_on}
-      heading_html: Ανάκληση όλων των φραγών σε %{block_on}
-      empty: Ο χρήστης %{name} δεν έχει ενεργές φραγές.
-      confirm: Είστε σίγουροι ότι θέλετε να ανακαλέσετε %{active_blocks};
-      active_blocks:
-        one: '%{count} ενεργή φραγή'
-        other: '%{count} ενεργές φραγές'
-      revoke: Ανάκληση!
-      flash: Όλες οι ενεργές φραγές έχουν ανακληθεί.
     helper:
       time_future_html: Τελειώνει σε %{time}.
       until_login: Ενεργό έως ότου ο χρήστης συνδεθεί.
@@ -3097,17 +3156,11 @@ el:
         read_html: διαβάστηκε στις %{time}
         time_in_future_title: '%{time_absolute}; σε %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Φραγές στον %{name}
-      heading_html: Κατάλογος φραγών στον %{name}
-      empty: Ο %{name} δεν έχει φραχτεί ακόμα.
-    blocks_by:
-      title: Φραγές από %{name}
-      heading_html: Κατάλογος φραγών από %{name}
-      empty: Ο/Η %{name} δεν έχει κάνει φραγή ακόμα.
     show:
-      title: Ο/Η %{block_on} έχει φραχτεί από τον/την %{block_by}
-      heading_html: Ο/Η %{block_on} έχει φραχτεί από τον/την %{block_by}
+      title: '{{GENDER:%{block_on}|Ο|Η}} %{block_on} έχει φραγεί από {{GENDER:%{block_by}|τον|την}}
+        %{block_by}'
+      heading_html: '{{GENDER:%{block_on}|Ο|Η}} %{block_on} έχει φραγεί από {{GENDER:%{block_by}|τον|την}}
+        %{block_by}'
       created: 'Δημιουργήθηκε:'
       duration: 'Διάρκεια:'
       status: 'Κατάσταση:'
@@ -3127,14 +3180,14 @@ el:
     navigation:
       all_blocks: Όλες οι φραγές
       blocks_on_me: Φραγές σε μένα
-      blocks_on_user_html: Φραγές σε %{user}
+      blocks_on_user_html: Φραγές {{GENDER:%{user}|στον|στην}} %{user}
       blocks_by_me: Φραγές από μένα
-      blocks_by_user_html: Φραγές από %{user}
+      blocks_by_user_html: Φραγές από {{GENDER:%{user}|τον|την}} %{user}
       block: 'Φραγή #%{id}'
-      new_block: Νέα Φραγή
+      new_block: Νέα φραγή
   user_mutes:
     index:
-      title: Χρήστες σε Σίγαση
+      title: Χρήστες σε σίγαση
       my_muted_users: Οι χρήστες μου σε σίγαση
       you_have_muted_n_users:
         one: Έχετε θέσει σε σίγαση %{count} χρήστη
@@ -3145,7 +3198,7 @@ el:
         και τους Συντονιστές αλλά δεν θα γίνει σίγαση των μηνυμάτων τους.
       table:
         thead:
-          muted_user: Χρήστης σε Σίγαση
+          muted_user: Χρήστης σε σίγαση
           actions: Ενέργειες
         tbody:
           unmute: Κατάργηση σίγασης
@@ -3190,8 +3243,8 @@ el:
       event_reopened_by_html: Επανενεργοποιήθηκε από %{user} %{time_ago}
       event_reopened_by_anonymous_html: Επανενεργοποιήθηκε από ανώνυμο %{time_ago}
       event_hidden_by_html: Αποκρύφθηκε από %{user} %{time_ago}
-      report: αναφορά αυτής της σημείωσης
-      anonymous_warning: Αυτό η σημείωση περιλαμβάνει σχόλια από ανώνυμους χρήστες
+      report: ÎºÎ¬Î½ÎµÏ\84ε Î±Î½Î±Ï\86οÏ\81ά Î±Ï\85Ï\84ήÏ\82 Ï\84ηÏ\82 Ï\83ημείÏ\89Ï\83ηÏ\82
+      anonymous_warning: Αυτή η σημείωση περιλαμβάνει σχόλια από ανώνυμους χρήστες
         που πρέπει να επαληθεύονται ανεξάρτητα.
       discussion: Συζήτηση
       subscribe: Εγγραφή
@@ -3199,11 +3252,11 @@ el:
       hide: Απόκρυψη
       resolve: Επιλύστε
       reactivate: Επανενεργοποίηση
-      comment_and_resolve: Î£Ï\87ολιάÏ\83Ï\84ε ÎºÎ±Î¹ Î\95πιλύστε
+      comment_and_resolve: Î£Ï\87ολιάÏ\83Ï\84ε ÎºÎ±Î¹ Îµπιλύστε
       comment: Σχολιάστε
       log_in_to_comment: Συνδεθείτε για να σχολιάσετε σε αυτή την σημείωση
       report_link_html: Εάν αυτή η σημείωση περιέχει ευαίσθητες πληροφορίες που πρέπει
-        να αφαιρεθούν, μπορείτε %{link}.
+        να αφαιρεθούν, μπορείτε να %{link}.
       other_problems_resolve: Για όλα τα άλλα προβλήματα με τη σημείωση, επιλύστε
         το μόνοι σας με ένα σχόλιο.
       other_problems_resolved: Για όλα τα άλλα προβλήματα, αρκεί η επίλυση.
@@ -3221,7 +3274,11 @@ el:
       advice: Η σημείωση σας είναι δημόσια και μπορεί να χρησιμοποιηθεί για την ενημέρωση
         του χάρτη, γι'αυτό μην προστέθετε προσωπικές πληροφορίες, ή πληροφορίες από
         χάρτες που καλύπτονται από πνευματικά δικαιώματα ή καταχωρήσεις καταλόγου.
-      add: Προσθήκη Σημείωσης
+      add: Προσθήκη σημείωσης
+    new_readonly:
+      title: Νέα σημείωση
+      warning: Δεν είναι δυνατή η δημιουργία νέων σημειώσεων, επειδή το API OpenStreetMap
+        βρίσκεται αυτήν τη στιγμή σε λειτουργία μόνο για ανάγνωση.
     notes_paging_nav:
       showing_page: Σελίδα %{page}
       next: Επόμενη
@@ -3234,7 +3291,7 @@ el:
       image: Εικόνα
       link: Σύνδεσμος ή HTML
       long_link: Σύνδεσμος
-      short_link: Σύντομος Σύνδεσμος
+      short_link: Σύντομος σύνδεσμος
       geo_uri: Geo URI
       embed: HTML
       custom_dimensions: Ορισμός προσαρμοσμένων διαστάσεων
@@ -3242,19 +3299,19 @@ el:
       scale: 'Κλίμακα:'
       image_dimensions: Η εικόνα θα εμφανίζει το %{layer} στο %{width} x %{height}
       download: Λήψη
-      short_url: Σύντομος Σύνδεμος
+      short_url: Σύντομος σύνδεμος
       include_marker: Συμπερίληψη δείκτη
       center_marker: Κεντράρισμα χάρτη στο δείκτη
       paste_html: Επικόλληση HTML για ενσωμάτωση στην ιστοσελίδα
-      view_larger_map: Î Ï\81οβολή Î\9cεγαλÏ\8dÏ\84εÏ\81οÏ\85 Î§άρτη
-      only_standard_layer: Μόνο τα στρώματα Κανονικός, Ποδηλασία και Συγκοινωνία μπορούν
-        να εξαχθούν ως εικόνα
+      view_larger_map: Î Ï\81οβολή Î¼ÎµÎ³Î±Î»Ï\8dÏ\84εÏ\81οÏ\85 Ï\87άρτη
+      only_layers_exported_as_image: 'Μόνο τα ακόλουθα στρώματα μπορούν να εξαχθούν
+        ως εικόνα:'
     embed:
       report_problem: Αναφορά προβλήματος
     key:
       title: Υπόμνημα
       tooltip: Υπόμνημα
-      tooltip_disabled: Το υπόμνημα δεν είναι διαθέσιμο σε αυτό το στρώμα
+      tooltip_disabled: Το υπόμνημα δεν είναι διαθέσιμο σε αυτό το επίπεδο
     map:
       zoom:
         in: Μεγέθυνση
@@ -3268,19 +3325,19 @@ el:
           one: Είστε εντός %{count} ποδός από το σημείο
           other: Είστε εντός %{count} ποδιών από το σημείο
       base:
-        standard: Κανονικός
+        standard: Κανονικό
         cyclosm: CyclOSM ποδηλασία
         cycle_map: Ποδηλασία
         transport_map: Συγκοινωνία
         tracestracktop_topo: Tracetrack Topo
-        hot: Ανθρωπιστικός
+        hot: Ανθρωπιστικό
       layers:
-        header: Î£Ï\84Ï\81Ï\8eμαÏ\84α
+        header: Î\95Ï\80ίÏ\80εδα Ï\87άÏ\81Ï\84η
         notes: Σημειώσεις χάρτη
         data: Δεδομένα χάρτη
         gps: Δημόσια ίχνη GPS
         overlays: Ενεργοποίηση επικαλύψεων για την αντιμετώπιση προβλημάτων του χάρτη
-        title: Î£Ï\84Ï\81Ï\8eμαÏ\84α Ï\87άÏ\81Ï\84η
+        title: Î\95Ï\80ίÏ\80εδα
       openstreetmap_contributors: Συνεισφέροντες OpenStreetMap
       make_a_donation: Κάντε μια δωρεά
       website_and_api_terms: Όροι ιστότοπου και API
@@ -3302,7 +3359,7 @@ el:
       queryfeature_tooltip: Πληροφορίες χαρακτηριστικών
       queryfeature_disabled_tooltip: Μεγεθύνετε τον χάρτη για να μάθετε περισσότερα
         για διάφορα χαρακτηριστικά
-      embed_html_disabled: Η ενσωμάτωση HTML δεν είναι διαθέσιμη γι' αυτό το στρώμα
+      embed_html_disabled: Η ενσωμάτωση HTML δεν είναι διαθέσιμη γι' αυτό το επίπεδο
         χάρτη
     edit_help: Μετακινήστε το χάρτη και να κάνετε ζουμ σε μια τοποθεσία που θέλετε
       να επεξεργαστείτε, στη συνέχεια, κάντε κλικ εδώ.
@@ -3321,8 +3378,8 @@ el:
       descend: Κατάβαση
       directions: Οδηγίες
       distance: Απόσταση
-      distance_m: '%{distance}m'
-      distance_km: '%{distance}km'
+      distance_m: '%{distance} μ'
+      distance_km: '%{distance} χλμ.'
       errors:
         no_route: Δεν βρέθηκε διαδρομή ανάμεσα σε αυτά τα δύο μέρη.
         no_place: Συγγνώμη, δεν βρέθηκε αυτό το '%{place}'.
@@ -3331,20 +3388,19 @@ el:
         slight_right_without_exit: Ελαφριά δεξιά στην %{name}
         offramp_right: Πάρτε την ράμπα στα δεξιά
         offramp_right_with_exit: Πάρτε την έξοδο %{exit} στα δεξιά
-        offramp_right_with_exit_name: Πάρτε την έξοδο %{exit} στα δεξιά επάνω στο
-          %{name}
+        offramp_right_with_exit_name: Πάρτε την έξοδο %{exit} στα δεξιά προς τη %{name}
         offramp_right_with_exit_directions: Πάρτε την έξοδο %{exit} στα δεξιά προς
-          τις %{directions}
+          %{directions}
         offramp_right_with_exit_name_directions: Πάρτε την έξοδο %{exit} στα δεξιά
-          επάνω στο %{name}, προς τις %{directions}
+          προς τη %{name}, προς %{directions}
         offramp_right_with_name: Πάρτε τη λωρίδα δεξιά προς %{name}
-        offramp_right_with_directions: Πάρτε την ράμπα στα δεξιά προς τις %{directions}
+        offramp_right_with_directions: Πάρτε την ράμπα στα δεξιά προς %{directions}
         offramp_right_with_name_directions: Πάρτε την ράμπα στα δεξιά επάνω στο %{name},
-          προς τις %{directions}
-        onramp_right_without_exit: Στρίψτε δεξιά στη λωρίδα προς %{name}
-        onramp_right_with_directions: Στρίψτε δεξιά επάνω στη ράμπα προς τις %{directions}
-        onramp_right_with_name_directions: Στρίψτε δεξιά στην ράμπα επάνω στο %{name},
-          προς τις %{directions}
+          προς %{directions}
+        onramp_right_without_exit: Στρίψτε δεξιά στη ράμπα προς τη %{name}
+        onramp_right_with_directions: Στρίψτε δεξιά επάνω στη ράμπα προς %{directions}
+        onramp_right_with_name_directions: Στρίψτε δεξιά στην ράμπα προς %{name},
+          προς %{directions}
         onramp_right_without_directions: Στρίψτε δεξιά επάνω στη ράμπα
         onramp_right: Στρίψτε δεξιά επάνω στη ράμπα
         endofroad_right_without_exit: Στο τέλος του δρόμου στρίψτε δεξιά στην %{name}
@@ -3357,20 +3413,20 @@ el:
         turn_left_without_exit: Στρίψτε αριστερά στην %{name}
         offramp_left: Πάρτε την ράμπα στα αριστερά
         offramp_left_with_exit: Πάρτε την έξοδο %{exit} στα αριστερά
-        offramp_left_with_exit_name: Πάρτε την έξοδο %{exit} στα αριστερά επάνω στο
+        offramp_left_with_exit_name: Πάρτε την έξοδο %{exit} στα αριστερά προς τη
           %{name}
         offramp_left_with_exit_directions: Πάρτε την έξοδο %{exit} στα αριστερά προς
-          τις %{directions}
+          %{directions}
         offramp_left_with_exit_name_directions: Πάρτε την έξοδο %{exit} στα αριστερά
-          επάνω στο %{name}, προς τις %{directions}
+          προς τη %{name}, προς %{directions}
         offramp_left_with_name: Πάρτε τη λωρίδα αριστερά προς %{name}
-        offramp_left_with_directions: Πάρτε την ράμπα στα αριστερά προς τις %{directions}
-        offramp_left_with_name_directions: Πάρτε την ράμπα στα αριστερά επάνω στο
-          %{name}, προς τις %{directions}
+        offramp_left_with_directions: Πάρτε την ράμπα στα αριστερά προς %{directions}
+        offramp_left_with_name_directions: Πάρτε την ράμπα στα αριστερά στη %{name},
+          προς %{directions}
         onramp_left_without_exit: Στρίψτε αριστερά στη λωρίδα προς %{name}
-        onramp_left_with_directions: Στρίψτε αριστερά επάνω στη ράμπα προς τις %{directions}
-        onramp_left_with_name_directions: Στρίψτε αριστερά στην ράμπα επάνω στο %{name},
-          προς τις %{directions}
+        onramp_left_with_directions: Στρίψτε αριστερά επάνω στη ράμπα προς %{directions}
+        onramp_left_with_name_directions: Στρίψτε αριστερά στην ράμπα προς %{name},
+          προς %{directions}
         onramp_left_without_directions: Στρίψτε αριστερά επάνω στη ράμπα
         onramp_left: Στρίψτε αριστερά επάνω στη ράμπα
         endofroad_left_without_exit: Στο τέλος του δρόμου στρίψτε αριστερά στην %{name}
@@ -3379,31 +3435,30 @@ el:
         slight_left_without_exit: Ελαφριά αριστερά στην %{name}
         via_point_without_exit: (μέσω σημείου)
         follow_without_exit: Ακολουθήστε την %{name}
-        roundabout_without_exit: Î£Ï\84ον ÎºÏ\85κλικÏ\8c ÎºÏ\8cμβο Î²Î³ÎµÎ¯Ï\84ε Ï\83Ï\84ο %{name}
+        roundabout_without_exit: Î£Ï\84ον ÎºÏ\85κλικÏ\8c ÎºÏ\8cμβο Î²Î³ÎµÎ¯Ï\84ε Ï\83Ï\84η %{name}
         leave_roundabout_without_exit: Βγείτε από τον κυκλικό κόμβο - %{name}
         stay_roundabout_without_exit: Μείνετε στον κυκλικό κόμβο - %{name}
-        start_without_exit: Î\9eεκινήÏ\83Ï\84ε Ï\83Ï\84ο %{name}
+        start_without_exit: Î\9eεκινήÏ\83Ï\84ε Ï\83Ï\84η %{name}
         destination_without_exit: Φτάσατε στον προορισμό σας
         against_oneway_without_exit: Πηγαίνετε αντίθετα στον μονόδρομο %{name}
         end_oneway_without_exit: Τέλος του μονόδρομου %{name}
-        roundabout_with_exit: Στην κυκλική διασταύρωση, πάρτε την %{exit}η έξοδο προς
-          %{name}
-        roundabout_with_exit_ordinal: Στην κυκλική διασταύρωση, πάρτε την έξοδο %{exit}
+        roundabout_with_exit: Στον κυκλικό κόμβο, πάρτε την %{exit} έξοδο προς %{name}
+        roundabout_with_exit_ordinal: Στον κυκλικό κόμβο, πάρτε την %{exit} έξοδο
           προς %{name}
-        exit_roundabout: Î\92γείÏ\84ε Î±Ï\80Ï\8c Ï\84ην ÎºÏ\85κλική Î´Î¹Î±Ï\83Ï\84αÏ\8dÏ\81Ï\89Ï\83η προς %{name}
+        exit_roundabout: Î\92γείÏ\84ε Î±Ï\80Ï\8c Ï\84ον ÎºÏ\85κλικÏ\8c ÎºÏ\8cμβο προς %{name}
         unnamed: ανώνυμος δρόμος
         courtesy: Οι οδηγίες είναι προσφορά του %{link}
         exit_counts:
-          first: 1οÏ\82
-          second: 2οÏ\82
-          third: 3οÏ\82
-          fourth: 4οÏ\82
-          fifth: 5οÏ\82
-          sixth: 6οÏ\82
-          seventh: 7οÏ\82
-          eighth: 8οÏ\82
-          ninth: 9οÏ\82
-          tenth: 10οÏ\82
+          first: 1η
+          second: 2η
+          third: 3η
+          fourth: 4η
+          fifth: 5η
+          sixth: 6η
+          seventh: 7η
+          eighth: 8η
+          ninth: 9η
+          tenth: 10η
       time: Διάρκεια
     query:
       node: Κόμβος
@@ -3447,7 +3502,7 @@ el:
       not_empty: Η σύνταξη δεν είναι κενή. Παρακαλούμε απο-συντάξτε όλες τις εκδόσεις
         σε αυτή τη σύνταξη πριν την καταστρέψετε.
       flash: Η παράληψη καταστραφεί.
-      error: Î\95μÏ\86ανίÏ\83Ï\84ηκε Î­Î½Î± Ï\83Ï\86άλμα Ï\80οÏ\85 ÎºÎ±Ï\84αÏ\83Ï\84Ï\81έÏ\86ει Î±Ï\85Ï\84ή Ï\84η Ï\83Ï\8dνÏ\84αξη.
+      error: Î\95μÏ\86ανίÏ\83Ï\84ηκε Î­Î½Î± Ï\83Ï\86άλμα Ï\83Ï\84η ÎºÎ±Ï\84αÏ\83Ï\84Ï\81οÏ\86ή Î±Ï\85Ï\84ήÏ\82 Ï\84ηÏ\82 Ï\80αÏ\81άλειÏ\88ηÏ\82.
   validations:
     leading_whitespace: περιέχει κενό διάστημα στην αρχή
     trailing_whitespace: περιέχει κενό διάστημα στο τέλος
index b761ec4e1c71a41fc8bd7eafb8996531fb6934b9..0bf3f379672a02cbbafe7ea21a8d7a2e53a9cbf2 100644 (file)
@@ -1195,27 +1195,6 @@ en-GB:
       failure: An e-mail address has already been confirmed with this token.
       unknown_token: That confirmation code has expired or does not exist.
   messages:
-    inbox:
-      title: Inbox
-      messages: You have %{new_messages} and %{old_messages}
-      new_messages:
-        one: '%{count} new message'
-        other: '%{count} new messages'
-      old_messages:
-        one: '%{count} old message'
-        other: '%{count} old messages'
-      no_messages_yet_html: You have no messages yet. Why not get in touch with some
-        of the %{people_mapping_nearby_link}?
-      people_mapping_nearby: people mapping nearby
-    messages_table:
-      from: From
-      to: To
-      subject: Subject
-      date: Date
-    message_summary:
-      unread_button: Mark as unread
-      read_button: Mark as read
-      destroy_button: Delete
     new:
       title: Send message
       send_message_to_html: Send a new message to %{name}
@@ -1228,29 +1207,53 @@ en-GB:
       title: No such message
       heading: No such message
       body: Sorry, there is no message with that id.
-    outbox:
-      title: Outbox
-      messages:
-        one: You have %{count} sent message
-        other: You have %{count} sent messages
-      no_sent_messages_html: You have no sent messages yet. Why not get in touch with
-        some of the %{people_mapping_nearby_link}?
-      people_mapping_nearby: people mapping nearby
     show:
       title: Read message
       reply_button: Reply
       unread_button: Mark as unread
       destroy_button: Delete
       back: Back
-    sent_message_summary:
-      destroy_button: Delete
-    heading:
-      my_inbox: My Inbox
     mark:
       as_read: Message marked as read
       as_unread: Message marked as unread
     destroy:
       destroyed: Message deleted
+    mailboxes:
+      heading:
+        my_inbox: My Inbox
+      messages_table:
+        from: From
+        to: To
+        subject: Subject
+        date: Date
+      message:
+        unread_button: Mark as unread
+        read_button: Mark as read
+        destroy_button: Delete
+    inboxes:
+      show:
+        title: Inbox
+        messages: You have %{new_messages} and %{old_messages}
+        new_messages:
+          one: '%{count} new message'
+          other: '%{count} new messages'
+        old_messages:
+          one: '%{count} old message'
+          other: '%{count} old messages'
+        no_messages_yet_html: You have no messages yet. Why not get in touch with
+          some of the %{people_mapping_nearby_link}?
+        people_mapping_nearby: people mapping nearby
+    outboxes:
+      show:
+        title: Outbox
+        messages:
+          one: You have %{count} sent message
+          other: You have %{count} sent messages
+        no_sent_messages_html: You have no sent messages yet. Why not get in touch
+          with some of the %{people_mapping_nearby_link}?
+        people_mapping_nearby: people mapping nearby
+      message:
+        destroy_button: Delete
   passwords:
     new:
       title: Lost password
@@ -1688,6 +1691,14 @@ en-GB:
       confirm: Confirm
     go_public:
       flash success: All your edits are now public, and you are now allowed to edit.
+    issued_blocks:
+      show:
+        title: Blocks by %{name}
+        empty: '%{name} has not made any blocks yet.'
+    received_blocks:
+      show:
+        title: Blocks on %{name}
+        empty: '%{name} has not been blocked yet.'
     lists:
       show:
         title: Users
@@ -1754,12 +1765,6 @@ en-GB:
         hours:
           one: '%{count} hour'
           other: '%{count} hours'
-    blocks_on:
-      title: Blocks on %{name}
-      empty: '%{name} has not been blocked yet.'
-    blocks_by:
-      title: Blocks by %{name}
-      empty: '%{name} has not made any blocks yet.'
     show:
       title: '%{block_on} blocked by %{block_by}'
       heading_html: '%{block_on} blocked by %{block_by}'
index 94d095c265df0ba272f41824f3b184d409e2c432..32b0bc6bcc680fea9ba486ed7e1cf81eddeefb76 100644 (file)
@@ -20,9 +20,6 @@ en:
         create: Add Comment
       message:
         create: Send
-      client_application:
-        create: Register
-        update: Update
       oauth2_application:
         create: Register
         update: Update
@@ -245,25 +242,6 @@ en:
       entry:
         comment: Comment
         full: Full note
-  account:
-    deletions:
-      show:
-        title: Delete My Account
-        warning: Warning! The account deletion process is final, and cannot be reversed.
-        delete_account: Delete Account
-        delete_introduction: "You can delete your OpenStreetMap account using the button below. Please note the following details:"
-        delete_profile: Your profile information, including your avatar, description and home location will be removed.
-        delete_display_name: Your display name will be removed, and can be reused by other accounts.
-        retain_caveats: "However, some information about you will be retained on OpenStreetMap, even after your account is deleted:"
-        retain_edits: Your edits to the map database, if any, will be retained.
-        retain_traces: Your uploaded traces, if any, will be retained.
-        retain_diary_entries: Your diary entries and diary comments, if any, will be retained but hidden from view.
-        retain_notes: Your map notes and note comments, if any, will be retained but hidden from view.
-        retain_changeset_discussions: Your changeset discussions, if any, will be retained.
-        retain_email: Your email address will be retained.
-        recent_editing_html: "As you have edited recently your account cannot currently be deleted. Deletion will be possible in %{time}."
-        confirm_delete: Are you sure?
-        cancel: Cancel
   accounts:
     edit:
       title: "Edit account"
@@ -305,6 +283,53 @@ en:
       success: "User information updated successfully."
     destroy:
       success: "Account Deleted."
+    deletions:
+      show:
+        title: Delete My Account
+        warning: Warning! The account deletion process is final, and cannot be reversed.
+        delete_account: Delete Account
+        delete_introduction: "You can delete your OpenStreetMap account using the button below. Please note the following details:"
+        delete_profile: Your profile information, including your avatar, description and home location will be removed.
+        delete_display_name: Your display name will be removed, and can be reused by other accounts.
+        retain_caveats: "However, some information about you will be retained on OpenStreetMap, even after your account is deleted:"
+        retain_edits: Your edits to the map database, if any, will be retained.
+        retain_traces: Your uploaded traces, if any, will be retained.
+        retain_diary_entries: Your diary entries and diary comments, if any, will be retained but hidden from view.
+        retain_notes: Your map notes and note comments, if any, will be retained but hidden from view.
+        retain_changeset_discussions: Your changeset discussions, if any, will be retained.
+        retain_email: Your email address will be retained.
+        recent_editing_html: "As you have edited recently your account cannot currently be deleted. Deletion will be possible in %{time}."
+        confirm_delete: Are you sure?
+        cancel: Cancel
+    terms:
+      show:
+        title: "Terms"
+        heading: "Terms"
+        heading_ct: "Contributor terms"
+        read and accept with tou: "Please read the contributor agreement and the terms of use, check both checkboxes when done and then press the continue button."
+        contributor_terms_explain: "This agreement governs the terms for your existing and future contributions."
+        read_ct: "I have read and agree to the above contributor terms"
+        tou_explain_html: "These %{tou_link} govern the use of the website and other infrastructure provided by the OSMF. Please click on the link, read and agree to the text."
+        read_tou: "I have read and agree to the Terms of Use"
+        consider_pd: "In addition to the above, I consider my contributions to be in the Public Domain"
+        consider_pd_why: "what's this?"
+        consider_pd_why_url: https://osmfoundation.org/wiki/Licence_and_Legal_FAQ/Why_would_I_want_my_contributions_to_be_public_domain
+        guidance_info_html: "Information to help understand these terms: a %{readable_summary_link} and some %{informal_translations_link}"
+        readable_summary: human readable summary
+        informal_translations: informal translations
+        continue: "Continue"
+        declined: "https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined"
+        cancel: "Cancel"
+        you need to accept or decline: "Please read and then either accept or decline the new Contributor Terms to continue."
+        legale_select: "Country of residence:"
+        legale_names:
+          france: "France"
+          italy: "Italy"
+          rest_of_world: "Rest of the world"
+      terms_declined_flash:
+        terms_declined_html: We are sorry that you have decided to not accept the new Contributor Terms. For more information, please see %{terms_declined_link}.
+        terms_declined_link: this wiki page
+        terms_declined_url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
   browse:
     deleted_ago_by_html: "Deleted %{time_ago} by %{user}"
     edited_ago_by_html: "Edited %{time_ago} by %{user}"
@@ -324,17 +349,13 @@ en:
     view_history: "View History"
     view_unredacted_history: "View Unredacted History"
     view_details: "View Details"
-    view_redacted_data: "View Redacted Data"
-    view_redaction_message: "View Redaction Message"
     location: "Location:"
     common_details:
       coordinates_html: "%{latitude}, %{longitude}"
     node:
       title_html: "Node: %{name}"
-      history_title_html: "Node History: %{name}"
     way:
       title_html: "Way: %{name}"
-      history_title_html: "Way History: %{name}"
       nodes: "Nodes"
       nodes_count:
         one: "%{count} node"
@@ -344,7 +365,6 @@ en:
         other: "part of ways %{related_ways}"
     relation:
       title_html: "Relation: %{name}"
-      history_title_html: "Relation History: %{name}"
       members: "Members"
       members_count:
         one: "%{count} member"
@@ -360,13 +380,6 @@ en:
       entry_role_html: "%{relation_name} (as %{relation_role})"
     not_found:
       title: Not Found
-      sorry: "Sorry, %{type} #%{id} could not be found."
-      type:
-        node: node
-        way: way
-        relation: relation
-        changeset: changeset
-        note: note
     timeout:
       title: Timeout Error
       sorry: "Sorry, the data for the %{type} with the id %{id} took too long to retrieve."
@@ -403,27 +416,44 @@ en:
       introduction: "Click on the map to find nearby features."
       nearby: "Nearby features"
       enclosing: "Enclosing features"
+  old_elements:
+    index:
+      node:
+        title_html: "Node History: %{name}"
+      way:
+        title_html: "Way History: %{name}"
+      relation:
+        title_html: "Relation History: %{name}"
+    actions:
+      view_redacted_data: "View Redacted Data"
+      view_redaction_message: "View Redaction Message"
   nodes:
+    not_found_message:
+      sorry: "Sorry, node #%{id} could not be found."
     timeout:
       sorry: "Sorry, the data for the node with the id %{id} took too long to retrieve."
   old_nodes:
-    not_found:
+    not_found_message:
       sorry: "Sorry, node #%{id} version %{version} could not be found."
     timeout:
       sorry: "Sorry, the history of the node with the id %{id} took too long to retrieve."
   ways:
+    not_found_message:
+      sorry: "Sorry, way #%{id} could not be found."
     timeout:
       sorry: "Sorry, the data for the way with the id %{id} took too long to retrieve."
   old_ways:
-    not_found:
+    not_found_message:
       sorry: "Sorry, way #%{id} version %{version} could not be found."
     timeout:
       sorry: "Sorry, the history of the way with the id %{id} took too long to retrieve."
   relations:
+    not_found_message:
+      sorry: "Sorry, relation #%{id} could not be found."
     timeout:
       sorry: "Sorry, the data for the relation with the id %{id} took too long to retrieve."
   old_relations:
-    not_found:
+    not_found_message:
       sorry: "Sorry, relation #%{id} version %{version} could not be found."
     timeout:
       sorry: "Sorry, the history of the relation with the id %{id} took too long to retrieve."
@@ -499,6 +529,8 @@ en:
       ways_paginated: "Ways (%{x}-%{y} of %{count})"
       relations: "Relations (%{count})"
       relations_paginated: "Relations (%{x}-%{y} of %{count})"
+    not_found_message:
+      sorry: "Sorry, changeset #%{id} could not be found."
     timeout:
       sorry: "Sorry, the list of changesets you requested took too long to retrieve."
   dashboards:
@@ -1633,24 +1665,25 @@ en:
       see_their_profile_html: "You can see their profile at %{userurl}."
       befriend_them: "You can also add them as a friend at %{befriendurl}."
       befriend_them_html: "You can also add them as a friend at %{befriendurl}."
-    gpx_description:
-      description_with_tags: "It looks like your file %{trace_name} with the description %{trace_description} and the following tags: %{tags}"
-      description_with_tags_html: "It looks like your file %{trace_name} with the description %{trace_description} and the following tags: %{tags}"
-      description_with_no_tags: "It looks like your file %{trace_name} with the description %{trace_description} and no tags"
-      description_with_no_tags_html: "It looks like your file %{trace_name} with the description %{trace_description} and no tags"
+    gpx_details:
+      details: "Your file details:"
+      filename: Filename
+      url: URL
+      description: Description
+      tags: Tags
+      total_points: Total number of points
+      imported_points: Number of imported points
     gpx_failure:
       hi: "Hi %{to_user},"
-      failed_to_import: "failed to be imported as a GPS trace file. Please verify that your file is a valid GPX file or an archive containing GPX file(s) in the supported format (.tar.gz, .tar.bz2, .tar, .zip, .gpx.gz, .gpx.bz2). Could there be a format or syntax issue with your file? Here is the importing error:"
-      more_info: "More information about GPX import failures and how to avoid them can be found at %{url}."
+      failed_to_import: "It looks like your file failed to be imported as a GPS trace."
+      verify: "Please verify that your file is a valid GPX file or an archive containing GPX file(s) in the supported format (.tar.gz, .tar.bz2, .tar, .zip, .gpx.gz, .gpx.bz2). Could there be a format or syntax issue with your file? Here is the importing error:"
+      more_info: "More information about GPX import failures and how to avoid them can be found at %{url}"
       more_info_html: "More information about GPX import failures and how to avoid them can be found at %{url}."
       import_failures_url: "https://wiki.openstreetmap.org/wiki/GPX_Import_Failures"
       subject: "[OpenStreetMap] GPX Import failure"
     gpx_success:
       hi: "Hi %{to_user},"
-      loaded:
-        one: "loaded successfully with %{trace_points} out of a possible %{count} point."
-        other: "loaded successfully with %{trace_points} out of a possible %{count} points."
-      trace_location: "Your trace is available at %{trace_url}"
+      imported_successfully: "It looks like your file was imported successfully as a GPS trace."
       all_your_traces: "All your successfully uploaded GPX traces can be found at %{url}"
       all_your_traces_html: "All your successfully uploaded GPX traces can be found at %{url}."
       subject: "[OpenStreetMap] GPX Import success"
@@ -1726,8 +1759,8 @@ en:
       success: "Confirmed your account, thanks for signing up!"
       already active: "This account has already been confirmed."
       unknown token: "That confirmation code has expired or does not exist."
-      resend_html: "If you need us to resend the confirmation email, %{reconfirm_link}."
-      click_here: click here
+      if_need_resend: "If you need us to resend the confirmation email, click the button below."
+      resend_button: Resend the confirmation email
     confirm_resend:
       failure: "User %{name} not found."
     confirm_email:
@@ -1741,28 +1774,6 @@ en:
       confirmation_sent: We've sent a new confirmation note to %{email} and as soon as you confirm your account you'll be able to get mapping.
       whitelist: If you use an antispam system which sends confirmation requests then please make sure you whitelist %{sender} as we are unable to reply to any confirmation requests.
   messages:
-    inbox:
-      title: "Inbox"
-      messages: "You have %{new_messages} and %{old_messages}"
-      new_messages:
-        one: "%{count} new message"
-        other: "%{count} new messages"
-      old_messages:
-        one: "%{count} old message"
-        other: "%{count} old messages"
-      no_messages_yet_html: "You have no messages yet. Why not get in touch with some of the %{people_mapping_nearby_link}?"
-      people_mapping_nearby: "people mapping nearby"
-    messages_table:
-      from: "From"
-      to: "To"
-      subject: "Subject"
-      date: "Date"
-      actions: "Actions"
-    message_summary:
-      unread_button: "Mark as unread"
-      read_button: "Mark as read"
-      destroy_button: "Delete"
-      unmute_button: "Move to Inbox"
     new:
       title: "Send message"
       send_message_to_html: "Send a new message to %{name}"
@@ -1774,20 +1785,6 @@ en:
       title: "No such message"
       heading: "No such message"
       body: "Sorry there is no message with that id."
-    outbox:
-      title: "Outbox"
-      messages:
-        one: "You have %{count} sent message"
-        other: "You have %{count} sent messages"
-      no_sent_messages_html: "You have no sent messages yet. Why not get in touch with some of the %{people_mapping_nearby_link}?"
-      people_mapping_nearby: "people mapping nearby"
-    muted:
-      title: "Muted Messages"
-      messages:
-        one: "%{count} muted message"
-        other: "You have %{count} muted messages"
-    reply:
-      wrong_user: "You are logged in as '%{user}' but the message you have asked to reply to was not sent to that user. Please log in as the correct user in order to reply."
     show:
       title: "Read message"
       reply_button: "Reply"
@@ -1795,12 +1792,6 @@ en:
       destroy_button: "Delete"
       back: "Back"
       wrong_user: "You are logged in as '%{user}' but the message you have asked to read was not sent by or to that user. Please log in as the correct user in order to read it."
-    sent_message_summary:
-      destroy_button: "Delete"
-    heading:
-      my_inbox: "My Inbox"
-      my_outbox: "My Outbox"
-      muted_messages: "Muted messages"
     mark:
       as_read: "Message marked as read"
       as_unread: "Message marked as unread"
@@ -1809,6 +1800,53 @@ en:
       error: "The message could not be moved to the Inbox."
     destroy:
       destroyed: "Message deleted"
+    mailboxes:
+      heading:
+        my_inbox: "My Inbox"
+        my_outbox: "My Outbox"
+        muted_messages: "Muted messages"
+      messages_table:
+        from: "From"
+        to: "To"
+        subject: "Subject"
+        date: "Date"
+        actions: "Actions"
+      message:
+        unread_button: "Mark as unread"
+        read_button: "Mark as read"
+        destroy_button: "Delete"
+        unmute_button: "Move to Inbox"
+    inboxes:
+      show:
+        title: "Inbox"
+        messages: "You have %{new_messages} and %{old_messages}"
+        new_messages:
+          one: "%{count} new message"
+          other: "%{count} new messages"
+        old_messages:
+          one: "%{count} old message"
+          other: "%{count} old messages"
+        no_messages_yet_html: "You have no messages yet. Why not get in touch with some of the %{people_mapping_nearby_link}?"
+        people_mapping_nearby: "people mapping nearby"
+    muted_inboxes:
+      show:
+        title: "Muted Messages"
+        messages:
+          one: "%{count} muted message"
+          other: "You have %{count} muted messages"
+    outboxes:
+      show:
+        title: "Outbox"
+        messages:
+          one: "You have %{count} sent message"
+          other: "You have %{count} sent messages"
+        no_sent_messages_html: "You have no sent messages yet. Why not get in touch with some of the %{people_mapping_nearby_link}?"
+        people_mapping_nearby: "people mapping nearby"
+      message:
+        destroy_button: "Delete"
+    replies:
+      new:
+        wrong_user: "You are logged in as '%{user}' but the message you have asked to reply to was not sent to that user. Please log in as the correct user in order to reply."
   passwords:
     new:
       title: "Lost password"
@@ -2747,34 +2785,6 @@ en:
       consider_pd_url: https://osmfoundation.org/wiki/Licence_and_Legal_FAQ/Why_would_I_want_my_contributions_to_be_public_domain
       or: "or"
       use external auth: "or sign up with a third party"
-    terms:
-      title: "Terms"
-      heading: "Terms"
-      heading_ct: "Contributor terms"
-      read and accept with tou: "Please read the contributor agreement and the terms of use, check both checkboxes when done and then press the continue button."
-      contributor_terms_explain: "This agreement governs the terms for your existing and future contributions."
-      read_ct: "I have read and agree to the above contributor terms"
-      tou_explain_html: "These %{tou_link} govern the use of the website and other infrastructure provided by the OSMF. Please click on the link, read and agree to the text."
-      read_tou: "I have read and agree to the Terms of Use"
-      consider_pd: "In addition to the above, I consider my contributions to be in the Public Domain"
-      consider_pd_why: "what's this?"
-      consider_pd_why_url: https://osmfoundation.org/wiki/Licence_and_Legal_FAQ/Why_would_I_want_my_contributions_to_be_public_domain
-      guidance_info_html: "Information to help understand these terms: a %{readable_summary_link} and some %{informal_translations_link}"
-      readable_summary: human readable summary
-      informal_translations: informal translations
-      continue: "Continue"
-      declined: "https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined"
-      cancel: "Cancel"
-      you need to accept or decline: "Please read and then either accept or decline the new Contributor Terms to continue."
-      legale_select: "Country of residence:"
-      legale_names:
-        france: "France"
-        italy: "Italy"
-        rest_of_world: "Rest of the world"
-    terms_declined_flash:
-      terms_declined_html: We are sorry that you have decided to not accept the new Contributor Terms. For more information, please see %{terms_declined_link}.
-      terms_declined_link: this wiki page
-      terms_declined_url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     no_such_user:
       title: "No such user"
       heading: "The user %{user} does not exist"
@@ -2842,6 +2852,27 @@ en:
       report: Report this User
     go_public:
       flash success: "All your edits are now public, and you are now allowed to edit."
+    issued_blocks:
+      show:
+        title: "Blocks by %{name}"
+        heading_html: "List of Blocks by %{name}"
+        empty: "%{name} has not made any blocks yet."
+    received_blocks:
+      show:
+        title: "Blocks on %{name}"
+        heading_html: "List of Blocks on %{name}"
+        empty: "%{name} has not been blocked yet."
+      edit:
+        title: "Revoking all blocks on %{block_on}"
+        heading_html: "Revoking all blocks on %{block_on}"
+        empty: "%{name} has no active blocks."
+        confirm: "Are you sure you wish to revoke %{active_blocks}?"
+        active_blocks:
+          one: "%{count} active block"
+          other: "%{count} active blocks"
+        revoke: "Revoke!"
+      destroy:
+        flash: "All active blocks have been revoked."
     lists:
       show:
         title: Users
@@ -2918,16 +2949,6 @@ en:
       title: "User blocks"
       heading: "List of user blocks"
       empty: "No blocks have been made yet."
-    revoke_all:
-      title: "Revoking all blocks on %{block_on}"
-      heading_html: "Revoking all blocks on %{block_on}"
-      empty: "%{name} has no active blocks."
-      confirm: "Are you sure you wish to revoke %{active_blocks}?"
-      active_blocks:
-        one: "%{count} active block"
-        other: "%{count} active blocks"
-      revoke: "Revoke!"
-      flash: "All active blocks have been revoked."
     helper:
       time_future_html: "Ends in %{time}."
       until_login: "Active until the user logs in."
@@ -2953,19 +2974,10 @@ en:
         ended: "ended"
         revoked_html: "revoked by %{name}"
         active: "active"
-        active_unread: "active unread"
-        expired_unread: "expired unread"
+        active_until_read: "active until read"
         read_html: "read at %{time}"
         time_in_future_title: "%{time_absolute}; in %{time_relative}"
         time_in_past_title: "%{time_absolute}; %{time_relative}"
-    blocks_on:
-      title: "Blocks on %{name}"
-      heading_html: "List of Blocks on %{name}"
-      empty: "%{name} has not been blocked yet."
-    blocks_by:
-      title: "Blocks by %{name}"
-      heading_html: "List of Blocks by %{name}"
-      empty: "%{name} has not made any blocks yet."
     show:
       title: "%{block_on} blocked by %{block_by}"
       heading_html: "%{block_on} blocked by %{block_by}"
@@ -3068,9 +3080,19 @@ en:
     new:
       title: "New Note"
       intro: "Spotted a mistake or something missing? Let other mappers know so we can fix it. Move the marker to the correct position and type a note to explain the problem."
-      anonymous_warning_html: "You are not logged in. Please %{log_in} or %{sign_up} if you want to receive updates for your note."
+      anonymous_warning_html: "You are not logged in. Please %{log_in} or %{sign_up} to receive updates for your note and help mappers resolve it."
       anonymous_warning_log_in: "log in"
       anonymous_warning_sign_up: "sign up"
+      counter_warning_html: "You have already posted at least %{x_anonymous_notes}, that's great for the community, thank you! Now we encourage you to %{contribute_by_yourself}, it is not that complicated, and %{community_can_help}."
+      x_anonymous_notes:
+        one: "%{count} anonymous note"
+        other: "%{count} anonymous notes"
+      counter_warning_guide_link:
+        text: "contribute by yourself"
+        url: https://wiki.openstreetmap.org/wiki/Beginners%27_guide
+      counter_warning_forum_link:
+        text: "the community can help you"
+        url: https://community.openstreetmap.org/
       advice: "Your note is public and may be used to update the map, so don't enter personal information, or information from copyrighted maps or directory listings."
       add: Add Note
     new_readonly:
@@ -3080,6 +3102,8 @@ en:
       showing_page: "Page %{page}"
       next: "Next"
       previous: "Previous"
+    not_found_message:
+      sorry: "Sorry, note #%{id} could not be found."
   javascripts:
     close: Close
     share:
index bf43ca889fc4a136cf27ab8b9b91b148bce4df1d..00aa61b3e46ffe6a11659c55e1fd29ef88f085cd 100644 (file)
@@ -954,7 +954,7 @@ eo:
           winery: Vinejo
           "yes": Metiejo
         emergency:
-          access_point: Vivsava rekonebla signo
+          access_point: Vivsava orientiĝa signalo
           ambulance_station: Ambulanca stacio
           assembly_point: Vivsava renkontiĝejo
           defibrillator: Defibrililo
@@ -976,11 +976,11 @@ eo:
           crossing: Trapasejo
           cycleway: Bicikla vojo
           elevator: Lifto
-          emergency_access_point: Vivsava rekonebla signo
+          emergency_access_point: Vivsava orientiĝa signalo
           emergency_bay: Kriokaza strat-golfo
           footway: Trotuaro
           ford: Travadejo
-          give_way: Trafiksigno ‘cedi traveturon’
+          give_way: Trafiksignalo “cedi traveturon”
           living_street: Ĉedoma strato
           milestone: Mejloŝtono
           motorway: Aŭtovojo
@@ -1003,7 +1003,7 @@ eo:
           services: Servejo de vojaĝantoj
           speed_camera: Rapid-kontrolilo
           steps: Ŝtuparo
-          stop: Trafiksigno STOP
+          stop: Trafiksignalo STOP
           street_lamp: Stratlampo
           tertiary: Vojo tria-ranga
           tertiary_link: Ligilo al vojo tria-ranga
@@ -1053,6 +1053,14 @@ eo:
           wayside_shrine: Adorejo apudvoja
           wreck: Ruinoj de ŝipo
           "yes": Historia ejo
+        information:
+          guidepost: Vojmontrilo
+          board: Inform-tabulo
+          map: Mapo
+          office: Turism-informa oficejo
+          terminal: Informa terminalo
+          sign: Informa signalo
+          stele: Informa ŝtono
         junction:
           "yes": Vojkruciĝo
         landuse:
@@ -1125,6 +1133,8 @@ eo:
           track: Kurejo
           water_park: Akvoparko
           "yes": Ripozejo
+        lock:
+          "yes": Kluzo
         man_made:
           adit: Minejo horizontala
           advertising: Reklamo
@@ -1465,6 +1475,17 @@ eo:
           building_passage: Trakonstruaĵa tunelo
           culvert: Subvoja konduktilo
           "yes": Tunelo
+        water:
+          lake: Lago
+          pond: Lageto
+          reservoir: Lago artefarita
+          basin: Baseno (lageto artefarita)
+          fishpond: Lageto fiŝa
+          lagoon: Laguno
+          wastewater: Baseno de akvopurigejo
+          oxbow: Meandra lago
+          stream_pool: Lageto sur rivereto
+          lock: Kluzo (baseno)
         waterway:
           artificial: Akvovojo artefarita
           boatyard: Ŝipkonstruejo
@@ -1785,8 +1806,9 @@ eo:
       success: Via konto estas konfirmita, multan dankon por vi registrado!
       already active: Ĉi tiu konto jam estas konfirmita.
       unknown token: Tiu ĉi konfirma kodo eksvalidiĝis aŭ ne ekzistas.
-      resend_html: Se vi volas, ke ni resendu la konfirman retleteron, %{reconfirm_link}.
-      click_here: alklaku tie ĉi
+      if_need_resend: Se vi volas, por ke ni resendu la konfirman retleteron, alklaku
+        la butonon sube.
+      resend_button: Resendi konfirman retleteron
     confirm_resend:
       failure: Uzanto %{name} ne trovita.
     confirm_email:
@@ -1803,29 +1825,6 @@ eo:
         certiĝu ke la sendinto %{sender} estu sur la permesata listo, ĉar ni ne povas
         respondi al konfirmpetoj.
   messages:
-    inbox:
-      title: Ricevujo
-      messages: Vi havas %{new_messages} kaj %{old_messages}
-      new_messages:
-        one: '%{count} novan mesaĝon'
-        other: '%{count} novajn mesaĝojn'
-      old_messages:
-        one: '%{count} malnovan mesaĝon'
-        other: '%{count} malnovajn mesaĝojn'
-      no_messages_yet_html: Vi ankoraŭ ne havas iun mesaĝon. Eble kontaktu kun iu
-        el %{people_mapping_nearby_link}?
-      people_mapping_nearby: proksimaj mapigistoj
-    messages_table:
-      from: De
-      to: Al
-      subject: Temo
-      date: Dato
-      actions: Agoj
-    message_summary:
-      unread_button: Marki kiel nelegitan
-      read_button: Marki kiel legitan
-      destroy_button: Forigi
-      unmute_button: Movi al ricevujo
     new:
       title: Sendi mesaĝon
       send_message_to_html: Sendi novan mesaĝon al %{name}
@@ -1838,19 +1837,6 @@ eo:
       title: Neekzistanta mesaĝo
       heading: Tiu ĉi mesaĝo ne ekzistas
       body: Bedaŭrinde ne ekzistas mesaĝo kun tiu ĉi identigilo.
-    outbox:
-      title: Senditujo
-      messages:
-        one: Vi havas %{count} senditan mesaĝon
-        other: Vi havas %{count} senditajn mesaĝojn
-      no_sent_messages_html: Vi ankoraŭ ne sendis iun mesaĝon. Eble kontaktu kun iu
-        el %{people_mapping_nearby_link}?
-      people_mapping_nearby: proksimaj mapigistoj
-    muted:
-      title: Silentigitaj mesaĝoj
-      messages:
-        one: Vi havas %{count} silentigitan mesaĝon
-        other: Vi havas %{count} silentigitajn mesaĝojn
     reply:
       wrong_user: Vi estas ensalutinta kiel '%{user}', sed la mesaĝo – kiun vi volas
         respondi – ne estas sendita al tiu uzanto. Ensalutu kiel propra uzanto por
@@ -1864,12 +1850,6 @@ eo:
       wrong_user: Vi estas ensalutinta kiel '%{user}', sed la mesaĝo – kiun vi volas
         legi – ne estas sendita al aŭ el tiu uzanto. Ensalutu kiel propra uzanto por
         legi ĝin.
-    sent_message_summary:
-      destroy_button: Forigi
-    heading:
-      my_inbox: Ricevujo
-      my_outbox: Senditujo
-      muted_messages: Silentigitaj mesaĝoj
     mark:
       as_read: Mesaĝo markita kiel legitan
       as_unread: Mesaĝo markita kiel nelegitan
@@ -1878,6 +1858,52 @@ eo:
       error: La mesaĝo ne povis esti movita al la ricevujo.
     destroy:
       destroyed: Mesaĝo forigita
+    mailboxes:
+      heading:
+        my_inbox: Ricevujo
+        my_outbox: Senditujo
+        muted_messages: Silentigitaj mesaĝoj
+      messages_table:
+        from: De
+        to: Al
+        subject: Temo
+        date: Dato
+        actions: Agoj
+      message:
+        unread_button: Marki kiel nelegitan
+        read_button: Marki kiel legitan
+        destroy_button: Forigi
+        unmute_button: Movi al ricevujo
+    inboxes:
+      show:
+        title: Ricevujo
+        messages: Vi havas %{new_messages} kaj %{old_messages}
+        new_messages:
+          one: '%{count} novan mesaĝon'
+          other: '%{count} novajn mesaĝojn'
+        old_messages:
+          one: '%{count} malnovan mesaĝon'
+          other: '%{count} malnovajn mesaĝojn'
+        no_messages_yet_html: Vi ankoraŭ ne havas iun mesaĝon. Eble kontaktu kun iu
+          el %{people_mapping_nearby_link}?
+        people_mapping_nearby: proksimaj mapigistoj
+    muted_inboxes:
+      show:
+        title: Silentigitaj mesaĝoj
+        messages:
+          one: Vi havas %{count} silentigitan mesaĝon
+          other: Vi havas %{count} silentigitajn mesaĝojn
+    outboxes:
+      show:
+        title: Senditujo
+        messages:
+          one: Vi havas %{count} senditan mesaĝon
+          other: Vi havas %{count} senditajn mesaĝojn
+        no_sent_messages_html: Vi ankoraŭ ne sendis iun mesaĝon. Eble kontaktu kun
+          iu el %{people_mapping_nearby_link}?
+        people_mapping_nearby: proksimaj mapigistoj
+      message:
+        destroy_button: Forigi
   passwords:
     new:
       title: Perdita pasvorto
@@ -2636,6 +2662,28 @@ eo:
       wikipedia:
         title: Ensaluti per Vikipedio
         alt: markemblemo de Vikipedio
+    share:
+      email:
+        title: Diskonigi per retpoŝto
+        alt: bildsimbolo de retpoŝto
+      bluesky:
+        title: Diskonigi per Bluesky
+        alt: bildsimbolo de Bluesky
+      facebook:
+        title: Diskonigi per Facebook
+        alt: bildsimbolo de Facebook
+      linkedin:
+        title: Diskonigi per LinkedIn
+        alt: bildsimbolo de LinkedIn
+      mastodon:
+        title: Diskonigi per Mastodon
+        alt: bildsimbolo de Mastodon
+      telegram:
+        title: Diskonigi per Telegram
+        alt: bildsimbolo de Telegram
+      x:
+        title: Diskonigi per X
+        alt: bildsimbolo de X
   oauth:
     permissions:
       missing: Vi ne permesis al aplikaĵo aliri al ĉi tiu eblo
@@ -2847,6 +2895,25 @@ eo:
       report: Raporti tiun ĉi uzanton
     go_public:
       flash success: Ĉiuj viaj redaktoj naŭ estas publikaj, kaj vi naŭ rajtas redakti.
+    issued_blocks:
+      show:
+        title: Blokadoj de %{name}
+        heading_html: Listo de blokadoj de %{name}
+        empty: '%{name} ankoraŭ faris neniun blokadon.'
+    received_blocks:
+      show:
+        title: Blokadoj por %{name}
+        heading_html: Listo de blokadoj por %{name}
+        empty: '%{name} ne estas ankoraŭ blokita.'
+      edit:
+        title: Nuligado de ĉiujn blokojn por %{block_on}
+        heading_html: Nuligado de ĉiujn blokojn por %{block_on}
+        empty: '%{name} ne havas aktivajn blokadojn.'
+        confirm: Ĉu vi volas nuligi %{active_blocks}?
+        active_blocks: '{{PLURAL|one=%{count} aktivan blokadon|%{count} aktivajn blokadojn}'
+        revoke: Malbloki!
+      destroy:
+        flash: Ĉiuj aktivaj blokoj estas nuligitaj.
     lists:
       show:
         title: Uzantoj
@@ -2871,10 +2938,10 @@ eo:
         Vi ankaŭ povas kontakti nian %{support_link}, se vi volas pridiskuti la blokadon.
     auth_failure:
       connection_failed: Konektado al aŭtentiga servo malsukcesis
-      invalid_credentials: Malkorektaj ensalutiloj
+      invalid_credentials: Malĝustaj ensalutiloj
       no_authorization_code: Rajtiga kodo mankas
       unknown_signature_algorithm: Nekonata algoritmo de subskribo
-      invalid_scope: Malkorekta amplekso
+      invalid_scope: Malĝusta amplekso
       unknown_error: Aŭtentigado malsukcesis
     auth_association:
       heading: Via identigilo ne estas ankoraŭ kunligita kun OpenStreetMap-konto.
@@ -2927,14 +2994,6 @@ eo:
       title: Blokadoj de uzanto
       heading: Listo de blokadoj de uzanto
       empty: Ankoraŭ neniu farita blokado.
-    revoke_all:
-      title: Nuligado de ĉiujn blokojn por %{block_on}
-      heading_html: Nuligado de ĉiujn blokojn por %{block_on}
-      empty: '%{name} ne havas aktivajn blokadojn.'
-      confirm: Ĉu vi volas nuligi %{active_blocks}?
-      active_blocks: '{{PLURAL|one=%{count} aktivan blokadon|%{count} aktivajn blokadojn}'
-      revoke: Malbloki!
-      flash: Ĉiuj aktivaj blokoj estas nuligitaj.
     helper:
       time_future_html: Finiĝos post %{time}.
       until_login: Aktiva ĝis la uzanto ensalutos.
@@ -2965,14 +3024,6 @@ eo:
         read_html: legita je %{time}
         time_in_future_title: '%{time_absolute}; post %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blokadoj por %{name}
-      heading_html: Listo de blokadoj por %{name}
-      empty: '%{name} ne estas ankoraŭ blokita.'
-    blocks_by:
-      title: Blokadoj de %{name}
-      heading_html: Listo de blokadoj de %{name}
-      empty: '%{name} ankoraŭ faris neniun blokadon.'
     show:
       title: '%{block_on} blokita de %{block_by}'
       heading_html: '%{block_on} blokita de %{block_by}'
@@ -3089,6 +3140,10 @@ eo:
         do ne enmetu privatajn informojn kaj informojn el kopirajtaj mapoj aŭ aliaj
         datumbazoj.
       add: Aldoni rimarkon
+    new_readonly:
+      title: Nova rimarko
+      warning: Ne eblas krei novajn rimarkojn, ĉar API OpenStreetMap estas nuntempe
+        en nurlega reĝimo.
     notes_paging_nav:
       showing_page: Paĝo %{page}
       next: Sekva
@@ -3096,7 +3151,7 @@ eo:
   javascripts:
     close: Fermi
     share:
-      title: Kunhavigi
+      title: Diskonigi
       cancel: Nuligi
       image: Bildo
       link: Ligilo aŭ HTML
@@ -3114,8 +3169,8 @@ eo:
       center_marker: Centrigi mapon al marko
       paste_html: Engluu HTML-kodon al via retpaĝo
       view_larger_map: Vidi pli grandan mapon
-      only_standard_layer: Nur la tavoloj Norma, Biciklada kaj Transporta estas elporteblaj
-        kiel bildoj
+      only_layers_exported_as_image: 'Nur la jenaj tavoloj povas esti elportitaj kiel
+        bildo:'
     embed:
       report_problem: Raporti problemon
     key:
index a4bafc38cc937c08d1bd7c13425666de20ca725e..67865e0b587a1bb193d162242517ee2a24c4abb1 100644 (file)
@@ -153,6 +153,7 @@ es:
       message: Mensaje
       node: Nodo
       node_tag: Etiqueta del nodo
+      note: Nota
       old_node: Nodo antiguo
       old_node_tag: Etiqueta del nodo antiguo
       old_relation: Relación antigua
@@ -553,7 +554,7 @@ es:
         commented_at_by_html: Actualizado %{when} por %{user}
       show:
         title_all: Discusión del conjunto de cambios de OpenStreetMap
-        title_particular: 'Discusión del conjunto de cambios #%{changeset_id} de OpenStreetMap'
+        title_particular: 'Discusión del conjunto de cambios de OpenStreetMap #%{changeset_id}'
       timeout:
         sorry: Lo sentimos, la lista de comentarios del conjunto de cambios que solicitó
           tardó demasiado en obtenerse.
@@ -1140,6 +1141,14 @@ es:
           wayside_shrine: Santuario al borde de camino
           wreck: Pecio
           "yes": Sitio histórico
+        information:
+          guidepost: Poste indicador
+          board: Tablero de información
+          map: Mapa
+          office: Oficina de turismo
+          terminal: Terminal de información
+          sign: Señal de información
+          stele: Estela de información
         junction:
           "yes": Intersección
         landuse:
@@ -1212,6 +1221,8 @@ es:
           track: Pista de carreras
           water_park: Parque acuático
           "yes": Ocio
+        lock:
+          "yes": Esclusa
         man_made:
           adit: Entrada a mina
           advertising: Publicidad
@@ -1552,6 +1563,17 @@ es:
           building_passage: Pasaje de edificio
           culvert: Desagüe
           "yes": Túnel
+        water:
+          lake: Lago
+          pond: Estanque
+          reservoir: Embalse
+          basin: Cuenca de agua
+          fishpond: Estanque de peces
+          lagoon: Laguna
+          wastewater: Agua residual
+          oxbow: Meandro
+          stream_pool: Piletón
+          lock: Esclusa
         waterway:
           artificial: Vía fluvial artificial
           boatyard: Astillero
@@ -1608,17 +1630,21 @@ es:
       last_updated: Última actualización
       last_updated_time_ago_user_html: '%{time_ago} por %{user}'
       reports_count:
-        one: '%{count} reporte'
-        other: '%{count} reportes'
+        one: '%{count} denuncia'
+        other: '%{count} denuncias'
       reported_item: Elemento denunciado
       states:
         ignored: Ignorado
         open: Abierto
         resolved: Resuelto
     show:
+      title:
+        open: 'Incidencia abierta #%{issue_id}'
+        ignored: 'Incidencia ignorada #%{issue_id}'
+        resolved: 'Incidencia resuelta #%{issue_id}'
       reports:
-        one: '%{count} reporte'
-        other: '%{count} reportes'
+        one: '%{count} denuncia'
+        other: '%{count} denuncias'
       no_reports: Sin denuncias
       report_created_at_html: Denunciado por primera vez el %{datetime}
       last_resolved_at_html: Resuelto por última vez el %{datetime}
@@ -1646,7 +1672,7 @@ es:
     helper:
       reportable_title:
         diary_comment: '%{entry_title}, comentario #%{comment_id}'
-        note: Nota n.º %{note_id}
+        note: 'Nota #%{note_id}'
   issue_comments:
     create:
       comment_created: Tu comentario ha sido creado con éxito
@@ -1889,8 +1915,6 @@ es:
       success: Cuenta confirmada, !gracias por registrarte!
       already active: Esta cuenta ya ha sido confirmada.
       unknown token: Ese código de confirmación ha caducado o no existe.
-      resend_html: Si necesitas que te reenviemos el mensaje de confirmación, %{reconfirm_link}.
-      click_here: has clic aquí
     confirm_resend:
       failure: No se ha encontrado el usuario %{name}
     confirm_email:
@@ -1908,29 +1932,6 @@ es:
         entonces por favor asegúrate de incluir en la lista blanca %{sender}, ya que
         no podemos responder solicitud de confirmación alguna.
   messages:
-    inbox:
-      title: Buzón de entrada
-      messages: Tienes %{new_messages} y %{old_messages}
-      new_messages:
-        one: '%{count} nuevo mensaje'
-        other: '%{count} nuevos mensajes'
-      old_messages:
-        one: '%{count} mensaje antiguo'
-        other: '%{count} mensajes antiguos'
-      no_messages_yet_html: Aún no tienes mensajes. ¿Por qué no ponerte en contacto
-        con algunas de las %{people_mapping_nearby_link}?
-      people_mapping_nearby: gente mapeando cerca
-    messages_table:
-      from: De
-      to: Para
-      subject: Asunto
-      date: Fecha
-      actions: Acciones
-    message_summary:
-      unread_button: Marcar como no leído
-      read_button: Marcar como leí­do
-      destroy_button: Eliminar
-      unmute_button: Trasladar a la bandeja de entrada
     new:
       title: Enviar mensaje
       send_message_to_html: Enviar un mensaje nuevo a %{name}
@@ -1943,21 +1944,8 @@ es:
       title: Este mensaje no existe.
       heading: Este mensaje no existe.
       body: Lo sentimos, no hay mensaje alguno con este identificador.
-    outbox:
-      title: Bandeja de salida
-      messages:
-        one: Tiene %{count} mensaje enviado
-        other: Tiene %{count} mensajes enviados
-      no_sent_messages_html: Aún no tienes mensajes enviados. ¿Por qué no ponerte
-        en contacto con algunas de las %{people_mapping_nearby_link}?
-      people_mapping_nearby: personas mapeando cerca
-    muted:
-      title: Mensajes silenciados
-      messages:
-        one: '%{count} mensaje silenciado'
-        other: Tienes %{count} mensajes silenciados
     reply:
-      wrong_user: Estás conectado como `%{user}' pero el mensaje que quieres responder
+      wrong_user: Estás conectado como '%{user}' pero el mensaje que quieres responder
         no se ha enviado a dicho usuario. Por favor, inicia sesión con el usuario
         correcto para responder.
     show:
@@ -1966,15 +1954,9 @@ es:
       unread_button: Marcar como no leído
       destroy_button: Eliminar
       back: Volver
-      wrong_user: Estás conectado como `%{user}' pero el mensaje que quieres leer
+      wrong_user: Estás conectado como '%{user}' pero el mensaje que quieres leer
         no se ha enviado por o a dicho usuario. Por favor, inicia sesión con el usuario
         correcto para leer el mensaje.
-    sent_message_summary:
-      destroy_button: Eliminar
-    heading:
-      my_inbox: Mi buzón
-      my_outbox: Mi buzón de salida
-      muted_messages: Mensajes silenciados
     mark:
       as_read: Mensaje marcado como leído
       as_unread: Mensaje marcado como no leído
@@ -1983,6 +1965,52 @@ es:
       error: No se pudo trasladar el mensaje a la bandeja de entrada.
     destroy:
       destroyed: Mensaje eliminado
+    mailboxes:
+      heading:
+        my_inbox: Mi buzón
+        my_outbox: Mi buzón de salida
+        muted_messages: Mensajes silenciados
+      messages_table:
+        from: De
+        to: Para
+        subject: Asunto
+        date: Fecha
+        actions: Acciones
+      message:
+        unread_button: Marcar como no leído
+        read_button: Marcar como leí­do
+        destroy_button: Eliminar
+        unmute_button: Trasladar a la bandeja de entrada
+    inboxes:
+      show:
+        title: Buzón de entrada
+        messages: Tienes %{new_messages} y %{old_messages}
+        new_messages:
+          one: '%{count} nuevo mensaje'
+          other: '%{count} nuevos mensajes'
+        old_messages:
+          one: '%{count} mensaje antiguo'
+          other: '%{count} mensajes antiguos'
+        no_messages_yet_html: Aún no tienes mensajes. ¿Por qué no ponerte en contacto
+          con algunas de las %{people_mapping_nearby_link}?
+        people_mapping_nearby: gente mapeando cerca
+    muted_inboxes:
+      show:
+        title: Mensajes silenciados
+        messages:
+          one: '%{count} mensaje silenciado'
+          other: Tienes %{count} mensajes silenciados
+    outboxes:
+      show:
+        title: Bandeja de salida
+        messages:
+          one: Tienes %{count} mensaje enviado
+          other: Tienes %{count} mensajes enviados
+        no_sent_messages_html: Aún no tienes mensajes enviados. ¿Por qué no ponerte
+          en contacto con algunas de las %{people_mapping_nearby_link}?
+        people_mapping_nearby: personas mapeando cerca
+      message:
+        destroy_button: Eliminar
   passwords:
     new:
       title: Contraseña perdida
@@ -2011,6 +2039,16 @@ es:
       title: Mis preferencias
       preferred_editor: Editor preferido
       preferred_languages: Idiomas preferidos
+      preferred_site_color_scheme: Esquema de colores preferido para el sitio web
+      site_color_schemes:
+        auto: Automático
+        light: Claro
+        dark: Oscuro
+      preferred_map_color_scheme: Esquema de colores preferido para el mapa
+      map_color_schemes:
+        auto: Automático
+        light: Claro
+        dark: Oscuro
       edit_preferences: Editar preferencias
     edit:
       title: Editar preferencias
@@ -2711,7 +2749,7 @@ es:
       upload_trace: Subir una traza
       all_traces: Todas las trazas
       my_traces: Mis trazas
-      traces_from_html: Trazas Públicos de %{user}
+      traces_from_html: Trazas públicas de %{user}
       remove_tag_filter: Eliminar Filtro de Etiquetas
     destroy:
       scheduled_for_deletion: Traza programada para eliminación
@@ -2768,6 +2806,28 @@ es:
       wikipedia:
         title: Inicia sesión con Wikipedia
         alt: Logotipo de Wikipedia
+    share:
+      email:
+        title: Compartir vía correo electrónico
+        alt: Ícono de correo electrónico
+      bluesky:
+        title: Compartir vía Bluesky
+        alt: Icono de Bluesky
+      facebook:
+        title: Compartir vía Facebook
+        alt: Ícono de Facebook
+      linkedin:
+        title: Compartir vía LinkedIn
+        alt: Ícono de LinkedIn
+      mastodon:
+        title: Compartir vía Mastodon
+        alt: Ícono de Mastodon
+      telegram:
+        title: Compartir vía Telegram
+        alt: Ícono de Telegram
+      x:
+        title: Compartir vía X
+        alt: Ícono X
   oauth:
     permissions:
       missing: No has permitido que la aplicación acceda a esta instalación.
@@ -2983,6 +3043,27 @@ es:
     go_public:
       flash success: Todas tus ediciones ahora son públicas y ya estás autorizado
         para editar.
+    issued_blocks:
+      show:
+        title: Bloqueos por %{name}
+        heading_html: Listado de bloqueos por %{name}
+        empty: '%{name} todavía no ha creado algún bloqueo.'
+    received_blocks:
+      show:
+        title: Bloqueos sobre %{name}
+        heading_html: Lista de bloqueos sobre %{name}
+        empty: '%{name} no se ha bloqueado todavía.'
+      edit:
+        title: Revocando todos los bloqueos en %{block_on}
+        heading_html: Revocando todos los bloqueos en %{block_on}
+        empty: '%{name} no tiene bloqueos activos.'
+        confirm: ¿Estás seguro de que deseas revocar %{active_blocks}?
+        active_blocks:
+          one: '%{count} bloqueo activo'
+          other: '%{count} bloqueos activos'
+        revoke: ¡Revocar!
+      destroy:
+        flash: Todos los bloqueos activos han sido revocados.
     lists:
       show:
         title: Usuarios
@@ -3023,17 +3104,17 @@ es:
         con tu identificador en tus configuraciones de usuario.
   user_role:
     filter:
-      not_a_role: La cadena `%{role}' no es un rol válido.
+      not_a_role: La cadena '%{role}' no es un rol válido.
       already_has_role: El usuario ya tiene el rol %{role}.
       doesnt_have_role: El usuario no tiene el rol %{role}.
       not_revoke_admin_current_user: No se pudo revocar el rol de administrador del
         usuario actual.
     grant:
-      are_you_sure: ¿Estás seguro de que deseas otorgar el rol `%{role}' al usuario
-        `%{name}'?
+      are_you_sure: ¿Estás seguro de que deseas otorgar el rol '%{role}' al usuario
+        '%{name}'?
     revoke:
-      are_you_sure: ¿Estás seguro de que deseas revocar el rol `%{role}' del usuario
-        `%{name}'?
+      are_you_sure: ¿Estás seguro de que quieres revocar el papel '%{role}' del usuario
+        '%{name}'?
   user_blocks:
     model:
       non_moderator_update: Debes ser un moderador para poder crear o actualizar un
@@ -3071,16 +3152,6 @@ es:
       title: Bloqueos de usuario
       heading: Listado de bloqueos de usuario
       empty: Todavía no se ha hecho algún bloqueo.
-    revoke_all:
-      title: Revocando todos los bloqueos en %{block_on}
-      heading_html: Revocando todos los bloqueos en %{block_on}
-      empty: '%{name} no tiene bloqueos activos.'
-      confirm: ¿Estás seguro de que deseas revocar %{active_blocks}?
-      active_blocks:
-        one: '%{count} bloqueo activo'
-        other: '%{count} bloqueos activos'
-      revoke: ¡Revocar!
-      flash: Todos los bloqueos activos han sido revocados.
     helper:
       time_future_html: Termina en %{time}.
       until_login: Activo hasta que el usuario acceda.
@@ -3103,14 +3174,15 @@ es:
         years:
           one: '%{count} año'
           other: '%{count} años'
-    blocks_on:
-      title: Bloqueos sobre %{name}
-      heading_html: Lista de bloqueos sobre %{name}
-      empty: '%{name} no se ha bloqueado todavía.'
-    blocks_by:
-      title: Bloqueos por %{name}
-      heading_html: Listado de bloqueos por %{name}
-      empty: '%{name} todavía no ha creado algún bloqueo.'
+      short:
+        ended: finalizado
+        revoked_html: revocado por %{name}
+        active: activo
+        active_unread: activo sin leer
+        expired_unread: expirado sin leer
+        read_html: leído a las %{time}
+        time_in_future_title: '%{time_absolute}; en %{time_relative}'
+        time_in_past_title: '%{time_absolute}; %{time_relative}'
     show:
       title: '%{block_on} bloqueado por %{block_by}'
       heading_html: '%{block_on} bloqueado por %{block_by}'
@@ -3127,6 +3199,8 @@ es:
       display_name: Usuario bloqueado
       creator_name: Creador
       reason: Razón del bloqueo
+      start: Inicio
+      end: Fin
       status: Estado
     navigation:
       all_blocks: Todos los bloqueos
@@ -3173,6 +3247,11 @@ es:
       description: Descripción
       created_at: Creado el
       last_changed: Última modificación
+      apply: Aplicar
+      all: Todas
+      open: Abierta
+      closed: Cerrada
+      status: Estado
     show:
       title: 'Nota: %{id}'
       description: Descripción
@@ -3191,6 +3270,9 @@ es:
       report: denunciar esta nota
       anonymous_warning: Esta nota incluye comentarios de usuarios anónimos que deben
         ser verificados de forma independiente.
+      discussion: Discusión
+      subscribe: Suscribirte
+      unsubscribe: Desuscribirte
       hide: Ocultar
       resolve: Resolver
       reactivate: Reactivar
@@ -3216,6 +3298,10 @@ es:
         que no des información personal ni datos provenientes de mapas o catálogos
         protegidos por derechos de autor.
       add: Añadir nota
+    new_readonly:
+      title: Nueva nota
+      warning: No se pueden crear nuevas notas porque la API de OpenStreetMap está
+        actualmente en modo de solo lectura.
     notes_paging_nav:
       showing_page: Página %{page}
       next: Siguiente
@@ -3241,8 +3327,6 @@ es:
       center_marker: Centrar mapa en el marcador
       paste_html: Pegar código HTML para incrustar en el sitio web
       view_larger_map: Ver el mapa más grande
-      only_standard_layer: Sólo las capas Estándar, Mapa Ciclista y Transporte pueden
-        exportarse como una imagen
     embed:
       report_problem: Reportar un problema
     key:
index fda0c134e31dc5171d5e18e0b1e16ed8d4d3d800..77dfd9996bd267c292561c3538f912b31c62e6ce 100644 (file)
@@ -1671,8 +1671,6 @@ et:
       success: Sinu kasutajakonto on kinnitatud, täname registreerimast!
       already active: See konto on juba kinnitatud.
       unknown token: See kinnituskood on aegunud või seda pole olemas.
-      resend_html: Kui soovid, et saadaksime sulle uuesti kinnitusmeili, siis %{reconfirm_link}.
-      click_here: klõpsa siia
     confirm_resend:
       failure: Kasutajat %{name} ei leitud.
     confirm_email:
@@ -1689,29 +1687,6 @@ et:
         siis veendu, et oled kandnud aadressi %{sender} valgesse nimekirja, sest meil
         pole võimalik kinnitustaotlustele vastata.
   messages:
-    inbox:
-      title: Saabunud sõnumid
-      messages: Sul on %{new_messages} ja %{old_messages}.
-      new_messages:
-        one: '%{count} uus sõnum'
-        other: '%{count} uut sõnumit'
-      old_messages:
-        one: '%{count} vana sõnum'
-        other: '%{count} vana sõnumit'
-      no_messages_yet_html: Sul ei ole veel sõnumeid. Miks mitte kontakteeruda mõne
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: lähedaloleva kaardistajaga
-    messages_table:
-      from: Saatja
-      to: Kellele
-      subject: Teema
-      date: Kuupäev
-      actions: Toimingud
-    message_summary:
-      unread_button: Märgi mitteloetuks
-      read_button: Märgi loetuks
-      destroy_button: Kustuta
-      unmute_button: Teisalda postkasti
     new:
       title: Saada sõnum
       send_message_to_html: Sõnumi saatmine kasutajale %{name}
@@ -1724,19 +1699,6 @@ et:
       title: Sellist sõnumit ei ole olemas
       heading: Sellist sõnumit ei ole olemas
       body: Vabandust, kuid sellise ID-ga sõnum puudub.
-    outbox:
-      title: Saadetud sõnumid
-      messages:
-        one: Sul on %{count} saadetud sõnum.
-        other: Sul on %{count} saadetud sõnumit.
-      no_sent_messages_html: Sul ei ole veel saadetud sõnumeid. Miks mitte kontakteeruda
-        mõne %{people_mapping_nearby_link}?
-      people_mapping_nearby: lähedaloleva kaardistajaga
-    muted:
-      title: Vaigistatud sõnumid
-      messages:
-        one: Üks vaigistatud sõnum.
-        other: Sul on %{count} vaigistatud sõnumit.
     reply:
       wrong_user: Oled sisse loginud kui "%{user}" aga sõnum, millele soovid vastata
         ei olnud sellele kasutajale saadetud. Vastamiseks palun logi sisse õige kasutajana.
@@ -1749,12 +1711,6 @@ et:
       wrong_user: Oled sisse loginud kui "%{user}" aga sõnum, mida soovid lugeda ei
         ole sellele kasutajale saadetud ega selle kasutaja poolt saadetud. Lugemiseks
         palun logi sisse õige kasutajana.
-    sent_message_summary:
-      destroy_button: Kustuta
-    heading:
-      my_inbox: Saabunud sõnumid
-      my_outbox: Saadetud sõnumid
-      muted_messages: Vaigistatud sõnumid
     mark:
       as_read: Sõnum on märgitud loetud sõnumiks.
       as_unread: Sõnum on märgitud lugemata sõnumiks.
@@ -1763,6 +1719,52 @@ et:
       error: Sõnumit ei õnnestunud postkasti teisaldada.
     destroy:
       destroyed: Sõnum kustutatud.
+    mailboxes:
+      heading:
+        my_inbox: Saabunud sõnumid
+        my_outbox: Saadetud sõnumid
+        muted_messages: Vaigistatud sõnumid
+      messages_table:
+        from: Saatja
+        to: Kellele
+        subject: Teema
+        date: Kuupäev
+        actions: Toimingud
+      message:
+        unread_button: Märgi mitteloetuks
+        read_button: Märgi loetuks
+        destroy_button: Kustuta
+        unmute_button: Teisalda postkasti
+    inboxes:
+      show:
+        title: Saabunud sõnumid
+        messages: Sul on %{new_messages} ja %{old_messages}.
+        new_messages:
+          one: '%{count} uus sõnum'
+          other: '%{count} uut sõnumit'
+        old_messages:
+          one: '%{count} vana sõnum'
+          other: '%{count} vana sõnumit'
+        no_messages_yet_html: Sul ei ole veel sõnumeid. Miks mitte kontakteeruda mõne
+          %{people_mapping_nearby_link}?
+        people_mapping_nearby: lähedaloleva kaardistajaga
+    muted_inboxes:
+      show:
+        title: Vaigistatud sõnumid
+        messages:
+          one: Üks vaigistatud sõnum.
+          other: Sul on %{count} vaigistatud sõnumit.
+    outboxes:
+      show:
+        title: Saadetud sõnumid
+        messages:
+          one: Sul on %{count} saadetud sõnum.
+          other: Sul on %{count} saadetud sõnumit.
+        no_sent_messages_html: Sul ei ole veel saadetud sõnumeid. Miks mitte kontakteeruda
+          mõne %{people_mapping_nearby_link}?
+        people_mapping_nearby: lähedaloleva kaardistajaga
+      message:
+        destroy_button: Kustuta
   passwords:
     new:
       title: Unustatud parool
@@ -2685,6 +2687,16 @@ et:
     go_public:
       flash success: Kõik sinu muudatused on nüüd avalikud ja sul on lubatud muudatusi
         teha.
+    issued_blocks:
+      show:
+        title: Kasutaja %{name} seatud blokeeringud
+        heading_html: Kasutaja %{name} seatud blokeeringud
+        empty: Kasutaja %{name} pole veel kedagi blokeerinud.
+    received_blocks:
+      show:
+        title: Kasutaja %{name} blokeeringud
+        heading_html: Kasutaja %{name} blokeeringud
+        empty: Kasutajat %{name} ei ole veel kordagi blokeeritud.
     lists:
       show:
         title: Kasutajad
@@ -2777,14 +2789,6 @@ et:
         years:
           one: '%{count} aasta'
           other: '%{count} aastat'
-    blocks_on:
-      title: Kasutaja %{name} blokeeringud
-      heading_html: Kasutaja %{name} blokeeringud
-      empty: Kasutajat %{name} ei ole veel kordagi blokeeritud.
-    blocks_by:
-      title: Kasutaja %{name} seatud blokeeringud
-      heading_html: Kasutaja %{name} seatud blokeeringud
-      empty: Kasutaja %{name} pole veel kedagi blokeerinud.
     show:
       title: 'Blokeeritud: %{block_on} (blokeerinud %{block_by})'
       heading_html: 'Blokeeritud: %{block_on} (blokeerinud %{block_by})'
@@ -2912,8 +2916,6 @@ et:
       center_marker: Tsentreeri kaart markerile
       paste_html: Kopeeri HTML-kood oma veebilehele
       view_larger_map: Vaata suuremat kaarti
-      only_standard_layer: Ainult tava-, ratta- ja transpordikaardi kihte saab pildina
-        eksportida
     embed:
       report_problem: Teata probleemist
     key:
index a1dc2dd61c852fd41dc711bc0b08d26bd8821d08..ff6995e9a755c39fc50877e2653a082a07734881 100644 (file)
@@ -1710,8 +1710,6 @@ eu:
       success: Zure kontua berretsi du, erregistratzeagatik milesker!
       already active: Kontu hau dagoeneko berretsi da.
       unknown token: Berrespen-kodea iraungi egin da edo ez da existitzen.
-      resend_html: Berrespen-mezua berriro bidaltzea behar baduzu, %{reconfirm_link}.
-      click_here: sakatu hemen
     confirm_resend:
       failure: '%{name} erabiltzailea ez da aurkitu.'
     confirm_email:
@@ -1729,29 +1727,6 @@ eu:
         erabiltzen baduzu, mesedez, ziurtatu %{sender} zerrenda zurian duzula, ezin
         baitiegu erantzun berrespen-eskaerei.
   messages:
-    inbox:
-      title: Sarrera-ontzia
-      messages: '%{new_messages} eta %{old_messages} dituzu'
-      new_messages:
-        one: '%Mezu berri {count}'
-        other: '%{count} mezu berri'
-      old_messages:
-        one: mezu zahar %{count}
-        other: '%{count} mezu zahar'
-      no_messages_yet_html: Ez duzu mezurik jaso oraindik. Zergatik ez konektatuan
-        jarri %{people_mapping_nearby_link} batzuekin?
-      people_mapping_nearby: kartografiatzen ari diren hurbileko pertsonak
-    messages_table:
-      from: Igorlea
-      to: Hartzailea
-      subject: Gaia
-      date: Data
-      actions: Ekintzak
-    message_summary:
-      unread_button: Markatu irakurri gabekotzat
-      read_button: Markatu irakurritzat
-      destroy_button: Ezabatu
-      unmute_button: Mugitu Sarrera-ontzira
     new:
       title: Bidali mezua
       send_message_to_html: '%{name}ri mezu berri bat bidali'
@@ -1764,19 +1739,6 @@ eu:
       title: Horrelako mezurik ez dago
       heading: Horrelako mezurik ez dago
       body: Barkatu baina id horrekin ez dago mezurik.
-    outbox:
-      title: Irteerako ontzia
-      messages:
-        one: '%{count} Mezua bidali duzu'
-        other: ' %{count} Mezuak bidali dituzu'
-      no_sent_messages_html: Ez duzu mezurik bidali oraindik. Zergatik ez konektatuan
-        jarri %{people_mapping_nearby_link} batzuekin?
-      people_mapping_nearby: kartografiatzen ari diren hurbileko pertsonak
-    muted:
-      title: Isildutako mezuak
-      messages:
-        one: "Isildutako mezu \n%{count}"
-        other: Isildutako %{count} mezu berri
     reply:
       wrong_user: '''%{user}'' bezala saioa hasi duzu baina erantzuteko eskatu duzun
         mezua ez da erabiltzaile horri bidali. Hasi saioa erabiltzaile zuzenarekin
@@ -1790,12 +1752,6 @@ eu:
       wrong_user: '''%{user}'' bezala saioa hasi duzu baina irakurtzeko eskatu duzun
         mezua ez da erabiltzaile horri bidali edo berak ez du bidali. Hasi saioa erabiltzaile
         zuzenarekin irakurtzeko.'
-    sent_message_summary:
-      destroy_button: Ezabatu
-    heading:
-      my_inbox: Nire sarrera-ontzia
-      my_outbox: Nire Irteera-Ontzia
-      muted_messages: Isildutako mezuak
     mark:
       as_read: Mezua irakurrita gisa markatu da
       as_unread: Mezua irakurri gabe gisa markatu da
@@ -1804,6 +1760,52 @@ eu:
       error: Mezua ezin izan da postontzira eraman.
     destroy:
       destroyed: Mezua ezabatuta
+    mailboxes:
+      heading:
+        my_inbox: Nire sarrera-ontzia
+        my_outbox: Nire Irteera-Ontzia
+        muted_messages: Isildutako mezuak
+      messages_table:
+        from: Igorlea
+        to: Hartzailea
+        subject: Gaia
+        date: Data
+        actions: Ekintzak
+      message:
+        unread_button: Markatu irakurri gabekotzat
+        read_button: Markatu irakurritzat
+        destroy_button: Ezabatu
+        unmute_button: Mugitu Sarrera-ontzira
+    inboxes:
+      show:
+        title: Sarrera-ontzia
+        messages: '%{new_messages} eta %{old_messages} dituzu'
+        new_messages:
+          one: '%Mezu berri {count}'
+          other: '%{count} mezu berri'
+        old_messages:
+          one: mezu zahar %{count}
+          other: '%{count} mezu zahar'
+        no_messages_yet_html: Ez duzu mezurik jaso oraindik. Zergatik ez konektatuan
+          jarri %{people_mapping_nearby_link} batzuekin?
+        people_mapping_nearby: kartografiatzen ari diren hurbileko pertsonak
+    muted_inboxes:
+      show:
+        title: Isildutako mezuak
+        messages:
+          one: "Isildutako mezu \n%{count}"
+          other: Isildutako %{count} mezu berri
+    outboxes:
+      show:
+        title: Irteerako ontzia
+        messages:
+          one: '%{count} Mezua bidali duzu'
+          other: ' %{count} Mezuak bidali dituzu'
+        no_sent_messages_html: Ez duzu mezurik bidali oraindik. Zergatik ez konektatuan
+          jarri %{people_mapping_nearby_link} batzuekin?
+        people_mapping_nearby: kartografiatzen ari diren hurbileko pertsonak
+      message:
+        destroy_button: Ezabatu
   passwords:
     new:
       title: Ahaztutako pasahitza
@@ -2611,6 +2613,16 @@ eu:
     go_public:
       flash success: Zure aldaketa guztiak publikoak dira orain, eta orain editatzeko
         baimena daukazu.
+    issued_blocks:
+      show:
+        title: '%{name} erabiltzailearen blokeoak'
+        heading_html: '%{name} erabiltzailearen blokeo zerrendak'
+        empty: '%{name} erabiltzaileak oraindik ez du blokeorik egin.'
+    received_blocks:
+      show:
+        title: '%{name}n dauden blokeoak'
+        heading_html: '%{name}n blokeoen zerrenda'
+        empty: '%{name} erabiltzaileak oraindik ez du blokeorik jaso.'
     lists:
       show:
         title: Erabiltzaileak
@@ -2706,14 +2718,6 @@ eu:
         years:
           one: urte bat
           other: '%{count} urte'
-    blocks_on:
-      title: '%{name}n dauden blokeoak'
-      heading_html: '%{name}n blokeoen zerrenda'
-      empty: '%{name} erabiltzaileak oraindik ez du blokeorik jaso.'
-    blocks_by:
-      title: '%{name} erabiltzailearen blokeoak'
-      heading_html: '%{name} erabiltzailearen blokeo zerrendak'
-      empty: '%{name} erabiltzaileak oraindik ez du blokeorik egin.'
     show:
       title: '%{block_on} %{block_by}k blokeatu du'
       heading_html: '%{block_on} %{block_by}k blokeatu du'
@@ -2793,7 +2797,6 @@ eu:
       center_marker: Markatzailean mapa erdiratu
       paste_html: Itsatsi HTMLa webgunean kapsulatzeko
       view_larger_map: Ikusi mapa handiagoa
-      only_standard_layer: Geruza estandarra soilik irudi gisa esportatu daiteke
     embed:
       report_problem: Arazo baten berri eman
     key:
index 507ecaca7b38d6802c8b23db00d573b8e270d5bd..7f26d4290fa67874945cd3fbcdc12a34818696ee 100644 (file)
@@ -1643,8 +1643,6 @@ fa:
       success: ' تشکر بابت ثبت نام! حساب کاربری شما تأیید شد.'
       already active: این حساب کاربری قبلاً تأیید شده است.
       unknown token: کد تأیید منقضی شده یا وجود ندارد.
-      resend_html: اگر لازم است ذوباره رایانامهٔ تأیید را بفرستیم، %{reconfirm_link}.
-      click_here: اینجا کلیک کنید
     confirm_resend:
       failure: کاربر %{name} پیدا نشد.
     confirm_email:
@@ -1661,27 +1659,6 @@ fa:
         لطفاً مطمئن شوید که %{sender} را در لیست سفید قرار دهید زیرا نمی‌توانیم به
         هرگونه درخواست تأیید پاسخ دهیم.
   messages:
-    inbox:
-      title: صندوق دریافت
-      messages: '%{new_messages} و %{old_messages} دارید'
-      new_messages:
-        one: '%{count} پیام تازه'
-        other: '%{count} پیام تازه'
-      old_messages:
-        one: '%{count} پیام قدیمی'
-        other: '%{count} پیام قدیمی'
-      no_messages_yet_html: هنوز پیامی ندارید. چطور است با چند نفر از %{people_mapping_nearby_link}
-        تماس بگیرید؟
-      people_mapping_nearby: کسانی که نزدیک شما نقشه می‌کشند
-    messages_table:
-      from: از
-      to: به
-      subject: عنوان
-      date: تاریخ
-    message_summary:
-      unread_button: نشان بزن نخواندم
-      read_button: نشان بزن که خواندم
-      destroy_button: حذف
     new:
       title: فرستادن پیام
       send_message_to_html: فرستادن پیام تازه به %{name}
@@ -1694,14 +1671,6 @@ fa:
       title: چنین پیغامی وجود ندارد
       heading: چنین پیغامی وجود ندارد
       body: متأسفانه هیچ پیامی با این شناسه وجود ندارد.
-    outbox:
-      title: صندوق ارسال
-      messages:
-        one: '%{count} پیام ارسالی دارید'
-        other: '%{count} پیام ارسالی دارید'
-      no_sent_messages_html: هنوز پیامی نفرستاده‌اید. چطور است با چند نفر از %{people_mapping_nearby_link}
-        تماس بگیرید؟
-      people_mapping_nearby: کسانی که نزدیک شما نقشه می‌کشند
     reply:
       wrong_user: شما با نام کاربری %{user} وارد سامانه شده‌اید، اما پیامی که درخواست
         پاسخ به آن را دارید به این کابر ارسال نشده است. برای پاسخ دادن لطفاً با نام
@@ -1715,16 +1684,48 @@ fa:
       wrong_user: شما با نام کاربری %{user} وارد سامانه شده‌اید، اما پیامی که درخواست
         خواندن آن را دارید از/به این کابر ارسال نشده است. لطفاً با نام کاربری صحیح
         وارد سامانه شوید تا بتوانید آن را بخوانید.
-    sent_message_summary:
-      destroy_button: حذف
-    heading:
-      my_inbox: صندوق دریافت
-      my_outbox: صندوق ارسال
     mark:
       as_read: پیام به‌عنوان خوانده علامت‌گذاری شد
       as_unread: پیام به عنوان نخوانده علامت‌گذاری شد
     destroy:
       destroyed: پیام حذف شد
+    mailboxes:
+      heading:
+        my_inbox: صندوق دریافت
+        my_outbox: صندوق ارسال
+      messages_table:
+        from: از
+        to: به
+        subject: عنوان
+        date: تاریخ
+      message:
+        unread_button: نشان بزن نخواندم
+        read_button: نشان بزن که خواندم
+        destroy_button: حذف
+    inboxes:
+      show:
+        title: صندوق دریافت
+        messages: '%{new_messages} و %{old_messages} دارید'
+        new_messages:
+          one: '%{count} پیام تازه'
+          other: '%{count} پیام تازه'
+        old_messages:
+          one: '%{count} پیام قدیمی'
+          other: '%{count} پیام قدیمی'
+        no_messages_yet_html: هنوز پیامی ندارید. چطور است با چند نفر از %{people_mapping_nearby_link}
+          تماس بگیرید؟
+        people_mapping_nearby: کسانی که نزدیک شما نقشه می‌کشند
+    outboxes:
+      show:
+        title: صندوق ارسال
+        messages:
+          one: '%{count} پیام ارسالی دارید'
+          other: '%{count} پیام ارسالی دارید'
+        no_sent_messages_html: هنوز پیامی نفرستاده‌اید. چطور است با چند نفر از %{people_mapping_nearby_link}
+          تماس بگیرید؟
+        people_mapping_nearby: کسانی که نزدیک شما نقشه می‌کشند
+      message:
+        destroy_button: حذف
   passwords:
     new:
       title: فراموشی رمز عبور
@@ -2372,6 +2373,16 @@ fa:
     go_public:
       flash success: تمام ویرایش‌های شما اکنون عمومی‌اند و حالا اجازه دارید ویرایش
         کنید.
+    issued_blocks:
+      show:
+        title: مسدودسازی‌های %{name}
+        heading_html: فهرست مسدودسازی‌های %{name}
+        empty: '%{name} تا کنون مسدود نکرده است.'
+    received_blocks:
+      show:
+        title: مسدودی‌های %{name}
+        heading_html: فهرست مسدودی‌های %{name}
+        empty: '%{name} تا کنون مسدود نشده است.'
     lists:
       show:
         title: کاربران
@@ -2456,14 +2467,6 @@ fa:
         weeks: '%{count} هفته'
         months: '%{count} ماه'
         years: '%{count} سال'
-    blocks_on:
-      title: مسدودی‌های %{name}
-      heading_html: فهرست مسدودی‌های %{name}
-      empty: '%{name} تا کنون مسدود نشده است.'
-    blocks_by:
-      title: مسدودسازی‌های %{name}
-      heading_html: فهرست مسدودسازی‌های %{name}
-      empty: '%{name} تا کنون مسدود نکرده است.'
     show:
       title: '%{block_on} به دست %{block_by} مسدود شده'
       heading_html: '%{block_on} به دست %{block_by} مسدود شده'
@@ -2555,7 +2558,6 @@ fa:
       center_marker: مرکز نقشه در نشانگر
       paste_html: برای استفادهٔ توکار در وبگاه، HTML را جایگذاری کنید
       view_larger_map: دیدن نقشهٔ بزرگتر
-      only_standard_layer: فقط لایهٔ استاندارد را می‌توان در قالب عکس برون‌برد کرد.
     embed:
       report_problem: گزارش مشکل
     key:
index 30e477bd35f68eb1e81c8f1b21e9551614213c58..787bacc1146a62ab9078b4bc34e1aa2630d8bf8b 100644 (file)
@@ -1661,8 +1661,6 @@ fi:
       success: Käyttäjätunnuksesi on nyt vahvistettu.
       already active: Tämä tunnus on jo vahvistettu.
       unknown token: Vahvistuskoodi on vanhentunut tai sitä ei ole.
-      resend_html: Jos haluat, että lähetämme vahvistussähköpostin uudelleen, %{reconfirm_link}.
-      click_here: napsauta tästä
     confirm_resend:
       failure: Käyttäjää %{name} ei löytynyt.
     confirm_email:
@@ -1676,27 +1674,6 @@ fi:
       confirmation_sent: Olemme lähettäneet uuden vahvistusviestin osoitteeseen %{email}.
         Vahvistettuasi käyttäjätunnuksesi voit aloittaa kartoittamisen.
   messages:
-    inbox:
-      title: Saapuneet
-      messages: Kansiossa on %{new_messages} ja %{old_messages}.
-      new_messages:
-        one: '%{count} lukematon viesti'
-        other: '%{count} lukematonta viestiä'
-      old_messages:
-        one: '%{count} luettu viesti'
-        other: '%{count} luettua viestiä'
-      no_messages_yet_html: Ei viestejä. %{people_mapping_nearby_link}
-      people_mapping_nearby: Lähiseudun kartoittajat
-    messages_table:
-      from: Lähettäjä
-      to: Vastaanottaja
-      subject: Otsikko
-      date: Päiväys
-      actions: Toiminnot
-    message_summary:
-      unread_button: Merkitse lukemattomaksi
-      read_button: Merkitse luetuksi
-      destroy_button: Poista
     new:
       title: Lähetä viesti
       send_message_to_html: Lähetä viesti käyttäjälle %{name}
@@ -1709,14 +1686,6 @@ fi:
       title: Ei sellaista viestiä
       heading: Ei sellaista viestiä
       body: Valitettavasti tällä ID-tunnuksella ei ole viestiä.
-    outbox:
-      title: Lähetetyt
-      messages:
-        one: Kansiossa on %{count} lähetetty viesti.
-        other: Kansiossa on %{count} lähetettyä viestiä.
-      no_sent_messages_html: Et ole lähettänyt vielä viestejä. Miksi et ottaisi yhteyttä
-        joihinkin %{people_mapping_nearby_link}?
-      people_mapping_nearby: lähellä kartoittaviin käyttäjiin
     reply:
       wrong_user: Olet kirjautunut sisään tunnuksella `%{user}' mutta viestiä, johon
         tahdot vastata, ei ole lähetetty kyseiselle käyttäjälle. Ole hyvä ja kirjaudu
@@ -1730,16 +1699,48 @@ fi:
       wrong_user: Olet kirjautunut sisään tunnuksella `%{user}' mutta viestiä, jonka
         tahdot lukea, ei ole lähetetty kyseiselle käyttäjälle. Ole hyvä ja kirjaudu
         sisään oikealla käyttäjätunnukselle lukeaksesi sen.
-    sent_message_summary:
-      destroy_button: Poista
-    heading:
-      my_inbox: Saapuneet
-      my_outbox: Lähetetyt
     mark:
       as_read: Viesti on merkitty luetuksi.
       as_unread: Viesti on merkitty lukemattomaksi.
     destroy:
       destroyed: Viesti on poistettu.
+    mailboxes:
+      heading:
+        my_inbox: Saapuneet
+        my_outbox: Lähetetyt
+      messages_table:
+        from: Lähettäjä
+        to: Vastaanottaja
+        subject: Otsikko
+        date: Päiväys
+        actions: Toiminnot
+      message:
+        unread_button: Merkitse lukemattomaksi
+        read_button: Merkitse luetuksi
+        destroy_button: Poista
+    inboxes:
+      show:
+        title: Saapuneet
+        messages: Kansiossa on %{new_messages} ja %{old_messages}.
+        new_messages:
+          one: '%{count} lukematon viesti'
+          other: '%{count} lukematonta viestiä'
+        old_messages:
+          one: '%{count} luettu viesti'
+          other: '%{count} luettua viestiä'
+        no_messages_yet_html: Ei viestejä. %{people_mapping_nearby_link}
+        people_mapping_nearby: Lähiseudun kartoittajat
+    outboxes:
+      show:
+        title: Lähetetyt
+        messages:
+          one: Kansiossa on %{count} lähetetty viesti.
+          other: Kansiossa on %{count} lähetettyä viestiä.
+        no_sent_messages_html: Et ole lähettänyt vielä viestejä. Miksi et ottaisi
+          yhteyttä joihinkin %{people_mapping_nearby_link}?
+        people_mapping_nearby: lähellä kartoittaviin käyttäjiin
+      message:
+        destroy_button: Poista
   passwords:
     new:
       title: Unohtunut salasana
@@ -2562,6 +2563,16 @@ fi:
       report: Ilmianna käyttäjä
     go_public:
       flash success: Kaikki tekemäsi muokkaukset ovat nyt julkisia.
+    issued_blocks:
+      show:
+        title: Käyttäjän %{name} tekemät estot
+        heading_html: Listaa käyttäjän %{name} tekemät estot
+        empty: '%{name} ei ole vielä tehnyt yhtään estoa.'
+    received_blocks:
+      show:
+        title: Käyttäjän %{name} estot
+        heading_html: Käyttäjän %{name} estot
+        empty: Käyttäjää %{name} ei ole estetty.
     lists:
       show:
         title: Käyttäjät
@@ -2652,14 +2663,6 @@ fi:
         years:
           one: '%{count} vuosi'
           other: '%{count} vuotta'
-    blocks_on:
-      title: Käyttäjän %{name} estot
-      heading_html: Käyttäjän %{name} estot
-      empty: Käyttäjää %{name} ei ole estetty.
-    blocks_by:
-      title: Käyttäjän %{name} tekemät estot
-      heading_html: Listaa käyttäjän %{name} tekemät estot
-      empty: '%{name} ei ole vielä tehnyt yhtään estoa.'
     show:
       title: '%{block_on} estetty käyttäjän %{block_by} toimesta'
       heading_html: '%{block_on} estetty käyttäjän %{block_by} toimesta'
@@ -2765,7 +2768,6 @@ fi:
       center_marker: Keskitä kartta karttamerkkiin
       paste_html: Upota karttaikkuna liittämällä tämä koodi verkkosivulle
       view_larger_map: Näytä isommalla kartalla
-      only_standard_layer: Vain standardi kerros voidaan viedä kuvana
     embed:
       report_problem: Ilmoita ongelmasta
     key:
index 77018061499e6c5f4bfbfaac2e2e6d808fa91a6f..42155f4d73da002f8e6fb02ec8a95ce9490d22d0 100644 (file)
@@ -601,26 +601,6 @@ fit:
     confirm:
       heading: Tarkista sinun e-posti!
   messages:
-    inbox:
-      title: Saapuneet
-      messages: Kansiossa oon %{new_messages} ja %{old_messages}.
-      new_messages:
-        one: '%{count} lukematon viesti'
-        other: '%{count} lukematonta viestiä'
-      old_messages:
-        one: '%{count} luettu viesti'
-        other: '%{count} luettua viestiä'
-      no_messages_yet_html: Ei viestejä. %{people_mapping_nearby_link}
-      people_mapping_nearby: Lähiseudun kartoittajat
-    messages_table:
-      from: Lähättäjä
-      to: Vastaanottaja
-      subject: Otsikko
-      date: Taatumi
-    message_summary:
-      unread_button: Markeeraa lukemattomaksi
-      read_button: Markeeraa luetuksi
-      destroy_button: Ota poies
     new:
       title: Lähätä viesti
       send_message_to_html: Lähätä viesti käyttäjälle %{name}
@@ -632,14 +612,6 @@ fit:
     no_such_message:
       title: Ei sellaista viestiä
       heading: Ei sellaista viestiä
-    outbox:
-      title: Lähätetyt
-      messages:
-        one: Kansiossa oon %{count} lähätetty viesti.
-        other: Kansiossa oon %{count} lähätettyä viestiä.
-      no_sent_messages_html: Et ole lähettänyt vielä viestejä. Miksi et ottaisi yhteyttä
-        joihinkin %{people_mapping_nearby_link}?
-      people_mapping_nearby: lähellä kartoittaviin käyttäjiin
     reply:
       wrong_user: Olet lokannu sisäle konttulla `%{user}' mutta viestiä, johon tahot
         vastata, ei ole lähätetty kyseiselle käyttäjälle. Ole hyvä ja lokkaa sisäle
@@ -650,15 +622,46 @@ fit:
       unread_button: Markeeraa lukemattomaksi
       destroy_button: Ota poies
       back: Takashiin
-    sent_message_summary:
-      destroy_button: Ota poies
-    heading:
-      my_inbox: Saapuneet
     mark:
       as_read: Viesti markeerattu luetuksi.
       as_unread: Viesti markeerattu lukemattomaksi.
     destroy:
       destroyed: Viesti otettu poies
+    mailboxes:
+      heading:
+        my_inbox: Saapuneet
+      messages_table:
+        from: Lähättäjä
+        to: Vastaanottaja
+        subject: Otsikko
+        date: Taatumi
+      message:
+        unread_button: Markeeraa lukemattomaksi
+        read_button: Markeeraa luetuksi
+        destroy_button: Ota poies
+    inboxes:
+      show:
+        title: Saapuneet
+        messages: Kansiossa oon %{new_messages} ja %{old_messages}.
+        new_messages:
+          one: '%{count} lukematon viesti'
+          other: '%{count} lukematonta viestiä'
+        old_messages:
+          one: '%{count} luettu viesti'
+          other: '%{count} luettua viestiä'
+        no_messages_yet_html: Ei viestejä. %{people_mapping_nearby_link}
+        people_mapping_nearby: Lähiseudun kartoittajat
+    outboxes:
+      show:
+        title: Lähätetyt
+        messages:
+          one: Kansiossa oon %{count} lähätetty viesti.
+          other: Kansiossa oon %{count} lähätettyä viestiä.
+        no_sent_messages_html: Et ole lähettänyt vielä viestejä. Miksi et ottaisi
+          yhteyttä joihinkin %{people_mapping_nearby_link}?
+        people_mapping_nearby: lähellä kartoittaviin käyttäjiin
+      message:
+        destroy_button: Ota poies
   passwords:
     new:
       title: Unohtunut salasana
index 1976641800708f2d43a9c8f02ed350aa8fcc9782..bf4f20107ebc96ad5afe284142ddcde3524b8c99 100644 (file)
@@ -1958,9 +1958,6 @@ fr:
       success: Compte confirmé, merci de vous être inscrit !
       already active: Ce compte a déjà été confirmé.
       unknown token: Le code de confirmation a expiré ou n’existe pas.
-      resend_html: Si vous souhaitez que nous renvoyions le courriel de confirmation,
-        %{reconfirm_link}.
-      click_here: cliquez ici
     confirm_resend:
       failure: L’utilisateur %{name} est introuvable.
     confirm_email:
@@ -1978,31 +1975,6 @@ fr:
         de confirmation, alors assurez-vous que %{sender} est en liste blanche, car
         nous ne pouvons pas répondre aux requêtes de confirmation.
   messages:
-    inbox:
-      title: Boîte de réception
-      messages: Vous avez %{new_messages} et %{old_messages}
-      new_messages:
-        zero: zéro nouveau message
-        one: un nouveau message
-        other: '%{count} nouveaux messages'
-      old_messages:
-        zero: aucun ancien message
-        one: un ancien message
-        other: '%{count} anciens messages'
-      no_messages_yet_html: Vous n’avez actuellement aucun message. Pourquoi ne pas
-        entrer en contact avec quelques %{people_mapping_nearby_link} ?
-      people_mapping_nearby: personnes qui cartographient aux alentours
-    messages_table:
-      from: De
-      to: À
-      subject: Objet
-      date: Date
-      actions: Actions
-    message_summary:
-      unread_button: Marquer comme non lu
-      read_button: Marquer comme lu
-      destroy_button: Supprimer
-      unmute_button: Déplacer vers la boîte de réception
     new:
       title: Envoyer un message
       send_message_to_html: Envoyer un nouveau message à %{name}
@@ -2015,19 +1987,6 @@ fr:
       title: Message introuvable
       heading: Message introuvable
       body: Désolé, il n’y a aucun message avec cet identifiant.
-    outbox:
-      title: Boîte d’envoi
-      messages:
-        one: Vous n’avez aucun message envoyé
-        other: Vous avez %{count} messages envoyés
-      no_sent_messages_html: Vous n’avez encore envoyé aucun message. Pourquoi ne
-        pas entrer en contact avec quelques %{people_mapping_nearby_link} ?
-      people_mapping_nearby: personnes proche de vous
-    muted:
-      title: Messages en sourdine
-      messages:
-        one: un ancien message
-        other: '%{count} anciens messages'
     reply:
       wrong_user: Vous êtes identifié(e) sous le nom « %{user} » mais le message auquel
         vous souhaitez répondre n’a pas été envoyé à cet utilisateur. Veuillez vous
@@ -2041,12 +2000,6 @@ fr:
       wrong_user: Vous êtes identifié(e) sous le nom « %{user} » mais le message que
         vous souhaitez lire n’a pas été envoyé par ou à cet utilisateur. Veuillez
         vous connecter avec le bon identifiant pour pouvoir le voir.
-    sent_message_summary:
-      destroy_button: Supprimer
-    heading:
-      my_inbox: Ma boîte de réception
-      my_outbox: Ma boîte d’envoi
-      muted_messages: Messages mis en sourdine
     mark:
       as_read: Message marqué comme lu
       as_unread: Message marqué comme non lu
@@ -2055,6 +2008,54 @@ fr:
       error: Le message n'a pas pu être déplacé vers la boîte de réception.
     destroy:
       destroyed: Message supprimé
+    mailboxes:
+      heading:
+        my_inbox: Ma boîte de réception
+        my_outbox: Ma boîte d’envoi
+        muted_messages: Messages mis en sourdine
+      messages_table:
+        from: De
+        to: À
+        subject: Objet
+        date: Date
+        actions: Actions
+      message:
+        unread_button: Marquer comme non lu
+        read_button: Marquer comme lu
+        destroy_button: Supprimer
+        unmute_button: Déplacer vers la boîte de réception
+    inboxes:
+      show:
+        title: Boîte de réception
+        messages: Vous avez %{new_messages} et %{old_messages}
+        new_messages:
+          zero: zéro nouveau message
+          one: un nouveau message
+          other: '%{count} nouveaux messages'
+        old_messages:
+          zero: aucun ancien message
+          one: un ancien message
+          other: '%{count} anciens messages'
+        no_messages_yet_html: Vous n’avez actuellement aucun message. Pourquoi ne
+          pas entrer en contact avec quelques %{people_mapping_nearby_link} ?
+        people_mapping_nearby: personnes qui cartographient aux alentours
+    muted_inboxes:
+      show:
+        title: Messages en sourdine
+        messages:
+          one: un ancien message
+          other: '%{count} anciens messages'
+    outboxes:
+      show:
+        title: Boîte d’envoi
+        messages:
+          one: Vous n’avez aucun message envoyé
+          other: Vous avez %{count} messages envoyés
+        no_sent_messages_html: Vous n’avez encore envoyé aucun message. Pourquoi ne
+          pas entrer en contact avec quelques %{people_mapping_nearby_link} ?
+        people_mapping_nearby: personnes proche de vous
+      message:
+        destroy_button: Supprimer
   passwords:
     new:
       title: Mot de passe perdu
@@ -3112,6 +3113,27 @@ fr:
     go_public:
       flash success: Toutes vos modifications sont dorénavant publiques et vous êtes
         autorisé à modifier.
+    issued_blocks:
+      show:
+        title: Blocages effectués par « %{name} »
+        heading_html: Liste des blocages effectués par « %{name} »
+        empty: « %{name} » n’a pas encore effectué de blocages.
+    received_blocks:
+      show:
+        title: Blocages de « %{name} »
+        heading_html: Liste des blocages sur « %{name} »
+        empty: « %{name} » n’a pas encore été bloqué.
+      edit:
+        title: Révoquer tous les blocages sur %{block_on}
+        heading_html: Révoquer tous les blocages sur %{block_on}
+        empty: '%{name} n’a pas de blocages actifs.'
+        confirm: Êtes-vous sûr de vouloir révoquer %{active_blocks} ?
+        active_blocks:
+          one: '%{count} blocage actif'
+          other: '%{count} blocages actifs'
+        revoke: Révoquer
+      destroy:
+        flash: Tous les blocages actifs ont été révoqués.
     lists:
       show:
         title: Utilisateurs
@@ -3198,16 +3220,6 @@ fr:
       title: Blocages d’utilisateur
       heading: Liste des blocages
       empty: Aucun blocage n’a encore été effectué.
-    revoke_all:
-      title: Révoquer tous les blocages sur %{block_on}
-      heading_html: Révoquer tous les blocages sur %{block_on}
-      empty: '%{name} n’a pas de blocages actifs.'
-      confirm: Êtes-vous sûr de vouloir révoquer %{active_blocks} ?
-      active_blocks:
-        one: '%{count} blocage actif'
-        other: '%{count} blocages actifs'
-      revoke: Révoquer
-      flash: Tous les blocages actifs ont été révoqués.
     helper:
       time_future_html: Prend fin dans %{time}.
       until_login: Actif jusqu’à ce que l’utilisateur se connecte.
@@ -3239,14 +3251,6 @@ fr:
         read_html: lu à %{time}
         time_in_future_title: '%{time_absolute}; dans %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blocages de « %{name} »
-      heading_html: Liste des blocages sur « %{name} »
-      empty: « %{name} » n’a pas encore été bloqué.
-    blocks_by:
-      title: Blocages effectués par « %{name} »
-      heading_html: Liste des blocages effectués par « %{name} »
-      empty: « %{name} » n’a pas encore effectué de blocages.
     show:
       title: « %{block_on} » bloqué par « %{block_by} »
       heading_html: « %{block_on} » bloqué par « %{block_by} »
@@ -3393,8 +3397,8 @@ fr:
       center_marker: Centrer la carte sur le marqueur
       paste_html: Coller le HTML à inclure dans le site web
       view_larger_map: Afficher une carte plus grande
-      only_standard_layer: Seule les couche « Standard », « Carte cyclable » et « Carte
-        de transport » peuvent être exportées comme une image
+      only_layers_exported_as_image: 'Seules les couches suivantes peuvent être exportées
+        sous forme d''image :'
     embed:
       report_problem: Signaler un problème
     key:
index 2d99074c6e36f98e26e1b30a7b6fa37d547bf7e2..9681a2f0fe513dc7eb3a904a25a42a3a6f5fc70f 100644 (file)
@@ -1003,28 +1003,6 @@ fur:
       button: Conferme
       success: Tu âs confermât la tô direzion di pueste, graziis par jessiti regjistrât
   messages:
-    inbox:
-      title: In jentrade
-      messages: Tu âs %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} messaç gnûf'
-        other: '%{count} messaçs gnûfs'
-      old_messages:
-        one: '%{count} messaç vieli'
-        other: '%{count} messaçs vielis'
-      no_messages_yet_html: No tu âs ancjemò nissun messaç. Parcè no tu contatis cualchidun
-        de %{people_mapping_nearby_link}?
-      people_mapping_nearby: int che e je daûr a mapâ dongje di te
-    messages_table:
-      from: Di
-      to: A
-      subject: Sogjet
-      date: Date
-      actions: Azions
-    message_summary:
-      unread_button: Segne come no let
-      read_button: Segne come let
-      destroy_button: Elimine
     new:
       title: Mande messaç
       send_message_to_html: Mande un gnûf messaç a %{name}
@@ -1034,30 +1012,55 @@ fur:
     no_such_message:
       title: Messaç no cjatât
       heading: Messaç no cjatât
-    outbox:
-      title: In jessude
-      messages:
-        one: Tu âs %{count} messaç in jessude
-        other: Tu âs %{count} messaçs in jessude
-      no_sent_messages_html: No tu âs ancjemò mandât nissun messaç. Parcè no tu contatis
-        cualchidun de %{people_mapping_nearby_link}?
-      people_mapping_nearby: int che e je daûr a mapâ dongje di te
     show:
       title: Leture messaç
       reply_button: Rispuint
       unread_button: Segne come di lei
       destroy_button: Elimine
       back: Indaûr
-    sent_message_summary:
-      destroy_button: Elimine
-    heading:
-      my_inbox: I miei messaçs in jentrade
-      my_outbox: I miei messaçs in jessude
     mark:
       as_read: Messaç segnât come za let
       as_unread: Messaç segnât come di lei
     destroy:
       destroyed: Messaç eliminât
+    mailboxes:
+      heading:
+        my_inbox: I miei messaçs in jentrade
+        my_outbox: I miei messaçs in jessude
+      messages_table:
+        from: Di
+        to: A
+        subject: Sogjet
+        date: Date
+        actions: Azions
+      message:
+        unread_button: Segne come no let
+        read_button: Segne come let
+        destroy_button: Elimine
+    inboxes:
+      show:
+        title: In jentrade
+        messages: Tu âs %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} messaç gnûf'
+          other: '%{count} messaçs gnûfs'
+        old_messages:
+          one: '%{count} messaç vieli'
+          other: '%{count} messaçs vielis'
+        no_messages_yet_html: No tu âs ancjemò nissun messaç. Parcè no tu contatis
+          cualchidun de %{people_mapping_nearby_link}?
+        people_mapping_nearby: int che e je daûr a mapâ dongje di te
+    outboxes:
+      show:
+        title: In jessude
+        messages:
+          one: Tu âs %{count} messaç in jessude
+          other: Tu âs %{count} messaçs in jessude
+        no_sent_messages_html: No tu âs ancjemò mandât nissun messaç. Parcè no tu
+          contatis cualchidun de %{people_mapping_nearby_link}?
+        people_mapping_nearby: int che e je daûr a mapâ dongje di te
+      message:
+        destroy_button: Elimine
   passwords:
     new:
       title: Password pierdude
@@ -1510,6 +1513,16 @@ fur:
     go_public:
       flash success: Ducj i tiei cambiaments a son cumò publics e tu puedis za scomençâ
         a lavorâ.
+    issued_blocks:
+      show:
+        title: Blocs fats di %{name}
+        heading_html: Liste dai blocs di %{name}
+        empty: '%{name} nol à ancjemò metût blocs.'
+    received_blocks:
+      show:
+        title: Blocs su %{name}
+        heading_html: Liste dai blocs su %{name}
+        empty: '%{name} nol è ancjemò stât blocât.'
     lists:
       show:
         title: Utents
@@ -1543,14 +1556,6 @@ fur:
         hours:
           one: '%{count} ore'
           other: '%{count} oris'
-    blocks_on:
-      title: Blocs su %{name}
-      heading_html: Liste dai blocs su %{name}
-      empty: '%{name} nol è ancjemò stât blocât.'
-    blocks_by:
-      title: Blocs fats di %{name}
-      heading_html: Liste dai blocs di %{name}
-      empty: '%{name} nol à ancjemò metût blocs.'
     show:
       title: '%{block_on} blocât di %{block_by}'
       heading_html: '%{block_on} blocât di %{block_by}'
index c71ea91e5742e279ce8fd0d8afecbab1786d4c94..35240d2cb8920e8722d6cc02c3d5657ad9834368 100644 (file)
@@ -1615,27 +1615,6 @@ fy:
         soargje dan dat %{sender} op 'e wite list stiet, omdat wy befêstigingsfersiken
         net beäntwurdzje kinne.
   messages:
-    inbox:
-      title: Ynfek
-      messages: Jo hawwe %{new_messages} en %{old_messages}
-      new_messages:
-        one: '%{count} nij berjocht'
-        other: '%{count} nije berjochten'
-      old_messages:
-        one: '%{count} âld berjocht'
-        other: '%{count} âlde berjochten'
-      no_messages_yet_html: Jo hawwe noch gjin berjochten. Kom ris yn 'e kunde mei
-        in pear %{people_mapping_nearby_link}.
-      people_mapping_nearby: kaartmakkers yn 'e omkriten
-    messages_table:
-      from: Fan
-      to: Oan
-      subject: Underwerp
-      date: Datum
-    message_summary:
-      unread_button: As net-lêzen oanmerke
-      read_button: As lêzen oanmerke
-      destroy_button: Wiskje
     new:
       title: Berjocht stjoere
       send_message_to_html: In nij berjocht stjoere oan %{name}
@@ -1648,14 +1627,6 @@ fy:
       title: Berjocht ûnbekend
       heading: Berjocht ûnbekend
       body: Spitich, der is gjin berjocht mei dy ID.
-    outbox:
-      title: Utfek
-      messages:
-        one: Jo hawwe %{count} ferstjoerd berjocht
-        other: Jo hawwe %{count} ferstjoerde berjochten
-      no_sent_messages_html: Jo hawwe noch gjin berjochten ferstjoerd. Kom ris yn
-        'e kunde mei in pear %{people_mapping_nearby_link}.
-      people_mapping_nearby: kaartmakkers yn 'e omkriten
     reply:
       wrong_user: Jo binne oanmeld as '%{user}', mar it berjocht dat jo beäntwurdzje
         wolle is net nei dy meidogger stjoerd. Meld jo oan as de krekte meidogger
@@ -1669,16 +1640,48 @@ fy:
       wrong_user: Jo binne oanmeld as '%{user}', mar it berjocht dat jo lêze wolle
         is net troch/nei dy meidogger stjoerd. Meld jo oan as de krekte meidogger
         om it lêze te kinnen.
-    sent_message_summary:
-      destroy_button: Wiskje
-    heading:
-      my_inbox: Myn ynfek
-      my_outbox: Myn útfek
     mark:
       as_read: Berjocht as lêzen oanmurken
       as_unread: Berjocht as net-lêzen oanmurken
     destroy:
       destroyed: Berjocht wiske
+    mailboxes:
+      heading:
+        my_inbox: Myn ynfek
+        my_outbox: Myn útfek
+      messages_table:
+        from: Fan
+        to: Oan
+        subject: Underwerp
+        date: Datum
+      message:
+        unread_button: As net-lêzen oanmerke
+        read_button: As lêzen oanmerke
+        destroy_button: Wiskje
+    inboxes:
+      show:
+        title: Ynfek
+        messages: Jo hawwe %{new_messages} en %{old_messages}
+        new_messages:
+          one: '%{count} nij berjocht'
+          other: '%{count} nije berjochten'
+        old_messages:
+          one: '%{count} âld berjocht'
+          other: '%{count} âlde berjochten'
+        no_messages_yet_html: Jo hawwe noch gjin berjochten. Kom ris yn 'e kunde mei
+          in pear %{people_mapping_nearby_link}.
+        people_mapping_nearby: kaartmakkers yn 'e omkriten
+    outboxes:
+      show:
+        title: Utfek
+        messages:
+          one: Jo hawwe %{count} ferstjoerd berjocht
+          other: Jo hawwe %{count} ferstjoerde berjochten
+        no_sent_messages_html: Jo hawwe noch gjin berjochten ferstjoerd. Kom ris yn
+          'e kunde mei in pear %{people_mapping_nearby_link}.
+        people_mapping_nearby: kaartmakkers yn 'e omkriten
+      message:
+        destroy_button: Wiskje
   passwords:
     new:
       title: Wachtwurd kwyt
@@ -2293,6 +2296,16 @@ fy:
       report: Dizze meidogger melde
     go_public:
       flash success: Al jo bewurkings binne no iepenbier, en jo meie fan no ôf bewurkje.
+    issued_blocks:
+      show:
+        title: Utslutings troch %{name}
+        heading_html: List mei útslutings troch %{name}
+        empty: '%{name} hat noch gjin útslutings oanmakke.'
+    received_blocks:
+      show:
+        title: Utslutings foar %{name}
+        heading_html: List mei útslutings foar %{name}
+        empty: '%{name} is noch net útsletten west.'
     lists:
       show:
         title: Meidoggers
@@ -2387,14 +2400,6 @@ fy:
         years:
           one: 1 jier
           other: '%{count} jier'
-    blocks_on:
-      title: Utslutings foar %{name}
-      heading_html: List mei útslutings foar %{name}
-      empty: '%{name} is noch net útsletten west.'
-    blocks_by:
-      title: Utslutings troch %{name}
-      heading_html: List mei útslutings troch %{name}
-      empty: '%{name} hat noch gjin útslutings oanmakke.'
     show:
       title: '%{block_on} útsletten troch %{block_by}'
       heading_html: '%{block_on} útsletten troch %{block_by}'
@@ -2471,7 +2476,6 @@ fy:
       center_marker: Kaart op markearder sintrearje
       paste_html: HTML op te nimmen yn in webstee
       view_larger_map: Gruttere kaart besjen
-      only_standard_layer: Inkeld de standertlaach kin as ôfbyld eksportearre wurde
     embed:
       report_problem: Probleem melde
     key:
index e0b1496b5b02c7ba628a21dd1e7bb386f3ec9edc..b5cfc80017f9ad986f4c61a69439a53dfa1502d9 100644 (file)
@@ -1186,31 +1186,6 @@ ga:
       button: Deimhnigh
       success: Deimhníodh an t-athrú ar an seoladh ríomhphoist!
   messages:
-    inbox:
-      title: Bosca isteach
-      messages: Tá %{new_messages} agus %{old_messages} agat.
-      new_messages:
-        one: '%{count} theachtaireacht amháin'
-        few: '%{count} theachtaireacht nua'
-        many: '%{count} dteachtaireacht nua'
-        other: '%{count} teachtaireacht nua'
-      old_messages:
-        one: '%{count} sheanteachtaireacht'
-        few: '%{count} seanteachtaireacht'
-        many: '%{count} seanteachtaireacht nua'
-        other: '%{count} seanteachtaireacht'
-      no_messages_yet_html: Níl aon teachtaireacht agat fós. Nach smaoineofá ar theagmháil
-        a dhéanamh le roinnt de na %{people_mapping_nearby_link}?
-      people_mapping_nearby: daoine atá i mbun léarscáilithe in aice láimhe
-    messages_table:
-      from: Ó
-      to: Chuig
-      subject: Ábhar
-      date: Dáta
-    message_summary:
-      unread_button: Marcáil neamhléite
-      read_button: Marcáil léite
-      destroy_button: Scrios
     new:
       title: Seol teachtaireacht
       send_message_to_html: Teachtaireacht nua a sheoladh chuig %{name}
@@ -1223,14 +1198,6 @@ ga:
       title: Níl teachtaireacht den sórt sin ann
       heading: Níl teachtaireacht den sórt sin ann
       body: Ár leithscéil, níl teachtaireacht ann a bhfuil an ID sin aici.
-    outbox:
-      title: Bosca amach
-      messages:
-        one: Tá %{count} teachtaireacht seolta amháin agat
-        other: Tá %{count} teachtaireacht seolta agat
-      no_sent_messages_html: Níl aon teachtaireacht seolta agat fós. Nach smaoineofá
-        ar theagmháil a dhéanamh le roinnt de na %{people_mapping_nearby_link}?
-      people_mapping_nearby: daoine atá i mbun léarscáilithe in aice láimhe
     reply:
       wrong_user: Tá tú logáilte isteach mar '%{user}' ach níor seoladh an teachtaireacht
         atá tú ag iarraidh freagra a thabhairt uirthi chuig an úsáideoir sin. Logáil
@@ -1244,15 +1211,51 @@ ga:
       wrong_user: Tá tú logáilte isteach mar '%{user}' ach níor seoladh an teachtaireacht
         atá tú ag iarraidh léamh chuig an úsáideoir sin agus ní hé a sheol é ach an
         oiread. Logáil isteach mar an t-úsáideoir ceart chun é a léamh.
-    sent_message_summary:
-      destroy_button: Scrios
-    heading:
-      my_inbox: Mo Bhosca Isteach
     mark:
       as_read: Teachtaireacht marcáilte mar léite
       as_unread: Teachtaireacht marcáilte mar neamhléite
     destroy:
       destroyed: Teachtaireacht scriosta
+    mailboxes:
+      heading:
+        my_inbox: Mo Bhosca Isteach
+      messages_table:
+        from: Ó
+        to: Chuig
+        subject: Ábhar
+        date: Dáta
+      message:
+        unread_button: Marcáil neamhléite
+        read_button: Marcáil léite
+        destroy_button: Scrios
+    inboxes:
+      show:
+        title: Bosca isteach
+        messages: Tá %{new_messages} agus %{old_messages} agat.
+        new_messages:
+          one: '%{count} theachtaireacht amháin'
+          few: '%{count} theachtaireacht nua'
+          many: '%{count} dteachtaireacht nua'
+          other: '%{count} teachtaireacht nua'
+        old_messages:
+          one: '%{count} sheanteachtaireacht'
+          few: '%{count} seanteachtaireacht'
+          many: '%{count} seanteachtaireacht nua'
+          other: '%{count} seanteachtaireacht'
+        no_messages_yet_html: Níl aon teachtaireacht agat fós. Nach smaoineofá ar
+          theagmháil a dhéanamh le roinnt de na %{people_mapping_nearby_link}?
+        people_mapping_nearby: daoine atá i mbun léarscáilithe in aice láimhe
+    outboxes:
+      show:
+        title: Bosca amach
+        messages:
+          one: Tá %{count} teachtaireacht seolta amháin agat
+          other: Tá %{count} teachtaireacht seolta agat
+        no_sent_messages_html: Níl aon teachtaireacht seolta agat fós. Nach smaoineofá
+          ar theagmháil a dhéanamh le roinnt de na %{people_mapping_nearby_link}?
+        people_mapping_nearby: daoine atá i mbun léarscáilithe in aice láimhe
+      message:
+        destroy_button: Scrios
   passwords:
     new:
       title: Focal faire caillte
index ff577e670df00290158d27dd27c16deb94955c67..d111ef582244290d91540940cbc22f003b9df4eb 100644 (file)
@@ -500,7 +500,6 @@ gcf:
       press confirm button: Apiyé asi bouton la ki an ba pou konfirmé kont aw aktif
         menm.
       button: Konfirmé
-      click_here: pijé kotésit
     confirm_email:
       heading: Konfirmé chanjman a adres imél aw
       press confirm button: Apiyé asi bouton la ki an ba pou konfirmé nouvo adres
index 0b12949fe5ea2585886e0f09d2363ad95c99daba..bde706f6f7ac052d48c47eea9926391a6c9c0c72 100644 (file)
@@ -1192,25 +1192,6 @@ gd:
       failure: Chaidh seòladh puist-d aig a bheil an tòcan seo a dhearbhadh mar-thà.
       unknown_token: Dh'fhalbh an ùine air a' chòd dearbhaidh seo no chan eil e ann.
   messages:
-    inbox:
-      title: Am bogsa a-steach
-      messages: Tha %{new_messages} agus %{old_messages} agad
-      new_messages:
-        other: '%{count} teachdaireachd ùr'
-      old_messages:
-        other: '%{count} teachdaireachd shean'
-      no_messages_yet_html: Chan eil teachdaireachd agad fhathast. Nach tòisich thu
-        conaltradh le %{people_mapping_nearby_link}?
-      people_mapping_nearby: daoine a nì obair-mhapa faisg ort
-    messages_table:
-      from: O
-      to: Gu
-      subject: Cuspair
-      date: Ceann-là
-    message_summary:
-      unread_button: Cuir comharra nach deach a leughadh
-      read_button: Cuir comharra gun deach a leughadh
-      destroy_button: Sguab às
     new:
       title: Cuir teachdaireachd
       send_message_to_html: Cuir teachdaireachd ùr gu %{name}
@@ -1223,13 +1204,6 @@ gd:
       title: Chan eil an teachdaireachd seo ann
       heading: Chan eil an teachdaireachd seo ann
       body: Duilich ach chan eil teachdaireachd air a bheil an id seo ann.
-    outbox:
-      title: Am bogsa a-mach
-      messages:
-        other: Tha %{count} teachdaireachd chuirte agad
-      no_sent_messages_html: Cha do chuir thu teachdaireachd fhathast. Nach tòisich
-        thu conaltradh le %{people_mapping_nearby_link}?
-      people_mapping_nearby: daoine a nì obair-mhapa faisg ort
     reply:
       wrong_user: Rinn thu clàradh a-steach mar `%{user}' ach cha deach an teachdaireachd
         a tha thu a' feuchainn ri freagairt dhi a chur gun neach-chleachdaidh ud.
@@ -1242,15 +1216,44 @@ gd:
       wrong_user: Rinn thu clàradh a-steach mar `%{user}' ach cha deach an teachdaireachd
         a tha thu a' feuchainn ri leughadh a chur gun neach-chleachdaidh ud. Feuch
         an clàraich thu a-steach 'na chleachdaiche a bu chòir airson a leughadh.
-    sent_message_summary:
-      destroy_button: Sguab às
-    heading:
-      my_inbox: Am bogsa a-steach agam
     mark:
       as_read: Chuir thu comharra gun deach an teachdaireachd a leughadh
       as_unread: Chuir thu comharra nach deach an teachdaireachd a leughadh
     destroy:
       destroyed: Chaidh an teachdaireachd a sguabadh às
+    mailboxes:
+      heading:
+        my_inbox: Am bogsa a-steach agam
+      messages_table:
+        from: O
+        to: Gu
+        subject: Cuspair
+        date: Ceann-là
+      message:
+        unread_button: Cuir comharra nach deach a leughadh
+        read_button: Cuir comharra gun deach a leughadh
+        destroy_button: Sguab às
+    inboxes:
+      show:
+        title: Am bogsa a-steach
+        messages: Tha %{new_messages} agus %{old_messages} agad
+        new_messages:
+          other: '%{count} teachdaireachd ùr'
+        old_messages:
+          other: '%{count} teachdaireachd shean'
+        no_messages_yet_html: Chan eil teachdaireachd agad fhathast. Nach tòisich
+          thu conaltradh le %{people_mapping_nearby_link}?
+        people_mapping_nearby: daoine a nì obair-mhapa faisg ort
+    outboxes:
+      show:
+        title: Am bogsa a-mach
+        messages:
+          other: Tha %{count} teachdaireachd chuirte agad
+        no_sent_messages_html: Cha do chuir thu teachdaireachd fhathast. Nach tòisich
+          thu conaltradh le %{people_mapping_nearby_link}?
+        people_mapping_nearby: daoine a nì obair-mhapa faisg ort
+      message:
+        destroy_button: Sguab às
   passwords:
     new:
       title: Facal-faire air chall
@@ -1746,6 +1749,16 @@ gd:
     go_public:
       flash success: Tha gach deasachadh a rinn 's a nì thu poblach agus faodaidh
         tu deasachadh a dhèanamh a-nis.
+    issued_blocks:
+      show:
+        title: Bacaidhean le %{name}
+        heading_html: Liosta dhe na bacaidhean le %{name}
+        empty: Cha do rinn %{name} bacadh fhathast.
+    received_blocks:
+      show:
+        title: Bacaidhean air %{name}
+        heading_html: Liosta dhe na bacaidhean air %{name}
+        empty: Cha deach %{name} a bhacadh fhathast.
     lists:
       show:
         title: Cleachdaichean
@@ -1813,14 +1826,6 @@ gd:
       block_duration:
         hours:
           other: '%{count} uair a thìde'
-    blocks_on:
-      title: Bacaidhean air %{name}
-      heading_html: Liosta dhe na bacaidhean air %{name}
-      empty: Cha deach %{name} a bhacadh fhathast.
-    blocks_by:
-      title: Bacaidhean le %{name}
-      heading_html: Liosta dhe na bacaidhean le %{name}
-      empty: Cha do rinn %{name} bacadh fhathast.
     show:
       title: Chaidh %{block_on} a bhacadh le %{block_by}
       heading_html: Chaidh %{block_on} a bhacadh le %{block_by}
index 04575859d715225e525aa280dd72571ce588d562..d5345d77b4b4c2e09bcc8446b827b8b0853533e8 100644 (file)
@@ -1834,9 +1834,6 @@ gl:
       success: Confirmouse a túa conta. Grazas por se rexistrar!
       already active: Esta conta xa se confirmou.
       unknown token: Ese código de confirmación caducou ou non existe.
-      resend_html: Se precisas que reenviemos o correo electrónico de confirmación,
-        %{reconfirm_link}.
-      click_here: preme aquí
     confirm_resend:
       failure: Non se atopou o usuario "%{name}".
     confirm_email:
@@ -1854,29 +1851,6 @@ gl:
         confirmación, asegúrate de incluír a %{sender} na túa lista branca, xa que
         non podemos responder as devanditas solicitudes.
   messages:
-    inbox:
-      title: Caixa de entrada
-      messages: Ten %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} mensaxe nova'
-        other: '%{count} mensaxes novas'
-      old_messages:
-        one: '%{count} mensaxe vella'
-        other: '%{count} mensaxes vellas'
-      no_messages_yet_html: Aínda non tes ningunha mensaxe. Por que non te pos en
-        contacto con algunhas das %{people_mapping_nearby_link}?
-      people_mapping_nearby: persoas preto de ti
-    messages_table:
-      from: De
-      to: Para
-      subject: Asunto
-      date: Data
-      actions: Accións
-    message_summary:
-      unread_button: Marcar como non lido
-      read_button: Marcar como lido
-      destroy_button: Eliminar
-      unmute_button: Mover á caixa de entrada
     new:
       title: Enviar unha mensaxe
       send_message_to_html: Enviarlle unha nova mensaxe a %{name}
@@ -1889,19 +1863,6 @@ gl:
       title: Non se atopou a mensaxe
       heading: Non se atopou a mensaxe
       body: Non hai ningunha mensaxe con ese identificador.
-    outbox:
-      title: Caixa de saída
-      messages:
-        one: Enviaches %{count} mensaxe
-        other: Enviaches %{count} mensaxes
-      no_sent_messages_html: Aínda non enviaches ningunha mensaxe. Por que non te
-        pos en contacto con algunhas das %{people_mapping_nearby_link}?
-      people_mapping_nearby: persoas preto de ti
-    muted:
-      title: Mensaxes silenciadas
-      messages:
-        one: '%{count} mensaxe silenciada'
-        other: Tes %{count} mensaxes silenciadas
     reply:
       wrong_user: Accediches ó sistema como "%{user}", pero a mensaxe que pediches
         responder non se enviou a ese usuario. Accede co usuario correcto para redactar
@@ -1915,12 +1876,6 @@ gl:
       wrong_user: Accediches ó sistema como "%{user}", pero a mensaxe que pediches
         ler non a enviou ese usuario nin foi enviada a ese usuario. Accede co usuario
         correcto para ler a mensaxe.
-    sent_message_summary:
-      destroy_button: Eliminar
-    heading:
-      my_inbox: A miña caixa de entrada
-      my_outbox: Caixa de saída
-      muted_messages: Mensaxes silenciadas
     mark:
       as_read: Mensaxe marcada coma lida
       as_unread: Mensaxe marcada coma non lida
@@ -1929,6 +1884,52 @@ gl:
       error: Non se puido mover a mensaxe á caixa de entrada.
     destroy:
       destroyed: Mensaxe eliminada
+    mailboxes:
+      heading:
+        my_inbox: A miña caixa de entrada
+        my_outbox: Caixa de saída
+        muted_messages: Mensaxes silenciadas
+      messages_table:
+        from: De
+        to: Para
+        subject: Asunto
+        date: Data
+        actions: Accións
+      message:
+        unread_button: Marcar como non lido
+        read_button: Marcar como lido
+        destroy_button: Eliminar
+        unmute_button: Mover á caixa de entrada
+    inboxes:
+      show:
+        title: Caixa de entrada
+        messages: Ten %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} mensaxe nova'
+          other: '%{count} mensaxes novas'
+        old_messages:
+          one: '%{count} mensaxe vella'
+          other: '%{count} mensaxes vellas'
+        no_messages_yet_html: Aínda non tes ningunha mensaxe. Por que non te pos en
+          contacto con algunhas das %{people_mapping_nearby_link}?
+        people_mapping_nearby: persoas preto de ti
+    muted_inboxes:
+      show:
+        title: Mensaxes silenciadas
+        messages:
+          one: '%{count} mensaxe silenciada'
+          other: Tes %{count} mensaxes silenciadas
+    outboxes:
+      show:
+        title: Caixa de saída
+        messages:
+          one: Enviaches %{count} mensaxe
+          other: Enviaches %{count} mensaxes
+        no_sent_messages_html: Aínda non enviaches ningunha mensaxe. Por que non te
+          pos en contacto con algunhas das %{people_mapping_nearby_link}?
+        people_mapping_nearby: persoas preto de ti
+      message:
+        destroy_button: Eliminar
   passwords:
     new:
       title: Contrasinal perdido
@@ -2362,7 +2363,7 @@ gl:
     help:
       title: Obter axuda
       introduction: |-
-        O OpenStreetMap ten varios recursos para aprender sobre o proxecto, para formular e respostar preguntas,
+        O OpenStreetMap dispón de varios recursos para aprender sobre o proxecto, para formular e responder preguntas,
         así como para debater e documentar colaborativamente sobre temas de cartografía.
       welcome:
         url: /welcome
@@ -2957,6 +2958,27 @@ gl:
     go_public:
       flash success: Tódalas túas edicións son públicas e agora está autorizado a
         editar.
+    issued_blocks:
+      show:
+        title: Bloqueos feitos por %{name}
+        heading_html: Listaxe dos bloqueos feitos por %{name}
+        empty: '%{name} aínda non efectuou ningún bloqueo.'
+    received_blocks:
+      show:
+        title: Bloqueos feitos a %{name}
+        heading_html: Listaxe dos bloqueos feitos a %{name}
+        empty: '%{name} aínda non foi bloqueado.'
+      edit:
+        title: Revogando todos os bloqueos en %{block_on}
+        heading_html: Revogando todos os bloqueos en %{block_on}
+        empty: '%{name} non ten bloqueos activos.'
+        confirm: Ten a certeza de querer revogar %{active_blocks}?
+        active_blocks:
+          one: '%{count} bloqueo activo'
+          other: '%{count} bloqueos activos'
+        revoke: Revogar!
+      destroy:
+        flash: Revogáronse todos os bloqueos activos.
     lists:
       show:
         title: Usuarios
@@ -3039,16 +3061,6 @@ gl:
       title: Bloqueos de usuario
       heading: Listaxe dos bloqueos de usuario
       empty: Aínda non se fixo ningún bloqueo.
-    revoke_all:
-      title: Revogando todos os bloqueos en %{block_on}
-      heading_html: Revogando todos os bloqueos en %{block_on}
-      empty: '%{name} non ten bloqueos activos.'
-      confirm: Ten a certeza de querer revogar %{active_blocks}?
-      active_blocks:
-        one: '%{count} bloqueo activo'
-        other: '%{count} bloqueos activos'
-      revoke: Revogar!
-      flash: Revogáronse todos os bloqueos activos.
     helper:
       time_future_html: Remata en %{time}.
       until_login: Activo até que o usuario inicie sesión.
@@ -3080,14 +3092,6 @@ gl:
         read_html: lido ás %{time}
         time_in_future_title: '%{time_absolute}; en %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Bloqueos feitos a %{name}
-      heading_html: Listaxe dos bloqueos feitos a %{name}
-      empty: '%{name} aínda non foi bloqueado.'
-    blocks_by:
-      title: Bloqueos feitos por %{name}
-      heading_html: Listaxe dos bloqueos feitos por %{name}
-      empty: '%{name} aínda non efectuou ningún bloqueo.'
     show:
       title: '%{block_on} bloqueado por %{block_by}'
       heading_html: '%{block_on} bloqueado por %{block_by}'
@@ -3232,8 +3236,8 @@ gl:
       center_marker: Centrar o mapa no marcador
       paste_html: Pegue o código HTML para incluílo na páxina web
       view_larger_map: Ollar un mapa máis grande
-      only_standard_layer: Só as capas estándar, ciclista e transporte poden exportarse
-        coma unha imaxe
+      only_layers_exported_as_image: 'Só se poden exportar como imaxe as seguintes
+        capas:'
     embed:
       report_problem: Denunciar un problema
     key:
index eb521668ad6585a3e162ad2617aa85dc087c18d2..9277d3aa6a53ac2ad2fffdd8d6bc353ad6f007e3 100644 (file)
@@ -622,11 +622,12 @@ gu:
     confirm_email:
       button: ખાતરી કરો
   messages:
-    messages_table:
-      subject: વિષય
-      date: તારીખ
-    message_summary:
-      destroy_button: દૂર કરો
+    mailboxes:
+      messages_table:
+        subject: વિષય
+        date: તારીખ
+      message:
+        destroy_button: દૂર કરો
   passwords:
     new:
       title: ગુમ થયેલ ગુપ્તસંજ્ઞા
@@ -809,6 +810,9 @@ gu:
     go_public:
       flash success: તમારા બધા સંપાદનો હવે જાહેરમાં છે, અને હવે તમને સંપાદનો કરવાની
         મંજૂરી છે.
+    received_blocks:
+      edit:
+        empty: '%{name} ને કોઈ સક્રિય અવરોધ નથી.'
     lists:
       show:
         title: વપરાશકર્તાઓ
@@ -821,8 +825,6 @@ gu:
       title: વપરાશકર્તા અવરોધો
       heading: વપરાશકર્તા અવરોધોની યાદી
       empty: હજુ સુધી કોઈ અવરોધો કરવામાં આવ્યા નથી.
-    revoke_all:
-      empty: '%{name} ને કોઈ સક્રિય અવરોધ નથી.'
     helper:
       block_duration:
         hours:
index 9af9db86fbdbdc23cea7e1cb4618add65141d657..e4d32ca10fa87223c20a1058b05e73e32b5120b0 100644 (file)
@@ -1083,6 +1083,14 @@ he:
           wayside_shrine: מקדש היסטורי בצד הדרך
           wreck: ספינה טרופה
           "yes": אתר היסטורי
+        information:
+          guidepost: תמרור הכוונה
+          board: לוח מידע
+          map: מפה
+          office: לשכת תיירות
+          terminal: מסוף מידע
+          sign: שלט מידע
+          stele: עמוד מידע
         junction:
           "yes": צומת
         landuse:
@@ -1155,6 +1163,8 @@ he:
           track: מסלול ריצה
           water_park: פארק מים
           "yes": נופש
+        lock:
+          "yes": תא שיט
         man_made:
           adit: פתח מכרה
           advertising: פרסום
@@ -1495,6 +1505,17 @@ he:
           building_passage: מעבר בין בניינים
           culvert: מעבר מים
           "yes": מנהרה
+        water:
+          lake: אגם
+          pond: בריכה טבעית
+          reservoir: מאגר
+          basin: אגן מים
+          fishpond: בריכת דגים
+          lagoon: לגונה
+          wastewater: מי שופכין
+          oxbow: ימת נפתול
+          stream_pool: בריכה בנחל
+          lock: תא שיט
         waterway:
           artificial: נתיב מים מלאכותי
           boatyard: מספנה
@@ -1819,8 +1840,8 @@ he:
       success: חשבונך אושר, תודה שנרשמת!
       already active: החשבון הזה כבר אושר.
       unknown token: נראה שקוד האישור הזה פג או שאינו קיים.
-      resend_html: אם צריך שנשלח לך שוב את דוא״ל האישור, %{reconfirm_link}.
-      click_here: נא ללחוץ כאן
+      if_need_resend: אם נחוץ לך שנשלח שוב את דוא"ל האישור, נא ללחוץ על הכפתור למטה.
+      resend_button: לשלוח שוב את דוא"ל האישור
     confirm_resend:
       failure: משתמש %{name} לא נמצא.
     confirm_email:
@@ -1837,28 +1858,6 @@ he:
       whitelist: אם אתה משתמש במערכת נגד זבל ששולחת בקשות אישור, נא לוודא שהוספת את
         %{sender} לרשימת המותרים כי לא הצלחנו להשיב לבקשות אישור.
   messages:
-    inbox:
-      title: תיבת דואר נכנס
-      messages: יש לך %{new_messages} ועוד %{old_messages}
-      new_messages:
-        one: הודעה חדשה אחת
-        other: '%{count} הודעות חדשות'
-      old_messages:
-        one: הודעה ישנה אחת
-        other: '%{count} הודעות ישנות'
-      no_messages_yet_html: אין לך הודעות חדשות עדיין. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}?
-      people_mapping_nearby: אנשים ממפים בקרבת מקום
-    messages_table:
-      from: מאת
-      to: אל
-      subject: נושא
-      date: תאריך
-      actions: פעולות
-    message_summary:
-      unread_button: סימון כ„לא נקרא”
-      read_button: סימון כ„נקרא”
-      destroy_button: מחיקה
-      unmute_button: העברה לדואר הנכנס
     new:
       title: שליחת הודעה
       send_message_to_html: לשליחת הודעה חדשה אל %{name}
@@ -1870,20 +1869,6 @@ he:
       title: אין הודעה כזאת
       heading: אין הודעה כזאת
       body: אנו מצטערים, אין הודעה עם המזהה הזה.
-    outbox:
-      title: תיבת דואר יוצא
-      messages:
-        one: יש לך הודעה אחת שנשלחה
-        other: יש לך %{count} הודעות שנשלחו
-      no_sent_messages_html: אין לך הודעות נשלחו עד כה. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}?
-      people_mapping_nearby: משתתפים הממפים בקרבת מקום
-    muted:
-      title: הודעות מושתקות
-      messages:
-        one: הודעה מושתקת
-        two: יש לך שתי הודעות מושתקות
-        many: יש לך %{count} הודעות מושתקות
-        other: יש לך %{count} הודעות מושתקות
     reply:
       wrong_user: נכנסת בשם „%{user}”, אבל ההודעה שביקשת להשיב עליה לא נשלחה לאותו
         המשתמש. נא להיכנס בחשבון הנכון כדי להשיב.
@@ -1895,12 +1880,6 @@ he:
       back: חזרה
       wrong_user: נכנסת בשם „%{user}”, אבל ההודעה שביקשת לקרוא לא נשלחה לאותו המשתמש.
         נא להיכנס לחשבון הנכון כדי לקרוא אותה.
-    sent_message_summary:
-      destroy_button: מחיקה
-    heading:
-      my_inbox: תיבת הדואר הנכנס שלי
-      my_outbox: תיבת הדואר היוצא שלי
-      muted_messages: הודעות מושתקות
     mark:
       as_read: ההודעה סומנה כהודעה שנקראה
       as_unread: ההודעה סומנה כהודעה שלא נקראה
@@ -1909,6 +1888,52 @@ he:
       error: אי־אפשר להעביר את ההודעה לדואר הנכנס.
     destroy:
       destroyed: ההודעה נמחקה
+    mailboxes:
+      heading:
+        my_inbox: תיבת הדואר הנכנס שלי
+        my_outbox: תיבת הדואר היוצא שלי
+        muted_messages: הודעות מושתקות
+      messages_table:
+        from: מאת
+        to: אל
+        subject: נושא
+        date: תאריך
+        actions: פעולות
+      message:
+        unread_button: סימון כ„לא נקרא”
+        read_button: סימון כ„נקרא”
+        destroy_button: מחיקה
+        unmute_button: העברה לדואר הנכנס
+    inboxes:
+      show:
+        title: תיבת דואר נכנס
+        messages: יש לך %{new_messages} ועוד %{old_messages}
+        new_messages:
+          one: הודעה חדשה אחת
+          other: '%{count} הודעות חדשות'
+        old_messages:
+          one: הודעה ישנה אחת
+          other: '%{count} הודעות ישנות'
+        no_messages_yet_html: אין לך הודעות חדשות עדיין. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}?
+        people_mapping_nearby: אנשים ממפים בקרבת מקום
+    muted_inboxes:
+      show:
+        title: הודעות מושתקות
+        messages:
+          one: הודעה מושתקת
+          two: יש לך שתי הודעות מושתקות
+          many: יש לך %{count} הודעות מושתקות
+          other: יש לך %{count} הודעות מושתקות
+    outboxes:
+      show:
+        title: תיבת דואר יוצא
+        messages:
+          one: יש לך הודעה אחת שנשלחה
+          other: יש לך %{count} הודעות שנשלחו
+        no_sent_messages_html: אין לך הודעות נשלחו עד כה. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}?
+        people_mapping_nearby: משתתפים הממפים בקרבת מקום
+      message:
+        destroy_button: מחיקה
   passwords:
     new:
       title: הסיסמה הלכה לאיבוד
@@ -2669,6 +2694,28 @@ he:
       wikipedia:
         title: כניסה עם ויקיפדיה
         alt: סמל ויקיפדיה
+    share:
+      email:
+        title: שיתוף בדוא״ל
+        alt: סמל דוא״ל
+      bluesky:
+        title: שיתוף בבלוסקיי
+        alt: סמל בלוסקיי
+      facebook:
+        title: שיתוף בפייסבוק
+        alt: סמל פייסבוק
+      linkedin:
+        title: שיתוף בלינקדאין
+        alt: סמל לינקדאין
+      mastodon:
+        title: שיתוף במסטודון
+        alt: סמל מסטודון
+      telegram:
+        title: שיתוף בטלגרם
+        alt: סמל טלגרם
+      x:
+        title: שיתוף ב־X
+        alt: סמל X
   oauth:
     permissions:
       missing: לא נתת להרשאה גישה למתקן הזה
@@ -2871,6 +2918,29 @@ he:
       report: דיווח על המשתמש
     go_public:
       flash success: כל העריכות שלך ציבוריות עכשיו ויש לך הרשאה לערוך.
+    issued_blocks:
+      show:
+        title: חסימות על־ידי %{name}
+        heading_html: רשימת החסימות שנעשו על־ידי %{name}
+        empty: מעולם לא נעשתה חסימה על־ידי %{name}
+    received_blocks:
+      show:
+        title: חסימות של %{name}
+        heading_html: רשימת החסימות של %{name}
+        empty: מעולם לא הופעלה חסימה על %{name}
+      edit:
+        title: הסרת כל החסימות של %{block_on}
+        heading_html: הסרת כל החסימות של %{block_on}
+        empty: אין חסימות של %{name}.
+        confirm: האם ברצונך להסיר %{active_blocks}?
+        active_blocks:
+          one: חסימה פעילה
+          two: שתי חסימות פעילות
+          many: '%{count} חסימות פעילות'
+          other: '%{count} חסימות פעילות'
+        revoke: להסיר!
+      destroy:
+        flash: כל החסימות הפעילות הוסרו.
     lists:
       show:
         title: משתמשים
@@ -2950,18 +3020,6 @@ he:
       title: חסימות משתמש
       heading: רשימת חסימות משתמש
       empty: עוד לא נעשו חסימות.
-    revoke_all:
-      title: הסרת כל החסימות של %{block_on}
-      heading_html: הסרת כל החסימות של %{block_on}
-      empty: אין חסימות של %{name}.
-      confirm: האם ברצונך להסיר %{active_blocks}?
-      active_blocks:
-        one: חסימה פעילה
-        two: שתי חסימות פעילות
-        many: '%{count} חסימות פעילות'
-        other: '%{count} חסימות פעילות'
-      revoke: להסיר!
-      flash: כל החסימות הפעילות הוסרו.
     helper:
       time_future_html: תסתיים בעוד %{time}
       until_login: פעילה עד שהמשתמש ייכנס לחשבון.
@@ -3002,14 +3060,6 @@ he:
         read_html: נקראה ב־%{time}
         time_in_future_title: '%{time_absolute}; ב־%{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: חסימות של %{name}
-      heading_html: רשימת החסימות של %{name}
-      empty: מעולם לא הופעלה חסימה על %{name}
-    blocks_by:
-      title: חסימות על־ידי %{name}
-      heading_html: רשימת החסימות שנעשו על־ידי %{name}
-      empty: מעולם לא נעשתה חסימה על־ידי %{name}
     show:
       title: החשבון של %{block_on} נחסם על־ידי %{block_by}
       heading_html: החשבון של %{block_on} נחסם על־ידי %{block_by}
@@ -3123,6 +3173,10 @@ he:
       anonymous_warning_sign_up: להירשם
       advice: /start
       add: הוספת הערה
+    new_readonly:
+      title: הערה חדשה
+      warning: לא ניתן ליצור הערות חדשות כי ה־API של OpenStreetMap במצב קריאה בלבד
+        כעת.
     notes_paging_nav:
       showing_page: הדף %{page}
       next: הבא
@@ -3148,8 +3202,7 @@ he:
       center_marker: למרכז את המפה לפי הסמן
       paste_html: הדבקת HTML להטבעה באתר
       view_larger_map: צפייה במפה גדולה יותר
-      only_standard_layer: 'אפשר לייצא בתור תמונה רק את השכבות הבאות: תקנית, מפת אופניים
-        ותחבורה'
+      only_layers_exported_as_image: 'אפשר לייצא רק את השכבות הבאות כתמונה:'
     embed:
       report_problem: דיווח על בעיה
     key:
index f76a082ca78fba4564b584657d631f614362ba21..57a6630a30314784540a64942bb98bc3903a966f 100644 (file)
@@ -909,12 +909,14 @@ hi:
     note_comment_notification:
       greeting: नमस्कार,
   messages:
-    message_summary:
-      destroy_button: खात्मा
-    sent_message_summary:
-      destroy_button: खात्मा
     destroy:
       destroyed: संदेश खात्मा
+    mailboxes:
+      message:
+        destroy_button: खात्मा
+    outboxes:
+      message:
+        destroy_button: खात्मा
   passwords:
     new:
       title: lost password
index 60546683aa98e67f08a5d3331ef265ff723bc5af..0382f65171fac26d1dddf0acb5c28b8aed2b162f 100644 (file)
@@ -1098,27 +1098,6 @@ hr:
       success: Promjena email adrese je potvrđena!
       failure: Email adresa je već potvrđena s ovim token-om.
   messages:
-    inbox:
-      title: Dolazna pošta
-      messages: Imate %{new_messages} i %{old_messages}
-      new_messages:
-        one: '%{count} nova poruka'
-        other: '%{count} nove poruke'
-      old_messages:
-        one: '%{count} stara poruka'
-        other: '%{count} stare poruke'
-      no_messages_yet_html: Još nemate poruka. Zašto nebi stupili u kontakt s nekim
-        ljudima iz okolice %{people_mapping_nearby_link}?
-      people_mapping_nearby: obližnji ljudi koji mapiraju
-    messages_table:
-      from: Od
-      to: Za
-      subject: Tema
-      date: Datum
-    message_summary:
-      unread_button: Označi kao nepročitano
-      read_button: Označi kao pročitano
-      destroy_button: Obriši
     new:
       title: Pošalji poruku
       send_message_to_html: Pošalji novu poruku za %{name}
@@ -1131,14 +1110,6 @@ hr:
       title: Nema takve poruke
       heading: Nema takve poruke
       body: Nažalost nema poruka s tim id.
-    outbox:
-      title: Odlazna pošta
-      messages:
-        one: Imate %{count} poslanu poruku
-        other: Imate %{count} poslane poruke
-      no_sent_messages_html: Još niste poslali ni jednu poruku. Zašto ne biste stupili
-        u kontakt s %{people_mapping_nearby_link}?
-      people_mapping_nearby: obližnji ljudi koji mapiraju
     reply:
       wrong_user: 'Prijavljeni ste kao: `%{user}'', ali poruka za koju ste zamoljeni
         da odgovorite nije poslana na tom korisniku. Molimo, prijavite se kao ispravan
@@ -1152,15 +1123,47 @@ hr:
       wrong_user: 'Prijavljeni ste kao: `%{user}'', ali poruka za koju ste zamoljeni
         da pročitate nije poslana od ili prema tom korisniku. Molimo, prijavite se
         kao ispravan korisnik kako bi ste pročitali.'
-    sent_message_summary:
-      destroy_button: Obriši
-    heading:
-      my_inbox: Dolazna pošta
     mark:
       as_read: Poruka označena pročitanom
       as_unread: Poruka označena nepročitanom
     destroy:
       destroyed: Poruka obrisana
+    mailboxes:
+      heading:
+        my_inbox: Dolazna pošta
+      messages_table:
+        from: Od
+        to: Za
+        subject: Tema
+        date: Datum
+      message:
+        unread_button: Označi kao nepročitano
+        read_button: Označi kao pročitano
+        destroy_button: Obriši
+    inboxes:
+      show:
+        title: Dolazna pošta
+        messages: Imate %{new_messages} i %{old_messages}
+        new_messages:
+          one: '%{count} nova poruka'
+          other: '%{count} nove poruke'
+        old_messages:
+          one: '%{count} stara poruka'
+          other: '%{count} stare poruke'
+        no_messages_yet_html: Još nemate poruka. Zašto nebi stupili u kontakt s nekim
+          ljudima iz okolice %{people_mapping_nearby_link}?
+        people_mapping_nearby: obližnji ljudi koji mapiraju
+    outboxes:
+      show:
+        title: Odlazna pošta
+        messages:
+          one: Imate %{count} poslanu poruku
+          other: Imate %{count} poslane poruke
+        no_sent_messages_html: Još niste poslali ni jednu poruku. Zašto ne biste stupili
+          u kontakt s %{people_mapping_nearby_link}?
+        people_mapping_nearby: obližnji ljudi koji mapiraju
+      message:
+        destroy_button: Obriši
   passwords:
     new:
       title: Izgubljena zaporka
@@ -1589,6 +1592,16 @@ hr:
       report: Prijavi ovog korisnika
     go_public:
       flash success: Sve Vaše promjene sada su javne i dopušteno Vam je uređivanje.
+    issued_blocks:
+      show:
+        title: Blokade od %{name}
+        heading_html: Lista blokada od %{name}
+        empty: '%{name} nije napravila još ni jednu blokadu.'
+    received_blocks:
+      show:
+        title: Blokade na %{name}
+        heading_html: Lista blokada na %{name}
+        empty: '%{name} nije još bio blokiran.'
     lists:
       show:
         title: Korisnici
@@ -1664,14 +1677,6 @@ hr:
           one: 1 godina
           few: '%{count} godine'
           other: '%{count} godina'
-    blocks_on:
-      title: Blokade na %{name}
-      heading_html: Lista blokada na %{name}
-      empty: '%{name} nije još bio blokiran.'
-    blocks_by:
-      title: Blokade od %{name}
-      heading_html: Lista blokada od %{name}
-      empty: '%{name} nije napravila još ni jednu blokadu.'
     show:
       title: '%{block_by} blokirao %{block_on}'
       heading_html: '%{block_by} blokirao %{block_on}'
index c90b3808df4a3bcf0111ffe6bafef5c55cf3e74b..40f531a572d972b70ac35b1f6b0c5d79183179db 100644 (file)
@@ -1647,32 +1647,6 @@ hsb:
         sćele, přewzmi %{sender} do swojeje běłeje lisćiny, dokelž njemóžemy na wobkrućenske
         naprašowanja wotmołwić.
   messages:
-    inbox:
-      title: Póštowy kašćik
-      messages: Maš %{new_messages} a %{old_messages}
-      new_messages:
-        few: '%{count} nowe powěsće'
-        one: '%{count} nowu powěsć'
-        two: '%{count} nowej powěsći'
-        other: '%{count} nowych powěsćow'
-      old_messages:
-        few: '%{count} stare powěsće'
-        one: '%{count} staru powěsć'
-        two: '%{count} starej powěsći'
-        other: '%{count} starych powěsćow'
-      no_messages_yet_html: Hišće nimaš powěsće. Chceš z %{people_mapping_nearby_link}
-        styki nawjazać?
-      people_mapping_nearby: ludźimi, kotřiž w bliskosći kartěruja
-    messages_table:
-      from: Wot
-      to: Komu
-      subject: Tema
-      date: Datum
-      actions: Akcije
-    message_summary:
-      unread_button: Jako njepřečitanu markěrować
-      read_button: Jako přečitanu markěrować
-      destroy_button: Wotstronić
     new:
       title: Powěsć pósłać
       send_message_to_html: Wužiwarjej %{name} nowu powěsć pósłać
@@ -1685,23 +1659,6 @@ hsb:
       title: Powěsć njeeksistuje
       heading: Powěsć njeeksistuje
       body: Bohužel njeje powěsć z tutej ID.
-    outbox:
-      title: Pósłane
-      messages:
-        few: Sy %{count} powěsće pósłał(a)
-        one: Sy %{count} powěsć pósłał(a)
-        two: Sy %{count} powěsći pósłał(a)
-        other: Sy  %{count} powěsćow pósłał(a)
-      no_sent_messages_html: Hišće njejsy žane powěsće pósłał(a). Chceš z %{people_mapping_nearby_link}
-        styki nawjazać?
-      people_mapping_nearby: ludźimi, kotřiž w bliskosći kartěruja
-    muted:
-      title: Zněmjene powěsće
-      messages:
-        one: '%{count} zněmjena powěsć'
-        two: Maš %{count} zněmjenej powěsći
-        few: Maš %{count} zněmjene powěsće
-        other: Maš %{count} zněmjenych powěsćow
     reply:
       wrong_user: Sy jako `%{user}' přizjewjeny, ale powěsć, na kotruž chceš wotmołwić,
         bu na druheho wužiwarja pósłana. Prošu přizjew so z prawym kontom, zo by wotmołwił(a).
@@ -1713,17 +1670,64 @@ hsb:
       back: Wróćo
       wrong_user: Sy jako `%{user}' přizjewjeny, ale powěsć, kotruž chceš čitać, bu
         na druheho wužiwarja pósłana. Prošu přizjew so z prawym kontom, zo by ju čitał(a).
-    sent_message_summary:
-      destroy_button: Wotstronić
-    heading:
-      my_inbox: Moja póšta
-      my_outbox: Mój póstowy wuchad
-      muted_messages: Zněmjene powěsće
     mark:
       as_read: Powěsć jako přečitanu markěrowana
       as_unread: Powěsć jako njepřečitanu markěrowana
     destroy:
       destroyed: Powěsć wotstronjena
+    mailboxes:
+      heading:
+        my_inbox: Moja póšta
+        my_outbox: Mój póstowy wuchad
+        muted_messages: Zněmjene powěsće
+      messages_table:
+        from: Wot
+        to: Komu
+        subject: Tema
+        date: Datum
+        actions: Akcije
+      message:
+        unread_button: Jako njepřečitanu markěrować
+        read_button: Jako přečitanu markěrować
+        destroy_button: Wotstronić
+    inboxes:
+      show:
+        title: Póštowy kašćik
+        messages: Maš %{new_messages} a %{old_messages}
+        new_messages:
+          few: '%{count} nowe powěsće'
+          one: '%{count} nowu powěsć'
+          two: '%{count} nowej powěsći'
+          other: '%{count} nowych powěsćow'
+        old_messages:
+          few: '%{count} stare powěsće'
+          one: '%{count} staru powěsć'
+          two: '%{count} starej powěsći'
+          other: '%{count} starych powěsćow'
+        no_messages_yet_html: Hišće nimaš powěsće. Chceš z %{people_mapping_nearby_link}
+          styki nawjazać?
+        people_mapping_nearby: ludźimi, kotřiž w bliskosći kartěruja
+    muted_inboxes:
+      show:
+        title: Zněmjene powěsće
+        messages:
+          one: '%{count} zněmjena powěsć'
+          two: Maš %{count} zněmjenej powěsći
+          few: Maš %{count} zněmjene powěsće
+          other: Maš %{count} zněmjenych powěsćow
+    outboxes:
+      show:
+        title: Pósłane
+        messages:
+          few: Sy %{count} powěsće pósłał(a)
+          one: Sy %{count} powěsć pósłał(a)
+          two: Sy %{count} powěsći pósłał(a)
+          other: Sy  %{count} powěsćow pósłał(a)
+        no_sent_messages_html: Hišće njejsy žane powěsće pósłał(a). Chceš z %{people_mapping_nearby_link}
+          styki nawjazać?
+        people_mapping_nearby: ludźimi, kotřiž w bliskosći kartěruja
+      message:
+        destroy_button: Wotstronić
   passwords:
     new:
       title: Hesło zabyte
@@ -2391,6 +2395,26 @@ hsb:
       report: Tutoho wužiwarja zdźělić
     go_public:
       flash success: Wšě twoje změny su nětko zjawne, a směš nětko wobdźěłać.
+    issued_blocks:
+      show:
+        title: Blokowanja wudźělenych wot %{name}
+        heading_html: Lisćina blokowanjow wudźelenych wot %{name}
+        empty: '%{name} hišće njeje žane blokowanja wudźělił.'
+    received_blocks:
+      show:
+        title: Blokowanja přećiwo %{name}
+        heading_html: Lisćina blokowanjow přećiwo %{name}
+        empty: '%{name} hišće njeje so zablokował.'
+      edit:
+        empty: '%{name} aktiwne zablokowanja nima.'
+        active_blocks:
+          one: '%{count} aktiwne zablokowanje'
+          two: '%{count} aktiwnej zablokowani'
+          few: '%{count} aktiwne zablokowanja'
+          other: '%{count} aktiwnych zablokowanjow'
+        revoke: Zběhnyć!
+      destroy:
+        flash: Wšě aktiwne zablokowanja su zběhnjene.
     lists:
       show:
         title: Wužiwarjo
@@ -2458,15 +2482,6 @@ hsb:
       title: Wužiwarske blokowanja
       heading: Lisćina wužiwarskich blokowanjow
       empty: Hišće njejsu so žane blokowanja wudźělili.
-    revoke_all:
-      empty: '%{name} aktiwne zablokowanja nima.'
-      active_blocks:
-        one: '%{count} aktiwne zablokowanje'
-        two: '%{count} aktiwnej zablokowani'
-        few: '%{count} aktiwne zablokowanja'
-        other: '%{count} aktiwnych zablokowanjow'
-      revoke: Zběhnyć!
-      flash: Wšě aktiwne zablokowanja su zběhnjene.
     helper:
       time_future_html: Kónči so %{time}.
       until_login: Aktiwne, doniž so wužiwar njepřizjewja.
@@ -2499,14 +2514,6 @@ hsb:
           two: '%{count} lěće'
           few: '%{count} lěta'
           other: '%{count} lět'
-    blocks_on:
-      title: Blokowanja přećiwo %{name}
-      heading_html: Lisćina blokowanjow přećiwo %{name}
-      empty: '%{name} hišće njeje so zablokował.'
-    blocks_by:
-      title: Blokowanja wudźělenych wot %{name}
-      heading_html: Lisćina blokowanjow wudźelenych wot %{name}
-      empty: '%{name} hišće njeje žane blokowanja wudźělił.'
     show:
       title: '%{block_on} wot %{block_by} zablokowany'
       heading_html: '%{block_on} wot %{block_by} zablokowany'
@@ -2607,7 +2614,6 @@ hsb:
       center_marker: Kartu na marce centrować
       paste_html: HTML-kod kopěrować, zo by so do websydła zasadźił
       view_larger_map: Wjetšu kartu pokazać
-      only_standard_layer: Jenož standardna runina da so jako wobraz eksportować
     embed:
       report_problem: Problem zdźělić
     key:
index 20ba0066a0cf2375f60df19f31f0870a73742e6e..0a1853284a6c49e9719a7fce2a96ae8d29ab37ca 100644 (file)
@@ -1804,8 +1804,6 @@ hu:
       success: Felhasználói fiókod megerősítve, köszönjük a regisztrációt!
       already active: Ez a fiók már megerősítésre került.
       unknown token: Ez a megerősítési kód lejárt vagy nem létezik.
-      resend_html: Ha újra el kell küldenünk a megerősítő e-mailt, %{reconfirm_link}.
-      click_here: kattints ide
     confirm_resend:
       failure: '%{name} felhasználó nem található.'
     confirm_email:
@@ -1823,29 +1821,6 @@ hu:
         küld, akkor kérjük, ellenőrizd, hogy a(z) %{sender} az engedélyezett listán
         van-e, mivel nem tudunk válaszolni a visszaigazolási kérésekre.
   messages:
-    inbox:
-      title: Beérkezett üzenetek
-      messages: '%{new_messages} és %{old_messages} van'
-      new_messages:
-        one: 1 új üzeneted
-        other: '%{count} új üzeneted'
-      old_messages:
-        one: 1 régi üzeneted
-        other: '%{count} régi üzeneted'
-      no_messages_yet_html: Nincs még üzeneted. Miért nem veszed fel a kapcsolatot
-        néhány %{people_mapping_nearby_link}vel?
-      people_mapping_nearby: közeli térképszerkesztő
-    messages_table:
-      from: Feladó
-      to: Címzett
-      subject: Tárgy
-      date: Érkezett
-      actions: Műveletek
-    message_summary:
-      unread_button: Jelölés olvasatlanként
-      read_button: Jelölés olvasottként
-      destroy_button: Törlés
-      unmute_button: Áthelyezés a Beérkezett üzenetek mappába
     new:
       title: Üzenet küldése
       send_message_to_html: 'Új üzenet küldése neki: %{name}'
@@ -1858,19 +1833,6 @@ hu:
       title: Nincs ilyen üzenet
       heading: Nincs ilyen üzenet
       body: Sajnáljuk, nincs ilyen azonosítójú üzenet.
-    outbox:
-      title: Elküldött üzenetek
-      messages:
-        one: Egy elküldött üzeneted van
-        other: '%{count} elküldött üzeneted van'
-      no_sent_messages_html: Nincs még elküldött üzeneted. Miért nem veszed fel a
-        kapcsolatot néhány %{people_mapping_nearby_link}vel?
-      people_mapping_nearby: közeli térképszerkesztő
-    muted:
-      title: Elnémított üzenetek
-      messages:
-        one: '%{count} némított üzeneted van'
-        other: '%{count} némított üzeneted van'
     reply:
       wrong_user: „%{user}” néven jelentkeztél be, de azt az üzenetet, amelyre válaszolni
         szeretnél, nem ez a felhasználó kapta. A válaszadáshoz jelentkezz be a helyes
@@ -1884,12 +1846,6 @@ hu:
       wrong_user: „%{user}” néven jelentkeztél be, de az üzenetet, amelyet el szeretnél
         olvasni, nem ez a felhasználó küldte vagy kapta. Az elolvasásához jelentkezz
         be a helyes felhasználónévvel.
-    sent_message_summary:
-      destroy_button: Törlés
-    heading:
-      my_inbox: Beérkezett üzenetek
-      my_outbox: Elküldött üzenetek
-      muted_messages: Elnémított üzenetek
     mark:
       as_read: Üzenet megjelölve olvasottként
       as_unread: Üzenet megjelölve olvasatlanként
@@ -1898,6 +1854,52 @@ hu:
       error: Az üzenetet nem sikerült áthelyezni a Beérkezett üzenetek mappába.
     destroy:
       destroyed: Üzenet törölve
+    mailboxes:
+      heading:
+        my_inbox: Beérkezett üzenetek
+        my_outbox: Elküldött üzenetek
+        muted_messages: Elnémított üzenetek
+      messages_table:
+        from: Feladó
+        to: Címzett
+        subject: Tárgy
+        date: Érkezett
+        actions: Műveletek
+      message:
+        unread_button: Jelölés olvasatlanként
+        read_button: Jelölés olvasottként
+        destroy_button: Törlés
+        unmute_button: Áthelyezés a Beérkezett üzenetek mappába
+    inboxes:
+      show:
+        title: Beérkezett üzenetek
+        messages: '%{new_messages} és %{old_messages} van'
+        new_messages:
+          one: 1 új üzeneted
+          other: '%{count} új üzeneted'
+        old_messages:
+          one: 1 régi üzeneted
+          other: '%{count} régi üzeneted'
+        no_messages_yet_html: Nincs még üzeneted. Miért nem veszed fel a kapcsolatot
+          néhány %{people_mapping_nearby_link}vel?
+        people_mapping_nearby: közeli térképszerkesztő
+    muted_inboxes:
+      show:
+        title: Elnémított üzenetek
+        messages:
+          one: '%{count} némított üzeneted van'
+          other: '%{count} némított üzeneted van'
+    outboxes:
+      show:
+        title: Elküldött üzenetek
+        messages:
+          one: Egy elküldött üzeneted van
+          other: '%{count} elküldött üzeneted van'
+        no_sent_messages_html: Nincs még elküldött üzeneted. Miért nem veszed fel
+          a kapcsolatot néhány %{people_mapping_nearby_link}vel?
+        people_mapping_nearby: közeli térképszerkesztő
+      message:
+        destroy_button: Törlés
   passwords:
     new:
       title: Elvesztett jelszó
@@ -2874,6 +2876,27 @@ hu:
     go_public:
       flash success: Mostantól az összes szerkesztésed nyilvános, és engedélyezett
         a szerkesztés.
+    issued_blocks:
+      show:
+        title: '%{name} által kiosztott blokkolások'
+        heading_html: '%{name} által kiosztott blokkolások listája'
+        empty: '%{name} még nem osztott ki blokkolást.'
+    received_blocks:
+      show:
+        title: '%{name} blokkolásai'
+        heading_html: '%{name} blokkolásainak felsorolása'
+        empty: '%{name} még nem volt blokkolva.'
+      edit:
+        title: '%{block_on} valamennyi blokkolásának visszavonása'
+        heading_html: '%{block_on} valamennyi blokkolásának visszavonása'
+        empty: '%{name} nem rendelkezik aktív blokkolással.'
+        confirm: Biztos benne, hogy visszavonod a %{active_blocks} blookkolást?
+        active_blocks:
+          one: '%{count} aktív blokkolás'
+          other: '%{count} aktív blokkolás'
+        revoke: Visszavonás!
+      destroy:
+        flash: Minden aktív blokkolás visszavonva.
     lists:
       show:
         title: Felhasználók
@@ -2955,16 +2978,6 @@ hu:
       title: Felhasználói blokkolások
       heading: Felhasználói blokkolások listája
       empty: Még nem lett kiosztva blokkolás.
-    revoke_all:
-      title: '%{block_on} valamennyi blokkolásának visszavonása'
-      heading_html: '%{block_on} valamennyi blokkolásának visszavonása'
-      empty: '%{name} nem rendelkezik aktív blokkolással.'
-      confirm: Biztos benne, hogy visszavonod a %{active_blocks} blookkolást?
-      active_blocks:
-        one: '%{count} aktív blokkolás'
-        other: '%{count} aktív blokkolás'
-      revoke: Visszavonás!
-      flash: Minden aktív blokkolás visszavonva.
     helper:
       time_future_html: Véget ér %{time} múlva.
       until_login: Aktív a felhasználó bejelentkezéséig.
@@ -2987,14 +3000,6 @@ hu:
         years:
           one: '%{count} év'
           other: '%{count} év'
-    blocks_on:
-      title: '%{name} blokkolásai'
-      heading_html: '%{name} blokkolásainak felsorolása'
-      empty: '%{name} még nem volt blokkolva.'
-    blocks_by:
-      title: '%{name} által kiosztott blokkolások'
-      heading_html: '%{name} által kiosztott blokkolások listája'
-      empty: '%{name} még nem osztott ki blokkolást.'
     show:
       title: '%{block_on} blokkolva %{block_by} által'
       heading_html: '%{block_by} blokkolta %{block_on} felhasználót'
@@ -3135,8 +3140,6 @@ hu:
       center_marker: Legyen a helyjelölő a térkép középpontja
       paste_html: Weboldalba beágyazáshoz illeszd be ezt a HTML-t
       view_larger_map: Nagyobb térkép
-      only_standard_layer: Csak az alap, kerékpáros és tömegközlekedési rétegek exportálható
-        képként
     embed:
       report_problem: Probléma bejelentése
     key:
index 2cfcff1b9a103a3159cca7f31c1458ce91b7ee3c..b14491a7870a0010742d3db9e4b4c21f4d777d60 100644 (file)
@@ -1795,8 +1795,6 @@ ia:
       success: Tu conto ha essite confirmate, gratias pro inscriber te!
       already active: Iste conto ha ja essite confirmate.
       unknown token: Iste codice de confirmation ha expirate o non existe.
-      resend_html: Si tu vole que nos te reinvia le e-mail de confirmation, %{reconfirm_link}.
-      click_here: clicca hic
     confirm_resend:
       failure: Usator %{name} non trovate.
     confirm_email:
@@ -1814,29 +1812,6 @@ ia:
         alora assecura te de exceptar %{sender} perque nos non pote responder a requestas
         de confirmation.
   messages:
-    inbox:
-      title: Cassa de entrata
-      messages: Tu ha %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} nove message'
-        other: '%{count} nove messages'
-      old_messages:
-        one: '%{count} ancian message'
-        other: '%{count} ancian messages'
-      no_messages_yet_html: Tu non ha ancora messages. Proque non contactar alcun
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: cartographos vicin
-    messages_table:
-      from: De
-      to: A
-      subject: Subjecto
-      date: Data
-      actions: Actiones
-    message_summary:
-      unread_button: Marcar como non legite
-      read_button: Marcar como legite
-      destroy_button: Deler
-      unmute_button: Displaciar al cassa de entrata
     new:
       title: Inviar message
       send_message_to_html: Inviar un nove message a %{name}
@@ -1849,19 +1824,6 @@ ia:
       title: Message non existe
       heading: Message non existe
       body: Non existe un message con iste ID.
-    outbox:
-      title: Cassa de exito
-      messages:
-        one: Tu ha %{count} message inviate
-        other: Tu ha %{count} messages inviate
-      no_sent_messages_html: Tu non ha ancora inviate alcun message. Proque non contactar
-        alcun %{people_mapping_nearby_link}?
-      people_mapping_nearby: cartographos vicin
-    muted:
-      title: Messages silentiate
-      messages:
-        one: '%{count message silentiate'
-        other: Tu ha %{count} messages silentiate
     reply:
       wrong_user: Tu es authenticate como ‘%{user}’, ma le message al qual tu vole
         responder non ha essite inviate a iste usator. Per favor aperi session como
@@ -1875,12 +1837,6 @@ ia:
       wrong_user: Tu es authenticate como ‘%{user}’, ma le message que tu vole leger
         non ha essite inviate per o a iste usator. Per favor aperi session como le
         usator correcte pro poter leger lo.
-    sent_message_summary:
-      destroy_button: Deler
-    heading:
-      my_inbox: Mi cassa de entrata
-      my_outbox: Mi cassa de exito
-      muted_messages: Messages silentiate
     mark:
       as_read: Message marcate como legite
       as_unread: Message marcate como non legite
@@ -1889,6 +1845,52 @@ ia:
       error: Le message non poteva esser displaciate al cassa de entrata.
     destroy:
       destroyed: Message delite
+    mailboxes:
+      heading:
+        my_inbox: Mi cassa de entrata
+        my_outbox: Mi cassa de exito
+        muted_messages: Messages silentiate
+      messages_table:
+        from: De
+        to: A
+        subject: Subjecto
+        date: Data
+        actions: Actiones
+      message:
+        unread_button: Marcar como non legite
+        read_button: Marcar como legite
+        destroy_button: Deler
+        unmute_button: Displaciar al cassa de entrata
+    inboxes:
+      show:
+        title: Cassa de entrata
+        messages: Tu ha %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} nove message'
+          other: '%{count} nove messages'
+        old_messages:
+          one: '%{count} ancian message'
+          other: '%{count} ancian messages'
+        no_messages_yet_html: Tu non ha ancora messages. Proque non contactar alcun
+          %{people_mapping_nearby_link}?
+        people_mapping_nearby: cartographos vicin
+    muted_inboxes:
+      show:
+        title: Messages silentiate
+        messages:
+          one: '%{count message silentiate'
+          other: Tu ha %{count} messages silentiate
+    outboxes:
+      show:
+        title: Cassa de exito
+        messages:
+          one: Tu ha %{count} message inviate
+          other: Tu ha %{count} messages inviate
+        no_sent_messages_html: Tu non ha ancora inviate alcun message. Proque non
+          contactar alcun %{people_mapping_nearby_link}?
+        people_mapping_nearby: cartographos vicin
+      message:
+        destroy_button: Deler
   passwords:
     new:
       title: Contrasigno perdite
@@ -2868,6 +2870,27 @@ ia:
     go_public:
       flash success: Tote tu modificationes es ora public, e tu ha ora le permission
         de modificar.
+    issued_blocks:
+      show:
+        title: Blocadas per %{name}
+        heading_html: Lista de blocadas per %{name}
+        empty: '%{name} non ha ancora facite alcun blocada.'
+    received_blocks:
+      show:
+        title: Blocadas de %{name}
+        heading_html: Lista de blocadas de %{name}
+        empty: '%{name} non ha ancora essite blocate.'
+      edit:
+        title: Revocation de tote le blocadas de %{block_on}
+        heading_html: Revocation de tote le blocadas de %{block_on}
+        empty: '%{name} non ha blocadas active.'
+        confirm: Es tu secur de voler revocar %{active_blocks}?
+        active_blocks:
+          one: '%{count} blocada active'
+          other: '%{count} blocadas active'
+        revoke: Revocar!
+      destroy:
+        flash: Tote le blocadas active ha essite revocate.
     lists:
       show:
         title: Usatores
@@ -2949,16 +2972,6 @@ ia:
       title: Blocadas de usatores
       heading: Lista de blocadas de usatores
       empty: Nulle blocada ha ancora essite effectuate.
-    revoke_all:
-      title: Revocation de tote le blocadas de %{block_on}
-      heading_html: Revocation de tote le blocadas de %{block_on}
-      empty: '%{name} non ha blocadas active.'
-      confirm: Es tu secur de voler revocar %{active_blocks}?
-      active_blocks:
-        one: '%{count} blocada active'
-        other: '%{count} blocadas active'
-      revoke: Revocar!
-      flash: Tote le blocadas active ha essite revocate.
     helper:
       time_future_html: Expira in %{time}.
       until_login: Active usque le usator aperi session.
@@ -2981,14 +2994,6 @@ ia:
         years:
           one: '%{count} anno'
           other: '%{count} annos'
-    blocks_on:
-      title: Blocadas de %{name}
-      heading_html: Lista de blocadas de %{name}
-      empty: '%{name} non ha ancora essite blocate.'
-    blocks_by:
-      title: Blocadas per %{name}
-      heading_html: Lista de blocadas per %{name}
-      empty: '%{name} non ha ancora facite alcun blocada.'
     show:
       title: '%{block_on} blocate per %{block_by}'
       heading_html: '%{block_on} blocate per %{block_by}'
@@ -3121,8 +3126,6 @@ ia:
       center_marker: Centrar le carta sur le marcator
       paste_html: Colla HTML pro incorporar in sito web
       view_larger_map: Vider carta plus grande
-      only_standard_layer: Solmente le stratos Standard, Carta cyclista e Carta de
-        transporto pote esser exportate como imagine
     embed:
       report_problem: Reportar problema
     key:
index 0acc90c9fed6ffcc978aa5caf8a5382cdf491b82..a2a7177c28e74f7df0ccb71b445abbf1ffc67f2c 100644 (file)
@@ -1734,8 +1734,6 @@ id:
       success: Akun Anda telah dikonfirmasi, terima kasih telah mendaftar!
       already active: Akun ini telah dikonfirmasi.
       unknown token: Kode konfirmasi telah kedaluwarsa atau tidak ada.
-      resend_html: Bila Anda perlu surel konfirmasi lagi, %{reconfirm_link}.
-      click_here: klik di sini
     confirm_resend:
       failure: Pengguna %{name} tidak ditemukan.
     confirm_email:
@@ -1752,29 +1750,6 @@ id:
       whitelist: Bila sistem antispam Anda menyarik surel konfirmasi, kecualikan %{sender}
         supaya kami bisa membalas permintaan konfirmasi Anda.
   messages:
-    inbox:
-      title: Kotak Masuk
-      messages: Anda memiliki %{new_messages} dan %{old_messages}
-      new_messages:
-        one: '%{count} pesan baru'
-        other: '%{count} pesan baru'
-      old_messages:
-        one: '%{count} pesan lama'
-        other: '%{count} pesan lama'
-      no_messages_yet_html: Anda belum memiliki pesan. Mengapa tidak  berhubungan
-        dengan beberapa %{people_mapping_nearby_link}?
-      people_mapping_nearby: orang-orang disekitar Anda yang melakukan pemetaan
-    messages_table:
-      from: Dari
-      to: Kepada
-      subject: Subyek
-      date: Tanggal
-      actions: Tindakan
-    message_summary:
-      unread_button: Tandai belum dibaca
-      read_button: Tandai sudah dibaca
-      destroy_button: Hapus
-      unmute_button: Pindahkan ke Kotak Masuk
     new:
       title: Kirim Pesan
       send_message_to_html: Kirim pesan baru ke %{name}
@@ -1787,18 +1762,6 @@ id:
       title: Tidak ada pesan
       heading: Tidak ada pesan
       body: Maaf tidak ada pesan dengan id tersebut.
-    outbox:
-      title: Kotak keluar
-      messages:
-        one: Anda memiliki %{count} pesan terkirim
-        other: Anda memiliki %{count} pesan terkirim
-      no_sent_messages_html: Anda belum memiliki pesan. Mengapa tidak  berhubungan
-        dengan beberapa %{people_mapping_nearby_link}?
-      people_mapping_nearby: orang-orang disekitar Anda yang melakukan pemetaan
-    muted:
-      title: Pesan yang Dibisukan
-      messages:
-        other: '%{count} pesan yang dibisukan'
     reply:
       wrong_user: Anda masuk log sebagai '%{user}' tapi pesan yang Anda balas tidak
         terkirim ke pengguna. Silahkan masuk log sebagai pengguna yang benar untuk
@@ -1812,12 +1775,6 @@ id:
       wrong_user: Anda masuk log sebagai '%{user}' tetapi pesan yang anda balas tidak
         dikirim oleh atau untuk pengguna tersebut. Silahkan masuk log sebagai pengguna
         yang benar untuk membacanya.
-    sent_message_summary:
-      destroy_button: Hapus
-    heading:
-      my_inbox: Kotak Masuk Saya
-      my_outbox: Kotak Keluar Saya
-      muted_messages: Pesan yang dibisukan
     mark:
       as_read: Pesan ditandai sebagai telah dibaca
       as_unread: Pesan ditandai sebagai belum dibaca
@@ -1826,6 +1783,51 @@ id:
       error: Pesan tidak berhasil dipindahkan ke Kotak Masuk
     destroy:
       destroyed: Pesan dihapus
+    mailboxes:
+      heading:
+        my_inbox: Kotak Masuk Saya
+        my_outbox: Kotak Keluar Saya
+        muted_messages: Pesan yang dibisukan
+      messages_table:
+        from: Dari
+        to: Kepada
+        subject: Subyek
+        date: Tanggal
+        actions: Tindakan
+      message:
+        unread_button: Tandai belum dibaca
+        read_button: Tandai sudah dibaca
+        destroy_button: Hapus
+        unmute_button: Pindahkan ke Kotak Masuk
+    inboxes:
+      show:
+        title: Kotak Masuk
+        messages: Anda memiliki %{new_messages} dan %{old_messages}
+        new_messages:
+          one: '%{count} pesan baru'
+          other: '%{count} pesan baru'
+        old_messages:
+          one: '%{count} pesan lama'
+          other: '%{count} pesan lama'
+        no_messages_yet_html: Anda belum memiliki pesan. Mengapa tidak  berhubungan
+          dengan beberapa %{people_mapping_nearby_link}?
+        people_mapping_nearby: orang-orang disekitar Anda yang melakukan pemetaan
+    muted_inboxes:
+      show:
+        title: Pesan yang Dibisukan
+        messages:
+          other: '%{count} pesan yang dibisukan'
+    outboxes:
+      show:
+        title: Kotak keluar
+        messages:
+          one: Anda memiliki %{count} pesan terkirim
+          other: Anda memiliki %{count} pesan terkirim
+        no_sent_messages_html: Anda belum memiliki pesan. Mengapa tidak  berhubungan
+          dengan beberapa %{people_mapping_nearby_link}?
+        people_mapping_nearby: orang-orang disekitar Anda yang melakukan pemetaan
+      message:
+        destroy_button: Hapus
   passwords:
     new:
       title: Kehilangan kata sandi
@@ -2748,6 +2750,26 @@ id:
     go_public:
       flash success: Semua hasil edit Anda sekarang sudah publik, dan Anda diperbolehkan
         untuk mengedit.
+    issued_blocks:
+      show:
+        title: Blokir oleh %{name}
+        heading_html: Daftar blokir oleh %{name}
+        empty: '%{name} belum membuat blokir apapun.'
+    received_blocks:
+      show:
+        title: Diblokir pada %{name}
+        heading_html: Daftar blokir pada %{name}
+        empty: '%{name} belum diblokir.'
+      edit:
+        title: Mencabut semua pemblokiran pada %{block_on}
+        heading_html: Mencabut semua pemblokiran pada %{block_on}
+        empty: '%{name} tidak sedang diblokir.'
+        confirm: Apakah Anda yakin untuk membatalkan %{active_blocks}?
+        active_blocks:
+          other: '%{count} blokir yang aktif'
+        revoke: Batalkan!
+      destroy:
+        flash: Semua blokir aktif telah dicabut.
     lists:
       show:
         title: Pengguna
@@ -2821,15 +2843,6 @@ id:
       title: Blokir oleh pegguna
       heading: Daftar blokir oleh pengguna
       empty: Belum ada blokir yang dibuat.
-    revoke_all:
-      title: Mencabut semua pemblokiran pada %{block_on}
-      heading_html: Mencabut semua pemblokiran pada %{block_on}
-      empty: '%{name} tidak sedang diblokir.'
-      confirm: Apakah Anda yakin untuk membatalkan %{active_blocks}?
-      active_blocks:
-        other: '%{count} blokir yang aktif'
-      revoke: Batalkan!
-      flash: Semua blokir aktif telah dicabut.
     helper:
       time_future_html: Berakhir pada %{time}.
       until_login: Aktif sampai pengguna melakukan log in.
@@ -2847,14 +2860,6 @@ id:
           other: '%{count} bulan'
         years:
           other: '%{count} tahun'
-    blocks_on:
-      title: Diblokir pada %{name}
-      heading_html: Daftar blokir pada %{name}
-      empty: '%{name} belum diblokir.'
-    blocks_by:
-      title: Blokir oleh %{name}
-      heading_html: Daftar blokir oleh %{name}
-      empty: '%{name} belum membuat blokir apapun.'
     show:
       title: '%{block_on} diblokir oleh %{block_by}'
       heading_html: '%{block_on} diblokir oleh %{block_by}'
@@ -2971,7 +2976,6 @@ id:
       center_marker: Tengahkan peta pada penanda
       paste_html: Tempel HTML untuk menyimpan di situs web
       view_larger_map: Lihat peta lebih besar
-      only_standard_layer: Hanya lapisan standar yang dapat diekspor sebagai gambar
     embed:
       report_problem: Laporkan masalah
     key:
index 586fa14f081af0cc510d684867c684ae0b30ea18..3f0be9a1d16c66afed512f11849e090751e5019e 100644 (file)
@@ -1791,8 +1791,6 @@ is:
         þig.
       already active: Þessi notandaaðgangur hefur þegar verið staðfestur.
       unknown token: Þessi staðfestingarkóði er útrunninn eða er ekki til staðar.
-      resend_html: Ef þú vilt að við sendum þér staðfestingarpóstinn aftur, %{reconfirm_link}.
-      click_here: skaltu smella hér
     confirm_resend:
       failure: Notandinn %{name} fannst ekki.
     confirm_email:
@@ -1809,29 +1807,6 @@ is:
         ganga úr skugga um að um að þú setjjir %{sender} á lista yfir leyfða notendur
         þar sem við getum ekki svarað neinum staðfestingarbeiðnum.
   messages:
-    inbox:
-      title: Innhólf
-      messages: Þú átt %{new_messages} og %{old_messages}
-      new_messages:
-        one: '%{count} ný skilaboð'
-        other: '%{count} ný skilaboð'
-      old_messages:
-        one: '%{count} eldri skilaboð'
-        other: '%{count} eldri skilaboð'
-      no_messages_yet_html: Þú hefur ekki fengið nein skilboð. Hví ekki að hafa samband
-        við einhverja %{people_mapping_nearby_link}?
-      people_mapping_nearby: nálæga notendur
-    messages_table:
-      from: Frá
-      to: Til
-      subject: Viðfangsefni
-      date: Dagsetning
-      actions: Aðgerðir
-    message_summary:
-      unread_button: Merkja sem ólesin
-      read_button: Merkja sem lesin
-      destroy_button: Eyða
-      unmute_button: Færa í innhólf
     new:
       title: Senda skilaboð
       send_message_to_html: Senda skilaboð til %{name}
@@ -1844,19 +1819,6 @@ is:
       title: Engin slík skilaboð til
       heading: Engin slík skilaboð til
       body: Því miður er ekkert skilaboð með þetta auðkenni.
-    outbox:
-      title: Úthólf
-      messages:
-        one: Þú hefur sent %{count} skilaboð
-        other: Þú hefur sent %{count} skilaboð
-      no_sent_messages_html: Þú hefur enn ekki seint nein skilaboð, því ekki að hafa
-        samband við einhverja %{people_mapping_nearby_link}?
-      people_mapping_nearby: nálæga notendur
-    muted:
-      title: Þögguð skilaboð
-      messages:
-        one: '%{count} þögguð skilaboð'
-        other: Þú ert með %{count} þögguð skilaboð
     reply:
       wrong_user: Þú hefur skráð þig inn sem `%{user}' en skilaboðin sem þú baðst
         um að svara voru ekki send til þess notanda. Skráðu þig inn sem réttan notanda
@@ -1870,12 +1832,6 @@ is:
       wrong_user: Þú hefur skráð þig inn sem `%{user}' en skilaboðin sem þú baðst
         um að lesa voru ekki send af eða til þess notanda. Skráðu þig inn sem réttan
         notanda til að geta svarað.
-    sent_message_summary:
-      destroy_button: Eyða
-    heading:
-      my_inbox: Innhólfið mitt
-      my_outbox: Úthólfið mitt
-      muted_messages: Þögguð skilaboð
     mark:
       as_read: Skilaboðin voru merkt sem lesin
       as_unread: Skilaboðin voru merkt sem ólesin
@@ -1884,6 +1840,52 @@ is:
       error: Ekki var hægt að færa skilaboðin í innhólfið.
     destroy:
       destroyed: Skilaboðunum var eytt
+    mailboxes:
+      heading:
+        my_inbox: Innhólfið mitt
+        my_outbox: Úthólfið mitt
+        muted_messages: Þögguð skilaboð
+      messages_table:
+        from: Frá
+        to: Til
+        subject: Viðfangsefni
+        date: Dagsetning
+        actions: Aðgerðir
+      message:
+        unread_button: Merkja sem ólesin
+        read_button: Merkja sem lesin
+        destroy_button: Eyða
+        unmute_button: Færa í innhólf
+    inboxes:
+      show:
+        title: Innhólf
+        messages: Þú átt %{new_messages} og %{old_messages}
+        new_messages:
+          one: '%{count} ný skilaboð'
+          other: '%{count} ný skilaboð'
+        old_messages:
+          one: '%{count} eldri skilaboð'
+          other: '%{count} eldri skilaboð'
+        no_messages_yet_html: Þú hefur ekki fengið nein skilboð. Hví ekki að hafa
+          samband við einhverja %{people_mapping_nearby_link}?
+        people_mapping_nearby: nálæga notendur
+    muted_inboxes:
+      show:
+        title: Þögguð skilaboð
+        messages:
+          one: '%{count} þögguð skilaboð'
+          other: Þú ert með %{count} þögguð skilaboð
+    outboxes:
+      show:
+        title: Úthólf
+        messages:
+          one: Þú hefur sent %{count} skilaboð
+          other: Þú hefur sent %{count} skilaboð
+        no_sent_messages_html: Þú hefur enn ekki seint nein skilaboð, því ekki að
+          hafa samband við einhverja %{people_mapping_nearby_link}?
+        people_mapping_nearby: nálæga notendur
+      message:
+        destroy_button: Eyða
   passwords:
     new:
       title: Glatað lykilorð
@@ -2924,6 +2926,27 @@ is:
       report: Tilkynna þennan notanda
     go_public:
       flash success: Allar breytingar þínar eru nú opinberar, og þú getur breytt gögnum.
+    issued_blocks:
+      show:
+        title: Bönn eftir %{name}
+        heading_html: Bönn eftir %{name}
+        empty: '%{name} hefur ekki ennþá bannað einhvern.'
+    received_blocks:
+      show:
+        title: Bönn gegn %{name}
+        heading_html: Bönn gegn %{name}
+        empty: '%{name} hefur ekki verið bannaður.'
+      edit:
+        title: Eyði öllum bönnum á %{block_on}
+        heading_html: Eyði öllum bönnum á %{block_on}
+        empty: '%{name} er ekki með nein virk bönn.'
+        confirm: Ertu viss um að þú viljir aflétta %{active_blocks}?
+        active_blocks:
+          one: '%{count} virkt bann'
+          other: '%{count} virk bönn'
+        revoke: Afturkalla!
+      destroy:
+        flash: Öllum virkum bönnum hefur verið aflétt.
     lists:
       show:
         title: Notendur
@@ -3002,16 +3025,6 @@ is:
       title: Bönn
       heading: Listi yfir bönn
       empty: Enginn hefur verið bannaður enn.
-    revoke_all:
-      title: Eyði öllum bönnum á %{block_on}
-      heading_html: Eyði öllum bönnum á %{block_on}
-      empty: '%{name} er ekki með nein virk bönn.'
-      confirm: Ertu viss um að þú viljir aflétta %{active_blocks}?
-      active_blocks:
-        one: '%{count} virkt bann'
-        other: '%{count} virk bönn'
-      revoke: Afturkalla!
-      flash: Öllum virkum bönnum hefur verið aflétt.
     helper:
       time_future_html: Endar eftir %{time}
       until_login: Virkt þangað til notandinn skráir sig inn.
@@ -3034,14 +3047,6 @@ is:
         years:
           one: '%{count} ár'
           other: '%{count} ár'
-    blocks_on:
-      title: Bönn gegn %{name}
-      heading_html: Bönn gegn %{name}
-      empty: '%{name} hefur ekki verið bannaður.'
-    blocks_by:
-      title: Bönn eftir %{name}
-      heading_html: Bönn eftir %{name}
-      empty: '%{name} hefur ekki ennþá bannað einhvern.'
     show:
       title: Bann á %{block_on} eftir %{block_by}
       heading_html: Notandinn „%{block_on}“ var bannaður af „%{block_by}“
@@ -3173,8 +3178,6 @@ is:
       center_marker: Miðja kort á kortamerki
       paste_html: Notaðu þennan HTML kóða til að bæta kortinu á vefsíðu
       view_larger_map: Skoða stærra kort
-      only_standard_layer: Eingöngu er hægt að flytja lögin Staðlað, Hjólakort og
-        Samgöngur út sem mynd
     embed:
       report_problem: Tilkynna vandamál
     key:
index 98b21f567686f935e8802904b0dd60198911aaaf..a2aa7d3e7438ff35500de234671cbf616463fefe 100644 (file)
@@ -829,7 +829,7 @@ it:
           car_wash: Autolavaggio
           casino: Casinò
           charging_station: Stazione di ricarica
-          childcare: Assistenza minori
+          childcare: Assistenza all'infanzia
           cinema: Cinema
           clinic: Clinica
           clock: Orologio
@@ -857,7 +857,7 @@ it:
           hunting_stand: Postazione di caccia
           ice_cream: Gelateria
           internet_cafe: Caffè internet
-          kindergarten: Asilo infantile
+          kindergarten: Scuola dell'infanzia
           language_school: Scuola di lingue
           library: Biblioteca
           loading_dock: Portone scarico merci
@@ -868,7 +868,7 @@ it:
           money_transfer: Agenzia di trasferimento di denaro
           motorcycle_parking: Parcheggio per Moto
           music_school: Scuola di musica
-          nightclub: Night Club
+          nightclub: Discoteca
           nursing_home: Residenza sanitaria assistenziale
           parking: Parcheggio
           parking_entrance: Entrata del parcheggio
@@ -1107,6 +1107,14 @@ it:
           wayside_shrine: Edicola votiva
           wreck: Relitto
           "yes": Sito storico
+        information:
+          guidepost: Cartello d'indicazione
+          board: Bacheca informazioni
+          map: Mappa
+          office: Ufficio turistico
+          terminal: Totem informativo
+          sign: Cartello informativo
+          stele: Stele informativa
         junction:
           "yes": Incrocio
         landuse:
@@ -1179,6 +1187,8 @@ it:
           track: Pista da corsa
           water_park: Parco acquatico
           "yes": Tempo libero
+        lock:
+          "yes": Chiusa
         man_made:
           adit: Galleria mineraria
           advertising: Pubblicità
@@ -1519,6 +1529,15 @@ it:
           building_passage: Passaggio sotto edificio
           culvert: Canale sotterraneo
           "yes": Galleria
+        water:
+          lake: Lago
+          pond: Stagno
+          reservoir: Riserva idrica
+          basin: Bacino d'acqua
+          fishpond: Stagno per pesci
+          lagoon: Laguna
+          wastewater: Acque reflue
+          lock: Chiusa
         waterway:
           artificial: Corso d'acqua artificiale
           boatyard: Cantiere nautico
@@ -1861,9 +1880,9 @@ it:
       success: Il profilo utente è stato confermato, grazie per l'iscrizione!
       already active: Questo profilo è stato già confermato.
       unknown token: Questo codice di conferma è scaduto oppure non esiste.
-      resend_html: Se hai bisogno che ti inviamo nuovamente l'e-mail di conferma,
-        %{reconfirm_link}.
-      click_here: clicca qui
+      if_need_resend: Se desideri che ti venga inviata nuovamente l'e-mail di conferma,
+        clicca sul pulsante qui sotto.
+      resend_button: Invia nuovamente l'email di conferma
     confirm_resend:
       failure: Utente %{name} non trovato.
     confirm_email:
@@ -1881,29 +1900,6 @@ it:
         assicurati di aver inserito %{sender} nella lista dei consentiti poiché non
         siamo in grado di rispondere alle richieste di conferma.
   messages:
-    inbox:
-      title: Posta in arrivo
-      messages: Hai %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} nuovo messaggio'
-        other: '%{count} nuovi messaggi'
-      old_messages:
-        one: '%{count} vecchio messaggio'
-        other: '%{count} messaggi vecchi'
-      no_messages_yet_html: Non ci sono ancora messaggi. Perché non contatti qualcuna
-        di queste %{people_mapping_nearby_link}?
-      people_mapping_nearby: persone che mappano nelle vicinanze
-    messages_table:
-      from: Da
-      to: A
-      subject: Oggetto
-      date: Data
-      actions: Azioni
-    message_summary:
-      unread_button: Segna come non letto
-      read_button: Segna come già letto
-      destroy_button: Cancella
-      unmute_button: Sposta nella Posta in arrivo
     new:
       title: Invia messaggio
       send_message_to_html: Spedisci un nuovo messaggio a %{name}
@@ -1916,23 +1912,10 @@ it:
       title: Nessun messaggio del genere
       heading: Nessun messaggio del genere
       body: Siamo spiacenti, non ci sono messaggi con l'id indicato.
-    outbox:
-      title: Posta in uscita
-      messages:
-        one: Hai %{count} messaggio inviato
-        other: Hai %{count} messaggi inviati
-      no_sent_messages_html: Non ci sono ancora messaggi inviati. Perché non contatti
-        qualcuno di questi %{people_mapping_nearby_link}?
-      people_mapping_nearby: persone che mappano nelle vicinanze
-    muted:
-      title: Messaggi silenziati
-      messages:
-        one: '%{count} messaggio silenziato'
-        other: Hai %{count} messaggi silenziati
     reply:
       wrong_user: Hai effettuato l'accesso come '%{user}', ma il messaggio al quale
         hai chiesto di rispondere non era diretto a quell'utente. Se vuoi rispondere,
-        per favore accedi con l'utenza interessata.
+        accedi con l'utenza interessata.
     show:
       title: Leggi messaggio
       reply_button: Rispondi
@@ -1942,12 +1925,6 @@ it:
       wrong_user: Hai effettuato l'accesso come '%{user}', ma il messaggio che hai
         chiesto di leggere non era diretto a quell'utente. Se vuoi leggerlo, per favore
         accedi con l'utenza interessata.
-    sent_message_summary:
-      destroy_button: Cancella
-    heading:
-      my_inbox: Posta in arrivo
-      my_outbox: Posta in uscita
-      muted_messages: Messaggi silenziati
     mark:
       as_read: Messaggio marcato come già letto
       as_unread: Messaggio marcato come non letto
@@ -1956,6 +1933,52 @@ it:
       error: Non è stato possibile spostare il messaggio nella Posta in arrivo.
     destroy:
       destroyed: Messaggio eliminato
+    mailboxes:
+      heading:
+        my_inbox: Posta in arrivo
+        my_outbox: Posta in uscita
+        muted_messages: Messaggi silenziati
+      messages_table:
+        from: Da
+        to: A
+        subject: Oggetto
+        date: Data
+        actions: Azioni
+      message:
+        unread_button: Segna come non letto
+        read_button: Segna come già letto
+        destroy_button: Cancella
+        unmute_button: Sposta nella Posta in arrivo
+    inboxes:
+      show:
+        title: Posta in arrivo
+        messages: Hai %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} nuovo messaggio'
+          other: '%{count} nuovi messaggi'
+        old_messages:
+          one: '%{count} vecchio messaggio'
+          other: '%{count} messaggi vecchi'
+        no_messages_yet_html: Non ci sono ancora messaggi. Perché non contatti qualcuna
+          di queste %{people_mapping_nearby_link}?
+        people_mapping_nearby: persone che mappano nelle vicinanze
+    muted_inboxes:
+      show:
+        title: Messaggi silenziati
+        messages:
+          one: '%{count} messaggio silenziato'
+          other: Hai %{count} messaggi silenziati
+    outboxes:
+      show:
+        title: Posta in uscita
+        messages:
+          one: Hai %{count} messaggio inviato
+          other: Hai %{count} messaggi inviati
+        no_sent_messages_html: Non ci sono ancora messaggi inviati. Perché non contatti
+          qualcuno di questi %{people_mapping_nearby_link}?
+        people_mapping_nearby: persone che mappano nelle vicinanze
+      message:
+        destroy_button: Cancella
   passwords:
     new:
       title: password persa
@@ -2737,6 +2760,28 @@ it:
       wikipedia:
         title: Accedi con Wikipedia
         alt: Logo di Wikipedia
+    share:
+      email:
+        title: Condividi via email
+        alt: Icona e-mail
+      bluesky:
+        title: Condividi tramite Bluesky
+        alt: Icona di Bluesky
+      facebook:
+        title: Condividi tramite Facebook
+        alt: Icona di Facebook
+      linkedin:
+        title: Condividi tramite LinkedIn
+        alt: Icona di LinkedIn
+      mastodon:
+        title: Condividi su Mastodon
+        alt: Icona di Mastodon
+      telegram:
+        title: Condividi su Telegram
+        alt: Icona di Telegram
+      x:
+        title: Condividi su X
+        alt: Icona di X
   oauth:
     permissions:
       missing: Non hai autorizzato l'applicazione ad accedere a questa funzione
@@ -2949,6 +2994,27 @@ it:
     go_public:
       flash success: Tutte le tue modifiche sono ora pubbliche, e hai il permesso
         di modificare.
+    issued_blocks:
+      show:
+        title: Blocchi imposti da %{name}
+        heading_html: Lista dei blocchi imposti da %{name}
+        empty: '%{name} non ha ancora imposto alcun blocco.'
+    received_blocks:
+      show:
+        title: Blocchi su %{name}
+        heading_html: Lista dei blocchi su %{name}
+        empty: '%{name} non è stato ancora bloccato.'
+      edit:
+        title: Revoca tutti i blocchi su %{block_on}
+        heading_html: Revoca tutti i blocchi su %{block_on}
+        empty: '%{name} non ha blocchi attivi.'
+        confirm: Sei sicuro di voler revocare %{active_blocks}?
+        active_blocks:
+          one: '%{count} blocco attivo'
+          other: '%{count} blocchi attivi'
+        revoke: Revoca!
+      destroy:
+        flash: Tutti i blocchi attivi sono stati revocati.
     lists:
       show:
         title: Utenti
@@ -3032,16 +3098,6 @@ it:
       title: Blocchi dell'utente
       heading: Lista dei blocchi dell'utente
       empty: Non è stato ancora applicato alcun blocco.
-    revoke_all:
-      title: Revoca tutti i blocchi su %{block_on}
-      heading_html: Revoca tutti i blocchi su %{block_on}
-      empty: '%{name} non ha blocchi attivi.'
-      confirm: Sei sicuro di voler revocare %{active_blocks}?
-      active_blocks:
-        one: '%{count} blocco attivo'
-        other: '%{count} blocchi attivi'
-      revoke: Revoca!
-      flash: Tutti i blocchi attivi sono stati revocati.
     helper:
       time_future_html: Termina fra %{time}.
       until_login: Attivo finché l'utente non si collega.
@@ -3073,14 +3129,6 @@ it:
         read_html: letto alle %{time}
         time_in_future_title: '%{time_absolute}; in %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blocchi su %{name}
-      heading_html: Lista dei blocchi su %{name}
-      empty: '%{name} non è stato ancora bloccato.'
-    blocks_by:
-      title: Blocchi imposti da %{name}
-      heading_html: Lista dei blocchi imposti da %{name}
-      empty: '%{name} non ha ancora imposto alcun blocco.'
     show:
       title: '%{block_on} bloccato da %{block_by}'
       heading_html: '%{block_on} bloccato da %{block_by}'
@@ -3197,6 +3245,10 @@ it:
         mappa, pertanto non inserire informazioni personali e neppure dati provenienti
         da mappe protette da copyright oppure elenchi.
       add: Aggiungi la nota
+    new_readonly:
+      title: Nuova nota
+      warning: Non è possibile creare nuove note perché l'API di OpenStreetMap è attualmente
+        in modalità di sola lettura.
     notes_paging_nav:
       showing_page: Pagina %{page}
       next: Successivo
@@ -3222,8 +3274,8 @@ it:
       center_marker: Centra la mappa sul marcatore
       paste_html: Incolla l'HTML per incorporarlo nel sito web
       view_larger_map: Visualizza mappa ingrandita
-      only_standard_layer: Solo i livelli standard, Cycle Map e trasporti possono
-        essere esportati come immagine
+      only_layers_exported_as_image: 'Solo i seguenti livelli possono essere esportati
+        come immagine:'
     embed:
       report_problem: Segnala un problema
     key:
index 4b4a6b5f7d72fce66e73dec8411766ed809c60db..baf84c55aaee9307f25d7b98b1eb0e08b721876c 100644 (file)
@@ -390,7 +390,7 @@ ja:
         way: ウェイ
         relation: リレーション
     containing_relation:
-      entry_role_html: リレーション %{relation_name} (%{relation_role} として)
+      entry_role_html: '%{relation_name} (%{relation_role} として)'
     not_found:
       title: 見つかりません
       sorry: '%{type} #%{id} は見つかりませんでした。'
@@ -869,7 +869,7 @@ ja:
           cowshed: 牛舎
           detached: 戸建て住宅
           dormitory: 寮
-          duplex: 2世帯住宅
+          duplex: 連棟式建物
           farm: 農舎
           farm_auxiliary: 農家の離れ
           garage: 車庫
@@ -1033,6 +1033,14 @@ ja:
           wayside_shrine: 路傍の神仏
           wreck: 沈没船
           "yes": 史跡
+        information:
+          guidepost: 道標
+          board: 案内板
+          map: 地図
+          office: 観光案内所
+          terminal: 情報端末
+          sign: 案内標識
+          stele: 案内標識柱
         junction:
           "yes": 交差点
         landuse:
@@ -1105,6 +1113,8 @@ ja:
           track: 陸上競技用トラック
           water_park: 親水公園
           "yes": レジャー
+        lock:
+          "yes": 閘門
         man_made:
           adit: 坑道
           advertising: 広告
@@ -1445,6 +1455,15 @@ ja:
           building_passage: ビルの通路
           culvert: 暗渠
           "yes": トンネル
+        water:
+          lake: 湖
+          pond: 池
+          reservoir: 貯水池
+          basin: 水槽
+          lagoon: 礁湖
+          wastewater: 浄化池
+          oxbow: 三日月湖
+          lock: 閘門
         waterway:
           artificial: 人工的な水路
           boatyard: ボートヤード
@@ -1724,8 +1743,6 @@ ja:
       success: アカウントを確認しました。登録ありがとうございます!
       already active: このアカウントは確認済みです。
       unknown token: この確認コードは期限切れ、または存在しません。
-      resend_html: 確認メールの再送信が必要な場合は、%{reconfirm_link}。
-      click_here: ここをクリック
     confirm_resend:
       failure: '%{name}というアカウントは登録されていません。'
     confirm_email:
@@ -1739,26 +1756,6 @@ ja:
       confirmation_sent: 新しい確認書を%{email}に送りましたので、アカウントを確認したらすぐにマッピングができるようになります。
       whitelist: 確認リクエストを送信するアンチスパムシステムを使用している場合は、確認リクエストに返信することができませんので、%{sender}をホワイトリストに登録してください。
   messages:
-    inbox:
-      title: 受信箱
-      messages: '%{new_messages}、%{old_messages}があります'
-      new_messages:
-        other: '%{count} 件の新着メッセージ'
-      old_messages:
-        other: '%{count} 件の古いメッセージ'
-      no_messages_yet_html: まだメッセージがありません。%{people_mapping_nearby_link}とお近づきになってはいかがですか?
-      people_mapping_nearby: 近所でマッピングしている人々
-    messages_table:
-      from: 差出人
-      to: 宛先
-      subject: 件名
-      date: 日付
-      actions: 操作
-    message_summary:
-      unread_button: 未読にする
-      read_button: 既読にする
-      destroy_button: 削除
-      unmute_button: 受信箱へ移動
     new:
       title: メッセージの送信
       send_message_to_html: '%{name} への新規メッセージ送信'
@@ -1770,16 +1767,6 @@ ja:
       title: 存在しないメッセージです
       heading: 存在しないメッセージです
       body: 申し訳ありませんが、この ID のメッセージはありません。
-    outbox:
-      title: 送信箱
-      messages:
-        other: '%{count} 件の送信済みメッセージがあります'
-      no_sent_messages_html: 送信したメッセージはまだありません。%{people_mapping_nearby_link}とお近づきになってはいかがですか?
-      people_mapping_nearby: 近所でマッピングしている人々
-    muted:
-      title: ミュートされたメッセージ
-      messages:
-        other: '%{count} 件のミュートされたメッセージがあります'
     reply:
       wrong_user: あなたは「%{user}」としてログインしていますが、返信しようとしたメッセージはこの利用者宛てではありません。返信するには、正しい利用者としてログインしてください。
     show:
@@ -1789,12 +1776,6 @@ ja:
       destroy_button: 削除
       back: 戻る
       wrong_user: あなたは「%{user}」としてログインしていますが、閲覧しようとしたメッセージは、この利用者が送信したものでも、この利用者宛てのものでもありません。メッセージを閲覧するには、正しい利用者としてログインしてください。
-    sent_message_summary:
-      destroy_button: 削除
-    heading:
-      my_inbox: 自分の受信箱
-      my_outbox: 自分の送信箱
-      muted_messages: ミュートされたメッセージ
     mark:
       as_read: 既読メッセージ
       as_unread: 未読メッセージ
@@ -1803,6 +1784,46 @@ ja:
       error: メッセージを受信箱に移動できませんでした。
     destroy:
       destroyed: メッセージを削除しました
+    mailboxes:
+      heading:
+        my_inbox: 自分の受信箱
+        my_outbox: 自分の送信箱
+        muted_messages: ミュートされたメッセージ
+      messages_table:
+        from: 差出人
+        to: 宛先
+        subject: 件名
+        date: 日付
+        actions: 操作
+      message:
+        unread_button: 未読にする
+        read_button: 既読にする
+        destroy_button: 削除
+        unmute_button: 受信箱へ移動
+    inboxes:
+      show:
+        title: 受信箱
+        messages: '%{new_messages}、%{old_messages}があります'
+        new_messages:
+          other: '%{count} 件の新着メッセージ'
+        old_messages:
+          other: '%{count} 件の古いメッセージ'
+        no_messages_yet_html: まだメッセージがありません。%{people_mapping_nearby_link}とお近づきになってはいかがですか?
+        people_mapping_nearby: 近所でマッピングしている人々
+    muted_inboxes:
+      show:
+        title: ミュートされたメッセージ
+        messages:
+          other: '%{count} 件のミュートされたメッセージがあります'
+    outboxes:
+      show:
+        title: 送信箱
+        messages:
+          other: '%{count} 件の送信済みメッセージがあります'
+        no_sent_messages_html: 送信したメッセージはまだありません。%{people_mapping_nearby_link}とお近づきになってはいかがですか?
+        people_mapping_nearby: 近所でマッピングしている人々
+      message:
+        destroy_button: 削除
   passwords:
     new:
       title: パスワードを忘れた
@@ -2623,6 +2644,16 @@ ja:
       report: この利用者を通報
     go_public:
       flash success: あなたの編集はすべて公開され、あなたは編集できるようになりました。
+    issued_blocks:
+      show:
+        title: '%{name} が行ったブロック'
+        heading_html: '%{name} によるブロックの一覧'
+        empty: '%{name} は一度もブロックしていません。'
+    received_blocks:
+      show:
+        title: '%{name} がされたブロック'
+        heading_html: '%{name} のブロックのリスト'
+        empty: '%{name} は一度もブロックされていません。'
     lists:
       show:
         title: 利用者
@@ -2704,14 +2735,6 @@ ja:
           other: '%{count}か月'
         years:
           other: '%{count}年'
-    blocks_on:
-      title: '%{name} がされたブロック'
-      heading_html: '%{name} のブロックのリスト'
-      empty: '%{name} は一度もブロックされていません。'
-    blocks_by:
-      title: '%{name} が行ったブロック'
-      heading_html: '%{name} によるブロックの一覧'
-      empty: '%{name} は一度もブロックしていません。'
     show:
       title: '%{block_by} が %{block_on} をブロックしました'
       heading_html: '%{block_by} が %{block_on} をブロックしました'
@@ -2822,7 +2845,6 @@ ja:
       center_marker: マーカーを地図の中心にする
       paste_html: 以下の HTML をあなたのサイトに貼り付けてください
       view_larger_map: 大きな地図を表示
-      only_standard_layer: 標準、サイクリングマップ、交通マップレイヤーのみ画像としてエクスポートできます
     embed:
       report_problem: 問題を報告
     key:
index 3d611432212e3324d463e0f66eac15c5f6de04a9..af19bcd88641d1d6351ecb8974f2d6624848dcd1 100644 (file)
@@ -766,27 +766,6 @@ ka:
       heading: ელ. ფოსტის მისამართის ცვლილების დადასტურება
       button: დადასტურება
   messages:
-    inbox:
-      title: მიღებული
-      messages: თქვენ გაქვთ %{new_messages} და %{old_messages}
-      new_messages:
-        one: '%{count} ახალი შეტყობინება'
-        other: '%{count} ახალი შეტყობინება'
-      old_messages:
-        one: '%{count} ძველი შეტყობინება'
-        other: '%{count} ძველი შეტყობინება'
-      no_messages_yet_html: თქვენ ჯერ არ გაქვთ შეტყობინებები. რატომ არ უნდა გავესაუბრო
-        ვინმეს %{people_mapping_nearby_link}?
-      people_mapping_nearby: ახლოს მყოფი ხალხი
-    messages_table:
-      from: გამომგზავნი
-      to: ვის
-      subject: თემა
-      date: თარიღი
-    message_summary:
-      unread_button: მონიშნეთ როგორც წაუკითხავი
-      read_button: მონიშნეთ როგორც წაკითხული
-      destroy_button: წაშლა
     new:
       title: შეტყობინების გაგზავნა
       send_message_to_html: გაუგზავნეთ ახალი შეტყობინება %{name}
@@ -799,14 +778,6 @@ ka:
       title: ასეთი შეტყობინება არ არსებობს
       heading: ასეთი შეტყობინება არ არსებობს
       body: ბოდიშით, მაგრამ შეტყობინება ამ ID-ით არ არსებობს.
-    outbox:
-      title: გაგზავნილი
-      messages:
-        one: თქვენ გაქვთ %{count} გაგზავნილი შეტყობინება
-        other: თქვენ გაქვთ %{count} გაგზავნილი შეტყობინება
-      no_sent_messages_html: თქვენ ჯერ არ გაქვთ გაგზავნილი შეტყობინებები. რატომ არ
-        უნდა გავესაუბრო ვინმეს %{people_mapping_nearby_link}?
-      people_mapping_nearby: ახლოს მყოფი ხალხი
     reply:
       wrong_user: თქვენ შეხვედით როგორც `%{user}' მაგრამ პასუხი თქვენ კითხვაზე არ
         გაიგზავნა ამ მომხმარებელთან. გთხოვთ, შეხვიდეთ, როგორც შესაბამისი მოთხოვნის
@@ -818,15 +789,47 @@ ka:
       wrong_user: თქვენ შეხვედით როგორც `%{user}' მაგრამ შეტყობინება რომლის წაკითხვაც
         გსურთ, არ არის გაგზავნილი ამ მომხმარებელთან, ან მის მიერ. გთხოვთ, შეხვიდეთ,
         როგორც შესაბამისი მომხმარებელი, რათა წაიკითხოთ ის.
-    sent_message_summary:
-      destroy_button: წაშლა
-    heading:
-      my_inbox: ჩემი მიღებული
     mark:
       as_read: შეტყობინება მონიშნულია როგორც წაკითხული
       as_unread: შეტყობინება მონიშნულია როგორც წაუკითხავი
     destroy:
       destroyed: შეტყობინება წაშლილია
+    mailboxes:
+      heading:
+        my_inbox: ჩემი მიღებული
+      messages_table:
+        from: გამომგზავნი
+        to: ვის
+        subject: თემა
+        date: თარიღი
+      message:
+        unread_button: მონიშნეთ როგორც წაუკითხავი
+        read_button: მონიშნეთ როგორც წაკითხული
+        destroy_button: წაშლა
+    inboxes:
+      show:
+        title: მიღებული
+        messages: თქვენ გაქვთ %{new_messages} და %{old_messages}
+        new_messages:
+          one: '%{count} ახალი შეტყობინება'
+          other: '%{count} ახალი შეტყობინება'
+        old_messages:
+          one: '%{count} ძველი შეტყობინება'
+          other: '%{count} ძველი შეტყობინება'
+        no_messages_yet_html: თქვენ ჯერ არ გაქვთ შეტყობინებები. რატომ არ უნდა გავესაუბრო
+          ვინმეს %{people_mapping_nearby_link}?
+        people_mapping_nearby: ახლოს მყოფი ხალხი
+    outboxes:
+      show:
+        title: გაგზავნილი
+        messages:
+          one: თქვენ გაქვთ %{count} გაგზავნილი შეტყობინება
+          other: თქვენ გაქვთ %{count} გაგზავნილი შეტყობინება
+        no_sent_messages_html: თქვენ ჯერ არ გაქვთ გაგზავნილი შეტყობინებები. რატომ
+          არ უნდა გავესაუბრო ვინმეს %{people_mapping_nearby_link}?
+        people_mapping_nearby: ახლოს მყოფი ხალხი
+      message:
+        destroy_button: წაშლა
   passwords:
     new:
       title: პაროლის აღდგენა
@@ -985,6 +988,16 @@ ka:
       unhide_user: ამ მომხმარებლის გამოჩენა
       delete_user: ამ მომხმარებლის წაშლა
       confirm: დადასტურება
+    issued_blocks:
+      show:
+        title: '%{name}-ის მიერ გაკეთებული ბლოკირებები'
+        heading_html: '%{name}-ის მიერ გაკეთებული ბლოკირებების სია'
+        empty: '%{name} ჯერ არანაირი ბლოკირება არ გაუკეთებია.'
+    received_blocks:
+      show:
+        title: '%{name}-ის მიერ გაკეთებული ბლოკირებები'
+        heading_html: '%{name}-ის მიერ გაკეთებული ბლოკირებების სია'
+        empty: '%{name} ჯერ არასდროს არ ყოფილა დაბლოკილი.'
     lists:
       show:
         title: მომხმარებლები
@@ -1009,14 +1022,6 @@ ka:
         hours:
           one: 1 საათი
           other: '%{count} საათი'
-    blocks_on:
-      title: '%{name}-ის მიერ გაკეთებული ბლოკირებები'
-      heading_html: '%{name}-ის მიერ გაკეთებული ბლოკირებების სია'
-      empty: '%{name} ჯერ არასდროს არ ყოფილა დაბლოკილი.'
-    blocks_by:
-      title: '%{name}-ის მიერ გაკეთებული ბლოკირებები'
-      heading_html: '%{name}-ის მიერ გაკეთებული ბლოკირებების სია'
-      empty: '%{name} ჯერ არანაირი ბლოკირება არ გაუკეთებია.'
     show:
       title: '%{block_on}, დაადო ბლოკი: %{block_by}'
       heading_html: '%{block_on}, დაადო ბლოკი: %{block_by}'
index f87975d881dd1e9a94951b5b4319dbc54a5a63ea..82a2a8105034bf0e7838912bbb619b09e12f39e1 100644 (file)
@@ -864,18 +864,6 @@ kab:
       success: Sentem abeddel n tensa-ik imayl!
       unknown_token: Tangalt n usentem tenfer neɣ ulac-itt.
   messages:
-    inbox:
-      title: Tanaka n urmas
-      messages: Ɣur-k %{new_messages} akked %{old_messages}
-    messages_table:
-      from: Seg
-      to: I
-      subject: Asentel
-      date: Azemz
-    message_summary:
-      unread_button: Creḍ ur yettwaɣra ara
-      read_button: Creḍ yettwaɣra
-      destroy_button: Kkes
     new:
       title: Azen izen
     create:
@@ -884,23 +872,38 @@ kab:
       title: Ulac izen
       heading: Ulac izen
       body: Suref-aɣ, ulac izen s usulay-agi.
-    outbox:
-      title: Tanaka n tuzna
     show:
       title: Ɣeṛ izen
       reply_button: Err
       unread_button: Creḍ yettwaɣra
       destroy_button: Kkes
       back: Uɣal
-    sent_message_summary:
-      destroy_button: Kkes
-    heading:
-      my_inbox: Tanaka-iw n urmas
     mark:
       as_read: Izen yettwacred yettwaɣra
       as_unread: Izen yettwacred ur yettwaɣra ara
     destroy:
       destroyed: Izen yettwakkes
+    mailboxes:
+      heading:
+        my_inbox: Tanaka-iw n urmas
+      messages_table:
+        from: Seg
+        to: I
+        subject: Asentel
+        date: Azemz
+      message:
+        unread_button: Creḍ ur yettwaɣra ara
+        read_button: Creḍ yettwaɣra
+        destroy_button: Kkes
+    inboxes:
+      show:
+        title: Tanaka n urmas
+        messages: Ɣur-k %{new_messages} akked %{old_messages}
+    outboxes:
+      show:
+        title: Tanaka n tuzna
+      message:
+        destroy_button: Kkes
   passwords:
     new:
       title: Awal uffir iṛuḥ
@@ -1180,6 +1183,15 @@ kab:
       unhide_user: Sken aseqdac-agi
       delete_user: Kkes aseqdac-agi
       confirm: Sentem
+    issued_blocks:
+      show:
+        title: Asewḥel sɣuṛ %{name}
+        heading_html: Tabdart n usewḥel sɣuṛ %{name}
+        empty: '%{name} ur isewḥel kra ar tura.'
+    received_blocks:
+      show:
+        title: Asewḥel n %{name}
+        empty: '%{name} ur yewḥil ara yakan.'
     lists:
       show:
         title: Iseqdacen
@@ -1204,13 +1216,6 @@ kab:
       time_future_html: Ad ifak di %{time}.
       until_login: D urmid arama yeqqen useqdac
       time_past_html: Ifuk %{time} aya.
-    blocks_on:
-      title: Asewḥel n %{name}
-      empty: '%{name} ur yewḥil ara yakan.'
-    blocks_by:
-      title: Asewḥel sɣuṛ %{name}
-      heading_html: Tabdart n usewḥel sɣuṛ %{name}
-      empty: '%{name} ur isewḥel kra ar tura.'
     show:
       title: '%{block_on} isewḥel-it %{block_by}'
       heading_html: '%{block_on} isewḥel-it %{block_by}'
index b8918ba58a10c798faa75f72a427bfd9a0444b99..b743b32ab28e46f5d09dd981c4c11c89045aca00 100644 (file)
@@ -933,31 +933,33 @@ kk-cyrl:
     changeset_comment_notification:
       hi: Сәлеметсіз бе, %{to_user},
   messages:
-    messages_table:
-      from: Кімнен
-      to: Кімге
-      subject: Тақырып
-      actions: Әрекеттер
-    message_summary:
-      unread_button: Оқылмаған деп белгілеу
-      read_button: Оқылды деп белгілеу
-      destroy_button: Жою
     new:
       title: Хат жіберу
-    outbox:
-      messages:
-        one: '%{count} хат жібердіңіз'
-        other: '%{count} хат жібердіңіз'
     show:
       reply_button: Жауап беру
       unread_button: Оқылмаған деп белгілеу
       destroy_button: Жою
       back: Артқа
-    sent_message_summary:
-      destroy_button: Жою
     mark:
       as_read: Хатқа оқылды деген белгі қойдыңыз
       as_unread: Хатқа оқылмады деген белгі қойдыңыз
+    mailboxes:
+      messages_table:
+        from: Кімнен
+        to: Кімге
+        subject: Тақырып
+        actions: Әрекеттер
+      message:
+        unread_button: Оқылмаған деп белгілеу
+        read_button: Оқылды деп белгілеу
+        destroy_button: Жою
+    outboxes:
+      show:
+        messages:
+          one: '%{count} хат жібердіңіз'
+          other: '%{count} хат жібердіңіз'
+      message:
+        destroy_button: Жою
   passwords:
     new:
       email address: Эл. пошта мекенжайы
index ae4c859b10bff8d4ede96704cf79b34bf8ac4682..066c4bab4d40040efdf82b9e8f0b6b1cb5e7f39e 100644 (file)
@@ -626,13 +626,14 @@ km:
       button: បញ្ជាក់​
       success: បានបញ្ជាក់អាសយដ្ឋានអ៊ីមែលរបស់អ្នករូចរាល់ហើយ!
   messages:
-    messages_table:
-      from: ពី​
-      to: ទៅ​
-      subject: ប្រធានបទ​
-      date: កាលបរិច្ឆេទ​
     new:
       back_to_inbox: ត្រឡប់ទៅប្រអប់សំបុត្រ​
+    mailboxes:
+      messages_table:
+        from: ពី​
+        to: ទៅ​
+        subject: ប្រធានបទ​
+        date: កាលបរិច្ឆេទ​
   sessions:
     new:
       tab_title: កត់ឈ្មោះចូល
index dabdf6f745f51788bba78a57781398a3c5443172..8f07cccca41337c2cadb4675a81a5afdb577bc81 100644 (file)
@@ -682,34 +682,36 @@ kn:
     confirm_email:
       button: ಧೃಡಪಡಿಸಿ
   messages:
-    messages_table:
-      from: ಇಂದ
-      to: ಗೆ
-      subject: ವಿಷಯ
-      date: ದಿನಾಂಕ
-    message_summary:
-      destroy_button: ಅಳಿಸು
     new:
       title: ಸಂದೇಶ ಕಳುಹಿಸಿ
       send_message_to_html: ಹೊಸ ಸಂದೇಶವನ್ನು %{name} ಗೆ ಕಳುಹಿಸಿ
     no_such_message:
       title: ಅಂತಹ ಯಾವುದೇ ಸಂದೇಶವಿಲ್ಲ
       heading: ಅಂತಹ ಯಾವುದೇ ಸಂದೇಶವಿಲ್ಲ
-    outbox:
-      people_mapping_nearby: ನಿಮ್ಮ ಹತ್ತಿರವಿರುವ ಬಳಕೆದಾರರು
     show:
       title: ಸಂದೇಶವನ್ನು ಓದಿ
       reply_button: ಉತ್ತರಿಸಿ
       unread_button: ಓದಿಲ್ಲವೆಂದು ಗುರುತು ಮಾಡಿ
       destroy_button: ಅಳಿಸು
       back: ಹಿಂದಕ್ಕೆ
-    sent_message_summary:
-      destroy_button: ಅಳಿಸು
     mark:
       as_read: ಸಂದೇಶ ಓದಾಲಾಗಿದೆ ಎಂದು ಗುರುತು ಮಾಡಿ
       as_unread: ಸಂದೇಶ ಓದಾಲಾಗಿಲ್ಲ ಎಂದು ಗುರುತು ಮಾಡಿ
     destroy:
       destroyed: ಸಂದೇಶವನ್ನು ಅಳಿಸಿ ಹಾಕಲಾಗಿದೆ
+    mailboxes:
+      messages_table:
+        from: ಇಂದ
+        to: ಗೆ
+        subject: ವಿಷಯ
+        date: ದಿನಾಂಕ
+      message:
+        destroy_button: ಅಳಿಸು
+    outboxes:
+      show:
+        people_mapping_nearby: ನಿಮ್ಮ ಹತ್ತಿರವಿರುವ ಬಳಕೆದಾರರು
+      message:
+        destroy_button: ಅಳಿಸು
   passwords:
     new:
       email address: 'ಮಿಂಚಂಚೆ ವಿಳಾಸ:'
index eb4de93ee7e1a6ac394502648f684345eb50004b..7463843447439260ac80c54ea527d9d2d9070119 100644 (file)
@@ -103,6 +103,7 @@ ko:
       message: 메시지
       node: 교점
       node_tag: 교점 태그
+      note: 노트
       old_node: 이전 교점
       old_node_tag: 이전 교점 태그
       old_relation: 이전 관계
@@ -374,7 +375,7 @@ ko:
         way: 길
         relation: 관계
     containing_relation:
-      entry_role_html: (%{relation_role}로서) 관계 %{relation_name}
+      entry_role_html: '%{relation_name} (역할: %{relation_role})'
     not_found:
       title: 찾을 수 없음
       sorry: '죄송하지만, %{type} #%{id}을(를) 찾지 못했습니다.'
@@ -1677,8 +1678,8 @@ ko:
       success: 계정을 확인했습니다, 가입해주셔서 감사합니다!
       already active: 이 계정은 이미 확인했습니다.
       unknown token: 확인 코드가 만료되었거나 존재하지 않습니다.
-      resend_html: 확인 이메일을 다시 보내려면 %{reconfirm_link}
-      click_here: 여기를 클릭하세요
+      if_need_resend: 확인 이메일을 다시 보내려면 아래 버튼을 클릭하세요.
+      resend_button: 확인 이메일을 다시 보내기
     confirm_resend:
       failure: '%{name} 사용자를 찾을 수 없습니다.'
     confirm_email:
@@ -1694,28 +1695,6 @@ ko:
       whitelist: 확인 요청 알림을 스팸으로 처리하는 시스템을 사용 중이신 경우에는 확인 요청에 응할 수 없으므로 %{sender}을(를)
         수신 허용 목록에 추가해 주세요.
   messages:
-    inbox:
-      title: 받은 쪽지함
-      messages: '%{new_messages}와 %{old_messages}가 있습니다'
-      new_messages:
-        one: 새 메시지 %{count}개
-        other: 새 메시지 %{count}개
-      old_messages:
-        one: 오래된 메시지 %{count}개
-        other: 오래된 메시지 %{count}개
-      no_messages_yet_html: 아직 메시지가 없습니다. %{people_mapping_nearby_link}에서 마음에 드는 친구를
-        찾아보는 것은 어떨까요?
-      people_mapping_nearby: 근처에 매핑한 사람
-    messages_table:
-      from: 보낸 사람
-      to: 받는이
-      subject: 제목
-      date: 날짜
-      actions: 동작
-    message_summary:
-      unread_button: 읽지 않음으로 표시
-      read_button: 읽음으로 표시
-      destroy_button: 삭제
     new:
       title: 메시지 보내기
       send_message_to_html: '%{name}에게 새 메시지 보내기'
@@ -1727,18 +1706,6 @@ ko:
       title: 메시지가 없습니다.
       heading: 메시지가 없습니다.
       body: 죄송합니다 해당 id로 된 메시지가 없습니다.
-    outbox:
-      title: 보낸 쪽지함
-      messages:
-        one: 메시지 %{count}개를 보냈습니다
-        other: 메시지 %{count}개를 보냈습니다
-      no_sent_messages_html: 아직 보낸 메시지가 없습니다. %{people_mapping_nearby_link}에서 마음에
-        드는 친구를 찾아보는 것은 어떨까요?
-      people_mapping_nearby: 근처에 매핑한 사람
-    muted:
-      title: 알림에서 제외된 메시지
-      messages:
-        other: 알림 미표시 메시지 %{count}개
     reply:
       wrong_user: '''%{user}''님으로 로그인하고 있지만 답장을 요청한 메시지가 해당 사용자에게 보내지지 않았습니다. 답장을
         하려면 올바른 사용자로 로그인하세요.'
@@ -1750,17 +1717,55 @@ ko:
       back: 뒤로
       wrong_user: '''%{user}''님으로 로그인하고 있지만 읽기를 요청한 메시지가 해당 사용자에게 보내지지 않았습니다. 읽으려면
         올바른 사용자로 로그인하세요.'
-    sent_message_summary:
-      destroy_button: 삭제
-    heading:
-      my_inbox: 받은 쪽지함
-      my_outbox: 보낸 쪽지함
-      muted_messages: 알림에서 제외된 메시지
     mark:
       as_read: 메시지를 읽은 것으로 표시
       as_unread: 메시지를 읽지 않은 것으로 표시
     destroy:
       destroyed: 메시지가 삭제됨
+    mailboxes:
+      heading:
+        my_inbox: 받은 쪽지함
+        my_outbox: 보낸 쪽지함
+        muted_messages: 알림에서 제외된 메시지
+      messages_table:
+        from: 보낸 사람
+        to: 받는이
+        subject: 제목
+        date: 날짜
+        actions: 동작
+      message:
+        unread_button: 읽지 않음으로 표시
+        read_button: 읽음으로 표시
+        destroy_button: 삭제
+    inboxes:
+      show:
+        title: 받은 쪽지함
+        messages: '%{new_messages}와 %{old_messages}가 있습니다'
+        new_messages:
+          one: 새 메시지 %{count}개
+          other: 새 메시지 %{count}개
+        old_messages:
+          one: 오래된 메시지 %{count}개
+          other: 오래된 메시지 %{count}개
+        no_messages_yet_html: 아직 메시지가 없습니다. %{people_mapping_nearby_link}에서 마음에 드는
+          친구를 찾아보는 것은 어떨까요?
+        people_mapping_nearby: 근처에 매핑한 사람
+    muted_inboxes:
+      show:
+        title: 알림에서 제외된 메시지
+        messages:
+          other: 알림 미표시 메시지 %{count}개
+    outboxes:
+      show:
+        title: 보낸 쪽지함
+        messages:
+          one: 메시지 %{count}개를 보냈습니다
+          other: 메시지 %{count}개를 보냈습니다
+        no_sent_messages_html: 아직 보낸 메시지가 없습니다. %{people_mapping_nearby_link}에서 마음에
+          드는 친구를 찾아보는 것은 어떨까요?
+        people_mapping_nearby: 근처에 매핑한 사람
+      message:
+        destroy_button: 삭제
   passwords:
     new:
       title: 잊어버린 비밀번호
@@ -2445,6 +2450,28 @@ ko:
       wikipedia:
         title: Wikipedia로 로그인하기
         alt: 위키백과 로고
+    share:
+      email:
+        title: 이메일로 공유
+        alt: 이메일 아이콘
+      bluesky:
+        title: 블루스카이를 통해 공유
+        alt: 블루스카이 아이콘
+      facebook:
+        title: 페이스북을 통해 공유
+        alt: 페이스북 아이콘
+      linkedin:
+        title: 링크드인을 통해 공유
+        alt: 링크드인 아이콘
+      mastodon:
+        title: 마스토돈에서 공유하기
+        alt: 마스토돈 아이콘
+      telegram:
+        title: 텔레그램에서 공유하기
+        alt: 텔레그램 아이콘
+      x:
+        title: X에서 공유
+        alt: X 아이콘
   oauth:
     permissions:
       missing: 이 애플리케이션이 이 기능을 사용할 수 있도록 승인하지 않았습니다
@@ -2636,6 +2663,21 @@ ko:
       report: 신고
     go_public:
       flash success: 지금 모든 편집을 공개하고, 편집을 허용하지 않습니다.
+    issued_blocks:
+      show:
+        title: '%{name}님에 의해 차단'
+        heading_html: '%{name} 사용자에 의한 차단 목록'
+        empty: '%{name}님은 아직 어떠한 차단도 하지 않았습니다.'
+    received_blocks:
+      show:
+        title: '%{name}님에 대해 차단'
+        heading_html: '%{name} 사용자에 대한 차단 목록'
+        empty: '%{name}님은 아직 차단되지 않았습니다.'
+      edit:
+        empty: '%{name}님은 현재 차단되어 있지 않습니다.'
+        revoke: 해제!
+      destroy:
+        flash: 모든 차단 내역이 비활성화되었습니다.
     lists:
       show:
         title: 사용자
@@ -2705,10 +2747,6 @@ ko:
       title: 사용자 차단
       heading: 사용자 차단 목록
       empty: 아직 차단하지 않았습니다.
-    revoke_all:
-      empty: '%{name}님은 현재 차단되어 있지 않습니다.'
-      revoke: 해제!
-      flash: 모든 차단 내역이 비활성화되었습니다.
     helper:
       time_future_html: '%{time}에 끝납니다.'
       until_login: 사용자가 로그인할 때까지 활성합니다.
@@ -2725,14 +2763,6 @@ ko:
           other: '%{count}개월'
         years:
           other: '%{count}년'
-    blocks_on:
-      title: '%{name}님에 대해 차단'
-      heading_html: '%{name} 사용자에 대한 차단 목록'
-      empty: '%{name}님은 아직 차단되지 않았습니다.'
-    blocks_by:
-      title: '%{name}님에 의해 차단'
-      heading_html: '%{name} 사용자에 의한 차단 목록'
-      empty: '%{name}님은 아직 어떠한 차단도 하지 않았습니다.'
     show:
       title: '%{block_on}님이 %{block_by}님에 의해 차단됨'
       heading_html: '%{block_on} 님이 %{block_by} 님에 의해 차단됨'
@@ -2749,6 +2779,8 @@ ko:
       display_name: 차단된 사용자
       creator_name: 만든이
       reason: 차단 이유
+      start: 시작
+      end: 끝
       status: 상태
     navigation:
       all_blocks: 모든 차단
@@ -2837,6 +2869,9 @@ ko:
       anonymous_warning_sign_up: 가입하기
       advice: 노트는 공개되어 지도 업데이트에 쓰일 수 있으므로 개인정보 또는 저작권이 있는 지도나 디렉터리 리스팅의 정보를 입력하지 마십시오.
       add: 참고 추가
+    new_readonly:
+      title: 새 노트
+      warning: 오픈스트리트맵 API가 현재 읽기 전용 모드이기 때문에 새로운 노트를 생성할 수 없습니다.
     notes_paging_nav:
       showing_page: '%{page}쪽'
       next: 다음
@@ -2862,7 +2897,7 @@ ko:
       center_marker: 표시의 가운데 지도
       paste_html: HTML을 붙여 넣어 웹사이트에 포함시키세요
       view_larger_map: 큰 지도 보기
-      only_standard_layer: 표준, 사이클 지도, 교통 레이어만 그림으로 내보낼 수 있습니다
+      only_layers_exported_as_image: '다음 레이어만 이미지로 내보낼 수 있습니다:'
     embed:
       report_problem: 문제점 보고
     key:
index 45182065d92faf0d1f253bf7b47e39cf47638b91..c0265d90d5c8cbd1da9ed60b6dc74b288ca532c0 100644 (file)
@@ -179,21 +179,24 @@ ksh:
     confirm_email:
       heading: Donn en neue Adräß för de e-mail beschtäätejje
   messages:
-    inbox:
-      no_messages_yet_html: Do häs noch kein Nohreeschte krääje. Woröm deihs De nit
-        ens met dä Lück kalle, di %{people_mapping_nearby_link}?
-      people_mapping_nearby: en Dinge Nöhde och am Kaate maache sin
-    messages_table:
-      from: Vum
-      subject: Theema
-      date: Et Dattum
-    outbox:
-      no_sent_messages_html: Do häs noch kein Nohreeschte verscheck. Woröm deihs De
-        nit ens met dä Lück kalle, di %{people_mapping_nearby_link}?
     show:
       reply_button: Antwoot
-    sent_message_summary:
-      destroy_button: Fottschmiiße
+    mailboxes:
+      messages_table:
+        from: Vum
+        subject: Theema
+        date: Et Dattum
+    inboxes:
+      show:
+        no_messages_yet_html: Do häs noch kein Nohreeschte krääje. Woröm deihs De
+          nit ens met dä Lück kalle, di %{people_mapping_nearby_link}?
+        people_mapping_nearby: en Dinge Nöhde och am Kaate maache sin
+    outboxes:
+      show:
+        no_sent_messages_html: Do häs noch kein Nohreeschte verscheck. Woröm deihs
+          De nit ens met dä Lück kalle, di %{people_mapping_nearby_link}?
+      message:
+        destroy_button: Fottschmiiße
   passwords:
     new:
       title: Verloore Paßwoot
index 6c95ca4cc67723baf5d297ee45bcaa990076ef3b..57c0179b868d50e8b45c949ab79a746d1aeb276b 100644 (file)
@@ -1681,27 +1681,6 @@ ku-Latn:
         ji kerema xwe jê piştrast be ku te %{sender}-yê wekî lîsteya ewlemendan, ji
         ber ku em nikarin cewab bidin ti daxwazeke rastandinê.
   messages:
-    inbox:
-      title: Qutiya hatiyan
-      messages: '%{new_messages} û %{old_messages} hene.'
-      new_messages:
-        one: '%{count} peyama nû'
-        other: '%{count} peyamên nû'
-      old_messages:
-        one: '%{count} peyama kevin'
-        other: '%{count} peyamên kevin'
-      no_messages_yet_html: Hêj peyama te tine ye. Çima ji ser %{people_mapping_nearby_link}
-        bi kesên nêzîkê xwe re nakevî îrtîbatê?
-      people_mapping_nearby: lînka nexşesazên li derdorên nêzîk
-    messages_table:
-      from: Ji
-      to: Ji bo
-      subject: Mijar
-      date: Dîrok
-    message_summary:
-      unread_button: Wek nexwendî nîşan bide
-      read_button: Wek xwendî nîşan bide
-      destroy_button: Jê bibe
     new:
       title: Peyamê bişîne
       send_message_to_html: Ji %{name} re peyamekî nû bişîne
@@ -1714,14 +1693,6 @@ ku-Latn:
       title: Mesajek wek vê tine ye
       heading: Mesajek wek vê tine ye
       body: Li me bibore, bi vê id-yê ti peyam tine ye.
-    outbox:
-      title: Qutiya min a çûyiyan
-      messages:
-        one: Te %{count} peyam şand
-        other: Te %{count} peyaman şand
-      no_sent_messages_html: Te hêj ji kesî re peyam neşandiye. Çima ji ser %{people_mapping_nearby_link}
-        bi hinek kesên nêzîkê xwe re nakevî îrtîbatê?
-      people_mapping_nearby: lînka nexşesazên li derdorên nêzîk
     reply:
       wrong_user: Te wek `%{user}' têket, lê peyama ku te dixwest were cewabdayîn
         ji wî bikarhênerê re nehat şandin. Xêra xwe ji bo cewabdanê wekî bikarhênerê
@@ -1735,16 +1706,48 @@ ku-Latn:
       wrong_user: Te wek `%{user}' têket, lê peyama ku dihate xwestin ku tu wê bixwînî
         ji aliyê wî/wê bikarhênerê ve an jî ji wî/wê bikarhênerê re nehatiye şandin.
         Xêra xwe ji bo xwendinê wekî bikarhênerê rast têkeve.
-    sent_message_summary:
-      destroy_button: Jê bibe
-    heading:
-      my_inbox: Qutiya min a hatiyan
-      my_outbox: Çûdanka min
     mark:
       as_read: Peyam wek xwendî hate nîşankirin
       as_unread: Peyam wek nexwendî hate nîşankirin
     destroy:
       destroyed: Payam hate jêbirin
+    mailboxes:
+      heading:
+        my_inbox: Qutiya min a hatiyan
+        my_outbox: Çûdanka min
+      messages_table:
+        from: Ji
+        to: Ji bo
+        subject: Mijar
+        date: Dîrok
+      message:
+        unread_button: Wek nexwendî nîşan bide
+        read_button: Wek xwendî nîşan bide
+        destroy_button: Jê bibe
+    inboxes:
+      show:
+        title: Qutiya hatiyan
+        messages: '%{new_messages} û %{old_messages} hene.'
+        new_messages:
+          one: '%{count} peyama nû'
+          other: '%{count} peyamên nû'
+        old_messages:
+          one: '%{count} peyama kevin'
+          other: '%{count} peyamên kevin'
+        no_messages_yet_html: Hêj peyama te tine ye. Çima ji ser %{people_mapping_nearby_link}
+          bi kesên nêzîkê xwe re nakevî îrtîbatê?
+        people_mapping_nearby: lînka nexşesazên li derdorên nêzîk
+    outboxes:
+      show:
+        title: Qutiya min a çûyiyan
+        messages:
+          one: Te %{count} peyam şand
+          other: Te %{count} peyaman şand
+        no_sent_messages_html: Te hêj ji kesî re peyam neşandiye. Çima ji ser %{people_mapping_nearby_link}
+          bi hinek kesên nêzîkê xwe re nakevî îrtîbatê?
+        people_mapping_nearby: lînka nexşesazên li derdorên nêzîk
+      message:
+        destroy_button: Jê bibe
   passwords:
     new:
       title: Şîfreya wenda
@@ -2398,6 +2401,16 @@ ku-Latn:
     go_public:
       flash success: Hemû guherandinên te niha ji her kesê re vekirî ye, û destûra
         te jî heye ji bo guherandinê.
+    issued_blocks:
+      show:
+        title: Yên ku ji aliyê %{name} ve hatine astengkirin
+        heading_html: Lîsteya astengiyên ku %{name} çêkiriye
+        empty: '%{name} hêj qet asteng nekiriye.'
+    received_blocks:
+      show:
+        title: Astengiyên ser %{name}
+        heading_html: Lîsteya astengiyên ser %{name}
+        empty: '%{name} hêj nehatiye astengkirin.'
     lists:
       show:
         title: Bikarhêner
@@ -2495,14 +2508,6 @@ ku-Latn:
         years:
           one: '%{count} sal'
           other: '%{count} salan'
-    blocks_on:
-      title: Astengiyên ser %{name}
-      heading_html: Lîsteya astengiyên ser %{name}
-      empty: '%{name} hêj nehatiye astengkirin.'
-    blocks_by:
-      title: Yên ku ji aliyê %{name} ve hatine astengkirin
-      heading_html: Lîsteya astengiyên ku %{name} çêkiriye
-      empty: '%{name} hêj qet asteng nekiriye.'
     show:
       title: '%{block_on} ji alî %{block_by} ve hate astengkirin'
       heading_html: '%{block_on} ji alî %{block_by} ve hate astengkirin'
@@ -2596,8 +2601,6 @@ ku-Latn:
       center_marker: Nîşanê bike merkeza nexşeyê
       paste_html: Ji bo ku di malperê de bi cih bikî HTMLê pê ve bike
       view_larger_map: Nexşeya Mestir Bibîne
-      only_standard_layer: Tenê tebeqeyên Standard, Nexşeya Bisiklêtê û Transportê
-        wek rism kare were derxistin
     embed:
       report_problem: Pirsgirêkek rapor bike
     key:
index aca9bd27cdfae94cf7e7968134e7b22ceb2bee59..cbf8e939a0c326560aad5789a41122c922e6348e 100644 (file)
@@ -925,6 +925,10 @@ lb:
           wayside_shrine: Bildstack
           wreck: Wrack
           "yes": Historesch Plaz
+        information:
+          map: Kaart
+          terminal: Informatiounsterminal
+          sign: Informatiounsschëld
         junction:
           "yes": Kräizung
         landuse:
@@ -997,6 +1001,8 @@ lb:
           track: Lafbunn
           water_park: Waasserpark
           "yes": Fräizäit
+        lock:
+          "yes": Schleis
         man_made:
           adit: Stollen
           advertising: Baussereklamm
@@ -1337,6 +1343,14 @@ lb:
           building_passage: Gebaisduerchgang
           culvert: Duerchlooss
           "yes": Tunnel
+        water:
+          lake: Séi
+          pond: Weier
+          reservoir: Reservoir
+          basin: Waasserbaseng
+          fishpond: Fëschweier
+          wastewater: Ofwaasser
+          lock: Schleis
         waterway:
           artificial: Kënschtlech Waasserstrooss
           boatyard: Werft
@@ -1657,7 +1671,9 @@ lb:
       success: Däi Benotzerkont gouf bestätegt, Merci fir d'Registréieren!
       already active: Dëse Kont gouf scho confirméiert.
       unknown token: Dee Confirmatiouns-Code ass ofgelaf oder et gëtt en net.
-      click_here: klickt hei
+      if_need_resend: Wa mir d'Confirmatiouns-E-Mail nach eng Kéier schécke sollen,
+        klickt op de Knäppchen ënnendrënner.
+      resend_button: D'Confirmatiouns-E-Mail nach eng Kéier schécken
     confirm_resend:
       failure: Benotzer %{name} gouf net fonnt.
     confirm_email:
@@ -1675,28 +1691,6 @@ lb:
         stell wannechgelift sécher, dass du %{sender} op eng Erlaabnislëscht setz,
         well mir keng Bestätegungsufroë beäntwere kënnen.
   messages:
-    inbox:
-      title: Postagang
-      messages: Dir hutt %{new_messages} a(n) %{old_messages}
-      new_messages:
-        one: '%{count} neie mMssage'
-        other: '%{count} nei Messagen'
-      old_messages:
-        one: '%{count} ale Message'
-        other: '%{count} al Messagen'
-      no_messages_yet_html: Du hues nach keng Noriichte versent. Wëlls de mat %{people_mapping_nearby_link}
-        Kontakt ophuelen?
-      people_mapping_nearby: Mapperen an der Noperschaft
-    messages_table:
-      from: Vu(n)
-      to: Un
-      subject: Sujet
-      date: Datum
-      actions: Aktiounen
-    message_summary:
-      unread_button: Als net gelies markéieren
-      read_button: Als gelies markéieren
-      destroy_button: Läschen
     new:
       title: Noriicht schécken
       send_message_to_html: Dem %{name} en neie Message schécken
@@ -1709,14 +1703,6 @@ lb:
       title: Kee sou ee Message
       heading: Kee sou ee Message
       body: Leider gëtt et kee Message mat där ID.
-    outbox:
-      title: Outbox
-      messages:
-        one: Du hues %{count} Noriicht gesent
-        other: Du hues %{count} Noriichte gesent
-      no_sent_messages_html: Du hues nach keng Noriichte versent. Wëlls de mat %{people_mapping_nearby_link}
-        Kontakt ophuelen?
-      people_mapping_nearby: Mapperen an der Noperschaft
     reply:
       wrong_user: Dir sidd als '%{user}' ugemellt, awer d'Noriicht, op déi Dir äntwere
         wollt, gouf net un dëse Benotzer geschéckt. Mellt Iech wgl. mat dem richtege
@@ -1730,16 +1716,49 @@ lb:
       wrong_user: Dir sidd als '%{user}' ugemellt, awer d'Noriicht, déi Dir liese
         wollt, gouf net vun an net un dëse Benotzer geschéckt. Mellt Iech wgl. mat
         dem richtege Benotzerkont u fir se ze liesen.
-    sent_message_summary:
-      destroy_button: Läschen
-    heading:
-      my_inbox: Mäi Postagang
-      my_outbox: Mäi Postausgang
     mark:
       as_read: Message als gelies markéiert
       as_unread: Message als net gelies markéiert
     destroy:
       destroyed: Message geläscht
+    mailboxes:
+      heading:
+        my_inbox: Mäi Postagang
+        my_outbox: Mäi Postausgang
+      messages_table:
+        from: Vu(n)
+        to: Un
+        subject: Sujet
+        date: Datum
+        actions: Aktiounen
+      message:
+        unread_button: Als net gelies markéieren
+        read_button: Als gelies markéieren
+        destroy_button: Läschen
+    inboxes:
+      show:
+        title: Postagang
+        messages: Dir hutt %{new_messages} a(n) %{old_messages}
+        new_messages:
+          one: '%{count} neie mMssage'
+          other: '%{count} nei Messagen'
+        old_messages:
+          one: '%{count} ale Message'
+          other: '%{count} al Messagen'
+        no_messages_yet_html: Du hues nach keng Noriichte versent. Wëlls de mat %{people_mapping_nearby_link}
+          Kontakt ophuelen?
+        people_mapping_nearby: Mapperen an der Noperschaft
+    outboxes:
+      show:
+        title: Outbox
+        messages:
+          one: Du hues %{count} Noriicht gesent
+          other: Du hues %{count} Noriichte gesent
+        no_sent_messages_html: Du hues nach keng Noriichte versent. Wëlls de mat %{people_mapping_nearby_link}
+          Kontakt ophuelen?
+        people_mapping_nearby: Mapperen an der Noperschaft
+      message:
+        destroy_button: Läschen
   passwords:
     new:
       title: Passwuert vergiess
@@ -2147,6 +2166,28 @@ lb:
       wikipedia:
         title: Mat Wikipedia aloggen
         alt: Wikipedia-Logo
+    share:
+      email:
+        title: Per E-Mail deelen
+        alt: E-Mail-Symbol
+      bluesky:
+        title: Op Bluesky deelen
+        alt: Bluesky-Symbol
+      facebook:
+        title: Op Facebook deelen
+        alt: Facebook-Symbol
+      linkedin:
+        title: Op LinkedIn deelen
+        alt: LinkedIn-Symbol
+      mastodon:
+        title: Op Mastodon deelen
+        alt: Mastodon-Symbol
+      telegram:
+        title: Op Telegram deelen
+        alt: Telegram-Symbol
+      x:
+        title: Op X deelen
+        alt: X-Symbol
   oauth:
     scopes:
       read_prefs: Benotzerastellunge liesen
@@ -2156,7 +2197,7 @@ lb:
       read_gpx: Privat GPS-Spuere liesen
       write_gpx: GPS-Tracks eroplueden
       write_notes: Notizzen änneren
-      read_email: D'E-mail-Adress vum Benotzer liesen
+      read_email: D'E-Mail-Adress vum Benotzer liesen
   oauth2_applications:
     index:
       title: Meng Clients-Applikatiounen
@@ -2269,6 +2310,14 @@ lb:
       report: Dëse Benotzer mellen
     go_public:
       flash success: All Är Ännerunge sinn elo ëffentlech, an Dir däerft elo änneren.
+    issued_blocks:
+      show:
+        title: Späre vum %{name}
+        heading_html: Lëscht vun de Spären vum %(name)
+    received_blocks:
+      show:
+        title: Späre vum %{name}
+        empty: '%{name} gouf bis elo nach net gespaart.'
     lists:
       show:
         title: Benotzer
@@ -2328,12 +2377,6 @@ lb:
           other: '%{count} Joren'
       short:
         active: aktiv
-    blocks_on:
-      title: Späre vum %{name}
-      empty: '%{name} gouf bis elo nach net gespaart.'
-    blocks_by:
-      title: Späre vum %{name}
-      heading_html: Lëscht vun de Spären vum %(name)
     show:
       title: '%{block_on} gespaart vum %{block_by}'
       heading_html: '%{block_on} gespaart vum %{block_by}'
index 15ef3c83443e4c6d66affe44c9cc23802ae0b282..986a1f8574f14638832a4215733bc108ff277f65 100644 (file)
@@ -1773,9 +1773,6 @@ lt:
       success: Jūsų paskyra patvirtinta. Ačiū už registraciją!
       already active: Ši paskyra jau yra patvirtinta.
       unknown token: Šis patvirtinimo kodas nebegalioja arba neegzistuoja.
-      resend_html: Jei norite, kad dar kartą atsiųstume patvirtinimo el. laišką, paspauskite
-        šią nuorodą %{reconfirm_link}.
-      click_here: spauskite čia
     confirm_resend:
       failure: Naudotojas %{name} nerastas.
     confirm_email:
@@ -1794,29 +1791,6 @@ lt:
         prašymus, prašome pridėti %{sender} į leidžiamų sąrašą, nes mes negalime atsakyti
         į patvirtinimo prašymus.
   messages:
-    inbox:
-      title: Gautieji
-      messages: Jūs turite %{new_messages} ir %{old_messages}
-      new_messages:
-        one: '%{count} naujas pranešimas'
-        other: '%{count} nauji pranešimai'
-      old_messages:
-        one: '%{count} senas pranešimas'
-        other: '%{count} seni pranešimai'
-      no_messages_yet_html: Jūs dar negavote nei vienos žinutės. Kodėl gi nesusisiekus
-        su %{people_mapping_nearby_link}?
-      people_mapping_nearby: netoliese žyminčiais naudotojais
-    messages_table:
-      from: Nuo
-      to: Kam
-      subject: Tema
-      date: Data
-      actions: Veiksmai
-    message_summary:
-      unread_button: Žymėti neskaitytu
-      read_button: Žymėti skaitytu
-      destroy_button: Ištrinti
-      unmute_button: Perkelti į gautuosius
     new:
       title: Siųsti žinutę
       send_message_to_html: Siųsti naują žinutę naudotojui %{name}
@@ -1829,16 +1803,6 @@ lt:
       title: Nėra tokio pranešimo
       heading: Nėra tokio pranešimo
       body: Gaila, bet žinutės su tokiu id nėra.
-    outbox:
-      title: Išsiųstieji
-      messages:
-        one: Jūs %{count} nusiųstą pranešimą
-        other: Jūs %{count} nusiųstus(-ų) pranešimus(-ų)
-      no_sent_messages_html: Jūs dar negavote nei vienos žinutės. Kodėl gi nesusisiekus
-        su %{people_mapping_nearby_link}?
-      people_mapping_nearby: netoliese žyminčiais naudotojais
-    muted:
-      title: Nutildyti pranešimai
     reply:
       wrong_user: Jūs prisijungę kaip „%{user}“, bet pranešimas, į kurį rašyta atsakyti,
         nebuvo siųstas tam naudotojui. Prisijunkite prie teisingos naudotojo paskyros,
@@ -1852,12 +1816,6 @@ lt:
       wrong_user: Jūs prisijungę kaip „%{user}“, bet pranešimas, kuri prašėte perskaityti,
         nebuvo siųstas tam naudotojui. Prisijunkite prie teisingos naudotojo paskyros,
         jei norite perskaityti.
-    sent_message_summary:
-      destroy_button: Ištrinti
-    heading:
-      my_inbox: Mano gauti
-      my_outbox: Išsiųsti
-      muted_messages: Nutildyti pranešimai
     mark:
       as_read: Pranešimas pažymėtas kaip skaitytas
       as_unread: Pranešimas pažymėtas kaip neskaitytas
@@ -1866,6 +1824,49 @@ lt:
       error: Žinutės nepavyko perkelti į gautuosius.
     destroy:
       destroyed: Pranešimas ištrintas
+    mailboxes:
+      heading:
+        my_inbox: Mano gauti
+        my_outbox: Išsiųsti
+        muted_messages: Nutildyti pranešimai
+      messages_table:
+        from: Nuo
+        to: Kam
+        subject: Tema
+        date: Data
+        actions: Veiksmai
+      message:
+        unread_button: Žymėti neskaitytu
+        read_button: Žymėti skaitytu
+        destroy_button: Ištrinti
+        unmute_button: Perkelti į gautuosius
+    inboxes:
+      show:
+        title: Gautieji
+        messages: Jūs turite %{new_messages} ir %{old_messages}
+        new_messages:
+          one: '%{count} naujas pranešimas'
+          other: '%{count} nauji pranešimai'
+        old_messages:
+          one: '%{count} senas pranešimas'
+          other: '%{count} seni pranešimai'
+        no_messages_yet_html: Jūs dar negavote nei vienos žinutės. Kodėl gi nesusisiekus
+          su %{people_mapping_nearby_link}?
+        people_mapping_nearby: netoliese žyminčiais naudotojais
+    muted_inboxes:
+      show:
+        title: Nutildyti pranešimai
+    outboxes:
+      show:
+        title: Išsiųstieji
+        messages:
+          one: Jūs %{count} nusiųstą pranešimą
+          other: Jūs %{count} nusiųstus(-ų) pranešimus(-ų)
+        no_sent_messages_html: Jūs dar negavote nei vienos žinutės. Kodėl gi nesusisiekus
+          su %{people_mapping_nearby_link}?
+        people_mapping_nearby: netoliese žyminčiais naudotojais
+      message:
+        destroy_button: Ištrinti
   passwords:
     new:
       title: Pamiršau slaptažodį
@@ -2795,6 +2796,24 @@ lt:
       report: Pranešti apie šį naudotoją
     go_public:
       flash success: Nuo šiol visi jūsų pakeitimai bus vieši ir jums leidžiama keisti.
+    issued_blocks:
+      show:
+        title: Naudotojo %{name} blokavimai
+        heading_html: Naudotojo %{name} blokavimų sąrašas
+        empty: Naudotojas %{name} dar nieko neužblokavo.
+    received_blocks:
+      show:
+        title: Naudotojo %{name} blokavimai
+        heading_html: Naudotojo %{name} apribojimų sąrašas
+        empty: '%{name} dar nebuvo apribotas.'
+      edit:
+        title: Atšaukiami visi %{block_on} blokavimai
+        heading_html: Atšaukiami visi %{block_on} blokavimai
+        empty: '%{name} neturi aktyvių blokavimų.'
+        confirm: Ar tikrai norite atšaukti %{active_blocks}?
+        revoke: Atšaukti!
+      destroy:
+        flash: Visi aktyvūs blokavimai atšaukti.
     lists:
       show:
         title: Naudotojai
@@ -2877,13 +2896,6 @@ lt:
       title: Naudotojų blokavimai
       heading: Naudotojo blokavimų sąrašas
       empty: Niekas dar nebuvo blokuojamas.
-    revoke_all:
-      title: Atšaukiami visi %{block_on} blokavimai
-      heading_html: Atšaukiami visi %{block_on} blokavimai
-      empty: '%{name} neturi aktyvių blokavimų.'
-      confirm: Ar tikrai norite atšaukti %{active_blocks}?
-      revoke: Atšaukti!
-      flash: Visi aktyvūs blokavimai atšaukti.
     helper:
       time_future_html: Baigiasi po %{time}.
       until_login: Aktyvus iki naudotojo prisijungimo.
@@ -2916,14 +2928,6 @@ lt:
           few: '%{count} metai'
           many: '{%count} metai'
           other: '%{count} metų'
-    blocks_on:
-      title: Naudotojo %{name} blokavimai
-      heading_html: Naudotojo %{name} apribojimų sąrašas
-      empty: '%{name} dar nebuvo apribotas.'
-    blocks_by:
-      title: Naudotojo %{name} blokavimai
-      heading_html: Naudotojo %{name} blokavimų sąrašas
-      empty: Naudotojas %{name} dar nieko neužblokavo.
     show:
       title: Naudotoją %{block_on} blokuoja %{block_by}
       heading_html: Naudotoją %{block_on} blokuoja %{block_by}
@@ -3034,8 +3038,6 @@ lt:
       center_marker: Centruoti žemėlapį ties žymekliu
       paste_html: Įkelkite HTML, kad įdėtumėte į svetainę
       view_larger_map: Žiūrėti didesniame žemėlapyje
-      only_standard_layer: Tik standartinis sluoksnis gali būti eksportuojamas kaip
-        paveikslėlis
     embed:
       report_problem: Pranešti apie problemą
     key:
index f477be5a562db208502de8c3f0d54cdda64f8f07..6a657249fb6ddd8ace051d1afa33e15d3740fe18 100644 (file)
@@ -1294,7 +1294,6 @@ lv:
       success: Jūsu e-pasta adrese ir apstiprināta, paldies par reģistrēšanos!
       already active: Šis lietotājs jau ir apstiprināts.
       unknown token: Apstiprinājuma kods ir novecojis, nav derīģs vai neeksistē.
-      click_here: klikšķini šeit
     confirm_resend:
       failure: Lietotājs %{name} nav atrasts.
     confirm_email:
@@ -1307,27 +1306,6 @@ lv:
       unknown_token: Šim apstiprinājuma kodam ir izbeidzies derīguma termiņš vai arī
         tas neeksistē.
   messages:
-    inbox:
-      title: iesūtne
-      messages: Jums ir %{new_messages} un  %{old_messages}
-      new_messages:
-        one: '%{count} jauna ziņa'
-        other: '%{count} jaunas ziņas'
-      old_messages:
-        one: '%{count} veca ziņa'
-        other: '%{count} vecas ziņas'
-      no_messages_yet_html: Jums vēl nav ziņojumu. Kāpēc gan nesazināties ar kādu
-        no %{people_mapping_nearby_link}?
-      people_mapping_nearby: cilvēkiem, kuri zīmē karti tavā apkaimē
-    messages_table:
-      from: "No"
-      to: Kam
-      subject: Temats
-      date: Datums
-    message_summary:
-      unread_button: Atzīmēt kā nelasītu
-      read_button: Atzīmēt kā lasītu
-      destroy_button: Dzēst
     new:
       title: Nosūtīt ziņu
       send_message_to_html: Sūtīt jaunu ziņu %{name}
@@ -1340,14 +1318,6 @@ lv:
       title: Neesoša ziņa
       heading: Neesoša ziņa
       body: Atvainojiet, ziņa ar norādīto identifikatoru nav atrodama.
-    outbox:
-      title: izsūtne
-      messages:
-        one: Tev ir %{count} nosūtīta ziņa
-        other: Tev ir %{count} nosūtītas ziņas
-      no_sent_messages_html: Tev pašlaik nav ziņojumu. Kāpēc nesazināties ar kādu
-        no %{people_mapping_nearby_link}?
-      people_mapping_nearby: cilvēki kartē tuvā apkārtnē
     reply:
       wrong_user: Tu esi autorizējies kā `%{user}', bet ziņojums, kuram tu vēlies
         atbildēt, nav sūtīts šim lietotājam. Lūdzu  autorizējies, kā pareizais lietotājs,
@@ -1361,16 +1331,48 @@ lv:
       wrong_user: Jūs esat autorizējies kā `%{user}', bet ziņojums, kuru vēlaties
         izlasīt, nav sūtīts šim lietotājam. Lūdzu autorizējaties kā pareizais lietotājs,
         lai izlasītu to.
-    sent_message_summary:
-      destroy_button: Dzēst
-    heading:
-      my_inbox: Mana iesūtne
-      my_outbox: Mana izsūtne
     mark:
       as_read: Ziņa atzīmēta kā lasīta
       as_unread: Ziņa atzīmēta kā nelasīta
     destroy:
       destroyed: Ziņa izdzēsta
+    mailboxes:
+      heading:
+        my_inbox: Mana iesūtne
+        my_outbox: Mana izsūtne
+      messages_table:
+        from: "No"
+        to: Kam
+        subject: Temats
+        date: Datums
+      message:
+        unread_button: Atzīmēt kā nelasītu
+        read_button: Atzīmēt kā lasītu
+        destroy_button: Dzēst
+    inboxes:
+      show:
+        title: iesūtne
+        messages: Jums ir %{new_messages} un  %{old_messages}
+        new_messages:
+          one: '%{count} jauna ziņa'
+          other: '%{count} jaunas ziņas'
+        old_messages:
+          one: '%{count} veca ziņa'
+          other: '%{count} vecas ziņas'
+        no_messages_yet_html: Jums vēl nav ziņojumu. Kāpēc gan nesazināties ar kādu
+          no %{people_mapping_nearby_link}?
+        people_mapping_nearby: cilvēkiem, kuri zīmē karti tavā apkaimē
+    outboxes:
+      show:
+        title: izsūtne
+        messages:
+          one: Tev ir %{count} nosūtīta ziņa
+          other: Tev ir %{count} nosūtītas ziņas
+        no_sent_messages_html: Tev pašlaik nav ziņojumu. Kāpēc nesazināties ar kādu
+          no %{people_mapping_nearby_link}?
+        people_mapping_nearby: cilvēki kartē tuvā apkārtnē
+      message:
+        destroy_button: Dzēst
   passwords:
     new:
       title: Aizmirsāt paroli
@@ -1900,6 +1902,16 @@ lv:
       report: Ziņot par šo lietotāju
     go_public:
       flash success: Visi tavi labojumi tagad ir publiski, un tu drīksti labot.
+    issued_blocks:
+      show:
+        title: Liegumi no %{name}
+        heading_html: Liegumu saraksts no %{name}
+        empty: '%{name} vēl nav izveidojis nevienu liegumu.'
+    received_blocks:
+      show:
+        title: Liegumi uz %{name}
+        heading_html: Liegumu saraksts uz %{name}
+        empty: '%{name} vēl nav ticis bloķēts.'
     lists:
       show:
         title: Lietotāji
@@ -1972,14 +1984,6 @@ lv:
         hours:
           one: 1 stunda
           other: '%{count} stundas'
-    blocks_on:
-      title: Liegumi uz %{name}
-      heading_html: Liegumu saraksts uz %{name}
-      empty: '%{name} vēl nav ticis bloķēts.'
-    blocks_by:
-      title: Liegumi no %{name}
-      heading_html: Liegumu saraksts no %{name}
-      empty: '%{name} vēl nav izveidojis nevienu liegumu.'
     show:
       title: '%{block_on} bloķēts pēc %{block_by}'
       heading_html: '%{block_on} bloķēts pēc %{block_by}'
@@ -2060,7 +2064,6 @@ lv:
       center_marker: Centrēt karti uz marķieri
       paste_html: Ielīmē HTML, lai ievietotu mājaslapā
       view_larger_map: Skatīt lielāku karti
-      only_standard_layer: Tikai standarta slāni var eksportēt kā attēlu
     embed:
       report_problem: Ziņot par problēmu
     key:
index 6b68a7e43e1711cc764f603213853250d64e64fc..74a36120c36711495eb290a3b3e387cafdd615c4 100644 (file)
@@ -1035,6 +1035,14 @@ mk:
           wayside_shrine: Крајпатен параклис
           wreck: Бродолом
           "yes": Историско место
+        information:
+          guidepost: Патоказ
+          board: Информативна табла
+          map: Карта
+          office: Туристичка канцеларија
+          terminal: Информативен терминал
+          sign: Информативен знак
+          stele: Информативна стела
         junction:
           "yes": Раскрсница
         landuse:
@@ -1107,6 +1115,8 @@ mk:
           track: Спортска патека
           water_park: Аквапарк
           "yes": Разонода
+        lock:
+          "yes": Преводница
         man_made:
           adit: Помошно окно
           advertising: Реклама
@@ -1447,6 +1457,17 @@ mk:
           building_passage: Премин на зграда
           culvert: Пропусен канал
           "yes": Тунел
+        water:
+          lake: Езеро
+          pond: Езерце
+          reservoir: Вештачко езеро
+          basin: Складник за вода
+          fishpond: Рибник
+          lagoon: Лагуна
+          wastewater: Отпадна вода
+          oxbow: Мртвица
+          stream_pool: Вир
+          lock: Преводница
         waterway:
           artificial: Вештачки воден пат
           boatyard: Чамцоградилиште
@@ -1779,9 +1800,9 @@ mk:
       success: Вашата сметка е потврдена. Ви благодариме што се зачленивте!
       already active: Оваа сметка е веќе потврдена.
       unknown token: Потврдниот код е истечен или не постои.
-      resend_html: Ако сакате уште еднаш да ја добиете потврдната порака по е-пошта,
-        %{reconfirm_link}.
-      click_here: стиснете тука
+      if_need_resend: Ако треба да повторно да ја испратите потврдната е-пошта, стиснете
+        на копчето подолу.
+      resend_button: Пак испрати потврдна е-пошта
     confirm_resend:
       failure: Корисникот %{name} не е пронајден.
     confirm_email:
@@ -1799,29 +1820,6 @@ mk:
         се дека %{sender} е ставен на белиот список бидејќи не сме во можност да одговараме
         на барања за потврда.
   messages:
-    inbox:
-      title: Примени
-      messages: Имате %{new_messages} и %{old_messages}
-      new_messages:
-        one: '%{count} нова порака'
-        other: '%{count} нови пораки'
-      old_messages:
-        one: '%{count} стара порака'
-        other: '%{count} стари пораки'
-      no_messages_yet_html: Сè уште немате пораки. Зошто не се поврзете со некој од
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: картографите во вашата близина
-    messages_table:
-      from: Од
-      to: До
-      subject: Наслов
-      date: Датум
-      actions: Дејства
-    message_summary:
-      unread_button: Означи како непрочитано
-      read_button: Означи како прочитано
-      destroy_button: Избриши
-      unmute_button: Премести во Примени
     new:
       title: Испрати ја пораката
       send_message_to_html: Испрати нова порака за %{name}
@@ -1834,19 +1832,6 @@ mk:
       title: Нема таква порака
       heading: Нема таква порака
       body: За жал, нема порака со таа назнака.
-    outbox:
-      title: За праќање
-      messages:
-        one: Имате %{count} испратена порака
-        other: Имате %{count} испратени пораки
-      no_sent_messages_html: Сè уште немате испратено пораки. Зошто да не исконтактирате
-        некои %{people_mapping_nearby_link}?
-      people_mapping_nearby: картографите во вашата близина
-    muted:
-      title: Замолкнати пораки
-      messages:
-        one: '%{count} замолкната порака'
-        other: Имате %{count} замолкнати пораки
     reply:
       wrong_user: Најавени сте како „%{user}“, но пораката на којашто побаравте да
         одговорите не е испратена до тој корисник. Најавете се под правилно корисничко
@@ -1860,12 +1845,6 @@ mk:
       wrong_user: Најавени сте како „%{user}“, но пораката што побаравте да ја прочитате
         не е испратена до или од тој корисник. Најавете се под правилно корисничко
         име за да ја прочитате.
-    sent_message_summary:
-      destroy_button: Избриши
-    heading:
-      my_inbox: Примени
-      my_outbox: Моја излезна пошта
-      muted_messages: Замолкнати пораки
     mark:
       as_read: Пораката е означена како прочитана
       as_unread: Пораката е означена како непрочитана
@@ -1874,6 +1853,52 @@ mk:
       error: Пораката не можеше да се премести во Примени.
     destroy:
       destroyed: Пораката е избришана
+    mailboxes:
+      heading:
+        my_inbox: Примени
+        my_outbox: Моја излезна пошта
+        muted_messages: Замолкнати пораки
+      messages_table:
+        from: Од
+        to: До
+        subject: Наслов
+        date: Датум
+        actions: Дејства
+      message:
+        unread_button: Означи како непрочитано
+        read_button: Означи како прочитано
+        destroy_button: Избриши
+        unmute_button: Премести во Примени
+    inboxes:
+      show:
+        title: Примени
+        messages: Имате %{new_messages} и %{old_messages}
+        new_messages:
+          one: '%{count} нова порака'
+          other: '%{count} нови пораки'
+        old_messages:
+          one: '%{count} стара порака'
+          other: '%{count} стари пораки'
+        no_messages_yet_html: Сè уште немате пораки. Зошто не се поврзете со некој
+          од %{people_mapping_nearby_link}?
+        people_mapping_nearby: картографите во вашата близина
+    muted_inboxes:
+      show:
+        title: Замолкнати пораки
+        messages:
+          one: '%{count} замолкната порака'
+          other: Имате %{count} замолкнати пораки
+    outboxes:
+      show:
+        title: За праќање
+        messages:
+          one: Имате %{count} испратена порака
+          other: Имате %{count} испратени пораки
+        no_sent_messages_html: Сè уште немате испратено пораки. Зошто да не исконтактирате
+          некои %{people_mapping_nearby_link}?
+        people_mapping_nearby: картографите во вашата близина
+      message:
+        destroy_button: Избриши
   passwords:
     new:
       title: Загубена лозинка
@@ -2649,6 +2674,28 @@ mk:
       wikipedia:
         title: Најава со Википедија
         alt: Лого на Википедија
+    share:
+      email:
+        title: Сподели преку е-пошта
+        alt: Икона за е-пошта
+      bluesky:
+        title: Сподели на Bluesky
+        alt: Икона на Bluesky
+      facebook:
+        title: Сподели на Фејсбук
+        alt: Икона на Фејсбук
+      linkedin:
+        title: Сподели на LinkedIn
+        alt: Икона на LinkedIn
+      mastodon:
+        title: Сподели на Mastodon
+        alt: Икона на Mastodon
+      telegram:
+        title: Сподели на Телеграм
+        alt: Икона на Телеграм
+      x:
+        title: Сподели на X
+        alt: Икона на X
   oauth:
     permissions:
       missing: Му немате дозволено пристап на прилогот до оваа можност
@@ -2744,7 +2791,7 @@ mk:
         privacy_policy: правила за личните податоци
         privacy_policy_title: Правилата за лични податоци на OSMF, со одделот за е-поштенски
           адреси
-        contributor_terms_url: https://wiki.osmfoundation.org/wiki/Licence/Contributor_Terms
+        contributor_terms_url: https://osmfoundation.org/wiki/Licence/Contributor_Terms
         contributor_terms: услови на учество
       continue: Зачленување
       terms accepted: Ви благодариме што ги прифативте новите услови за учество!
@@ -2859,6 +2906,27 @@ mk:
       report: Пријави го корисников
     go_public:
       flash success: Сега сите уредувања ви се јавни, и ви е дозволено да уредувате.
+    issued_blocks:
+      show:
+        title: Блокови од %{name}
+        heading_html: Список на блокови од %{name}
+        empty: Корисникот %{name} досега не блокирал.
+    received_blocks:
+      show:
+        title: Блокови за %{name}
+        heading_html: Список на блокови за %{name}
+        empty: Корисникот %{name} досега не бил блокиран.
+      edit:
+        title: Отповикување на сите блокови на %{block_on}
+        heading_html: Отповикување на сите блокови на %{block_on}
+        empty: '%{name} нема активни блокови.'
+        confirm: Дали сигурно сакате да отповикате %{active_blocks}?
+        active_blocks:
+          one: '%{count} активен блок'
+          other: '%{count} активни блокови'
+        revoke: Отповикај!
+      destroy:
+        flash: Сите активни блокови се отповикани.
     lists:
       show:
         title: Корисници
@@ -2943,16 +3011,6 @@ mk:
       title: Кориснички блокови
       heading: Список на кориснички блокови
       empty: Досега сè уште нема блокови.
-    revoke_all:
-      title: Отповикување на сите блокови на %{block_on}
-      heading_html: Отповикување на сите блокови на %{block_on}
-      empty: '%{name} нема активни блокови.'
-      confirm: Дали сигурно сакате да отповикате %{active_blocks}?
-      active_blocks:
-        one: '%{count} активен блок'
-        other: '%{count} активни блокови'
-      revoke: Отповикај!
-      flash: Сите активни блокови се отповикани.
     helper:
       time_future_html: Истекува за %{time}.
       until_login: Активно додека не се најави корисникот.
@@ -2984,14 +3042,6 @@ mk:
         read_html: порочитај во %{time}
         time_in_future_title: '%{time_absolute}; за %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Блокови за %{name}
-      heading_html: Список на блокови за %{name}
-      empty: Корисникот %{name} досега не бил блокиран.
-    blocks_by:
-      title: Блокови од %{name}
-      heading_html: Список на блокови од %{name}
-      empty: Корисникот %{name} досега не блокирал.
     show:
       title: '%{block_on} блокиран од %{block_by}'
       heading_html: '%{block_on} блокиран од %{block_by}'
@@ -3107,6 +3157,10 @@ mk:
         Затоа, не внесувајте лични податоци, или пак податоци од карти или именици
         заштитени со авторски права.
       add: Додај белешка
+    new_readonly:
+      title: Нова белешка
+      warning: Не може да се прават нови белешки бидејќи приложникот на OpenStreetMap
+        моментално е во режим на читање.
     notes_paging_nav:
       showing_page: Страница %{page}
       next: Следно
@@ -3132,8 +3186,8 @@ mk:
       center_marker: Сосред. картата на бележникот
       paste_html: Ископирајте го HTML-кодот за да го вметнете во страницата.
       view_larger_map: Преглед на поголема карта
-      only_standard_layer: Како слика можат да се извезуваат само слоевите Стандарден,
-        Велосипедска карта и Превоз
+      only_layers_exported_as_image: 'Само следниве слоеви можат да се извезат како
+        слика:'
     embed:
       report_problem: Пријави проблем
     key:
index 885653e357a7f48d382b9fc7d864a36385db62af..56b5eb2c8324dc1a05ca567a20e70dfbca7f78ae 100644 (file)
@@ -891,27 +891,6 @@ mr:
     confirm_email:
       heading: ईमेल पत्त्यातील बदलाची पुष्टी करा
   messages:
-    inbox:
-      title: अंतर्पेटी
-      messages: आपल्यासाठी %{new_messages} आणि %{old_messages} आहेत
-      new_messages:
-        one: '%{count} नवा संदेश'
-        other: '%{count} नवे संदेश'
-      old_messages:
-        one: '%{count} जुना संदेश'
-        other: '%{count} जुने संदेश'
-      no_messages_yet_html: आपल्यासाठी अद्याप संदेश नाहीत. %{people_mapping_nearby_link}
-        संपर्क साधावा काय?
-      people_mapping_nearby: जवळपासच्या इतर नकाशाकारांशी
-    messages_table:
-      from: पासून
-      to: प्रति
-      subject: विषय
-      date: दिनांक
-    message_summary:
-      unread_button: न वाचलेले अशी खूण करा
-      read_button: वाचले अशी खूण करा
-      destroy_button: वगळा
     new:
       title: संदेश पाठवा
       send_message_to_html: '%{name}ला नवीन संदेश पाठवा'
@@ -923,14 +902,6 @@ mr:
       title: असा कोणताही संदेश नाही
       heading: असा कोणताही संदेश नाही
       body: त्या ओळखणीचा कोणताही संदेश नाही
-    outbox:
-      title: बाह्यपेटी
-      messages:
-        one: आपण पाठविलेला %{count} संदेश
-        other: आपण पाठविलेले %{count} संदेश
-      no_sent_messages_html: आपण अद्याप कुठलेही संदेश पाठविलेले नाहीत. %{people_mapping_nearby_link}
-        संपर्क साधावा काय?
-      people_mapping_nearby: जवळपासच्या इतर नकाशाकारांशी
     reply:
       wrong_user: आपण '%{user}' म्हणून दाखल झालेले आहात, पण आपण ज्या संदेशास उत्तर
         देऊ इच्छिता, तो संदेश वेगळ्या सदस्यास पाठविण्यात आला आहे. कृपया उत्तर देण्यासाठी
@@ -943,15 +914,47 @@ mr:
       wrong_user: आपण '%{user}' म्हणून दाखल झालेले आहात, पण आपण जो संदेश वाचू इच्छिता,
         तो संदेश वेगळ्या सदस्यास पाठविण्यात आला आहे. कृपया संदेश वाचण्यासाठी बरोबर
         सदस्य म्हणून दाखल व्हा.
-    sent_message_summary:
-      destroy_button: वगळा
-    heading:
-      my_inbox: माझी अंतर्पेटी
     mark:
       as_read: संदेश वाचला आहे अशी खूण केली
       as_unread: संदेश वाचला नाही अशी खूण केली
     destroy:
       destroyed: संदेश वगळला
+    mailboxes:
+      heading:
+        my_inbox: माझी अंतर्पेटी
+      messages_table:
+        from: पासून
+        to: प्रति
+        subject: विषय
+        date: दिनांक
+      message:
+        unread_button: न वाचलेले अशी खूण करा
+        read_button: वाचले अशी खूण करा
+        destroy_button: वगळा
+    inboxes:
+      show:
+        title: अंतर्पेटी
+        messages: आपल्यासाठी %{new_messages} आणि %{old_messages} आहेत
+        new_messages:
+          one: '%{count} नवा संदेश'
+          other: '%{count} नवे संदेश'
+        old_messages:
+          one: '%{count} जुना संदेश'
+          other: '%{count} जुने संदेश'
+        no_messages_yet_html: आपल्यासाठी अद्याप संदेश नाहीत. %{people_mapping_nearby_link}
+          संपर्क साधावा काय?
+        people_mapping_nearby: जवळपासच्या इतर नकाशाकारांशी
+    outboxes:
+      show:
+        title: बाह्यपेटी
+        messages:
+          one: आपण पाठविलेला %{count} संदेश
+          other: आपण पाठविलेले %{count} संदेश
+        no_sent_messages_html: आपण अद्याप कुठलेही संदेश पाठविलेले नाहीत. %{people_mapping_nearby_link}
+          संपर्क साधावा काय?
+        people_mapping_nearby: जवळपासच्या इतर नकाशाकारांशी
+      message:
+        destroy_button: वगळा
   passwords:
     new:
       heading: परवलीचा शब्द विसरला?
index 1fd9713686fe5209b5fe44150a702c031acec546..a65e75f5997a93896911bacb76a4f5828366546c 100644 (file)
@@ -1286,8 +1286,6 @@ ms:
       success: Akaun anda telah disahkan. Terima kasih kerana mendaftar!
       already active: Akaun ini sudah pun disahkan.
       unknown token: Kod pengesahan itu telah tamat tempoh atau tidak wujud.
-      resend_html: Jika anda memerlukan kami menghantar semula e-mel pengesahan, %{reconfirm_link}.
-      click_here: tekan di sini
     confirm_resend:
       failure: Pengguna %{name} tidak dijumpai.
     confirm_email:
@@ -1299,23 +1297,6 @@ ms:
       failure: Sudah ada alamat e-mel yang disahkan dengan token ini.
       unknown_token: Kod pengesahan itu telah tamat tempoh atau tidak wujud.
   messages:
-    inbox:
-      title: Peti Masuk
-      messages: Anda ada %{new_messages} dan %{old_messages}
-      new_messages: '%{count} pesanan baru'
-      old_messages: '%{count} pesanan lama'
-      no_messages_yet_html: Anda belum ada pesanan. Apa kata anda berhubung dengan
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: pemeta-pemeta yang berdekatan
-    messages_table:
-      from: Daripada
-      to: Kepada
-      subject: Subjek
-      date: Tarikh
-    message_summary:
-      unread_button: Tanda sebagai belum dibaca
-      read_button: Tanda sebagai sudah dibaca
-      destroy_button: Hapuskan
     new:
       title: Hantar pesanan
       send_message_to_html: Hantar pesanan baru kepada %{name}
@@ -1328,12 +1309,6 @@ ms:
       title: Pesanan ini tidak wujud
       heading: Pesanan ini tidak wujud
       body: Maaf, tiada pesanan dengan ID ini.
-    outbox:
-      title: Peti Keluar
-      messages: Anda ada %{count} pesanan terhantar
-      no_sent_messages_html: Anda belum menghantar pesanan. Apa kata anda berhubung
-        dengan %{people_mapping_nearby_link}?
-      people_mapping_nearby: pemeta-pemeta yang berdekatan
     reply:
       wrong_user: Anda telah log masuk sebagai `%{user}' tetapi pesanan yang anda
         pohon untuk membalas itu tidak dihantar kepada pengguna itu. Sila log masuk
@@ -1347,15 +1322,41 @@ ms:
       wrong_user: Anda telah log masuk sebagai `%{user}' tetapi pesanan yang anda
         pohon untuk membaca itu tidak dihantar oleh/kepada pengguna itu. Sila log
         masuk sebagai pengguna yang betul untuk membacanya.
-    sent_message_summary:
-      destroy_button: Hapuskan
-    heading:
-      my_inbox: Peti masuk saya
     mark:
       as_read: Pesanan ditandai sebagai sudah dibaca
       as_unread: Pesanan ditandai sebagai belum dibaca
     destroy:
       destroyed: Pesanan dihapuskan
+    mailboxes:
+      heading:
+        my_inbox: Peti masuk saya
+      messages_table:
+        from: Daripada
+        to: Kepada
+        subject: Subjek
+        date: Tarikh
+      message:
+        unread_button: Tanda sebagai belum dibaca
+        read_button: Tanda sebagai sudah dibaca
+        destroy_button: Hapuskan
+    inboxes:
+      show:
+        title: Peti Masuk
+        messages: Anda ada %{new_messages} dan %{old_messages}
+        new_messages: '%{count} pesanan baru'
+        old_messages: '%{count} pesanan lama'
+        no_messages_yet_html: Anda belum ada pesanan. Apa kata anda berhubung dengan
+          %{people_mapping_nearby_link}?
+        people_mapping_nearby: pemeta-pemeta yang berdekatan
+    outboxes:
+      show:
+        title: Peti Keluar
+        messages: Anda ada %{count} pesanan terhantar
+        no_sent_messages_html: Anda belum menghantar pesanan. Apa kata anda berhubung
+          dengan %{people_mapping_nearby_link}?
+        people_mapping_nearby: pemeta-pemeta yang berdekatan
+      message:
+        destroy_button: Hapuskan
   passwords:
     new:
       title: Terlupa kata laluan
@@ -1927,6 +1928,16 @@ ms:
     go_public:
       flash success: Sekarang, suntingan anda menjadi tatapan umum, maka anda dibenarkan
         untuk menyunting.
+    issued_blocks:
+      show:
+        title: Sekatan oleh %{name}
+        heading_html: Senarai sekatan oleh %{name}
+        empty: '%{name} tidak pernah menyekat sesiapa.'
+    received_blocks:
+      show:
+        title: Sekatan ke atas %{name}
+        heading_html: Senarai sekatan ke atas %{name}
+        empty: '%{name} tidak pernah disekat.'
     lists:
       show:
         title: Pengguna
@@ -1989,14 +2000,6 @@ ms:
         hours:
           one: 1 jam
           other: '%{count} jam'
-    blocks_on:
-      title: Sekatan ke atas %{name}
-      heading_html: Senarai sekatan ke atas %{name}
-      empty: '%{name} tidak pernah disekat.'
-    blocks_by:
-      title: Sekatan oleh %{name}
-      heading_html: Senarai sekatan oleh %{name}
-      empty: '%{name} tidak pernah menyekat sesiapa.'
     show:
       title: '%{block_on} disekat oleh %{block_by}'
       heading_html: '%{block_on} disekat oleh %{block_by}'
index 10e6e9c0f176c6b121d3e2e79e318029c1735682..b099685dcd6089e50df8fa48c98b449a655e152d 100644 (file)
@@ -545,16 +545,6 @@ my:
     confirm_email:
       button: အတည်ပြု
   messages:
-    inbox:
-      title: အဝင်စာ
-    messages_table:
-      from: မှ
-      to: သို့
-      subject: အကြောင်းအရာ
-      date: နေ့စွဲ
-    message_summary:
-      read_button: ဖတ်ပြီးကြောင်း မှတ်သားရန်
-      destroy_button: ဖျက်​ပါ​
     new:
       title: မက်ဆေ့ ပို့ရန်
     create:
@@ -562,15 +552,28 @@ my:
     no_such_message:
       title: ယင်းကဲ့သို့မက်ဆေ့မရှိပါ
       heading: ယင်းကဲ့သို့မက်ဆေ့မရှိပါ
-    outbox:
-      title: အထွက်စာ
     show:
       title: မက်ဆေ့ ဖတ်ရန်
       reply_button: အကြောင်းပြန်ရန်
       destroy_button: ဖျက်​ပါ​
       back: နောက်သို့
-    sent_message_summary:
-      destroy_button: ဖျက်​ပါ​
+    mailboxes:
+      messages_table:
+        from: မှ
+        to: သို့
+        subject: အကြောင်းအရာ
+        date: နေ့စွဲ
+      message:
+        read_button: ဖတ်ပြီးကြောင်း မှတ်သားရန်
+        destroy_button: ဖျက်​ပါ​
+    inboxes:
+      show:
+        title: အဝင်စာ
+    outboxes:
+      show:
+        title: အထွက်စာ
+      message:
+        destroy_button: ဖျက်​ပါ​
   passwords:
     new:
       title: စကားဝှက် ပျောက်ဆုံးသွား
index aa4f700e5ee288815537b42056291e8b57e784ac..416aed7ba0b2bf980308cb9fe16285723747c514 100644 (file)
@@ -1478,7 +1478,6 @@ nb:
       success: Kontoen din er bekreftet - takk for at du registrerte deg.
       already active: Denne kontoen har allerede blitt bekreftet.
       unknown token: Denne bekreftelseskoden finnes ikke eller har utløpt.
-      click_here: trykk her
     confirm_resend:
       failure: Fant ikke brukeren %{name}.
     confirm_email:
@@ -1489,29 +1488,6 @@ nb:
       failure: En e-postadresse er allerede bekreftet med denne nøkkelen.
       unknown_token: Denne bekreftelseskoden finnes ikke eller har utløpt.
   messages:
-    inbox:
-      title: Innboks
-      messages: Du har %{new_messages} og %{old_messages}
-      new_messages:
-        one: '%{count} ny melding'
-        other: '%{count} nye meldinger'
-      old_messages:
-        one: '%{count} gammel melding'
-        other: '%{count} gamle meldinger'
-      no_messages_yet_html: Du har ingen meldinger ennå. Kanskje du kan prøve å komme
-        i kontakt med %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk som kartlegger i nærheten
-    messages_table:
-      from: Fra
-      to: Til
-      subject: Emne
-      date: Dato
-      actions: Handlinger
-    message_summary:
-      unread_button: Marker som ulest
-      read_button: Marker som lest
-      destroy_button: Slett
-      unmute_button: Flytt til innboksen
     new:
       title: Send melding
       send_message_to_html: Send en ny melding til %{name}
@@ -1524,19 +1500,6 @@ nb:
       title: Ingen melding funnet
       heading: Ingen melding funnet
       body: Det er ingen melding med den ID-en.
-    outbox:
-      title: Utboks
-      messages:
-        one: Du har %{count} sendt melding
-        other: Du har %{count} sendte meldinger
-      no_sent_messages_html: Du har ikke sendt noen meldinger ennå. Hvorfor ikke bli
-        kjent med noen %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk i nærheten som lager kart
-    muted:
-      title: Dempede meldinger
-      messages:
-        one: '%{count} dempet melding'
-        other: Du har %{count} dempede meldinger
     reply:
       wrong_user: Du er logget inn som «%{user}», men meldingen du ønsker å svare
         på ble ikke sendt til den brukeren. Logg inn som korrekt bruker for å svare.
@@ -1548,12 +1511,6 @@ nb:
       back: Tilbake
       wrong_user: Du er logget inn som «%{user}», men meldingen du ønsker å lese ble
         ikke sendt fra eller til den brukeren. Logg inn som korrekt bruker for å lese.
-    sent_message_summary:
-      destroy_button: Slett
-    heading:
-      my_inbox: Min innboks
-      my_outbox: Min utboks
-      muted_messages: Dempede meldinger
     mark:
       as_read: Melding markert som lest
       as_unread: Melding markert som ulest
@@ -1562,6 +1519,52 @@ nb:
       error: Meldingen kunne ikke flyttes til innboksen.
     destroy:
       destroyed: Melding slettet
+    mailboxes:
+      heading:
+        my_inbox: Min innboks
+        my_outbox: Min utboks
+        muted_messages: Dempede meldinger
+      messages_table:
+        from: Fra
+        to: Til
+        subject: Emne
+        date: Dato
+        actions: Handlinger
+      message:
+        unread_button: Marker som ulest
+        read_button: Marker som lest
+        destroy_button: Slett
+        unmute_button: Flytt til innboksen
+    inboxes:
+      show:
+        title: Innboks
+        messages: Du har %{new_messages} og %{old_messages}
+        new_messages:
+          one: '%{count} ny melding'
+          other: '%{count} nye meldinger'
+        old_messages:
+          one: '%{count} gammel melding'
+          other: '%{count} gamle meldinger'
+        no_messages_yet_html: Du har ingen meldinger ennå. Kanskje du kan prøve å
+          komme i kontakt med %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk som kartlegger i nærheten
+    muted_inboxes:
+      show:
+        title: Dempede meldinger
+        messages:
+          one: '%{count} dempet melding'
+          other: Du har %{count} dempede meldinger
+    outboxes:
+      show:
+        title: Utboks
+        messages:
+          one: Du har %{count} sendt melding
+          other: Du har %{count} sendte meldinger
+        no_sent_messages_html: Du har ikke sendt noen meldinger ennå. Hvorfor ikke
+          bli kjent med noen %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk i nærheten som lager kart
+      message:
+        destroy_button: Slett
   passwords:
     new:
       title: Glemt passord
@@ -2144,6 +2147,16 @@ nb:
       report: Rapporter denne brukeren
     go_public:
       flash success: Alle dine redigeringer er nå offentlig, og du har lov til å redigere.
+    issued_blocks:
+      show:
+        title: Blokkeringer av %{name}
+        heading_html: Liste over blokkeringer utført av %{name}
+        empty: '%{name} har ikke blokkert noen ennå.'
+    received_blocks:
+      show:
+        title: Blokkeringer av %{name}
+        heading_html: Liste over blokkeringer av %{name}
+        empty: '%{name} har ikke blitt blokkert ennå.'
     lists:
       show:
         title: Brukere
@@ -2232,14 +2245,6 @@ nb:
         years:
           one: ett år
           other: '%{count} år'
-    blocks_on:
-      title: Blokkeringer av %{name}
-      heading_html: Liste over blokkeringer av %{name}
-      empty: '%{name} har ikke blitt blokkert ennå.'
-    blocks_by:
-      title: Blokkeringer av %{name}
-      heading_html: Liste over blokkeringer utført av %{name}
-      empty: '%{name} har ikke blokkert noen ennå.'
     show:
       title: '%{block_on} blokkert av %{block_by}'
       heading_html: '%{block_on} blokkert av %{block_by}'
@@ -2311,7 +2316,6 @@ nb:
       center_marker: Sentrer kart på markøren
       paste_html: Lim inn HTML for å inkluderes på webside
       view_larger_map: Vis større kart
-      only_standard_layer: Kun standardlaget kan eksporteres som bilde
     embed:
       report_problem: Rapporter et problem
     key:
index ad41557d12cde52b9ae27223cbee122a7ddb65b8..0bb10e7a24cf347502d615552cee4012f7235afc 100644 (file)
@@ -406,32 +406,35 @@ nds:
     lost_password:
       greeting: Moin,
   messages:
-    inbox:
-      title: Postfack Ingang
-      people_mapping_nearby: Koortenmakers in de Neegd
-    messages_table:
-      from: Von
-      to: An
-      date: Datum
-    message_summary:
-      unread_button: as ‚noch nich leest‘ kennteken
-      read_button: as ‚leest‘ kennteken
-      destroy_button: Wegdoon
     new:
       title: Naricht sennen
       back_to_inbox: Trüch na’t Postfack Ingang
     create:
       message_sent: Naricht afsennt
-    outbox:
-      title: Postfack Utgang
     show:
       reply_button: Antern
-    sent_message_summary:
-      destroy_button: Wegdoon
-    heading:
-      my_inbox: Mien Postfack Ingang
     destroy:
       destroyed: Naricht wegdaan
+    mailboxes:
+      heading:
+        my_inbox: Mien Postfack Ingang
+      messages_table:
+        from: Von
+        to: An
+        date: Datum
+      message:
+        unread_button: as ‚noch nich leest‘ kennteken
+        read_button: as ‚leest‘ kennteken
+        destroy_button: Wegdoon
+    inboxes:
+      show:
+        title: Postfack Ingang
+        people_mapping_nearby: Koortenmakers in de Neegd
+    outboxes:
+      show:
+        title: Postfack Utgang
+      message:
+        destroy_button: Wegdoon
   passwords:
     new:
       title: Passwoord vergeten
index 66e59d92cb700d5afc8ac212e216dabe05136dc0..27a721ceabd7c9964eb2c43359ba7d67651b5f5b 100644 (file)
@@ -1081,17 +1081,6 @@ ne:
       success: तपाईंको इमेल निश्चित गर्नुहोस्, ग्राह्याताको लागि धन्यवाद!
       failure: यो टोकन को साथम एक इमेल पहिले नै निश्चित गरिसकिएको छ।
   messages:
-    inbox:
-      title: इनबक्स
-    messages_table:
-      from: बाट
-      to: लाई
-      subject: विषय
-      date: मिति
-    message_summary:
-      unread_button: नपढिएको रूपमा चिनो लगाउनुहोस्
-      read_button: पढिएको रूपमा चिनो लगाउनुहोस्
-      destroy_button: हटाउनुहोस्
     new:
       title: सान्देस पठाउ
       send_message_to_html: '%{name} लाई नयाँ सन्देश पठाउनुहोस्'
@@ -1101,20 +1090,34 @@ ne:
     no_such_message:
       title: त्यस्तो कुनै पनि सन्देश छैन
       heading: त्यस्तो कुनै पनि सन्देश छैन
-    outbox:
-      title: आउटबक्स
     show:
       title: सन्देश पढ्नुहोस्
       reply_button: जवाफ दिने
       unread_button: नपढिएको रूपमा चिनो लगाउनुहोस्
       destroy_button: मेट्नुहोस्
       back: पछाडि
-    sent_message_summary:
-      destroy_button: हटाउनुहोस्
-    heading:
-      my_inbox: मेरो इनबक्स
     destroy:
       destroyed: सन्देश मेटियो
+    mailboxes:
+      heading:
+        my_inbox: मेरो इनबक्स
+      messages_table:
+        from: बाट
+        to: लाई
+        subject: विषय
+        date: मिति
+      message:
+        unread_button: नपढिएको रूपमा चिनो लगाउनुहोस्
+        read_button: पढिएको रूपमा चिनो लगाउनुहोस्
+        destroy_button: हटाउनुहोस्
+    inboxes:
+      show:
+        title: इनबक्स
+    outboxes:
+      show:
+        title: आउटबक्स
+      message:
+        destroy_button: हटाउनुहोस्
   passwords:
     new:
       title: पासवर्ड बिर्सियो
index 493bdb9c89948345751a80d6d61f6dc590c014d0..ec5f125580b02e40510bac5598b1ac6a4ab25304 100644 (file)
@@ -1878,8 +1878,6 @@ nl:
       success: Uw registratie is bevestigd. Dank u wel voor het registreren!
       already active: Dit account is al bevestigd.
       unknown token: De opgegeven bevestigingscode is verlopen of bestaat niet.
-      resend_html: Als u wilt dat wij de bevestigingsmail opnieuw verzenden, %{reconfirm_link}.
-      click_here: klik hier
     confirm_resend:
       failure: De gebruiker %{name} is niet gevonden.
     confirm_email:
@@ -1897,29 +1895,6 @@ nl:
         zorg er dan voor dat u %{sender} op de witte lijst plaatst, aangezien we niet
         kunnen reageren op bevestigingsverzoeken.
   messages:
-    inbox:
-      title: Postvak IN
-      messages: U hebt %{new_messages} en %{old_messages}
-      new_messages:
-        one: '%{count} nieuw bericht'
-        other: '%{count} nieuwe berichten'
-      old_messages:
-        one: '%{count} oud bericht'
-        other: '%{count} oude berichten'
-      no_messages_yet_html: U hebt nog geen berichten. Waarom legt u geen contact
-        met %{people_mapping_nearby_link}?
-      people_mapping_nearby: nabije kaartmakers
-    messages_table:
-      from: Van
-      to: Aan
-      subject: Onderwerp
-      date: Datum
-      actions: Handelingen
-    message_summary:
-      unread_button: Markeren als ongelezen
-      read_button: Markeren als gelezen
-      destroy_button: Verwijderen
-      unmute_button: Naar Inbox verplaatsen
     new:
       title: Bericht verzenden
       send_message_to_html: Een persoonlijk bericht naar %{name} verzenden
@@ -1932,19 +1907,6 @@ nl:
       title: Dat bericht bestaat niet
       heading: Bericht bestaat niet
       body: Er is geen bericht met dat ID.
-    outbox:
-      title: Postvak UIT
-      messages:
-        one: U hebt één verzonden bericht
-        other: U hebt %{count} verzonden berichten
-      no_sent_messages_html: U hebt nog geen berichten verzonden. Waarom legt u geen
-        contact met %{people_mapping_nearby_link}?
-      people_mapping_nearby: nabije kaartmakers
-    muted:
-      title: Gedempte berichten
-      messages:
-        one: '%{count} verborgen bericht'
-        other: U hebt %{count} genegeerde berichten
     reply:
       wrong_user: U bent aangemeld als "%{user}", maar het bericht waarop u wilt antwoorden
         is niet aan die gebruiker gericht. Meld u aan als de juiste gebruiker om te
@@ -1958,12 +1920,6 @@ nl:
       wrong_user: |-
         U bent aangemeld als "%{user}", maar het bericht dat u wilt lezen is niet door die gebruiker gestuurd of aan die gebruiker gericht.
         Meld u aan als de juiste gebruiker om het te lezen.
-    sent_message_summary:
-      destroy_button: Verwijderen
-    heading:
-      my_inbox: Mijn Postvak IN
-      my_outbox: Mijn Postvak UIT
-      muted_messages: Gedempte berichten
     mark:
       as_read: Gemarkeerd als gelezen
       as_unread: Gemarkeerd als ongelezen
@@ -1972,6 +1928,52 @@ nl:
       error: Het bericht kon niet naar de Inbox worden verplaatst.
     destroy:
       destroyed: Het bericht is verwijderd
+    mailboxes:
+      heading:
+        my_inbox: Mijn Postvak IN
+        my_outbox: Mijn Postvak UIT
+        muted_messages: Gedempte berichten
+      messages_table:
+        from: Van
+        to: Aan
+        subject: Onderwerp
+        date: Datum
+        actions: Handelingen
+      message:
+        unread_button: Markeren als ongelezen
+        read_button: Markeren als gelezen
+        destroy_button: Verwijderen
+        unmute_button: Naar Inbox verplaatsen
+    inboxes:
+      show:
+        title: Postvak IN
+        messages: U hebt %{new_messages} en %{old_messages}
+        new_messages:
+          one: '%{count} nieuw bericht'
+          other: '%{count} nieuwe berichten'
+        old_messages:
+          one: '%{count} oud bericht'
+          other: '%{count} oude berichten'
+        no_messages_yet_html: U hebt nog geen berichten. Waarom legt u geen contact
+          met %{people_mapping_nearby_link}?
+        people_mapping_nearby: nabije kaartmakers
+    muted_inboxes:
+      show:
+        title: Gedempte berichten
+        messages:
+          one: '%{count} verborgen bericht'
+          other: U hebt %{count} genegeerde berichten
+    outboxes:
+      show:
+        title: Postvak UIT
+        messages:
+          one: U hebt één verzonden bericht
+          other: U hebt %{count} verzonden berichten
+        no_sent_messages_html: U hebt nog geen berichten verzonden. Waarom legt u
+          geen contact met %{people_mapping_nearby_link}?
+        people_mapping_nearby: nabije kaartmakers
+      message:
+        destroy_button: Verwijderen
   passwords:
     new:
       title: Wachtwoord vergeten
@@ -2762,6 +2764,28 @@ nl:
       wikipedia:
         title: Aanmelden met Wikipedia
         alt: Wikipedia-logo
+    share:
+      email:
+        title: Delen via e-mail
+        alt: E-mailpictogram
+      bluesky:
+        title: Delen via Bluesky
+        alt: Bluesky-pictogram
+      facebook:
+        title: Delen via Facebook
+        alt: Facebook-pictogram
+      linkedin:
+        title: Delen via LinkedIn
+        alt: LinkedIn-pictogram
+      mastodon:
+        title: Delen op Mastodon
+        alt: Mastodon-pictogram
+      telegram:
+        title: Delen op Telegram
+        alt: Telegram-pictogram
+      x:
+        title: Delen op X
+        alt: X-pictogram
   oauth:
     permissions:
       missing: U heeft niet toegestaan dat de toepassing toegang heeft tot dit kenmerk.
@@ -2974,6 +2998,27 @@ nl:
       report: Rapporteer deze Gebruiker
     go_public:
       flash success: Al uw bewerkingen zijn nu openbaar en u kunt bewerken.
+    issued_blocks:
+      show:
+        title: Blokkades door %{name}
+        heading_html: Lijst met blokkades door %{name}
+        empty: '%{name} heeft nog geen blokkades uitgevoerd.'
+    received_blocks:
+      show:
+        title: Blokkades voor %{name}
+        heading_html: Lijst met blokkades voor %{name}
+        empty: '%{name} is nog niet geblokkeerd geweest.'
+      edit:
+        title: Alle blokkeringen op %{block_on} intrekken
+        heading_html: Alle blokkeringen op %{block_on} intrekken
+        empty: '%{name} heeft geen actieve blokkeringen.'
+        confirm: Weet u zeker dat u %{active_blocks} wilt intrekken?
+        active_blocks:
+          one: '%{count} actieve blokkering'
+          other: '%{count} actieve blokkeringen'
+        revoke: Intrekken
+      destroy:
+        flash: Alle actieve blokkeringen zijn ingetrokken.
     lists:
       show:
         title: Gebruikers
@@ -3060,16 +3105,6 @@ nl:
       title: Gebruikersblokkades
       heading: Lijst met gebruikersblokkades
       empty: Er zijn nog geen blokkades ingesteld.
-    revoke_all:
-      title: Alle blokkeringen op %{block_on} intrekken
-      heading_html: Alle blokkeringen op %{block_on} intrekken
-      empty: '%{name} heeft geen actieve blokkeringen.'
-      confirm: Weet u zeker dat u %{active_blocks} wilt intrekken?
-      active_blocks:
-        one: '%{count} actieve blokkering'
-        other: '%{count} actieve blokkeringen'
-      revoke: Intrekken
-      flash: Alle actieve blokkeringen zijn ingetrokken.
     helper:
       time_future_html: Vervalt over %{time}.
       until_login: Actief totdat de gebruiker zich aanmeldt.
@@ -3101,14 +3136,6 @@ nl:
         read_html: gelezen op %{time}
         time_in_future_title: '%{time_absolute}; in %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blokkades voor %{name}
-      heading_html: Lijst met blokkades voor %{name}
-      empty: '%{name} is nog niet geblokkeerd geweest.'
-    blocks_by:
-      title: Blokkades door %{name}
-      heading_html: Lijst met blokkades door %{name}
-      empty: '%{name} heeft nog geen blokkades uitgevoerd.'
     show:
       title: '%{block_on} geblokkeerd door %{block_by}'
       heading_html: '%{block_on} geblokkeerd door %{block_by}'
@@ -3255,8 +3282,6 @@ nl:
       center_marker: Kaart centreren op de marker
       paste_html: Kopieer de HTML-code en voeg deze toe aan uw website
       view_larger_map: Grotere kaart weergeven
-      only_standard_layer: Alleen de lagen Standaard, Fietskaart en Transportkaart
-        kunnen worden geëxporteerd als afbeelding
     embed:
       report_problem: Een probleem melden
     key:
index 5c96e406c9ab456be2a154110c43764fcfd2957b..513b2592ec86c49f07af4bf2e1935eb76e6740ba 100644 (file)
@@ -1595,8 +1595,6 @@ nn:
       success: Kontoen din er stadfesta - takk for at du registrerte deg.
       already active: Denne kontoen har allereie stadfesta.
       unknown token: Den koda ser ikkje ut til å eksistere.
-      resend_html: Viss du treng at vi sender stadfestings-e-posten på nytt, %{reconfirm_link}
-      click_here: klikka her
     confirm_resend:
       failure: Fann ikkje brukaren %{name}.
     confirm_email:
@@ -1614,27 +1612,6 @@ nn:
         om stadfesting, ver sikker på at %{sender} står på kvitlista, sidan vi ikkje
         kan svara på slike førespurnadar.
   messages:
-    inbox:
-      title: Mottekne
-      messages: Du har %{new_messages} og %{old_messages}
-      new_messages:
-        one: '%{count} ny melding'
-        other: '%{count} nye meldingar'
-      old_messages:
-        one: '%{count} gamal melding'
-        other: '%{count} gamle meldingar'
-      no_messages_yet_html: Du har ingen meldingar endå. Kanskje du kan prøve å kome
-        i kontakt med %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk i nærleiken som lagar kart
-    messages_table:
-      from: Frå
-      to: Til
-      subject: Emne
-      date: Dato
-    message_summary:
-      unread_button: Marker som ulese
-      read_button: Marker som lese
-      destroy_button: Slett
     new:
       title: Send melding
       send_message_to_html: Send ei ny melding til %{name}
@@ -1647,14 +1624,6 @@ nn:
       title: Inga melding funne
       heading: Inga melding funne
       body: Det er inga melding med den ID-en.
-    outbox:
-      title: Sende
-      messages:
-        one: Du har %{count} send melding
-        other: Du har %{count} sende meldingar
-      no_sent_messages_html: Du har ikkje sendt nokre meldingar endå. Kanskje du kan
-        prøve å kome i kontakt med %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk i nærleiken som lagar kart
     reply:
       wrong_user: Du er logga inn som «%{user}», men meldinga du ynskjer å svare på
         vart ikkje send til den brukaren. Logg inn som korrekt brukar for å svare.
@@ -1666,16 +1635,48 @@ nn:
       back: Tilbake
       wrong_user: Du er logga inn som «%{user}», men meldinga du ynskjer å lese vart
         ikkje send til den brukaren. Logg inn som korrekt brukar for å lese.
-    sent_message_summary:
-      destroy_button: Slett
-    heading:
-      my_inbox: Mottekne
-      my_outbox: Sende
     mark:
       as_read: Melding markert som lese
       as_unread: Melding markert som ulese
     destroy:
       destroyed: Melding sletta
+    mailboxes:
+      heading:
+        my_inbox: Mottekne
+        my_outbox: Sende
+      messages_table:
+        from: Frå
+        to: Til
+        subject: Emne
+        date: Dato
+      message:
+        unread_button: Marker som ulese
+        read_button: Marker som lese
+        destroy_button: Slett
+    inboxes:
+      show:
+        title: Mottekne
+        messages: Du har %{new_messages} og %{old_messages}
+        new_messages:
+          one: '%{count} ny melding'
+          other: '%{count} nye meldingar'
+        old_messages:
+          one: '%{count} gamal melding'
+          other: '%{count} gamle meldingar'
+        no_messages_yet_html: Du har ingen meldingar endå. Kanskje du kan prøve å
+          kome i kontakt med %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk i nærleiken som lagar kart
+    outboxes:
+      show:
+        title: Sende
+        messages:
+          one: Du har %{count} send melding
+          other: Du har %{count} sende meldingar
+        no_sent_messages_html: Du har ikkje sendt nokre meldingar endå. Kanskje du
+          kan prøve å kome i kontakt med %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk i nærleiken som lagar kart
+      message:
+        destroy_button: Slett
   passwords:
     new:
       title: Gløymt passord
@@ -2317,6 +2318,16 @@ nn:
     go_public:
       flash success: Alle redigeringane dine er no offentleg, og du har lov til å
         redigere.
+    issued_blocks:
+      show:
+        title: Blokkeringar av %{name}
+        heading_html: Liste over blokkeringar av %{name}
+        empty: '%{name} har ikkje blokkert nokon enno.'
+    received_blocks:
+      show:
+        title: Blokkeringar av %{name}
+        heading_html: Liste over blokkeringar av %{name}
+        empty: '%{name} har ikkje vorte blokkert enno.'
     lists:
       show:
         title: Brukarar
@@ -2382,14 +2393,6 @@ nn:
         hours:
           one: 1 time
           other: '%{count} timar'
-    blocks_on:
-      title: Blokkeringar av %{name}
-      heading_html: Liste over blokkeringar av %{name}
-      empty: '%{name} har ikkje vorte blokkert enno.'
-    blocks_by:
-      title: Blokkeringar av %{name}
-      heading_html: Liste over blokkeringar av %{name}
-      empty: '%{name} har ikkje blokkert nokon enno.'
     show:
       title: '%{block_on} blokkert av %{block_by}'
       heading_html: '%{block_on} blokkert av %{block_by}'
@@ -2454,7 +2457,6 @@ nn:
       center_marker: Sentrer kartet på markøren
       paste_html: Lim inn HTML for å publisere på ei nettside
       view_larger_map: Vis større kart
-      only_standard_layer: Berre standardlaget kan eksporterast som bilde
     embed:
       report_problem: Rapporter eit problem
     key:
index ca1da06c11e7af181f21c1a466c2db63e0248e54..f279f3ff924c056504df9b5756450d61f5ada810 100644 (file)
@@ -1199,21 +1199,6 @@ nqo:
       failure: ߢ:ߞߏ߲ߘߏ ߘߏ߫ ߓߘߊ߫ ߟߊߛߙߋߦߊ߫ ߖߐߟߐ߲ߞߐ (ߥߏߘߌߜߊߠߊ߲) ߣߌ߲߬ ߠߊ߫ ߞߘߐ߬ߡߊ߲߫.
       unknown_token: ߟߊ߬ߛߙߋ߬ߦߊ߬ߟߌ߬ ߘߏߞߊ߲ ߣߌ߲߬ ߛߕߊ ߓߘߊ߫ ߝߊ߫ ߥߟߴߊ߬ ߕߴߦߋ߲߬.
   messages:
-    inbox:
-      title: ߗߋߛߓߍ߫ ߟߊߣߊ߬ߣߍ߲
-      messages: '%{new_messages} ߟߎ߬ ߣߌ߫ %{old_messages} ߠߎ߬ ߦߴߌ ߓߟߏ߫'
-      no_messages_yet_html: ߗߋߛߓߍ߫ ߕߴߌ ߓߟߏ߫ ߡߎߣߎ߲߬. ߡߎ߲߬ߠߊ߫ ߌ ߡߊ߫ ߕߘߍ߬ ߡߊ߰ߒ߬ߠߊ߬ߟߌ
-        ߘߐ߫  %{people_mapping_nearby_link} ߟߊ߫؟
-      people_mapping_nearby: ߛߌ߰ߢߐ߰ߡߊ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߔߊ߬ߔߘߊ߬ߦߊ ߞߊ߲߬
-    messages_table:
-      from: ߞߊ߬ ߝߘߊ߫
-      to: ߞߊ߬ ߕߊ߯
-      subject: ߝߐߡߊ
-      date: ߕߎ߬ߡߊ߬ߘߊ
-    message_summary:
-      unread_button: ߊ߬ ߞߍ߫ ߞߊ߬ߙߊ߲߬ߓߊߟߌ ߘߌ߫
-      read_button: ߊ߬ ߣߐ߬ߣߐ߫ ߘߐ߬ߞߊ߬ߙߊ߲߬ߣߍ߲ ߘߌ߫
-      destroy_button: ߊ߬ ߖߏ߬ߛߌ߬
     new:
       title: ߗߋߛߓߍ ߗߋ߫
       send_message_to_html: ߗߋߛߓߍ߫ ߞߎߘߊ ߘߏ߫ ߗߋ߫ %{name} ߡߊ߬
@@ -1226,11 +1211,6 @@ nqo:
       title: ߗߋߛߓߍ߫ ߛߎ߮ ߏ߬ ߕߴߦߋ߲߬
       heading: ߗߋߛߓߍ߫ ߛߎ߮ ߏ߬ ߕߴߦߋ߲߬
       body: ߤߊߞߍ߬ߕߏ߫߸ ߗߋߛߓߍ߫ ߛߌ߫ ߕߍ߫ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߏ߬ ߟߊ߫.
-    outbox:
-      title: ߗߋߟߌ߫ ߞߏ߲ߘߏ
-      no_sent_messages_html: ߗߋߛߓߍ߫ ߗߋߣߍ߲߫ ߕߴߌ ߓߟߏ߫ ߡߎߣߎ߲߬. ߡߎ߲߬ߠߊ߫ ߌ ߡߊ߫ ߕߘߍ߬ ߓߌ߬ߟߊ߬ߒ߬ߡߊ߬ߟߌ
-        ߘߐ߫ %{people_mapping_nearby_link}؟
-      people_mapping_nearby: ߡߐ߱ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߔߊ߬ߔߘߊ߬ߦߊ ߞߊ߲߬ ߌ ߕߙߐߝߍ߬
     reply:
       wrong_user: ߌ ߜߊ߲߬ߞߎ߲߬ߣߍ߲߬ ߦߋ߫ %{user} ߟߋ߬ ߘߌ߫ ߒ߬ߞߊ߬ ߌ ߢߌ߬ߣߊ߬ߣߍ߲߫ ߗߋߛߓߍ ߡߍ߲  ߖߋ߬ߓߌ߬ߞߏ
         ߡߊ߬߸ ߏ߬ ߗߋߣߍ߲߫ ߕߍ߫ ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ ߏ߬ ߡߊ߬. ߌ ߜߊ߲߬ߞߎ߲߫ ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ߫ ߖߐ߲ߖߐ߲ ߘߌ߫
@@ -1244,16 +1224,39 @@ nqo:
       wrong_user: ߌ ߜߊ߲߬ߞߎ߲߬ߣߍ߲߬ ߦߋ߫ %{user} ߟߋ߬ ߘߌ߫ ߒ߬ߞߊ߬ ߌ ߢߌ߬ߣߊ߬ߣߍ߲߫ ߗߋߛߓߍ ߡߍ߲
         ߘߐߞߊ߬ߙߊ߲߬ ߞߏ ߡߊ߬߸ ߏ߬ ߗߋߣߍ߲߫ ߕߴߏ߬ ߓߟߏ߫ ߥߟߊ߫ ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ ߏ߬ ߡߊ߬. ߌ ߜߊ߲߬ߞߎ߲߫
         ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ߫ ߖߐ߲ߖߐ߲ ߘߌ߫ ߖߊ߰ߣߌ߲߫ ߛߴߌ ߘߌ߫ ߛߴߊ߬ ߘߐߞߊ߬ߙߊ߲߬ ߠߊ߫.
-    sent_message_summary:
-      destroy_button: ߊ߬ ߖߏ߬ߛߌ߬
-    heading:
-      my_inbox: ߒ ߠߊ߫ ߞߏ߲߬ߘߏ ߞߣߐߟߊ
-      my_outbox: ߒ ߠߊ߫ ߗߋߛߓߍ߫ ߗߋߣߍ߲
     mark:
       as_read: ߗߋߛߓߍ ߓߘߊ߫ ߣߐ߫ߣߐ߫ ߘߐ߬ߞߊ߬ߙߊ߲߬ߣߍ߲ ߘߌ߫
       as_unread: ߗߋߛߓߍ ߓߘߊ߫ ߣߐ߬ߣߐ߬ ߞߊ߬ߙߊ߲߬ߓߊߟߌ ߘߌ߫
     destroy:
       destroyed: ߗߋߛߓߍ ߓߘߊ߫ ߖߏ߬ߛߌ߫
+    mailboxes:
+      heading:
+        my_inbox: ߒ ߠߊ߫ ߞߏ߲߬ߘߏ ߞߣߐߟߊ
+        my_outbox: ߒ ߠߊ߫ ߗߋߛߓߍ߫ ߗߋߣߍ߲
+      messages_table:
+        from: ߞߊ߬ ߝߘߊ߫
+        to: ߞߊ߬ ߕߊ߯
+        subject: ߝߐߡߊ
+        date: ߕߎ߬ߡߊ߬ߘߊ
+      message:
+        unread_button: ߊ߬ ߞߍ߫ ߞߊ߬ߙߊ߲߬ߓߊߟߌ ߘߌ߫
+        read_button: ߊ߬ ߣߐ߬ߣߐ߫ ߘߐ߬ߞߊ߬ߙߊ߲߬ߣߍ߲ ߘߌ߫
+        destroy_button: ߊ߬ ߖߏ߬ߛߌ߬
+    inboxes:
+      show:
+        title: ߗߋߛߓߍ߫ ߟߊߣߊ߬ߣߍ߲
+        messages: '%{new_messages} ߟߎ߬ ߣߌ߫ %{old_messages} ߠߎ߬ ߦߴߌ ߓߟߏ߫'
+        no_messages_yet_html: ߗߋߛߓߍ߫ ߕߴߌ ߓߟߏ߫ ߡߎߣߎ߲߬. ߡߎ߲߬ߠߊ߫ ߌ ߡߊ߫ ߕߘߍ߬ ߡߊ߰ߒ߬ߠߊ߬ߟߌ
+          ߘߐ߫  %{people_mapping_nearby_link} ߟߊ߫؟
+        people_mapping_nearby: ߛߌ߰ߢߐ߰ߡߊ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߔߊ߬ߔߘߊ߬ߦߊ ߞߊ߲߬
+    outboxes:
+      show:
+        title: ߗߋߟߌ߫ ߞߏ߲ߘߏ
+        no_sent_messages_html: ߗߋߛߓߍ߫ ߗߋߣߍ߲߫ ߕߴߌ ߓߟߏ߫ ߡߎߣߎ߲߬. ߡߎ߲߬ߠߊ߫ ߌ ߡߊ߫ ߕߘߍ߬ ߓߌ߬ߟߊ߬ߒ߬ߡߊ߬ߟߌ
+          ߘߐ߫ %{people_mapping_nearby_link}؟
+        people_mapping_nearby: ߡߐ߱ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߔߊ߬ߔߘߊ߬ߦߊ ߞߊ߲߬ ߌ ߕߙߐߝߍ߬
+      message:
+        destroy_button: ߊ߬ ߖߏ߬ߛߌ߬
   passwords:
     new:
       title: ߓߣߐ߬ ߓߘߊ߫ ߞߍ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߘߐ߫
index f53b410cf1f53ba7b6f099436945d4a19ea12f2c..4bbc6e60af850eb18956561abbac6960b58ff820 100644 (file)
@@ -1629,27 +1629,6 @@ oc:
         ficha.
       unknown_token: Lo còde de confirmacion a expirat o existís pas.
   messages:
-    inbox:
-      title: Bóstia de recepcion
-      messages: Avètz %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} messatge novèl'
-        other: '%{count} messatges novèls'
-      old_messages:
-        one: '%{count} ancian messatge'
-        other: '%{count} ancians messatges'
-      no_messages_yet_html: Actualament, avètz pas cap de messatge. Perqué entratz
-        pas en contacte amb qualques %{people_mapping_nearby_link} ?
-      people_mapping_nearby: personas pròcha de vos
-    messages_table:
-      from: De
-      to: A
-      subject: Subjècte
-      date: Data
-    message_summary:
-      unread_button: Marcar coma pas legit
-      read_button: Marcar coma legit
-      destroy_button: Suprimir
     new:
       title: Mandar un messatge
       send_message_to_html: Mandar un messatge novèl a %{name}
@@ -1662,14 +1641,6 @@ oc:
       title: Messatge introbable
       heading: Messatge introbable
       body: O planhèm, i a pas cap de messatge amb aqueste identificant.
-    outbox:
-      title: Bóstia de mandadís
-      messages:
-        one: Avètz %{count} messatge mandat
-        other: Avètz %{count} messatges mandats
-      no_sent_messages_html: Avètz pas encara mandat cap de messatge. Perqué entrar
-        pas en contacte amb qualques %{people_mapping_nearby_link} ?
-      people_mapping_nearby: personas pròcha de vos
     reply:
       wrong_user: Sètz identificat(-ada) coma « %{user} » mas lo messatge al qual
         volètz respondre es pas estat enviat a aqueste utilizaire. Connectatz-vos
@@ -1683,16 +1654,48 @@ oc:
       wrong_user: Sètz identificat(-ada) coma « %{user} » mas lo messatge qu'ensajatz
         de legir es pas estat enviat a vos o a aqueste utilizaire. Connectatz-vos
         amb l'identificant corrècte per lo poder legir.
-    sent_message_summary:
-      destroy_button: Suprimir
-    heading:
-      my_inbox: Ma bóstia de recepcion
-      my_outbox: Mon mandador
     mark:
       as_read: Messatge marcat coma legit
       as_unread: Messatge marcat coma pas legit
     destroy:
       destroyed: Messatge suprimit
+    mailboxes:
+      heading:
+        my_inbox: Ma bóstia de recepcion
+        my_outbox: Mon mandador
+      messages_table:
+        from: De
+        to: A
+        subject: Subjècte
+        date: Data
+      message:
+        unread_button: Marcar coma pas legit
+        read_button: Marcar coma legit
+        destroy_button: Suprimir
+    inboxes:
+      show:
+        title: Bóstia de recepcion
+        messages: Avètz %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} messatge novèl'
+          other: '%{count} messatges novèls'
+        old_messages:
+          one: '%{count} ancian messatge'
+          other: '%{count} ancians messatges'
+        no_messages_yet_html: Actualament, avètz pas cap de messatge. Perqué entratz
+          pas en contacte amb qualques %{people_mapping_nearby_link} ?
+        people_mapping_nearby: personas pròcha de vos
+    outboxes:
+      show:
+        title: Bóstia de mandadís
+        messages:
+          one: Avètz %{count} messatge mandat
+          other: Avètz %{count} messatges mandats
+        no_sent_messages_html: Avètz pas encara mandat cap de messatge. Perqué entrar
+          pas en contacte amb qualques %{people_mapping_nearby_link} ?
+        people_mapping_nearby: personas pròcha de vos
+      message:
+        destroy_button: Suprimir
   passwords:
     new:
       title: Senhal perdut
@@ -2188,6 +2191,16 @@ oc:
       delete_user: Suprimir aqueste utilizaire
       confirm: Confirmar
       report: Denonciatz aquel usatgièr
+    issued_blocks:
+      show:
+        title: Blocatges per %{name}
+        heading_html: Lista dels blocatges per %{name}
+        empty: '%{name} a pas encara efectuat cap de blocatge.'
+    received_blocks:
+      show:
+        title: Blocatges de %{name}
+        heading_html: Lista dels blocatges sus %{name}
+        empty: '%{name} es pas encara estat blocat.'
     lists:
       show:
         title: Utilizaires
@@ -2264,14 +2277,6 @@ oc:
         years:
           one: 1 an
           other: '%{count} ans'
-    blocks_on:
-      title: Blocatges de %{name}
-      heading_html: Lista dels blocatges sus %{name}
-      empty: '%{name} es pas encara estat blocat.'
-    blocks_by:
-      title: Blocatges per %{name}
-      heading_html: Lista dels blocatges per %{name}
-      empty: '%{name} a pas encara efectuat cap de blocatge.'
     show:
       title: '%{block_on} blocat per %{block_by}'
       heading_html: '%{block_on} blocat per %{block_by}'
@@ -2342,7 +2347,6 @@ oc:
       center_marker: Centrar la mapa sul marcador
       paste_html: Pegatz lo còdi HTML a incorporar dins un site web.
       view_larger_map: Mostrar una mapa pus granda
-      only_standard_layer: Sola la jaça estàndard se pòt exportar coma imatge
     embed:
       report_problem: Senhalar un problèma
     key:
index 5939660f7d87cd2a86a50154e0681ef42ff2596b..b270fd4789dbb40135192fd5eeba3040b3226aa9 100644 (file)
@@ -63,6 +63,7 @@ pa:
       message: ਸੁਨੇਹਾ
       node: ਨੋਡ
       node_tag: ਨੋਡ ਟੈਗ
+      note: ਧਿਆਨ ਦਿਓ
       old_node: ਪੁਰਾਣੀ ਨੋਡ
       old_node_tag: ਪੁਰਾਣਾ ਨੋਡ ਟੈਗ
       old_relation: ਪੁਰਾਣਾ ਸਬੰਧ
@@ -75,7 +76,7 @@ pa:
       relation_member: ਸਬੰਧ ਮੈਂਬਰ
       relation_tag: ਸਬੰਧ ਟੈਗ
       report: ਇਤਲਾਹ ਦਿਓ
-      session: à¨¸à©\88ਸ਼ਨ
+      session: à¨\95ਾਰà¨\9cà¨\95ਾਲ
       trace: ਖੁਰਾ-ਖੋਜ
       tracepoint: ਖੁਰਾ-ਖੋਜ ਥਾਂ
       tracetag: ਟਰੇਸ ਨਿਸ਼ਾਨ
@@ -104,7 +105,7 @@ pa:
         user: ਵਰਤੋਂਕਾਰ
         title: ਵਿਸ਼ਾ
         body: ਮੁੱਖ ਭਾਗ
-        latitude: à¨\85à¨\95ਸ਼ਾà¨\82ਸ਼
+        latitude: à¨µà¨¿à¨¥à¨\95ਾਰ
         longitude: ਲੰਬਕਾਰ
         language_code: ਬੋਲੀ
       doorkeeper/application:
@@ -120,7 +121,7 @@ pa:
         visible: ਵਿਖਣ-ਯੋਗ
         name: ਫ਼ਾਈਲ ਦਾ ਨਾਂ
         size: ਅਕਾਰ
-        latitude: à¨\85à¨\95ਸ਼ਾà¨\82ਸ਼
+        latitude: à¨µà¨¿à¨¥à¨\95ਾਰ
         longitude: ਲੰਬਕਾਰ
         public: ਜਨਤਕ
         description: ਵੇਰਵਾ
@@ -145,8 +146,8 @@ pa:
         active: ਸਰਗਰਮ
         display_name: ਨਾਂ ਵਿਖਾਓ
         description: ਪ੍ਰੋਫਾਈਲ ਵੇਰਵਾ
-        home_lat: à¨\85à¨\95ਸ਼ਾà¨\82ਸ਼
-        home_lon: 'ਰੇਖਾਂਸ਼:'
+        home_lat: à¨µà¨¿à¨¥à¨\95ਾਰ
+        home_lon: ਲੰਬਕਾਰ
         languages: ਤਰਜੀਹੀ ਬੋਲੀਆਂ
         preferred_editor: ਤਰਜੀਹੀ ਸੰਪਾਦਕ
         pass_crypt: ਪਛਾਣ-ਸ਼ਬਦ
@@ -251,6 +252,8 @@ pa:
           ਖਾਤੇ ਨੂੰ ਮਿਟਾ ਸਕਦੇ ਹੋ। ਕਿਰਪਾ ਕਰਕੇ ਹੇਠ ਦਿੱਤੇ ਵੇਰਵਿਆਂ ਵੱਲ ਧਿਆਨ ਦਿਓ:'
         delete_profile: ਤੁਹਾਡੇ ਪ੍ਰੋਫਾਈਲ ਦੀ ਜਾਣਕਾਰੀ, ਜਿਸ ਵਿੱਚ ਤੁਹਾਡਾ ਅਵਤਾਰ, ਵੇਰਵਾ ਅਤੇ
           ਘਰ ਦੇ ਟਿਕਾਣੇ ਸ਼ਾਮਲ ਹੈ, ਨੂੰ ਮਿਦਾ ਦਿੱਤਾ ਜਾਵੇਗਾ।
+        delete_display_name: ਤੁਹਾਡੇ ਵਿਖਾਏ ਨਾਂ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਵੇਗਾ, ਅਤੇ ਦੂਜੇ ਖਾਤਿਆਂ
+          ਵੱਲੋਂ ਮੁੜ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ।
         retain_caveats: 'ਹਾਲਾਂਕਿ, ਤੁਹਾਡੇ ਬਾਰੇ ਕੁਝ ਜਾਣਕਾਰੀ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ''ਤੇ ਬਰਕਰਾਰ
           ਰੱਖੀ ਜਾਵੇਗੀ, ਭਾਵੇਂ ਤੁਹਾਡਾ ਖਾਤਾ ਮਿਟਾ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ:'
         retain_edits: ਨਕਸ਼ੇ ਦੇ ਭੰਡਾਰ ਵਿੱਚ ਤੁਹਾਡੇ ਸੰਪਾਦਨ, ਜੇ ਕੋਈ ਹਨ, ਨੂੰ ਬਰਕਰਾਰ ਰੱਖਿਆ
@@ -344,6 +347,9 @@ pa:
       title_html: 'ਰਿਸ਼ਤਾ: %{name}'
       history_title_html: 'ਰਿਸ਼ਤਾ ਇਤਿਹਾਸ: %{name}'
       members: ਜੀਅ
+      members_count:
+        one: '%{count} ਜੀਅ'
+        other: '%{count} ਜੀਅ'
     relation_member:
       entry_role_html: '%{type} %{name} %{role} ਵਜੋਂ'
       type:
@@ -351,7 +357,7 @@ pa:
         way: ਰਾਹ
         relation: ਸਬੰਧ
     containing_relation:
-      entry_role_html: ਸਬੰਧ %{relation_name} (%{relation_role} ਵਜੋਂ)
+      entry_role_html: '%{relation_name} (ਜਿਵੇਂ %{relation_role})'
     not_found:
       title: ਨਹੀਂ ਲੱਭਿਆ
       sorry: 'ਮਾਫ਼ ਕਰਨਾ, %{type} #%{id} ਲੱਭਿਆ ਨਹੀਂ ਜਾ ਸਕਿਆ।'
@@ -359,7 +365,7 @@ pa:
         node: ਨੋਡ
         way: ਰਾਹ
         relation: ਸਬੰਧ
-        changeset: à¨\9aà©\87à¨\82à¨\9c਼ਸà©\88ੱà¨\9f
+        changeset: à¨¤à¨¬à¨¦à©\80ਲà©\80-ਲà©\9cà©\80
         note: ਨੋਟ
     timeout:
       title: ਵਕਤ-ਖ਼ਤਮ ਹੋ ਗਿਆ ਦੀ ਗ਼ਲਤੀ
@@ -369,7 +375,7 @@ pa:
         node: ਨੋਡ
         way: ਰਾਹ
         relation: ਸਬੰਧ
-        changeset: à¨\9aà©\87à¨\82à¨\9c਼ਸà©\88ੱà¨\9f
+        changeset: à¨¤à¨¬à¨¦à©\80ਲà©\80-ਲà©\9cà©\80
         note: ਨੋਟ
     redacted:
       redaction: ਸੋਧ %{id}
@@ -385,7 +391,9 @@ pa:
       wiki_link:
         key: '%{key} ਟੈਗ ਲਈ ਵਿਕੀ ਵੇਰਵਾ ਸਫ਼ਾ'
         tag: '%{key} =%{value} ਟੈਗ ਲਈ ਵਿਕੀ ਵੇਰਵਾ ਸਫ਼ਾ'
+      wikidata_link: ਵਿਕੀਡਾਟਾ ਉੱਤੇ %{page} ਚੀਜ਼
       wikipedia_link: '%{page} ਲੇਖ ਵਿਕੀਪੀਡੀਆ ਉੱਤੇ'
+      wikimedia_commons_link: ਵਿਕੀਮੀਡੀਆ ਭਾਈਚਾਰਾ ਉੱਤੇ %{page} ਚੀਜ਼
       telephone_link: '%{phone_number} ਨੂੰ ਫੋਨ ਕਰੋ'
       colour_preview: ਰੰਗ %{colour_value} ਝਲਕ
       email_link: ਈਮੇਲ %{email}
@@ -415,6 +423,10 @@ pa:
       comment:
         comment: '%{author} ਵੱਲੋਂ ਤਬਦੀਲੀ-ਲੜੀਆਂ #%%{changeset_id} ਉੱਤੇ ਨਵੀਂ ਟਿੱਪਣੀ'
         commented_at_by_html: '%{when} %{user} ਵੱਲੋਂ ਨਵਿਆਓਣਾ ਕੀਤਾ ਗਿਆ'
+      show:
+        title_all: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ (OpenStreetMap) ਤਬਦੀਲੀ-ਲੜੀਆਂ ਦੀ ਗੱਲਬਾਤ
+        title_particular: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ (OpenStreetMap) ਤਬਦੀਲੀ-ਲੜੀਆਂ %{changeset_id}
+          ਦੀ ਗੱਲਬਾਤ
       timeout:
         sorry: ਮਾਫ਼ ਕਰਨਾ, ਤੁਹਾਡੇ ਦੁਆਰਾ ਬੇਨਤੀ ਕੀਤੀ ਤਬਦੀਲੀ-ਲੜੀਆਂ ਦੀਆਂ ਟਿੱਪਣੀਆਂ ਦੀ ਸੂਚੀ
           ਨੂੰ ਮੁੜ-ਪ੍ਰਾਪਤ ਕਰਨ ਵਿੱਚ ਬਹੁਤ ਲੰਮਾ ਸਮਾਂ ਲੱਗਿਆ ਹੈ।
@@ -494,6 +506,7 @@ pa:
     show:
       no_home_location_html: '%{edit_profile_link} ਅਤੇ ਨੇਡ਼ਲੇ ਵਰਤੋਂਕਾਰ ਨੂੰ ਵੇਖਣ ਲਈ
         ਆਪਣੇ ਘਰ ਦਾ ਟਿਕਾਣਾ ਕਾਇਮ ਕਰੋ।'
+      edit_your_profile: ਆਪਣਾ ਪ੍ਰੋਫਾਈਲ ਸੋਧੋ
       my friends: ਮੇਰੇ ਦੋਸਤ
       no friends: ਤੁਸੀਂ ਅਜੇ ਕੋਈ ਮਿੱਤਰ ਨਹੀਂ ਜੋੜਿਆ।
       nearby users: ਨੇੜੇ-ਤੇੜੇ ਦੇ ਹੋਰ ਵਰਤੋਂਕਾਰ
@@ -540,9 +553,8 @@ pa:
         ਕਿਰਪਾ ਕਰਕੇ ਆਪਣੇ ਸ਼ਬਦ-ਜੋੜ ਦੀ ਜਾਂਚ ਕਰੋ, ਜਾਂ ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਡੇ ਵੱਲੋਂ ਕਲਿੱਕ
         ਕੀਤੀ ਗਈ ਕੜੀ ਗਲਤ ਹੋਵੇ।
     diary_entry:
-      posted_by_html: |-
-        %{link_user} ਵੱਲੋਂ %{created} ਨੂੰ %{language_link} ਵਿੱਚ ਜੋੜਿਆ ਗਿਆ।
-        ਐਮ ਵੱਲੋਂ 10 ਨੂੰ ਪੰਜਾਬੀ ਵਿੱਚ ਪੋਸਟ ਕੀਤਾ ਗਿਆ।
+      posted_by_html: '%{link_user} ਵੱਲੋਂ %{created} ਨੂੰ %{language_link} ਵਿੱਚ ਜੋੜਿਆ
+        ਗਿਆ।'
       updated_at_html: ਆਖਰੀ ਵਾਰ %{updated} ਨੂੰ ਨਵਿਆਈਆ ਗਿਆ।
       comment_link: ਇਸ ਇੰਦਰਾਜ 'ਤੇ ਟਿੱਪਣੀ ਕਰੋ
       reply_link: ਲੇਖਕ ਨੂੰ ਸੁਨੇਹਾ ਭੇਜੋ
@@ -593,6 +605,23 @@ pa:
     new:
       heading: ਹੇਠ ਲਿਖੇ ਰੋਜ਼ਨਾਮਚਾ ਇੰਦਰਾਜ ਚਰਚਾ ਵਿੱਚ ਕੋਈ ਟਿੱਪਣੀ ਸ਼ਾਮਲ ਕਰੋ?
   doorkeeper:
+    flash:
+      applications:
+        create:
+          notice: ਅਰਜ਼ੀ ਦਰਜ ਕੀਤੀ।
+    openid_connect:
+      errors:
+        messages:
+          auth_time_from_resource_owner_not_configured: ਦਰਬਾਨ::OpenidConnect.configure.auth_time_from_resource_owner
+            ਦੀ ਗਾਇਬ ਬਣਤਰ ਕਾਰਨ ਨਾਕਾਮਯਾਬੀ।
+          reauthenticate_resource_owner_not_configured: ਦਰਬਾਨ::OpenidConnect.configure.reauthenticate_resource_owner
+            ਦੀ ਗਾਇਬ ਬਣਤਰ ਕਾਰਨ ਨਾਕਾਮਯਾਬੀ।
+          resource_owner_from_access_token_not_configured: ਦਰਬਾਨ::OpenidConnect.configure.resource_owner_from_access_token
+            ਦੀ ਗਾਇਬ ਬਣਤਰ ਕਾਰਨ ਨਾਕਾਮਯਾਬੀ।
+          select_account_for_resource_owner_not_configured: ਦਰਬਾਨ::OpenidConnect.configure.select_account_for_resource_owner
+            ਦੀ ਗਾਇਬ ਬਣਤਰ ਕਾਰਨ ਨਾਕਾਮਯਾਬੀ।
+          subject_not_configured: ਦਰਬਾਨ::OpenidConnect.configure.subject ਦੀ ਗਾਇਬ ਬਣਤਰ
+            ਕਾਰਨ ID ਟੋਕਨ ਬਣਾਉਣਾ ਨਾਕਾਮਯਾਬ ਰਿਹਾ।
     scopes:
       address: ਆਪਣਾ ਭੌਤਿਕ ਪਤਾ ਵੇਖੋ
       email: ਆਪਣਾ ਈਮੇਲ ਪਤਾ ਵੇਖੋ
@@ -603,6 +632,9 @@ pa:
     contact:
       contact_url_title: ਵੱਖ-ਵੱਖ ਸੰਪਰਕ ਚੈਨਲਾਂ ਬਾਰੇ ਦੱਸਿਆ
       contact: ਰਾਬਤਾ
+      contact_the_community_html: ਜੇਕਰ ਤੁਹਾਨੂੰ ਕੋਈ ਟੁੱਟਿਆ ਹੋਈ ਕੜੀ/ਮਾਂਙਣੂ(bug) ਮਿਲਿਆ
+        ਹੈ ਤਾਂ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ (ਓਪਨਸਟ੍ਰੀਟਮੈਪ) ਭਾਈਚਾਰਾ ਨਾਲ %{contact_link} ਬੇਝਿਜਕ
+        ਰਾਬਤਾ ਬਣਾਓ। ਆਪਣੀ ਬੇਨਤੀ ਦੇ ਸਹੀ URL ਦਾ ਨੋਟ(ਲਿਖੋ) ਬਣਾਓ।
     bad_request:
       title: ਮਾਡ਼ੀ ਬੇਨਤੀ
     forbidden:
@@ -633,7 +665,12 @@ pa:
       prefix:
         aerialway:
           cable_car: ਕੇਬਲ ਕਾਰ
+          chair_lift: ਕੁਰਸੀ ਲਿਫ਼ਟ
+          drag_lift: ਖਿੱਚਵੀਂ ਲਿਫ਼ਟ(Drag Lift)
           gondola: ਗੋਂਡੋਲਾ ਲਿਫਟ
+          platter: ਥਾਲੀ ਲਿਫ਼ਟ (Platter Lift)
+          station: ਹਵਾਈ-ਰੱਸੀ ਅੱਡਾ (ਟਿਕਾਣਾ)
+          "yes": ਹਵਾਈ-ਰੱਸੀ
         aeroway:
           aerodrome: ਏਰੋਡਰੋਮ
           airstrip: ਹਵਾਈ ਪੱਟੀ
@@ -641,9 +678,12 @@ pa:
           gate: ਹਵਾਈ ਅੱਡੇ ਦਾ ਦਰਵਾਜ਼ਾ
           helipad: ਹੈਲੀਪੈਡ
           runway: ਉਡਾਣ-ਪੱਟੀ
+          taxilane: ਟੈਕਸੀ-ਰਾਹ
           taxiway: ਟੈਕਸੀਵੇਅ
-          terminal: à¨\9fਰਮà©\80ਨਲ
+          terminal: à¨¹à¨µà¨¾à¨\88 à¨\85ੱਡà©\87 à¨¦à¨¾ à¨®à©\81ਸਾਫ਼ਰà¨\96ਾਨਾ
         amenity:
+          animal_boarding: ਪਸ਼ੂਆਂ ਦਾ ਤਬੇਲਾ
+          animal_shelter: ਪਸ਼ੂ ਆਸਰਾ ਥਾਂ
           arts_centre: ਕਲਾ ਕੇਂਦਰ
           atm: ਏ੦ਟੀ੦ਐੱਮ
           bank: ਬੈਂਕ
@@ -670,6 +710,7 @@ pa:
           clock: ਘੜੀ
           college: ਕਾਲਜ
           community_centre: ਭਾਈਚਾਰਾ ਕੇਂਦਰ
+          conference_centre: ਸਮਾਗਮ ਕੇਂਦਰ
           courthouse: ਕਚਹਿਰੀ
           crematorium: ਸ਼ਮਸ਼ਾਨ ਘਾਟ
           dentist: ਦੰਦਾਂ ਦਾ ਡਾਕਟਰ
@@ -677,14 +718,16 @@ pa:
           drinking_water: ਪੀਣ ਦਾ ਪਾਣੀ
           driving_school: ਡਰਾਈਵਿੰਗ ਸਕੂਲ
           embassy: ਸਫ਼ਾਰਤਖ਼ਾਨਾ
+          events_venue: ਸਮਾਗਮ ਥਾਂ
           fast_food: ਫ਼ਾਸਟ ਫ਼ੂਡ
           ferry_terminal: ਫ਼ੈਰੀ ਟਰਮੀਨਲ
           fire_station: ਅੱਗ-ਬੁਝਾਊ ਸਟੇਸ਼ਨ
           food_court: ਖਾਣਾ ਦਰਬਾਰ
           fountain: ਫ਼ੁਹਾਰਾ
-          fuel: ਤੇਲ
+          fuel: ਤੇਲ ਭਰਣ ਦਾ ਅੱਡਾ
           gambling: ਜੂਆ
           grave_yard: ਕਬਰਿਸਤਾਨ
+          grit_bin: ਲੂਣ(ਰੇਤ) ਦੇ ਡੱਬੇ
           hospital: ਹਸਪਤਾਲ
           hunting_stand: ਸ਼ਿਕਾਰ ਸਟੈਂਡ
           ice_cream: ਆਈਸ ਕਰੀਮ
@@ -692,14 +735,17 @@ pa:
           kindergarten: ਬਾਲਵਾੜੀ
           language_school: ਭਾਸ਼ਾ ਸਕੂਲ
           library: ਕਿਤਾਬਘਰ
+          loading_dock: ਮਾਲ ਲੱਦਾਈ ਟਿਕਾਣਾ
           marketplace: ਮੰਡੀ ਦੀ ਥਾਂ
           monastery: ਮੱਠ
+          money_transfer: ਪੈਸੇ ਭੇਜੋ
           motorcycle_parking: ਮੋਟਰਸਾਈਕਲ ਪਾਰਕਿੰਗ
           music_school: ਸੰਗੀਤ ਸਕੂਲ
           nightclub: ਰਾਤ ਦਾ ਕਲੱਬ
           nursing_home: ਨਰਸਿੰਗ ਹੋਮ
           parking: ਪਾਰਕਿੰਗ
           parking_entrance: ਪਾਰਕਿੰਗ ਪਰਵੇਸ਼
+          parking_space: ਗੱਡੀ ਖੜਨ ਦੀ ਥਾਂ
           payment_terminal: ਭੁਗਤਾਨ ਜੰਤਰ
           pharmacy: ਦਵਾਈ ਦੀ ਹੱਟੀ
           place_of_worship: ਭਗਤੀ ਦਾ ਘਰ
@@ -711,6 +757,7 @@ pa:
           public_bath: ਜਨਤਕ ਇਸ਼ਨਾਨਘਰ
           public_bookcase: ਜਨਤਕ ਕਿਤਾਬ-ਅਲਮਾਰੀ
           public_building: ਜਨਤਕ ਇਮਾਰਤ
+          ranger_station: ਜੰਗਲਾਤ ਅੱਡਾ (ਟਿਕਾਣਾ)
           recycling: ਰੀਸਾਈਕਲ ਬਿੰਦੂ
           restaurant: ਰੈਸਟੋਰੈਂਟ
           school: ਸਕੂਲ
@@ -764,13 +811,16 @@ pa:
           construction: ਉਸਾਰੀ ਹੇਠ ਇਮਾਰਤ
           cowshed: ਗਊਸ਼ਾਲਾ
           detached: ਵੱਖ ਕੀਤਾ ਘਰ
+          farm: ਪੈਲੀ'ਚ ਘਰ
           garage: ਗਰਾਜ
           garages: ਗਰਾਜਾਂ
           hospital: ਹਸਪਤਾਲ ਦੀ ਇਮਾਰਤ
           hotel: ਹੋਟਲ ਦੀ ਇਮਾਰਤ
           house: ਘਰ
           hut: ਕੁੱਲੀ
+          industrial: ਉਦਯੋਗ ਇਮਾਰਤ
           kindergarten: ਬਾਲਵਾੜੀ ਇਮਾਰਤ
+          manufacture: ਕਾਰਖਾਨਾ ਇਮਾਰਤ
           office: ਦਫ਼ਤਰ ਦੀ ਇਮਾਰਤ
           public: ਜਨਤਕ ਇਮਾਰਤ
           residential: ਰਿਹਾਇਸ਼ੀ ਇਮਾਰਤ
@@ -781,6 +831,7 @@ pa:
           shed: ਢਾਰਾ
           stable: ਤਬੇਲਾ
           static_caravan: ਕਾਰਵਾਂ
+          sty: ਸੂਰ-ਵਾੜਾ
           temple: ਮੰਦਰ ਦੀ ਇਮਾਰਤ
           train_station: ਰੇਲ ਅੱਡਾ ਇਮਾਰਤ
           university: ਵਿਸ਼ਵ-ਵਿਦਿਆਲੇ ਦੀ ਇਮਾਰਤ
@@ -817,6 +868,7 @@ pa:
           bridleway: ਘੋੜ-ਰਾਹ
           bus_stop: ਬੱਸ ਅੱਡਾ
           construction: ਉਸਾਰੀ ਹੇਠ ਹਾਈਵੇ
+          corridor: ਗਲਿਆਰਾ
           crossing: ਪਾਰ-ਕਰਨਾ
           cycleway: ਸਾਈਕਲ ਰਾਹ
           elevator: ਲਿਫਟ
@@ -833,6 +885,7 @@ pa:
           platform: ਅੱਡਾ
           primary: ਮੁੱਢਲੀ ਸੜਕ
           primary_link: ਮੁੱਢਲੀ ਸੜਕ
+          proposed: ਸੁਝਾਈ ਗਈ ਸੜਕ
           raceway: ਰੇਸਵੇ
           residential: ਰਿਹਾਇਸ਼ੀ ਸੜਕ
           rest_area: ਅਰਾਮ ਖੇਤਰ
@@ -853,11 +906,13 @@ pa:
           trunk: ਟਰੰਕ ਸੜਕ
           trunk_link: ਟਰੰਕ ਸੜਕ
           turning_circle: ਮੁੜਨ ਵਾਲਾ ਗੋਲ-ਘਤੇਰਾ
+          turning_loop: ਮੋਡ਼ ਦਾ ਘੇਰਾ
           unclassified: ਅਵਰਗੀਕ੍ਰਿਤ ਰੋਡ
           "yes": ਸੜਕ
         historic:
           aircraft: ਇਤਿਹਾਸਕ ਹਵਾਈ ਜਹਾਜ਼
           archaeological_site: ਪੁਰਾਤੱਤਵ ਸਥਾਨ
+          bomb_crater: ਇਤਿਹਾਸਕ ਬੰਬ ਟੋਆ
           battlefield: ਜੰਗ ਦਾ ਮੈਦਾਨ
           boundary_stone: ਹੱਦ ਪੱਥਰ
           building: ਇਤਿਹਾਸਕ ਇਮਾਰਤ
@@ -870,10 +925,11 @@ pa:
           fort: ਕਿਲ਼ਾ
           heritage: ਵਿਰਾਸਤ ਸਥਾਨ
           house: ਘਰ
-          manor: à¨®à©\88ਨ
+          manor: à¨\9cà¨\97à©\80
           memorial: ਯਾਦਗਾਰ
           milestone: ਇਤਿਹਾਸਕ ਮੀਲ ਪੱਥਰ
           mine: ਖਾਨ
+          mine_shaft: ਖਾਣਾਂ ਦਾ ਰਾਹ
           monument: ਸਮਾਰਕ
           railway: ਇਤਿਹਾਸਕ ਰੇਲ-ਗੱਡੀ
           ruins: ਖੰਡਰ
@@ -883,7 +939,14 @@ pa:
           wayside_chapel: ਰਾਹ ਦੇ ਕੰਢੇ ਛੋਟਾ ਗਿਰਜਾਘਰ
           wayside_cross: ਰਾਹ ਦੇ ਕੰਢੇ ਕਰਾਸ
           wayside_shrine: ਰਾਹ ਦੇ ਕੰਢੇ ਮੰਦਰ
+          wreck: ਤਬਾਹ
           "yes": ਇਤਿਹਾਸਕ ਥਾਂ
+        information:
+          board: ਜਾਣਕਾਰੀ ਫੱਟੀ
+          map: ਨਕਸ਼ਾ
+          office: ਸੈਰ-ਸਪਾਟਾ ਦਫ਼ਤਰ
+          terminal: ਜਾਣਕਾਰੀ ਥਾਂ
+          sign: ਜਾਣਕਾਰੀ ਨਿਸ਼ਾਨ
         junction:
           "yes": ਜੰਕਸ਼ਨ
         landuse:
@@ -940,6 +1003,8 @@ pa:
           swimming_pool: ਤੈਰਾਕੀ ਤਲਾਅ
           track: ਭੱਜਣ ਲਈ ਟਰੈਕ
           water_park: ਜਲ ਪਾਰਕ
+        lock:
+          "yes": ਨਹਿਰੀ-ਤਾਲਾ
         man_made:
           advertising: ਇਸ਼ਤਿਹਾਰਬਾਜ਼ੀ
           avalanche_protection: ਬਰਫ਼ੀਲੇ ਤੂਫ਼ਾਨ ਤੋਂ ਬਚਾਅ
@@ -954,6 +1019,9 @@ pa:
           lighthouse: ਲਾਈਟਹਾਊਸ
           mast: ਸ਼ਤੀਰ
           mine: ਖਾਨ
+          mineshaft: ਖਾਣਾਂ ਦਾ ਰਾਹ
+          monitoring_station: ਨਿਗਰਾਨੀ ਅੱਡਾ
+          petroleum_well: ਤੇਲ ਦਾ ਖੂਹ
           pipeline: ਪਾਈਪਲਾਈਨ
           silo: ਭੜੋਲਾ
           snow_cannon: ਬਰਫ ਦੀ ਤੋਪ
@@ -962,13 +1030,16 @@ pa:
           tower: ਬੁਰਜ
           utility_pole: ਬਿਜਲੀ ਦਾ ਖੰਬਾ
           water_tap: ਪਾਣੀ ਦੀ ਟੂਟੀ
+          water_tower: ਪਾਣੀ ਦੀ ਟੈਂਕੀ
           water_well: ਖੂਹ
+          water_works: ਪਾਣੀ ਦੇ ਕੰਮ
           works: ਫੈਕਟਰੀ
-          "yes": à¨®à¨¨à©\81ੱà¨\96 à¨¦à©\81à¨\86ਰਾ ਬਣਾਇਆ
+          "yes": à¨®à¨¨à©\81ੱà¨\96 à¨µà©±à¨²à©\8bà¨\82 ਬਣਾਇਆ
         military:
           airfield: ਫ਼ੌਜੀ ਉਡਾਣ-ਖੇਤਰ
           barracks: ਬੈਰਕ
           checkpoint: ਨਾਕਾ
+          trench: ਖਾਈ
           "yes": ਫੌਜ
         mountain_pass:
           "yes": ਦੱਰਾ
@@ -991,7 +1062,7 @@ pa:
           marsh: ਦਲਦਲ
           moor: ਬੀੜ
           mud: ਚਿੱਕੜ
-          peak: à¨\9aà©\8bà¨\9fà©\80
+          peak: à¨¸à¨¿à¨\96ਰ
           point: ਬਿੰਦੂ
           reef: ਰੀਫ਼
           ridge: ਰਿੱਜ
@@ -1069,18 +1140,27 @@ pa:
           monorail: ਇਕਹਿਰੀ ਰੇਲ
           narrow_gauge: ਭੀੜੀ ਰੇਲ
           platform: ਰੇਲਗੱਡੀ ਦਾ ਅੱਡਾ
+          proposed: ਸੁਝਾਈ ਗਈ ਰੇਲ
           rail: ਰੇਲਗੱਡੀ
           station: ਰੇਲਵੇ ਸਟੇਸ਼ਨ
           subway: ਸੱਬਵੇ
           subway_entrance: ਸਬਵੇ ਪ੍ਰਵੇਸ਼
           tram: ਟਰਾਮਵੇ
           tram_stop: ਟਰਾਮ ਅੱਡਾ
+          turntable: ਤਵਿਆਂ
           yard: ਰੇਲ-ਵਾੜਾ
         shop:
+          agrarian: ਖੇਤੀਬਾਡ਼ੀ ਦੀ ਹੱਟੀ
+          alcohol: ਠੇਕਾ ਸ਼ਰਾਬ
           antiques: ਪ੍ਰਾਚੀਨ
+          appliance: ਉਪਕਰਣਾਂ (ਸੰਦਾਂ) ਦੀ ਹੱਟੀ
           art: ਕਲਾ ਹੱਟੀ
+          baby_goods: ਬੱਚਿਆਂ ਦੀਆਂ ਵਸਤਾਂ
+          bag: ਝੋਲਿਆਂ ਦੀ ਹੱਟੀ
           bakery: ਨਾਨਬਾਈ ਦੀ ਹੱਟੀ
+          bathroom_furnishing: ਗੁਸਲਖਾਨੇ ਦਾ ਸਮਾਨ
           beauty: ਬਿਊਟੀ ਪਾਰਲਰ
+          bed: ਬਿਸਤਰੇ ਦਾ ਸਮਾਨ
           beverages: ਪੀਣ ਪਦਾਰਥਾਂ ਦੀ ਹੱਟੀ
           bicycle: ਸਾਈਕਲਾਂ ਦੀ ਦੁਕਾਨ
           books: ਕਿਤਾਬਾਂ ਦੀ ਹੱਟੀ
@@ -1124,11 +1204,13 @@ pa:
           hardware: ਹਾਰਡਵੇਅਰ ਸਟੋਰ
           hifi: ਹਾਈ-ਫ਼ਾਈ
           houseware: ਘਰੇਲੂ ਸਮਾਨ ਦੀ ਹੱਟੀ
+          ice_cream: ਕੁਲਫ਼ੀ ਦੀ ਹੱਟੀ
           interior_decoration: ਅੰਦਰੂਨੀ ਸਜਾਵਟ
           jewelry: ਗਹਿਣਿਆਂ ਦੀ ਦੁਕਾਨ
           kiosk: ਖੋਖਾ
           kitchen: ਰਸੋਈ ਦੀ ਹੱਟੀ
           laundry: ਧੋਬੀਘਾਟ
+          locksmith: ਜੰਦਰਾ ਬਣਾਉਣ ਵਾਲਾ
           lottery: ਲਾਟਰੀ
           mall: ਮਾਲ
           massage: ਮਾਲਸ਼ ਦੀ ਹੱਟੀ
@@ -1140,8 +1222,12 @@ pa:
           optician: ਐਨਕਸਾਜ਼
           organic: ਕਾਰਬਨੀ ਖ਼ੁਰਾਕ ਦੀ ਹੱਟੀ
           outdoor: ਮੈਦਾਨੀ ਵਸਤਾਂ ਦੀ ਹੱਟੀ
+          paint: ਰੰਗਾਂ ਦੀ ਹੱਟੀ
+          perfumery: ਅਤਰ ਦੀ ਹੱਟੀ
           pet: ਪਾਲਤੂ ਜਾਨਵਰਾਂ ਦੀ ਦੁਕਾਨ
           photo: ਤਸਵੀਰਾਂ ਦੀ ਦੁਕਾਨ
+          seafood: ਸਮੁੰਦਰੀ ਖਾਣਾ
+          second_hand: ਵਰਤੇ ਹੋਏ ਵਸਤਾਂ ਦੀ ਹੱਟੀ
           sewing: ਸਿਲਾਈ ਦੀ ਹੱਟੀ
           shoes: ਜੁੱਤੀਆਂ ਦੀ ਦੁਕਾਨ
           sports: ਖੇਡਾਂ ਦੀ ਦੁਕਾਨ
@@ -1152,6 +1238,7 @@ pa:
           tobacco: ਤੰਬਾਕੂ ਦੀ ਦੁਕਾਨ
           toys: ਖਿਡੌਣਿਆਂ ਦੀ ਦੁਕਾਨ
           travel_agency: ਟਰੈਵਲ ਏਜੰਸੀ
+          tyres: ਟਾਇਰਾਂ ਦੀ ਹੱਟੀ
           vacant: ਖਾਲੀ ਦੁਕਾਨ
           video: ਵੀਡੀਓ ਦੀ ਦੁਕਾਨ
           wholesale: ਥੋਕ ਦੀ ਦੁਕਾਨ
@@ -1180,6 +1267,11 @@ pa:
         tunnel:
           culvert: ਪੁਲੀ
           "yes": ਸੁਰੰਗ
+        water:
+          lake: ਝੀਲ
+          pond: ਛੱਪੜ
+          fishpond: ਮੱਛੀ ਦਾ ਤਲਾਅ
+          lock: ਨਹਿਰੀ-ਤਾਲਾ
         waterway:
           artificial: ਬਣਾਉਟੀ ਨਹਿਰ
           boatyard: ਬੇੜੀ ਵਾੜਾ
@@ -1232,6 +1324,9 @@ pa:
       reports: ਇਤਲਾਹਵਾਂ
       last_updated: ਆਖਰੀ ਵਾਰ ਨਵਿਆਈਆ ਗਿਆ
       last_updated_time_ago_user_html: '%{time_ago} %{user} ਵੱਲੋਂ'
+      reports_count:
+        one: '%{count} ਇਤਲਾਹ'
+        other: '%{count} ਇਤਲਾਹ'
       states:
         ignored: ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ
         open: ਖੋਲ੍ਹੋ
@@ -1241,6 +1336,9 @@ pa:
         open: 'ਮੁੱਦਾ ਖੋਲ੍ਹੋ #%{issue_id}'
         ignored: 'ਮੁੱਦਾ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ #%{issue_id}'
         resolved: 'ਮੁੱਦਾ ਹੱਲ ਕੀਤਾ ਗਿਆ #%{issue_id}'
+      reports:
+        one: '%{count} ਇਤਲਾਹ'
+        other: '%{count} ਇਤਲਾਹ'
       no_reports: ਕੋਈ ਇਤਲਾਹ ਨਹੀਂ
       report_created_at_html: ਪਹਿਲੀ ਵਾਰ %{datetime} ਨੂੰ ਇਤਲਾਹ ਕੀਤੀ ਗਈ
       last_resolved_at_html: ਆਖਰੀ ਵਾਰ %{datetime} 'ਤੇ ਹੱਲ ਕੀਤਾ ਗਿਆ
@@ -1249,9 +1347,14 @@ pa:
       resolve: ਹੱਲ-ਕੱਢੋ
       ignore: ਨਜ਼ਰਅੰਦਾਜ਼ ਕਰੋ
       reopen: ਮੁਡ਼ ਖੋਲ੍ਹੋ
+      reports_of_this_issue: ਇਸ ਮੁੱਦੇ ਦੀ ਇਤਲਾਹ ਦਿਓ
+      read_reports: ਇਤਲਾਹ ਪੜ੍ਹੋ
+      new_reports: ਨਵੀਂ ਇਤਲਾਹ
       other_issues_against_this_user: ਇਸ ਵਰਤੋਂਕਾਰ ਦੇ ਖਿਲਾਫ ਹੋਰ ਮੁੱਦੇ
       no_other_issues: ਇਸ ਵਰਤੋਂਕਾਰ ਦੇ ਖਿਲਾਫ ਕੋਈ ਹੋਰ ਮੁੱਦੇ ਨਹੀਂ ਹਨ।
       comments_on_this_issue: ਇਸ ਮੁੱਦੇ 'ਤੇ ਟਿੱਪਣੀ
+    comments:
+      comment_from_html: '%{user_link} ਤੋਂ %{comment_created_at} ''ਤੇ ਟਿੱਪਣੀ'
     reports:
       reported_by_html: '%{updated_at} ਨੂੰ %{user} ਵੱਲੋਂ %{category} ਵਜੋਂ ਇਤਲਾਹ ਕੀਤੀ
         ਗਈ'
@@ -1350,7 +1453,6 @@ pa:
       button: ਤਸਦੀਕ ਕਰੋ
       already active: ਇਹ ਖਾਤਾ ਪਹਿਲੋਂ ਹੀ ਤਸਦੀਕ ਹੋ ਚੁੱਕਾ ਹੈ।
       unknown token: ਉਸ ਤਸਦੀਕੀ ਕੋਡ ਦੀ ਮਿਆਦ ਜਾਂ ਹੋਂਦ ਖ਼ਤਮ ਹੋ ਚੁੱਕੀ ਹੈ।
-      click_here: ਇੱਥੇ ਕਲਿੱਕ ਕਰੋ
     confirm_resend:
       failure: ਵਰਤੋਂਕਾਰ %{name} ਨਹੀਂ ਲੱਭਿਆ।
     confirm_email:
@@ -1359,18 +1461,6 @@ pa:
         ਬਟਨ ਨੂੰ ਦਬਾਓ।
       button: ਤਸਦੀਕ ਕਰੋ
   messages:
-    inbox:
-      title: ਇਨਬਾਕਸ
-    messages_table:
-      from: ਵੱਲੋਂ
-      to: ਵੱਲ
-      subject: ਵਿਸ਼ਾ
-      date: ਮਿਤੀ
-      actions: ਕਾਰਵਾਈਆਂ
-    message_summary:
-      unread_button: ਨਾ ਪਡ਼੍ਹੇ ਹੋਏ ਵਜੋਂ ਨਿਸ਼ਾਨ ਲਾਓ
-      read_button: ਪੜ੍ਹੇ ਵਜੋਂ ਨਿਸ਼ਾਨ ਲਾਓ
-      destroy_button: ਮਿਟਾਓ
     new:
       title: ਸੁਨੇਹਾ ਘੱਲੋ
     create:
@@ -1378,23 +1468,38 @@ pa:
     no_such_message:
       title: ਅਜਿਹਾ ਕੋਈ ਸੁਨੇਹਾ ਨਹੀਂ
       heading: ਅਜਿਹਾ ਕੋਈ ਸੁਨੇਹਾ ਨਹੀਂ
-    outbox:
-      title: ਆਊਟਬਾਕਸ
     show:
       title: ਸੁਨੇਹਾ ਪੜ੍ਹੋ
       reply_button: ਜੁਆਬ
       unread_button: ਨਹੀਂ-ਪੜ੍ਹਿਆ ਵਜੋਂ ਨਿਸ਼ਾਨ ਲਾਓ
       destroy_button: ਮਿਟਾਓ
       back: ਪਿਛਾਂਹ
-    sent_message_summary:
-      destroy_button: ਮਿਟਾਓ
-    heading:
-      my_inbox: ਮੇਰਾ ਇਨਬਾਕਸ
     mark:
       as_read: ਸੁਨੇਹੇ ਨੂੰ ਪਡ਼੍ਹਿਆ ਗਿਆ ਵਜੋਂ ਨਿਸ਼ਾਨਬੱਧ ਕੀਤਾ ਗਿਆ
       as_unread: ਸੁਨੇਹੇ ਨੂੰ ਨਹੀਂ-ਪਡ਼੍ਹਿਆ ਵਜੋਂ ਨਿਸ਼ਾਨਬੱਧ ਕੀਤਾ ਗਿਆ
     destroy:
       destroyed: ਸੁਨੇਹਾ ਮਿਟਾਇਆ ਗਿਆ
+    mailboxes:
+      heading:
+        my_inbox: ਮੇਰਾ ਇਨਬਾਕਸ
+      messages_table:
+        from: ਵੱਲੋਂ
+        to: ਵੱਲ
+        subject: ਵਿਸ਼ਾ
+        date: ਮਿਤੀ
+        actions: ਕਾਰਵਾਈਆਂ
+      message:
+        unread_button: ਨਾ ਪਡ਼੍ਹੇ ਹੋਏ ਵਜੋਂ ਨਿਸ਼ਾਨ ਲਾਓ
+        read_button: ਪੜ੍ਹੇ ਵਜੋਂ ਨਿਸ਼ਾਨ ਲਾਓ
+        destroy_button: ਮਿਟਾਓ
+    inboxes:
+      show:
+        title: ਇਨਬਾਕਸ
+    outboxes:
+      show:
+        title: ਆਊਟਬਾਕਸ
+      message:
+        destroy_button: ਮਿਟਾਓ
   passwords:
     new:
       title: ਪਛਾਣ ਸ਼ਬਦ ਗੁੰਮ ਗਿਆ
@@ -1460,10 +1565,13 @@ pa:
       logout_button: ਬਾਹਰ ਆਉ
     suspended_flash:
       suspended: ਮੁਆਫ ਕਰਨਾ, ਸ਼ੱਕੀ ਗਤੀਵਿਧੀ ਕਾਰਨ ਤੁਹਾਡਾ ਖਾਤਾ ਮੁਅੱਤਲ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ।
+      support: ਸਹਿਯੋਗ
   shared:
     markdown_help:
       headings: ਸਿਰਨਾਵੇਂ
       heading: ਸਿਰਨਾਵਾਂ
+      first: ਪਹਿਲੀ ਚੀਜ਼
+      second: ਦੂਜੀ ਚੀਜ਼
       link: ਕੜੀ
       text: ਲਿਖਤ
       image: ਤਸਵੀਰ
@@ -1476,12 +1584,18 @@ pa:
       diary_comments:
         older: ਪੁਰਾਣੀਆਂ ਟਿੱਪਣੀਆਂ
         newer: ਨਵੀਆਂ ਟਿੱਪਣੀਆਂ
+      diary_entries:
+        older: ਪੁਰਾਣੇ ਇੰਦਰਾਜ
+        newer: ਨਵੇਂ ਇੰਦਰਾਜ
       issues:
         older: ਪੁਰਾਣੇ ਮੁੱਦੇ
         newer: ਨਵੇਂ ਮੁੱਦੇ
       traces:
         older: ਪੁਰਾਣੇ ਖੁਰਾ-ਖੋਜ
         newer: ਨਵੇਂ ਖੁਰਾ-ਖੋਜ
+      user_blocks:
+        older: ਪੁਰਾਣੀਆਂ ਪਾਬੰਦੀਆਂ
+        newer: ਨਵੀਆਂ ਪਾਬੰਦੀਆਂ
       users:
         older: ਪੁਰਾਣੇ ਵਰਤੋਂਕਾਰ
         newer: ਨਵੇਂ ਵਰਤੋਂਕਾਰ
@@ -1530,6 +1644,7 @@ pa:
         contributors_nz_new_zealand: ਨਿਊਜ਼ੀਲੈਂਡ
         contributors_rs_serbia: ਸਰਬੀਆ
         contributors_si_slovenia: ਸਲੋਵੇਨੀਆ
+        contributors_si_mkgp: ਖੇਤੀਬਾਡ਼ੀ, ਜੰਗਲਾਤ ਅਤੇ ਖੁਰਾਕ ਮੰਤਰਾਲਾ
         contributors_es_spain: ਸਪੇਨ
         contributors_za_south_africa: ਦੱਖਣੀ ਅਫ਼ਰੀਕਾ
         contributors_2_contributors_page: ਯੋਗਦਾਨ ਪਾਉਣ ਵਾਲੇਆਂ ਦਾ ਵਰਕਾ
@@ -1611,7 +1726,9 @@ pa:
           vineyard: ਅੰਗੂਰਾਂ ਦਾ ਬਾਗ਼
           forest: ਜੰਗਲ
           wood: ਲੱਕੜ
+          farmland: ਖੇਤੀਬਾੜੀ ਦੀ ਜ਼ਮੀਨ
           grass: ਘਾਹ
+          meadow: ਚਰਗਾਹ
           sand: ਰੇਤ
           golf: ਗੋਲਫ਼ ਮੈਦਾਨ
           park: ਪਾਰਕ
@@ -1622,6 +1739,7 @@ pa:
           commercial: ਵਪਾਰਕ ਖੇਤਰ
           lake: ਝੀਲ
           reservoir: ਸਰੋਵਰ
+          glacier: ਬਰਫ਼ਾਨੀ ਦਰਿਆ
           farm: ਖੇਤ
           cemetery: ਸ਼ਮਸ਼ਾਨ
           pitch: ਖੇਡ ਦੀ ਪਿੱਚ
@@ -1634,7 +1752,7 @@ pa:
           building: ਮਹੱਤਵਪੂਰਨ ਇਮਾਰਤ
           station: ਰੇਲਵੇ ਸਟੇਸ਼ਨ
           summit: ਸਿਖਰ
-          peak: à¨\9aà©\8bà¨\9fà©\80
+          peak: à¨¸à¨¿à¨\96ਰ
           private: ਨਿੱਜੀ ਲਾਂਘਾ
           construction: ਉਸਾਰੀ ਹੇਠ ਸੜਕਾਂ
           bicycle_rental: ਸਾਈਕਲ ਕਿਰਾਏ 'ਤੇ
@@ -1643,6 +1761,7 @@ pa:
       whats_on_the_map:
         title: ਨਕਸ਼ੇ ਉੱਤੇ ਕੀ ਹੈ
         real_and_current: ਅਸਲੀ ਅਤੇ ਮੌਜੂਦਾ
+        doesnt: ਨਹੀਂ ਕਰਦਾ
       basic_terms:
         title: ਨਕਸ਼ਾ-ਉਲੀਕਣ ਲਈ ਬੁਨਿਆਦੀ ਸ਼ਰਤਾਂ
         editor: ਸੋਧਕ
@@ -1717,6 +1836,7 @@ pa:
       my_gps_traces: ਮੇਰੇ GPS ਖੁਰਾ-ਖੋਜ
       public_traces_from: '%{user} ਤੋਂ ਜਨਤਕ GPS ਖੁਰਾ-ਖੋਜ'
       tagged_with: '%{tags} ਨਾਲ਼ ਨਿਸ਼ਾਨਦੇਹ'
+      empty_title: ਅਜੇ ਇੱਥੇ ਕੁਝ ਨਹੀਂ
       upload_new: ਇੱਕ ਨਵਾਂ ਖੁਰਾ-ਖੋਜ ਚੜ੍ਹਾਉ
       wiki_page: ਵਿਕੀ ਸਫ਼ਾ
       upload_trace: ਕੋਈ ਖੁਰਾ-ਖੋਜ ਚੜ੍ਹਾਉ
@@ -1731,6 +1851,7 @@ pa:
     permission_denied: ਤੁਹਾਨੂੰ ਉਸ ਕਾਰਵਾਈ ਤੱਕ ਪਹੁੰਚ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ
     settings_menu:
       account_settings: ਖਾਤਾ ਤਰਜੀਹਾਂ
+      muted_users: ਚੁੱਪ ਕਰਾਏ ਵਰਤੋਂਕਾਰ
     auth_providers:
       openid_login_button: ਜਾਰੀ ਰੱਖੋ
       openid:
@@ -1749,6 +1870,21 @@ pa:
       wikipedia:
         title: ਵਿਕੀਪੀਡੀਆ ਨਾਲ ਦਾਖਲ ਹੋਵੋ
         alt: ਵਿਕੀਪੀਡੀਆ ਮਾਰਕਾ
+    share:
+      email:
+        title: ਈਮੇਲ ਰਾਹੀਂ ਸਾਂਝਾ ਕਰੋ
+      bluesky:
+        title: ਬਲੂਸਕੀ ਰਾਹੀਂ ਸਾਂਝਾ ਕਰੋ
+      facebook:
+        title: ਫੇਸਬੁੱਕ ਰਾਹੀਂ ਸਾਂਝਾ ਕਰੋ
+      linkedin:
+        title: ਲਿੰਕਡਇਨ ਰਾਹੀਂ ਸਾਂਝਾ ਕਰੋ
+      mastodon:
+        title: ਮਾਸਟੋਡਨ ਉੱਤੇ ਸਾਂਝਾ ਕਰੋ
+      telegram:
+        title: ਟੈਲੀਗ੍ਰਾਮ 'ਤੇ ਸਾਂਝਾ ਕਰੋ
+      x:
+        title: X ਉੱਤੇ ਸਾਂਝਾ ਕਰੋ
   oauth:
     scopes:
       openid: OpenStreetMap ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਦਾਖਲ ਹੋਵੋ
@@ -1797,6 +1933,7 @@ pa:
         ਇੱਕ ਖਾਤਾ ਬਣਾਉਣ ਦੇ ਯੋਗ ਨਹੀਂ ਹਾਂ।
       please_contact_support_html: ਕਿਰਪਾ ਕਰਕੇ ਖਾਤਾ ਬਣਾਉਣ ਦਾ ਪ੍ਰਬੰਧ ਕਰਨ ਲਈ %{support_link}
         ਨਾਲ ਸੰਪਰਕ ਕਰੋ-ਅਸੀਂ ਜਿੰਨੀ ਜਲਦੀ ਹੋ ਸਕੇ ਬੇਨਤੀ ਨਾਲ ਨਜਿੱਠਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਾਂਗੇ।
+      support: ਸਹਿਯੋਗ
       about:
         header: ਮੁਫ਼ਤ ਅਤੇ ਸੋਧਣਯੋਗ
         welcome: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ਉੱਤੇ ਜੀ ਆਇਆਂ ਨੂੰ
@@ -1869,6 +2006,8 @@ pa:
       my_preferences: ਮੇਰੀਆਂ ਤਰਜੀਹਾਂ
       blocks on me: ਮੇਰੇ ਉੱਤੇ ਰੋਕਾਂ
       blocks by me: ਮੇਰੇ ਵੱਲੋਂ ਰੋਕਾਂ
+      create_mute: ਇਸ ਵਰਤੋਂਕਾਰ ਨੂੰ ਚੁੱਪ ਕਰੋ
+      edit_profile: ਪ੍ਰੋਫਾਈਲ ਸੋਧੋ
       send message: ਸੁਨੇਹਾ ਘੱਲੋ
       diary: ਰੋਜ਼ਨਾਮਚਾ
       edits: ਸੋਧਾਂ
@@ -1877,6 +2016,7 @@ pa:
       remove as friend: ਯਾਰੀ ਤੋੜੋ
       add as friend: ਯਾਰੀ ਪਾਉ
       mapper since: 'ਕਦੋਂ ਤੋਂ ਨਕਸ਼ਾ-ਨਵੀਸ਼:'
+      last map edit: 'ਅਖੀਰਲੀ ਨਕਸ਼ੇ ਦੀ ਸੋਧ:'
       no activity yet: ਹਾਲੇ ਕੋਈ ਗਤੀਵਿਧੀ ਨਹੀਂ ਹੈ
       uid: 'ਵਰਤੋਂਕਾਰ ਸ਼ਿਨਾਖਤ:'
       ct status: 'ਯੋਗਦਾਨੀ ਦੀਆਂ ਸ਼ਰਤਾਂ:'
@@ -1896,9 +2036,11 @@ pa:
         revoke:
           administrator: ਪ੍ਰਬੰਧਕੀ ਪਹੁੰਚ ਰੱਦ ਕਰੋ
           importer: ਦਰਾਮਦਕਾਰ ਪਹੁੰਚ ਰੱਦ ਕਰੋ
+      block_history: ਸਰਗਰਮ ਪਾਬੰਦੀਆਂ
+      moderator_history: ਪਾਬੰਦੀਆਂ ਦਿੱਤਿਆ ਹਨ
       comments: ਟਿੱਪਣੀਆਂ
       create_block: ਇਸ ਵਰਤੋਂਕਾਰ 'ਤੇ ਰੋਕ ਲਾਉ
-      activate_user: à¨\87ਸ à¨µà¨°à¨¤à©\8bà¨\82à¨\95ਾਰ à¨¨à©\82à©° à¨\95ਿਰਿà¨\86ਸ਼à©\80ਲ ਕਰੋ
+      activate_user: à¨\87ਸ à¨µà¨°à¨¤à©\8bà¨\82à¨\95ਾਰ à¨¨à©\82à©° à¨¸à¨°à¨\97ਰਮ ਕਰੋ
       confirm_user: ਇਸ ਵਰਤੋਂਕਾਰ ਦੀ ਤਸਦੀਕ ਕਰੋ
       unsuspend_user: ਇਸ ਵਰਤੋਂਕਾਰ ਨੂੰ ਮੁਅੱਤਲ ਨਾ ਕਰੋ
       hide_user: ਇਸ ਵਰਤੋਂਕਾਰ ਨੂੰ ਲੁਕਾਉ
@@ -1909,6 +2051,27 @@ pa:
     go_public:
       flash success: ਤੁਹਾਡੇ ਸਾਰੇ ਸੋਧ ਹੁਣ ਜਨਤਕ ਹਨ, ਅਤੇ ਤੁਹਾਨੂੰ ਹੁਣ ਸੋਧ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ
         ਹੈ।
+    issued_blocks:
+      show:
+        title: '%{name} ਵੱਲੋਂ ਪਾਬੰਦੀਆਂ'
+        heading_html: '%{name} ਵੱਲੋਂ ਪਾਬੰਦੀਆਂ ਦੀ ਸੂਚੀ'
+        empty: '%{name} ਨੇ ਹਾਲੇ ਤੱਕ ਕੋਈ ਪਾਬੰਦੀਆਂ ਨਹੀਂ ਬਣਾਇਆ ਹਨ।'
+    received_blocks:
+      show:
+        title: '%{name} ਉੱਤੇ ਪਾਬੰਦੀਆਂ'
+        heading_html: '%{name} ਉੱਤੇ ਪਾਬੰਦੀਆਂ ਦੀ ਸੂਚੀ'
+        empty: '%{name} ਤੇ ਹਾਲੇ ਪਾਬੰਦੀ ਨਹੀਂ ਲਾਈ ਗਈ ਏ।'
+      edit:
+        title: '%{block_on} ਉੱਤੇ ਸਾਰੀ ਪਾਬੰਦੀਆਂ ਨੂੰ ਰੱਦ ਕੀਤਾ ਜਾ ਰਿਹਾ ਏ'
+        heading_html: '%{block_on} ਉੱਤੇ ਸਾਰੀ ਪਾਬੰਦੀਆਂ ਨੂੰ ਰੱਦ ਕੀਤਾ ਜਾ ਰਿਹਾ ਏ'
+        empty: '%{name} ਕੋਲ ਕੋਈ ਸਰਗਰਮ ਪਾਬੰਦੀ ਨਹੀਂ ਏ।'
+        confirm: ਕੀ ਤੁਸੀਂ ਯਕੀਨੀ ਤੌਰ 'ਤੇ %{active_blocks} ਨੂੰ ਰੱਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?
+        active_blocks:
+          one: '%{count} ਸਰਗਰਮ ਪਾਬੰਦੀ'
+          other: '%{count} ਸਰਗਰਮ ਪਾਬੰਦੀਆਂ'
+        revoke: ਪਰਤਾਉ!
+      destroy:
+        flash: ਸਾਰਿਆਂ ਸਰਗਰਮ ਪਾਬੰਦੀਆਂ ਰੱਦ ਕਰ ਦਿੱਤੀ ਗਇਆ ਹਨ।
     lists:
       show:
         title: ਵਰਤੋਂਕਾਰ
@@ -1926,16 +2089,68 @@ pa:
     suspended:
       title: ਖਾਤਾ ਮੁਅੱਤਲ ਕੀਤਾ ਗਿਆ
       heading: ਖਾਤਾ ਮੁਅੱਤਲ ਕੀਤਾ ਗਿਆ
+      support: ਸਹਿਯੋਗ
+      automatically_suspended: ਮੁਆਫ ਕਰਨਾ, ਸ਼ੱਕੀ ਗਤੀਵਿਧੀ ਕਾਰਨ ਤੁਹਾਡਾ ਖਾਤਾ ਆਪਣੇ ਆਪ ਬਰਖਾਸਤ
+        ਕਰ ਦਿੱਤਾ ਗਿਆ ਏ।
+      contact_support_html: ਇਸ ਫੈਸਲੇ ਦੀ ਜਲਦੀ ਹੀ ਇੱਕ ਪ੍ਰਬੰਧਕ ਵੱਲੋਂ ਸਮੀਖਿਆ ਕੀਤੀ ਜਾਵੇਗੀ,
+        ਜਾਂ ਜੇ ਤੁਸੀਂ ਇਸ ਬਾਰੇ ਗੱਲਬਾਤ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ ਤਾਂ ਤੁਸੀਂ %{support_link} ਨਾਲ
+        ਰਾਬਤਾ ਕਾਇਮ ਕਰ ਸਕਦੇ ਹੋ।
+    auth_failure:
+      unknown_signature_algorithm: ਅਗਿਆਤ ਦਸਤਖਤ ਹਦਾਇਤਾਂ
+      invalid_scope: ਗਲਤ ਕਾਰਜ
+    auth_association:
+      option_2: ਜੇਕਰ ਤੁਹਾਡੇ ਕੋਲ ਪਹਿਲਾਂ ਹੀ ਖਾਤਾ ਹੈ, ਤਾਂ ਤੁਸੀਂ ਆਪਣੇ ਵਰਤੋਂਕਾਰ ਨਾਂ ਅਤੇ
+        ਪਛਾਣ-ਸ਼ਬਦ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੇ ਖਾਤੇ ਵਿੱਚ ਦਾਖ਼ਲ ਹੋ ਸਕਦੇ ਹੋ ਅਤੇ ਫਿਰ ਆਪਣਿਆਂ ਵਰਤੋਂਕਾਰ
+        ਤਰਜੀਹਾਂ ਵਿੱਚ ਖਾਤੇ ਨੂੰ  ਆਪਣੀ ID ਨਾਲ ਜੋੜੋ।
+  user_role:
+    filter:
+      not_a_role: ਤੰਦ %{role} ਇੱਕ ਜਾਇਜ਼ ਜ਼ੁੰਮੇਵਾਰੀ ਨਹੀਂ ਏ।
+      already_has_role: ਵਰਤੋਂਕਾਰ ਕੋਲ ਪਹਿਲਾਂ ਹੀ ਜ਼ੁੰਮੇਵਾਰੀ %{role} ਏ।
+      doesnt_have_role: ਵਰਤੋਂਕਾਰ ਕੋਲ ਜ਼ੁੰਮੇਵਾਰੀ %{role} ਨਹੀਂ ਏ।
+      not_revoke_admin_current_user: ਮੌਜੂਦਾ ਵਰਤੋਂਕਾਰ ਤੋਂ ਪ੍ਰਬੰਧਕ ਦੀ ਜ਼ੁੰਮੇਵਾਰੀ ਨੂੰ
+        ਰੱਦ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਏ।
+    grant:
+      are_you_sure: ਕੀ ਤੁਸੀਂ ਯਕੀਨੀ ਤੌਰ 'ਤੇ ਵਰਤੋਂਕਾਰ '%{name}' ਨੂੰ '%{role}' ਜ਼ੁੰਮੇਵਾਰੀ
+        ਦੇਣਾ ਚਾਹੁੰਦੇ ਹੋ?
+    revoke:
+      are_you_sure: ਕੀ ਤੁਸੀਂ ਯਕੀਨੀ ਤੌਰ 'ਤੇ ਵਰਤੋਂਕਾਰ '%{name}' ਤੋਂ ਜ਼ੁੰਮੇਵਾਰੀ '%{role}'
+        ਨੂੰ ਰੱਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?
   user_blocks:
+    model:
+      non_moderator_update: ਇੱਕ ਪਾਬੰਦੀ ਬਣਾਉਣ ਜਾਂ ਨਵਿਆਓਣ ਲਈ ਇੱਕ ਪ੍ਰਬੰਧਕ ਹੋਣਾ ਲਾਜ਼ਮੀ
+        ਹੈ।
+      non_moderator_revoke: ਪਾਬੰਦੀ ਨੂੰ ਰੱਦ ਕਰਨ ਲਈ ਪ੍ਰਬੰਧਕ ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ।
     not_found:
+      sorry: ਮਾਫ਼ ਕਰਨਾ, ID %{id} ਵਾਲੀ ਵਰਤੋਂਕਾਰ ਪਾਬੰਦੀ ਲੱਭੀ ਨਹੀਂ ਜਾ ਸਕੀ।
       back: ਤਤਕਰੇ ਵੱਲ ਵਾਪਸ
+    new:
+      title: '%{name} ਉੱਤੇ ਇੱਕ ਪਾਬੰਦੀ ਬਣਾਈ ਜਾ ਰਹੀ ਏ।'
+      heading_html: '%{name} ਉੱਤੇ ਇੱਕ ਪਾਬੰਦੀ ਬਣਾਈ ਜਾ ਰਹੀ ਏ।'
+      period: ਹੁਣ ਤੋਂ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋਏ, ਵਰਤੋਂਕਾਰ ਨੂੰ API ਤੋਂ ਕਿੰਨੇ ਸਮੇਂ ਲਈ ਰੋਕਿਆ ਜਾਵੇਗਾ।
     edit:
+      title: '%{name} ਉੱਤੇ ਪਾਬੰਦੀ ਸੋਧੀ ਜਾ ਰਹੀ ਏ।'
+      heading_html: '%{name} ਉੱਤੇ ਪਾਬੰਦੀ ਸੋਧੀ ਜਾ ਰਹੀ ਏ।'
+      period: ਹੁਣ ਤੋਂ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋਏ, ਵਰਤੋਂਕਾਰ ਨੂੰ API ਤੋਂ ਕਿੰਨੇ ਸਮੇਂ ਲਈ ਰੋਕਿਆ ਜਾਵੇਗਾ।
       revoke: ਪਾਬੰਦੀਆਂ ਨੂੰ ਰੱਦ ਕਰੋ
+    filter:
+      block_period: ਪਾਬੰਦੀਆਂ ਦੀ ਮਿਆਦ ਲਟਕਦੀ ਸੂਚੀ ਵਿੱਚ ਚੁਣੇ ਜਾਣ ਵਾਲੇ ਮੁੱਲਾਂ ਵਿੱਚੋਂ ਇੱਕ
+        ਹੋਣੀ ਚਾਹੀਦੀ ਏ।
+    create:
+      flash: ਵਰਤੋਂਕਾਰ %{name} ਉੱਤੇ ਇੱਕ ਪਾਬੰਦੀ ਬਣਾਓ
     update:
+      inactive_block_cannot_be_reactivated: ਇਹ ਰੋਕ ਸਰਗਰਮ ਨਹੀਂ ਹੈ ਅਤੇ ਮੁਡ਼ ਸਰਗਰਮ ਨਹੀਂ
+        ਕੀਤਾ ਜਾ ਸਕਦੀ ਏ।
       success: ਰੋਕ ਨਵਿਆਈ ਗਈ।
-    revoke_all:
-      revoke: ਪਰਤਾਉ!
+    index:
+      title: ਵਰਤੋਂਕਾਰ ਪਾਬੰਦੀਆਂ
+      heading: ਵਰਤੋਂਕਾਰ ਪਾਬੰਦੀਆਂ ਦੀ ਸੂਚੀ
+      empty: ਹਾਲੇ ਤੱਕ ਕੋਈ ਪਾਬੰਦੀਆਂ ਨਹੀਂ ਬਣਾਇਆ ਗਇਆ ਹਨ।
     helper:
+      time_future_html: '%{time} ਵਿੱਚ ਮਿਆਦ ਪੁੱਗਦੀ ਏ'
+      until_login: ਜਦੋਂ ਤੱਕ ਵਰਤੋਂਕਾਰ ਦਾਖ਼ਲ ਨਹੀਂ ਹੁੰਦਾ ਉਦੋਂ ਤੱਕ ਸਰਗਰਮ ਏ।
+      time_future_and_until_login_html: '%{time} ਵਿੱਚ ਅਤੇ ਵਰਤੋਂਕਾਰ ਦੇ ਦਾਖ਼ਲ ਹੋਣ ਤੋਂ
+        ਬਾਅਦ ਮਿਆਦ ਪੁੱਗਦੀ ਏ।'
+      time_past_html: '%{time} ਮਿਆਦ ਪੁੱਗ ਗਈ ਏ'
       block_duration:
         hours:
           one: '%{count} ਘੰਟਾ'
@@ -1954,9 +2169,14 @@ pa:
           other: '%{count} ਸਾਲ'
       short:
         ended: ਖਤਮ ਹੋ ਗਿਆ/ਗਈ
+        revoked_html: '%{name} ਵੱਲੋਂ ਰੱਦ ਕੀਤਾ ਗਿਆ'
         active: ਸਰਗਰਮ
+        active_unread: ਸਰਗਰਮ ਨਹੀਂ ਪਡ਼੍ਹੇ
         expired_unread: ਨਹੀਂ-ਪੜ੍ਹਿਆ ਦੀ ਮਿਆਦ ਪੁੱਗ ਗਈ
+        read_html: '%{time} ਉੱਤੇ ਪਡ਼੍ਹੋ'
     show:
+      title: '%{block_on} ਨੂੰ %{block_by} ਵੱਲੋਂ ਪਾਬੰਦੀਆਂ ਲਾਇਆਂ ਗਇਆਂ ਹਨ'
+      heading_html: '%{block_on} ਨੂੰ %{block_by} ਵੱਲੋਂ ਪਾਬੰਦੀਆਂ ਲਾਇਆਂ ਗਇਆਂ ਹਨ'
       created: 'ਬਣਾਇਆ ਗਿਆ:'
       duration: 'ਮਿਆਦ:'
       status: ਹਾਲਾਤ
@@ -1964,7 +2184,7 @@ pa:
       reason: 'ਰੋਕ ਦਾ ਕਾਰਨ:'
       revoker: 'ਪਰਤਾਉਣ ਵਾਲ਼ਾ:'
     block:
-      show: à¨µà¨¿à¨\96ਾà¨\89
+      show: à¨µà¨¿à¨\96ਾà¨\93
       edit: ਸੋਧੋ
     page:
       display_name: ਰੋਕਿਆ ਵਰਤੋਂਕਾਰ
@@ -1973,30 +2193,56 @@ pa:
       start: ਸ਼ੁਰੂ ਕਰੋ
       end: ਖ਼ਤਮ
       status: ਦਰਜਾ
+    navigation:
+      all_blocks: ਸਾਰਿਆਂ ਪਾਬੰਦੀਆਂ
+      blocks_on_me: ਮੇਰੇ ਉੱਤੇ ਰੋਕਾਂ
+      blocks_on_user_html: '%{user} ਉੱਤੇ ਪਾਬੰਦੀਆਂ'
+      blocks_by_me: ਮੇਰੇ ਵੱਲੋਂ ਰੋਕਾਂ
+      blocks_by_user_html: '%{user} ਵੱਲੋਂ ਪਾਬੰਦੀਆਂ'
+      block: 'ਪਾਬੰਦੀਆਂ #%{id}'
+      new_block: ਨਵੀਂ ਪਾਬੰਦੀ
   user_mutes:
     index:
+      title: ਚੁੱਪ ਕਰਾਏ ਵਰਤੋਂਕਾਰ
+      my_muted_users: ਮੇਰੇ ਚੁੱਪ ਕਰਾਏ ਵਰਤੋਂਕਾਰ
+      you_have_muted_n_users:
+        one: ਤੁਸੀਂ %{count} ਵਰਤੋਂਕਾਰ ਨੂੰ ਚੁੱਪ ਕਰਾਏਆ ਹੈ
+        other: ਤੁਸੀਂ %{count} ਵਰਤੋਂਕਾਰਾਂ ਨੂੰ ਚੁੱਪ ਕਰਾਏਆ ਹੈ
       table:
         thead:
+          muted_user: ਚੁੱਪ ਕਰਾਏ ਵਰਤੋਂਕਾਰ
           actions: ਕਾਰਵਾਈਆਂ
         tbody:
           send_message: ਸੁਨੇਹਾ ਘੱਲੋ
+    create:
+      notice: ਤੁਸੀਂ %{name} ਨੂੰ ਚੁੱਪ ਕਰਾਏਆ ਹੈ।
   notes:
     index:
+      subheading_commented: '''ਤੇ ਟਿੱਪਣੀ ਕੀਤੀ'
       id: ਸ਼ਿਨਾਖਤ
       creator: ਸਿਰਜਣਹਾਰ
       description: ਵੇਰਵਾ
       created_at: ਕਦੋਂ ਸਿਰਜਿਆ ਗਿਆ
       last_changed: ਆਖ਼ਰੀ ਤਬਦੀਲੀ
+      apply: ਲਾਗੂ ਕਰੋ
+      all: ਸਾਰੇ
+      open: ਖੋਲ੍ਹੋ
+      closed: ਬੰਦ
     show:
       title: 'ਟਿੱਪਣੀ: %{id}'
       description: ਵੇਰਵਾ
+      event_hidden_by_html: '%{user} %{time_ago} ਵੱਲੋਂ ਲੁਕਾਇਆ ਗਿਆ'
+      discussion: ਗੱਲਬਾਤ
+      subscribe: ਗਾਹਕ ਬਣੋ
+      unsubscribe: ਗਾਹਕੀ ਰੱਦ ਕਰੋ
       hide: ਉਹਲੇ ਕਰੋ
       resolve: ਹੱਲ਼ ਕੱਢੋ
       reactivate: ਮੁੜ ਚਾਲੂ ਕਰੋ
       comment_and_resolve: ਟਿੱਪਣੀ ਕਰੋ ਅਤੇ ਹੱਲ ਕਰੋ
       comment: ਟਿੱਪਣੀ ਕਰੋ
+      other_problems_resolved: ਹੋਰ ਸਾਰੀਆਂ ਸਮੱਸਿਆਵਾਂ ਲਈ, ਹੱਲ ਲੱਭਣਾ ਹੀ ਕਾਫ਼ੀ ਹੈ।
     new:
-      title: à¨¨à¨µà©\80à©° à¨\9fਿੱਪਣà©\80
+      title: à¨¨à¨µà¨¾à¨\82 à¨¨à©\8bà¨\9f
       anonymous_warning_log_in: ਦਾਖ਼ਲ ਹੋਵੋ
       anonymous_warning_sign_up: ਖਾਤਾ ਬਣਾਓ
       add: ਟਿੱਪਣੀ ਜੋੜੋ
@@ -2014,10 +2260,11 @@ pa:
       long_link: ਕੜੀ
       short_link: ਨਿੱਕੀ ਕੜੀ
       embed: ਐੱਚ.ਟੀ.ਐੱਮ.ਐੱਲ.
-      format: 'ਰà©\82ਪ-ਰà©\87à¨\96ਾ:'
+      format: 'ਤਰਤà©\80ਬ:'
       scale: 'ਪੈਮਾਨਾ:'
       download: ਉਤਾਰੋ
       short_url: ਨਿੱਕਾ ਯੂ.ਆਰ.ਐੱਲ.
+      include_marker: ਨਿਸ਼ਾਨੀ ਸ਼ਾਮਲ ਕਰੋ
       view_larger_map: ਵਡੇਰਾ ਨਕਸ਼ਾ ਵੇਖੋ
     embed:
       report_problem: ਸਮੱਸਿਆ ਦੀ ਇਤਲਾਹ ਦਿਓ
@@ -2029,7 +2276,7 @@ pa:
         in: ਅੰਦਰ ਨੂੰ ਜਾਉ
         out: ਬਾਹਰ ਨੂੰ ਆਉ
       locate:
-        title: à¨®à©\87ਰਾ à¨\9fਿà¨\95ਾਣਾ à¨µà¨¿à¨\96ਾà¨\89
+        title: à¨®à©\87ਰਾ à¨\9fਿà¨\95ਾਣਾ à¨µà¨¿à¨\96ਾà¨\93
       base:
         standard: ਮਿਆਰੀ
         cycle_map: ਸਾਈਕਲ ਨਕਸ਼ਾ
@@ -2041,7 +2288,10 @@ pa:
         data: ਨਕਸ਼ੇ ਦੀ ਸਮੱਗਰੀ
         gps: ਜਨਤਕ GPS ਖੁਰਾ-ਖੋਜ
         title: ਤਹਿਆਂ
+      openstreetmap_contributors: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ੇ (ਓਪਨਸਟ੍ਰੀਟਮੈਪ) ਤੇ ਯੋਗਦਾਨ ਪਾਉਣ
+        ਵਾਲੇ
       make_a_donation: ਦਾਨ ਦਿਉ
+      website_and_api_terms: ਵੈੱਬਸਾਈਟ ਅਤੇ API ਸ਼ਰਤਾਂ
     site:
       edit_tooltip: ਨਕਸ਼ਾ ਸੋਧੋ
       edit_disabled_tooltip: ਨਕਸ਼ਾ ਸੋਧਣ ਵਾਸਤੇ ਅੰਦਰ ਨੂੰ ਜਾਉ
@@ -2054,10 +2304,17 @@ pa:
         fossgis_osrm_car: ਕਾਰ (OSRM)
         fossgis_osrm_foot: ਪੈਦਲ (OSRM)
         graphhopper_bicycle: ਸੈਕਲ (GraphHopper)
+        graphhopper_car: ਕਾਰ (GraphHopper)
+        graphhopper_foot: ਪੈਦਲ (GraphHopper)
+        fossgis_valhalla_bicycle: ਸੈਕਲ (Valhalla)
+        fossgis_valhalla_car: ਕਾਰ (Valhalla)
+        fossgis_valhalla_foot: ਪੈਦਲ (Valhalla)
+      descend: ਉਤਰਾਈ
       distance: ਵਾਟ
       distance_m: '%{distance}ਮੀਟਰ'
       distance_km: '%{distance}ਕਿਲੋਮੀਟਰ'
       errors:
+        no_route: ਦੋਵਾਂ ਥਾਵਾਂ ਵਿਚਕਾਰ ਕੋਈ ਰਾਹ ਨਹੀਂ ਲੱਭਿਆ।
         no_place: ਮਾਫ਼ ਕਰਨਾ - '%{place}' ਨੂੰ ਲੱਭ ਨਹੀਂ ਸਕਿਆ।
       instructions:
         continue_without_exit: '%{name} ''ਤੇ ਚੱਲੀ-ਚੱਲੋ'
@@ -2084,9 +2341,9 @@ pa:
         start_without_exit: '%{name} ਤੋਂ ਸ਼ੁਰੂ ਕਰੋ'
         destination_without_exit: ਟਿਕਾਣਾ 'ਤੇ ਪਹੁੰਚ ਗਏ।
         end_oneway_without_exit: '%{name} ''ਤੇ ਇੱਕ-ਤਰਫਾ ਰਾਹ ਦੀ ਸਮਾਪਤੀ'
-        roundabout_with_exit: à¨\97à©\8bਲ à¨\9aੱà¨\95ਰ 'ਤà©\8bà¨\82 %{exit} à¨¨à¨¿à¨\95ਲ ਕੇ %{name} ਉੱਤੇ ਜਾਓ
+        roundabout_with_exit: à¨\97à©\8bਲ à¨\9aੱà¨\95ਰ 'ਤà©\8bà¨\82 %{exit} à¨\95ੱਢ ਕੇ %{name} ਉੱਤੇ ਜਾਓ
         roundabout_with_exit_ordinal: ਗੋਲ ਚੱਕਰ 'ਤੋਂ %{exit} ਕੱਢ ਕੇ %{name} ਉੱਤੇ ਜਾਓ
-        exit_roundabout: à¨\97à©\8bਲ à¨\9aੱà¨\95ਰ à¨¤à©\8bà¨\82 %{name} à¨\89ੱਤà©\87 à¨¬à¨¾à¨¹à¨° à¨¨à¨¿à¨\95ਲ
+        exit_roundabout: à¨\97à©\8bਲ à¨\9aੱà¨\95ਰ à¨¤à©\8bà¨\82 %{name} à¨\89ੱਤà©\87 à¨¬à¨¾à¨¹à¨° à¨¨à©\82à©° à¨\95ੱਢ
         unnamed: ਅਣਜਾਣ ਸਡ਼ਕ
         exit_counts:
           first: ਪਹਿਲਾ
@@ -2102,19 +2359,43 @@ pa:
       time: ਵਕਤ
     query:
       way: ਰਾਹ
+      relation: ਸਬੰਧ
+      nothing_found: ਕੋਈ ਮੇਲ ਨਹੀਂ ਮਿਲਿਆ
       error: '%{server} ਨਾਲ ਸੰਪਰਕ ਕਰਨ ਵਿੱਚ ਗਲਤੀ: %{error}'
     context:
       show_address: ਪਤਾ ਦਿਖਾਓ
       query_features: ਪੁੱਛਗਿੱਛ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
       centre_map: ਨਕਸ਼ੇ ਦਾ ਕੇਂਦਰ ਇੱਥੇ
   redactions:
+    edit:
+      heading: ਸੁਧਾਈ ਸੋਧੋ
+      title: ਸੁਧਾਈ ਸੋਧੋ
+    index:
+      empty: ਵਿਖਾਉਣ ਲਈ ਕੋਈ ਸੁਧਾਈ ਨਹੀਂ ਏ।
+      heading: ਸੁਧਾਿਆਂ ਦੀ ਸੂਚੀ
+      title: ਸੁਧਾਿਆਂ ਦੀ ਸੂਚੀ
+      new: ਨਵੀਂ ਸੁਧਾਈ
+    new:
+      heading: ਨਵੀਂ ਸੁਧਾਈ ਲਈ ਜਾਣਕਾਰੀ ਦਰਜ ਕਰੋ
+      title: ਨਵੀਂ ਸੁਧਾਈ ਬਣਾਈ ਜਾ ਰਹੀ ਏ
     show:
       description: 'ਵੇਰਵਾ:'
+      heading: ਸੁਧਾਈ ਵਿਖਾ ਰਿਹਾ ਹੈ "%{title}"
+      title: ਸੁਧਾਈ ਵਿਖਾ ਰਿਹਾ ਹੈ
       user: ਸਿਰਜਣਹਾਰ
+      edit: ਇਸ ਸੁਧਾਈ ਨੂੰ ਸੋਧੋ
+      destroy: ਇਸ ਸੁਧਾਈ ਨੂੰ ਹਟਾਓ
       confirm: ਕੀ ਤੁਹਾਨੂੰ ਯਕੀਨ ਹੈ?
+    create:
+      flash: ਸੁਧਾਈ ਬਣਾਈ ਗਈ
     update:
       flash: ਤਬਦੀਲੀਆਂ ਸੰਭਾਲੀਆਂ ਗਈਆਂ ਹਨ।
+    destroy:
+      flash: ਸੁਧਾਈ ਨੂੰ ਤਬਾਹ ਕਰ ਦਿੱਤਾ ਗਿਆ ਏ।
+      error: ਇਸ ਸੁਧਾਈ ਨੂੰ ਤਬਾਹ ਕਰਨ ਵਿੱਚ ਇੱਕ ਗਲਤੀ ਆਈ ਸੀ।
   validations:
+    leading_whitespace: ਮੋਹਰੇ ਖਾਲੀ ਥਾਂ ਏ
+    trailing_whitespace: ਪਿੱਛੇ ਖਾਲੀ ਥਾਂ ਏ
     invalid_characters: ਗਲਤ ਅੱਖਰ ਸ਼ਾਮਲ ਹਨ
     url_characters: ਖਾਸ URL ਅੱਖਰ (%{characters}) ਸ਼ਾਮਲ ਹਨ
 ...
index ff195a685169559492ac86fb86d0fbf357b4b98e..872cd6020310f29490a102c91df1e1ab41650c9c 100644 (file)
@@ -38,6 +38,7 @@
 # Author: Maro21
 # Author: Mateon1
 # Author: Meeqoo
+# Author: Mgorny
 # Author: Mikini
 # Author: Mkot
 # Author: Nemo bis
@@ -60,6 +61,7 @@
 # Author: Sp5uhe
 # Author: Stojex
 # Author: Strebski
+# Author: T11
 # Author: Teiron
 # Author: The Polish
 # Author: Tsca
@@ -120,24 +122,24 @@ pl:
       diary_comment: Komentarz do dziennika
       diary_entry: Wpis dziennika
       friend: Znajomy
-      issue: Problem
+      issue: Sprawa
       language: Język
       message: Wiadomość
       node: Węzeł
       node_tag: Znacznik węzła
       note: Uwaga
       old_node: Stary węzeł
-      old_node_tag: Znacznik wcześniejszego węzła
+      old_node_tag: Znacznik starego węzła
       old_relation: Stara relacja
       old_relation_member: Człon starej relacji
-      old_relation_tag: Znacznik wcześniejszej relacji
+      old_relation_tag: Znacznik starej relacji
       old_way: Stara linia
-      old_way_node: Węzeł wcześniejszej linii
+      old_way_node: Węzeł starej linii
       old_way_tag: Znacznik starej linii
       relation: Relacja
       relation_member: Człon relacji
       relation_tag: Znacznik relacji
-      report: Zgłoszenie
+      report: zgłoszenie
       session: Sesja
       trace: Ślad
       tracepoint: Punkt śladu
@@ -1751,7 +1753,7 @@ pl:
       description: 'Wpis dziennika OpenStreetMap #%{id}'
       subject: '[OpenStreetMap] %{user} skomentował wpis dziennika'
       hi: Cześć, %{to_user},
-      header: '%{from_user} zostawił(a) komentarz do wpisu w dzienniku OpenStreetMap
+      header: '%{from_user} zostawił komentarz do wpisu w dzienniku OpenStreetMap
         o temacie %{subject}:'
       header_html: '%{from_user} zostawił(a) komentarz do wpisu w dzienniku OpenStreetMap
         o temacie %{subject}:'
@@ -1782,13 +1784,13 @@ pl:
       befriend_them: Możesz również dodać go jako znajomego na %{befriendurl}.
       befriend_them_html: Możesz również dodać go jako znajomego na %{befriendurl}.
     gpx_description:
-      description_with_tags: 'Wygląda jak twój plik GPX %{trace_name} z opisem %{trace_description}
-        i tagami: %{tags}'
-      description_with_tags_html: 'Wygląda jak twój plik %{trace_name} z opisem %{trace_description}
-        i następującymi tagami: %{tags}'
-      description_with_no_tags: Wygląda jak twój plik %{trace_name} z opisem %{trace_description}
-        i bez tagów
-      description_with_no_tags_html: Wygląda jak twój plik %{trace_name} z opisem
+      description_with_tags: 'Wygląda na to, że twój plik GPX %{trace_name} z opisem
+        %{trace_description} i tagami: %{tags}'
+      description_with_tags_html: 'Wygląda na to, że twój plik %{trace_name} z opisem
+        %{trace_description} i następującymi tagami: %{tags}'
+      description_with_no_tags: Wygląda na to, że twój plik %{trace_name} z opisem
+        %{trace_description} i bez tagów
+      description_with_no_tags_html: Wygląda na to, że twój plik %{trace_name} z opisem
         %{trace_description} i bez tagów
     gpx_failure:
       hi: Cześć, %{to_user},
@@ -1910,9 +1912,9 @@ pl:
       success: Twoje konto zostało zatwierdzone, cieszymy się, że do nas dołączyłeś!
       already active: To konto zostało potwierdzone.
       unknown token: Ten kod potwierdzający wygasł lub nie istnieje.
-      resend_html: Jeśli chcesz, abyśmy ponownie wysłali wiadomość e-mail z potwierdzeniem,
-        %{reconfirm_link}.
-      click_here: Kliknij tutaj
+      if_need_resend: Jeśli potrzebujesz, żebyśmy ponownie wysłali e-mail z potwierdzeniem,
+        kliknij poniższy przycisk.
+      resend_button: Wyślij ponownie e-mail z potwierdzeniem
     confirm_resend:
       failure: Nie odnaleziono użytkownika %{name}.
     confirm_email:
@@ -1930,33 +1932,6 @@ pl:
         listy dodałeś adres %{sender}. Dzięki temu będziemy mogli skontaktować się
         z tobą bez problemów.
   messages:
-    inbox:
-      title: Wiadomości odebrane
-      messages: Masz %{new_messages} i %{old_messages}
-      new_messages:
-        few: '%{count} nowe wiadomości'
-        many: '%{count} nowych wiadomości'
-        one: '%{count} nową wiadomość'
-        other: '%{count} nowych wiadomości'
-      old_messages:
-        few: '%{count} stare wiadomości'
-        many: '%{count} starych wiadomości'
-        one: '%{count} starą wiadomość'
-        other: '%{count} starych wiadomości'
-      no_messages_yet_html: Nie masz jeszcze wiadomości. Może skontaktujesz się z
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: użytkownikami z twojej okolicy
-    messages_table:
-      from: Od
-      to: Do
-      subject: Temat
-      date: Data
-      actions: Operacje
-    message_summary:
-      unread_button: Oznacz jako nieprzeczytaną
-      read_button: Oznacz jako przeczytaną
-      destroy_button: Usuń
-      unmute_button: Przenieś do skrzynki odbiorczej
     new:
       title: Wysyłanie wiadomości
       send_message_to_html: Wyślij nową wiadomość do %{name}
@@ -1969,22 +1944,6 @@ pl:
       title: Nie ma takiej wiadomości
       heading: Nie ma takiej wiadomości
       body: Niestety nie ma wiadomości o tym identyfikatorze.
-    outbox:
-      title: Wiadomości wysłane
-      messages:
-        one: '%{count} wysłana wiadomość'
-        few: '%{count} wysłane wiadomości'
-        other: '%{count} wysłanych wiadomości'
-      no_sent_messages_html: Nie masz jeszcze wysłanych wiadomości. Może skontaktujesz
-        się z %{people_mapping_nearby_link}?
-      people_mapping_nearby: użytkownikami z twojej okolicy
-    muted:
-      title: Wyciszone wiadomości
-      messages:
-        one: Masz %{count} wyciszoną wiadomość
-        few: Masz %{count} wyciszone wiadomości
-        many: Masz %{count} wyciszonych wiadomości
-        other: Masz %{count} wyciszonych wiadomości
     reply:
       wrong_user: Jesteś zalogowany jako %{user}, ale wiadomość, na którą chcesz odpowiedzieć,
         nie została wysłana do tego użytkownika. Zaloguj się jako właściwy użytkownik,
@@ -1998,12 +1957,6 @@ pl:
       wrong_user: Jesteś zalogowany jako %{user}, ale wiadomość, którą chcesz przeczytać,
         nie została wysłana przez tego użytkownika ani do niego. Zaloguj się jako
         właściwy użytkownik, aby ją przeczytać.
-    sent_message_summary:
-      destroy_button: Usuń
-    heading:
-      my_inbox: wiadomości odebrane
-      my_outbox: wiadomości wysłane
-      muted_messages: Wyciszone wiadomości
     mark:
       as_read: Wiadomość została oznaczona jako przeczytana
       as_unread: Wiadomość została oznaczona jako nieprzeczytana
@@ -2012,6 +1965,59 @@ pl:
       error: Nie można było przenieść wiadomości do skrzynki odbiorczej.
     destroy:
       destroyed: Wiadomość usunięta
+    mailboxes:
+      heading:
+        my_inbox: wiadomości odebrane
+        my_outbox: wiadomości wysłane
+        muted_messages: Wyciszone wiadomości
+      messages_table:
+        from: Od
+        to: Do
+        subject: Temat
+        date: Data
+        actions: Operacje
+      message:
+        unread_button: Oznacz jako nieprzeczytaną
+        read_button: Oznacz jako przeczytaną
+        destroy_button: Usuń
+        unmute_button: Przenieś do skrzynki odbiorczej
+    inboxes:
+      show:
+        title: Wiadomości odebrane
+        messages: Masz %{new_messages} i %{old_messages}
+        new_messages:
+          few: '%{count} nowe wiadomości'
+          many: '%{count} nowych wiadomości'
+          one: '%{count} nową wiadomość'
+          other: '%{count} nowych wiadomości'
+        old_messages:
+          few: '%{count} stare wiadomości'
+          many: '%{count} starych wiadomości'
+          one: '%{count} starą wiadomość'
+          other: '%{count} starych wiadomości'
+        no_messages_yet_html: Nie masz jeszcze wiadomości. Może skontaktujesz się
+          z %{people_mapping_nearby_link}?
+        people_mapping_nearby: użytkownikami z twojej okolicy
+    muted_inboxes:
+      show:
+        title: Wyciszone wiadomości
+        messages:
+          one: Masz %{count} wyciszoną wiadomość
+          few: Masz %{count} wyciszone wiadomości
+          many: Masz %{count} wyciszonych wiadomości
+          other: Masz %{count} wyciszonych wiadomości
+    outboxes:
+      show:
+        title: Wiadomości wysłane
+        messages:
+          one: '%{count} wysłana wiadomość'
+          few: '%{count} wysłane wiadomości'
+          other: '%{count} wysłanych wiadomości'
+        no_sent_messages_html: Nie masz jeszcze wysłanych wiadomości. Może skontaktujesz
+          się z %{people_mapping_nearby_link}?
+        people_mapping_nearby: użytkownikami z twojej okolicy
+      message:
+        destroy_button: Usuń
   passwords:
     new:
       title: Zgubione hasło
@@ -2296,6 +2302,8 @@ pl:
         contributors_nl_credit_html: '%{netherlands}: Zawiera dane &copy; AND, 2007
           (%{and_link})'
         contributors_nl_netherlands: Holandia
+        contributors_nl_and: '*'
+        contributors_nl_and_url: '*'
         contributors_nz_credit_html: '%{new_zealand}: Zawiera dane uzyskane z %{linz_data_service_link}
           i licencjonowane do ponownego użycia na podstawie licencji %{cc_by_link}.'
         contributors_nz_new_zealand: Nowa Zelandia
@@ -2511,7 +2519,7 @@ pl:
           orchard: Sad
           vineyard: Winnica
           forest: Las
-          wood: Drewno
+          wood: Lasek
           farmland: Grunty rolne
           grass: Trawnik
           meadow: Łąka
@@ -2577,7 +2585,8 @@ pl:
         real_and_current: rzeczywiste, jak i aktualne
         off_the_map_html: Nie wprowadzamy obiektów nieistniejących, hipotetycznych
           oraz danych ze źródeł objętych prawami autorskimi. Jeśli nie masz pozwolenia,
-          nie kopiuj z innych map (zarówno tych papierowych, jak i online).%{doesnt}
+          nie kopiuj z innych map (zarówno tych papierowych, jak i online)%{doesnt}
+        doesnt: .
       basic_terms:
         title: Podstawowe zasady mapowania
         paragraph_1: OpenStreetMap ma własny slang. Oto kilka słów, które ci się przydadzą.
@@ -2776,6 +2785,28 @@ pl:
       wikipedia:
         title: Zaloguj się przez Wikipedię
         alt: Logo Wikipedii
+    share:
+      email:
+        title: Udostępnij przez e-mail
+        alt: ikona e-maila
+      bluesky:
+        title: Udostępnij na Bluesky
+        alt: ikona Bluesky
+      facebook:
+        title: Udostępnij na Facebooku
+        alt: ikona Facebooka
+      linkedin:
+        title: Udostępnij na LinkedIn
+        alt: ikona LinkedIn
+      mastodon:
+        title: Udostępnij na Mastodon
+        alt: ikona Mastodon
+      telegram:
+        title: Udostępnij na Telegramie
+        alt: ikona Telegrama
+      x:
+        title: Udostępnij na Twitterze (X)
+        alt: ikona X
   oauth:
     permissions:
       missing: Nie zezwoliłeś aplikacji na dostęp do tej funkcji
@@ -2990,6 +3021,29 @@ pl:
     go_public:
       flash success: Wszystkie twoje edycje są od teraz publiczne i jesteś uprawniony
         do edycji.
+    issued_blocks:
+      show:
+        title: Blokady nałożone przez %{name}
+        heading_html: Lista blokad nałożonych przez %{name}
+        empty: '%{name} nie nałożył jeszcze żadnej blokady.'
+    received_blocks:
+      show:
+        title: Blokady na użytkownika %{name}
+        heading_html: Lista blokad na użytkownika %{name}
+        empty: Użytkownik %{name} nie był jeszcze zablokowany.
+      edit:
+        title: Odwoływanie wszystkich blokad nałożonych na użytkownika %{block_on}
+        heading_html: Odwoływanie wszystkich blokad nałożonych na użytkownika %{block_on}
+        empty: Użytkownik %{name} nie ma aktywnych blokad.
+        confirm: Jesteś pewny, że chcesz odwołać %{active_blocks}?
+        active_blocks:
+          one: '%{count} aktywna blokada'
+          few: '%{count} aktywne blokady'
+          many: '%{count} aktywnych blokad'
+          other: ""
+        revoke: Odwołaj!
+      destroy:
+        flash: Wszystkie aktywne blokady zostały odwołane.
     lists:
       show:
         title: Użytkownicy
@@ -3074,18 +3128,6 @@ pl:
       title: Blokady użytkowników
       heading: Lista blokad użytkowników
       empty: Nie nałożono do tej pory żadnych blokad.
-    revoke_all:
-      title: Odwoływanie wszystkich blokad nałożonych na użytkownika %{block_on}
-      heading_html: Odwoływanie wszystkich blokad nałożonych na użytkownika %{block_on}
-      empty: Użytkownik %{name} nie ma aktywnych blokad.
-      confirm: Jesteś pewny, że chcesz odwołać %{active_blocks}?
-      active_blocks:
-        one: '%{count} aktywna blokada'
-        few: '%{count} aktywne blokady'
-        many: '%{count} aktywnych blokad'
-        other: ""
-      revoke: Odwołaj!
-      flash: Wszystkie aktywne blokady zostały odwołane.
     helper:
       time_future_html: Blokada wygasa za %{time}.
       until_login: Aktywna do momentu zalogowania się użytkownika.
@@ -3127,14 +3169,6 @@ pl:
         read_html: przeczytana %{time}
         time_in_future_title: '%{time_absolute}; za %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Blokady na użytkownika %{name}
-      heading_html: Lista blokad na użytkownika %{name}
-      empty: Użytkownik %{name} nie był jeszcze zablokowany.
-    blocks_by:
-      title: Blokady nałożone przez %{name}
-      heading_html: Lista blokad nałożonych przez %{name}
-      empty: '%{name} nie nałożył jeszcze żadnej blokady.'
     show:
       title: '%{block_on} zablokowany przez użytkownika %{block_by}'
       heading_html: '%{block_on} zablokowany przez użytkownika %{block_by}'
@@ -3167,10 +3201,10 @@ pl:
       title: Wyciszeni użytkownicy
       my_muted_users: Wyciszeni użytkownicy
       you_have_muted_n_users:
-        one: Wyciszyłeś %{count} użytkownika.
-        few: Wyciszyłeś %{count} użytkowników.
-        many: Wyciszyłeś %{count} użytkowników.
-        other: Wyciszyłeś %{count} użytkowników.
+        one: Wyciszyłeś %{count} użytkownika
+        few: Wyciszyłeś %{count} użytkowników
+        many: Wyciszyłeś %{count} użytkowników
+        other: Wyciszyłeś %{count} użytkowników
       user_mute_explainer: Wiadomości od wyciszonych użytkowników są przenoszone do
         osobnej skrzynki odbiorczej, a ty nie otrzymasz powiadomień e-mailem.
       user_mute_admins_and_moderators: Możesz wyciszyć administratorów i moderatorów,
@@ -3283,8 +3317,7 @@ pl:
       center_marker: Wyśrodkuj mapę na znaczniku
       paste_html: Wklej podany kod HTML do swojej strony
       view_larger_map: Wyświetl większą mapę
-      only_standard_layer: Tylko warstwa podstawowa, rowerowa lub transportu publicznego
-        może być eksportowana jako obraz
+      only_layers_exported_as_image: 'Tylko poniższe warstwy można pobrać jako obraz:'
     embed:
       report_problem: Zgłoś błąd
     key:
index 014a3f1fe6477b3ea724819621f0df1b6ccd6d57..2a4c4c9b7e12370009cdc0d4c1b8c86fcf9ba09d 100644 (file)
@@ -1298,27 +1298,6 @@ pnb:
       whitelist: جے لبھ نہیں سکوگے، تہاڈے سپَیم میل دکھیو یا ”وائیٹ‌لِسٹ“ وچ %{sender}
         پایو۔
   messages:
-    inbox:
-      title: اینباکس
-      messages: تہاڈے %{new_messages} تے %{old_messages} اے
-      new_messages:
-        one: '%{count} نویں سنیہا'
-        other: '%{count} نواں سنیہے'
-      old_messages:
-        one: '%{count} پراݨا سنیہا'
-        other: '%{count} پراݨے سنیہے'
-      no_messages_yet_html: حالاں کوئی سنیہے نہیں اے۔ %{people_mapping_nearby_link}
-        ویکھ سکیو۔
-      people_mapping_nearby: نیڑے تیڑے دے نقشے والے
-    messages_table:
-      from: ولّوں
-      to: ول
-      subject: وشا
-      date: تریخ
-    message_summary:
-      unread_button: اݨ پڑھا نشان لاؤ
-      read_button: پڑھا نشان لاؤ
-      destroy_button: مٹاؤ
     new:
       title: سنہا گھلو
       back_to_inbox: پچھلا میل جاؤ
@@ -1328,28 +1307,52 @@ pnb:
       title: اجہا کوئی سُنیہا نہیں
       heading: اجہا کوئی سنیہا نہیں
       body: ایہہ سنیہا نہیں لبھیا۔
-    outbox:
-      title: آؤٹباکس
-      messages:
-        one: تہاڈے %{count} بھیجݨ سنیہا اے
-        other: تہاڈے  %{count} بھیجݨ سنیہے اے
-      people_mapping_nearby: نیڑے تیڑے دے نقشے والے
     show:
       title: مُنیہا پڑھو
       reply_button: جواب
       unread_button: اݨ پڑھا نشان لاؤ
       destroy_button: مٹاؤ
       back: پچھے
-    sent_message_summary:
-      destroy_button: مٹاؤ
-    heading:
-      my_inbox: اینباکس
-      my_outbox: میرا آؤٹباکس
     mark:
       as_read: سنیہا پڑھا نشان لایا گیا
       as_unread: سنیہا اݨ پڑھا نشان لایا گیا
     destroy:
       destroyed: سُنیہا مٹائا گیا
+    mailboxes:
+      heading:
+        my_inbox: اینباکس
+        my_outbox: میرا آؤٹباکس
+      messages_table:
+        from: ولّوں
+        to: ول
+        subject: وشا
+        date: تریخ
+      message:
+        unread_button: اݨ پڑھا نشان لاؤ
+        read_button: پڑھا نشان لاؤ
+        destroy_button: مٹاؤ
+    inboxes:
+      show:
+        title: اینباکس
+        messages: تہاڈے %{new_messages} تے %{old_messages} اے
+        new_messages:
+          one: '%{count} نویں سنیہا'
+          other: '%{count} نواں سنیہے'
+        old_messages:
+          one: '%{count} پراݨا سنیہا'
+          other: '%{count} پراݨے سنیہے'
+        no_messages_yet_html: حالاں کوئی سنیہے نہیں اے۔ %{people_mapping_nearby_link}
+          ویکھ سکیو۔
+        people_mapping_nearby: نیڑے تیڑے دے نقشے والے
+    outboxes:
+      show:
+        title: آؤٹباکس
+        messages:
+          one: تہاڈے %{count} بھیجݨ سنیہا اے
+          other: تہاڈے  %{count} بھیجݨ سنیہے اے
+        people_mapping_nearby: نیڑے تیڑے دے نقشے والے
+      message:
+        destroy_button: مٹاؤ
   passwords:
     new:
       title: پاس‌ورڈ گُم گیا
@@ -1934,7 +1937,6 @@ pnb:
       short_url: چھوٹی کڑی
       include_marker: چِنھ نال سانجھو
       view_larger_map: وڈیرا نقشہ ویکھو
-      only_standard_layer: تصویر بݨاؤݨ لئی ایہی میعری نقشہ برامد کر سکدا سی۔
     embed:
       report_problem: کوئی مسئلہ رپورٹ کریو
     key:
index 59531b28c279b986b9dbe99b265d10236fb4e72e..e83677c8b3c8c5d36579bbd93e26131218f89f98 100644 (file)
@@ -298,17 +298,19 @@ ps:
     confirm_email:
       button: تاييد
   messages:
-    messages_table:
-      date: نېټه
-    message_summary:
-      destroy_button: ړنگول
     new:
       title: پيغام لېږل
     show:
       title: پيغام لوستل
       reply_button: ځواب
-    sent_message_summary:
-      destroy_button: ړنگول
+    mailboxes:
+      messages_table:
+        date: نېټه
+      message:
+        destroy_button: ړنگول
+    outboxes:
+      message:
+        destroy_button: ړنگول
   passwords:
     new:
       heading: آيا پټنوم مو هېر شوی؟
index 42553ec9ef9b1c50347a2ba586494398c55676a4..f2a8e1b9b6dbbb629295e839d236e7dd2d6b16e5 100644 (file)
@@ -1853,8 +1853,6 @@ pt-PT:
       success: Conta confirmada. Obrigado por te registares!
       already active: Esta conta já foi confirmada.
       unknown token: Esse código de confirmação expirou ou não existe.
-      resend_html: Se precisares que reenviemos o e-mail de confirmação, %{reconfirm_link}.
-      click_here: clica caqui
     confirm_resend:
       failure: O utilizador %{name} não foi encontrado.
     confirm_email:
@@ -1872,29 +1870,6 @@ pt-PT:
         de que colocas o %{sender} na whitelist (lista branca), já que não temos possibilidade
         de responder a pedidos de confirmação.
   messages:
-    inbox:
-      title: Caixa de Entrada
-      messages: Tens %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} mensagem nova'
-        other: '%{count} mensagens novas'
-      old_messages:
-        one: '%{count} mensagem antiga'
-        other: '%{count} mensagens antigas'
-      no_messages_yet_html: Ainda não tens mensagens. Porque não entras em contacto
-        com algumas %{people_mapping_nearby_link}?
-      people_mapping_nearby: pessoas que mapeiam perto de ti
-    messages_table:
-      from: De
-      to: Para
-      subject: Assunto
-      date: Data
-      actions: Ações
-    message_summary:
-      unread_button: Marcar como não lida
-      read_button: Marcar como lida
-      destroy_button: Eliminar
-      unmute_button: Mover para caixa de entrada
     new:
       title: Enviar mensagem
       send_message_to_html: Enviar uma nova mensagem para %{name}
@@ -1907,19 +1882,6 @@ pt-PT:
       title: Esta mensagem não existe
       heading: Esta mensagem não existe
       body: Lamentamos, não existe nenhuma mensagem com esse identificador (id).
-    outbox:
-      title: Caixa de saída
-      messages:
-        one: Tens %{count} mensagem enviada
-        other: Tens %{count} mensagens enviadas
-      no_sent_messages_html: Ainda não tens mensagens enviadas. Porque não entras
-        em contacto com algumas %{people_mapping_nearby_link}?
-      people_mapping_nearby: pessoas que mapeiam perto de ti
-    muted:
-      title: Mensagens Silenciadas
-      messages:
-        one: '%{count} mensagem silenciada'
-        other: Tens %{count} mensagens silenciadas
     reply:
       wrong_user: Iniciaste sessão como `%{user}', mas a mensagem a que pretendes
         responder não foi enviada para esse utilizador. Por favor, entra na conta
@@ -1933,12 +1895,6 @@ pt-PT:
       wrong_user: Iniciaste sessão como `%{user}', mas a mensagem que pediste para
         ler não foi enviada por ou para esse utilizador. Por favor, entra na conta
         correta para poderes ler a mensagem.
-    sent_message_summary:
-      destroy_button: Eliminar
-    heading:
-      my_inbox: Caixa de entrada
-      my_outbox: Caixa de saída
-      muted_messages: Mensagens silenciadas
     mark:
       as_read: Mensagem marcada como lida
       as_unread: Mensagem marcada como não lida
@@ -1947,6 +1903,52 @@ pt-PT:
       error: A mensagem não pôde ser movida para a caixa de entrada.
     destroy:
       destroyed: Mensagem eliminada
+    mailboxes:
+      heading:
+        my_inbox: Caixa de entrada
+        my_outbox: Caixa de saída
+        muted_messages: Mensagens silenciadas
+      messages_table:
+        from: De
+        to: Para
+        subject: Assunto
+        date: Data
+        actions: Ações
+      message:
+        unread_button: Marcar como não lida
+        read_button: Marcar como lida
+        destroy_button: Eliminar
+        unmute_button: Mover para caixa de entrada
+    inboxes:
+      show:
+        title: Caixa de Entrada
+        messages: Tens %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} mensagem nova'
+          other: '%{count} mensagens novas'
+        old_messages:
+          one: '%{count} mensagem antiga'
+          other: '%{count} mensagens antigas'
+        no_messages_yet_html: Ainda não tens mensagens. Porque não entras em contacto
+          com algumas %{people_mapping_nearby_link}?
+        people_mapping_nearby: pessoas que mapeiam perto de ti
+    muted_inboxes:
+      show:
+        title: Mensagens Silenciadas
+        messages:
+          one: '%{count} mensagem silenciada'
+          other: Tens %{count} mensagens silenciadas
+    outboxes:
+      show:
+        title: Caixa de saída
+        messages:
+          one: Tens %{count} mensagem enviada
+          other: Tens %{count} mensagens enviadas
+        no_sent_messages_html: Ainda não tens mensagens enviadas. Porque não entras
+          em contacto com algumas %{people_mapping_nearby_link}?
+        people_mapping_nearby: pessoas que mapeiam perto de ti
+      message:
+        destroy_button: Eliminar
   passwords:
     new:
       title: Palavra-passe esquecida
@@ -2925,6 +2927,27 @@ pt-PT:
     go_public:
       flash success: Todas as tuas edições são agora públicas e já podes começar a
         editar.
+    issued_blocks:
+      show:
+        title: Bloqueios por %{name}
+        heading_html: Lista de bloqueios feitos por %{name}
+        empty: '%{name} ainda não bloqueou ninguém.'
+    received_blocks:
+      show:
+        title: Bloqueios em %{name}
+        heading_html: Lista de bloqueios em %{name}
+        empty: '%{name} nunca foi bloqueado(a).'
+      edit:
+        title: A retirar o bloqueio de %{block_on}
+        heading_html: A retirar o bloqueio de %{block_on}
+        empty: '%{name} não tem bloqueios ativos.'
+        confirm: Tens a certeza de que queres revogar %{active_blocks}?
+        active_blocks:
+          one: '%{count} bloqueio ativo'
+          other: '%{count} bloqueios ativos'
+        revoke: Revogar!
+      destroy:
+        flash: Todos os bloqueios ativos foram revogados.
     lists:
       show:
         title: Utilizadores
@@ -3011,16 +3034,6 @@ pt-PT:
       title: Bloqueios do utilizador
       heading: Lista de bloqueios do utilizador
       empty: Ainda não foram feitos bloqueios.
-    revoke_all:
-      title: A retirar o bloqueio de %{block_on}
-      heading_html: A retirar o bloqueio de %{block_on}
-      empty: '%{name} não tem bloqueios ativos.'
-      confirm: Tens a certeza de que queres revogar %{active_blocks}?
-      active_blocks:
-        one: '%{count} bloqueio ativo'
-        other: '%{count} bloqueios ativos'
-      revoke: Revogar!
-      flash: Todos os bloqueios ativos foram revogados.
     helper:
       time_future_html: Termina em %{time}.
       until_login: Ativo até o utilizador iniciar sessão.
@@ -3052,14 +3065,6 @@ pt-PT:
         read_html: Lido em %{time}
         time_in_future_title: '%{time_absolute}; daqui a %{time_relative}'
         time_in_past_title: '%{time_absolute}; %{time_relative}'
-    blocks_on:
-      title: Bloqueios em %{name}
-      heading_html: Lista de bloqueios em %{name}
-      empty: '%{name} nunca foi bloqueado(a).'
-    blocks_by:
-      title: Bloqueios por %{name}
-      heading_html: Lista de bloqueios feitos por %{name}
-      empty: '%{name} ainda não bloqueou ninguém.'
     show:
       title: '%{block_on} bloqueado por %{block_by}'
       heading_html: '%{block_on} bloqueado por %{block_by}'
@@ -3207,8 +3212,6 @@ pt-PT:
       center_marker: Centrar o mapa no marcador
       paste_html: Colar HTML para incorporar na página web
       view_larger_map: Ver mapa maior
-      only_standard_layer: Só as camadas Padrão, de Ciclismo e de Transporte é que
-        podem ser exportadas como imagem
     embed:
       report_problem: Reportar um problema
     key:
index b0e00c6b5b069bbfd8a5ee6eca0a703993b7bd6a..0db2d80ca2e2b25b0f5e464d2bd31095b74fc191 100644 (file)
@@ -122,6 +122,7 @@ pt:
       message: Mensagem
       node: Nó
       node_tag: Etiqueta de nó
+      note: Nota
       old_node: Nó antigo
       old_node_tag: Etiqueta de nó antigo
       old_relation: Relação antiga
@@ -1103,6 +1104,12 @@ pt:
           wayside_shrine: Capelinha de Beira de Estrada
           wreck: Naufrágio
           "yes": Local Histórico
+        information:
+          board: Painel de informação
+          map: Mapa
+          office: Informações Turísticas
+          terminal: Terminal de informações
+          sign: Sinal de informação
         junction:
           "yes": Entroncamento
         landuse:
@@ -1175,6 +1182,8 @@ pt:
           track: Pista de Corrida
           water_park: Parque Aquático
           "yes": Lazer
+        lock:
+          "yes": Eclusa
         man_made:
           adit: Galeria de acesso
           advertising: Publicidade
@@ -1515,6 +1524,14 @@ pt:
           building_passage: Passagem de construção
           culvert: Duto de Drenagem
           "yes": Túnel
+        water:
+          lake: Lago
+          pond: Lagoa
+          reservoir: Lago Artificial
+          fishpond: Tanque de peixes
+          lagoon: Lagoa
+          wastewater: Agua residual
+          lock: Eclusa
         waterway:
           artificial: Via Aquática Artificial
           boatyard: Estaleiro
@@ -1579,6 +1596,10 @@ pt:
         open: Abrir
         resolved: Resolvido
     show:
+      title:
+        open: Problema aberto n.º %{issue_id}
+        ignored: Problema ignorado n.º %{issue_id}
+        resolved: Problema resolvido n.º %{issue_id}
       reports:
         one: '%{count} denúncia'
         other: '%{count} denúncias'
@@ -1848,8 +1869,6 @@ pt:
       success: Conta ativada, obrigado!
       already active: Esse conta já foi confirmada.
       unknown token: Esse código de confirmação expirou ou não existe.
-      resend_html: Se você precisar que reenviemos o e-mail de confirmação, %{reconfirm_link}.
-      click_here: clique aqui
     confirm_resend:
       failure: Usuário %{name} não encontrado.
     confirm_email:
@@ -1867,29 +1886,6 @@ pt:
         de que colocas o %{sender} na whitelist (lista branca), já que não temos possibilidade
         de responder a pedidos de confirmação.
   messages:
-    inbox:
-      title: Caixa de Entrada
-      messages: Você tem %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} nova mensagem'
-        other: '%{count} novas mensagens'
-      old_messages:
-        one: '%{count} mensagem antiga'
-        other: '%{count} mensagens antigas'
-      no_messages_yet_html: Você ainda não tem mensagens. Por que não entrar em contato
-        com %{people_mapping_nearby_link}?
-      people_mapping_nearby: alguém mapeando por perto
-    messages_table:
-      from: De
-      to: Para
-      subject: Assunto
-      date: Data
-      actions: Ações
-    message_summary:
-      unread_button: Marcar como não lida
-      read_button: Marcar como lida
-      destroy_button: Apagar
-      unmute_button: Mover para caixa de entrada
     new:
       title: Enviar mensagem
       send_message_to_html: Enviar uma nova mensagem para %{name}
@@ -1902,19 +1898,6 @@ pt:
       title: Esta mensagem não existe
       heading: Esta mensagem não existe
       body: Não existe uma mensagem com este id.
-    outbox:
-      title: Caixa de Saída
-      messages:
-        one: Você tem %{count} mensagem enviada
-        other: Você tem %{count} mensagens enviadas
-      no_sent_messages_html: Você ainda não enviou nenhuma mensagem. Por que não entrar
-        em contato com %{people_mapping_nearby_link}?
-      people_mapping_nearby: alguém mapeando por perto
-    muted:
-      title: Mensagens silenciadas
-      messages:
-        one: '%{count} mensagem silenciada'
-        other: Você tem %{count} mensagens silenciadas
     reply:
       wrong_user: Você está conectado como '%{user}' mas a mensagem que você quer
         responder não foi enviada para este usuário. Entre com o usuário correto para
@@ -1928,12 +1911,6 @@ pt:
       wrong_user: Você está conectado como '%{user}' mas a mensagem que você quer
         ler não foi enviada para ou por este usuário. Entre com o usuário correto
         para poder ler.
-    sent_message_summary:
-      destroy_button: Apagar
-    heading:
-      my_inbox: Minha caixa de entrada
-      my_outbox: Minha caixa de saída
-      muted_messages: Mensagens silenciadas
     mark:
       as_read: Mensagem marcada como lida
       as_unread: Mensagem marcada como não lida
@@ -1942,6 +1919,52 @@ pt:
       error: A mensagem não pôde ser movida para a caixa de entrada.
     destroy:
       destroyed: Mensagem apagada
+    mailboxes:
+      heading:
+        my_inbox: Minha caixa de entrada
+        my_outbox: Minha caixa de saída
+        muted_messages: Mensagens silenciadas
+      messages_table:
+        from: De
+        to: Para
+        subject: Assunto
+        date: Data
+        actions: Ações
+      message:
+        unread_button: Marcar como não lida
+        read_button: Marcar como lida
+        destroy_button: Apagar
+        unmute_button: Mover para caixa de entrada
+    inboxes:
+      show:
+        title: Caixa de Entrada
+        messages: Você tem %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} nova mensagem'
+          other: '%{count} novas mensagens'
+        old_messages:
+          one: '%{count} mensagem antiga'
+          other: '%{count} mensagens antigas'
+        no_messages_yet_html: Você ainda não tem mensagens. Por que não entrar em
+          contato com %{people_mapping_nearby_link}?
+        people_mapping_nearby: alguém mapeando por perto
+    muted_inboxes:
+      show:
+        title: Mensagens silenciadas
+        messages:
+          one: '%{count} mensagem silenciada'
+          other: Você tem %{count} mensagens silenciadas
+    outboxes:
+      show:
+        title: Caixa de Saída
+        messages:
+          one: Você tem %{count} mensagem enviada
+          other: Você tem %{count} mensagens enviadas
+        no_sent_messages_html: Você ainda não enviou nenhuma mensagem. Por que não
+          entrar em contato com %{people_mapping_nearby_link}?
+        people_mapping_nearby: alguém mapeando por perto
+      message:
+        destroy_button: Apagar
   passwords:
     new:
       title: Senha esquecida
@@ -1967,6 +1990,16 @@ pt:
       title: Minhas preferências
       preferred_editor: Editor preferido
       preferred_languages: Idiomas preferidos
+      preferred_site_color_scheme: Esquema de cores preferido para o website
+      site_color_schemes:
+        auto: Automático
+        light: Claro
+        dark: Escuro
+      preferred_map_color_scheme: Esquema de cores preferido
+      map_color_schemes:
+        auto: Automático
+        light: Claro
+        dark: Escuro
       edit_preferences: Editar preferências
     edit:
       title: Editar preferências
@@ -2709,6 +2742,28 @@ pt:
       wikipedia:
         title: Entrar com Wikipédia
         alt: Logotipo da Wikipédia
+    share:
+      email:
+        title: Compartilhar por e-mail
+        alt: Ícone de e-mail
+      bluesky:
+        title: Compartilhar pelo Bluesky
+        alt: Ícone do Bluesky
+      facebook:
+        title: Compartilhar pelo Facebook
+        alt: Ícone do Facebook
+      linkedin:
+        title: Compartilhar pelo LinkedIn
+        alt: Ícone do LinkedIn
+      mastodon:
+        title: Compartilhar pelo Mastodon
+        alt: Ícone do Mastodon
+      telegram:
+        title: Compartilhar pelo Telegram
+        alt: Ícone do Telegram
+      x:
+        title: Compartilhar pelo X
+        alt: Ícone do X
   oauth:
     permissions:
       missing: Você não permitiu o acesso da aplicação a esta facilidade
@@ -2923,6 +2978,27 @@ pt:
     go_public:
       flash success: Todas as suas edições agora são públicas, e você está com autorizado
         a editar.
+    issued_blocks:
+      show:
+        title: Bloqueios por %{name}
+        heading_html: Lista de bloqueios por %{name}
+        empty: '%{name} ainda não criou qualquer bloqueio.'
+    received_blocks:
+      show:
+        title: Bloqueios em %{name}
+        heading_html: Lista de bloqueios em %{name}
+        empty: '%{name} ainda não foi bloqueado.'
+      edit:
+        title: Revogando todos os bloqueios em %{block_on}
+        heading_html: Revogando todos os bloqueios em %{block_on}
+        empty: '%{name} não tem bloqueios ativos.'
+        confirm: Você tem certeza de que quer revogar %{active_blocks}?
+        active_blocks:
+          one: '%{count} bloqueio ativo'
+          other: '%{count} bloqueios ativos'
+        revoke: Revogar!
+      destroy:
+        flash: Todos os bloqueios ativos foram revogados.
     lists:
       show:
         title: Usuários
@@ -3007,16 +3083,6 @@ pt:
       title: Bloqueios do usuário
       heading: Lista de bloqueios de usuário
       empty: Nenhum bloqueio foi aplicado ainda.
-    revoke_all:
-      title: Revogando todos os bloqueios em %{block_on}
-      heading_html: Revogando todos os bloqueios em %{block_on}
-      empty: '%{name} não tem bloqueios ativos.'
-      confirm: Você tem certeza de que quer revogar %{active_blocks}?
-      active_blocks:
-        one: '%{count} bloqueio ativo'
-        other: '%{count} bloqueios ativos'
-      revoke: Revogar!
-      flash: Todos os bloqueios ativos foram revogados.
     helper:
       time_future_html: Termina em %{time}.
       until_login: Ativo até que o usuário se conecte.
@@ -3038,14 +3104,15 @@ pt:
         years:
           one: '%{count} ano'
           other: '%{count} anos'
-    blocks_on:
-      title: Bloqueios em %{name}
-      heading_html: Lista de bloqueios em %{name}
-      empty: '%{name} ainda não foi bloqueado.'
-    blocks_by:
-      title: Bloqueios por %{name}
-      heading_html: Lista de bloqueios por %{name}
-      empty: '%{name} ainda não criou qualquer bloqueio.'
+      short:
+        ended: finalizado
+        revoked_html: revogado por %{name}
+        active: ativo
+        active_unread: ativo não lido
+        expired_unread: expirado não lido
+        read_html: Lido em %{time}
+        time_in_future_title: '%{time_absolute}; em %{time_relative}'
+        time_in_past_title: '%{time_absolute}; %{time_relative}'
     show:
       title: '%{block_on} bloqueado por %{block_by}'
       heading_html: '%{block_on} bloqueado por %{block_by}'
@@ -3062,6 +3129,8 @@ pt:
       display_name: Usuário bloqueado
       creator_name: Criador
       reason: Razão para o bloqueio
+      start: Iniciar
+      end: Fim
       status: Status
     navigation:
       all_blocks: Todos os bloqueios
@@ -3159,6 +3228,10 @@ pt:
         não insira informações pessoais ou dados de mapas protegidos por direitos
         autorais ou listas de diretórios.
       add: Incluir nota
+    new_readonly:
+      title: Nova nota
+      warning: Novas notas não podem ser criadas porque a API do OpenStreetMap está
+        em modo somente leitura.
     notes_paging_nav:
       showing_page: Página %{page}
       next: Próxima
@@ -3184,8 +3257,6 @@ pt:
       center_marker: Centralizar o mapa no marcador
       paste_html: Cole o HTML para publicar no site
       view_larger_map: Ver mapa ampliado
-      only_standard_layer: Somente as camadas Padrão, Ciclístico, e Transporte Público
-        podem ser exportadas como uma imagem
     embed:
       report_problem: Reportar um problema
     key:
index c69fac8e464adef75c90007344894b3fd2468440..c3be0a56b8ee3f0691decfac00dd5818aa649e58 100644 (file)
@@ -1767,8 +1767,6 @@ ro:
       success: Confirmat contul dvs., vă mulțumim pentru înscrierea!
       already active: Acest cont a fost deja confirmat.
       unknown token: Codul de confirmare a expirat sau nu există.
-      resend_html: Dacă aveți nevoie să retrimitem e-mailul de confirmare, %{reconfirm_link}.
-      click_here: click aici
     confirm_resend:
       failure: Utilizatorul %{name} nu a fost găsit.
     confirm_email:
@@ -1786,29 +1784,6 @@ ro:
         vă rugăm să vă asigurați că ați plasat pe lista albă %{sender}, deoarece nu
         putem răspunde la nicio solicitare de confirmare.
   messages:
-    inbox:
-      title: Mesaje primite
-      messages: Aveți mesaje %{new_messages} și %{old_messages}
-      new_messages:
-        one: '%{count} mesaj nou'
-        other: '%{count} mesaje noi'
-      old_messages:
-        one: '%{count} mesaj vechi'
-        other: '%{count} mesaje vechi'
-      no_messages_yet_html: Nu aveți încă mesaje. De ce să nu intri în legătură cu
-        unele dintre %{people_mapping_nearby_link}?
-      people_mapping_nearby: oameni care cartografiază în apropiere
-    messages_table:
-      from: De la
-      to: Către
-      subject: Subiect
-      date: Dată
-      actions: Acțiuni
-    message_summary:
-      unread_button: Marchează ca necitit
-      read_button: Marchează ca citit
-      destroy_button: Șterge
-      unmute_button: Mută în Primite
     new:
       title: Trimite mesajul
       send_message_to_html: Trimiteți un mesaj nou către %{name}
@@ -1821,14 +1796,6 @@ ro:
       title: Nici un mesaj de acest tip
       heading: Nici un mesaj de acest tip
       body: Ne pare rău că nu există niciun mesaj cu acel id.
-    outbox:
-      title: Mesaje trimise
-      messages:
-        one: Aveți %{count} mesaj trimis
-        other: Aveți %{count} (de) mesaje trimise
-      no_sent_messages_html: Nu aveți mesaje trimise încă. De ce să nu intri în legătură
-        cu unele dintre %{people_mapping_nearby_link}?
-      people_mapping_nearby: oameni care cartografiază în apropiere
     reply:
       wrong_user: Sunteți conectat(ă) ca `%{user}', dar mesajul la care ați cerut
         să răspundeți nu a fost trimis utilizatorului respectiv. Conectați-vă ca utilizatorul
@@ -1842,12 +1809,6 @@ ro:
       wrong_user: Sunteți conectat ca `%{user}', dar mesajul pe care ați solicitat
         să îl citiți nu a fost trimis de către sau către respectivul utilizator. Conectați-vă
         ca utilizatorul corect pentru a-l citi.
-    sent_message_summary:
-      destroy_button: Șterge
-    heading:
-      my_inbox: Mesaje primite
-      my_outbox: Mesaje trimise
-      muted_messages: Mesaje muted
     mark:
       as_read: Mesaj marcat ca fiind citit
       as_unread: Mesaj marcat ca necitit
@@ -1856,6 +1817,46 @@ ro:
       error: Mesajul nu a putut fi mutat în Primite
     destroy:
       destroyed: Mesaj șters
+    mailboxes:
+      heading:
+        my_inbox: Mesaje primite
+        my_outbox: Mesaje trimise
+        muted_messages: Mesaje muted
+      messages_table:
+        from: De la
+        to: Către
+        subject: Subiect
+        date: Dată
+        actions: Acțiuni
+      message:
+        unread_button: Marchează ca necitit
+        read_button: Marchează ca citit
+        destroy_button: Șterge
+        unmute_button: Mută în Primite
+    inboxes:
+      show:
+        title: Mesaje primite
+        messages: Aveți mesaje %{new_messages} și %{old_messages}
+        new_messages:
+          one: '%{count} mesaj nou'
+          other: '%{count} mesaje noi'
+        old_messages:
+          one: '%{count} mesaj vechi'
+          other: '%{count} mesaje vechi'
+        no_messages_yet_html: Nu aveți încă mesaje. De ce să nu intri în legătură
+          cu unele dintre %{people_mapping_nearby_link}?
+        people_mapping_nearby: oameni care cartografiază în apropiere
+    outboxes:
+      show:
+        title: Mesaje trimise
+        messages:
+          one: Aveți %{count} mesaj trimis
+          other: Aveți %{count} (de) mesaje trimise
+        no_sent_messages_html: Nu aveți mesaje trimise încă. De ce să nu intri în
+          legătură cu unele dintre %{people_mapping_nearby_link}?
+        people_mapping_nearby: oameni care cartografiază în apropiere
+      message:
+        destroy_button: Șterge
   passwords:
     new:
       title: Parola pierdută
@@ -2824,6 +2825,16 @@ ro:
     go_public:
       flash success: Toate editările dvs. sunt acum publice, iar acum vi se permite
         să editați.
+    issued_blocks:
+      show:
+        title: Blocări pe %{name}
+        heading_html: Lista blocărilor pe %{name}
+        empty: '%{name} nu a fost blocat încă.'
+    received_blocks:
+      show:
+        title: Blocări pe %{name}
+        heading_html: Lista blocărilor pe %{name}
+        empty: '%{name} nu a fost blocat încă.'
     lists:
       show:
         title: Utilizatori
@@ -2927,14 +2938,6 @@ ro:
           one: un an
           few: '%{count} ani'
           other: '%{count} de ani'
-    blocks_on:
-      title: Blocări pe %{name}
-      heading_html: Lista blocărilor pe %{name}
-      empty: '%{name} nu a fost blocat încă.'
-    blocks_by:
-      title: Blocări pe %{name}
-      heading_html: Lista blocărilor pe %{name}
-      empty: '%{name} nu a fost blocat încă.'
     show:
       title: '%{block_on} blocat de %{block_by}'
       heading_html: '%{block_on} blocat de %{block_by}'
@@ -3035,7 +3038,6 @@ ro:
       center_marker: Centrați harta pe marker
       paste_html: Inserați HTML pentru a încorpora în site-ul web
       view_larger_map: Vezi hartă mai mare
-      only_standard_layer: Numai stratul standard poate fi exportat ca imagine
     embed:
       report_problem: Semnalare problemă
     key:
index 218a99b544ba2d2665863f19dc3ba373b85e24e1..f107f3c874e00624adec56e6629d1c59112c94d7 100644 (file)
@@ -1186,6 +1186,8 @@ ru:
           wayside_shrine: Придорожная святыня
           wreck: Остов судна
           "yes": Памятное место
+        information:
+          map: Карта
         junction:
           "yes": Перекрёсток
         landuse:
@@ -1919,9 +1921,6 @@ ru:
       success: Ваша учётная запись подтверждена, спасибо за регистрацию!
       already active: Эта учётная запись уже подтверждена.
       unknown token: Такой код подтверждения истек или не существует.
-      resend_html: Если вам нужно, чтобы мы повторно отправили электронное письмо
-        с подтверждением, %{reconfirm_link}.
-      click_here: кликните сюда
     confirm_resend:
       failure: Участник %{name} не найден.
     confirm_email:
@@ -1939,32 +1938,6 @@ ru:
         внесите адрес %{sender} в ваш белый список, так как мы не можем отвечать на
         такие запросы.
   messages:
-    inbox:
-      title: Входящие
-      messages: У вас %{new_messages} и %{old_messages}
-      new_messages:
-        few: '%{count} новых сообщения'
-        many: '%{count} новых сообщений'
-        one: '%{count} новое сообщение'
-        other: '%{count} новых сообщений'
-      old_messages:
-        few: '%{count} старых'
-        many: '%{count} старых'
-        one: '%{count} старое'
-        other: '%{count} старых'
-      no_messages_yet_html: У вас пока нет сообщений. Почему бы не пообщаться с %{people_mapping_nearby_link}?
-      people_mapping_nearby: пользователями поблизости
-    messages_table:
-      from: От
-      to: Кому
-      subject: Тема
-      date: Дата
-      actions: Действия
-    message_summary:
-      unread_button: Пометить как непрочитанное
-      read_button: Пометить как прочитанное
-      destroy_button: Удалить
-      unmute_button: Переместить во Входящие
     new:
       title: Отправить сообщение
       send_message_to_html: Отправить новое сообщение для %{name}
@@ -1983,18 +1956,6 @@ ru:
       body: |2-
 
         Извините, но сообщения с таким ID нет.
-    outbox:
-      title: Исходящие
-      messages:
-        few: У вас %{count} отправленных сообщения
-        many: У вас %{count} отправленных сообщений
-        one: У вас %{count} отправленное сообщение
-        other: У вас %{count} отправленных сообщений
-      no_sent_messages_html: Нет отправленных сообщений. Почему бы не пообщаться с
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: пользователями поблизости
-    muted:
-      title: Заглушённые сообщения
     reply:
       wrong_user: Вы вошли в систему под именем '%{user}', но сообщение, на которое
         вы просили ответить, не было отправлено этому пользователю. Пожалуйста, войдите
@@ -2008,12 +1969,6 @@ ru:
       wrong_user: Вы вошли в систему под именем '%{user}', но сообщение, которое вы
         просили прочитать, не было отправлено этим пользователем. Пожалуйста, войдите
         в систему под правильным именем, чтобы прочитать его.
-    sent_message_summary:
-      destroy_button: Удалить
-    heading:
-      my_inbox: Мои входящие
-      my_outbox: Мои исходящие
-      muted_messages: Заглушённые сообщения
     mark:
       as_read: Сообщение отмечено как прочитанное
       as_unread: Сообщение отмечено как непрочитанное
@@ -2021,6 +1976,55 @@ ru:
       notice: Сообщение перемещено во Входящие
     destroy:
       destroyed: Сообщение удалено
+    mailboxes:
+      heading:
+        my_inbox: Мои входящие
+        my_outbox: Мои исходящие
+        muted_messages: Заглушённые сообщения
+      messages_table:
+        from: От
+        to: Кому
+        subject: Тема
+        date: Дата
+        actions: Действия
+      message:
+        unread_button: Пометить как непрочитанное
+        read_button: Пометить как прочитанное
+        destroy_button: Удалить
+        unmute_button: Переместить во Входящие
+    inboxes:
+      show:
+        title: Входящие
+        messages: У вас %{new_messages} и %{old_messages}
+        new_messages:
+          few: '%{count} новых сообщения'
+          many: '%{count} новых сообщений'
+          one: '%{count} новое сообщение'
+          other: '%{count} новых сообщений'
+        old_messages:
+          few: '%{count} старых'
+          many: '%{count} старых'
+          one: '%{count} старое'
+          other: '%{count} старых'
+        no_messages_yet_html: У вас пока нет сообщений. Почему бы не пообщаться с
+          %{people_mapping_nearby_link}?
+        people_mapping_nearby: пользователями поблизости
+    muted_inboxes:
+      show:
+        title: Заглушённые сообщения
+    outboxes:
+      show:
+        title: Исходящие
+        messages:
+          few: У вас %{count} отправленных сообщения
+          many: У вас %{count} отправленных сообщений
+          one: У вас %{count} отправленное сообщение
+          other: У вас %{count} отправленных сообщений
+        no_sent_messages_html: Нет отправленных сообщений. Почему бы не пообщаться
+          с %{people_mapping_nearby_link}?
+        people_mapping_nearby: пользователями поблизости
+      message:
+        destroy_button: Удалить
   passwords:
     new:
       title: Восстановление пароля
@@ -2894,6 +2898,16 @@ ru:
       report: Сообщить об этом пользователе
     go_public:
       flash success: Все ваши правки теперь общедоступны, и вы теперь можете редактировать.
+    issued_blocks:
+      show:
+        title: Блокировки, которые создал %{name}
+        heading_html: Список блокировок, которые создал %{name}
+        empty: '%{name} ещё создавал никаких блокировок.'
+    received_blocks:
+      show:
+        title: Блокировки для %{name}
+        heading_html: Список блокировок пользователя %{name}
+        empty: ' %{name} ни разу не был заблокирован.'
     lists:
       show:
         title: Пользователи
@@ -2983,29 +2997,25 @@ ru:
           many: '%{count} часов'
           other: '%{count} час.'
         days:
-          one: 1 день
+          one: '%{count} день'
           few: '%{count} дня'
+          many: '%{count} дней'
           other: '%{count} дней'
         weeks:
-          one: 1 неделя
+          one: '%{count} неделя'
           few: '%{count} недели'
+          many: '%{count} недель'
           other: '%{count} недель'
         months:
-          one: 1 месяц
+          one: '%{count} месяц'
           few: '%{count} месяца'
+          many: '%{count} месяцев'
           other: '%{count} месяцев'
         years:
-          one: 1 год
+          one: '%{count} год'
           few: '%{count} года'
+          many: '%{count} лет'
           other: '%{count} лет'
-    blocks_on:
-      title: Блокировки для %{name}
-      heading_html: Список блокировок пользователя %{name}
-      empty: ' %{name} ни разу не был заблокирован.'
-    blocks_by:
-      title: Блокировки, которые создал %{name}
-      heading_html: Список блокировок, которые создал %{name}
-      empty: '%{name} ещё создавал никаких блокировок.'
     show:
       title: '%{block_on} заблокирован пользователем %{block_by}'
       heading_html: '%{block_on} заблокирован пользователем %{block_by}'
@@ -3116,16 +3126,13 @@ ru:
       custom_dimensions: Выбрать размер вручную
       format: 'Формат:'
       scale: 'Масштаб:'
-      image_dimensions: На изображении будет показан стандартный слой в %{width} x
-        %{height}
+      image_dimensions: На изображении будет показан %{layer} слой в %{width} x %{height}
       download: Скачать
       short_url: Короткая ссылка
       include_marker: Включить маркер
       center_marker: Центрировать карту на маркер
       paste_html: HTML-код для встраивания на сайт
       view_larger_map: Посмотреть более крупную карту
-      only_standard_layer: Только стандартный слой может быть экспортирован в виде
-        изображения
     embed:
       report_problem: Сообщить о проблеме
     key:
index b016b07f2436b81b5ede81d219e915262c05707a..541a47440bc535905cc231e0df3c1ab95fb3d23b 100644 (file)
@@ -480,18 +480,20 @@ sat:
     confirm_email:
       button: ᱜᱚᱴᱟᱭ ᱢᱮ
   messages:
-    messages_table:
-      subject: ᱵᱤᱥᱚᱭ
-      date: ᱢᱟᱹᱦᱤᱛ
-    message_summary:
-      destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ
     new:
       title: ᱠᱷᱚᱵᱚᱨ ᱠᱩᱞ ᱢᱮ
     show:
       destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ
       back: ᱛᱟᱭᱚᱢ
-    sent_message_summary:
-      destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ
+    mailboxes:
+      messages_table:
+        subject: ᱵᱤᱥᱚᱭ
+        date: ᱢᱟᱹᱦᱤᱛ
+      message:
+        destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ
+    outboxes:
+      message:
+        destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ
   passwords:
     new:
       title: ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱟᱫ ᱠᱮᱫᱟᱢ
index a7a10964b16ebfb493fe6afcbb6e1faf831cef25..0f90a95c49c3121fa028acfb05eb898d1985d41a 100644 (file)
@@ -1707,8 +1707,6 @@ sc:
       success: As cunfirmadu su contu tuo, gràtzias pro t'èssere registradu!
       already active: Custu contu est istadu giai cunfirmadu.
       unknown token: Custu còdighe de cunfirma est iscadidu o no esistet.
-      resend_html: Si bisòngias chi ti torremus a imbiare sa lìtera de cunfirma, %{reconfirm_link}.
-      click_here: incarca inoghe
     confirm_resend:
       failure: Utente %{name} no agatadu.
     confirm_email:
@@ -1727,27 +1725,6 @@ sc:
         tando assegura·ti de annànghere %{sender} a sa lista bianca tua, dae chi no
         amus a pòdere rispòndere a peruna rechesta de cunfirma.
   messages:
-    inbox:
-      title: Posta in intrada
-      messages: Tenes %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} messàgiu nou'
-        other: '%{count} messàgios noos'
-      old_messages:
-        one: '%{count} messàgiu betzu'
-        other: '%{count} messàgios betzos'
-      no_messages_yet_html: Non tenes galu messàgios. Proite non chircas a calicuna
-        de sas %{people_mapping_nearby_link}?
-      people_mapping_nearby: persones chi mapant a curtzu a tie
-    messages_table:
-      from: Dae
-      to: Cara a
-      subject: 'Sugetu:'
-      date: Data
-    message_summary:
-      unread_button: Sinna comente no lèghidu
-      read_button: Sinna comente lèghidu
-      destroy_button: Cantzella
     new:
       title: Imbia messàgiu
       send_message_to_html: Imbia unu messàgiu nou a %{name}
@@ -1760,14 +1737,6 @@ sc:
       title: Non b'at perunu messàgiu gasi
       heading: Non b'at perunu messàgiu gasi
       body: Non b'at perunu messàgiu cun custu id.
-    outbox:
-      title: Posta in essida
-      messages:
-        one: Tenes %{count} messàgiu imbiadu
-        other: Tenes %{count} messàgios imbiados
-      no_sent_messages_html: Non tenes galu messàgios imbiados. Proite non chircas
-        a calicuna de sas %{people_mapping_nearby_link}?
-      people_mapping_nearby: persones chi mapant a curtzu a tie
     reply:
       wrong_user: Ti ses autenticadu comente `%{user}', ma su messàgiu a su cale cheres
         rispòndere no est istadu imbiadu a cussu utente. Faghe s'atzessu comente s'utente
@@ -1781,16 +1750,48 @@ sc:
       wrong_user: Ti ses autenticadu comente `%{user}', ma su messàgiu chi as pedidu
         de pòdere lèghere no est istadu imbiadu a cussu utente. Faghe s'atzessu comente
         s'utente curretu pro lu lèghere.
-    sent_message_summary:
-      destroy_button: Cantzella
-    heading:
-      my_inbox: Posta in intrada mea
-      my_outbox: Posta in essida mea
     mark:
       as_read: Messàgiu marcadu comente lèghidu
       as_unread: Messàgiu marcadu comente non lèghidu
     destroy:
       destroyed: Messàgiu iscantzelladu
+    mailboxes:
+      heading:
+        my_inbox: Posta in intrada mea
+        my_outbox: Posta in essida mea
+      messages_table:
+        from: Dae
+        to: Cara a
+        subject: 'Sugetu:'
+        date: Data
+      message:
+        unread_button: Sinna comente no lèghidu
+        read_button: Sinna comente lèghidu
+        destroy_button: Cantzella
+    inboxes:
+      show:
+        title: Posta in intrada
+        messages: Tenes %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} messàgiu nou'
+          other: '%{count} messàgios noos'
+        old_messages:
+          one: '%{count} messàgiu betzu'
+          other: '%{count} messàgios betzos'
+        no_messages_yet_html: Non tenes galu messàgios. Proite non chircas a calicuna
+          de sas %{people_mapping_nearby_link}?
+        people_mapping_nearby: persones chi mapant a curtzu a tie
+    outboxes:
+      show:
+        title: Posta in essida
+        messages:
+          one: Tenes %{count} messàgiu imbiadu
+          other: Tenes %{count} messàgios imbiados
+        no_sent_messages_html: Non tenes galu messàgios imbiados. Proite non chircas
+          a calicuna de sas %{people_mapping_nearby_link}?
+        people_mapping_nearby: persones chi mapant a curtzu a tie
+      message:
+        destroy_button: Cantzella
   passwords:
     new:
       title: Crae de intrada pèrdida
@@ -2736,6 +2737,16 @@ sc:
     go_public:
       flash success: Totu sas modìficas tuas como sunt pùblicas, e tenes su permissu
         de modificare.
+    issued_blocks:
+      show:
+        title: Blocos fatos dae %{name}
+        heading_html: Lista de blocos fatos dae %{name}
+        empty: '%{name} no at fatu galu perunu blocu.'
+    received_blocks:
+      show:
+        title: Blocos pro %{name}
+        heading_html: Lista de blocos pro %{name}
+        empty: '%{name} no est istadu galu blocadu.'
     lists:
       show:
         title: Utentes
@@ -2834,14 +2845,6 @@ sc:
         years:
           one: '%{count} annu'
           other: '%{count} annos'
-    blocks_on:
-      title: Blocos pro %{name}
-      heading_html: Lista de blocos pro %{name}
-      empty: '%{name} no est istadu galu blocadu.'
-    blocks_by:
-      title: Blocos fatos dae %{name}
-      heading_html: Lista de blocos fatos dae %{name}
-      empty: '%{name} no at fatu galu perunu blocu.'
     show:
       title: '%{block_on} blocadu dae %{block_by}'
       heading_html: '%{block_on} blocadu dae %{block_by}'
@@ -2945,8 +2948,6 @@ sc:
       center_marker: Tzentra sa mapa in su marcadore
       paste_html: Incolla s'HTML pro l'integrare in su situ web
       view_larger_map: Pòmpia una mapa prus manna
-      only_standard_layer: Petzi sos istratos istandard, pro su tziclismu e pro sos
-        trasportos si podent esportare comente immàgine
     embed:
       report_problem: Sinnala unu problema
     key:
index 79bfaa6627896e28ef4212f97100fb22c3e1c7c9..d4d16bcdf93b2408c4f3edc6e0cbbed8db2cbc84 100644 (file)
@@ -1169,27 +1169,6 @@ scn:
       failure: Già cu stu còdici fu cunfirmatu nu nnirizzu di posta.
       unknown_token: Ddu còdici di cunferma o scadìu o nun esisti.
   messages:
-    inbox:
-      title: Posta arrivata
-      messages: Hai %{new_messages} e %{old_messages}
-      new_messages:
-        one: '%{count} missaggiu novu'
-        other: '%{count} missaggî novi'
-      old_messages:
-        one: '%{count} missaggiu vecchiu'
-        other: '%{count} missaggî vecchî'
-      no_messages_yet_html: Ancora nun hai nuḍḍu missaggiu. Pirchì nun fai canuscenza
-        cu quarchidunu dî %{people_mapping_nearby_link}?
-      people_mapping_nearby: mappatura vicinu a tìa
-    messages_table:
-      from: Di
-      to: A
-      subject: Oggettu
-      date: Data
-    message_summary:
-      unread_button: Signa comu di lèggiri
-      read_button: Signa comu già liggiutu
-      destroy_button: Cancella
     new:
       title: Manna un missaggiu
       send_message_to_html: Manna un missaggiu novu a %{name}
@@ -1202,14 +1181,6 @@ scn:
       title: Nuḍḍu missaggiu accussì
       heading: Nuḍḍu missaggiu accussì
       body: Purtroppu nun c'è nuḍḍu missaggiu cu l'id nnicatu.
-    outbox:
-      title: Posta mannata
-      messages:
-        one: Hai %{count} missaggiu mannatu
-        other: Hai %{count} missaggî mannati
-      no_sent_messages_html: Ancora nun mannasti nuddu missaggiu. Pirchì nun fai canuscenza
-        cu quarchidunu dî %{people_mapping_nearby_link}?
-      people_mapping_nearby: mappatura vicinu a tìa
     reply:
       wrong_user: Trasisti comu «%{user}» pirò lu missaggiu ô quali vulivi arrispùnniri
         nun fu mannatu a dd'utenti. Pi favuri trasi comu l'utenti giustu pi putiri
@@ -1222,15 +1193,47 @@ scn:
       back: Torna n arreri
       wrong_user: Trasisti comu «%{user}» pirò lu missaggiu chi vulivi lèggiri nun
         fu mannatu a dd'utenti. Pi favuri trasi comu l'utenti giustu pi putiri liggìrilu.
-    sent_message_summary:
-      destroy_button: Cancella
-    heading:
-      my_inbox: La mè posta arrivata
     mark:
       as_read: Missaggiu signatu comu già liggiutu
       as_unread: Missaggiu marcatu comu di lèggiri
     destroy:
       destroyed: Missaggiu cancillatu
+    mailboxes:
+      heading:
+        my_inbox: La mè posta arrivata
+      messages_table:
+        from: Di
+        to: A
+        subject: Oggettu
+        date: Data
+      message:
+        unread_button: Signa comu di lèggiri
+        read_button: Signa comu già liggiutu
+        destroy_button: Cancella
+    inboxes:
+      show:
+        title: Posta arrivata
+        messages: Hai %{new_messages} e %{old_messages}
+        new_messages:
+          one: '%{count} missaggiu novu'
+          other: '%{count} missaggî novi'
+        old_messages:
+          one: '%{count} missaggiu vecchiu'
+          other: '%{count} missaggî vecchî'
+        no_messages_yet_html: Ancora nun hai nuḍḍu missaggiu. Pirchì nun fai canuscenza
+          cu quarchidunu dî %{people_mapping_nearby_link}?
+        people_mapping_nearby: mappatura vicinu a tìa
+    outboxes:
+      show:
+        title: Posta mannata
+        messages:
+          one: Hai %{count} missaggiu mannatu
+          other: Hai %{count} missaggî mannati
+        no_sent_messages_html: Ancora nun mannasti nuddu missaggiu. Pirchì nun fai
+          canuscenza cu quarchidunu dî %{people_mapping_nearby_link}?
+        people_mapping_nearby: mappatura vicinu a tìa
+      message:
+        destroy_button: Cancella
   passwords:
     new:
       title: Palora d'òrdini pirduta
@@ -1746,6 +1749,16 @@ scn:
     go_public:
       flash success: Ora tutti li tò canciamenti sunnu pùbblici, e hai lu pirmissu
         di fari canciamenti.
+    issued_blocks:
+      show:
+        title: Blocchi fatti di %{name}
+        heading_html: Elencu dî blocchi fatti di %{name}
+        empty: '%{name} nun fici nuddu bloccu ancora.'
+    received_blocks:
+      show:
+        title: Blocchi di %{name}
+        heading_html: Elencu dî blocchi contra a %{name}
+        empty: '%{name} nun fu bluccatu ancora.'
     lists:
       show:
         title: Utenti
@@ -1823,14 +1836,6 @@ scn:
         years:
           one: 1 annu
           other: '%{count} anni'
-    blocks_on:
-      title: Blocchi di %{name}
-      heading_html: Elencu dî blocchi contra a %{name}
-      empty: '%{name} nun fu bluccatu ancora.'
-    blocks_by:
-      title: Blocchi fatti di %{name}
-      heading_html: Elencu dî blocchi fatti di %{name}
-      empty: '%{name} nun fici nuddu bloccu ancora.'
     show:
       title: '%{block_on} bluccatu di %{block_by}'
       heading_html: '%{block_on} bluccatu di %{block_by}'
index a12a62cfcc8a5eebdb1df8b2a6aaf8a3b7f9716e..9b7a8553b698f1fbe5a3e876dea9af81d16f4749 100644 (file)
@@ -6,6 +6,7 @@
 # Author: ChrisFleming
 # Author: CiphriusKane
 # Author: John Reid
+# Author: Lottie1040
 # Author: MJL
 ---
 sco:
@@ -17,7 +18,7 @@ sco:
       prompt: Wale file
     submit:
       diary_comment:
-        create: Save
+        create: Comment
       diary_entry:
         create: Set furth
         update: Update
@@ -43,9 +44,9 @@ sco:
       old_relation: Auld Relation
       old_relation_member: Auld Relation Member
       old_relation_tag: Auld Relation Tag
-      old_way: Auld Waa
-      old_way_node: Auld Waa Node
-      old_way_tag: Auld Waa Tag
+      old_way: Auld Wey
+      old_way_node: Auld Wey Node
+      old_way_tag: Auld Wey Tag
       relation: Relation
       relation_member: Relation Memmer
       relation_tag: Relation Tag
@@ -54,7 +55,7 @@ sco:
       tracepoint: Trace Pynt
       tracetag: Trace Tag
       user: Uiser
-      user_preference: Uiser Preference
+      user_preference: Uiser Praiference
       user_token: Uiser Token
       way: Way
       way_node: Way Node
@@ -93,21 +94,21 @@ sco:
         languages: Leids
         pass_crypt: Passwird
   editor:
-    default: Default (currently %{name})
+    default: Defaut (currently %{name})
     id:
       name: iD
-      description: iD (in-brouser eeditor)
+      description: iD (in-brouser editor)
     remote:
       name: Remote Control
       description: Remote Control (JOSM or Merkaartor)
   accounts:
     edit:
-      title: Eedit accoont
+      title: Edit accoont
   browse:
-    version: Version
+    version: Vairsion
     in_changeset: Chyngeset
     anonymous: anonymous
-    no_comment: (no comment)
+    no_comment: (nae comment)
     part_of: Pairt o
     download_xml: Dounload XML
     view_history: View History
@@ -117,15 +118,15 @@ sco:
       title_html: 'Node: %{name}'
       history_title_html: 'Node History: %{name}'
     way:
-      title_html: 'Way: %{name}'
-      history_title_html: 'Way History: %{name}'
+      title_html: 'Wey: %{name}'
+      history_title_html: 'Wey Historie: %{name}'
       nodes: Nodes
       also_part_of_html:
         one: pairt o wey %{related_ways}
         other: pairt o weys %{related_ways}
     relation:
       title_html: 'Relation: %{name}'
-      history_title_html: 'Relation History: %{name}'
+      history_title_html: 'Relation Historie: %{name}'
       members: Members
     relation_member:
       entry_role_html: '%{type} %{name} as %{role}'
@@ -136,26 +137,26 @@ sco:
     containing_relation:
       entry_role_html: Relation %{relation_name} (as %{relation_role})
     not_found:
-      sorry: 'Sorry, %{type} #%{id} could nae be foond.'
+      sorry: 'Sorry, %{type} #%{id} couldnae be foond.'
       type:
         node: node
-        way: way
+        way: wey
         relation: relation
         changeset: chyngeset
     timeout:
       sorry: Sorry, the data for the %{type} wi the id %{id}, teuk too lang tae retrieve.
       type:
         node: node
-        way: way
+        way: wey
         relation: relation
         changeset: chyngeset
     redacted:
       redaction: Redaction %{id}
-      message_html: Version %{version} o this %{type} cannae be shawn as it haes been
-        redactit. Please see %{redaction_link} for details.
+      message_html: Vairsion %{version} o this %{type} cannae be shawn as it's been
+        redactit. Please see %{redaction_link} for mair.
       type:
         node: node
-        way: way
+        way: wey
         relation: relation
     start_rjs:
       feature_warning: Loadin %{num_features} featurs, which mey mak yer brouser slow
@@ -165,8 +166,8 @@ sco:
     tag_details:
       tags: Tags
       wiki_link:
-        key: The wiki description page for the %{key} tag
-        tag: The wiki description page for the %{key}=%{value} tag%{value}
+        key: The wiki description page fir the %{key} tag
+        tag: The wiki description page fir the %{key}=%{value} tag%{value}
       wikidata_link: The %{page} item on Wikidata
       wikipedia_link: The %{page} airticle on Wikipaedia
       telephone_link: Caw %{phone_number}
@@ -176,7 +177,7 @@ sco:
         commented_at_by_html: Updatit %{when} ago bi %{user}
   changesets:
     changeset:
-      no_edits: (no eedits)
+      no_edits: (nae edits)
       view_changeset_details: View chyngeset details
     index:
       title: Chyngesets
@@ -229,7 +230,7 @@ sco:
     page:
       recent_entries: Recent diary entries
     edit:
-      title: Eedit diary entry
+      title: Edit diary entry
       marker_text: Diary entry location
     show:
       title: '%{user}''s diary | %{title}'
@@ -250,7 +251,7 @@ sco:
         zero: No comments
         one: '%{count} comment'
         other: '%{count} comments'
-      edit_link: Eedit this entry
+      edit_link: Edit this entry
       hide_link: Hide this entry
       confirm: Confirm
     diary_comment:
@@ -291,7 +292,7 @@ sco:
           terminal: Terminal
         amenity:
           arts_centre: Airts Centre
-          atm: ATM
+          atm: Cash machine
           bank: Bank
           bar: Bar
           bbq: BBQ
@@ -307,11 +308,11 @@ sco:
           car_sharing: Caur Sharin
           car_wash: Caur Wash
           casino: Casino
-          charging_station: Chargin Station
-          cinema: Cinema
+          charging_station: Chairgin Station
+          cinema: Pictur Hoose
           clinic: Clinic
           college: College
-          community_centre: Commonty Centre
+          community_centre: Communitie Centre
           courthouse: Coorthoose
           crematorium: Crematorium
           dentist: Dentist
@@ -325,17 +326,17 @@ sco:
           food_court: Fuid Coort
           fountain: Foontain
           fuel: Fuel
-          grave_yard: Grave Yard
+          grave_yard: Kirkyaird
           hospital: Hospital
           hunting_stand: Huntin Staund
           ice_cream: Ice Cream
-          kindergarten: Kindergarten
+          kindergarten: Nursery
           library: Library
           marketplace: Mercatplace
           nightclub: Nicht Club
           nursing_home: Nursin Home
           parking: Pairkin
-          pharmacy: Pharmacy
+          pharmacy: Chemist
           place_of_worship: Place o Worship
           police: Polis
           post_box: Post Box
@@ -347,7 +348,7 @@ sco:
           restaurant: Restaurant
           school: Schuil
           shelter: Shelter
-          shower: Shower
+          shower: Shooer
           social_centre: Social Centre
           social_facility: Social Facility
           studio: Studio
@@ -356,17 +357,17 @@ sco:
           telephone: Public Telephone
           theatre: Theatre
           toilets: Toilets
-          townhall: Toun Haw
+          townhall: Toun Haa
           university: Varsity
           vending_machine: Vendin Machine
           veterinary: Veterinary Surgery
-          village_hall: Veelage Haw
+          village_hall: Veelage Haa
           waste_basket: Waste Basket
         boundary:
           administrative: Admeenistrative Boondary
           census: Census Boondary
           national_park: Naitional Pairk
-          protected_area: Pertectit Aurie
+          protected_area: Protectit Area
         bridge:
           aqueduct: Aqueduct
           suspension: Suspension Brig
@@ -381,13 +382,13 @@ sco:
         emergency:
           phone: Emergency Phone
         highway:
-          bridleway: Bridleway
+          bridleway: Bridlewey
           bus_guideway: Guidit Bus Lane
           bus_stop: Bus Stap
           construction: Highway unner Construction
-          cycleway: Cycle Path
+          cycleway: Cycle Peth
           emergency_access_point: Emergency Access Pynt
-          footway: Fitpath
+          footway: Fitpeth
           ford: Ford
           living_street: Livin Street
           milestone: Milestane
@@ -402,7 +403,7 @@ sco:
           proposed: Proponed Road
           raceway: Raceway
           residential: Residential
-          rest_area: Rest Aurie
+          rest_area: Rest Area
           road: Road
           secondary: Seicontary Road
           secondary_link: Seicontary Road
@@ -424,7 +425,7 @@ sco:
           building: Historic Biggin
           castle: Castle
           church: Kirk
-          citywalls: Ceety Waws
+          citywalls: Ceety Waas
           fort: Fort
           heritage: Heritage Steid
           house: Hoose
@@ -444,19 +445,19 @@ sco:
           basin: Basin
           brownfield: Brounfield Laund
           cemetery: Cemetery
-          commercial: Commercial Aurie
+          commercial: Commercial Area
           conservation: Conservation
           construction: Construction
           farmland: Fermlaund
-          farmyard: Fermyard
+          farmyard: Fermyaird
           forest: Forest
           garages: Garages
-          grass: Grass
+          grass: Gress
           greenfield: Greenfield Laund
-          industrial: Industrial Aurie
+          industrial: Industrial Area
           landfill: Laundfill
-          meadow: Meadow
-          military: Militar Aurie
+          meadow: Hauch
+          military: Militar Area
           mine: Mine
           orchard: Orchard
           quarry: Quarry
@@ -464,7 +465,7 @@ sco:
           recreation_ground: Recreation Grund
           reservoir: Reservoir
           reservoir_watershed: Reservoir Wattershed
-          residential: Residential Aurie
+          residential: Residential Area
           retail: Retail
           village_green: Village Green
           vineyard: Vineyard
@@ -474,7 +475,7 @@ sco:
           bird_hide: Bird Hide
           common: Common Laund
           dog_park: Dug Pairk
-          fishing: Fishin Aurie
+          fishing: Fishin Area
           fitness_station: Fitness Station
           garden: Gairden
           golf_course: Gowf Coorse
@@ -492,7 +493,7 @@ sco:
           slipway: Slipway
           sports_centre: Sports Centre
           stadium: Stadium
-          swimming_pool: Swimmin Puil
+          swimming_pool: Soomin Puil
           track: Runnin Track
           water_park: Watter Pairk
           "yes": Leisur
@@ -529,7 +530,7 @@ sco:
           peak: Peak
           point: Pynt
           reef: Reef
-          ridge: Ridge
+          ridge: Rig
           rock: Rock
           sand: Saund
           scree: Scree
@@ -552,7 +553,7 @@ sco:
           estate_agent: Estate Agent
           government: Govrenmental Office
           insurance: Insurance Office
-          lawyer: Lawyer
+          lawyer: Advocate
           ngo: NGO Office
           telecommunication: Telecommunication Office
           travel_agent: Travel Agency
@@ -644,17 +645,17 @@ sco:
           gift: Gift Shop
           greengrocer: Greengrocer
           grocery: Grocery Shop
-          hairdresser: Hairdresser
+          hairdresser: Hairdressers
           hardware: Hairdware Store
           hifi: Hi-Fi
           jewelry: Jewelry Shop
           kiosk: Kiosk Shop
           laundry: Laundry
-          mall: Maw
+          mall: Shoppin Centre
           mobile_phone: Mobile Phone Shop
           motorcycle: Motorcycle Shop
           music: Muisic Shop
-          newsagent: Newsagent
+          newsagent: Paper Shop
           optician: Optician
           organic: Organic Fuid Shop
           outdoor: Ootduir Shop
@@ -707,9 +708,9 @@ sco:
           mooring: Moorin
           rapids: Rapids
           river: River
-          stream: Stream
+          stream: Burn
           wadi: Wadi
-          waterfall: Watterfaw
+          waterfall: Watterfaa
           weir: Weir
           "yes": Watterwey
       admin_levels:
@@ -721,29 +722,29 @@ sco:
         level9: Veelage Boondary
         level10: Suburb Boondary
     results:
-      no_results: No results foond
+      no_results: Nae results foond
       more_results: Mair results
   layouts:
     logo:
       alt_text: OpenStreetMap logo
-    home: Go tae Home Location
+    home: Gaun tae Home Location
     logout: Log Oot
     log_in: Log In
     sign_up: Sign Up
     start_mapping: Stairt Cairttin
-    edit: Eedit
+    edit: Edit
     history: History
     export: Export
     gps_traces: GPS Traces
     user_diaries: Uiser Diaries
-    edit_with: Eedit wi %{editor}
+    edit_with: Edit wi %{editor}
     intro_header: Walcome tae OpenStreetMap!
     intro_text: OpenStreetMap is a cairt o the warld, creatit bi fowk lik ye an free
       tae uise unner an open license.
     partners_partners: pairtners
-    osm_offline: The OpenStreetMap database is currently offline while essential database
-      maintenance wirk is carried oot.
-    osm_read_only: The OpenStreetMap database is currently in read-anly mode while
+    osm_offline: The OpenStreetMap database isnae online the noo, whiles we cairry
+      oot essential database maintenance wirk.
+    osm_read_only: The OpenStreetMap database is currently in read-ainly mode while
       essential database maintenance wirk is carried oot.
     help: Help
     about: Aboot
@@ -752,9 +753,10 @@ sco:
     more: Mair
   user_mailer:
     lost_password:
-      hopefully_you: Someane (possibly ye) haes asked for the passwird tae be reset
+      hopefully_you: Somebody (likely you) haes asked for the passwird tae be reset
         on this email address's openstreetmap.org accoont.
-      click_the_link: If this is ye, please click the airtin ablo tae reset yer passwird.
+      click_the_link: If it's you, could ye please click the airtin ablow tae reset
+        yer passwird.
     note_comment_notification:
       anonymous: An anonymous uiser
       greeting: Hi,
@@ -765,7 +767,7 @@ sco:
   passwords:
     new:
       title: Lost password
-      heading: Forgotten Passwird?
+      heading: Forgot Passwird?
   sessions:
     destroy:
       title: Logoot
@@ -811,7 +813,7 @@ sco:
         infringement_title_html: Copyricht infringement
     export:
       title: Export
-      manually_select: Manually select a different aurie
+      manually_select: Manually select a different area
       licence: Licence
       too_large:
         advice: 'If the abuin export fails, please consider uisin ane o the soorces
@@ -854,8 +856,8 @@ sco:
           wood: Wid
           golf: Gowf coorse
           park: Pairk
-          resident: Residential aurie
-          retail: Retail aurie
+          resident: Residential area
+          retail: Retail area
           industrial: Industrial aurie
           commercial: Commercial aurie
           lake: Loch
@@ -867,9 +869,9 @@ sco:
     welcome:
       title: Walcome!
       introduction: |-
-        Walcome tae OpenStreetMap, the free an eeditable cairt o the warld. Nou that ye're signed
+        Walcome tae OpenStreetMap, the free an editable cairt o the warld. Seein as ye're signed
         up, ye're aw set tae get stairtit cairttin. Here's a quick guide wi the maist important
-        things ye need tae ken.
+        hings ye'll need tae ken.
       whats_on_the_map:
         title: Whit's on the Cairt
   traces:
@@ -894,7 +896,7 @@ sco:
         alt: Login wi a Wikipedia Accoont
   users:
     show:
-      edits: Eedits
+      edits: Edits
       created from: 'Made frae:'
   notes:
     show:
@@ -939,7 +941,7 @@ sco:
         leave_roundabout_without_exit: Leave roondaboot - %{name}
         stay_roundabout_without_exit: Stay on roondaboot - %{name}
         start_without_exit: Stairt at end o %{name}
-        destination_without_exit: Reak destination
+        destination_without_exit: Reach feenish
         against_oneway_without_exit: Gae agin ane-wey on %{name}
         end_oneway_without_exit: End o ane-wey on %{name}
         roundabout_with_exit: At roondaboot tak exit %{exit} ontae %{name}
@@ -950,7 +952,7 @@ sco:
       node: Node
       way: Wey
       relation: Relation
-      nothing_found: Na featurs foond
+      nothing_found: Nae featurs foond
       error: 'Error contactin %{server}: %{error}'
       timeout: Timeoot contactin %{server}
     context:
@@ -959,8 +961,8 @@ sco:
       add_note: Add a note here
       show_address: Shaw address
       query_features: Query featurs
-      centre_map: Centre cairt here
+      centre_map: Pit cairt in middle
   redactions:
     edit:
-      heading: Eedit redaction
+      heading: Edit redaction
 ...
index 27b2cc55316f142ed34280e955839dba813c247a..9123d4720c4ef669061ab058513f056ced9d1a66 100644 (file)
@@ -516,16 +516,11 @@ sh:
       success: Vaš račun je potvrđen. Hvala vam na upisu!
       already active: Ovaj račun je već potvrđen.
       unknown token: Taj kod za potvrdu je istekao ili ne postoji.
-      resend_html: Ako trebate da ponovo pošaljemo potvrdni imejl, %{reconfirm_link}.
     confirm_resend:
       failure: Korisnik %{name} nije pronađen.
     confirm_email:
       heading: Potvrda promjene e-adrese
   messages:
-    messages_table:
-      to: Za
-    message_summary:
-      destroy_button: Izbriši
     new:
       title: Pošalji poruku
       send_message_to_html: Pošalji novu poruku za %{name}
@@ -538,11 +533,17 @@ sh:
       title: Nema takve poruke
       heading: Nema takve poruke
       body: Nažalost, nema poruke s tom naznakom.
-    outbox:
-      title: Odlazna pošta
-      no_sent_messages_html: Još uvijek nemate poslanih poruka. Zašto ne biste iskontaktirali
-        s nekim %{people_mapping_nearby_link}?
-      people_mapping_nearby: ljudima u vašoj okolini
+    mailboxes:
+      messages_table:
+        to: Za
+      message:
+        destroy_button: Izbriši
+    outboxes:
+      show:
+        title: Odlazna pošta
+        no_sent_messages_html: Još uvijek nemate poslanih poruka. Zašto ne biste iskontaktirali
+          s nekim %{people_mapping_nearby_link}?
+        people_mapping_nearby: ljudima u vašoj okolini
   profiles:
     edit:
       title: Uredi profil
index 134d8d2b59f00d30c7318e93104c5737fbbc9200..d4617921d10918daba1ec49d9fc934320e7cc20d 100644 (file)
@@ -1762,8 +1762,6 @@ sk:
       success: Váš účet je založený, ďakujeme, že ste sa zapísali!
       already active: Toto používateľské konto už bolo potvrdené.
       unknown token: Zadaný potvrdzovací kód vypršal alebo neexistuje.
-      resend_html: Ak potrebujete znovu zaslať potvrdzujúcu správu, %{reconfirm_link}.
-      click_here: kliknite sem
     confirm_resend:
       failure: Používateľ %{name} neexistuje.
     confirm_email:
@@ -1781,30 +1779,6 @@ sk:
         odosielateľa %{sender} do výnimiek, pretože my nemôžeme odpovedať na emailové
         požiadavky na potvrdenie.
   messages:
-    inbox:
-      title: Doručená pošta
-      messages: Máte %{new_messages} a %{old_messages}
-      new_messages:
-        few: '%{count} nové správy'
-        one: '%{count} novú správu'
-        other: '%{count} nových správ'
-      old_messages:
-        few: '%{count} staré správy'
-        one: '%{count} starú správu'
-        other: '%{count} starých správ'
-      no_messages_yet_html: Zatiaľ nemáte žiadne správy. Čo napr. kontaktovať %{people_mapping_nearby_link}?
-      people_mapping_nearby: používateľov v okolí
-    messages_table:
-      from: Od
-      to: Komu
-      subject: Predmet
-      date: Dátum
-      actions: Akcie
-    message_summary:
-      unread_button: Označiť ako neprečítané
-      read_button: Označiť ako prečítané
-      destroy_button: Zmazať
-      unmute_button: Presunúť do doručenej pošty
     new:
       title: Odoslať správu
       send_message_to_html: Poslať novú správu používateľovi %{name}
@@ -1817,17 +1791,6 @@ sk:
       title: Zadaná správa neexistuje
       heading: Zadaná správa neexistuje
       body: Ľutujeme, neexistuje správa s takým ID.
-    outbox:
-      title: Odoslaná pošta
-      messages:
-        few: Máte %{count} odeslané správy
-        one: Máte %{count} odoslanú správu
-        other: Máte %{count} odoslaných správ
-      no_sent_messages_html: Nemáte odoslané správy. Prečo ste sa nespojili s niekým
-        z %{people_mapping_nearby_link}?
-      people_mapping_nearby: blízko mapujúci ľudia
-    muted:
-      title: Stlmené správy
     reply:
       wrong_user: Ste prihlásený ako „%{user}“, ale správa, na ktorú chcete odpovedať,
         nebola odoslaná tomuto používateľovi. Ak na ňu chcete odpovedať, prihláste
@@ -1841,12 +1804,6 @@ sk:
       wrong_user: Ste prihlásený ako „%{user}“, ale správa, ktorú si chcete prečítať,
         nie je ani od, ani pre tohoto používateľa. Ak si ju chcete prečítať, prihláste
         sa pod príslušným kontom.
-    sent_message_summary:
-      destroy_button: Zmazať
-    heading:
-      my_inbox: Doručená pošta
-      my_outbox: Odoslané
-      muted_messages: Stlmené správy
     mark:
       as_read: Správa označená ako prečítaná
       as_unread: Správa označená ako neprečítaná
@@ -1855,6 +1812,51 @@ sk:
       error: Správa nemohla byť presunutá do doručenej pošty.
     destroy:
       destroyed: Správa vymazaná
+    mailboxes:
+      heading:
+        my_inbox: Doručená pošta
+        my_outbox: Odoslané
+        muted_messages: Stlmené správy
+      messages_table:
+        from: Od
+        to: Komu
+        subject: Predmet
+        date: Dátum
+        actions: Akcie
+      message:
+        unread_button: Označiť ako neprečítané
+        read_button: Označiť ako prečítané
+        destroy_button: Zmazať
+        unmute_button: Presunúť do doručenej pošty
+    inboxes:
+      show:
+        title: Doručená pošta
+        messages: Máte %{new_messages} a %{old_messages}
+        new_messages:
+          few: '%{count} nové správy'
+          one: '%{count} novú správu'
+          other: '%{count} nových správ'
+        old_messages:
+          few: '%{count} staré správy'
+          one: '%{count} starú správu'
+          other: '%{count} starých správ'
+        no_messages_yet_html: Zatiaľ nemáte žiadne správy. Čo napr. kontaktovať %{people_mapping_nearby_link}?
+        people_mapping_nearby: používateľov v okolí
+    muted_inboxes:
+      show:
+        title: Stlmené správy
+    outboxes:
+      show:
+        title: Odoslaná pošta
+        messages:
+          few: Máte %{count} odeslané správy
+          one: Máte %{count} odoslanú správu
+          other: Máte %{count} odoslaných správ
+        no_sent_messages_html: Nemáte odoslané správy. Prečo ste sa nespojili s niekým
+          z %{people_mapping_nearby_link}?
+        people_mapping_nearby: blízko mapujúci ľudia
+      message:
+        destroy_button: Zmazať
   passwords:
     new:
       title: Stratené heslo
@@ -2707,6 +2709,20 @@ sk:
     go_public:
       flash success: Všetky vaše úpravy sú teraz verejné, a teraz máte povolenie na
         úpravu.
+    issued_blocks:
+      show:
+        title: Bloky od %{name}
+        heading_html: Zoznam blokov od pre %{name}
+        empty: '%{name} ešte nikoho nezablokoval'
+    received_blocks:
+      show:
+        title: Bloky používateľa %{name}
+        heading_html: Zoznam blokov používateľa %{name}
+        empty: '%{name} doteraz ešte nebol blokovaný.'
+      edit:
+        title: Zrušenie všetkých blokovaní pre %{block_on}
+        heading_html: Zrušenie všetkých blokovaní pre %{block_on}
+        empty: '%{name} nemá žiadne aktívne blokovania.'
     lists:
       show:
         title: Používatelia
@@ -2783,10 +2799,6 @@ sk:
       title: Bloky používateľa
       heading: Zoznam blokov používateľa
       empty: Žiaden blok ešte nebol vytvorený.
-    revoke_all:
-      title: Zrušenie všetkých blokovaní pre %{block_on}
-      heading_html: Zrušenie všetkých blokovaní pre %{block_on}
-      empty: '%{name} nemá žiadne aktívne blokovania.'
     helper:
       time_future_html: Končí o %{time}.
       until_login: Aktívny až do prihlásenia používateľa.
@@ -2818,14 +2830,6 @@ sk:
           few: '%{count} roky'
           many: '%{count} rokov'
           other: '%{count} rokov'
-    blocks_on:
-      title: Bloky používateľa %{name}
-      heading_html: Zoznam blokov používateľa %{name}
-      empty: '%{name} doteraz ešte nebol blokovaný.'
-    blocks_by:
-      title: Bloky od %{name}
-      heading_html: Zoznam blokov od pre %{name}
-      empty: '%{name} ešte nikoho nezablokoval'
     show:
       title: '%{block_on} zablokovaný používateľom %{block_by}'
       heading_html: '%{block_on} zablokovaný používateľom %{block_by}'
@@ -2944,8 +2948,6 @@ sk:
       center_marker: Centrovať mapu na značku
       paste_html: HTML pre vloženie na webovú stránku
       view_larger_map: Zobraziť väčšiu mapu
-      only_standard_layer: Ako obrázok je možné exportovať iba štandardnú vrstvu,
-        cyklomapu a dopravnú vrstvu.
     embed:
       report_problem: Nahlásiť problém
     key:
index af2a973587189530e8830fe976f609b9edb149ad..99e80b6e5494b8588ea71a8415ca4575d3ff8610 100644 (file)
@@ -1028,47 +1028,50 @@ skr-arab:
     confirm:
       heading: آپݨی ای میل ݙیکھو!
       button: تصدیق
-      click_here: اِتھ کلک کرو
     confirm_email:
       button: تصدیق
   messages:
-    inbox:
-      title: ان باکس
-    messages_table:
-      from: کنوں
-      to: تائیں
-      subject: موضوع
-      date: تریخ
-      actions: عمل
-    message_summary:
-      unread_button: نشان لاؤ جو کائنی پڑھا
-      read_button: نشان لاؤ جو پڑھ گھدے
-      destroy_button: مٹاؤ
-      unmute_button: انباکس تے ون٘ڄو
     new:
       title: سنیہا پٹھو
       send_message_to_html: '%{name} کوں نواں سنیہا پٹھو'
       back_to_inbox: انباکس تے واپس
     create:
       message_sent: سنیہا بھیڄ ݙتے
-    outbox:
-      title: آؤٹ باکس
-    muted:
-      title: خاموش تھئے سنیہے
     show:
       title: سنیہا پڑھو
       reply_button: جواب
       unread_button: نشان لاؤ جو کائنی پڑھا
       destroy_button: مٹاؤ
       back: پچھوں
-    sent_message_summary:
-      destroy_button: مٹاؤ
-    heading:
-      my_inbox: میݙا انباکس
-      my_outbox: میݙا آؤٹ باکس
-      muted_messages: خاموش تھئے سنیہے
     destroy:
       destroyed: سنیہا مٹ ڳیا
+    mailboxes:
+      heading:
+        my_inbox: میݙا انباکس
+        my_outbox: میݙا آؤٹ باکس
+        muted_messages: خاموش تھئے سنیہے
+      messages_table:
+        from: کنوں
+        to: تائیں
+        subject: موضوع
+        date: تریخ
+        actions: عمل
+      message:
+        unread_button: نشان لاؤ جو کائنی پڑھا
+        read_button: نشان لاؤ جو پڑھ گھدے
+        destroy_button: مٹاؤ
+        unmute_button: انباکس تے ون٘ڄو
+    inboxes:
+      show:
+        title: ان باکس
+    muted_inboxes:
+      show:
+        title: خاموش تھئے سنیہے
+    outboxes:
+      show:
+        title: آؤٹ باکس
+      message:
+        destroy_button: مٹاؤ
   passwords:
     new:
       email address: ای میل پتہ
index ebeb5c683b1cfc03db92381e4bddf277524468a8..2fa7e9e53f9b16374be2ca95f0329be24b70196a 100644 (file)
@@ -1782,8 +1782,6 @@ sl:
       success: Vaš uporabniški račun je potrjen. Hvala, da ste se vpisali!
       already active: Ta račun je že bil potrjen.
       unknown token: Ta potrditvena koda je potekla ali ne obstaja.
-      resend_html: Če želite, da vam znova pošljemo potrditveno e-pošto, %{reconfirm_link}.
-      click_here: klikni tukaj
     confirm_resend:
       failure: Uporabnika %{name} ni bilo mogoče najti.
     confirm_email:
@@ -1801,33 +1799,6 @@ sl:
         zahtevke za potrditev, se prepričajte, da ste %{sender} uvrstili na beli seznam,
         saj ne moremo odgovoriti na nobene zahtevke za potrditev.
   messages:
-    inbox:
-      title: Prejeta pošta
-      messages: Imate %{new_messages} in %{old_messages}.
-      new_messages:
-        few: '%{count} nova sporočila'
-        one: '%{count} novo sporočilo'
-        two: '%{count} novi sporočili'
-        other: '%{count} novih sporočil'
-      old_messages:
-        few: '%{count} stara sporočila'
-        one: '%{count} staro sporočilo'
-        two: '%{count} stari sporočili'
-        other: '%{count} starih sporočil'
-      no_messages_yet_html: Prejeli niste še nobenih sporočil. Zakaj ne bi stopili
-        v stik z %{people_mapping_nearby_link}?
-      people_mapping_nearby: ljudmi, ki kartirajo blizu vas
-    messages_table:
-      from: Od
-      to: Za
-      subject: Zadeva
-      date: Datum
-      actions: Dejanja
-    message_summary:
-      unread_button: Označi kot neprebrano
-      read_button: Označi kot prebrano
-      destroy_button: Izbriši
-      unmute_button: Prestavi v mapo »Prejeto«.
     new:
       title: Pošiljanje sporočila
       send_message_to_html: Pošlji novo sporočilo uporabniku %{name}
@@ -1840,23 +1811,6 @@ sl:
       title: Ni tega sporočila
       heading: Ni tega sporočila
       body: Žal ni sporočila s tem id-jem.
-    outbox:
-      title: Poslana pošta
-      messages:
-        few: Imate %{count} poslana sporočila
-        one: Imate %{count} poslano sporočilo
-        two: Imate %{count} poslani sporočili
-        other: Imate %{count} poslanih sporočil
-      no_sent_messages_html: Poslali niste še nobenih sporočil. Zakaj ne bi stopili
-        v stik z %{people_mapping_nearby_link}?
-      people_mapping_nearby: ljudmi, ki kartirajo blizu vas
-    muted:
-      title: Utišana sporočila
-      messages:
-        one: '%{count} novo sporočilo'
-        two: '%{count} novi sporočili'
-        few: '%{count} novih sporočil'
-        other: '%{count} novih sporočil'
     reply:
       wrong_user: Prijavljeni ste kot '%{user}', toda sporočilo, na katerega odgovarjate,
         ni bilo poslano temu uporabniku. Za odgovor se prijavite kot pravi uporabnik.
@@ -1868,12 +1822,6 @@ sl:
       back: Nazaj
       wrong_user: Prijavljeni ste kot '%{user}', ampak sporočilo, ko ga \elite prebrati
         ni bilo poslano vam. Prosimo, prijavite se, kot pravi uporabnik za branje.
-    sent_message_summary:
-      destroy_button: Izbriši
-    heading:
-      my_inbox: Prejeta pošta
-      my_outbox: Poslana pošta
-      muted_messages: Utišana sporočila
     mark:
       as_read: Sporočilo označeno kot prebrano
       as_unread: Sporočilo označeno kot neprebrano
@@ -1882,6 +1830,60 @@ sl:
       error: Sporočila ni bilo mogoče premakniti v mapo »Prejeto«.
     destroy:
       destroyed: Sporočilo izbrisano
+    mailboxes:
+      heading:
+        my_inbox: Prejeta pošta
+        my_outbox: Poslana pošta
+        muted_messages: Utišana sporočila
+      messages_table:
+        from: Od
+        to: Za
+        subject: Zadeva
+        date: Datum
+        actions: Dejanja
+      message:
+        unread_button: Označi kot neprebrano
+        read_button: Označi kot prebrano
+        destroy_button: Izbriši
+        unmute_button: Prestavi v mapo »Prejeto«.
+    inboxes:
+      show:
+        title: Prejeta pošta
+        messages: Imate %{new_messages} in %{old_messages}.
+        new_messages:
+          few: '%{count} nova sporočila'
+          one: '%{count} novo sporočilo'
+          two: '%{count} novi sporočili'
+          other: '%{count} novih sporočil'
+        old_messages:
+          few: '%{count} stara sporočila'
+          one: '%{count} staro sporočilo'
+          two: '%{count} stari sporočili'
+          other: '%{count} starih sporočil'
+        no_messages_yet_html: Prejeli niste še nobenih sporočil. Zakaj ne bi stopili
+          v stik z %{people_mapping_nearby_link}?
+        people_mapping_nearby: ljudmi, ki kartirajo blizu vas
+    muted_inboxes:
+      show:
+        title: Utišana sporočila
+        messages:
+          one: '%{count} novo sporočilo'
+          two: '%{count} novi sporočili'
+          few: '%{count} novih sporočil'
+          other: '%{count} novih sporočil'
+    outboxes:
+      show:
+        title: Poslana pošta
+        messages:
+          few: Imate %{count} poslana sporočila
+          one: Imate %{count} poslano sporočilo
+          two: Imate %{count} poslani sporočili
+          other: Imate %{count} poslanih sporočil
+        no_sent_messages_html: Poslali niste še nobenih sporočil. Zakaj ne bi stopili
+          v stik z %{people_mapping_nearby_link}?
+        people_mapping_nearby: ljudmi, ki kartirajo blizu vas
+      message:
+        destroy_button: Izbriši
   passwords:
     new:
       title: pozabljeno geslo
@@ -2841,6 +2843,29 @@ sl:
       report: Prijavi tega uporabnika
     go_public:
       flash success: Zdaj so vsi vaši prispevki javni in lahko urejate podatke.
+    issued_blocks:
+      show:
+        title: Dana blokiranja uporabnika_ce %{name}
+        heading_html: Seznam izvedenih blokiranj uporabnika %{name}
+        empty: Uporabnik_ca %{name} ni blokiral_a še nikogar.
+    received_blocks:
+      show:
+        title: Blokiranja uporabnika %{name}
+        heading_html: Seznam blokiranj uporabnika %{name}
+        empty: Uporabnik_ca %{name} še ni bil_a blokiran_a.
+      edit:
+        title: Preklic vseh blokiranj v %{block_on}
+        heading_html: Preklic vseh blokiranj v %{block_on}
+        empty: '%{name} nima aktivnih blokiranj.'
+        confirm: Ste prepričani, da želite preklicati %{active_blocks}?
+        active_blocks:
+          one: '%{count} aktivno blokiranje'
+          two: '%{count} aktivni blokiranji'
+          few: '%{count} aktivna blokiranja'
+          other: '%{count} aktivnih blokiranj'
+        revoke: Prekliči!
+      destroy:
+        flash: Vsa aktivna blokiranja so bila preklicana.
     lists:
       show:
         title: Uporabniki
@@ -2909,18 +2934,6 @@ sl:
       title: Blokiranja uporabnika
       heading: Seznam blokiranj uporabnika
       empty: Ni bilo še nobenega blokiranja.
-    revoke_all:
-      title: Preklic vseh blokiranj v %{block_on}
-      heading_html: Preklic vseh blokiranj v %{block_on}
-      empty: '%{name} nima aktivnih blokiranj.'
-      confirm: Ste prepričani, da želite preklicati %{active_blocks}?
-      active_blocks:
-        one: '%{count} aktivno blokiranje'
-        two: '%{count} aktivni blokiranji'
-        few: '%{count} aktivna blokiranja'
-        other: '%{count} aktivnih blokiranj'
-      revoke: Prekliči!
-      flash: Vsa aktivna blokiranja so bila preklicana.
     helper:
       time_future_html: Konča se čez %{time}.
       until_login: Aktivna dokler uporabnik se prijavi.
@@ -2952,14 +2965,6 @@ sl:
           two: '%{count} leti'
           few: '%{count} leta'
           other: '%{count} let'
-    blocks_on:
-      title: Blokiranja uporabnika %{name}
-      heading_html: Seznam blokiranj uporabnika %{name}
-      empty: Uporabnik_ca %{name} še ni bil_a blokiran_a.
-    blocks_by:
-      title: Dana blokiranja uporabnika_ce %{name}
-      heading_html: Seznam izvedenih blokiranj uporabnika %{name}
-      empty: Uporabnik_ca %{name} ni blokiral_a še nikogar.
     show:
       title: '%{block_by} je blokiral uporabnika %{block_on}'
       heading_html: '%{block_by} je blokiral uporabnika %{block_on}'
@@ -3082,7 +3087,6 @@ sl:
       center_marker: Osredini zemljevid na označevalec
       paste_html: Prilepite HTML za vdelavo v spletno mesto
       view_larger_map: Prikaži večji zemljevid
-      only_standard_layer: Kot sliko je mogoče izvoziti samo standardni sloj
     embed:
       report_problem: Prijavi težavo
     key:
index a31a9c130ff289cd59371e580f4d64768a4d4726..c43134b496f3f758c34c283b086d82c0c4026ac0 100644 (file)
@@ -930,21 +930,6 @@ sq:
       success: Konfirmohet ndryshimi i adresës së emailit!
       failure: Një adresë emaili tashmë është konfirmuar me këtë shenjë.
   messages:
-    inbox:
-      title: Kutia mbërritëse
-      messages: Ti ke %{new_messages} dhe %{old_messages}
-      no_messages_yet_html: Ti nuk ke mesazhe ende. Pse nuk kontakton ndonjërin nga
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: hartografët aty pranë
-    messages_table:
-      from: Prej
-      to: Për
-      subject: Titulli
-      date: Data
-    message_summary:
-      unread_button: Shëno si të palexuar
-      read_button: Shëno si të lexuar
-      destroy_button: Fshi
     new:
       title: Dërgo mesazh
       send_message_to_html: Dërgo një mesazh të ri për %{name}
@@ -957,8 +942,6 @@ sq:
       title: Nu ka mesazh të tillë
       heading: Nuk ka mesazh të tillë
       body: Na vjen keq, nuk ka mesazh me këtë id.
-    outbox:
-      title: Dalje
     show:
       reply_button: Përgjigje
       unread_button: Shëno si të palexuar
@@ -966,13 +949,33 @@ sq:
       wrong_user: 'TI je identifikuar si: "%{user}'', por mesazhi që ke kërkuar për
         të lexuar nuk ishte dërguar nga ose për atë përdorues. Të lutem identifikohu
         si përdorues i saktë për të lexuar atë.'
-    sent_message_summary:
-      destroy_button: Fshi
-    heading:
-      my_inbox: Kutia ime mbërritëse
     mark:
       as_read: Mesazhi është shënuar si të lexuar
       as_unread: Mesazhi është shënuar si i palexuar
+    mailboxes:
+      heading:
+        my_inbox: Kutia ime mbërritëse
+      messages_table:
+        from: Prej
+        to: Për
+        subject: Titulli
+        date: Data
+      message:
+        unread_button: Shëno si të palexuar
+        read_button: Shëno si të lexuar
+        destroy_button: Fshi
+    inboxes:
+      show:
+        title: Kutia mbërritëse
+        messages: Ti ke %{new_messages} dhe %{old_messages}
+        no_messages_yet_html: Ti nuk ke mesazhe ende. Pse nuk kontakton ndonjërin
+          nga %{people_mapping_nearby_link}?
+        people_mapping_nearby: hartografët aty pranë
+    outboxes:
+      show:
+        title: Dalje
+      message:
+        destroy_button: Fshi
   passwords:
     new:
       title: Fjalëkalimi i humbur
index 5bb94382a5aaa68fef0d0a1dbfcaf6033423d60e..c4c4cb158865a29bd4364da84ac9bf9605d81d45 100644 (file)
@@ -790,27 +790,6 @@ sr-Latn:
       success: Vaša e-adresa je potvrđena. Hvala vam na upisu!
       failure: E-adresa s ovim novčićem je već potvrđena.
   messages:
-    inbox:
-      title: Primljene
-      messages: Imate %{new_messages} i %{old_messages}
-      new_messages:
-        one: '%{count} nova poruka'
-        other: '%{count} nove poruke'
-      old_messages:
-        one: '%{count} stara poruka'
-        other: '%{count} stare poruke'
-      no_messages_yet_html: Još uvek nemate poruka. Zašto ne biste stupili u kontakt
-        s %{people_mapping_nearby_link}?
-      people_mapping_nearby: maperima u vašoj okolini
-    messages_table:
-      from: Od
-      to: Za
-      subject: Naslov
-      date: Datum
-    message_summary:
-      unread_button: Označi kao nepročitano
-      read_button: Označi kao pročitano
-      destroy_button: Obriši
     new:
       title: Pošalji poruku
       send_message_to_html: Pošalji novu poruku za %{name}
@@ -823,14 +802,6 @@ sr-Latn:
       title: Nema takve poruke
       heading: Nema takve poruke
       body: Nažalost, nema poruke s tim IB.
-    outbox:
-      title: Poslate
-      messages:
-        one: Imate %{count} poslatu poruku
-        other: Imate %{count} poslate poruke
-      no_sent_messages_html: Još uvek nemate poslatih poruka. Zašto ne biste stupili
-        u kontakt s %{people_mapping_nearby_link}?
-      people_mapping_nearby: maperima u vašoj okolini
     reply:
       wrong_user: Prijavljeni ste kao %{user}, ali poruka na koju ste želeli da odgovorite
         nije poslata tom korisniku. Prijavite se kao ispravan korisnik da biste odgovorili.
@@ -841,15 +812,47 @@ sr-Latn:
       wrong_user: Prijavljeni ste kao %{user}, ali poruka koju ste želeli da pročitate
         nije poslata tom korisniku. Prijavite se kao ispravan korisnik da biste je
         pročitali.
-    sent_message_summary:
-      destroy_button: Obriši
-    heading:
-      my_inbox: Primljene
     mark:
       as_read: Poruka je označena kao pročitana
       as_unread: Poruka je označena kao nepročitana
     destroy:
       destroyed: Poruka je obrisana
+    mailboxes:
+      heading:
+        my_inbox: Primljene
+      messages_table:
+        from: Od
+        to: Za
+        subject: Naslov
+        date: Datum
+      message:
+        unread_button: Označi kao nepročitano
+        read_button: Označi kao pročitano
+        destroy_button: Obriši
+    inboxes:
+      show:
+        title: Primljene
+        messages: Imate %{new_messages} i %{old_messages}
+        new_messages:
+          one: '%{count} nova poruka'
+          other: '%{count} nove poruke'
+        old_messages:
+          one: '%{count} stara poruka'
+          other: '%{count} stare poruke'
+        no_messages_yet_html: Još uvek nemate poruka. Zašto ne biste stupili u kontakt
+          s %{people_mapping_nearby_link}?
+        people_mapping_nearby: maperima u vašoj okolini
+    outboxes:
+      show:
+        title: Poslate
+        messages:
+          one: Imate %{count} poslatu poruku
+          other: Imate %{count} poslate poruke
+        no_sent_messages_html: Još uvek nemate poslatih poruka. Zašto ne biste stupili
+          u kontakt s %{people_mapping_nearby_link}?
+        people_mapping_nearby: maperima u vašoj okolini
+      message:
+        destroy_button: Obriši
   passwords:
     new:
       title: Povratak lozinke
@@ -1161,6 +1164,16 @@ sr-Latn:
       confirm: Potvrdi
     go_public:
       flash success: Sve vaše izmene su sada javne. Dozvoljeno vam je uređivanje.
+    issued_blocks:
+      show:
+        title: Blokade od %{name}
+        heading_html: Spisak blokada od %{name}
+        empty: '%{name} još uvek nije blokirao nikoga.'
+    received_blocks:
+      show:
+        title: Blokade za %{name}
+        heading_html: Spisak blokada za %{name}
+        empty: '%{name} još nije bio blokiran/a.'
     lists:
       show:
         title: Korisnici
@@ -1220,14 +1233,6 @@ sr-Latn:
         hours:
           one: 1 sat
           other: '%{count} sata'
-    blocks_on:
-      title: Blokade za %{name}
-      heading_html: Spisak blokada za %{name}
-      empty: '%{name} još nije bio blokiran/a.'
-    blocks_by:
-      title: Blokade od %{name}
-      heading_html: Spisak blokada od %{name}
-      empty: '%{name} još uvek nije blokirao nikoga.'
     show:
       title: '%{block_on} je blokiran/a od %{block_by}'
       heading_html: '%{block_on} je blokiran/a od %{block_by}'
index 0ffccbaba06ac96c33ae14e62ec77372fc19e2db..7393c3d5c2e7f510910b1ec4856d39d9eb7ab1af 100644 (file)
@@ -490,6 +490,8 @@ sr:
       title: Дневник корисника/це %{user} | %{title}
       user_title: Дневник корисника/це %{user}
       discussion: Дискусија
+      subscribe: Прати
+      unsubscribe: Прекини праћење
       leave_a_comment: Остави коментар
       login_to_leave_a_comment_html: '%{login_link} да бисте оставили коментар'
       login: Пријавите се
@@ -573,6 +575,7 @@ sr:
           chair_lift: Жичара са седиштима
           drag_lift: Вучница
           gondola: Кабинска жичара
+          platter: Скилифт
           pylon: Пилон
           station: Станица жичаре
           "yes": Ваздушни путеви
@@ -682,6 +685,7 @@ sr:
           waste_basket: Корпа за отпатке
           waste_disposal: Контејнер
           waste_dump_site: Депонија
+          watering_place: Појило
           weighbridge: Теретна вага
           "yes": Погодност
         boundary:
@@ -710,6 +714,7 @@ sr:
           college: Факултетска зграда
           commercial: Пословна зграда
           construction: Зграда у изградњи
+          cowshed: Штала
           detached: Издвојена кућа
           dormitory: Студентски дом
           duplex: Дуплекс кућа
@@ -739,6 +744,7 @@ sr:
           shed: Шупа
           stable: Штала
           static_caravan: Караван
+          sty: Свињарац
           temple: Зграда храма
           terrace: Тераса
           train_station: Железничка станица
@@ -760,6 +766,7 @@ sr:
           electronics_repair: Поправка електронике
           gardener: Баштован
           glaziery: Стаклар
+          handicraft: Рукотворине
           painter: Молер
           photographer: Фотограф
           plumber: Водоинсталатер
@@ -822,6 +829,7 @@ sr:
           traffic_signals: Саобраћајна сигнализација
           trunk: Магистрала
           trunk_link: Магистрала
+          turning_circle: Кружни ток
           unclassified: Некласификовани пут
           "yes": Пут
         historic:
@@ -996,6 +1004,7 @@ sr:
           grassland: Пашњак
           heath: Равница
           hill: Брдо
+          hot_spring: Гејзир
           island: Острво
           land: Земља
           marsh: Мочвара
@@ -1173,6 +1182,7 @@ sr:
           massage: Масажа
           mobile_phone: Продавница мобилних телефона
           motorcycle: Продавница мотоцикала
+          motorcycle_repair: Поправка мотоцикала
           music: Музичка продавница
           musical_instrument: Музички инструменти
           newsagent: Новинарница
@@ -1184,6 +1194,7 @@ sr:
           pawnbroker: Залагаоничар
           perfumery: Парфимерија
           pet: Продавница за кућне љубимце
+          pet_grooming: Шишање паса
           photo: Фотографска радња
           seafood: Морски плодови
           second_hand: Продавница половне робе
@@ -1234,6 +1245,7 @@ sr:
           "yes": Тунел
         water:
           lake: Језеро
+          fishpond: Рибњак
           wastewater: Отпадне воде
         waterway:
           artificial: Вештачки водоток
@@ -1287,6 +1299,10 @@ sr:
       status: Статус
       reports: Извештаји
       last_updated: Последње ажурирање
+      states:
+        ignored: Занемарено
+        open: Отворено
+        resolved: Решено
     show:
       no_reports: Нема пријава
       resolve: Разреши
@@ -1460,7 +1476,6 @@ sr:
       success: Ваш налог је потврђен. Хвала вам на упису!
       already active: Овај налог је већ потврђен.
       unknown token: Тај код за потврду је истекао или не постоји.
-      click_here: кликните овде
     confirm_resend:
       failure: Корисник %{name} није пронађен.
     confirm_email:
@@ -1472,29 +1487,6 @@ sr:
       failure: Е-адреса с овим новчићем је већ потврђена.
       unknown_token: Вредност кода за потврду је истекла или тај код не постоји.
   messages:
-    inbox:
-      title: Примљене
-      messages: Имате %{new_messages} и %{old_messages}
-      new_messages:
-        one: '%{count} нова порука'
-        few: '%{count} нове поруке'
-        other: '%{count} нових порука'
-      old_messages:
-        one: '%{count} стара порука'
-        other: '%{count} старих порука'
-      no_messages_yet_html: Још увек немате порука. Зашто не бисте ступили у контакт
-        с %{people_mapping_nearby_link}?
-      people_mapping_nearby: маперима у вашој околини
-    messages_table:
-      from: Од
-      to: За
-      subject: Наслов
-      date: Датум
-      actions: Радње
-    message_summary:
-      unread_button: Означи као непрочитано
-      read_button: Означи као прочитано
-      destroy_button: Обриши
     new:
       title: Пошаљи поруку
       send_message_to_html: Пошаљи нову поруку за %{name}
@@ -1507,16 +1499,6 @@ sr:
       title: Нема такве поруке
       heading: Нема такве поруке
       body: Нажалост, нема поруке с тим ИБ.
-    outbox:
-      title: Послате
-      messages:
-        one: Имате %{count} послату поруку
-        other: Имате %{count} послате поруке
-      no_sent_messages_html: Још увек немате послатих порука. Зашто не бисте ступили
-        у контакт с %{people_mapping_nearby_link}?
-      people_mapping_nearby: маперима у вашој околини
-    muted:
-      title: Пригушене поруке
     reply:
       wrong_user: Пријављени сте као %{user}, али порука на коју сте желели да одговорите
         није послата том кориснику. Пријавите се као исправан корисник да бисте одговорили.
@@ -1529,17 +1511,54 @@ sr:
       wrong_user: Пријављени сте као '%{user}', али порука коју сте желели да прочитате
         нисте послали ви или том кориснику. Пријавите се као исправан корисник да
         бисте је прочитали.
-    sent_message_summary:
-      destroy_button: Обриши
-    heading:
-      my_inbox: Примљене
-      my_outbox: Послате
-      muted_messages: Пригушене поруке
     mark:
       as_read: Порука је означена као прочитана
       as_unread: Порука је означена као непрочитана
     destroy:
       destroyed: Порука је обрисана
+    mailboxes:
+      heading:
+        my_inbox: Примљене
+        my_outbox: Послате
+        muted_messages: Пригушене поруке
+      messages_table:
+        from: Од
+        to: За
+        subject: Наслов
+        date: Датум
+        actions: Радње
+      message:
+        unread_button: Означи као непрочитано
+        read_button: Означи као прочитано
+        destroy_button: Обриши
+    inboxes:
+      show:
+        title: Примљене
+        messages: Имате %{new_messages} и %{old_messages}
+        new_messages:
+          one: '%{count} нова порука'
+          few: '%{count} нове поруке'
+          other: '%{count} нових порука'
+        old_messages:
+          one: '%{count} стара порука'
+          other: '%{count} старих порука'
+        no_messages_yet_html: Још увек немате порука. Зашто не бисте ступили у контакт
+          с %{people_mapping_nearby_link}?
+        people_mapping_nearby: маперима у вашој околини
+    muted_inboxes:
+      show:
+        title: Пригушене поруке
+    outboxes:
+      show:
+        title: Послате
+        messages:
+          one: Имате %{count} послату поруку
+          other: Имате %{count} послате поруке
+        no_sent_messages_html: Још увек немате послатих порука. Зашто не бисте ступили
+          у контакт с %{people_mapping_nearby_link}?
+        people_mapping_nearby: маперима у вашој околини
+      message:
+        destroy_button: Обриши
   passwords:
     new:
       title: Повратак лозинке
@@ -1561,10 +1580,13 @@ sr:
       preferred_editor: Жељени уређивач
       preferred_languages: Жељени језици
       site_color_schemes:
+        auto: Аутоматски
+        light: Светла
         dark: Тамна
       map_color_schemes:
         auto: Аутоматски
         light: Светла
+        dark: Тамна
       edit_preferences: Уреди подешавања
     edit:
       title: Моја подешавања
@@ -1627,6 +1649,7 @@ sr:
     richtext_field:
       edit: Уреди
       preview: Преглед
+      help: Помоћ
     pagination:
       diary_comments:
         older: Старији коментари
@@ -1745,6 +1768,8 @@ sr:
       title: Извоз
       manually_select: Ручно изаберите другу област
       licence: Лиценца
+      licence_details_html: Подаци OpenStreetMap-а су доступни под лиценцом %{odbl_link}
+        (ODbL).
       too_large:
         advice: 'Ако буде проблема при извозу, послужите се неким од доленаведених
           извора:'
@@ -1829,6 +1854,7 @@ sr:
           primary: Магистрални пут
           secondary: Споредни пут
           unclassified: Локални пут
+          pedestrian: Пешачка стаза
           track: Макадам
           bridleway: Коњичка стаза
           cycleway: Бициклистичка стаза
@@ -1840,6 +1866,7 @@ sr:
           train: Воз
           subway: Подземна железница
           ferry: Трајект
+          light_rail: Лака железница
           tram: Трамвај
           trolleybus: Тролејбус
           bus: Аутобус
@@ -1851,11 +1878,14 @@ sr:
           admin: Административна граница
           capital: Престоница
           city: Град
+          orchard: Воћњак
           vineyard: Виноград
           forest: Шума
           wood: Шума
+          farmland: Обрадиво земљиште
           grass: Трава
           meadow: Ливада
+          bare_rock: Голи камен
           sand: Песак
           golf: Голф терен
           park: Парк
@@ -1868,6 +1898,8 @@ sr:
           lake: Језеро
           reservoir: Резервоар
           glacier: Глечер
+          reef: Гребен
+          wetland: Мочварно подручје
           farm: Фарма
           brownfield: Грађевинско земљиште
           cemetery: Гробље
@@ -1882,6 +1914,9 @@ sr:
           hospital: Болница
           building: Значајна зграда
           station: Железничка станица
+          railway_halt: Ранжирна станица
+          subway_station: Станица метроа
+          tram_stop: Трамвајско стајалиште
           summit: Узвишење
           peak: Врх
           tunnel: Испрекидан оквир – тунел
@@ -2044,6 +2079,17 @@ sr:
       wikipedia:
         title: Пријава преко Википедије
         alt: Логотип Википедије
+    share:
+      email:
+        title: Дели преко имејла
+      facebook:
+        title: Дели преко Фејсбука
+      linkedin:
+        title: Дели преко LinkedIn
+      telegram:
+        title: Дели на Телеграму
+      x:
+        title: Дели на X
   oauth:
     permissions:
       missing: Нисте дозволили приступ апликације овом одељењу
@@ -2069,6 +2115,8 @@ sr:
     index:
       application: Апликација
       permissions: Дозволе
+    application:
+      revoke: Опозови приступ
   users:
     new:
       title: Регистрација
@@ -2144,6 +2192,7 @@ sr:
       remove as friend: Избаци из пријатеља
       add as friend: Додај пријатеља
       mapper since: 'Картограф од:'
+      uid: 'ID корисника:'
       ct status: 'Услови за учешће:'
       ct undecided: Неодлучено
       ct declined: Одбијено
@@ -2174,6 +2223,20 @@ sr:
       report: Пријави овог корисника
     go_public:
       flash success: Све ваше измене су сада јавне. Дозвољено вам је уређивање.
+    issued_blocks:
+      show:
+        title: Блокаде од %{name}
+        heading_html: Листа блокада од %{name}
+        empty: '%{name} још увек није блокирао никога.'
+    received_blocks:
+      show:
+        title: Блокаде за %{name}
+        heading_html: Листа блокада за %{name}
+        empty: '%{name} још није био блокиран/а.'
+      edit:
+        heading_html: Опозивање свих блокада на %{block_on}
+      destroy:
+        flash: Све активне блокаде су опозване.
     lists:
       show:
         title: Корисници
@@ -2243,9 +2306,6 @@ sr:
       title: Корисничке блокаде
       heading: Листа корисничких блокада
       empty: Није направљена ниједна блокада.
-    revoke_all:
-      heading_html: Опозивање свих блокада на %{block_on}
-      flash: Све активне блокаде су опозване.
     helper:
       time_future_html: Завршава се у %{time}.
       until_login: Активно све док се корисник не пријави.
@@ -2256,14 +2316,6 @@ sr:
         hours:
           one: '%{count} час'
           other: '%{count} часа'
-    blocks_on:
-      title: Блокаде за %{name}
-      heading_html: Листа блокада за %{name}
-      empty: '%{name} још није био блокиран/а.'
-    blocks_by:
-      title: Блокаде од %{name}
-      heading_html: Листа блокада од %{name}
-      empty: '%{name} још увек није блокирао никога.'
     show:
       title: '%{block_on} је блокиран/а од %{block_by}'
       heading_html: '%{block_on} је блокиран/а од %{block_by}'
@@ -2280,6 +2332,8 @@ sr:
       display_name: Блокирани корисник
       creator_name: Творац
       reason: Разлози за блокирање
+      start: Почетак
+      end: Крај
       status: Стање
   user_mutes:
     index:
@@ -2310,6 +2364,9 @@ sr:
       report: пријави ову белешку
       anonymous_warning: Ова белешка садржи коментаре анонимних корисника које би
         требало посебно проверити.
+      discussion: Дискусија
+      subscribe: Прати
+      unsubscribe: Прекини праћење
       hide: Сакриј
       resolve: Разреши
       reactivate: Поново покрени
@@ -2325,6 +2382,8 @@ sr:
       add: Додај белешку
     notes_paging_nav:
       showing_page: Страница %{page}
+      next: Следеће
+      previous: Претходно
   javascripts:
     close: Затвори
     share:
@@ -2345,7 +2404,6 @@ sr:
       center_marker: Центрирај карту на ознаку
       paste_html: Налепи HTML да га уградиш у веб страницу
       view_larger_map: Погледај већу карту
-      only_standard_layer: Само стандардни лејер може да се извезе као слика
     embed:
       report_problem: Пријави проблем
     key:
index 9196043f1e11598d5fc0adf285971bfe65684147..6ea10444ee0c36bf2e839ddeecf8d27fb9c76930 100644 (file)
@@ -107,6 +107,7 @@ sv:
       message: Meddelande
       node: Nod
       node_tag: Nodtagg
+      note: Anteckning
       old_node: Gammal nod
       old_node_tag: Gammal nodtagg
       old_relation: Gammal relation
@@ -412,7 +413,7 @@ sv:
         way: Sträcka
         relation: Relation
     containing_relation:
-      entry_role_html: Relation %{relation_name} (som %{relation_role})
+      entry_role_html: '%{relation_name} (som %{relation_role})'
     not_found:
       title: Hittades inte
       sorry: 'Tyvärr kunde inte %{type} #%{id} hittas.'
@@ -1072,6 +1073,14 @@ sv:
           wayside_shrine: Vägkants-helgedom
           wreck: Vrak
           "yes": Historisk plats
+        information:
+          guidepost: Vägvisare
+          board: Informationstavla
+          map: Karta
+          office: Turistkontor
+          terminal: Informationsterminal
+          sign: Informationsskylt
+          stele: Informationsstele
         junction:
           "yes": Korsning
         landuse:
@@ -1144,6 +1153,8 @@ sv:
           track: Löparbana
           water_park: Vattenpark
           "yes": Fritid
+        lock:
+          "yes": Sluss
         man_made:
           adit: Gruvöppning
           advertising: Reklam
@@ -1484,6 +1495,16 @@ sv:
           building_passage: Byggpassage
           culvert: Kulvert
           "yes": Tunnel
+        water:
+          lake: Sjö
+          pond: Damm
+          reservoir: Reservoar
+          basin: Vattenbassäng
+          fishpond: Fiskedamm
+          lagoon: Lagun
+          wastewater: Avloppsvatten
+          oxbow: Korvsjö
+          lock: Sluss
         waterway:
           artificial: Artificiellt vattendrag
           boatyard: Båtvarv
@@ -1548,6 +1569,10 @@ sv:
         open: Öppen
         resolved: Löst
     show:
+      title:
+        open: Öppet ärende %{issue_id}
+        ignored: 'Ignorerat ärende #%{issue_id}'
+        resolved: Löst ärende %{issue_id}
       reports:
         one: '%{count} rapport'
         other: '%{count} rapporter'
@@ -1819,8 +1844,6 @@ sv:
       success: Ditt konto är bekräftat, tack för att du registrerade dig!
       already active: Detta konto har redan bekräftats.
       unknown token: Denna bekräftelsekod har gått ut eller finns inte.
-      resend_html: Om du vill att vi skickar e-postbekräftelse igen, %{reconfirm_link}.
-      click_here: klicka här
     confirm_resend:
       failure: Användaren %{name} hittades inte.
     confirm_email:
@@ -1837,29 +1860,6 @@ sv:
       whitelist: Om du använder ett antispam-system som skickar bekräftelsemail se
         till att vitlista %{sender} eftersom vi inte kan svara på några bekräfelsemail.
   messages:
-    inbox:
-      title: Inkorg
-      messages: Du har %{new_messages} och %{old_messages}
-      new_messages:
-        one: '%{count} nytt meddelande'
-        other: '%{count} nya meddelanden'
-      old_messages:
-        one: '%{count} gammalt meddelande'
-        other: '%{count} gamla meddelanden'
-      no_messages_yet_html: Du har inga meddelanden ännu. Varför inte ta kontakt med
-        någon %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk som kartlägger i närheten
-    messages_table:
-      from: Från
-      to: Till
-      subject: Ärende
-      date: Datum
-      actions: Åtgärder
-    message_summary:
-      unread_button: Markera som oläst
-      read_button: Markera som läst
-      destroy_button: Radera
-      unmute_button: Flytta till inkorg
     new:
       title: Skicka meddelande
       send_message_to_html: Skicka ett nytt meddelande till %{name}
@@ -1872,19 +1872,6 @@ sv:
       title: Inget sådant meddelande
       heading: Inget sådant meddelande
       body: Det finns inget meddelande med det ID:et.
-    outbox:
-      title: Utkorg
-      messages:
-        one: Du har %{count} skickat ett meddelande
-        other: Du har %{count} skickat meddelanden
-      no_sent_messages_html: Du har inte skickat några meddelanden ännu. Varför inte
-        ta kontakt med någon av de %{people_mapping_nearby_link}?
-      people_mapping_nearby: folk som kartlägger i närheten
-    muted:
-      title: Tystade meddelanden
-      messages:
-        one: '%{count} tystat meddelande'
-        other: '%{count} nya meddelanden'
     reply:
       wrong_user: Du är inloggad som '%{user}', men meddelandet du har bett om att
         besvara skickades inte till den användaren. Logga in med korrekt användare
@@ -1898,12 +1885,6 @@ sv:
       wrong_user: Du är inloggad som '%{user}', men meddelandet du har bett om att
         få läsa skickades inte till eller av den användaren. Logga in med korrekt
         användare för att läsa det.
-    sent_message_summary:
-      destroy_button: Radera
-    heading:
-      my_inbox: Min inkorg
-      my_outbox: Min utkorg
-      muted_messages: Tystade meddelanden
     mark:
       as_read: Meddelandet markerat som läst
       as_unread: Meddelandet markerat som oläst
@@ -1912,6 +1893,52 @@ sv:
       error: Meddelandet kunde inte flyttas till inkorgen.
     destroy:
       destroyed: Meddelande raderat
+    mailboxes:
+      heading:
+        my_inbox: Min inkorg
+        my_outbox: Min utkorg
+        muted_messages: Tystade meddelanden
+      messages_table:
+        from: Från
+        to: Till
+        subject: Ärende
+        date: Datum
+        actions: Åtgärder
+      message:
+        unread_button: Markera som oläst
+        read_button: Markera som läst
+        destroy_button: Radera
+        unmute_button: Flytta till inkorg
+    inboxes:
+      show:
+        title: Inkorg
+        messages: Du har %{new_messages} och %{old_messages}
+        new_messages:
+          one: '%{count} nytt meddelande'
+          other: '%{count} nya meddelanden'
+        old_messages:
+          one: '%{count} gammalt meddelande'
+          other: '%{count} gamla meddelanden'
+        no_messages_yet_html: Du har inga meddelanden ännu. Varför inte ta kontakt
+          med någon %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk som kartlägger i närheten
+    muted_inboxes:
+      show:
+        title: Tystade meddelanden
+        messages:
+          one: '%{count} tystat meddelande'
+          other: '%{count} nya meddelanden'
+    outboxes:
+      show:
+        title: Utkorg
+        messages:
+          one: Du har %{count} skickat ett meddelande
+          other: Du har %{count} skickat meddelanden
+        no_sent_messages_html: Du har inte skickat några meddelanden ännu. Varför
+          inte ta kontakt med någon av de %{people_mapping_nearby_link}?
+        people_mapping_nearby: folk som kartlägger i närheten
+      message:
+        destroy_button: Radera
   passwords:
     new:
       title: Förlorat lösenord
@@ -1936,6 +1963,16 @@ sv:
       title: Mina alternativ
       preferred_editor: Föredraget redigeringsprogram
       preferred_languages: Föredragna språk
+      preferred_site_color_scheme: Föredraget färgtema för webbplatsen
+      site_color_schemes:
+        auto: Automatiskt
+        light: Ljust
+        dark: Mörkt
+      preferred_map_color_scheme: Föredragen karta för färgtema
+      map_color_schemes:
+        auto: Automatiskt
+        light: Ljust
+        dark: Mörkt
       edit_preferences: Redigera alternativ
     edit:
       title: Redigera inställningar
@@ -2674,6 +2711,28 @@ sv:
       wikipedia:
         title: Logga in med Wikipedia
         alt: Wikipedia-logotyp
+    share:
+      email:
+        title: Dela via e-post
+        alt: E-post-ikon
+      bluesky:
+        title: Dela via Bluesky
+        alt: Bluesky-ikon
+      facebook:
+        title: Dela via Facebook
+        alt: Facebook-ikon
+      linkedin:
+        title: Dela via LinkedIn
+        alt: LinkedIn-ikon
+      mastodon:
+        title: Dela på Mastodon
+        alt: Mastodon-ikon
+      telegram:
+        title: Dela på Telegram
+        alt: Telegram-ikon
+      x:
+        title: Dela på X
+        alt: X-ikon
   oauth:
     permissions:
       missing: Du har inte gett applikationen åtkomst till den här faciliteten
@@ -2888,6 +2947,27 @@ sv:
       report: Rapportera denna användare
     go_public:
       flash success: Alla dina ändringar är nu publika, och du får lov att redigera.
+    issued_blocks:
+      show:
+        title: Blockeringar av %{name}
+        heading_html: Lista över blockeringar av %{name}
+        empty: '%{name} har inte gjort några blockeringar än.'
+    received_blocks:
+      show:
+        title: Blockeringar på %{name}
+        heading_html: Lista över blockeringar på %{name}
+        empty: '%{name} har inte blockerats än.'
+      edit:
+        title: Upphäv alla blockeringar av %{block_on}
+        heading_html: Upphäver alla blockeringar av %{block_on}
+        empty: '%{name} har inga aktiva blockeringar.'
+        confirm: Är du säker på att du vill upphäva %{active_blocks}?
+        active_blocks:
+          one: '%{count} aktiv blockering'
+          other: '%{count} aktiva blockeringar'
+        revoke: Upphäv!
+      destroy:
+        flash: Alla aktiva blockningar har upphävts.
     lists:
       show:
         title: Användare
@@ -2974,16 +3054,6 @@ sv:
       title: Användarblockeringar
       heading: Lista över användarblockeringar
       empty: Inga blockeringar har gjorts ännu.
-    revoke_all:
-      title: Upphäv alla blockeringar av %{block_on}
-      heading_html: Upphäver alla blockeringar av %{block_on}
-      empty: '%{name} har inga aktiva blockeringar.'
-      confirm: Är du säker på att du vill upphäva %{active_blocks}?
-      active_blocks:
-        one: '%{count} aktiv blockering'
-        other: '%{count} aktiva blockeringar'
-      revoke: Upphäv!
-      flash: Alla aktiva blockningar har upphävts.
     helper:
       time_future_html: Slutar om %{time}.
       until_login: Aktiv till dess användaren loggar in.
@@ -3006,14 +3076,15 @@ sv:
         years:
           one: '%{count} år'
           other: '%{count} år'
-    blocks_on:
-      title: Blockeringar på %{name}
-      heading_html: Lista över blockeringar på %{name}
-      empty: '%{name} har inte blockerats än.'
-    blocks_by:
-      title: Blockeringar av %{name}
-      heading_html: Lista över blockeringar av %{name}
-      empty: '%{name} har inte gjort några blockeringar än.'
+      short:
+        ended: avslutad
+        revoked_html: upphävd av %{name}
+        active: aktiv
+        active_unread: aktiv oläst
+        expired_unread: utgången oläst
+        read_html: läst %{time}
+        time_in_future_title: '%{time_absolute}; i %{time_relative}'
+        time_in_past_title: '%{time_absolute}; %{time_relative}'
     show:
       title: '%{block_on} blockerad av %{block_by}'
       heading_html: '%{block_on} blockerad av %{block_by}'
@@ -3030,6 +3101,8 @@ sv:
       display_name: Blockerad användare
       creator_name: Skapare
       reason: Orsak till blockering
+      start: Början
+      end: Slut
       status: Status
     navigation:
       all_blocks: Alla blockeringar
@@ -3076,6 +3149,11 @@ sv:
       description: Beskrivning
       created_at: Skapades den
       last_changed: Senast ändrad
+      apply: Verkställ
+      all: Alla
+      open: Öppen
+      closed: Stängd
+      status: Status
     show:
       title: 'Anteckning: %{id}'
       description: Beskrivning
@@ -3094,6 +3172,9 @@ sv:
       report: rapportera denna anteckning
       anonymous_warning: Denna anteckning innehåller kommentarer från anonyma användare
         vilka bör bekräftas oberoende av varandra.
+      discussion: Diskussion
+      subscribe: Prenumerera
+      unsubscribe: Avprenumerera
       hide: Göm
       resolve: Avklara
       reactivate: Återaktivera
@@ -3119,6 +3200,10 @@ sv:
         så skriv inte personuppgifter eller information från upphovsrättsligt skyddade
         kartor eller kataloger.
       add: Lägg till anteckning
+    new_readonly:
+      title: Ny anteckning
+      warning: Nya anteckningar kan inte skapas eftersom OpenStreetMap API för närvarande
+        befinner sig i skrivskyddat läge.
     notes_paging_nav:
       showing_page: Sida %{page}
       next: Nästa
@@ -3144,8 +3229,6 @@ sv:
       center_marker: Centrera kartan på markören
       paste_html: Klistra in HTML-koden för att publicera på en webbsida
       view_larger_map: Visa större karta
-      only_standard_layer: Endast lagrena Standard, Cykelkarta och Transport kan exporteras
-        som en bild
     embed:
       report_problem: Rapportera ett problem
     key:
index 4795129df6a8f8bafb256185401cb473c5d2beaf..9796cf0952e4ff6f42b6117c4bf348f65335c299 100644 (file)
@@ -600,18 +600,6 @@ ta:
     lost_password:
       greeting: வணக்கம்,
   messages:
-    inbox:
-      title: உள்பெட்டி
-    messages_table:
-      from: 'அனுப்புநர்:'
-      subject: பொருள்
-      date: நாள்
-      actions: செயல்கள்
-    message_summary:
-      unread_button: வாசிக்கப்படாததாக என குறியிடு
-      read_button: வாசித்ததாக குறியிடு
-      destroy_button: நீக்கு
-      unmute_button: வருமஞ்சலுக்கு நகர்த்து
     new:
       title: தகவலனுப்பு
       send_message_to_html: '%{name} என்பவருக்கு ஒரு புதிய தகவலை அனுப்பு'
@@ -621,26 +609,42 @@ ta:
     no_such_message:
       title: அப்படியொரு தகவல் இல்லை
       heading: அப்படியொரு தகவல் இல்லை
-    outbox:
-      title: அனுப்பியவை
-    muted:
-      title: மௌனித்த தகவல்கள்
-      messages:
-        one: '%{count} மௌனித்த தகவல்'
-        other: உமக்கு %{count} மௌனித்த தகவல்கள் உள்ளன
     show:
       title: தகவலை வாசிக்கவும்
       reply_button: பதிலளி
       unread_button: வாசிக்கப்படாததாக  குறியிடு
       destroy_button: நீக்கு
-    sent_message_summary:
-      destroy_button: நீக்கு
-    heading:
-      muted_messages: மௌனித்த தகவல்கள்
     unmute:
       notice: தகவல் வருமஞ்சலுக்கு நகர்த்தப்பட்டுள்ளது
     destroy:
       destroyed: தகவல் நீக்கப்பட்டது
+    mailboxes:
+      heading:
+        muted_messages: மௌனித்த தகவல்கள்
+      messages_table:
+        from: 'அனுப்புநர்:'
+        subject: பொருள்
+        date: நாள்
+        actions: செயல்கள்
+      message:
+        unread_button: வாசிக்கப்படாததாக என குறியிடு
+        read_button: வாசித்ததாக குறியிடு
+        destroy_button: நீக்கு
+        unmute_button: வருமஞ்சலுக்கு நகர்த்து
+    inboxes:
+      show:
+        title: உள்பெட்டி
+    muted_inboxes:
+      show:
+        title: மௌனித்த தகவல்கள்
+        messages:
+          one: '%{count} மௌனித்த தகவல்'
+          other: உமக்கு %{count} மௌனித்த தகவல்கள் உள்ளன
+    outboxes:
+      show:
+        title: அனுப்பியவை
+      message:
+        destroy_button: நீக்கு
   passwords:
     new:
       title: காணப்படாத கடவுச்சொல்
index f8fa1c33519e261d3d6ab0652a6a3f42cdbe2a30..547074422876d1f13656b3272715bd497df2f3ca 100644 (file)
@@ -1582,7 +1582,6 @@ te:
       success: మీ ఖాతాను ధ్రువీరించారు. నమోదైనందుకు ధన్యవాదాలు!
       already active: ఈ ఖాతాని ఇప్పటికే నిర్ధారించారు.
       unknown token: ఆ ధ్రువీకరణ కోడ్ మురిగిపోయింది. లేదా అసలు ఉనికిలోనే లేదు.
-      click_here: ఇక్కడ నొక్కండి
     confirm_resend:
       failure: వాడుకరి %{name} కనబడలేదు.
     confirm_email:
@@ -1600,27 +1599,6 @@ te:
         స్పాము ఫోల్డరు లోకి పంపిస్తుంది. అంచేత ఈ ఈ %{sender} ను వైట్‌లిస్టులో పెట్టండి.
         లేదంటే ధ్రువీకరణ అభ్యర్థనలకు మేమిచ్చే జవాబులు అందవు.
   messages:
-    inbox:
-      title: ఇన్‌బాక్సు
-      messages: మీకు %{new_messages}, %{old_messages} ఉన్నాయి
-      new_messages:
-        one: '%{count} కొత్త సందేశం'
-        other: '%{count} కొత్త సందేశాలు'
-      old_messages:
-        one: '%{count} పాత సందేశం'
-        other: '%{count} పాత సందేశాలు'
-      no_messages_yet_html: మీకింకా సందేశాలేమీ లేవు. %{people_mapping_nearby_link}
-        ఎవరినైనా ఎందుకు సంప్రదించకూడదూ?
-      people_mapping_nearby: సమీపంలో మ్యాపింగు చేస్తున్నవారు
-    messages_table:
-      from: నుండి
-      to: కు
-      subject: విషయం
-      date: తేదీ
-    message_summary:
-      unread_button: చదవనట్లుగా గుర్తుపెట్టు
-      read_button: చదివినట్లుగా గుర్తుపెట్టు
-      destroy_button: తొలగించు
     new:
       title: సందేశాన్ని పంపించు
       send_message_to_html: '%{name}కి ఒక సందేశాన్ని పంపండి'
@@ -1633,14 +1611,6 @@ te:
       title: అలాంటి సందేశమేమీ లేదు
       heading: అలాంటి సందేశమేమీ లేదు
       body: సారీ, ఆ ఐడీతో సందేశమేమీ లేదు.
-    outbox:
-      title: ఔట్‌బాక్సు
-      messages:
-        one: మీకు %{count} పంపిన సందేశం ఉంది
-        other: మీకు %{count} పంపిన సందేశాలు ఉన్నాయి
-      no_sent_messages_html: మీకింకా పంపిన సందేశాలు లేవు. %{people_mapping_nearby_link}
-        ఎవరినైనా ఎందుకు సంప్రదించకూడదూ?
-      people_mapping_nearby: సమీపంలో మ్యాపింగు చేస్తున్నవారు
     reply:
       wrong_user: మీరు `%{user}' గా లాగినై ఉన్నారు. కానీ మీ సందేశం, మీరు జవాబు ఇవ్వాలని
         చెప్పిన వాడుకరికి పంపలేదు. సరైన వాడుకరిగా లాగినై జవాబివ్వండి.
@@ -1652,16 +1622,48 @@ te:
       back: వెనుకకు
       wrong_user: మీరు `%{user}' గా లాగినై ఉన్నారు. కానీ మీరు చదవదలచిన సందేశం ఆ వాడుకరి
         పంపలేదు, ఆ వాడుకరికి రాలేదు. సరైన వాడుకరిగా లాగినై చదవండి.
-    sent_message_summary:
-      destroy_button: తొలగించు
-    heading:
-      my_inbox: నా ఇన్‌బాక్స్
-      my_outbox: నా ఔట్‌బాక్సు
     mark:
       as_read: సందేశాన్ని చదివినట్లుగా గుర్తుపెట్టాం
       as_unread: సందేశాన్ని చదవనట్లుగా గుర్తుపెట్టాం
     destroy:
       destroyed: సందేశాన్ని తొలగించాం
+    mailboxes:
+      heading:
+        my_inbox: నా ఇన్‌బాక్స్
+        my_outbox: నా ఔట్‌బాక్సు
+      messages_table:
+        from: నుండి
+        to: కు
+        subject: విషయం
+        date: తేదీ
+      message:
+        unread_button: చదవనట్లుగా గుర్తుపెట్టు
+        read_button: చదివినట్లుగా గుర్తుపెట్టు
+        destroy_button: తొలగించు
+    inboxes:
+      show:
+        title: ఇన్‌బాక్సు
+        messages: మీకు %{new_messages}, %{old_messages} ఉన్నాయి
+        new_messages:
+          one: '%{count} కొత్త సందేశం'
+          other: '%{count} కొత్త సందేశాలు'
+        old_messages:
+          one: '%{count} పాత సందేశం'
+          other: '%{count} పాత సందేశాలు'
+        no_messages_yet_html: మీకింకా సందేశాలేమీ లేవు. %{people_mapping_nearby_link}
+          ఎవరినైనా ఎందుకు సంప్రదించకూడదూ?
+        people_mapping_nearby: సమీపంలో మ్యాపింగు చేస్తున్నవారు
+    outboxes:
+      show:
+        title: ఔట్‌బాక్సు
+        messages:
+          one: మీకు %{count} పంపిన సందేశం ఉంది
+          other: మీకు %{count} పంపిన సందేశాలు ఉన్నాయి
+        no_sent_messages_html: మీకింకా పంపిన సందేశాలు లేవు. %{people_mapping_nearby_link}
+          ఎవరినైనా ఎందుకు సంప్రదించకూడదూ?
+        people_mapping_nearby: సమీపంలో మ్యాపింగు చేస్తున్నవారు
+      message:
+        destroy_button: తొలగించు
   passwords:
     new:
       title: సంకేతపదం పోయింది
@@ -2171,6 +2173,16 @@ te:
     go_public:
       flash success: ఇప్పుడు మీ మార్పుచేర్పులన్నీ బహిరంగం, మీరు ఇక నుండి దిద్దుబాట్లు
         చేయవచ్చు.
+    issued_blocks:
+      show:
+        title: '%{name} విధించిన నిరోధాలు'
+        heading_html: '%{name} విధించిన నిరోధాల జాబితా'
+        empty: '%{name} ఇంకా నిరోధాలేమీ విధించలేదు.'
+    received_blocks:
+      show:
+        title: '%{name} పై నిరోధాలు'
+        heading_html: '%{name}పై ఉన్న నిరోధాల జాబితా'
+        empty: '%{name} ను ఇంకా నిరోధించలేదు.'
     lists:
       show:
         title: వాడుకరులు
@@ -2255,14 +2267,6 @@ te:
         years:
           one: 1 సంవత్సరం
           other: '%{count} సంవత్సరాలు'
-    blocks_on:
-      title: '%{name} పై నిరోధాలు'
-      heading_html: '%{name}పై ఉన్న నిరోధాల జాబితా'
-      empty: '%{name} ను ఇంకా నిరోధించలేదు.'
-    blocks_by:
-      title: '%{name} విధించిన నిరోధాలు'
-      heading_html: '%{name} విధించిన నిరోధాల జాబితా'
-      empty: '%{name} ఇంకా నిరోధాలేమీ విధించలేదు.'
     show:
       title: '%{block_on} ను %{block_by} నిరోధించారు'
       heading_html: '%{block_on} ను %{block_by} నిరోధించారు'
index e463a24a0ec3ea43bb36b7012ab65823c1d1c781..293132f90dcdecb883f71d37e58245f58f904c4f 100644 (file)
@@ -1666,26 +1666,6 @@ th:
       failure: อีเมลนี้ถูกยืนยันกับคำขอนี้เรียบร้อย
       unknown_token: รหัสยืนยันหมดอายุหรือผิดพลาด
   messages:
-    inbox:
-      title: จดหมายรับ
-      messages: ท่านมี %{new_messages} และ %{old_messages}
-      new_messages:
-        one: ข้อความใหม่ %{count} ข้อความ
-        other: ข้อความใหม่ %{count} ข้อความ
-      old_messages:
-        one: ข้อความเก่า %{count} ข้อความ
-        other: ข้อความเก่า %{count} ข้อความ
-      no_messages_yet_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง?
-      people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง
-    messages_table:
-      from: จาก
-      to: ถึง
-      subject: เรื่อง
-      date: วันที่
-    message_summary:
-      unread_button: ทำเครื่องหมายว่ายังไม่ได้อ่าน
-      read_button: ทำเครื่องหมายว่าอ่านแล้ว
-      destroy_button: ลบ
     new:
       title: ส่งข้อความ
       send_message_to_html: ส่งข้อความใหม่หาผู้ใช้ %{name}
@@ -1697,13 +1677,6 @@ th:
       title: ไม่พบข้อความที่ระบุ
       heading: ไม่พบข้อความที่ระบุ
       body: ขออภัย ไม่พบข้อความที่กำกับด้วยรหัสดังกล่าว
-    outbox:
-      title: จดหมายออก
-      messages:
-        one: ท่านมีข้อความส่งแล้ว %{count} ฉบับ
-        other: ท่านมีข้อความส่งแล้ว %{count} ฉบับ
-      no_sent_messages_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง?
-      people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง
     reply:
       wrong_user: ท่านเข้าระบบโดยใช้ชื่อผู้ใช้ `%{user}' แต่ข้อความที่ท่านกำลังจะตอบกลับไม่ได้ส่งถึงผู้ใช้ดังกล่าว
         โปรดเข้าระบบใหม่โดยใช้ชื่อผู้ใช้นั้นเพื่อตอบกลับ
@@ -1715,16 +1688,46 @@ th:
       back: ย้อนกลับ
       wrong_user: ท่านเข้าระบบโดยใช้ชื่อผู้ใช้ `%{user}' แต่ข้อความที่ท่านกำลังจะตอบกลับไม่ได้ส่งโดยหรือส่งถึงผู้ใช้ดังกล่าว
         โปรดเข้าระบบใหม่โดยใช้ชื่อผู้ใช้นั้นเพื่อตอบกลับ
-    sent_message_summary:
-      destroy_button: ลบ
-    heading:
-      my_inbox: จดหมายรับส่วนตัว
-      my_outbox: กล่องจดหมายขาออกส่วนตัว
     mark:
       as_read: ข้อความถูกทำเครื่องหมายว่าอ่านแล้ว
       as_unread: ข้อความถูกทำเครื่องหมายว่ายังไม่ได้อ่าน
     destroy:
       destroyed: ข้อความถูกลบแล้ว
+    mailboxes:
+      heading:
+        my_inbox: จดหมายรับส่วนตัว
+        my_outbox: กล่องจดหมายขาออกส่วนตัว
+      messages_table:
+        from: จาก
+        to: ถึง
+        subject: เรื่อง
+        date: วันที่
+      message:
+        unread_button: ทำเครื่องหมายว่ายังไม่ได้อ่าน
+        read_button: ทำเครื่องหมายว่าอ่านแล้ว
+        destroy_button: ลบ
+    inboxes:
+      show:
+        title: จดหมายรับ
+        messages: ท่านมี %{new_messages} และ %{old_messages}
+        new_messages:
+          one: ข้อความใหม่ %{count} ข้อความ
+          other: ข้อความใหม่ %{count} ข้อความ
+        old_messages:
+          one: ข้อความเก่า %{count} ข้อความ
+          other: ข้อความเก่า %{count} ข้อความ
+        no_messages_yet_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง?
+        people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง
+    outboxes:
+      show:
+        title: จดหมายออก
+        messages:
+          one: ท่านมีข้อความส่งแล้ว %{count} ฉบับ
+          other: ท่านมีข้อความส่งแล้ว %{count} ฉบับ
+        no_sent_messages_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง?
+        people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง
+      message:
+        destroy_button: ลบ
   passwords:
     new:
       title: ตั้งรหัสผ่านใหม่
@@ -2156,6 +2159,15 @@ th:
       report: แจ้งปัญหาเกี่ยวกับผู้ใช้คนนี้
     go_public:
       flash success: การแก้ไขของท่านเป็นสาธารณะ ท่านสามารถแก้ไขได้
+    issued_blocks:
+      show:
+        heading_html: แสดงการสั่งระงับใช้โดย %{name}
+        empty: '%{name} ไม่เคยได้สั่งระงับผู้ใช้คนใดเลย'
+    received_blocks:
+      show:
+        title: การถูกระงับใช้งานของ %{name}
+        heading_html: รายการการถูกระงับของผู้ใช้ %{name}
+        empty: '%{name} ยังไม่เคยถูกระงับใช้งาน'
     lists:
       show:
         title: ผู้ใช้
@@ -2221,13 +2233,6 @@ th:
       time_past_html: สิ้นสุดไปเมื่อ %{time}
       block_duration:
         years: '%{count} ปี'
-    blocks_on:
-      title: การถูกระงับใช้งานของ %{name}
-      heading_html: รายการการถูกระงับของผู้ใช้ %{name}
-      empty: '%{name} ยังไม่เคยถูกระงับใช้งาน'
-    blocks_by:
-      heading_html: แสดงการสั่งระงับใช้โดย %{name}
-      empty: '%{name} ไม่เคยได้สั่งระงับผู้ใช้คนใดเลย'
     show:
       heading_html: '%{block_on} โดนระงับโดย %{block_by}'
       created: ระงับเมื่อ
index 7685d96ab329ca7cf1a2a7414a4ccd3bbd26db68..ba9ddcd214971fc71f47fa45fa6a07d338408c45 100644 (file)
@@ -1323,27 +1323,6 @@ tl:
       failure: Isang tirahan ng e-liham ang natiyak nang may ganitong kahalip.
       unknown_token: Tila lumipas o hindi umiiral ang kahalip na iyan.
   messages:
-    inbox:
-      title: Kahon ng pumapasok
-      messages: Mayroong kang %{new_messages} at %{old_messages}
-      new_messages:
-        one: '%{count} bagong mensahe'
-        other: '%{count} bagong mga mensahe'
-      old_messages:
-        one: '%{count} lumang mensahe'
-        other: '%{count} lumang mga mensahe'
-      no_messages_yet_html: Wala ka pang mga mensahe. Bakit hindi makipag-ugnayan
-        sa ilang mga %{people_mapping_nearby_link}?
-      people_mapping_nearby: mga taong kalapit na nagmamapa
-    messages_table:
-      from: Mula sa
-      to: Para kay
-      subject: Paksa
-      date: Petsa
-    message_summary:
-      unread_button: Tatakan bilang hindi pa nababasa
-      read_button: Tatakan bilang nabasa na
-      destroy_button: Burahin
     new:
       title: Magpadala ng mensahe
       send_message_to_html: Magpadala ng bagong mensahe sa %{name}
@@ -1356,14 +1335,6 @@ tl:
       title: Walang ganyang mensahe
       heading: Walang ganyang mensahe
       body: Paumanhin walang mensahe na may ganyang ID.
-    outbox:
-      title: Kahong-labasan
-      messages:
-        one: Mayroon kang %{count} ipinadalang mensahe
-        other: Mayroon kang %{count} ipinadalang mga mensahe
-      no_sent_messages_html: Wala ka pang ipinadadalang mga mensahe. Bakit hindi makipag-ugnayan
-        sa ilang mga %{people_mapping_nearby_link}?
-      people_mapping_nearby: mga taong kalapit na nagmamapa
     reply:
       wrong_user: Lumagda ka bilang si `%{user}' ngunit ang mensaheng hiniling mong
         tugunin ay hindi naipadala sa tagagamit na iyan. Mangyaring lumagda bilang
@@ -1377,16 +1348,48 @@ tl:
       wrong_user: Lumagda ka bilang si `%{user}' ngunit ang mensaheng hiniling mong
         basahin ay hindi ipinadala ni o papunta sa tagagamit na iyan. Mangyaring lumagda
         bilang ang tamang tagagamit upang mabasa ito.
-    sent_message_summary:
-      destroy_button: Burahin
-    heading:
-      my_inbox: Kahong-tanggapan Ko
-      my_outbox: Kahong-labasan Ko
     mark:
       as_read: Minarkahan ang mensahe bilang nabasa na
       as_unread: Minarkahan ang mensahe bilang hindi pa nababasa
     destroy:
       destroyed: Binura ang mensahe
+    mailboxes:
+      heading:
+        my_inbox: Kahong-tanggapan Ko
+        my_outbox: Kahong-labasan Ko
+      messages_table:
+        from: Mula sa
+        to: Para kay
+        subject: Paksa
+        date: Petsa
+      message:
+        unread_button: Tatakan bilang hindi pa nababasa
+        read_button: Tatakan bilang nabasa na
+        destroy_button: Burahin
+    inboxes:
+      show:
+        title: Kahon ng pumapasok
+        messages: Mayroong kang %{new_messages} at %{old_messages}
+        new_messages:
+          one: '%{count} bagong mensahe'
+          other: '%{count} bagong mga mensahe'
+        old_messages:
+          one: '%{count} lumang mensahe'
+          other: '%{count} lumang mga mensahe'
+        no_messages_yet_html: Wala ka pang mga mensahe. Bakit hindi makipag-ugnayan
+          sa ilang mga %{people_mapping_nearby_link}?
+        people_mapping_nearby: mga taong kalapit na nagmamapa
+    outboxes:
+      show:
+        title: Kahong-labasan
+        messages:
+          one: Mayroon kang %{count} ipinadalang mensahe
+          other: Mayroon kang %{count} ipinadalang mga mensahe
+        no_sent_messages_html: Wala ka pang ipinadadalang mga mensahe. Bakit hindi
+          makipag-ugnayan sa ilang mga %{people_mapping_nearby_link}?
+        people_mapping_nearby: mga taong kalapit na nagmamapa
+      message:
+        destroy_button: Burahin
   passwords:
     new:
       title: Naiwalang password
@@ -1884,6 +1887,16 @@ tl:
     go_public:
       flash success: Pangmadla na ngayon ang lahat ng mga binago mo, at pinapayagan
         ka nang mamatnugot.
+    issued_blocks:
+      show:
+        title: Mga paghadlang ni %{name}
+        heading_html: Tala ng mga paghadlang ni %{name}
+        empty: Hindi pa gumagawa ng anumang mga paghadlang si %{name}.
+    received_blocks:
+      show:
+        title: Mga paghadlang kay %{name}
+        heading_html: Tala ng mga paghadlang kay %{name}
+        empty: Hindi pa hinahadlangan si %{name}.
     lists:
       show:
         title: Mga tagagamit
@@ -1961,14 +1974,6 @@ tl:
         years:
           one: 1 taon
           other: '%{count} mga taon'
-    blocks_on:
-      title: Mga paghadlang kay %{name}
-      heading_html: Tala ng mga paghadlang kay %{name}
-      empty: Hindi pa hinahadlangan si %{name}.
-    blocks_by:
-      title: Mga paghadlang ni %{name}
-      heading_html: Tala ng mga paghadlang ni %{name}
-      empty: Hindi pa gumagawa ng anumang mga paghadlang si %{name}.
     show:
       title: '%{block_on} hinadlangan ni %{block_by}'
       heading_html: '%{block_on} hinadlangan ni %{block_by}'
index 847b71efe513b60f2b64f1719fb6c96bc2924a69..c8746f63ba610f6c9727093a69378db4f904e3c7 100644 (file)
@@ -1811,8 +1811,6 @@ tr:
       success: Hesabınızı doğruladınız, kaydolduğunuz için teşekkürler!
       already active: Bu hesap zaten doğrulandı.
       unknown token: Onay kodu geçerliliğini yitirmiş veya mevcut değil.
-      resend_html: Onay e-postasını yeniden göndermemize gerekiyorsa %{reconfirm_link}.
-      click_here: buraya tıklayın
     confirm_resend:
       failure: '%{name} kullanıcısı bulunamadı.'
     confirm_email:
@@ -1830,29 +1828,6 @@ tr:
         herhangi bir onay isteğine yanıt veremediğimiz için lütfen %{sender} beyaz
         listeye eklediğinden emin ol.
   messages:
-    inbox:
-      title: Gelen kutusu
-      messages: '%{new_messages} ve %{old_messages}'
-      new_messages:
-        one: '%{count} yeni mesaj'
-        other: '%{count} yeni mesaj'
-      old_messages:
-        one: '%{count} eski mesaj'
-        other: '%{count} eski mesaj'
-      no_messages_yet_html: 'Henüz mesajınız yok. Yakındaki insanlarla iletişime geçmeye
-        ne dersiniz? Deneyin: %{people_mapping_nearby_link}'
-      people_mapping_nearby: yakın çevredeki haritacılar
-    messages_table:
-      from: Gönderen
-      to: Alıcı
-      subject: Konu
-      date: Tarih
-      actions: Eylemler
-    message_summary:
-      unread_button: Okunmadı olarak işaretle
-      read_button: Okundu olarak işaretle
-      destroy_button: Sil
-      unmute_button: Gelen Kutusuna Taşı
     new:
       title: Mesaj gönder
       send_message_to_html: '%{name} kullanıcısına yeni bir mesaj gönder'
@@ -1865,19 +1840,6 @@ tr:
       title: Böyle bir mesaj yok
       heading: Böyle bir mesaj yok
       body: Üzgünüz, bu kimlik ile bir mesaj yok.
-    outbox:
-      title: Giden kutusu
-      messages:
-        one: '%{count} mesaj gönderdiniz'
-        other: ' %{count} mesaj gönderdiniz'
-      no_sent_messages_html: 'Henüz kimseye mesaj göndermediniz. Yakındaki insanlarla
-        iletişime geçmeye ne dersiniz? Deneyin: %{people_mapping_nearby_link}'
-      people_mapping_nearby: yakın çevredeki haritacılar
-    muted:
-      title: Sessize Alınan Mesajlar
-      messages:
-        one: '%{count} sessize alınan mesaj'
-        other: '%{count} sessize alınan mesajınız var'
     reply:
       wrong_user: '`%{user}'' olarak oturum açtınız fakat yanıtlamasını istediğiniz
         mesaj kullanıcıya gönderilmedi. Yanıtlamak için lütfen doğru kullanıcı olarak
@@ -1891,12 +1853,6 @@ tr:
       wrong_user: '`%{user}'' olarak oturum açtınız fakat okuman istenilen mesaj,
         o kullanıcı tarafından gönderilmedi. Lütfen okumak için doğru kullanıcı olarak
         giriş yapın.'
-    sent_message_summary:
-      destroy_button: Sil
-    heading:
-      my_inbox: Gelen kutusu
-      my_outbox: Giden Kutum
-      muted_messages: Sessize alınan mesajlar
     mark:
       as_read: Mesaj okundu olarak işaretlendi
       as_unread: Mesaj okunmadı olarak işaretlendi
@@ -1905,6 +1861,52 @@ tr:
       error: Mesaj, gelen kutusuna taşınamadı.
     destroy:
       destroyed: Mesaj silindi
+    mailboxes:
+      heading:
+        my_inbox: Gelen kutusu
+        my_outbox: Giden Kutum
+        muted_messages: Sessize alınan mesajlar
+      messages_table:
+        from: Gönderen
+        to: Alıcı
+        subject: Konu
+        date: Tarih
+        actions: Eylemler
+      message:
+        unread_button: Okunmadı olarak işaretle
+        read_button: Okundu olarak işaretle
+        destroy_button: Sil
+        unmute_button: Gelen Kutusuna Taşı
+    inboxes:
+      show:
+        title: Gelen kutusu
+        messages: '%{new_messages} ve %{old_messages}'
+        new_messages:
+          one: '%{count} yeni mesaj'
+          other: '%{count} yeni mesaj'
+        old_messages:
+          one: '%{count} eski mesaj'
+          other: '%{count} eski mesaj'
+        no_messages_yet_html: 'Henüz mesajınız yok. Yakındaki insanlarla iletişime
+          geçmeye ne dersiniz? Deneyin: %{people_mapping_nearby_link}'
+        people_mapping_nearby: yakın çevredeki haritacılar
+    muted_inboxes:
+      show:
+        title: Sessize Alınan Mesajlar
+        messages:
+          one: '%{count} sessize alınan mesaj'
+          other: '%{count} sessize alınan mesajınız var'
+    outboxes:
+      show:
+        title: Giden kutusu
+        messages:
+          one: '%{count} mesaj gönderdiniz'
+          other: ' %{count} mesaj gönderdiniz'
+        no_sent_messages_html: 'Henüz kimseye mesaj göndermediniz. Yakındaki insanlarla
+          iletişime geçmeye ne dersiniz? Deneyin: %{people_mapping_nearby_link}'
+        people_mapping_nearby: yakın çevredeki haritacılar
+      message:
+        destroy_button: Sil
   passwords:
     new:
       title: Kayıp parola
@@ -2888,6 +2890,27 @@ tr:
     go_public:
       flash success: Tüm düzenlemeleriniz şimdi herkese açık ve siz de düzenleme yetkisine
         sahipsiniz.
+    issued_blocks:
+      show:
+        title: '%{name} tarafından engellenenler'
+        heading_html: '%{name} tarafından engellenenlerin listesi'
+        empty: '%{name} şimdiye kadar hiç bloklamamış.'
+    received_blocks:
+      show:
+        title: '%{name} kişisinin engelleri'
+        heading_html: '%{name} hakkında engelleme kayıtları'
+        empty: '%{name} henüz engellenmiş değil.'
+      edit:
+        title: '%{block_on} tarihindeki tüm engellemeler iptal ediliyor'
+        heading_html: '%{block_on} tarihindeki tüm engellemeler iptal ediliyor'
+        empty: '%{name} kullanıcısının herhangi aktif bir engeli yok.'
+        confirm: '%{active_blocks} iptal etmek istediğinizden emin misiniz?'
+        active_blocks:
+          one: '%{count} aktif engel'
+          other: '%{count} aktif engel'
+        revoke: İptal!
+      destroy:
+        flash: Tüm aktif engellemeler iptal edildi.
     lists:
       show:
         title: Kullanıcılar
@@ -2970,16 +2993,6 @@ tr:
       title: Kullanıcı engelleri
       heading: Kullanıcı engelleri listesi
       empty: Henüz engelleme yapılmamış.
-    revoke_all:
-      title: '%{block_on} tarihindeki tüm engellemeler iptal ediliyor'
-      heading_html: '%{block_on} tarihindeki tüm engellemeler iptal ediliyor'
-      empty: '%{name} kullanıcısının herhangi aktif bir engeli yok.'
-      confirm: '%{active_blocks} iptal etmek istediğinizden emin misiniz?'
-      active_blocks:
-        one: '%{count} aktif engel'
-        other: '%{count} aktif engel'
-      revoke: İptal!
-      flash: Tüm aktif engellemeler iptal edildi.
     helper:
       time_future_html: '%{time} içinde bitecek.'
       until_login: Kullanıcı giriş yapana kadar aktif.
@@ -3002,14 +3015,6 @@ tr:
         years:
           one: '%{count} yıl'
           other: '%{count} yıl'
-    blocks_on:
-      title: '%{name} kişisinin engelleri'
-      heading_html: '%{name} hakkında engelleme kayıtları'
-      empty: '%{name} henüz engellenmiş değil.'
-    blocks_by:
-      title: '%{name} tarafından engellenenler'
-      heading_html: '%{name} tarafından engellenenlerin listesi'
-      empty: '%{name} şimdiye kadar hiç bloklamamış.'
     show:
       title: '%{block_on} kişisi %{block_by} tarafından engellendi'
       heading_html: '%{block_on} kişisi %{block_by} tarafından engellendi'
@@ -3142,8 +3147,6 @@ tr:
       center_marker: İşaretleyicide merkez harita
       paste_html: Web sitesine yerleştirmek için HTML'yi yapıştırın
       view_larger_map: Daha Büyük Haritayı Göster
-      only_standard_layer: Yalnızca Standart, Döngü Haritası ve Taşıma katmanları
-        görüntü olarak dışa aktarılabilir
     embed:
       report_problem: Bir sorunu şikayet et
     key:
index e09ae7798ce5b97af7cd43e849b16eb9dfb3ab29..728db4fe208fcec84f384aa1b864de94372a949a 100644 (file)
@@ -799,20 +799,22 @@ tt:
     confirm_email:
       button: Раслау
   messages:
-    inbox:
-      messages: Сезнең %{new_messages} һәм %{old_messages} бар
-      new_messages:
-        other: '%{count} яңа хәбәрегез'
-      old_messages:
-        other: '%{count} иске хәбәрегез'
-    messages_table:
-      from: 'Кемнән:'
-      subject: Тема
-      date: Вакыт
-    message_summary:
-      destroy_button: Бетерү
     new:
       title: Хәбәр җибәрү
+    mailboxes:
+      messages_table:
+        from: 'Кемнән:'
+        subject: Тема
+        date: Вакыт
+      message:
+        destroy_button: Бетерү
+    inboxes:
+      show:
+        messages: Сезнең %{new_messages} һәм %{old_messages} бар
+        new_messages:
+          other: '%{count} яңа хәбәрегез'
+        old_messages:
+          other: '%{count} иске хәбәрегез'
   passwords:
     new:
       email address: 'Электрон почта адресы:'
index 5254925dfc9ae8197aa724d482deeca923f74532..362adfa4bf7a8aaa2ddb4f4fcb209a9088989413 100644 (file)
@@ -1877,8 +1877,6 @@ uk:
       success: Ваш обліковий запис підтверджено, дякуємо за реєстрацію!
       already active: Цей обліковий запис вже підтверджений.
       unknown token: Термін дії коду підтвердження вже минув або його не існує.
-      resend_html: За потреби отримати ще раз листа з підтвердженням %{reconfirm_link}.
-      click_here: натисніть тут
     confirm_resend:
       failure: Учасника %{name} не знайдено.
     confirm_email:
@@ -1896,33 +1894,6 @@ uk:
         зворотні запити, переконайтесь що ви додали %{sender} до переліку уповноважених
         дописувачів, бо ми не в змозі відповідати на такі запити.
   messages:
-    inbox:
-      title: Вхідні
-      messages: У вас %{new_messages} і %{old_messages}
-      new_messages:
-        one: '%{count} нове повідомлення'
-        few: '%{count} нових повідомлення'
-        many: '%{count} нових повідомлень'
-        other: ""
-      old_messages:
-        one: '%{count} старе повідомлення'
-        few: '%{count} старих повідомлення'
-        many: '%{count} старих повідомлень'
-        other: ""
-      no_messages_yet_html: У вас ще немає повідомлень. Чому б не поспілкуватись з
-        кимось із %{people_mapping_nearby_link}?
-      people_mapping_nearby: мапери поблизу вас
-    messages_table:
-      from: Від
-      to: Кому
-      subject: Тема
-      date: Дата
-      actions: Дії
-    message_summary:
-      unread_button: Позначити як непрочитане
-      read_button: Позначити як прочитане
-      destroy_button: Вилучити
-      unmute_button: Перемістити до "Вхідних".
     new:
       title: Надіслати повідомлення
       send_message_to_html: Надіслати нове повідомлення до %{name}
@@ -1935,23 +1906,6 @@ uk:
       title: Повідомлення відсутнє
       heading: Повідомлення відсутнє
       body: Вибачте, але повідомлення з цим ідентифікатором не існує.
-    outbox:
-      title: Вихідні
-      messages:
-        one: У вас %{count} надіслане повідомлення
-        few: У вас %{count} надісланих повідомлення
-        many: У вас %{count} надісланих повідомлень
-        other: ""
-      no_sent_messages_html: У вас немає надісланих повідомлень. Чому б не поспілкуватись
-        з кимось із %{people_mapping_nearby_link}?
-      people_mapping_nearby: маперів поблизу вас
-    muted:
-      title: Стишені повідомлення
-      messages:
-        one: Ви маєте %{count} стишене повідомлення
-        few: Ви маєте %{count} стишені повідомлення
-        many: Ви маєте %{count} стишених повідомлень
-        other: ""
     reply:
       wrong_user: Ви увійшли як „%{user}“, але повідомлення, на яке вас попросили
         відповісти, було надіслане не вам. Будь ласка, увійдіть до відповідного облікового
@@ -1965,12 +1919,6 @@ uk:
       wrong_user: Ви увійшли як „%{user}“, але повідомлення, яке вас попросили прочитати,
         не було надіслане вами, чи призначено для вас. Будь ласка, увійдіть до відповідного
         облікового запису, щоб прочитати його.
-    sent_message_summary:
-      destroy_button: Вилучити
-    heading:
-      my_inbox: Вхідні
-      my_outbox: Вихідні
-      muted_messages: Стишені повідомлення
     mark:
       as_read: Повідомлення позначене як прочитане
       as_unread: Повідомлення позначене як непрочитане
@@ -1979,6 +1927,60 @@ uk:
       error: Не вдалося перемістити повідомлення до "Вхідних".
     destroy:
       destroyed: Повідомлення вилучено
+    mailboxes:
+      heading:
+        my_inbox: Вхідні
+        my_outbox: Вихідні
+        muted_messages: Стишені повідомлення
+      messages_table:
+        from: Від
+        to: Кому
+        subject: Тема
+        date: Дата
+        actions: Дії
+      message:
+        unread_button: Позначити як непрочитане
+        read_button: Позначити як прочитане
+        destroy_button: Вилучити
+        unmute_button: Перемістити до "Вхідних".
+    inboxes:
+      show:
+        title: Вхідні
+        messages: У вас %{new_messages} і %{old_messages}
+        new_messages:
+          one: '%{count} нове повідомлення'
+          few: '%{count} нових повідомлення'
+          many: '%{count} нових повідомлень'
+          other: ""
+        old_messages:
+          one: '%{count} старе повідомлення'
+          few: '%{count} старих повідомлення'
+          many: '%{count} старих повідомлень'
+          other: ""
+        no_messages_yet_html: У вас ще немає повідомлень. Чому б не поспілкуватись
+          з кимось із %{people_mapping_nearby_link}?
+        people_mapping_nearby: мапери поблизу вас
+    muted_inboxes:
+      show:
+        title: Стишені повідомлення
+        messages:
+          one: Ви маєте %{count} стишене повідомлення
+          few: Ви маєте %{count} стишені повідомлення
+          many: Ви маєте %{count} стишених повідомлень
+          other: ""
+    outboxes:
+      show:
+        title: Вихідні
+        messages:
+          one: У вас %{count} надіслане повідомлення
+          few: У вас %{count} надісланих повідомлення
+          many: У вас %{count} надісланих повідомлень
+          other: ""
+        no_sent_messages_html: У вас немає надісланих повідомлень. Чому б не поспілкуватись
+          з кимось із %{people_mapping_nearby_link}?
+        people_mapping_nearby: маперів поблизу вас
+      message:
+        destroy_button: Вилучити
   passwords:
     new:
       title: Відновлення пароля
@@ -2963,6 +2965,29 @@ uk:
     go_public:
       flash success: Усі Ваші редагування тепер є загальнодоступними, і Ви тепер можете
         редагувати.
+    issued_blocks:
+      show:
+        title: Блокування, що їх наклав %{name}
+        heading_html: Перелік блокувань, які наклав %{name}
+        empty: '%{name} не зробив ще жодного блокування.'
+    received_blocks:
+      show:
+        title: Блокування для %{name}
+        heading_html: Перелік блокувань учасника %{name}
+        empty: '%{name} жодного разу не був заблокованим.'
+      edit:
+        title: Зняти блокування з %{block_on}
+        heading_html: Зняти блокування з %{block_on}
+        empty: '%{name} не має активних блоків.'
+        confirm: Ви впевнені, що бажаєте відкликати %{active_blocks}?
+        active_blocks:
+          one: '%{count} активне блокування'
+          few: '%{count} активні блокування'
+          many: '%{count} активних блокувань'
+          other: ""
+        revoke: Відкликати!
+      destroy:
+        flash: Усі активні блокування скасовано.
     lists:
       show:
         title: Учасники
@@ -3049,18 +3074,6 @@ uk:
       title: Блокування учасника
       heading: Перелік запроваджених блокувань
       empty: Ще не накладено жодного блокування.
-    revoke_all:
-      title: Зняти блокування з %{block_on}
-      heading_html: Зняти блокування з %{block_on}
-      empty: '%{name} не має активних блоків.'
-      confirm: Ви впевнені, що бажаєте відкликати %{active_blocks}?
-      active_blocks:
-        one: '%{count} активне блокування'
-        few: '%{count} активні блокування'
-        many: '%{count} активних блокувань'
-        other: ""
-      revoke: Відкликати!
-      flash: Усі активні блокування скасовано.
     helper:
       time_future_html: До закінчення %{time}.
       until_login: Активне доти, доки учасник не здійснить вхід.
@@ -3093,14 +3106,6 @@ uk:
           few: '%{count} роки'
           many: '%{count} років'
           other: ""
-    blocks_on:
-      title: Блокування для %{name}
-      heading_html: Перелік блокувань учасника %{name}
-      empty: '%{name} жодного разу не був заблокованим.'
-    blocks_by:
-      title: Блокування, що їх наклав %{name}
-      heading_html: Перелік блокувань, які наклав %{name}
-      empty: '%{name} не зробив ще жодного блокування.'
     show:
       title: '%{block_on} був (була) заблокований(а) %{block_by}'
       heading_html: '%{block_on} був (була) заблокований(а) %{block_by}'
@@ -3241,8 +3246,6 @@ uk:
       center_marker: Центрувати мапу на маркері
       paste_html: HTML-код для вбудування у сайт
       view_larger_map: Переглянути більшу мапу
-      only_standard_layer: Тільки Стандартний шар, Веломапа та Мапа транспорту можуть
-        бути експортований у вигляді зображення
     embed:
       report_problem: Повідомити про проблему
     key:
index 0fe47fd7947a4d94f2de4f9b7c2435accf31aba2..87a81327e2400d809751aeee32dc828f941cbc26 100644 (file)
@@ -1693,8 +1693,6 @@ vi:
       success: Đã xác nhận tài khoản của bạn. Cám ơn bạn đã mở tài khoản!
       already active: Tài khoản này đã được xác nhận rồi.
       unknown token: Dấu hiệu xác nhận này đã hết hạn hoặc không tồn tại.
-      resend_html: Nếu bạn cần chúng tôi gửi lại thư điện tử xác nhận, %{reconfirm_link}.
-      click_here: nhấn chuột tại đây
     confirm_resend:
       failure: Không tìm thấy người dùng %{name}.
     confirm_email:
@@ -1712,24 +1710,6 @@ vi:
         cầu xác nhận, hãy chắc chắn thêm %{sender} vào danh sách trắng, vì chúng tôi
         không thể trả lời các yêu cầu xác nhận.
   messages:
-    inbox:
-      title: Hộp thư
-      messages: Bạn có %{new_messages} và %{old_messages}
-      new_messages: '%{count} thư mới'
-      old_messages: '%{count} thư cũ'
-      no_messages_yet_html: Bạn chưa nhận thư nào. Hãy thử liên lạc với %{people_mapping_nearby_link}?
-      people_mapping_nearby: những người ở gần
-    messages_table:
-      from: Từ
-      to: Tới
-      subject: Tiêu đề
-      date: Ngày
-      actions: Tác vụ
-    message_summary:
-      unread_button: Đánh dấu là chưa đọc
-      read_button: Đánh dấu là đã đọc
-      destroy_button: Xóa
-      unmute_button: Chuyển vào Hộp thư đến
     new:
       title: Gửi thư
       send_message_to_html: Gửi thư mới cho %{name}
@@ -1742,16 +1722,6 @@ vi:
       title: Thư không tồn tại
       heading: Thư không tồn tại
       body: Rất tiếc, không có thư nào với ID đó.
-    outbox:
-      title: Hộp thư đã gửi
-      messages: Bạn có %{count} thư đã gửi
-      no_sent_messages_html: Bạn chưa gửi thư cho người nào. Hãy thử liên lạc với
-        %{people_mapping_nearby_link}?
-      people_mapping_nearby: những người ở gần
-    muted:
-      title: Thư bị Tắt tiếng
-      messages:
-        other: Bạn có %{count} thư bị tắt tiếng
     reply:
       wrong_user: Bạn đã đăng nhập dùng tài khoản “%{user}” nhưng vừa yêu cầu trả
         lời một thư không được gửi đến bạn. Xin hãy đăng nhập với nhận diện chính
@@ -1765,12 +1735,6 @@ vi:
       wrong_user: Bạn đã đăng nhập dùng tài khoản “%{user}” nhưng vừa yêu cầu đọc
         một thư không được gửi từ hay đến bạn. Xin hãy đăng nhập với nhận diện chính
         xác để đọc nó.
-    sent_message_summary:
-      destroy_button: Xóa
-    heading:
-      my_inbox: Hộp thư đến
-      my_outbox: Hộp thư gửi
-      muted_messages: Thư bị Tắt tiếng
     mark:
       as_read: Thư đã đọc
       as_unread: Thư chưa đọc
@@ -1779,6 +1743,44 @@ vi:
       error: Không thể chuyển thư vào Hộp thư đến.
     destroy:
       destroyed: Đã xóa thư
+    mailboxes:
+      heading:
+        my_inbox: Hộp thư đến
+        my_outbox: Hộp thư gửi
+        muted_messages: Thư bị Tắt tiếng
+      messages_table:
+        from: Từ
+        to: Tới
+        subject: Tiêu đề
+        date: Ngày
+        actions: Tác vụ
+      message:
+        unread_button: Đánh dấu là chưa đọc
+        read_button: Đánh dấu là đã đọc
+        destroy_button: Xóa
+        unmute_button: Chuyển vào Hộp thư đến
+    inboxes:
+      show:
+        title: Hộp thư
+        messages: Bạn có %{new_messages} và %{old_messages}
+        new_messages: '%{count} thư mới'
+        old_messages: '%{count} thư cũ'
+        no_messages_yet_html: Bạn chưa nhận thư nào. Hãy thử liên lạc với %{people_mapping_nearby_link}?
+        people_mapping_nearby: những người ở gần
+    muted_inboxes:
+      show:
+        title: Thư bị Tắt tiếng
+        messages:
+          other: Bạn có %{count} thư bị tắt tiếng
+    outboxes:
+      show:
+        title: Hộp thư đã gửi
+        messages: Bạn có %{count} thư đã gửi
+        no_sent_messages_html: Bạn chưa gửi thư cho người nào. Hãy thử liên lạc với
+          %{people_mapping_nearby_link}?
+        people_mapping_nearby: những người ở gần
+      message:
+        destroy_button: Xóa
   passwords:
     new:
       title: Quên mất mật khẩu
@@ -2704,6 +2706,26 @@ vi:
     go_public:
       flash success: Tất cả các sửa đổi của bạn được phát hành công khai, và bạn mới
         được phép sửa đổi.
+    issued_blocks:
+      show:
+        title: Các tác vụ cấm bởi %{name}
+        heading_html: Danh sách tác vụ cấm bởi %{name}
+        empty: '%{name} chưa cấm ai.'
+    received_blocks:
+      show:
+        title: Các tác vụ cấm %{name}
+        heading_html: Danh sách tác vụ cấm %{name}
+        empty: '%{name} chưa bị cấm.'
+      edit:
+        title: Bỏ cấm tất cả vào %{block_on}
+        heading_html: Bỏ cấm tất cả vào %{block_on}
+        empty: '%{name} hiện không được cấm.'
+        confirm: Bạn có chắc chắn muốn bỏ %{active_blocks}?
+        active_blocks:
+          other: '%{count} tác vụ cấm hiện hành'
+        revoke: Bỏ cấm!
+      destroy:
+        flash: Đã bỏ tất cả các tác vụ cấm hiện hành.
     lists:
       show:
         title: Người dùng
@@ -2780,15 +2802,6 @@ vi:
       title: Người dùng bị cấm
       heading: Danh sách người dùng đang bị cấm
       empty: Chưa ai bị cấm.
-    revoke_all:
-      title: Bỏ cấm tất cả vào %{block_on}
-      heading_html: Bỏ cấm tất cả vào %{block_on}
-      empty: '%{name} hiện không được cấm.'
-      confirm: Bạn có chắc chắn muốn bỏ %{active_blocks}?
-      active_blocks:
-        other: '%{count} tác vụ cấm hiện hành'
-      revoke: Bỏ cấm!
-      flash: Đã bỏ tất cả các tác vụ cấm hiện hành.
     helper:
       time_future_html: Hết hạn %{time}.
       until_login: Có hiệu lực cho đến khi người dùng đăng nhập.
@@ -2806,14 +2819,6 @@ vi:
           other: '%{count} tháng'
         years:
           other: '%{count} năm'
-    blocks_on:
-      title: Các tác vụ cấm %{name}
-      heading_html: Danh sách tác vụ cấm %{name}
-      empty: '%{name} chưa bị cấm.'
-    blocks_by:
-      title: Các tác vụ cấm bởi %{name}
-      heading_html: Danh sách tác vụ cấm bởi %{name}
-      empty: '%{name} chưa cấm ai.'
     show:
       title: '%{block_on} bị cấm bởi %{block_by}'
       heading_html: '%{block_on} bị cấm bởi %{block_by}'
@@ -2954,8 +2959,6 @@ vi:
       center_marker: Chuyển ghim vào giữa bản đồ
       paste_html: Dán HTML để nhúng vào trang Web
       view_larger_map: Xem Bản đồ Rộng hơn
-      only_standard_layer: Chỉ có thể xuất các lớp Chuẩn, Bản đồ Xe đạp, và Bản đồ
-        Giao thông ra hình ảnh
     embed:
       report_problem: Báo vấn đề
     key:
index 1780623a841b1beefc34b8cc46c5e87f44c7b9d9..2922fda34f4595fa4a1a3f791fcf5b363cc89050 100644 (file)
@@ -110,12 +110,14 @@ yi:
     confirm:
       heading: קאנטראלירט אײַער ע־פאסט!
   messages:
-    message_summary:
-      destroy_button: אויסמעקן
     show:
       back: צוריק
-    sent_message_summary:
-      destroy_button: אויסמעקן
+    mailboxes:
+      message:
+        destroy_button: אויסמעקן
+    outboxes:
+      message:
+        destroy_button: אויסמעקן
   preferences:
     edit:
       cancel: אַנולירן
index 4619ac84fffdb66d617d59ea243b8854a943784a..26d040ad5b593b448f8774346d72e4dc0873d9a0 100644 (file)
@@ -1759,8 +1759,6 @@ zh-CN:
       success: 已确认您的账户,感谢您的注册!
       already active: 该账户已经确认。
       unknown token: 确认码已经过期或不存在。
-      resend_html: 如果您需要我们重新发送确认邮件,%{reconfirm_link}。
-      click_here: 点击此处
     confirm_resend:
       failure: 用户 %{name} 未找到。
     confirm_email:
@@ -1774,24 +1772,6 @@ zh-CN:
       confirmation_sent: 我们已经向%{email}发出一条新的确认通知,一旦您确认您的账户,就能开始绘图。
       whitelist: 如果您用于发送确认请求的邮箱具有反垃圾邮件系统,请确保将%{sender}加入白名单,因为我们无法恢复任何确认请求。
   messages:
-    inbox:
-      title: 收件箱
-      messages: 您有 %{new_messages}和 %{old_messages}
-      new_messages: '%{count} 条新消息'
-      old_messages: '%{count} 条旧消息'
-      no_messages_yet_html: 您还没有消息,何不联系一些%{people_mapping_nearby_link}?
-      people_mapping_nearby: 在附近绘制地图的人
-    messages_table:
-      from: 发件人
-      to: 收件人
-      subject: 标题
-      date: 日期
-      actions: 操作
-    message_summary:
-      unread_button: 标记为未读
-      read_button: 标记为已读
-      destroy_button: 删除
-      unmute_button: 移至收件箱
     new:
       title: 发消息
       send_message_to_html: 发送新信息给%{name}
@@ -1803,18 +1783,6 @@ zh-CN:
       title: 无此消息
       heading: 没有此消息
       body: 对不起,没有具有该 id 的消息。
-    outbox:
-      title: 发件箱
-      messages:
-        one: 您有 %{count} 条已发送信息
-        other: 您有 %{count} 条已发送信息
-      no_sent_messages_html: 您尚未发送信息。何不联系一些%{people_mapping_nearby_link}?
-      people_mapping_nearby: 在附近绘制地图的人
-    muted:
-      title: 已忽视消息
-      messages:
-        one: 1 条忽视消息
-        other: 您有 %{count} 条忽视消息
     reply:
       wrong_user: 您已经以 '%{user}' 的身份登录,但是您想要回复的消息并非寄给这个用户。请以正确的用户身份登录以回复这个消息。
     show:
@@ -1824,12 +1792,6 @@ zh-CN:
       destroy_button: 删除
       back: 返回
       wrong_user: 您已经以 '%{user}' 的身份登录,但是您想要阅读的消息并非寄给这个用户。请以正确的用户身份登录以阅读这个消息。
-    sent_message_summary:
-      destroy_button: 删除
-    heading:
-      my_inbox: 我的收件箱
-      my_outbox: 我的发件箱
-      muted_messages: 已忽视消息
     mark:
       as_read: 标记消息为已读
       as_unread: 标记消息为未读
@@ -1838,6 +1800,46 @@ zh-CN:
       error: 无法将消息移至收件箱。
     destroy:
       destroyed: 消息已删除
+    mailboxes:
+      heading:
+        my_inbox: 我的收件箱
+        my_outbox: 我的发件箱
+        muted_messages: 已忽视消息
+      messages_table:
+        from: 发件人
+        to: 收件人
+        subject: 标题
+        date: 日期
+        actions: 操作
+      message:
+        unread_button: 标记为未读
+        read_button: 标记为已读
+        destroy_button: 删除
+        unmute_button: 移至收件箱
+    inboxes:
+      show:
+        title: 收件箱
+        messages: 您有 %{new_messages}和 %{old_messages}
+        new_messages: '%{count} 条新消息'
+        old_messages: '%{count} 条旧消息'
+        no_messages_yet_html: 您还没有消息,何不联系一些%{people_mapping_nearby_link}?
+        people_mapping_nearby: 在附近绘制地图的人
+    muted_inboxes:
+      show:
+        title: 已忽视消息
+        messages:
+          one: 1 条忽视消息
+          other: 您有 %{count} 条忽视消息
+    outboxes:
+      show:
+        title: 发件箱
+        messages:
+          one: 您有 %{count} 条已发送信息
+          other: 您有 %{count} 条已发送信息
+        no_sent_messages_html: 您尚未发送信息。何不联系一些%{people_mapping_nearby_link}?
+        people_mapping_nearby: 在附近绘制地图的人
+      message:
+        destroy_button: 删除
   passwords:
     new:
       title: 忘记密码
@@ -2666,6 +2668,27 @@ zh-CN:
       report: 举报此用户
     go_public:
       flash success: 您的所有编辑现在均已公开,现在允许您开始编辑。
+    issued_blocks:
+      show:
+        title: '%{name} 执行的封禁'
+        heading_html: '%{name} 执行的封禁列表'
+        empty: '%{name} 还没有执行任何封禁。'
+    received_blocks:
+      show:
+        title: 对 %{name} 的封禁
+        heading_html: 对 %{name} 的封禁列表
+        empty: '%{name} 还没有被封禁。'
+      edit:
+        title: 正在撤销对%{block_on}的所有封禁
+        heading_html: 正在撤销对%{block_on}的所有封禁
+        empty: '%{name}没有生效的封禁。'
+        confirm: 您确定要撤销%{active_blocks}吗?
+        active_blocks:
+          one: '%{count} 个生效的封禁'
+          other: '%{count} 个生效的封禁'
+        revoke: 撤销!
+      destroy:
+        flash: 已撤销所有生效的封禁。
     lists:
       show:
         title: 用户
@@ -2737,16 +2760,6 @@ zh-CN:
       title: 用户的封禁
       heading: 用户封禁列表
       empty: 尚未设定任何封禁。
-    revoke_all:
-      title: 正在撤销对%{block_on}的所有封禁
-      heading_html: 正在撤销对%{block_on}的所有封禁
-      empty: '%{name}没有生效的封禁。'
-      confirm: 您确定要撤销%{active_blocks}吗?
-      active_blocks:
-        one: '%{count} 个生效的封禁'
-        other: '%{count} 个生效的封禁'
-      revoke: 撤销!
-      flash: 已撤销所有生效的封禁。
     helper:
       time_future_html: 结束于 %{time}。
       until_login: 用户登录时激活。
@@ -2768,14 +2781,6 @@ zh-CN:
         years:
           one: '%{count}年'
           other: '%{count}年'
-    blocks_on:
-      title: 对 %{name} 的封禁
-      heading_html: 对 %{name} 的封禁列表
-      empty: '%{name} 还没有被封禁。'
-    blocks_by:
-      title: '%{name} 执行的封禁'
-      heading_html: '%{name} 执行的封禁列表'
-      empty: '%{name} 还没有执行任何封禁。'
     show:
       title: '%{block_on} 被 %{block_by} 封禁'
       heading_html: '%{block_on} 被 %{block_by} 封禁'
@@ -2904,7 +2909,6 @@ zh-CN:
       center_marker: 以标记作为地图中心
       paste_html: 粘贴HTML以嵌入网站
       view_larger_map: 查看更大的地图
-      only_standard_layer: 只有标准图层、自行车地图和交通运输图层可被导出为图片
     embed:
       report_problem: 报告问题
     key:
index 5afa84a6b41b20158d67e472155bbfb51d051b21..36f88e4809224d2f0e86e413f9f4a4488c96a8a8 100644 (file)
@@ -1048,8 +1048,9 @@ zh-HK:
     confirm_resend:
       failure: 找不到用戶%{name}。
   messages:
-    outbox:
-      title: 寄件匣
+    outboxes:
+      show:
+        title: 寄件匣
   passwords:
     new:
       title: 忘記密碼
index 0358cedb36d6b57602713fdc5f1585e09597f30c..9f42e0a2a8f0a654f812bd7f04465f3b476cb24c 100644 (file)
@@ -1718,8 +1718,6 @@ zh-TW:
       success: 已確認你的帳號,感謝你的註冊!
       already active: 該帳號已經確認。
       unknown token: 確認碼已經過期或不存在。
-      resend_html: 如果你要我們重新發送確認郵件,%{reconfirm_link}。
-      click_here: 在此點擊
     confirm_resend:
       failure: 找不到使用者 %{name}。
     confirm_email:
@@ -1733,28 +1731,6 @@ zh-TW:
       confirmation_sent: 我們已發送新的確認通知到 %{email},一旦你確認你的帳號後,就能取得製圖權限。
       whitelist: 如果你用來發送確認請求的信箱有反垃圾郵件系統,請確認有將 %{sender} 將入白名單,因為我們無法回覆任何確認請求。
   messages:
-    inbox:
-      title: 收件匣
-      messages: 您有 %{new_messages} 及 %{old_messages}。
-      new_messages:
-        one: '%{count} 項新訊息'
-        other: '%{count} 項新訊息'
-      old_messages:
-        one: '%{count} 項舊訊息'
-        other: '%{count} 項舊訊息'
-      no_messages_yet_html: 你還沒有訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看?
-      people_mapping_nearby: 在附近製圖的人
-    messages_table:
-      from: 寄件者
-      to: 收件者
-      subject: 主旨
-      date: 日期
-      actions: 操作
-    message_summary:
-      unread_button: 標記為未讀
-      read_button: 標記為已讀
-      destroy_button: 刪除
-      unmute_button: 移至收件匣
     new:
       title: 寄出訊息
       send_message_to_html: 寄出新訊息給 %{name}
@@ -1766,18 +1742,6 @@ zh-TW:
       title: 沒有這個訊息
       heading: 沒有這個訊息
       body: 抱歉,並沒有這個 id 的訊息。
-    outbox:
-      title: 寄件匣
-      messages:
-        one: 你有 %{count} 項已寄訊息
-        other: 你有 %{count} 項已寄訊息
-      no_sent_messages_html: 你還沒有已寄訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看?
-      people_mapping_nearby: 附近製作地圖的使用者
-    muted:
-      title: 已忽視訊息
-      messages:
-        one: 1 條忽視訊息
-        other: 你有 %{count} 條忽視訊息
     reply:
       wrong_user: 你已經以「%{user}」的身份登入,但是你想要回覆的訊息並非寄給這個使用者。請以正確的使用者身份登入以回覆這個訊息。
     show:
@@ -1787,12 +1751,6 @@ zh-TW:
       destroy_button: 刪除
       back: 返回
       wrong_user: 你已經以「%{user}」的身份登入,但是你想要閱讀的訊息並非寄給那個使用者。請以正確的使用者身份登入以閱讀它。
-    sent_message_summary:
-      destroy_button: 刪除
-    heading:
-      my_inbox: 我的收件匣
-      my_outbox: 我的寄件匣
-      muted_messages: 已忽視訊息
     mark:
       as_read: 訊息標記為已讀
       as_unread: 訊息標記為未讀
@@ -1801,6 +1759,50 @@ zh-TW:
       error: 無法將訊息移至收件匣。
     destroy:
       destroyed: 訊息已刪除
+    mailboxes:
+      heading:
+        my_inbox: 我的收件匣
+        my_outbox: 我的寄件匣
+        muted_messages: 已忽視訊息
+      messages_table:
+        from: 寄件者
+        to: 收件者
+        subject: 主旨
+        date: 日期
+        actions: 操作
+      message:
+        unread_button: 標記為未讀
+        read_button: 標記為已讀
+        destroy_button: 刪除
+        unmute_button: 移至收件匣
+    inboxes:
+      show:
+        title: 收件匣
+        messages: 您有 %{new_messages} 及 %{old_messages}。
+        new_messages:
+          one: '%{count} 項新訊息'
+          other: '%{count} 項新訊息'
+        old_messages:
+          one: '%{count} 項舊訊息'
+          other: '%{count} 項舊訊息'
+        no_messages_yet_html: 你還沒有訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看?
+        people_mapping_nearby: 在附近製圖的人
+    muted_inboxes:
+      show:
+        title: 已忽視訊息
+        messages:
+          one: 1 條忽視訊息
+          other: 你有 %{count} 條忽視訊息
+    outboxes:
+      show:
+        title: 寄件匣
+        messages:
+          one: 你有 %{count} 項已寄訊息
+          other: 你有 %{count} 項已寄訊息
+        no_sent_messages_html: 你還沒有已寄訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看?
+        people_mapping_nearby: 附近製作地圖的使用者
+      message:
+        destroy_button: 刪除
   passwords:
     new:
       title: 遺失密碼
@@ -2637,6 +2639,27 @@ zh-TW:
       report: 回報此使用者
     go_public:
       flash success: 現在你所有的編輯都是公開的,而你已獲准編輯。
+    issued_blocks:
+      show:
+        title: '%{name} 設的封鎖'
+        heading_html: 列出 %{name} 所設定的封鎖
+        empty: '%{name} 尚未設定任何封鎖。'
+    received_blocks:
+      show:
+        title: 對 %{name} 的封鎖
+        heading_html: 對 %{name} 封鎖的清單
+        empty: 未封鎖%{name}。
+      edit:
+        title: 正在撤銷對%{block_on}的封鎖
+        heading_html: 正在撤銷對%{block_on}的所有封鎖
+        empty: '%{name}沒有生效的封鎖。'
+        confirm: 你確定要撤銷%{active_blocks}嗎?
+        active_blocks:
+          one: '%{count} 個生效封鎖'
+          other: '%{count} 個生效封鎖'
+        revoke: 撤銷!
+      destroy:
+        flash: 已撤銷所有生效封鎖。
     lists:
       show:
         title: 使用者
@@ -2708,16 +2731,6 @@ zh-TW:
       title: 使用者封鎖
       heading: 使用者封鎖清單
       empty: 尚未設定任何使用者封鎖。
-    revoke_all:
-      title: 正在撤銷對%{block_on}的封鎖
-      heading_html: 正在撤銷對%{block_on}的所有封鎖
-      empty: '%{name}沒有生效的封鎖。'
-      confirm: 你確定要撤銷%{active_blocks}嗎?
-      active_blocks:
-        one: '%{count} 個生效封鎖'
-        other: '%{count} 個生效封鎖'
-      revoke: 撤銷!
-      flash: 已撤銷所有生效封鎖。
     helper:
       time_future_html: 於 %{time} 結束。
       until_login: 在使用者登入之前一直生效。
@@ -2739,14 +2752,6 @@ zh-TW:
         years:
           one: '%{count} 年'
           other: '%{count} 年'
-    blocks_on:
-      title: 對 %{name} 的封鎖
-      heading_html: 對 %{name} 封鎖的清單
-      empty: 未封鎖%{name}。
-    blocks_by:
-      title: '%{name} 設的封鎖'
-      heading_html: 列出 %{name} 所設定的封鎖
-      empty: '%{name} 尚未設定任何封鎖。'
     show:
       title: '%{block_by}封鎖了%{block_on}'
       heading_html: '%{block_by}封鎖了%{block_on}'
@@ -2867,7 +2872,6 @@ zh-TW:
       center_marker: 將標記設為地圖中心點
       paste_html: 貼上 HTML 以嵌入網站
       view_larger_map: 查看更大的地圖
-      only_standard_layer: 只有標準圖層、自行車地圖、交通運輸圖層能匯出成圖片
     embed:
       report_problem: 回報問題
     key:
index 5bda1b37c3383c450269275a4df15abbbf7d8bb7..d2b2830fdb1346654c9c70c57993f29809d4fe90 100644 (file)
@@ -182,11 +182,7 @@ OpenStreetMap::Application.routes.draw do
   get "/key" => "site#key"
   get "/id" => "site#id"
   get "/query" => "browse#query"
-  get "/user/new" => "users#new"
-  post "/user/new" => "users#create"
-  get "/user/terms" => "users#terms"
-  post "/user/save" => "users#save"
-  get "/user/:display_name/confirm/resend" => "confirmations#confirm_resend", :as => :user_confirm_resend
+  post "/user/:display_name/confirm/resend" => "confirmations#confirm_resend", :as => :user_confirm_resend
   match "/user/:display_name/confirm" => "confirmations#confirm", :via => [:get, :post]
   match "/user/confirm" => "confirmations#confirm", :via => [:get, :post]
   match "/user/confirm-email" => "confirmations#confirm_email", :via => [:get, :post]
@@ -269,17 +265,24 @@ OpenStreetMap::Application.routes.draw do
   post "/diary_comments/:comment/unhide" => "diary_comments#unhide", :comment => /\d+/, :as => :unhide_diary_comment
 
   # user pages
-  resources :users, :path => "user", :param => :display_name, :only => [:show, :destroy] do
+  get "/user/terms", :to => redirect(:path => "/account/terms")
+  resources :users, :path => "user", :param => :display_name, :only => [:new, :create, :show, :destroy] do
     resource :role, :controller => "user_roles", :path => "roles/:role", :only => [:create, :destroy]
+    scope :module => :users do
+      resource :issued_blocks, :path => "blocks_by", :only => :show
+      resource :received_blocks, :path => "blocks", :only => [:show, :edit, :destroy]
+    end
   end
   get "/user/:display_name/account", :to => redirect(:path => "/account/edit")
   post "/user/:display_name/set_status" => "users#set_status", :as => :set_status_user
 
-  resource :account, :only => [:edit, :update, :destroy]
-
-  namespace :account do
-    resource :deletion, :only => [:show]
+  resource :account, :only => [:edit, :update, :destroy] do
+    scope :module => :accounts do
+      resource :terms, :only => [:show, :update]
+      resource :deletion, :only => :show
+    end
   end
+
   resource :dashboard, :only => [:show]
   resource :preferences, :only => [:show, :update]
   get "/preferences/edit", :to => redirect(:path => "/preferences")
@@ -308,21 +311,22 @@ OpenStreetMap::Application.routes.draw do
   get "/export/embed" => "export#embed"
 
   # messages
-  resources :messages, :only => [:create, :show, :destroy] do
+  resources :messages, :path_names => { :new => "new/:display_name" }, :id => /\d+/, :only => [:new, :create, :show, :destroy] do
     post :mark
     patch :unmute
 
-    match :reply, :via => [:get, :post]
-    collection do
-      get :inbox
-      get :muted
-      get :outbox
-    end
+    resource :reply, :module => :messages, :path_names => { :new => "new" }, :only => :new
+  end
+  namespace :messages, :path => "/messages" do
+    resource :inbox, :only => :show
+    resource :muted_inbox, :path => "muted", :only => :show
+    resource :outbox, :only => :show
   end
   get "/user/:display_name/inbox", :to => redirect(:path => "/messages/inbox")
   get "/user/:display_name/outbox", :to => redirect(:path => "/messages/outbox")
-  get "/message/new/:display_name" => "messages#new", :as => "new_message"
+  get "/message/new/:display_name", :to => redirect(:path => "/messages/new/%{display_name}")
   get "/message/read/:message_id", :to => redirect(:path => "/messages/%{message_id}")
+  get "/messages/:message_id/reply", :to => redirect(:path => "/messages/%{message_id}/reply/new")
 
   # muting users
   scope "/user/:display_name" do
@@ -331,11 +335,7 @@ OpenStreetMap::Application.routes.draw do
   resources :user_mutes, :only => [:index]
 
   # banning pages
-  get "/user/:display_name/blocks" => "user_blocks#blocks_on", :as => "user_blocks_on"
-  get "/user/:display_name/blocks_by" => "user_blocks#blocks_by", :as => "user_blocks_by"
-  get "/blocks/new/:display_name" => "user_blocks#new", :as => "new_user_block"
-  resources :user_blocks, :except => :new
-  match "/user/:display_name/blocks/revoke_all" => "user_blocks#revoke_all", :via => [:get, :post], :as => "revoke_all_user_blocks"
+  resources :user_blocks, :path_names => { :new => "new/:display_name" }
 
   # issues and reports
   resources :issues do
index 729772477757ac810113e6abf77a92fead58e904..2c6d0c1d7036ad5f4f2d4f1e6a53593f3048b65d 100644 (file)
@@ -1,15 +1,13 @@
 module Auth
-  @providers = {}
+  @providers = ["openid"]
+  @providers << "google" if Settings.key?(:google_auth_id)
+  @providers << "facebook" if Settings.key?(:facebook_auth_id)
+  @providers << "microsoft" if Settings.key?(:microsoft_auth_id)
+  @providers << "github" if Settings.key?(:github_auth_id)
+  @providers << "wikipedia" if Settings.key?(:wikipedia_auth_id)
+  @providers.freeze
 
   def self.providers
-    @providers[I18n.locale] ||= {
-      I18n.t("auth.providers.openid") => "openid"
-    }.tap do |providers|
-      providers[I18n.t("auth.providers.google")] = "google" if Settings.key?(:google_auth_id)
-      providers[I18n.t("auth.providers.facebook")] = "facebook" if Settings.key?(:facebook_auth_id)
-      providers[I18n.t("auth.providers.microsoft")] = "microsoft" if Settings.key?(:microsoft_auth_id)
-      providers[I18n.t("auth.providers.github")] = "github" if Settings.key?(:github_auth_id)
-      providers[I18n.t("auth.providers.wikipedia")] = "wikipedia" if Settings.key?(:wikipedia_auth_id)
-    end.freeze
+    @providers
   end
 end
index d78d74dfc1fdd6f0d9775f9218647732ad72fab6..0edf11d8deadfe40875835230a75bad3fc8a1566 100644 (file)
@@ -5,7 +5,7 @@
     "jquery-simulate": "^1.0.2",
     "js-cookie": "^3.0.0",
     "leaflet": "^1.8.0",
-    "leaflet.locatecontrol": "^0.82.0",
+    "leaflet.locatecontrol": "^0.83.0",
     "osm-community-index": "^5.2.0",
     "qs": "^6.9.4"
   },
index d2c3d5196ab9b5ccbcae32aaaed086e03650d7f5..0ddb8a87ad73f91606df90af224df851c9919c06 100644 (file)
@@ -41,4 +41,8 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
   def within_sidebar(&)
     within("#sidebar_content", &)
   end
+
+  def within_content_body(&)
+    within("#content > .content-body", &)
+  end
 end
diff --git a/test/controllers/accounts/terms_controller_test.rb b/test/controllers/accounts/terms_controller_test.rb
new file mode 100644 (file)
index 0000000..7688846
--- /dev/null
@@ -0,0 +1,91 @@
+require "test_helper"
+
+module Accounts
+  class TermsControllerTest < ActionDispatch::IntegrationTest
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/account/terms", :method => :get },
+        { :controller => "accounts/terms", :action => "show" }
+      )
+      assert_routing(
+        { :path => "/account/terms", :method => :put },
+        { :controller => "accounts/terms", :action => "update" }
+      )
+
+      get "/user/terms"
+      assert_redirected_to "/account/terms"
+    end
+
+    def test_show_not_logged_in
+      get account_terms_path
+
+      assert_redirected_to login_path(:referer => account_terms_path)
+    end
+
+    def test_show_agreed
+      user = create(:user, :terms_seen => true, :terms_agreed => Date.yesterday)
+      session_for(user)
+
+      get account_terms_path
+      assert_redirected_to edit_account_path
+    end
+
+    def test_show_not_seen_without_referer
+      user = create(:user, :terms_seen => false, :terms_agreed => nil)
+      session_for(user)
+
+      get account_terms_path
+      assert_response :success
+    end
+
+    def test_show_not_seen_with_referer
+      user = create(:user, :terms_seen => false, :terms_agreed => nil)
+      session_for(user)
+
+      get account_terms_path(:referer => "/test")
+      assert_response :success
+    end
+
+    def test_update_not_seen_without_referer
+      user = create(:user, :terms_seen => false, :terms_agreed => nil)
+      session_for(user)
+
+      put account_terms_path, :params => { :user => { :consider_pd => true }, :read_ct => 1, :read_tou => 1 }
+      assert_redirected_to edit_account_path
+      assert_equal "Thanks for accepting the new contributor terms!", flash[:notice]
+
+      user.reload
+
+      assert user.consider_pd
+      assert_not_nil user.terms_agreed
+      assert user.terms_seen
+    end
+
+    def test_update_not_seen_with_referer
+      user = create(:user, :terms_seen => false, :terms_agreed => nil)
+      session_for(user)
+
+      put account_terms_path, :params => { :user => { :consider_pd => true }, :referer => "/test", :read_ct => 1, :read_tou => 1 }
+      assert_redirected_to "/test"
+      assert_equal "Thanks for accepting the new contributor terms!", flash[:notice]
+
+      user.reload
+
+      assert user.consider_pd
+      assert_not_nil user.terms_agreed
+      assert user.terms_seen
+    end
+
+    # Check that if you haven't seen the terms, and make a request that requires authentication,
+    # that your request is redirected to view the terms
+    def test_terms_not_seen_redirection
+      user = create(:user, :terms_seen => false, :terms_agreed => nil)
+      session_for(user)
+
+      get edit_account_path
+      assert_redirected_to account_terms_path(:referer => "/account/edit")
+    end
+  end
+end
index 79213441f19a2e8cf757429e91ab2205b0020e12..774efdb9c96ce7fac72f8fcfa35cedd8571a1641 100644 (file)
@@ -13,7 +13,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
       { :controller => "confirmations", :action => "confirm", :display_name => "username" }
     )
     assert_routing(
-      { :path => "/user/username/confirm/resend", :method => :get },
+      { :path => "/user/username/confirm/resend", :method => :post },
       { :controller => "confirmations", :action => "confirm_resend", :display_name => "username" }
     )
 
@@ -37,7 +37,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
 
   def test_confirm_get
     user = build(:user, :pending)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     get user_confirm_path, :params => { :display_name => user.display_name, :confirm_string => confirm_string }
@@ -48,7 +48,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_get_already_confirmed
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     # Get the confirmation page
@@ -68,7 +68,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_success_no_token_no_referer
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post logout_path
@@ -81,7 +81,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_success_good_token_no_referer
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post user_confirm_path, :params => { :display_name => user.display_name, :confirm_string => confirm_string }
@@ -91,7 +91,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_success_bad_token_no_referer
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post logout_path
@@ -105,7 +105,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_success_no_token_with_referer
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post logout_path
@@ -118,7 +118,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_success_good_token_with_referer
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post user_confirm_path, :params => { :display_name => user.display_name, :confirm_string => confirm_string, :referer => new_diary_entry_path }
@@ -128,7 +128,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_success_bad_token_with_referer
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post logout_path
@@ -142,7 +142,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_expired_token
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     travel 2.weeks do
@@ -155,7 +155,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_already_confirmed
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     post user_confirm_path, :params => { :display_name => user.display_name, :confirm_string => confirm_string, :referer => new_diary_entry_path }
@@ -172,7 +172,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_deleted
     user = build(:user, :pending)
     stub_gravatar_request(user.email)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
     confirm_string = User.find_by(:email => user.email).generate_token_for(:new_user)
 
     User.find_by(:display_name => user.display_name).hide!
@@ -189,11 +189,11 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
 
   def test_confirm_resend_success
     user = build(:user, :pending)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
 
     assert_difference "ActionMailer::Base.deliveries.size", 1 do
       perform_enqueued_jobs do
-        get user_confirm_resend_path(user)
+        post user_confirm_resend_path(user)
       end
     end
 
@@ -210,13 +210,13 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
 
   def test_confirm_resend_deleted
     user = build(:user, :pending)
-    post user_new_path, :params => { :user => user.attributes }
+    post users_path, :params => { :user => user.attributes }
 
     User.find_by(:display_name => user.display_name).hide!
 
     assert_no_difference "ActionMailer::Base.deliveries.size" do
       perform_enqueued_jobs do
-        get user_confirm_resend_path(user)
+        post user_confirm_resend_path(user)
       end
     end
 
@@ -227,7 +227,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   def test_confirm_resend_unknown_user
     assert_no_difference "ActionMailer::Base.deliveries.size" do
       perform_enqueued_jobs do
-        get user_confirm_resend_path(:display_name => "No Such User")
+        post user_confirm_resend_path(:display_name => "No Such User")
       end
     end
 
index 65a71a9b57b05d8f4eda9c53a4f535d143d270b5..3ea9bc09400d5334d3a80044d68089736591b427 100644 (file)
@@ -104,6 +104,7 @@ class DiaryCommentsControllerTest < ActionDispatch::IntegrationTest
     end
     assert_response :success
     assert_template :new
+    assert_match(/img-src \* data:;/, @response.headers["Content-Security-Policy-Report-Only"])
 
     # Now try again with the right id
     assert_difference "ActionMailer::Base.deliveries.size", entry.subscribers.count do
index 7d543250bc88a17b565cc72d99196d3f4b48a16d..a1c22fff8237e4dc356aca4f9e15dc792d4c4c95 100644 (file)
@@ -130,8 +130,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
     # Now try creating a diary entry using get
     session_for(create(:user))
     assert_difference "DiaryEntry.count", 0 do
-      get new_diary_entry_path(:commit => "save",
-                               :diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
+      get new_diary_entry_path(:diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
                                                  :longitude => "2.2", :language_code => "en" })
     end
     assert_response :success
@@ -143,8 +142,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
     user = create(:user)
     session_for(user)
     assert_no_difference "DiaryEntry.count" do
-      post diary_entries_path(:commit => "save",
-                              :diary_entry => { :title => "New Title", :body => "", :latitude => "1.1",
+      post diary_entries_path(:diary_entry => { :title => "New Title", :body => "", :latitude => "1.1",
                                                 :longitude => "2.2", :language_code => "en" })
     end
     assert_response :success
@@ -158,12 +156,11 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
     user = create(:user)
     session_for(user)
     assert_difference "DiaryEntry.count", 1 do
-      post diary_entries_path(:commit => "save",
-                              :diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
+      post diary_entries_path(:diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
                                                 :longitude => "2.2", :language_code => "en" })
     end
-    assert_redirected_to :action => :index, :display_name => user.display_name
     entry = DiaryEntry.last
+    assert_redirected_to diary_entry_path(user, entry)
     assert_equal user.id, entry.user_id
     assert_equal "New Title", entry.title
     assert_equal "This is a new body for the diary entry", entry.body
@@ -184,12 +181,11 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
 
     # Now try creating a diary entry in a different language
     assert_difference "DiaryEntry.count", 1 do
-      post diary_entries_path(:commit => "save",
-                              :diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
+      post diary_entries_path(:diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
                                                 :longitude => "2.2", :language_code => "de" })
     end
-    assert_redirected_to :action => :index, :display_name => user.display_name
     entry = DiaryEntry.last
+    assert_redirected_to diary_entry_path(user, entry)
     assert_equal user.id, entry.user_id
     assert_equal "New Title", entry.title
     assert_equal "This is a new body for the diary entry", entry.body
@@ -213,11 +209,10 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
 
     # Try creating a spammy diary entry
     assert_difference "DiaryEntry.count", 1 do
-      post diary_entries_path(:commit => "save",
-                              :diary_entry => { :title => spammy_title, :body => spammy_body, :language_code => "en" })
+      post diary_entries_path(:diary_entry => { :title => spammy_title, :body => spammy_body, :language_code => "en" })
     end
-    assert_redirected_to :action => :index, :display_name => user.display_name
     entry = DiaryEntry.last
+    assert_redirected_to diary_entry_path(user, entry)
     assert_equal user.id, entry.user_id
     assert_equal spammy_title, entry.title
     assert_equal spammy_body, entry.body
@@ -284,8 +279,7 @@ class DiaryEntriesControllerTest < ActionDispatch::IntegrationTest
     new_latitude = "1.1"
     new_longitude = "2.2"
     new_language_code = "en"
-    put diary_entry_path(entry.user, entry, :commit => "save",
-                                            :diary_entry => { :title => new_title, :body => new_body, :latitude => new_latitude,
+    put diary_entry_path(entry.user, entry, :diary_entry => { :title => new_title, :body => new_body, :latitude => new_latitude,
                                                               :longitude => new_longitude, :language_code => new_language_code })
     assert_redirected_to :action => :show, :display_name => entry.user.display_name, :id => entry.id
 
diff --git a/test/controllers/messages/inboxes_controller_test.rb b/test/controllers/messages/inboxes_controller_test.rb
new file mode 100644 (file)
index 0000000..b5cc869
--- /dev/null
@@ -0,0 +1,36 @@
+require "test_helper"
+
+module Messages
+  class InboxesControllerTest < ActionDispatch::IntegrationTest
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/messages/inbox", :method => :get },
+        { :controller => "messages/inboxes", :action => "show" }
+      )
+    end
+
+    def test_show
+      user = create(:user)
+      read_message = create(:message, :read, :recipient => user)
+
+      session_for(user)
+
+      get messages_inbox_path
+      assert_response :success
+      assert_select ".content-inner > table.messages-table > tbody", :count => 1 do
+        assert_select "tr", :count => 1
+        assert_select "tr#inbox-#{read_message.id}", :count => 1 do
+          assert_select "a[href='#{user_path read_message.sender}']", :text => read_message.sender.display_name
+          assert_select "a[href='#{message_path read_message}']", :text => read_message.title
+        end
+      end
+    end
+
+    def test_show_requires_login
+      get messages_inbox_path
+      assert_redirected_to login_path(:referer => messages_inbox_path)
+    end
+  end
+end
diff --git a/test/controllers/messages/muted_inboxes_controller_test.rb b/test/controllers/messages/muted_inboxes_controller_test.rb
new file mode 100644 (file)
index 0000000..ce84b65
--- /dev/null
@@ -0,0 +1,14 @@
+require "test_helper"
+
+module Messages
+  class MutedInboxesControllerTest < ActionDispatch::IntegrationTest
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/messages/muted", :method => :get },
+        { :controller => "messages/muted_inboxes", :action => "show" }
+      )
+    end
+  end
+end
diff --git a/test/controllers/messages/outboxes_controller_test.rb b/test/controllers/messages/outboxes_controller_test.rb
new file mode 100644 (file)
index 0000000..befb810
--- /dev/null
@@ -0,0 +1,36 @@
+require "test_helper"
+
+module Messages
+  class OutboxesControllerTest < ActionDispatch::IntegrationTest
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/messages/outbox", :method => :get },
+        { :controller => "messages/outboxes", :action => "show" }
+      )
+    end
+
+    def test_show
+      user = create(:user)
+      message = create(:message, :sender => user)
+
+      session_for(user)
+
+      get messages_outbox_path
+      assert_response :success
+      assert_select ".content-inner > table.messages-table > tbody", :count => 1 do
+        assert_select "tr", :count => 1
+        assert_select "tr#outbox-#{message.id}", :count => 1 do
+          assert_select "a[href='#{user_path message.recipient}']", :text => message.recipient.display_name
+          assert_select "a[href='#{message_path message}']", :text => message.title
+        end
+      end
+    end
+
+    def test_show_requires_login
+      get messages_outbox_path
+      assert_redirected_to login_path(:referer => messages_outbox_path)
+    end
+  end
+end
diff --git a/test/controllers/messages/replies_controller_test.rb b/test/controllers/messages/replies_controller_test.rb
new file mode 100644 (file)
index 0000000..a839a44
--- /dev/null
@@ -0,0 +1,69 @@
+require "test_helper"
+
+module Messages
+  class RepliesControllerTest < ActionDispatch::IntegrationTest
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/messages/1/reply/new", :method => :get },
+        { :controller => "messages/replies", :action => "new", :message_id => "1" }
+      )
+    end
+
+    def test_new
+      user = create(:user)
+      recipient_user = create(:user)
+      other_user = create(:user)
+      message = create(:message, :unread, :sender => user, :recipient => recipient_user)
+
+      # Check that the message reply page requires us to login
+      get new_message_reply_path(message)
+      assert_redirected_to login_path(:referer => new_message_reply_path(message))
+
+      # Login as the wrong user
+      session_for(other_user)
+
+      # Check that we can't reply to somebody else's message
+      get new_message_reply_path(message)
+      assert_redirected_to login_path(:referer => new_message_reply_path(message))
+      assert_equal "You are logged in as '#{other_user.display_name}' but the message you have asked to reply to was not sent to that user. Please log in as the correct user in order to reply.", flash[:notice]
+
+      # Login as the right user
+      session_for(recipient_user)
+
+      # Check that the message reply page loads
+      get new_message_reply_path(message)
+      assert_response :success
+      assert_template "new"
+      assert_select "title", "Re: #{message.title} | OpenStreetMap"
+      assert_select "form[action='/messages']", :count => 1 do
+        assert_select "input[type='hidden'][name='display_name'][value='#{user.display_name}']"
+        assert_select "input#message_title[value='Re: #{message.title}']", :count => 1
+        assert_select "textarea#message_body", :count => 1
+        assert_select "input[type='submit'][value='Send']", :count => 1
+      end
+      assert Message.find(message.id).message_read
+
+      # Login as the sending user
+      session_for(user)
+
+      # Check that the message reply page loads
+      get new_message_reply_path(message)
+      assert_response :success
+      assert_template "new"
+      assert_select "title", "Re: #{message.title} | OpenStreetMap"
+      assert_select "form[action='/messages']", :count => 1 do
+        assert_select "input[type='hidden'][name='display_name'][value='#{recipient_user.display_name}']"
+        assert_select "input#message_title[value='Re: #{message.title}']", :count => 1
+        assert_select "textarea#message_body", :count => 1
+        assert_select "input[type='submit'][value='Send']", :count => 1
+      end
+
+      # Asking to reply to a message with a bogus ID should fail
+      get new_message_reply_path(99999)
+      assert_response :not_found
+      assert_template "no_such_message"
+    end
+  end
+end
index 70d1beb18317b362d3dfd137023b406003646ac7..b2bb71b1c71e8b1484983d9956f89487b55d5d21 100644 (file)
@@ -5,15 +5,7 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
   # test all routes which lead to this controller
   def test_routes
     assert_routing(
-      { :path => "/messages/inbox", :method => :get },
-      { :controller => "messages", :action => "inbox" }
-    )
-    assert_routing(
-      { :path => "/messages/outbox", :method => :get },
-      { :controller => "messages", :action => "outbox" }
-    )
-    assert_routing(
-      { :path => "/message/new/username", :method => :get },
+      { :path => "/messages/new/username", :method => :get },
       { :controller => "messages", :action => "new", :display_name => "username" }
     )
     assert_routing(
@@ -28,14 +20,6 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
       { :path => "/messages/1/mark", :method => :post },
       { :controller => "messages", :action => "mark", :message_id => "1" }
     )
-    assert_routing(
-      { :path => "/messages/1/reply", :method => :get },
-      { :controller => "messages", :action => "reply", :message_id => "1" }
-    )
-    assert_routing(
-      { :path => "/messages/1/reply", :method => :post },
-      { :controller => "messages", :action => "reply", :message_id => "1" }
-    )
     assert_routing(
       { :path => "/messages/1", :method => :delete },
       { :controller => "messages", :action => "destroy", :id => "1" }
@@ -179,7 +163,7 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
         end
       end
     end
-    assert_redirected_to inbox_messages_path
+    assert_redirected_to messages_outbox_path
     assert_equal "Message sent", flash[:notice]
     e = ActionMailer::Base.deliveries.first
     assert_equal [recipient_user.email], e.to
@@ -227,63 +211,6 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
     end
   end
 
-  ##
-  # test the reply action
-  def test_reply
-    user = create(:user)
-    recipient_user = create(:user)
-    other_user = create(:user)
-    message = create(:message, :unread, :sender => user, :recipient => recipient_user)
-
-    # Check that the message reply page requires us to login
-    get message_reply_path(message)
-    assert_redirected_to login_path(:referer => message_reply_path(message))
-
-    # Login as the wrong user
-    session_for(other_user)
-
-    # Check that we can't reply to somebody else's message
-    get message_reply_path(message)
-    assert_redirected_to login_path(:referer => message_reply_path(message))
-    assert_equal "You are logged in as '#{other_user.display_name}' but the message you have asked to reply to was not sent to that user. Please log in as the correct user in order to reply.", flash[:notice]
-
-    # Login as the right user
-    session_for(recipient_user)
-
-    # Check that the message reply page loads
-    get message_reply_path(message)
-    assert_response :success
-    assert_template "new"
-    assert_select "title", "Re: #{message.title} | OpenStreetMap"
-    assert_select "form[action='/messages']", :count => 1 do
-      assert_select "input[type='hidden'][name='display_name'][value='#{user.display_name}']"
-      assert_select "input#message_title[value='Re: #{message.title}']", :count => 1
-      assert_select "textarea#message_body", :count => 1
-      assert_select "input[type='submit'][value='Send']", :count => 1
-    end
-    assert Message.find(message.id).message_read
-
-    # Login as the sending user
-    session_for(user)
-
-    # Check that the message reply page loads
-    get message_reply_path(message)
-    assert_response :success
-    assert_template "new"
-    assert_select "title", "Re: #{message.title} | OpenStreetMap"
-    assert_select "form[action='/messages']", :count => 1 do
-      assert_select "input[type='hidden'][name='display_name'][value='#{recipient_user.display_name}']"
-      assert_select "input#message_title[value='Re: #{message.title}']", :count => 1
-      assert_select "textarea#message_body", :count => 1
-      assert_select "input[type='submit'][value='Send']", :count => 1
-    end
-
-    # Asking to reply to a message with a bogus ID should fail
-    get message_reply_path(99999)
-    assert_response :not_found
-    assert_template "no_such_message"
-  end
-
   ##
   # test the show action
   def test_show
@@ -332,57 +259,6 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
     assert_template "no_such_message"
   end
 
-  ##
-  # test the inbox action
-  def test_inbox
-    user = create(:user)
-    read_message = create(:message, :read, :recipient => user)
-    # Check that the inbox page requires us to login
-    get inbox_messages_path
-    assert_redirected_to login_path(:referer => inbox_messages_path)
-
-    # Login
-    session_for(user)
-
-    # Check that we can view our inbox when logged in
-    get inbox_messages_path
-    assert_response :success
-    assert_template "inbox"
-    assert_select ".content-inner > table.messages-table > tbody", :count => 1 do
-      assert_select "tr", :count => 1
-      assert_select "tr#inbox-#{read_message.id}", :count => 1 do
-        assert_select "a[href='#{user_path read_message.sender}']", :text => read_message.sender.display_name
-        assert_select "a[href='#{message_path read_message}']", :text => read_message.title
-      end
-    end
-  end
-
-  ##
-  # test the outbox action
-  def test_outbox
-    user = create(:user)
-    message = create(:message, :sender => user)
-
-    # Check that the outbox page requires us to login
-    get outbox_messages_path
-    assert_redirected_to login_path(:referer => outbox_messages_path)
-
-    # Login
-    session_for(user)
-
-    # Check that we can view our outbox when logged in
-    get outbox_messages_path
-    assert_response :success
-    assert_template "outbox"
-    assert_select ".content-inner > table.messages-table > tbody", :count => 1 do
-      assert_select "tr", :count => 1
-      assert_select "tr#outbox-#{message.id}", :count => 1 do
-        assert_select "a[href='#{user_path message.recipient}']", :text => message.recipient.display_name
-        assert_select "a[href='#{message_path message}']", :text => message.title
-      end
-    end
-  end
-
   ##
   # test the mark action
   def test_mark
@@ -416,22 +292,22 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
 
     # Check that the marking a message read works
     post message_mark_path(message, :mark => "read")
-    assert_redirected_to inbox_messages_path
+    assert_redirected_to messages_inbox_path
     assert Message.find(message.id).message_read
 
     # Check that the marking a message unread works
     post message_mark_path(message, :mark => "unread")
-    assert_redirected_to inbox_messages_path
+    assert_redirected_to messages_inbox_path
     assert_not Message.find(message.id).message_read
 
     # Check that the marking a message read works and redirects to inbox from the message page
     post message_mark_path(message, :mark => "read"), :headers => { :referer => message_path(message) }
-    assert_redirected_to inbox_messages_path
+    assert_redirected_to messages_inbox_path
     assert Message.find(message.id).message_read
 
     # Check that the marking a message unread works and redirects to inbox from the message page
     post message_mark_path(message, :mark => "unread"), :headers => { :referer => message_path(message) }
-    assert_redirected_to inbox_messages_path
+    assert_redirected_to messages_inbox_path
     assert_not Message.find(message.id).message_read
 
     # Asking to mark a message with a bogus ID should fail
@@ -452,12 +328,12 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
 
     # Check that the marking a message read works
     post message_mark_path(message, :mark => "read")
-    assert_redirected_to muted_messages_path
+    assert_redirected_to messages_muted_inbox_path
     assert Message.find(message.id).message_read
 
     # Check that the marking a message unread works
     post message_mark_path(message, :mark => "unread")
-    assert_redirected_to muted_messages_path
+    assert_redirected_to messages_muted_inbox_path
     assert_not Message.find(message.id).message_read
   end
 
@@ -487,15 +363,15 @@ class MessagesControllerTest < ActionDispatch::IntegrationTest
 
     # Check that the destroy a received message works
     delete message_path(read_message)
-    assert_redirected_to inbox_messages_path
+    assert_redirected_to messages_inbox_path
     assert_equal "Message deleted", flash[:notice]
     m = Message.find(read_message.id)
     assert m.from_user_visible
     assert_not m.to_user_visible
 
     # Check that the destroying a sent message works
-    delete message_path(sent_message, :referer => outbox_messages_path)
-    assert_redirected_to outbox_messages_path
+    delete message_path(sent_message, :referer => messages_outbox_path)
+    assert_redirected_to messages_outbox_path
     assert_equal "Message deleted", flash[:notice]
     m = Message.find(sent_message.id)
     assert_not m.from_user_visible
index a294327231d78ca0b54b5e5f338ae305f27221d6..6db340c214123c026501ad711263468d0c776d35 100644 (file)
@@ -12,7 +12,7 @@ class NodesControllerTest < ActionDispatch::IntegrationTest
 
   def test_show
     node = create(:node)
-    sidebar_browse_check :node_path, node.id, "browse/feature"
+    sidebar_browse_check :node_path, node.id, "elements/show"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
     end
@@ -23,7 +23,7 @@ class NodesControllerTest < ActionDispatch::IntegrationTest
 
   def test_show_multiple_versions
     node = create(:node, :with_history, :version => 2)
-    sidebar_browse_check :node_path, node.id, "browse/feature"
+    sidebar_browse_check :node_path, node.id, "elements/show"
     assert_select ".secondary-actions a[href='#{node_history_path node}']", :count => 1
     assert_select ".secondary-actions a[href='#{old_node_path node, 1}']", :count => 1
     assert_select ".secondary-actions a[href='#{old_node_path node, 2}']", :count => 1
@@ -33,13 +33,13 @@ class NodesControllerTest < ActionDispatch::IntegrationTest
     member = create(:node)
     relation = create(:relation)
     create(:relation_member, :relation => relation, :member => member)
-    sidebar_browse_check :node_path, member.id, "browse/feature"
+    sidebar_browse_check :node_path, member.id, "elements/show"
     assert_select "a[href='#{relation_path relation}']", :count => 1
   end
 
   def test_show_deleted
     node = create(:node, :visible => false)
-    sidebar_browse_check :node_path, node.id, "browse/feature"
+    sidebar_browse_check :node_path, node.id, "elements/show"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
     end
@@ -53,7 +53,7 @@ class NodesControllerTest < ActionDispatch::IntegrationTest
 
     get node_path(node)
     assert_response :success
-    assert_template "feature"
+    assert_template "elements/show"
 
     # check that we don't show lat/lon for a redacted node.
     assert_select ".browse-section", 1
index abaf30d62e68563e5f694e0a015b7e57668f77b4..8e3a14ab6c8717a5860dbb7a1d8ed2284ce9bad2 100644 (file)
@@ -14,7 +14,7 @@ class OldNodesControllerTest < ActionDispatch::IntegrationTest
 
   def test_history
     node = create(:node, :with_history)
-    sidebar_browse_check :node_history_path, node.id, "browse/history"
+    sidebar_browse_check :node_history_path, node.id, "old_elements/index"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1
     end
@@ -27,7 +27,7 @@ class OldNodesControllerTest < ActionDispatch::IntegrationTest
 
     get node_history_path(:id => node)
     assert_response :success
-    assert_template "browse/history"
+    assert_template "old_elements/index"
 
     # there are 2 revisions of the redacted node, but only one
     # should be showing details here.
@@ -46,7 +46,7 @@ class OldNodesControllerTest < ActionDispatch::IntegrationTest
 
     get node_history_path(:id => node, :params => { :show_redactions => true })
     assert_response :success
-    assert_template "browse/history"
+    assert_template "old_elements/index"
 
     assert_select ".browse-section", 2
     assert_select ".browse-section.browse-redacted", 0
@@ -213,7 +213,7 @@ class OldNodesControllerTest < ActionDispatch::IntegrationTest
   def test_not_found
     get old_node_path(0, 0)
     assert_response :not_found
-    assert_template "old_nodes/not_found"
+    assert_template "browse/not_found"
     assert_template :layout => "map"
     assert_select "#sidebar_content", /node #0 version 0 could not be found/
   end
index f5de706cf59e92220e4ec5c2348e6dd9e06c7a9c..3ede1842b5d35137602c92dde30a3ddf1e83f9b2 100644 (file)
@@ -14,7 +14,7 @@ class OldRelationsControllerTest < ActionDispatch::IntegrationTest
 
   def test_history
     relation = create(:relation, :with_history)
-    sidebar_browse_check :relation_history_path, relation.id, "browse/history"
+    sidebar_browse_check :relation_history_path, relation.id, "old_elements/index"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1
     end
@@ -29,7 +29,7 @@ class OldRelationsControllerTest < ActionDispatch::IntegrationTest
 
     get relation_history_path(:id => relation)
     assert_response :success
-    assert_template "browse/history"
+    assert_template "old_elements/index"
 
     # there are 4 revisions of the redacted relation, but only 2
     # should be showing details here.
@@ -48,7 +48,7 @@ class OldRelationsControllerTest < ActionDispatch::IntegrationTest
 
     get relation_history_path(:id => relation, :params => { :show_redactions => true })
     assert_response :success
-    assert_template "browse/history"
+    assert_template "old_elements/index"
 
     assert_select ".browse-section", 4
     assert_select ".browse-section.browse-redacted", 0
@@ -172,7 +172,7 @@ class OldRelationsControllerTest < ActionDispatch::IntegrationTest
   def test_not_found
     get old_relation_path(0, 0)
     assert_response :not_found
-    assert_template "old_relations/not_found"
+    assert_template "browse/not_found"
     assert_template :layout => "map"
     assert_select "#sidebar_content", /relation #0 version 0 could not be found/
   end
index fcc2281b85753cec329c579cf81366a76a171fd2..c7b383202bb45081f2396b4a916e93108f9ab606 100644 (file)
@@ -14,7 +14,7 @@ class OldWaysControllerTest < ActionDispatch::IntegrationTest
 
   def test_history
     way = create(:way, :with_history)
-    sidebar_browse_check :way_history_path, way.id, "browse/history"
+    sidebar_browse_check :way_history_path, way.id, "old_elements/index"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1
     end
@@ -29,7 +29,7 @@ class OldWaysControllerTest < ActionDispatch::IntegrationTest
 
     get way_history_path(:id => way)
     assert_response :success
-    assert_template "browse/history"
+    assert_template "old_elements/index"
 
     # there are 4 revisions of the redacted way, but only 2
     # should be showing details here.
@@ -48,7 +48,7 @@ class OldWaysControllerTest < ActionDispatch::IntegrationTest
 
     get way_history_path(:id => way, :params => { :show_redactions => true })
     assert_response :success
-    assert_template "browse/history"
+    assert_template "old_elements/index"
 
     assert_select ".browse-section", 4
     assert_select ".browse-section.browse-redacted", 0
@@ -177,7 +177,7 @@ class OldWaysControllerTest < ActionDispatch::IntegrationTest
   def test_not_found
     get old_way_path(0, 0)
     assert_response :not_found
-    assert_template "old_ways/not_found"
+    assert_template "browse/not_found"
     assert_template :layout => "map"
     assert_select "#sidebar_content", /way #0 version 0 could not be found/
   end
index bdcbd2fd7bf386df6d0e49887761394808fbff1f..0f07a1a4a3b042927e4877db454fed5366ee86fe 100644 (file)
@@ -12,7 +12,7 @@ class RelationsControllerTest < ActionDispatch::IntegrationTest
 
   def test_show
     relation = create(:relation)
-    sidebar_browse_check :relation_path, relation.id, "browse/feature"
+    sidebar_browse_check :relation_path, relation.id, "elements/show"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1
     end
@@ -23,7 +23,7 @@ class RelationsControllerTest < ActionDispatch::IntegrationTest
 
   def test_show_multiple_versions
     relation = create(:relation, :with_history, :version => 2)
-    sidebar_browse_check :relation_path, relation.id, "browse/feature"
+    sidebar_browse_check :relation_path, relation.id, "elements/show"
     assert_select ".secondary-actions a[href='#{relation_history_path relation}']", :count => 1
     assert_select ".secondary-actions a[href='#{old_relation_path relation, 1}']", :count => 1
     assert_select ".secondary-actions a[href='#{old_relation_path relation, 2}']", :count => 1
@@ -33,7 +33,7 @@ class RelationsControllerTest < ActionDispatch::IntegrationTest
     member = create(:relation)
     relation = create(:relation)
     create(:relation_member, :relation => relation, :member => member)
-    sidebar_browse_check :relation_path, member.id, "browse/feature"
+    sidebar_browse_check :relation_path, member.id, "elements/show"
     assert_select "a[href='#{relation_path relation}']", :count => 1
   end
 
index f490b748c4a6c763699d2759909ba06f52944e69..442aa81add274df6468870da6e67c0a6cdb69c97 100644 (file)
@@ -95,12 +95,4 @@ class SessionsControllerTest < ActionDispatch::IntegrationTest
     assert_template "sessions/destroy"
     assert_select "input[name=referer][value=?]", "/test"
   end
-
-  def test_logout_removes_session_token
-    user = build(:user, :pending)
-    post user_new_path, :params => { :user => user.attributes }
-    post user_save_path, :params => { :read_ct => 1, :read_tou => 1 }
-    post logout_path
-    assert_redirected_to root_path
-  end
 end
diff --git a/test/controllers/user_blocks/table_test_helper.rb b/test/controllers/user_blocks/table_test_helper.rb
new file mode 100644 (file)
index 0000000..3506c31
--- /dev/null
@@ -0,0 +1,24 @@
+module UserBlocks
+  module TableTestHelper
+    private
+
+    def check_user_blocks_table(user_blocks)
+      assert_dom "table#block_list tbody tr" do |rows|
+        assert_equal user_blocks.count, rows.count, "unexpected number of rows in user blocks table"
+        rows.zip(user_blocks).map do |row, user_block|
+          assert_dom row, "a[href='#{user_block_path user_block}']", 1
+        end
+      end
+    end
+
+    def check_no_page_link(name)
+      assert_select "a.page-link", { :text => /#{Regexp.quote(name)}/, :count => 0 }, "unexpected #{name} page link"
+    end
+
+    def check_page_link(name)
+      assert_select "a.page-link", { :text => /#{Regexp.quote(name)}/ }, "missing #{name} page link" do |buttons|
+        return buttons.first.attributes["href"].value
+      end
+    end
+  end
+end
index 183bc9b7ba6d426e34d782c695169ad048dcdf32..ddb33e9035840f1b5a49b94c3a3a8d1fc5ecab33 100644 (file)
@@ -1,11 +1,14 @@
 require "test_helper"
+require_relative "user_blocks/table_test_helper"
 
 class UserBlocksControllerTest < ActionDispatch::IntegrationTest
+  include UserBlocks::TableTestHelper
+
   ##
   # test all routes which lead to this controller
   def test_routes
     assert_routing(
-      { :path => "/blocks/new/username", :method => :get },
+      { :path => "/user_blocks/new/username", :method => :get },
       { :controller => "user_blocks", :action => "new", :display_name => "username" }
     )
 
@@ -33,23 +36,6 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
       { :path => "/user_blocks/1", :method => :delete },
       { :controller => "user_blocks", :action => "destroy", :id => "1" }
     )
-
-    assert_routing(
-      { :path => "/user/username/blocks", :method => :get },
-      { :controller => "user_blocks", :action => "blocks_on", :display_name => "username" }
-    )
-    assert_routing(
-      { :path => "/user/username/blocks_by", :method => :get },
-      { :controller => "user_blocks", :action => "blocks_by", :display_name => "username" }
-    )
-    assert_routing(
-      { :path => "/user/username/blocks/revoke_all", :method => :get },
-      { :controller => "user_blocks", :action => "revoke_all", :display_name => "username" }
-    )
-    assert_routing(
-      { :path => "/user/username/blocks/revoke_all", :method => :post },
-      { :controller => "user_blocks", :action => "revoke_all", :display_name => "username" }
-    )
   end
 
   ##
@@ -603,83 +589,6 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     assert_equal other_moderator_user, block.revoker
   end
 
-  ##
-  # test the revoke all page
-  def test_revoke_all_page
-    blocked_user = create(:user)
-    create(:user_block, :user => blocked_user)
-
-    # Asking for the revoke all blocks page with a bogus user name should fail
-    get user_blocks_on_path("non_existent_user")
-    assert_response :not_found
-
-    # Check that the revoke all blocks page requires us to login
-    get revoke_all_user_blocks_path(blocked_user)
-    assert_redirected_to login_path(:referer => revoke_all_user_blocks_path(blocked_user))
-
-    # Login as a normal user
-    session_for(create(:user))
-
-    # Check that normal users can't load the revoke all blocks page
-    get revoke_all_user_blocks_path(blocked_user)
-    assert_redirected_to :controller => "errors", :action => "forbidden"
-
-    # Login as a moderator
-    session_for(create(:moderator_user))
-
-    # Check that the revoke all blocks page loads for moderators
-    get revoke_all_user_blocks_path(blocked_user)
-    assert_response :success
-    assert_select "h1 a[href='#{user_path blocked_user}']", :text => blocked_user.display_name
-  end
-
-  ##
-  # test the revoke all action
-  def test_revoke_all_action
-    blocked_user = create(:user)
-    active_block1 = create(:user_block, :user => blocked_user)
-    active_block2 = create(:user_block, :user => blocked_user)
-    expired_block1 = create(:user_block, :expired, :user => blocked_user)
-    blocks = [active_block1, active_block2, expired_block1]
-    moderator_user = create(:moderator_user)
-
-    assert_predicate active_block1, :active?
-    assert_predicate active_block2, :active?
-    assert_not_predicate expired_block1, :active?
-
-    # Login as a normal user
-    session_for(create(:user))
-
-    # Check that normal users can't load the block revoke page
-    get revoke_all_user_blocks_path(:blocked_user)
-    assert_redirected_to :controller => "errors", :action => "forbidden"
-
-    # Login as a moderator
-    session_for(moderator_user)
-
-    # Check that revoking blocks using GET should fail
-    get revoke_all_user_blocks_path(blocked_user, :confirm => true)
-    assert_response :success
-    assert_template "revoke_all"
-
-    blocks.each(&:reload)
-    assert_predicate active_block1, :active?
-    assert_predicate active_block2, :active?
-    assert_not_predicate expired_block1, :active?
-
-    # Check that revoking blocks works using POST
-    post revoke_all_user_blocks_path(blocked_user, :confirm => true)
-    assert_redirected_to user_blocks_on_path(blocked_user)
-
-    blocks.each(&:reload)
-    assert_not_predicate active_block1, :active?
-    assert_not_predicate active_block2, :active?
-    assert_not_predicate expired_block1, :active?
-    assert_equal moderator_user, active_block1.revoker
-    assert_equal moderator_user, active_block2.revoker
-    assert_not_equal moderator_user, expired_block1.revoker
-  end
-
   ##
   # test changes to end/deactivation dates
   def test_dates_when_viewed_before_end
@@ -808,170 +717,6 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     end
   end
 
-  ##
-  # test the blocks_on action
-  def test_blocks_on
-    blocked_user = create(:user)
-    unblocked_user = create(:user)
-    normal_user = create(:user)
-    active_block = create(:user_block, :user => blocked_user)
-    revoked_block = create(:user_block, :revoked, :user => blocked_user)
-    expired_block = create(:user_block, :expired, :user => unblocked_user)
-
-    # Asking for a list of blocks with a bogus user name should fail
-    get user_blocks_on_path("non_existent_user")
-    assert_response :not_found
-    assert_template "users/no_such_user"
-    assert_select "h1", "The user non_existent_user does not exist"
-
-    # Check the list of blocks for a user that has never been blocked
-    get user_blocks_on_path(normal_user)
-    assert_response :success
-    assert_select "table#block_list", false
-    assert_select "p", "#{normal_user.display_name} has not been blocked yet."
-
-    # Check the list of blocks for a user that is currently blocked
-    get user_blocks_on_path(blocked_user)
-    assert_response :success
-    assert_select "h1 a[href='#{user_path blocked_user}']", :text => blocked_user.display_name
-    assert_select "table#block_list tbody", :count => 1 do
-      assert_select "tr", 2
-      assert_select "a[href='#{user_block_path(active_block)}']", 1
-      assert_select "a[href='#{user_block_path(revoked_block)}']", 1
-    end
-
-    # Check the list of blocks for a user that has previously been blocked
-    get user_blocks_on_path(unblocked_user)
-    assert_response :success
-    assert_select "h1 a[href='#{user_path unblocked_user}']", :text => unblocked_user.display_name
-    assert_select "table#block_list tbody", :count => 1 do
-      assert_select "tr", 1
-      assert_select "a[href='#{user_block_path(expired_block)}']", 1
-    end
-  end
-
-  ##
-  # test the blocks_on action with multiple pages
-  def test_blocks_on_paged
-    user = create(:user)
-    user_blocks = create_list(:user_block, 50, :user => user).reverse
-    next_path = user_blocks_on_path(user)
-
-    get next_path
-    assert_response :success
-    check_user_blocks_table user_blocks[0...20]
-    check_no_page_link "Newer Blocks"
-    next_path = check_page_link "Older Blocks"
-
-    get next_path
-    assert_response :success
-    check_user_blocks_table user_blocks[20...40]
-    check_page_link "Newer Blocks"
-    next_path = check_page_link "Older Blocks"
-
-    get next_path
-    assert_response :success
-    check_user_blocks_table user_blocks[40...50]
-    check_page_link "Newer Blocks"
-    check_no_page_link "Older Blocks"
-  end
-
-  ##
-  # test the blocks_on action with invalid pages
-  def test_blocks_on_invalid_paged
-    user = create(:user)
-
-    %w[-1 0 fred].each do |id|
-      get user_blocks_on_path(user, :before => id)
-      assert_redirected_to :controller => :errors, :action => :bad_request
-
-      get user_blocks_on_path(user, :after => id)
-      assert_redirected_to :controller => :errors, :action => :bad_request
-    end
-  end
-
-  ##
-  # test the blocks_by action
-  def test_blocks_by
-    moderator_user = create(:moderator_user)
-    second_moderator_user = create(:moderator_user)
-    normal_user = create(:user)
-    active_block = create(:user_block, :creator => moderator_user)
-    expired_block = create(:user_block, :expired, :creator => second_moderator_user)
-    revoked_block = create(:user_block, :revoked, :creator => second_moderator_user)
-
-    # Asking for a list of blocks with a bogus user name should fail
-    get user_blocks_by_path("non_existent_user")
-    assert_response :not_found
-    assert_template "users/no_such_user"
-    assert_select "h1", "The user non_existent_user does not exist"
-
-    # Check the list of blocks given by one moderator
-    get user_blocks_by_path(moderator_user)
-    assert_response :success
-    assert_select "h1 a[href='#{user_path moderator_user}']", :text => moderator_user.display_name
-    assert_select "table#block_list tbody", :count => 1 do
-      assert_select "tr", 1
-      assert_select "a[href='#{user_block_path(active_block)}']", 1
-    end
-
-    # Check the list of blocks given by a different moderator
-    get user_blocks_by_path(second_moderator_user)
-    assert_response :success
-    assert_select "h1 a[href='#{user_path second_moderator_user}']", :text => second_moderator_user.display_name
-    assert_select "table#block_list tbody", :count => 1 do
-      assert_select "tr", 2
-      assert_select "a[href='#{user_block_path(expired_block)}']", 1
-      assert_select "a[href='#{user_block_path(revoked_block)}']", 1
-    end
-
-    # Check the list of blocks (not) given by a normal user
-    get user_blocks_by_path(normal_user)
-    assert_response :success
-    assert_select "table#block_list", false
-    assert_select "p", "#{normal_user.display_name} has not made any blocks yet."
-  end
-
-  ##
-  # test the blocks_by action with multiple pages
-  def test_blocks_by_paged
-    user = create(:moderator_user)
-    user_blocks = create_list(:user_block, 50, :creator => user).reverse
-    next_path = user_blocks_by_path(user)
-
-    get next_path
-    assert_response :success
-    check_user_blocks_table user_blocks[0...20]
-    check_no_page_link "Newer Blocks"
-    next_path = check_page_link "Older Blocks"
-
-    get next_path
-    assert_response :success
-    check_user_blocks_table user_blocks[20...40]
-    check_page_link "Newer Blocks"
-    next_path = check_page_link "Older Blocks"
-
-    get next_path
-    assert_response :success
-    check_user_blocks_table user_blocks[40...50]
-    check_page_link "Newer Blocks"
-    check_no_page_link "Older Blocks"
-  end
-
-  ##
-  # test the blocks_by action with invalid pages
-  def test_blocks_by_invalid_paged
-    user = create(:moderator_user)
-
-    %w[-1 0 fred].each do |id|
-      get user_blocks_by_path(user, :before => id)
-      assert_redirected_to :controller => :errors, :action => :bad_request
-
-      get user_blocks_by_path(user, :after => id)
-      assert_redirected_to :controller => :errors, :action => :bad_request
-    end
-  end
-
   private
 
   def check_block_buttons(block, edit: 0)
@@ -1025,23 +770,4 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest
     assert_equal "Updated Reason Again", block.reason
     assert_equal original_ends_at, block.ends_at
   end
-
-  def check_user_blocks_table(user_blocks)
-    assert_dom "table#block_list tbody tr" do |rows|
-      assert_equal user_blocks.count, rows.count, "unexpected number of rows in user blocks table"
-      rows.zip(user_blocks).map do |row, user_block|
-        assert_dom row, "a[href='#{user_block_path user_block}']", 1
-      end
-    end
-  end
-
-  def check_no_page_link(name)
-    assert_select "a.page-link", { :text => /#{Regexp.quote(name)}/, :count => 0 }, "unexpected #{name} page link"
-  end
-
-  def check_page_link(name)
-    assert_select "a.page-link", { :text => /#{Regexp.quote(name)}/ }, "missing #{name} page link" do |buttons|
-      return buttons.first.attributes["href"].value
-    end
-  end
 end
diff --git a/test/controllers/users/issued_blocks_controller_test.rb b/test/controllers/users/issued_blocks_controller_test.rb
new file mode 100644 (file)
index 0000000..4fab264
--- /dev/null
@@ -0,0 +1,95 @@
+require "test_helper"
+require_relative "../user_blocks/table_test_helper"
+
+module Users
+  class IssuedBlocksControllerTest < ActionDispatch::IntegrationTest
+    include UserBlocks::TableTestHelper
+
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/user/username/blocks_by", :method => :get },
+        { :controller => "users/issued_blocks", :action => "show", :user_display_name => "username" }
+      )
+    end
+
+    def test_show
+      moderator_user = create(:moderator_user)
+      second_moderator_user = create(:moderator_user)
+      normal_user = create(:user)
+      active_block = create(:user_block, :creator => moderator_user)
+      expired_block = create(:user_block, :expired, :creator => second_moderator_user)
+      revoked_block = create(:user_block, :revoked, :creator => second_moderator_user)
+
+      # Asking for a list of blocks with a bogus user name should fail
+      get user_issued_blocks_path("non_existent_user")
+      assert_response :not_found
+      assert_template "users/no_such_user"
+      assert_select "h1", "The user non_existent_user does not exist"
+
+      # Check the list of blocks given by one moderator
+      get user_issued_blocks_path(moderator_user)
+      assert_response :success
+      assert_select "h1 a[href='#{user_path moderator_user}']", :text => moderator_user.display_name
+      assert_select "a.active[href='#{user_issued_blocks_path moderator_user}']"
+      assert_select "table#block_list tbody", :count => 1 do
+        assert_select "tr", 1
+        assert_select "a[href='#{user_block_path(active_block)}']", 1
+      end
+
+      # Check the list of blocks given by a different moderator
+      get user_issued_blocks_path(second_moderator_user)
+      assert_response :success
+      assert_select "h1 a[href='#{user_path second_moderator_user}']", :text => second_moderator_user.display_name
+      assert_select "a.active[href='#{user_issued_blocks_path second_moderator_user}']"
+      assert_select "table#block_list tbody", :count => 1 do
+        assert_select "tr", 2
+        assert_select "a[href='#{user_block_path(expired_block)}']", 1
+        assert_select "a[href='#{user_block_path(revoked_block)}']", 1
+      end
+
+      # Check the list of blocks (not) given by a normal user
+      get user_issued_blocks_path(normal_user)
+      assert_response :success
+      assert_select "table#block_list", false
+      assert_select "p", "#{normal_user.display_name} has not made any blocks yet."
+    end
+
+    def test_show_paged
+      user = create(:moderator_user)
+      user_blocks = create_list(:user_block, 50, :creator => user).reverse
+      next_path = user_issued_blocks_path(user)
+
+      get next_path
+      assert_response :success
+      check_user_blocks_table user_blocks[0...20]
+      check_no_page_link "Newer Blocks"
+      next_path = check_page_link "Older Blocks"
+
+      get next_path
+      assert_response :success
+      check_user_blocks_table user_blocks[20...40]
+      check_page_link "Newer Blocks"
+      next_path = check_page_link "Older Blocks"
+
+      get next_path
+      assert_response :success
+      check_user_blocks_table user_blocks[40...50]
+      check_page_link "Newer Blocks"
+      check_no_page_link "Older Blocks"
+    end
+
+    def test_show_invalid_paged
+      user = create(:moderator_user)
+
+      %w[-1 0 fred].each do |id|
+        get user_issued_blocks_path(user, :before => id)
+        assert_redirected_to :controller => "/errors", :action => :bad_request
+
+        get user_issued_blocks_path(user, :after => id)
+        assert_redirected_to :controller => "/errors", :action => :bad_request
+      end
+    end
+  end
+end
diff --git a/test/controllers/users/received_blocks_controller_test.rb b/test/controllers/users/received_blocks_controller_test.rb
new file mode 100644 (file)
index 0000000..a48a7e2
--- /dev/null
@@ -0,0 +1,179 @@
+require "test_helper"
+require_relative "../user_blocks/table_test_helper"
+
+module Users
+  class ReceivedBlocksControllerTest < ActionDispatch::IntegrationTest
+    include UserBlocks::TableTestHelper
+
+    ##
+    # test all routes which lead to this controller
+    def test_routes
+      assert_routing(
+        { :path => "/user/username/blocks", :method => :get },
+        { :controller => "users/received_blocks", :action => "show", :user_display_name => "username" }
+      )
+      assert_routing(
+        { :path => "/user/username/blocks/edit", :method => :get },
+        { :controller => "users/received_blocks", :action => "edit", :user_display_name => "username" }
+      )
+      assert_routing(
+        { :path => "/user/username/blocks", :method => :delete },
+        { :controller => "users/received_blocks", :action => "destroy", :user_display_name => "username" }
+      )
+    end
+
+    def test_show
+      blocked_user = create(:user)
+      unblocked_user = create(:user)
+      normal_user = create(:user)
+      active_block = create(:user_block, :user => blocked_user)
+      revoked_block = create(:user_block, :revoked, :user => blocked_user)
+      expired_block = create(:user_block, :expired, :user => unblocked_user)
+
+      # Asking for a list of blocks with a bogus user name should fail
+      get user_received_blocks_path("non_existent_user")
+      assert_response :not_found
+      assert_template "users/no_such_user"
+      assert_select "h1", "The user non_existent_user does not exist"
+
+      # Check the list of blocks for a user that has never been blocked
+      get user_received_blocks_path(normal_user)
+      assert_response :success
+      assert_select "table#block_list", false
+      assert_select "p", "#{normal_user.display_name} has not been blocked yet."
+
+      # Check the list of blocks for a user that is currently blocked
+      get user_received_blocks_path(blocked_user)
+      assert_response :success
+      assert_select "h1 a[href='#{user_path blocked_user}']", :text => blocked_user.display_name
+      assert_select "a.active[href='#{user_received_blocks_path blocked_user}']"
+      assert_select "table#block_list tbody", :count => 1 do
+        assert_select "tr", 2
+        assert_select "a[href='#{user_block_path(active_block)}']", 1
+        assert_select "a[href='#{user_block_path(revoked_block)}']", 1
+      end
+
+      # Check the list of blocks for a user that has previously been blocked
+      get user_received_blocks_path(unblocked_user)
+      assert_response :success
+      assert_select "h1 a[href='#{user_path unblocked_user}']", :text => unblocked_user.display_name
+      assert_select "a.active[href='#{user_received_blocks_path unblocked_user}']"
+      assert_select "table#block_list tbody", :count => 1 do
+        assert_select "tr", 1
+        assert_select "a[href='#{user_block_path(expired_block)}']", 1
+      end
+    end
+
+    def test_show_paged
+      user = create(:user)
+      user_blocks = create_list(:user_block, 50, :user => user).reverse
+      next_path = user_received_blocks_path(user)
+
+      get next_path
+      assert_response :success
+      check_user_blocks_table user_blocks[0...20]
+      check_no_page_link "Newer Blocks"
+      next_path = check_page_link "Older Blocks"
+
+      get next_path
+      assert_response :success
+      check_user_blocks_table user_blocks[20...40]
+      check_page_link "Newer Blocks"
+      next_path = check_page_link "Older Blocks"
+
+      get next_path
+      assert_response :success
+      check_user_blocks_table user_blocks[40...50]
+      check_page_link "Newer Blocks"
+      check_no_page_link "Older Blocks"
+    end
+
+    def test_show_invalid_paged
+      user = create(:user)
+
+      %w[-1 0 fred].each do |id|
+        get user_received_blocks_path(user, :before => id)
+        assert_redirected_to :controller => "/errors", :action => :bad_request
+
+        get user_received_blocks_path(user, :after => id)
+        assert_redirected_to :controller => "/errors", :action => :bad_request
+      end
+    end
+
+    ##
+    # test the revoke all blocks page
+    def test_edit
+      blocked_user = create(:user)
+      create(:user_block, :user => blocked_user)
+
+      # Asking for the revoke all blocks page with a bogus user name should fail
+      get user_received_blocks_path("non_existent_user")
+      assert_response :not_found
+
+      # Check that the revoke all blocks page requires us to login
+      get edit_user_received_blocks_path(blocked_user)
+      assert_redirected_to login_path(:referer => edit_user_received_blocks_path(blocked_user))
+
+      # Login as a normal user
+      session_for(create(:user))
+
+      # Check that normal users can't load the revoke all blocks page
+      get edit_user_received_blocks_path(blocked_user)
+      assert_redirected_to :controller => "/errors", :action => "forbidden"
+
+      # Login as a moderator
+      session_for(create(:moderator_user))
+
+      # Check that the revoke all blocks page loads for moderators
+      get edit_user_received_blocks_path(blocked_user)
+      assert_response :success
+      assert_select "h1 a[href='#{user_path blocked_user}']", :text => blocked_user.display_name
+    end
+
+    ##
+    # test the revoke all action
+    def test_destroy
+      blocked_user = create(:user)
+      active_block1 = create(:user_block, :user => blocked_user)
+      active_block2 = create(:user_block, :user => blocked_user)
+      expired_block1 = create(:user_block, :expired, :user => blocked_user)
+      blocks = [active_block1, active_block2, expired_block1]
+      moderator_user = create(:moderator_user)
+
+      assert_predicate active_block1, :active?
+      assert_predicate active_block2, :active?
+      assert_not_predicate expired_block1, :active?
+
+      # Check that normal users can't revoke all blocks
+      session_for(create(:user))
+      delete user_received_blocks_path(blocked_user, :confirm => true)
+      assert_redirected_to :controller => "/errors", :action => "forbidden"
+
+      blocks.each(&:reload)
+      assert_predicate active_block1, :active?
+      assert_predicate active_block2, :active?
+      assert_not_predicate expired_block1, :active?
+
+      # Check that confirmation is required
+      session_for(moderator_user)
+      delete user_received_blocks_path(blocked_user)
+
+      blocks.each(&:reload)
+      assert_predicate active_block1, :active?
+      assert_predicate active_block2, :active?
+      assert_not_predicate expired_block1, :active?
+
+      # Check that moderators can revoke all blocks
+      delete user_received_blocks_path(blocked_user, :confirm => true)
+      assert_redirected_to user_received_blocks_path(blocked_user)
+
+      blocks.each(&:reload)
+      assert_not_predicate active_block1, :active?
+      assert_not_predicate active_block2, :active?
+      assert_not_predicate expired_block1, :active?
+      assert_equal moderator_user, active_block1.revoker
+      assert_equal moderator_user, active_block2.revoker
+      assert_not_equal moderator_user, expired_block1.revoker
+    end
+  end
+end
index 732745539a6e3945a985332b766ae0b2c2cd9258..9ffa6695d97ab80dc5327f3105cfeef4dac7a6e7 100644 (file)
@@ -10,20 +10,10 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     )
 
     assert_routing(
-      { :path => "/user/new", :method => :post },
+      { :path => "/user", :method => :post },
       { :controller => "users", :action => "create" }
     )
 
-    assert_routing(
-      { :path => "/user/terms", :method => :get },
-      { :controller => "users", :action => "terms" }
-    )
-
-    assert_routing(
-      { :path => "/user/save", :method => :post },
-      { :controller => "users", :action => "save" }
-    )
-
     assert_routing(
       { :path => "/user/go_public", :method => :post },
       { :controller => "users", :action => "go_public" }
@@ -50,20 +40,22 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
   end
 
   # The user creation page loads
-  def test_new_view
-    get user_new_path
-    assert_redirected_to user_new_path(:cookie_test => "true")
+  def test_new
+    get new_user_path
+    assert_redirected_to new_user_path(:cookie_test => "true")
 
-    get user_new_path, :params => { :cookie_test => "true" }
+    get new_user_path, :params => { :cookie_test => "true" }
     assert_response :success
 
+    assert_no_match(/img-src \* data:;/, @response.headers["Content-Security-Policy-Report-Only"])
+
     assert_select "html", :count => 1 do
       assert_select "head", :count => 1 do
         assert_select "title", :text => /Sign Up/, :count => 1
       end
       assert_select "body", :count => 1 do
         assert_select "div#content", :count => 1 do
-          assert_select "form[action='/user/new'][method='post']", :count => 1 do
+          assert_select "form[action='/user'][method='post']", :count => 1 do
             assert_select "input[id='user_email']", :count => 1
             assert_select "input[id='user_display_name']", :count => 1
             assert_select "input[id='user_pass_crypt'][type='password']", :count => 1
@@ -75,23 +67,23 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     end
   end
 
-  def test_new_view_logged_in
+  def test_new_logged_in
     session_for(create(:user))
 
-    get user_new_path
+    get new_user_path
     assert_redirected_to root_path
 
-    get user_new_path, :params => { :referer => "/test" }
+    get new_user_path, :params => { :referer => "/test" }
     assert_redirected_to "/test"
   end
 
-  def test_new_success
+  def test_create_success
     user = build(:user, :pending)
 
     assert_difference "User.count", 1 do
       assert_difference "ActionMailer::Base.deliveries.size", 1 do
         perform_enqueued_jobs do
-          post user_new_path, :params => { :user => user.attributes }
+          post users_path, :params => { :user => user.attributes }
         end
       end
     end
@@ -108,14 +100,14 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     ActionMailer::Base.deliveries.clear
   end
 
-  def test_new_duplicate_email
+  def test_create_duplicate_email
     user = build(:user, :pending)
     create(:user, :email => user.email)
 
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post user_new_path, :params => { :user => user.attributes }
+          post users_path, :params => { :user => user.attributes }
         end
       end
     end
@@ -125,14 +117,14 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     assert_select "form > div > input.is-invalid#user_email"
   end
 
-  def test_new_duplicate_email_uppercase
+  def test_create_duplicate_email_uppercase
     user = build(:user, :pending)
     create(:user, :email => user.email.upcase)
 
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post user_new_path, :params => { :user => user.attributes }
+          post users_path, :params => { :user => user.attributes }
         end
       end
     end
@@ -142,14 +134,14 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     assert_select "form > div > input.is-invalid#user_email"
   end
 
-  def test_new_duplicate_name
+  def test_create_duplicate_name
     user = build(:user, :pending)
     create(:user, :display_name => user.display_name)
 
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post user_new_path, :params => { :user => user.attributes }
+          post users_path, :params => { :user => user.attributes }
         end
       end
     end
@@ -159,14 +151,14 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     assert_select "form > div > input.is-invalid#user_display_name"
   end
 
-  def test_new_duplicate_name_uppercase
+  def test_create_duplicate_name_uppercase
     user = build(:user, :pending)
     create(:user, :display_name => user.display_name.upcase)
 
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post user_new_path, :params => { :user => user.attributes }
+          post users_path, :params => { :user => user.attributes }
         end
       end
     end
@@ -176,7 +168,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     assert_select "form > div > input.is-invalid#user_display_name"
   end
 
-  def test_new_blocked_domain
+  def test_create_blocked_domain
     user = build(:user, :pending, :email => "user@example.net")
 
     # Now block that domain
@@ -186,7 +178,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post user_new_path, :params => { :user => user.attributes }
+          post users_path, :params => { :user => user.attributes }
         end
       end
     end
@@ -195,12 +187,12 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     assert_template "blocked"
   end
 
-  def test_save_referer_params
+  def test_create_referer_params
     user = build(:user, :pending)
 
     assert_difference "User.count", 1 do
       assert_difference "ActionMailer::Base.deliveries.size", 1 do
-        post user_new_path, :params => { :user => user.attributes, :referer => "/edit?editor=id#map=1/2/3" }
+        post users_path, :params => { :user => user.attributes, :referer => "/edit?editor=id#map=1/2/3" }
         assert_enqueued_with :job => ActionMailer::MailDeliveryJob,
                              :args => proc { |args| args[3][:args][2] == welcome_path(:editor => "id", :zoom => 1, :lat => 2, :lon => 3) }
         perform_enqueued_jobs
@@ -210,71 +202,6 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
     ActionMailer::Base.deliveries.clear
   end
 
-  def test_terms_agreed
-    user = create(:user, :terms_seen => true, :terms_agreed => Date.yesterday)
-
-    session_for(user)
-
-    get user_terms_path
-    assert_redirected_to edit_account_path
-  end
-
-  def test_terms_not_seen_without_referer
-    user = create(:user, :terms_seen => false, :terms_agreed => nil)
-
-    session_for(user)
-
-    get user_terms_path
-    assert_response :success
-    assert_template :terms
-
-    post user_save_path, :params => { :user => { :consider_pd => true }, :read_ct => 1, :read_tou => 1 }
-    assert_redirected_to edit_account_path
-    assert_equal "Thanks for accepting the new contributor terms!", flash[:notice]
-
-    user.reload
-
-    assert user.consider_pd
-    assert_not_nil user.terms_agreed
-    assert user.terms_seen
-  end
-
-  def test_terms_not_seen_with_referer
-    user = create(:user, :terms_seen => false, :terms_agreed => nil)
-
-    session_for(user)
-
-    get user_terms_path, :params => { :referer => "/test" }
-    assert_response :success
-    assert_template :terms
-
-    post user_save_path, :params => { :user => { :consider_pd => true }, :referer => "/test", :read_ct => 1, :read_tou => 1 }
-    assert_redirected_to "/test"
-    assert_equal "Thanks for accepting the new contributor terms!", flash[:notice]
-
-    user.reload
-
-    assert user.consider_pd
-    assert_not_nil user.terms_agreed
-    assert user.terms_seen
-  end
-
-  # Check that if you haven't seen the terms, and make a request that requires authentication,
-  # that your request is redirected to view the terms
-  def test_terms_not_seen_redirection
-    user = create(:user, :terms_seen => false, :terms_agreed => nil)
-    session_for(user)
-
-    get edit_account_path
-    assert_redirected_to :controller => :users, :action => :terms, :referer => "/account/edit"
-  end
-
-  def test_terms_not_logged_in
-    get user_terms_path
-
-    assert_redirected_to login_path(:referer => "/user/terms")
-  end
-
   def test_go_public
     user = create(:user, :data_public => false)
     session_for(user)
@@ -297,6 +224,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
 
     get user_path(user)
     assert_response :success
+    assert_match(/img-src \* data:;/, @response.headers["Content-Security-Policy-Report-Only"])
     assert_select "div.content-heading" do
       assert_select "a[href^='/user/#{ERB::Util.u(user.display_name)}/history']", 1
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/traces']", 1
@@ -305,7 +233,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/account']", 0
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/blocks']", 0
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/blocks_by']", 0
-      assert_select "a[href='/blocks/new/#{ERB::Util.u(user.display_name)}']", 0
+      assert_select "a[href='/user_blocks/new/#{ERB::Util.u(user.display_name)}']", 0
     end
 
     # Test a user who has been blocked
@@ -321,7 +249,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
       assert_select "a[href='/user/#{ERB::Util.u(blocked_user.display_name)}/account']", 0
       assert_select "a[href='/user/#{ERB::Util.u(blocked_user.display_name)}/blocks']", 1
       assert_select "a[href='/user/#{ERB::Util.u(blocked_user.display_name)}/blocks_by']", 0
-      assert_select "a[href='/blocks/new/#{ERB::Util.u(blocked_user.display_name)}']", 0
+      assert_select "a[href='/user_blocks/new/#{ERB::Util.u(blocked_user.display_name)}']", 0
     end
 
     # Test a moderator who has applied blocks
@@ -337,7 +265,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
       assert_select "a[href='/user/#{ERB::Util.u(moderator_user.display_name)}/account']", 0
       assert_select "a[href='/user/#{ERB::Util.u(moderator_user.display_name)}/blocks']", 0
       assert_select "a[href='/user/#{ERB::Util.u(moderator_user.display_name)}/blocks_by']", 1
-      assert_select "a[href='/blocks/new/#{ERB::Util.u(moderator_user.display_name)}']", 0
+      assert_select "a[href='/user_blocks/new/#{ERB::Util.u(moderator_user.display_name)}']", 0
     end
 
     # Login as a normal user
@@ -354,7 +282,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
       assert_select "a[href='/account/edit']", 1
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/blocks']", 0
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/blocks_by']", 0
-      assert_select "a[href='/blocks/new/#{ERB::Util.u(user.display_name)}']", 0
+      assert_select "a[href='/user_blocks/new/#{ERB::Util.u(user.display_name)}']", 0
       assert_select "a[href='/api/0.6/user/#{ERB::Util.u(user.id)}']", 0
     end
 
@@ -372,7 +300,7 @@ class UsersControllerTest < ActionDispatch::IntegrationTest
       assert_select "a[href='/account/edit']", 0
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/blocks']", 0
       assert_select "a[href='/user/#{ERB::Util.u(user.display_name)}/blocks_by']", 0
-      assert_select "a[href='/blocks/new/#{ERB::Util.u(user.display_name)}']", 1
+      assert_select "a[href='/user_blocks/new/#{ERB::Util.u(user.display_name)}']", 1
       assert_select "a[href='/api/0.6/user/#{ERB::Util.u(user.id)}']", 1
     end
   end
index 995004cb4179236a95c8998263b90e872ae9366b..5b80a070cffcd7ef0e7d04f43b5561ccea6d9c93 100644 (file)
@@ -12,7 +12,7 @@ class WaysControllerTest < ActionDispatch::IntegrationTest
 
   def test_show
     way = create(:way)
-    sidebar_browse_check :way_path, way.id, "browse/feature"
+    sidebar_browse_check :way_path, way.id, "elements/show"
     assert_select "h4", /^Version/ do
       assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1
     end
@@ -23,7 +23,7 @@ class WaysControllerTest < ActionDispatch::IntegrationTest
 
   def test_show_multiple_versions
     way = create(:way, :with_history, :version => 2)
-    sidebar_browse_check :way_path, way.id, "browse/feature"
+    sidebar_browse_check :way_path, way.id, "elements/show"
     assert_select ".secondary-actions a[href='#{way_history_path way}']", :count => 1
     assert_select ".secondary-actions a[href='#{old_way_path way, 1}']", :count => 1
     assert_select ".secondary-actions a[href='#{old_way_path way, 2}']", :count => 1
@@ -33,7 +33,7 @@ class WaysControllerTest < ActionDispatch::IntegrationTest
     member = create(:way)
     relation = create(:relation)
     create(:relation_member, :relation => relation, :member => member)
-    sidebar_browse_check :way_path, member.id, "browse/feature"
+    sidebar_browse_check :way_path, member.id, "elements/show"
     assert_select "a[href='#{relation_path relation}']", :count => 1
   end
 
index db4fd87a49a8d9672bd0785437f64f0cc5b1ca28..d308f46ead1cc04cc9dbf0ed806a431824f0ce2d 100644 (file)
@@ -14,6 +14,63 @@ class UserBlocksHelperTest < ActionView::TestCase
     assert_match %r{^Ends in <time title=".* datetime=".*">about 1 hour</time>\.$}, block_status(block)
   end
 
+  def test_block_short_status
+    freeze_time do
+      future_end_block = create(:user_block, :ends_at => Time.now.utc + 48.hours)
+      unread_future_end_block = create(:user_block, :needs_view, :ends_at => Time.now.utc + 48.hours)
+      past_end_block = create(:user_block, :ends_at => Time.now.utc + 1.hour)
+      unread_past_end_block = create(:user_block, :needs_view, :ends_at => Time.now.utc + 1.hour)
+
+      travel 24.hours
+
+      assert_equal "active", block_short_status(future_end_block)
+      assert_equal "active", block_short_status(unread_future_end_block)
+      assert_equal "ended", block_short_status(past_end_block)
+      assert_equal "active until read", block_short_status(unread_past_end_block)
+    end
+  end
+
+  def test_block_short_status_with_immediate_update
+    freeze_time do
+      block = UserBlock.new :user => create(:user),
+                            :creator => create(:moderator_user),
+                            :reason => "because",
+                            :created_at => Time.now.utc,
+                            :ends_at => Time.now.utc,
+                            :deactivates_at => Time.now.utc,
+                            :needs_view => false
+
+      travel 1.second
+
+      block.save
+
+      assert_equal "ended", block_short_status(block)
+    end
+  end
+
+  def test_block_short_status_read
+    freeze_time do
+      block = create(:user_block, :needs_view, :ends_at => Time.now.utc)
+
+      travel 24.hours
+
+      assert_equal "active until read", block_short_status(block)
+
+      block.update(:needs_view => false, :deactivates_at => Time.now.utc)
+
+      read_date = Time.now.utc.to_date.strftime
+      short_status_dom = Rails::Dom::Testing.html_document.parse(block_short_status(block))
+      assert_dom short_status_dom, ":root", :text => "read at #{read_date}"
+
+      travel 24.hours
+
+      block.update(:reason => "updated reason")
+
+      short_status_dom = Rails::Dom::Testing.html_document.parse(block_short_status(block))
+      assert_dom short_status_dom, ":root", :text => "read at #{read_date}"
+    end
+  end
+
   def test_block_duration_in_words
     words = block_duration_in_words(364.days)
     assert_equal "11 months", words
index f75fde75e197be59b835632b71781f3cc7ab93ff..1a53f62daadea43a37615c63777b23edfce4ab7e 100644 (file)
@@ -30,7 +30,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count", 0) do
       assert_difference("ActionMailer::Base.deliveries.size", 0) do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => dup_email,
                                        :display_name => display_name,
                                        :pass_crypt => "testtest",
@@ -51,7 +51,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count", 0) do
       assert_no_difference("ActionMailer::Base.deliveries.size") do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => dup_email,
                                        :display_name => display_name,
                                        :pass_crypt => "testtest",
@@ -74,7 +74,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count", 0) do
       assert_difference("ActionMailer::Base.deliveries.size", 0) do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => email,
                                        :display_name => dup_display_name,
                                        :pass_crypt => "testtest",
@@ -93,7 +93,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count", 0) do
       assert_difference("ActionMailer::Base.deliveries.size", 0) do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => email,
                                        :display_name => display_name,
                                        :pass_crypt => "testtest",
@@ -113,7 +113,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count", 0) do
       assert_no_difference("ActionMailer::Base.deliveries.size") do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => email,
                                        :display_name => dup_display_name,
                                        :auth_provider => "google",
@@ -134,7 +134,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count", 1) do
       assert_difference("ActionMailer::Base.deliveries.size", 1) do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :pass_crypt => "testtest",
@@ -188,7 +188,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     assert_difference("User.count") do
       assert_difference("ActionMailer::Base.deliveries.size", 1) do
         perform_enqueued_jobs do
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :pass_crypt => password,
@@ -250,7 +250,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_redirected_to :controller => :users, :action => "new", :nickname => display_name, :email => new_email,
                                :auth_provider => "openid", :auth_uid => auth_uid
           follow_redirect!
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "openid",
@@ -326,7 +326,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_redirected_to :controller => :users, :action => "new", :nickname => display_name, :email => new_email,
                                :auth_provider => "openid", :auth_uid => auth_uid
           follow_redirect!
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "openid",
@@ -388,7 +388,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :auth_provider => "google", :auth_uid => auth_uid
           follow_redirect!
 
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "google",
@@ -474,7 +474,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :email => orig_email, :email_hmac => email_hmac,
                                :auth_provider => "google", :auth_uid => auth_uid
           follow_redirect!
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :email_hmac => email_hmac,
                                        :display_name => display_name,
@@ -537,7 +537,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :auth_provider => "facebook", :auth_uid => auth_uid
           follow_redirect!
 
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "facebook",
@@ -623,7 +623,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :auth_provider => "facebook", :auth_uid => auth_uid
           follow_redirect!
 
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :email_hmac => email_hmac,
                                        :display_name => display_name,
@@ -685,7 +685,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :email => new_email, :email_hmac => email_hmac,
                                :auth_provider => "microsoft", :auth_uid => auth_uid
           follow_redirect!
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "microsoft",
@@ -770,7 +770,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :auth_provider => "microsoft", :auth_uid => auth_uid
           follow_redirect!
 
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :email_hmac => email_hmac,
                                        :display_name => display_name,
@@ -834,7 +834,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :auth_provider => "github", :auth_uid => auth_uid
           follow_redirect!
 
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "github",
@@ -921,7 +921,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :email => orig_email, :email_hmac => email_hmac,
                                :auth_provider => "github", :auth_uid => auth_uid
           follow_redirect!
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :email_hmac => email_hmac,
                                        :display_name => display_name,
@@ -984,7 +984,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :email => new_email, :email_hmac => email_hmac,
                                :auth_provider => "wikipedia", :auth_uid => auth_uid
           follow_redirect!
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :display_name => display_name,
                                        :auth_provider => "wikipedia",
@@ -1071,7 +1071,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                                :auth_provider => "wikipedia", :auth_uid => auth_uid
           follow_redirect!
 
-          post "/user/new",
+          post "/user",
                :params => { :user => { :email => new_email,
                                        :email_hmac => email_hmac,
                                        :display_name => display_name,
index d419003d9bcab15283570fa0817a540da1086c8b..5e08fedd9a8bc752e5110d26b31274fc96d4abf7 100644 (file)
@@ -25,12 +25,12 @@ class UserTermsSeenTest < ActionDispatch::IntegrationTest
     assert_template "sessions/new"
     post "/login", :params => { :username => user.email, :password => "test", :referer => "/diary/new" }
     # but now we need to look at the terms
-    assert_redirected_to :controller => :users, :action => :terms, :referer => "/diary/new"
+    assert_redirected_to account_terms_path(:referer => "/diary/new")
     follow_redirect!
     assert_response :success
 
     # don't agree to the terms, but hit decline
-    post "/user/save", :params => { :decline => true, :referer => "/diary/new" }
+    put "/account/terms", :params => { :decline => true, :referer => "/diary/new" }
     assert_redirected_to "/diary/new"
     follow_redirect!
 
@@ -49,13 +49,13 @@ class UserTermsSeenTest < ActionDispatch::IntegrationTest
     assert_template "sessions/new"
     post "/login", :params => { :username => user.email, :password => "test", :referer => "/diary/new" }
     # but now we need to look at the terms
-    assert_redirected_to :controller => :users, :action => :terms, :referer => "/diary/new"
+    assert_redirected_to account_terms_path(:referer => "/diary/new")
 
     # check that if we go somewhere else now, it redirects
     # back to the terms page.
     get "/traces/mine"
-    assert_redirected_to :controller => :users, :action => :terms, :referer => "/traces/mine"
+    assert_redirected_to account_terms_path(:referer => "/traces/mine")
     get "/traces/mine", :params => { :referer => "/diary/new" }
-    assert_redirected_to :controller => :users, :action => :terms, :referer => "/diary/new"
+    assert_redirected_to account_terms_path(:referer => "/diary/new")
   end
 end
index 2a547e752aff6fa901340eee7edc619380eff06e..3b7119ff645ae467a2f29e06ad25d44c4ec5e260 100644 (file)
@@ -15,7 +15,7 @@ class UserMailerTest < ActionMailer::TestCase
     end
     email = UserMailer.gpx_success(trace, 100)
 
-    assert_match("<em>one</em>, <em>two&amp;three</em>, <em>four&lt;five</em>", email.html_part.body.to_s)
+    assert_match("one, two&amp;three, four&lt;five", email.html_part.body.to_s)
     assert_match("one, two&three, four<five", email.text_part.body.to_s)
   end
 
diff --git a/test/system/browse_test.rb b/test/system/browse_test.rb
new file mode 100644 (file)
index 0000000..15dc1cb
--- /dev/null
@@ -0,0 +1,13 @@
+require "application_system_test_case"
+
+class BrowseTest < ApplicationSystemTestCase
+  test "relation member nodes should be visible on the map when viewing relations" do
+    relation = create(:relation)
+    node = create(:node)
+    create(:relation_member, :relation => relation, :member => node)
+
+    visit relation_path(relation)
+
+    assert_selector "#map .leaflet-overlay-pane path"
+  end
+end
diff --git a/test/system/confirmation_resend_test.rb b/test/system/confirmation_resend_test.rb
deleted file mode 100644 (file)
index 6ef8581..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-require "application_system_test_case"
-
-class ConfirmationResendSystemTest < ApplicationSystemTestCase
-  def setup
-    @user = build(:user)
-    visit user_new_path
-
-    within ".new_user" do
-      fill_in "Email", :with => @user.email
-      fill_in "Display Name", :with => @user.display_name
-      fill_in "Password", :with => "testtest"
-      fill_in "Confirm Password", :with => "testtest"
-      click_on "Sign Up"
-    end
-  end
-
-  test "flash message should not contain raw html" do
-    visit user_confirm_resend_path(@user)
-
-    assert_content "sent a new confirmation"
-    assert_no_content "<p>"
-  end
-end
index 435233cbe1f80ea15b824912f92d8bd00a69ef3b..dd13a286f55e3061be1c51bbba764fcc24628ce5 100644 (file)
@@ -1,6 +1,19 @@
 require "application_system_test_case"
 
 class CreateNoteTest < ApplicationSystemTestCase
+  include ActionMailer::TestHelper
+
+  def setup
+    OmniAuth.config.test_mode = true
+
+    stub_request(:get, /.*gravatar.com.*d=404/).to_return(:status => 404)
+  end
+
+  def teardown
+    OmniAuth.config.mock_auth[:google] = nil
+    OmniAuth.config.test_mode = false
+  end
+
   test "can create note" do
     visit new_note_path(:anchor => "map=18/0/0")
 
@@ -15,6 +28,60 @@ class CreateNoteTest < ApplicationSystemTestCase
     end
   end
 
+  test "cannot create new note when zoomed out" do
+    visit new_note_path(:anchor => "map=12/0/0")
+
+    within_sidebar do
+      assert_no_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => true
+
+      fill_in "text", :with => "Some newly added note description"
+
+      assert_no_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => false
+    end
+
+    find(".control-button.zoomout").click
+
+    within_sidebar do
+      assert_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => true
+    end
+
+    find(".control-button.zoomin").click
+
+    within_sidebar do
+      assert_no_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => false
+
+      click_on "Add Note"
+
+      assert_content "Unresolved note ##{Note.last.id}"
+      assert_content "Some newly added note description"
+    end
+  end
+
+  test "can open new note page when zoomed out" do
+    visit new_note_path(:anchor => "map=11/0/0")
+
+    within_sidebar do
+      assert_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => true
+
+      fill_in "text", :with => "Some newly added note description"
+
+      assert_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => true
+    end
+
+    find(".control-button.zoomin").click
+
+    within_sidebar do
+      assert_no_content "Zoom in to add a note"
+      assert_button "Add Note", :disabled => false
+    end
+  end
+
   test "cannot create note when api is readonly" do
     with_settings(:status => "api_readonly") do
       visit new_note_path(:anchor => "map=18/0/0")
@@ -24,4 +91,104 @@ class CreateNoteTest < ApplicationSystemTestCase
       end
     end
   end
+
+  test "encouragement to contribute appears after 10 created notes and disappears after login" do
+    check_encouragement_while_creating_notes(10)
+
+    sign_in_as(create(:user))
+
+    check_no_encouragement_while_logging_out
+  end
+
+  test "encouragement to contribute appears after 10 created notes and disappears after email signup" do
+    check_encouragement_while_creating_notes(10)
+
+    sign_up_with_email
+
+    check_no_encouragement_while_logging_out
+  end
+
+  test "encouragement to contribute appears after 10 created notes and disappears after google signup" do
+    check_encouragement_while_creating_notes(10)
+
+    sign_up_with_google
+
+    check_no_encouragement_while_logging_out
+  end
+
+  private
+
+  def check_encouragement_while_creating_notes(encouragement_threshold)
+    encouragement_threshold.times do |n|
+      visit new_note_path(:anchor => "map=16/0/#{0.001 * n}")
+
+      within_sidebar do
+        assert_no_content(/already posted at least \d+ anonymous note/)
+
+        fill_in "text", :with => "new note ##{n + 1}"
+        click_on "Add Note"
+
+        assert_content "new note ##{n + 1}"
+      end
+    end
+
+    visit new_note_path(:anchor => "map=16/0/#{0.001 * encouragement_threshold}")
+
+    within_sidebar do
+      assert_content(/already posted at least #{encouragement_threshold} anonymous note/)
+    end
+  end
+
+  def check_no_encouragement_while_logging_out
+    visit new_note_path(:anchor => "map=16/0/0")
+
+    within_sidebar do
+      assert_no_content(/already posted at least \d+ anonymous note/)
+    end
+
+    sign_out
+    visit new_note_path(:anchor => "map=16/0/0")
+
+    within_sidebar do
+      assert_no_content(/already posted at least \d+ anonymous note/)
+    end
+  end
+
+  def sign_up_with_email
+    click_on "Sign Up"
+
+    within_content_body do
+      fill_in "Email", :with => "new_user_account@example.com"
+      fill_in "Display Name", :with => "new_user_account"
+      fill_in "Password", :with => "new_user_password"
+      fill_in "Confirm Password", :with => "new_user_password"
+
+      assert_emails 1 do
+        click_on "Sign Up"
+      end
+    end
+
+    email = ActionMailer::Base.deliveries.first
+    email_text = email.parts[0].parts[0].decoded
+    match = %r{/user/new_user_account/confirm\?confirm_string=\S+}.match(email_text)
+    assert_not_nil match
+
+    visit match[0]
+
+    assert_content "Welcome!"
+  end
+
+  def sign_up_with_google
+    OmniAuth.config.add_mock(:google,
+                             :uid => "123454321",
+                             :extra => { :id_info => { :openid_id => "http://localhost:1123/new.tester" } },
+                             :info => { :email => "google_user_account@example.com", :name => "google_user_account" })
+
+    click_on "Sign Up"
+
+    within_content_body do
+      click_on "Log in with Google"
+      click_on "Sign Up"
+    end
+  end
 end
index b78568314166ab4e357f16841008a970848290ad..0b828971895ecacdefb4d3e11e508eaa692a7cf7 100644 (file)
@@ -6,7 +6,7 @@ class MessagesTest < ApplicationSystemTestCase
     create(:message, :recipient => user)
     sign_in_as(user)
 
-    visit inbox_messages_path
+    visit messages_inbox_path
     assert_text "You have 1 new message and 0 old messages"
 
     click_on "Delete"
@@ -18,7 +18,7 @@ class MessagesTest < ApplicationSystemTestCase
     create(:message, :sender => user)
     sign_in_as(user)
 
-    visit outbox_messages_path
+    visit messages_outbox_path
     assert_text "You have 1 sent message"
 
     click_on "Delete"
@@ -32,7 +32,7 @@ class MessagesTest < ApplicationSystemTestCase
     create(:message, :sender => muted_user, :recipient => user)
     sign_in_as(user)
 
-    visit muted_messages_path
+    visit messages_muted_inbox_path
     assert_text "1 muted message"
 
     click_on "Delete"
index e9fa4e7ec48a6c970aaa9710666c461b8276fe34..52fe3bc3dc7d364b90df311e498c63dfd4bc57d9 100644 (file)
@@ -31,7 +31,7 @@ class UserBlocksSystemTest < ApplicationSystemTestCase
     blocked_user = create(:user)
     sign_in_as(create(:moderator_user))
 
-    visit revoke_all_user_blocks_path(blocked_user)
+    visit edit_user_received_blocks_path(blocked_user)
     assert_title "Revoking all blocks on #{blocked_user.display_name}"
     assert_text "Revoking all blocks on #{blocked_user.display_name}"
     assert_no_button "Revoke!"
index 0e02b904f7f44a830fa5d2eba043fef1e7c70ba6..2fb90fc3a41acf81873d53ab3d640bc9b34e1771 100644 (file)
 require "application_system_test_case"
 
 class UserSignupTest < ApplicationSystemTestCase
+  include ActionMailer::TestHelper
+
+  def setup
+    stub_request(:get, /.*gravatar.com.*d=404/).to_return(:status => 404)
+  end
+
+  test "Sign up with confirmation email" do
+    visit root_path
+
+    click_on "Sign Up"
+
+    within_content_body do
+      fill_in "Email", :with => "new_user_account@example.com"
+      fill_in "Display Name", :with => "new_user_account"
+      fill_in "Password", :with => "new_user_password"
+      fill_in "Confirm Password", :with => "new_user_password"
+
+      assert_emails 1 do
+        click_on "Sign Up"
+
+        assert_content "We sent you a confirmation email"
+      end
+    end
+
+    email = ActionMailer::Base.deliveries.first
+    assert_equal 1, email.to.count
+    assert_equal "new_user_account@example.com", email.to.first
+    email_text = email.parts[0].parts[0].decoded
+    match = %r{/user/new_user_account/confirm\?confirm_string=\S+}.match(email_text)
+    assert_not_nil match
+
+    visit match[0]
+
+    assert_content "new_user_account"
+    assert_content "Welcome!"
+  end
+
+  test "Sign up with confirmation email resending" do
+    visit root_path
+
+    click_on "Sign Up"
+
+    within_content_body do
+      fill_in "Email", :with => "new_user_account@example.com"
+      fill_in "Display Name", :with => "new_user_account"
+      fill_in "Password", :with => "new_user_password"
+      fill_in "Confirm Password", :with => "new_user_password"
+
+      assert_emails 2 do
+        click_on "Sign Up"
+
+        assert_content "We sent you a confirmation email"
+
+        click_on "Resend the confirmation email"
+
+        assert_content "Email Address or Username"
+      end
+    end
+
+    assert_content "sent a new confirmation"
+    assert_no_content "<p>"
+
+    email = ActionMailer::Base.deliveries.last
+    assert_equal 1, email.to.count
+    assert_equal "new_user_account@example.com", email.to.first
+    email_text = email.parts[0].parts[0].decoded
+    match = %r{/user/new_user_account/confirm\?confirm_string=\S+}.match(email_text)
+    assert_not_nil match
+
+    visit match[0]
+
+    assert_content "new_user_account"
+    assert_content "Welcome!"
+  end
+
   test "Sign up from login page" do
     visit login_path
 
     click_on "Sign up"
 
-    assert_content "Confirm Password"
+    within_content_body do
+      assert_content "Confirm Password"
+    end
   end
 
   test "Show OpenID form when OpenID provider button is clicked" do
     visit login_path
 
-    assert_no_field "OpenID URL"
-    assert_no_button "Continue"
+    within_content_body do
+      assert_no_field "OpenID URL"
+      assert_no_button "Continue"
 
-    click_on "Log in with OpenID"
+      click_on "Log in with OpenID"
 
-    assert_field "OpenID URL"
-    assert_button "Continue"
+      assert_field "OpenID URL"
+      assert_button "Continue"
+    end
   end
 end
index 0e51f34086a974478e44550921495494ba9f5359..840b1a4c87b98ec779422877c179df6448ae983c 100644 (file)
@@ -44,6 +44,14 @@ L.OSM.TransportMap = L.OSM.TileLayer.extend({
   }
 });
 
+L.OSM.TransportDarkMap = L.OSM.TileLayer.extend({
+  options: {
+    url: 'https://{s}.tile.thunderforest.com/transport-dark/{z}/{x}/{y}{r}.png?apikey={apikey}',
+    maxZoom: 21,
+    attribution: '© <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors. Tiles courtesy of <a href="http://www.thunderforest.com/" target="_blank">Andy Allan</a>'
+  }
+});
+
 L.OSM.OPNVKarte = L.OSM.TileLayer.extend({
   options: {
     url: 'https://tileserver.memomaps.de/tilegen/{z}/{x}/{y}.png',
@@ -82,7 +90,8 @@ L.OSM.DataLayer = L.FeatureGroup.extend({
   options: {
     areaTags: ['area', 'building', 'leisure', 'tourism', 'ruins', 'historic', 'landuse', 'military', 'natural', 'sport'],
     uninterestingTags: ['source', 'source_ref', 'source:ref', 'history', 'attribution', 'created_by', 'tiger:county', 'tiger:tlid', 'tiger:upload_uuid'],
-    styles: {}
+    styles: {},
+    asynchronous: false,
   },
 
   initialize: function (xml, options) {
@@ -101,7 +110,7 @@ L.OSM.DataLayer = L.FeatureGroup.extend({
     }
 
     for (var i = 0; i < features.length; i++) {
-      var feature = features[i], layer;
+      let feature = features[i], layer;
 
       if (feature.type === "changeset") {
         layer = L.rectangle(feature.latLngBounds, this.options.styles.changeset);
@@ -122,7 +131,12 @@ L.OSM.DataLayer = L.FeatureGroup.extend({
         }
       }
 
-      layer.addTo(this);
+      if (this.options.asynchronous) {
+        setTimeout(() => layer.addTo(this));
+      } else {
+        layer.addTo(this);
+      }
+
       layer.feature = feature;
     }
   },
@@ -133,9 +147,25 @@ L.OSM.DataLayer = L.FeatureGroup.extend({
       ways = L.OSM.getWays(xml, nodes),
       relations = L.OSM.getRelations(xml, nodes, ways);
 
+    var wayNodes = {}
+    for (var i = 0; i < ways.length; i++) {
+      var way = ways[i];
+      for (var j = 0; j < way.nodes.length; j++) {
+        wayNodes[way.nodes[j].id] = true
+      }
+    }
+
+    var relationNodes = {}
+    for (var i = 0; i < relations.length; i++){
+      var relation = relations[i];
+      for (var j = 0; j < relation.members.length; j++) {
+        relationNodes[relation.members[j].id] = true
+      }
+    }
+
     for (var node_id in nodes) {
       var node = nodes[node_id];
-      if (this.interestingNode(node, ways, relations)) {
+      if (this.interestingNode(node, wayNodes, relationNodes)) {
         features.push(node);
       }
     }
@@ -162,23 +192,9 @@ L.OSM.DataLayer = L.FeatureGroup.extend({
     return false;
   },
 
-  interestingNode: function (node, ways, relations) {
-    var used = false;
-
-    for (var i = 0; i < ways.length; i++) {
-      if (ways[i].nodes.indexOf(node) >= 0) {
-        used = true;
-        break;
-      }
-    }
-
-    if (!used) {
-      return true;
-    }
-
-    for (var i = 0; i < relations.length; i++) {
-      if (relations[i].members.indexOf(node) >= 0)
-        return true;
+  interestingNode: function (node, wayNodes, relationNodes) {
+    if (!wayNodes[node.id] || relationNodes[node.id]) {
+      return true
     }
 
     for (var key in node.tags) {
@@ -188,7 +204,28 @@ L.OSM.DataLayer = L.FeatureGroup.extend({
     }
 
     return false;
-  }
+  },
+
+  onRemove: function(map) {
+    this.eachLayer(map.removeLayer, map, this.options.asynchronous);
+  },
+
+  onAdd: function(map) {
+    this.eachLayer(map.addLayer, map, this.options.asynchronous);
+  },
+
+  eachLayer: function (method, context, asynchronous = false) {
+    for (let i in this._layers) {
+      if (asynchronous) {
+        setTimeout(() => {
+          method.call(context, this._layers[i]);
+        });
+      } else {
+        method.call(context, this._layers[i]);
+      }
+    }
+    return this;
+  },
 });
 
 L.Util.extend(L.OSM, {
@@ -274,7 +311,7 @@ L.Util.extend(L.OSM, {
         else // relation-way and relation-relation membership not implemented
           rel_object.members[j] = null;
       }
-
+      rel_object.members = rel_object.members.filter(i => i !== null && i !== undefined)
       result.push(rel_object);
     }
 
index 28ca8971fe9c6b6b5ee0a3d3e8c5cd133aac42fd..70f2ceb529286ab29066762e7f999ff2b1e6c87c 100644 (file)
--- a/yarn.lock
+++ b/yarn.lock
     debug "^4.3.1"
     minimatch "^3.1.2"
 
-"@eslint/core@^0.9.0":
-  version "0.9.0"
-  resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.9.0.tgz#168ee076f94b152c01ca416c3e5cf82290ab4fcd"
-  integrity sha512-7ATR9F0e4W85D/0w7cU0SNj7qkAexMG+bAHEZOjo9akvGuhHE2m7umzWzfnpa0XAg5Kxc1BWmtPMV67jJ+9VUg==
+"@eslint/core@^0.10.0":
+  version "0.10.0"
+  resolved "https://registry.yarnpkg.com/@eslint/core/-/core-0.10.0.tgz#23727063c21b335f752dbb3a16450f6f9cbc9091"
+  integrity sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==
+  dependencies:
+    "@types/json-schema" "^7.0.15"
 
 "@eslint/eslintrc@^3.2.0":
   version "3.2.0"
     minimatch "^3.1.2"
     strip-json-comments "^3.1.1"
 
-"@eslint/js@9.17.0":
-  version "9.17.0"
-  resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.17.0.tgz#1523e586791f80376a6f8398a3964455ecc651ec"
-  integrity sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==
+"@eslint/js@9.18.0":
+  version "9.18.0"
+  resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.18.0.tgz#3356f85d18ed3627ab107790b53caf7e1e3d1e84"
+  integrity sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==
 
 "@eslint/object-schema@^2.1.4":
   version "2.1.4"
   resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.4.tgz#9e69f8bb4031e11df79e03db09f9dbbae1740843"
   integrity sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==
 
-"@eslint/plugin-kit@^0.2.3":
-  version "0.2.3"
-  resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz#812980a6a41ecf3a8341719f92a6d1e784a2e0e8"
-  integrity sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==
+"@eslint/plugin-kit@^0.2.5":
+  version "0.2.5"
+  resolved "https://registry.yarnpkg.com/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz#ee07372035539e7847ef834e3f5e7b79f09e3a81"
+  integrity sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==
   dependencies:
+    "@eslint/core" "^0.10.0"
     levn "^0.4.1"
 
 "@humanfs/core@^0.19.1":
@@ -148,16 +151,21 @@ brace-expansion@^1.1.7:
     balanced-match "^1.0.0"
     concat-map "0.0.1"
 
-call-bind@^1.0.7:
-  version "1.0.7"
-  resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9"
-  integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==
+call-bind-apply-helpers@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz#32e5892e6361b29b0b545ba6f7763378daca2840"
+  integrity sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==
   dependencies:
-    es-define-property "^1.0.0"
     es-errors "^1.3.0"
     function-bind "^1.1.2"
-    get-intrinsic "^1.2.4"
-    set-function-length "^1.2.1"
+
+call-bound@^1.0.2:
+  version "1.0.3"
+  resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.3.tgz#41cfd032b593e39176a71533ab4f384aa04fd681"
+  integrity sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==
+  dependencies:
+    call-bind-apply-helpers "^1.0.1"
+    get-intrinsic "^1.2.6"
 
 callsites@^3.0.0:
   version "3.1.0"
@@ -210,32 +218,37 @@ deep-is@^0.1.3:
   resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
   integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
 
-define-data-property@^1.1.2:
-  version "1.1.4"
-  resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e"
-  integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
-  dependencies:
-    es-define-property "^1.0.0"
-    es-errors "^1.3.0"
-    gopd "^1.0.1"
-
 diacritics@^1.3.0:
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/diacritics/-/diacritics-1.3.0.tgz#3efa87323ebb863e6696cebb0082d48ff3d6f7a1"
   integrity sha512-wlwEkqcsaxvPJML+rDh/2iS824jbREk6DUMUKkEaSlxdYHeS43cClJtsWglvw2RfeXGm6ohKDqsXteJ5sP5enA==
 
-es-define-property@^1.0.0:
-  version "1.0.0"
-  resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845"
-  integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==
+dunder-proto@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a"
+  integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==
   dependencies:
-    get-intrinsic "^1.2.4"
+    call-bind-apply-helpers "^1.0.1"
+    es-errors "^1.3.0"
+    gopd "^1.2.0"
+
+es-define-property@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa"
+  integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
 
 es-errors@^1.3.0:
   version "1.3.0"
   resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
   integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
 
+es-object-atoms@^1.0.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.0.tgz#095de9ecceeb2ca79668212b60ead450ffd323bf"
+  integrity sha512-Ujz8Al/KfOVR7fkaghAB1WvnLsdYxHDWmfoi2vlA2jZWRg31XhIC1a4B+/I24muD8iSbHxJ1JkrfqmWb65P/Mw==
+  dependencies:
+    es-errors "^1.3.0"
+
 escape-string-regexp@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
@@ -265,17 +278,17 @@ eslint-visitor-keys@^4.2.0:
   integrity sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==
 
 eslint@^9.0.0:
-  version "9.17.0"
-  resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.17.0.tgz#faa1facb5dd042172fdc520106984b5c2421bb0c"
-  integrity sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==
+  version "9.18.0"
+  resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.18.0.tgz#c95b24de1183e865de19f607fda6518b54827850"
+  integrity sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==
   dependencies:
     "@eslint-community/eslint-utils" "^4.2.0"
     "@eslint-community/regexpp" "^4.12.1"
     "@eslint/config-array" "^0.19.0"
-    "@eslint/core" "^0.9.0"
+    "@eslint/core" "^0.10.0"
     "@eslint/eslintrc" "^3.2.0"
-    "@eslint/js" "9.17.0"
-    "@eslint/plugin-kit" "^0.2.3"
+    "@eslint/js" "9.18.0"
+    "@eslint/plugin-kit" "^0.2.5"
     "@humanfs/node" "^0.16.6"
     "@humanwhocodes/module-importer" "^1.0.1"
     "@humanwhocodes/retry" "^0.4.1"
@@ -385,16 +398,29 @@ function-bind@^1.1.2:
   resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
   integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
 
-get-intrinsic@^1.1.3, get-intrinsic@^1.2.3, get-intrinsic@^1.2.4:
-  version "1.2.4"
-  resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd"
-  integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==
+get-intrinsic@^1.2.5, get-intrinsic@^1.2.6:
+  version "1.2.7"
+  resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.7.tgz#dcfcb33d3272e15f445d15124bc0a216189b9044"
+  integrity sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==
   dependencies:
+    call-bind-apply-helpers "^1.0.1"
+    es-define-property "^1.0.1"
     es-errors "^1.3.0"
+    es-object-atoms "^1.0.0"
     function-bind "^1.1.2"
-    has-proto "^1.0.1"
-    has-symbols "^1.0.3"
-    hasown "^2.0.0"
+    get-proto "^1.0.0"
+    gopd "^1.2.0"
+    has-symbols "^1.1.0"
+    hasown "^2.0.2"
+    math-intrinsics "^1.1.0"
+
+get-proto@^1.0.0:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1"
+  integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==
+  dependencies:
+    dunder-proto "^1.0.1"
+    es-object-atoms "^1.0.0"
 
 glob-parent@^6.0.2:
   version "6.0.2"
@@ -408,39 +434,25 @@ globals@^14.0.0:
   resolved "https://registry.yarnpkg.com/globals/-/globals-14.0.0.tgz#898d7413c29babcf6bafe56fcadded858ada724e"
   integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==
 
-gopd@^1.0.1:
-  version "1.0.1"
-  resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c"
-  integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==
-  dependencies:
-    get-intrinsic "^1.1.3"
+gopd@^1.2.0:
+  version "1.2.0"
+  resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1"
+  integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==
 
 has-flag@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
   integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
 
-has-property-descriptors@^1.0.1:
-  version "1.0.2"
-  resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854"
-  integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
-  dependencies:
-    es-define-property "^1.0.0"
-
-has-proto@^1.0.1:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd"
-  integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==
-
-has-symbols@^1.0.3:
-  version "1.0.3"
-  resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8"
-  integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
+has-symbols@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338"
+  integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
 
-hasown@^2.0.0:
-  version "2.0.1"
-  resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.1.tgz#26f48f039de2c0f8d3356c223fb8d50253519faa"
-  integrity sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==
+hasown@^2.0.2:
+  version "2.0.2"
+  resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
+  integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
   dependencies:
     function-bind "^1.1.2"
 
@@ -518,10 +530,10 @@ keyv@^4.5.4:
   dependencies:
     json-buffer "3.0.1"
 
-leaflet.locatecontrol@^0.82.0:
-  version "0.82.0"
-  resolved "https://registry.yarnpkg.com/leaflet.locatecontrol/-/leaflet.locatecontrol-0.82.0.tgz#677f1d422750d16aff7c52de48c463b4b3999ac9"
-  integrity sha512-+lvtZ7tfqgWoUvTYRqDggw50HUZJGvaSgSU5JYvl5H4WtlnHek2R0TsL0EqROhT3igPFwYVV87bFT/ps1SqyGA==
+leaflet.locatecontrol@^0.83.0:
+  version "0.83.1"
+  resolved "https://registry.yarnpkg.com/leaflet.locatecontrol/-/leaflet.locatecontrol-0.83.1.tgz#2e6614815d6d255e65d0ed248c7b3ab8bf57a998"
+  integrity sha512-oF5uey4GOpnw/ly379fV8JQJuUQes9eECaWo8voTIWLQERYPCudOgfUzFggUbq+kpCMNz7BxP/MsLbyf77QorA==
 
 leaflet@^1.8.0:
   version "1.9.4"
@@ -548,6 +560,11 @@ lodash.merge@^4.6.2:
   resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
   integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
 
+math-intrinsics@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9"
+  integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==
+
 minimatch@^3.1.2:
   version "3.1.2"
   resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
@@ -565,10 +582,10 @@ natural-compare@^1.4.0:
   resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
   integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
 
-object-inspect@^1.13.1:
-  version "1.13.1"
-  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2"
-  integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==
+object-inspect@^1.13.3:
+  version "1.13.3"
+  resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.3.tgz#f14c183de51130243d6d18ae149375ff50ea488a"
+  integrity sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==
 
 optionator@^0.9.3:
   version "0.9.3"
@@ -631,29 +648,17 @@ punycode@^2.1.0:
   integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
 
 qs@^6.9.4:
-  version "6.13.1"
-  resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.1.tgz#3ce5fc72bd3a8171b85c99b93c65dd20b7d1b16e"
-  integrity sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==
+  version "6.14.0"
+  resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930"
+  integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==
   dependencies:
-    side-channel "^1.0.6"
+    side-channel "^1.1.0"
 
 resolve-from@^4.0.0:
   version "4.0.0"
   resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
   integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
 
-set-function-length@^1.2.1:
-  version "1.2.1"
-  resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.1.tgz#47cc5945f2c771e2cf261c6737cf9684a2a5e425"
-  integrity sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==
-  dependencies:
-    define-data-property "^1.1.2"
-    es-errors "^1.3.0"
-    function-bind "^1.1.2"
-    get-intrinsic "^1.2.3"
-    gopd "^1.0.1"
-    has-property-descriptors "^1.0.1"
-
 shebang-command@^2.0.0:
   version "2.0.0"
   resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
@@ -666,15 +671,45 @@ shebang-regex@^3.0.0:
   resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
   integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
 
-side-channel@^1.0.6:
-  version "1.0.6"
-  resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2"
-  integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==
+side-channel-list@^1.0.0:
+  version "1.0.0"
+  resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad"
+  integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==
+  dependencies:
+    es-errors "^1.3.0"
+    object-inspect "^1.13.3"
+
+side-channel-map@^1.0.1:
+  version "1.0.1"
+  resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42"
+  integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==
+  dependencies:
+    call-bound "^1.0.2"
+    es-errors "^1.3.0"
+    get-intrinsic "^1.2.5"
+    object-inspect "^1.13.3"
+
+side-channel-weakmap@^1.0.2:
+  version "1.0.2"
+  resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea"
+  integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==
+  dependencies:
+    call-bound "^1.0.2"
+    es-errors "^1.3.0"
+    get-intrinsic "^1.2.5"
+    object-inspect "^1.13.3"
+    side-channel-map "^1.0.1"
+
+side-channel@^1.1.0:
+  version "1.1.0"
+  resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9"
+  integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==
   dependencies:
-    call-bind "^1.0.7"
     es-errors "^1.3.0"
-    get-intrinsic "^1.2.4"
-    object-inspect "^1.13.1"
+    object-inspect "^1.13.3"
+    side-channel-list "^1.0.0"
+    side-channel-map "^1.0.1"
+    side-channel-weakmap "^1.0.2"
 
 strip-json-comments@^3.1.1:
   version "3.1.1"