From: Andy Allan Date: Wed, 24 Jan 2024 11:39:28 +0000 (+0000) Subject: Merge pull request #4401 from KasperFranz/buried-wikidata X-Git-Tag: live~288 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/e7ddfe10846f89b5eeec4bf4f4dc03057a744009?hp=2a6f78747e2013a1e606f9bc08b39f9c392d154a Merge pull request #4401 from KasperFranz/buried-wikidata Add buried to list of secondary Wiki prefixes --- diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 0608b699b..9fc132014 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -50,7 +50,7 @@ jobs: rubygems: 3.4.10 bundler-cache: true - name: Cache node modules - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: node_modules key: yarn-${{ env.os }}-${{ hashFiles('yarn.lock') }} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index f2fa6763a..bfe456076 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -26,7 +26,7 @@ jobs: rubygems: 3.4.10 bundler-cache: true - name: Cache node modules - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: node_modules key: yarn-ubuntu-${{ matrix.ubuntu }}-${{ hashFiles('yarn.lock') }} diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index bd2f92309..9874aa379 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -14,6 +14,11 @@ require: - rubocop-rails - rubocop-rake +# Offense count: 11 +# Configuration parameters: Include, MaxAmount +FactoryBot/ExcessiveCreateList: + MaxAmount: 200 + # Offense count: 557 # This cop supports safe autocorrection (--autocorrect). # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, AllowedPatterns. @@ -61,12 +66,12 @@ Metrics/BlockNesting: # Offense count: 26 # Configuration parameters: CountComments, CountAsOne. Metrics/ClassLength: - Max: 297 + Max: 305 # Offense count: 59 # Configuration parameters: AllowedMethods, AllowedPatterns. Metrics/CyclomaticComplexity: - Max: 26 + Max: 29 # Offense count: 753 # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns. @@ -81,7 +86,7 @@ Metrics/ParameterLists: # Offense count: 56 # Configuration parameters: AllowedMethods, AllowedPatterns. Metrics/PerceivedComplexity: - Max: 29 + Max: 30 # Offense count: 2394 # This cop supports safe autocorrection (--autocorrect). diff --git a/Gemfile.lock b/Gemfile.lock index c4b9c2516..8949abcbf 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -3,35 +3,35 @@ GEM specs: aasm (5.5.0) concurrent-ruby (~> 1.0) - actioncable (7.1.2) - actionpack (= 7.1.2) - activesupport (= 7.1.2) + actioncable (7.1.3) + actionpack (= 7.1.3) + activesupport (= 7.1.3) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.1.2) - actionpack (= 7.1.2) - activejob (= 7.1.2) - activerecord (= 7.1.2) - activestorage (= 7.1.2) - activesupport (= 7.1.2) + actionmailbox (7.1.3) + actionpack (= 7.1.3) + activejob (= 7.1.3) + activerecord (= 7.1.3) + activestorage (= 7.1.3) + activesupport (= 7.1.3) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.1.2) - actionpack (= 7.1.2) - actionview (= 7.1.2) - activejob (= 7.1.2) - activesupport (= 7.1.2) + actionmailer (7.1.3) + actionpack (= 7.1.3) + actionview (= 7.1.3) + activejob (= 7.1.3) + activesupport (= 7.1.3) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.2) - actionpack (7.1.2) - actionview (= 7.1.2) - activesupport (= 7.1.2) + actionpack (7.1.3) + actionview (= 7.1.3) + activesupport (= 7.1.3) nokogiri (>= 1.8.5) racc rack (>= 2.2.4) @@ -41,39 +41,39 @@ GEM rails-html-sanitizer (~> 1.6) actionpack-page_caching (1.2.4) actionpack (>= 4.0.0) - actiontext (7.1.2) - actionpack (= 7.1.2) - activerecord (= 7.1.2) - activestorage (= 7.1.2) - activesupport (= 7.1.2) + actiontext (7.1.3) + actionpack (= 7.1.3) + activerecord (= 7.1.3) + activestorage (= 7.1.3) + activesupport (= 7.1.3) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.1.2) - activesupport (= 7.1.2) + actionview (7.1.3) + activesupport (= 7.1.3) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) active_record_union (1.3.0) activerecord (>= 4.0) - activejob (7.1.2) - activesupport (= 7.1.2) + activejob (7.1.3) + activesupport (= 7.1.3) globalid (>= 0.3.6) - activemodel (7.1.2) - activesupport (= 7.1.2) - activerecord (7.1.2) - activemodel (= 7.1.2) - activesupport (= 7.1.2) + activemodel (7.1.3) + activesupport (= 7.1.3) + activerecord (7.1.3) + activemodel (= 7.1.3) + activesupport (= 7.1.3) timeout (>= 0.4.0) activerecord-import (1.5.1) activerecord (>= 4.2) - activestorage (7.1.2) - actionpack (= 7.1.2) - activejob (= 7.1.2) - activerecord (= 7.1.2) - activesupport (= 7.1.2) + activestorage (7.1.3) + actionpack (= 7.1.3) + activejob (= 7.1.3) + activerecord (= 7.1.3) + activesupport (= 7.1.3) marcel (~> 1.0) - activesupport (7.1.2) + activesupport (7.1.3) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) @@ -83,7 +83,7 @@ GEM minitest (>= 5.1) mutex_m tzinfo (~> 2.0) - addressable (2.8.5) + addressable (2.8.6) public_suffix (>= 2.0.2, < 6.0) annotate (3.2.0) activerecord (>= 3.2, < 8.0) @@ -95,16 +95,16 @@ GEM autoprefixer-rails (10.4.16.0) execjs (~> 2) aws-eventstream (1.3.0) - aws-partitions (1.863.0) - aws-sdk-core (3.190.0) + aws-partitions (1.883.0) + aws-sdk-core (3.190.3) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.8) jmespath (~> 1, >= 1.6.1) - aws-sdk-kms (1.74.0) + aws-sdk-kms (1.76.0) aws-sdk-core (~> 3, >= 3.188.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.141.0) + aws-sdk-s3 (1.142.0) aws-sdk-core (~> 3, >= 3.189.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.8) @@ -122,10 +122,10 @@ GEM erubi (~> 1.4) parser (>= 2.4) smart_properties - bigdecimal (3.1.4) + bigdecimal (3.1.6) binding_of_caller (1.0.0) debug_inspector (>= 0.0.1) - bootsnap (1.17.0) + bootsnap (1.17.1) msgpack (~> 1.2) bootstrap (5.3.2) autoprefixer-rails (>= 9.1.0) @@ -133,7 +133,8 @@ GEM bootstrap_form (5.4.0) actionpack (>= 6.1) activemodel (>= 6.1) - brakeman (6.1.0) + brakeman (6.1.1) + racc brotli (0.4.0) browser (5.3.1) builder (3.2.4) @@ -151,8 +152,8 @@ GEM rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) xpath (~> 3.2) - concurrent-ruby (1.2.2) - config (5.0.0) + concurrent-ruby (1.2.3) + config (5.1.0) deep_merge (~> 1.2, >= 1.2.1) dry-validation (~> 1.0, >= 1.0.0) connection_pool (2.4.1) @@ -169,7 +170,7 @@ GEM sprockets-rails tilt date (3.3.4) - debug_inspector (1.1.0) + debug_inspector (1.2.0) deep_merge (1.2.2) delayed_job (4.1.11) activesupport (>= 3.0, < 8.0) @@ -206,7 +207,8 @@ GEM dry-logic (>= 1.4, < 2) dry-types (>= 1.7, < 2) zeitwerk (~> 2.6) - dry-types (1.7.1) + dry-types (1.7.2) + bigdecimal (~> 3.0) concurrent-ruby (~> 1.0) dry-core (~> 1.0) dry-inflector (~> 1.0) @@ -228,16 +230,15 @@ GEM erubi (1.12.0) execjs (2.9.1) exifr (1.4.0) - factory_bot (6.4.2) + factory_bot (6.4.5) activesupport (>= 5.0.0) - factory_bot_rails (6.4.2) + factory_bot_rails (6.4.3) factory_bot (~> 6.4) railties (>= 5.0.0) - faraday (2.7.12) - base64 - faraday-net_http (>= 2.0, < 3.1) - ruby2_keywords (>= 0.0.4) - faraday-net_http (3.0.2) + faraday (2.9.0) + faraday-net_http (>= 2.0, < 3.2) + faraday-net_http (3.1.0) + net-http ffi (1.16.3) ffi-compiler (1.0.1) ffi (>= 1.0.0) @@ -252,10 +253,10 @@ GEM ffi (>= 1.0.0) globalid (1.2.1) activesupport (>= 6.1) - google-protobuf (3.25.1) - hashdiff (1.0.1) + google-protobuf (3.25.2) + hashdiff (1.1.0) hashie (5.0.0) - highline (2.1.0) + highline (3.0.1) htmlentities (4.3.4) http_accept_language (2.1.1) i18n (1.14.1) @@ -286,12 +287,12 @@ GEM image_processing (1.12.2) mini_magick (>= 4.9.5, < 5) ruby-vips (>= 2.0.17, < 3) - image_size (3.3.0) + image_size (3.4.0) in_threads (1.6.0) - io-console (0.6.0) - irb (1.10.1) + io-console (0.7.2) + irb (1.11.1) rdoc - reline (>= 0.3.8) + reline (>= 0.4.2) jbuilder (2.11.5) actionview (>= 5.0.0) activesupport (>= 5.0.0) @@ -307,7 +308,7 @@ GEM rexml language_server-protocol (3.17.0.3) libv8-node (18.16.0.0) - libxml-ruby (4.1.2) + libxml-ruby (5.0.2) listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) @@ -330,22 +331,24 @@ GEM mini_portile2 (2.8.5) mini_racer (0.8.0) libv8-node (~> 18.16.0.0) - minitest (5.20.0) + minitest (5.21.2) msgpack (1.7.2) multi_json (1.15.0) multi_xml (0.6.0) mutex_m (0.2.0) - net-imap (0.4.7) + net-http (0.4.1) + uri + net-imap (0.4.9.1) date net-protocol net-pop (0.1.2) net-protocol net-protocol (0.2.2) timeout - net-smtp (0.4.0) + net-smtp (0.4.0.1) net-protocol nio4r (2.7.0) - nokogiri (1.15.5) + nokogiri (1.16.0) mini_portile2 (~> 2.8.2) racc (~> 1.4) oauth (0.4.7) @@ -378,7 +381,8 @@ GEM omniauth-mediawiki (0.0.4) jwt (~> 2.0) omniauth-oauth (~> 1.0) - omniauth-microsoft_graph (1.2.0) + omniauth-microsoft_graph (2.0.0) + jwt (~> 2.0) omniauth (~> 2.0) omniauth-oauth2 (~> 1.8.0) omniauth-oauth (1.2.0) @@ -394,17 +398,17 @@ GEM actionpack (>= 4.2) omniauth (~> 2.0) openstreetmap-deadlock_retry (1.3.1) - parallel (1.23.0) - parser (3.2.2.4) + parallel (1.24.0) + parser (3.3.0.5) ast (~> 2.4.1) racc pg (1.5.4) popper_js (2.11.8) progress (3.6.0) - psych (5.1.1.1) + psych (5.1.2) stringio public_suffix (5.0.4) - puma (5.6.7) + puma (5.6.8) nio4r (~> 2.0) quad_tile (1.0.1) racc (1.7.3) @@ -414,7 +418,8 @@ GEM rack-openid (1.4.2) rack (>= 1.1.0) ruby-openid (>= 2.1.8) - rack-protection (3.1.0) + rack-protection (3.2.0) + base64 (>= 0.1.0) rack (~> 2.2, >= 2.2.4) rack-session (1.0.2) rack (< 3) @@ -424,20 +429,20 @@ GEM rackup (1.0.0) rack (< 3) webrick - rails (7.1.2) - actioncable (= 7.1.2) - actionmailbox (= 7.1.2) - actionmailer (= 7.1.2) - actionpack (= 7.1.2) - actiontext (= 7.1.2) - actionview (= 7.1.2) - activejob (= 7.1.2) - activemodel (= 7.1.2) - activerecord (= 7.1.2) - activestorage (= 7.1.2) - activesupport (= 7.1.2) + rails (7.1.3) + actioncable (= 7.1.3) + actionmailbox (= 7.1.3) + actionmailer (= 7.1.3) + actionpack (= 7.1.3) + actiontext (= 7.1.3) + actionview (= 7.1.3) + activejob (= 7.1.3) + activemodel (= 7.1.3) + activerecord (= 7.1.3) + activestorage (= 7.1.3) + activesupport (= 7.1.3) bundler (>= 1.15.0) - railties (= 7.1.2) + railties (= 7.1.3) rails-controller-testing (1.0.5) actionpack (>= 5.0.1.rc1) actionview (>= 5.0.1.rc1) @@ -452,9 +457,9 @@ GEM rails-i18n (7.0.8) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (7.1.2) - actionpack (= 7.1.2) - activesupport (= 7.1.2) + railties (7.1.3) + actionpack (= 7.1.3) + activesupport (= 7.1.3) irb rackup (>= 1.0.0) rake (>= 12.2) @@ -465,10 +470,10 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - rdoc (6.6.1) + rdoc (6.6.2) psych (>= 4.0.0) - regexp_parser (2.8.3) - reline (0.4.1) + regexp_parser (2.9.0) + reline (0.4.2) io-console (~> 0.5) request_store (1.5.1) rack (>= 1.4) @@ -478,11 +483,11 @@ GEM rouge (4.2.0) rtlcss (0.2.1) mini_racer (>= 0.6.3) - rubocop (1.58.0) + rubocop (1.60.1) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) - parser (>= 3.2.2.4) + parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) @@ -491,16 +496,17 @@ GEM unicode-display_width (>= 2.4.0, < 3.0) rubocop-ast (1.30.0) parser (>= 3.2.1.0) - rubocop-capybara (2.19.0) + rubocop-capybara (2.20.0) rubocop (~> 1.41) - rubocop-factory_bot (2.24.0) - rubocop (~> 1.33) - rubocop-minitest (0.33.0) + rubocop-factory_bot (2.25.1) + rubocop (~> 1.41) + rubocop-minitest (0.34.5) rubocop (>= 1.39, < 2.0) - rubocop-performance (1.19.1) - rubocop (>= 1.7.0, < 2.0) - rubocop-ast (>= 0.4.0) - rubocop-rails (2.22.2) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-performance (1.20.2) + rubocop (>= 1.48.1, < 2.0) + rubocop-ast (>= 1.30.0, < 2.0) + rubocop-rails (2.23.1) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) @@ -520,7 +526,8 @@ GEM google-protobuf (~> 3.23) rake (>= 13.0.0) secure_headers (6.5.0) - selenium-webdriver (4.15.0) + selenium-webdriver (4.17.0) + base64 (~> 0.2) rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 3.0) websocket (~> 1.0) @@ -546,11 +553,11 @@ GEM activesupport (>= 5.2) sprockets (>= 3.0.0) stringio (3.1.0) - strong_migrations (1.6.4) + strong_migrations (1.7.0) activerecord (>= 5.2) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) - terser (1.1.20) + terser (1.2.0) execjs (>= 0.3.0, < 3) thor (1.3.0) tilt (2.3.0) @@ -558,6 +565,7 @@ GEM tzinfo (2.0.6) concurrent-ruby (~> 1.0) unicode-display_width (2.5.0) + uri (0.13.0) validates_email_format_of (1.7.2) i18n vendorer (0.2.0) diff --git a/INSTALL.md b/INSTALL.md index 59e924b9b..63aad6f1a 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -23,7 +23,7 @@ of packages required before you can get the various gems installed. ## Minimum requirements * Ruby 3.0+ -* PostgreSQL 9.1+ +* PostgreSQL 13+ * Bundler (see note below about [developer Ruby setup](#rbenv)) * Javascript Runtime @@ -226,11 +226,11 @@ After installing this software, you may need to carry out some [configuration st # Ruby development install and versions (optional) -For simplicity, this document explains how to install all the website dependencies as "system" dependencies. While this is simpler, and usually faster, you might want more control over the process or the ability to install multiple different versions of software alongside eachother. For many developers, [`rbenv`](https://github.com/rbenv/rbenv) is the easiest way to manage multiple different Ruby versions on the same computer - with the added advantage that the installs are all in your home directory, so you don't need administrator permissions. +For simplicity, this document explains how to install all the website dependencies as "system" dependencies. While this is simpler, and usually faster, you might want more control over the process or the ability to install multiple different versions of software alongside each other. For many developers, [`rbenv`](https://github.com/rbenv/rbenv) is the easiest way to manage multiple different Ruby versions on the same computer - with the added advantage that the installs are all in your home directory, so you don't need administrator permissions. If you choose to install Ruby and Bundler via `rbenv`, then you do not need to install the system libraries for Ruby: -* For Ubuntu, you do not need to install the following packages: `ruby3.0 libruby3.0 ruby3.0-dev bundler`, +* For Ubuntu, you do not need to install the following packages: `ruby ruby-dev ruby-bundler`, * For Fedora, you do not need to install the following packages: `ruby ruby-devel rubygem-rdoc rubygem-bundler rubygems` * For MacOSX, you do not need to `brew install ruby` - but make sure you've installed a version of Ruby using `rbenv` before running `gem install bundler`! diff --git a/app/abilities/ability.rb b/app/abilities/ability.rb index f9348f68e..4a4eee390 100644 --- a/app/abilities/ability.rb +++ b/app/abilities/ability.rb @@ -6,6 +6,9 @@ class Ability def initialize(user) can [:relation, :relation_history, :way, :way_history, :node, :node_history, :changeset, :query], :browse + can [:show], OldNode + can [:show], OldWay + can [:show], OldRelation can [:show, :new], Note can :search, :direction can [:index, :permalink, :edit, :help, :fixthemap, :offline, :export, :about, :communities, :preview, :copyright, :key, :id], :site @@ -25,12 +28,6 @@ class Ability can [:index, :show, :data, :georss, :picture, :icon], Trace can [:terms, :new, :create, :save, :suspended, :show, :auth_success, :auth_failure], User can [:index, :show, :blocks_on, :blocks_by], UserBlock - can [:index, :show], Node - can [:index, :show, :full, :ways_for_node], Way - can [:index, :show, :full, :relations_for_node, :relations_for_way, :relations_for_relation], Relation - can [:history, :version], OldNode - can [:history, :version], OldWay - can [:history, :version], OldRelation end if user&.active? @@ -47,20 +44,21 @@ class Ability can [:show], :dashboard can [:new, :create, :edit, :update, :comment, :subscribe, :unsubscribe], DiaryEntry can [:make_friend, :remove_friend], Friendship - can [:new, :create, :reply, :show, :inbox, :outbox, :mark, :destroy], Message + can [:new, :create, :reply, :show, :inbox, :outbox, :muted, :mark, :unmute, :destroy], Message can [:close, :reopen], Note can [:show, :edit, :update], :preference can [:edit, :update], :profile can [:new, :create], Report can [:mine, :new, :create, :edit, :update, :destroy], Trace can [:account, :go_public], User + can [:index, :create, :destroy], UserMute if user.moderator? can [:hide, :unhide, :hidecomment, :unhidecomment], DiaryEntry can [:index, :show, :resolve, :ignore, :reopen], Issue can :create, IssueComment can [:new, :create, :edit, :update, :destroy], Redaction - can [:new, :edit, :create, :update, :revoke], UserBlock + can [:new, :edit, :create, :update, :revoke, :revoke_all], UserBlock end if user.administrator? diff --git a/app/abilities/api_ability.rb b/app/abilities/api_ability.rb index 4876380d0..0eae46f82 100644 --- a/app/abilities/api_ability.rb +++ b/app/abilities/api_ability.rb @@ -5,7 +5,6 @@ class ApiAbility def initialize(user) can :show, :capability - can :index, :change can :index, :map can :show, :permission can :show, :version @@ -22,17 +21,9 @@ class ApiAbility can [:history, :version], OldWay can [:history, :version], OldRelation can [:show], UserBlock - end - - if user&.active? - can :welcome, :site - can [:revoke, :authorize], :oauth - if Settings.status != "database_offline" - can [:index, :new, :create, :show, :edit, :update, :destroy], ClientApplication - can [:new, :create, :reply, :show, :inbox, :outbox, :mark, :destroy], Message + if user&.active? can [:comment, :close, :reopen], Note - can [:new, :create], Report can [:create, :show, :update, :destroy, :data], Trace can [:details, :gpx_files], User can [:index, :show, :update, :update_all, :destroy], UserPreference diff --git a/app/abilities/api_capability.rb b/app/abilities/api_capability.rb index 8c52327cf..95d7ab9ab 100644 --- a/app/abilities/api_capability.rb +++ b/app/abilities/api_capability.rb @@ -32,9 +32,9 @@ class ApiCapability can [:destroy, :restore], ChangesetComment if scope?(token, :write_api) can :destroy, Note if scope?(token, :write_notes) if user&.terms_agreed? - can :redact, OldNode if scope?(token, :write_api) - can :redact, OldWay if scope?(token, :write_api) - can :redact, OldRelation if scope?(token, :write_api) + can :redact, OldNode if scope?(token, :write_api) || scope?(token, :write_redactions) + can :redact, OldWay if scope?(token, :write_api) || scope?(token, :write_redactions) + can :redact, OldRelation if scope?(token, :write_api) || scope?(token, :write_redactions) end end end diff --git a/app/assets/images/key/cyclemap/beach.png b/app/assets/images/key/cyclemap/beach.png new file mode 100644 index 000000000..256732b6e Binary files /dev/null and b/app/assets/images/key/cyclemap/beach.png differ diff --git a/app/assets/images/key/cyclemap/bicycle_parking.png b/app/assets/images/key/cyclemap/bicycle_parking.png index c900a4495..e5a781d13 100644 Binary files a/app/assets/images/key/cyclemap/bicycle_parking.png and b/app/assets/images/key/cyclemap/bicycle_parking.png differ diff --git a/app/assets/images/key/cyclemap/bicycle_parking_small.svg b/app/assets/images/key/cyclemap/bicycle_parking_small.svg new file mode 100644 index 000000000..753fab746 --- /dev/null +++ b/app/assets/images/key/cyclemap/bicycle_parking_small.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/cyclemap/bicycle_rental.png b/app/assets/images/key/cyclemap/bicycle_rental.png new file mode 100644 index 000000000..190e52755 Binary files /dev/null and b/app/assets/images/key/cyclemap/bicycle_rental.png differ diff --git a/app/assets/images/key/cyclemap/bicycle_rental_small.svg b/app/assets/images/key/cyclemap/bicycle_rental_small.svg new file mode 100644 index 000000000..fa0399c16 --- /dev/null +++ b/app/assets/images/key/cyclemap/bicycle_rental_small.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/cyclemap/common.png b/app/assets/images/key/cyclemap/common.png deleted file mode 100644 index 7c108152a..000000000 Binary files a/app/assets/images/key/cyclemap/common.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway.png b/app/assets/images/key/cyclemap/cycleway.png deleted file mode 100644 index 13bed4a7d..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway_local.png b/app/assets/images/key/cyclemap/cycleway_local.png deleted file mode 100644 index 2a2933169..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway_local.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway_local13.png b/app/assets/images/key/cyclemap/cycleway_local13.png deleted file mode 100644 index 3f2c53587..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway_local13.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway_national.png b/app/assets/images/key/cyclemap/cycleway_national.png deleted file mode 100644 index 0f5455f71..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway_national.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway_national13.png b/app/assets/images/key/cyclemap/cycleway_national13.png deleted file mode 100644 index 252b07a30..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway_national13.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway_regional.png b/app/assets/images/key/cyclemap/cycleway_regional.png deleted file mode 100644 index 92249992e..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway_regional.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/cycleway_regional13.png b/app/assets/images/key/cyclemap/cycleway_regional13.png deleted file mode 100644 index 519570454..000000000 Binary files a/app/assets/images/key/cyclemap/cycleway_regional13.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/footway.png b/app/assets/images/key/cyclemap/footway.png deleted file mode 100644 index c78756f8c..000000000 Binary files a/app/assets/images/key/cyclemap/footway.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/forest.png b/app/assets/images/key/cyclemap/forest.png deleted file mode 100644 index a7ebe8e5d..000000000 Binary files a/app/assets/images/key/cyclemap/forest.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/lake.png b/app/assets/images/key/cyclemap/lake.png deleted file mode 100644 index 918d496ae..000000000 Binary files a/app/assets/images/key/cyclemap/lake.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/motorway.png b/app/assets/images/key/cyclemap/motorway.png deleted file mode 100644 index 296f17677..000000000 Binary files a/app/assets/images/key/cyclemap/motorway.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/motorway12.png b/app/assets/images/key/cyclemap/motorway12.png deleted file mode 100644 index 749493ad6..000000000 Binary files a/app/assets/images/key/cyclemap/motorway12.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/primary.png b/app/assets/images/key/cyclemap/primary.png deleted file mode 100644 index 78ae0e4e5..000000000 Binary files a/app/assets/images/key/cyclemap/primary.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/primary12.png b/app/assets/images/key/cyclemap/primary12.png deleted file mode 100644 index fed37d054..000000000 Binary files a/app/assets/images/key/cyclemap/primary12.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/rail.png b/app/assets/images/key/cyclemap/rail.png deleted file mode 100644 index 0abf0c1df..000000000 Binary files a/app/assets/images/key/cyclemap/rail.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/rail14.png b/app/assets/images/key/cyclemap/rail14.png deleted file mode 100644 index 957f17c85..000000000 Binary files a/app/assets/images/key/cyclemap/rail14.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/secondary.png b/app/assets/images/key/cyclemap/secondary.png deleted file mode 100644 index 7928b182b..000000000 Binary files a/app/assets/images/key/cyclemap/secondary.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/secondary12.png b/app/assets/images/key/cyclemap/secondary12.png deleted file mode 100644 index cde008523..000000000 Binary files a/app/assets/images/key/cyclemap/secondary12.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/track.png b/app/assets/images/key/cyclemap/track.png deleted file mode 100644 index f294edca0..000000000 Binary files a/app/assets/images/key/cyclemap/track.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/trunk.png b/app/assets/images/key/cyclemap/trunk.png deleted file mode 100644 index d312a65cb..000000000 Binary files a/app/assets/images/key/cyclemap/trunk.png and /dev/null differ diff --git a/app/assets/images/key/cyclemap/trunk12.png b/app/assets/images/key/cyclemap/trunk12.png deleted file mode 100644 index 51230a021..000000000 Binary files a/app/assets/images/key/cyclemap/trunk12.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/apron.png b/app/assets/images/key/mapnik/apron.png deleted file mode 100644 index bcea5e3fb..000000000 Binary files a/app/assets/images/key/mapnik/apron.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/bridge.png b/app/assets/images/key/mapnik/bridge.png deleted file mode 100644 index d388d7b81..000000000 Binary files a/app/assets/images/key/mapnik/bridge.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/bridleway.png b/app/assets/images/key/mapnik/bridleway.png deleted file mode 100644 index 9aec1ad33..000000000 Binary files a/app/assets/images/key/mapnik/bridleway.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/building.png b/app/assets/images/key/mapnik/building.png deleted file mode 100644 index bc074feeb..000000000 Binary files a/app/assets/images/key/mapnik/building.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/capital4.svg b/app/assets/images/key/mapnik/capital4.svg new file mode 100644 index 000000000..712c904d0 --- /dev/null +++ b/app/assets/images/key/mapnik/capital4.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/capital7.svg b/app/assets/images/key/mapnik/capital7.svg new file mode 100644 index 000000000..69011cfa9 --- /dev/null +++ b/app/assets/images/key/mapnik/capital7.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/city4.svg b/app/assets/images/key/mapnik/city4.svg new file mode 100644 index 000000000..542236cad --- /dev/null +++ b/app/assets/images/key/mapnik/city4.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/mapnik/city6.svg b/app/assets/images/key/mapnik/city6.svg new file mode 100644 index 000000000..40fc3aebc --- /dev/null +++ b/app/assets/images/key/mapnik/city6.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/cycleway.png b/app/assets/images/key/mapnik/cycleway.png deleted file mode 100644 index a1a16f1ed..000000000 Binary files a/app/assets/images/key/mapnik/cycleway.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/footway.png b/app/assets/images/key/mapnik/footway.png deleted file mode 100644 index 4486119ba..000000000 Binary files a/app/assets/images/key/mapnik/footway.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/glacier10.svg b/app/assets/images/key/mapnik/glacier10.svg deleted file mode 100644 index be79f238a..000000000 --- a/app/assets/images/key/mapnik/glacier10.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/app/assets/images/key/mapnik/glacier5.svg b/app/assets/images/key/mapnik/glacier5.svg deleted file mode 100644 index 8e6d368eb..000000000 --- a/app/assets/images/key/mapnik/glacier5.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/app/assets/images/key/mapnik/intermittent_water.svg b/app/assets/images/key/mapnik/intermittent_water.svg new file mode 100644 index 000000000..ab728ce25 --- /dev/null +++ b/app/assets/images/key/mapnik/intermittent_water.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/app/assets/images/key/mapnik/mainroad.png b/app/assets/images/key/mapnik/mainroad.png deleted file mode 100644 index 269959b65..000000000 Binary files a/app/assets/images/key/mapnik/mainroad.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/mainroad12.png b/app/assets/images/key/mapnik/mainroad12.png deleted file mode 100644 index c289a3f8c..000000000 Binary files a/app/assets/images/key/mapnik/mainroad12.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/mainroad12.svg b/app/assets/images/key/mapnik/mainroad12.svg new file mode 100644 index 000000000..6bf11d915 --- /dev/null +++ b/app/assets/images/key/mapnik/mainroad12.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/app/assets/images/key/mapnik/mainroad15.svg b/app/assets/images/key/mapnik/mainroad15.svg new file mode 100644 index 000000000..96796b86e --- /dev/null +++ b/app/assets/images/key/mapnik/mainroad15.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/app/assets/images/key/mapnik/mainroad8.png b/app/assets/images/key/mapnik/mainroad8.png deleted file mode 100644 index 05b4dac85..000000000 Binary files a/app/assets/images/key/mapnik/mainroad8.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/mainroad8.svg b/app/assets/images/key/mapnik/mainroad8.svg new file mode 100644 index 000000000..ab5ab3f64 --- /dev/null +++ b/app/assets/images/key/mapnik/mainroad8.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/mainroad9.svg b/app/assets/images/key/mapnik/mainroad9.svg new file mode 100644 index 000000000..75195d9fb --- /dev/null +++ b/app/assets/images/key/mapnik/mainroad9.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/app/assets/images/key/mapnik/motorway.png b/app/assets/images/key/mapnik/motorway.png deleted file mode 100644 index 484fc9daa..000000000 Binary files a/app/assets/images/key/mapnik/motorway.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/rail.png b/app/assets/images/key/mapnik/rail.png deleted file mode 100644 index 0abf0c1df..000000000 Binary files a/app/assets/images/key/mapnik/rail.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/rail12.png b/app/assets/images/key/mapnik/rail12.png deleted file mode 100644 index 957f17c85..000000000 Binary files a/app/assets/images/key/mapnik/rail12.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/reef.png b/app/assets/images/key/mapnik/reef.png new file mode 100644 index 000000000..713ac868e Binary files /dev/null and b/app/assets/images/key/mapnik/reef.png differ diff --git a/app/assets/images/key/mapnik/runway.png b/app/assets/images/key/mapnik/runway.png deleted file mode 100644 index c65672806..000000000 Binary files a/app/assets/images/key/mapnik/runway.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/runway11.svg b/app/assets/images/key/mapnik/runway11.svg new file mode 100644 index 000000000..088893c51 --- /dev/null +++ b/app/assets/images/key/mapnik/runway11.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/runway12.svg b/app/assets/images/key/mapnik/runway12.svg new file mode 100644 index 000000000..205a18e4a --- /dev/null +++ b/app/assets/images/key/mapnik/runway12.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/runway13.svg b/app/assets/images/key/mapnik/runway13.svg new file mode 100644 index 000000000..e4d712772 --- /dev/null +++ b/app/assets/images/key/mapnik/runway13.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/runway14.svg b/app/assets/images/key/mapnik/runway14.svg new file mode 100644 index 000000000..dc9958d76 --- /dev/null +++ b/app/assets/images/key/mapnik/runway14.svg @@ -0,0 +1,4 @@ + + + + diff --git a/app/assets/images/key/mapnik/school.png b/app/assets/images/key/mapnik/school.png deleted file mode 100644 index 50f30a2f3..000000000 Binary files a/app/assets/images/key/mapnik/school.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/school.svg b/app/assets/images/key/mapnik/school.svg new file mode 100644 index 000000000..b7600bf2c --- /dev/null +++ b/app/assets/images/key/mapnik/school.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/mapnik/station.png b/app/assets/images/key/mapnik/station.png deleted file mode 100644 index 6c36e3c61..000000000 Binary files a/app/assets/images/key/mapnik/station.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/subway.png b/app/assets/images/key/mapnik/subway.png deleted file mode 100644 index cb42ee2dc..000000000 Binary files a/app/assets/images/key/mapnik/subway.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/summit.png b/app/assets/images/key/mapnik/summit.png deleted file mode 100644 index 9dbfcd360..000000000 Binary files a/app/assets/images/key/mapnik/summit.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/summit.svg b/app/assets/images/key/mapnik/summit.svg new file mode 100644 index 000000000..e9c831c7f --- /dev/null +++ b/app/assets/images/key/mapnik/summit.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/assets/images/key/mapnik/track.png b/app/assets/images/key/mapnik/track.png deleted file mode 100644 index f294edca0..000000000 Binary files a/app/assets/images/key/mapnik/track.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/tram.png b/app/assets/images/key/mapnik/tram.png deleted file mode 100644 index 1c64b2877..000000000 Binary files a/app/assets/images/key/mapnik/tram.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/tunnel.png b/app/assets/images/key/mapnik/tunnel.png deleted file mode 100644 index 4c52ff4fe..000000000 Binary files a/app/assets/images/key/mapnik/tunnel.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/unclassified.png b/app/assets/images/key/mapnik/unclassified.png deleted file mode 100644 index 3cdfb2dda..000000000 Binary files a/app/assets/images/key/mapnik/unclassified.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/unclassified13.png b/app/assets/images/key/mapnik/unclassified13.png deleted file mode 100644 index 1a8792462..000000000 Binary files a/app/assets/images/key/mapnik/unclassified13.png and /dev/null differ diff --git a/app/assets/images/key/mapnik/wetland.png b/app/assets/images/key/mapnik/wetland.png new file mode 100644 index 000000000..d13748bc8 Binary files /dev/null and b/app/assets/images/key/mapnik/wetland.png differ diff --git a/app/assets/images/key/opnvkarte/rail11.svg b/app/assets/images/key/opnvkarte/rail11.svg deleted file mode 100644 index 849f5cf94..000000000 --- a/app/assets/images/key/opnvkarte/rail11.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/assets/images/key/opnvkarte/rail15.svg b/app/assets/images/key/opnvkarte/rail15.svg deleted file mode 100644 index efe7792b9..000000000 --- a/app/assets/images/key/opnvkarte/rail15.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/app/assets/images/sprite.png b/app/assets/images/sprite.png deleted file mode 100644 index e25617013..000000000 Binary files a/app/assets/images/sprite.png and /dev/null differ diff --git a/app/assets/images/sprite.svg b/app/assets/images/sprite.svg index 382bc41fd..ae2e03c6b 100644 --- a/app/assets/images/sprite.svg +++ b/app/assets/images/sprite.svg @@ -1,68 +1,62 @@ - - - - - - - - - ? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + ? + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index e45d28321..8ffa05c53 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -346,10 +346,6 @@ $(document).ready(function () { }); } }); - - $(".colour-preview-box").each(function () { - $(this).css("background-color", $(this).data("colour")); - }); } page.unload = function () { @@ -359,6 +355,16 @@ $(document).ready(function () { return page; }; + OSM.OldBrowse = function () { + var page = {}; + + page.pushstate = page.popstate = function (path) { + OSM.loadSidebarContent(path); + }; + + return page; + }; + var history = OSM.History(map); OSM.router = OSM.Router(map, { @@ -373,8 +379,11 @@ $(document).ready(function () { "/user/:display_name/history": history, "/note/:id": OSM.Note(map), "/node/:id(/history)": OSM.Browse(map, "node"), + "/node/:id/history/:version": OSM.OldBrowse(), "/way/:id(/history)": OSM.Browse(map, "way"), + "/way/:id/history/:version": OSM.OldBrowse(), "/relation/:id(/history)": OSM.Browse(map, "relation"), + "/relation/:id/history/:version": OSM.OldBrowse(), "/changeset/:id": OSM.Changeset(map), "/query": OSM.Query(map) }); diff --git a/app/assets/javascripts/index/note.js b/app/assets/javascripts/index/note.js index e7790c904..15fedb1d1 100644 --- a/app/assets/javascripts/index/note.js +++ b/app/assets/javascripts/index/note.js @@ -52,20 +52,18 @@ OSM.Note = function (map) { OSM.loadSidebarContent(path, function () { initialize(path, id, moveToNote); }); + }, + error: function (xhr) { + $(form).find("#comment-error") + .text(xhr.responseText) + .prop("hidden", false); + updateButtons(form); } }); }); content.find("textarea").on("input", function (e) { - var form = e.target.form; - - if ($(e.target).val() === "") { - $(form.close).val($(form.close).data("defaultActionText")); - $(form.comment).prop("disabled", true); - } else { - $(form.close).val($(form.close).data("commentActionText")); - $(form.comment).prop("disabled", false); - } + updateButtons(e.target.form); }); content.find("textarea").val("").trigger("input"); @@ -84,6 +82,17 @@ OSM.Note = function (map) { if (callback) callback(); } + function updateButtons(form) { + $(form).find("input[type=submit]").prop("disabled", false); + if ($(form.text).val() === "") { + $(form.close).val($(form.close).data("defaultActionText")); + $(form.comment).prop("disabled", true); + } else { + $(form.close).val($(form.close).data("commentActionText")); + $(form.comment).prop("disabled", false); + } + } + function moveToNote() { var data = $(".details").data(); if (!data) return; diff --git a/app/assets/javascripts/leaflet.map.js b/app/assets/javascripts/leaflet.map.js index e1e0e64fd..d221ae208 100644 --- a/app/assets/javascripts/leaflet.map.js +++ b/app/assets/javascripts/leaflet.map.js @@ -58,13 +58,6 @@ L.OSM.Map = L.Map.extend({ }).prop("outerHTML"); var tracestrack = I18n.t("javascripts.map.tracestrack_credit", { tracestrack_link: tracestrack_link }); - var memomaps_link = $("", { - href: "https://memomaps.de/", - target: "_blank", - text: I18n.t("javascripts.map.memomaps") - }).prop("outerHTML"); - var memomaps = I18n.t("javascripts.map.opnvkarte_credit", { memomaps_link: memomaps_link }); - var hotosm_link = $("", { href: "https://www.hotosm.org/", target: "_blank", @@ -116,13 +109,6 @@ L.OSM.Map = L.Map.extend({ })); } - this.baseLayers.push(new L.OSM.OPNVKarte({ - attribution: copyright + ". " + memomaps + ". " + terms, - code: "O", - keyid: "opnvkarte", - name: I18n.t("javascripts.map.base.opnvkarte") - })); - this.baseLayers.push(new L.OSM.HOT({ attribution: copyright + ". " + hotosm + ". " + terms, code: "H", diff --git a/app/assets/javascripts/messages.js b/app/assets/javascripts/messages.js index 5accc1a60..cc86da05e 100644 --- a/app/assets/javascripts/messages.js +++ b/app/assets/javascripts/messages.js @@ -22,6 +22,8 @@ $(document).ready(function () { $(".user-button").before(data.inboxanchor); $("#inbox-count").replaceWith(data.inbox_count); + $("#outbox-count").replaceWith(data.outbox_count); + $("#muted-count").replaceWith(data.muted_count); } function updateReadState(target, isRead) { diff --git a/app/assets/stylesheets/common.scss b/app/assets/stylesheets/common.scss index c3a31d834..f0746117d 100644 --- a/app/assets/stylesheets/common.scss +++ b/app/assets/stylesheets/common.scss @@ -37,8 +37,7 @@ time[title] { vertical-align: top; width: 20px; height: 20px; - background: transparent image-url("sprite.png") no-repeat 0 0; - background-image: image-url("sprite.svg"); + background: transparent image-url("sprite.svg") no-repeat 0 0; text-indent: -9999px; overflow: hidden; } @@ -563,16 +562,6 @@ header .search_forms, display: none; } -/* Rules for the map key which appears in the popout sidebar */ - -#mapkey { - .mapkey-table-key img { - display: block; - margin-left: auto; - margin-right: auto; - } -} - /* Rules for search sidebar */ #sidebar .search_results_entry { @@ -656,12 +645,6 @@ tr.turn:hover { tr:last-child th, tr:last-child td { border-bottom: 0; } - - .colour-preview-box { - width: 14px; - height: 14px; - // add color via inline css on element: background-color: ; - } } span.action-button:hover { diff --git a/app/controllers/diary_entries_controller.rb b/app/controllers/diary_entries_controller.rb index 6db32797a..1f9574b9c 100644 --- a/app/controllers/diary_entries_controller.rb +++ b/app/controllers/diary_entries_controller.rb @@ -47,6 +47,8 @@ class DiaryEntriesController < ApplicationController @title = t ".in_language_title", :language => Language.find(params[:language]).english_name entries = entries.where(:language_code => params[:language]) else + candidate_codes = preferred_languages.flat_map(&:candidates).uniq.map(&:to_s) + @languages = Language.where(:code => candidate_codes).in_order_of(:code, candidate_codes) @title = t ".title" end end diff --git a/app/controllers/messages_controller.rb b/app/controllers/messages_controller.rb index adb53b43b..2ca86fc02 100644 --- a/app/controllers/messages_controller.rb +++ b/app/controllers/messages_controller.rb @@ -47,7 +47,7 @@ class MessagesController < ApplicationController render :action => "new" elsif @message.save flash[:notice] = t ".message_sent" - UserMailer.message_notification(@message).deliver_later + UserMailer.message_notification(@message).deliver_later if @message.notify_recipient? redirect_to :action => :inbox else @title = t "messages.new.title" @@ -107,6 +107,13 @@ class MessagesController < ApplicationController @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 = Message.where(:recipient => current_user).or(Message.where(:sender => current_user)).find(params[:message_id]) @@ -127,6 +134,23 @@ class MessagesController < ApplicationController render :action => "no_such_message", :status => :not_found end + # Moves message into Inbox by unsetting the muted-flag + def unmute + message = current_user.muted_messages.find(params[:message_id]) + + if message.unmute + flash[:notice] = t(".notice") + else + flash[:error] = t(".error") + end + + if current_user.muted_messages.none? + redirect_to inbox_messages_path + else + redirect_to muted_messages_path + end + end + private ## diff --git a/app/controllers/old_nodes_controller.rb b/app/controllers/old_nodes_controller.rb new file mode 100644 index 000000000..a5b9cf563 --- /dev/null +++ b/app/controllers/old_nodes_controller.rb @@ -0,0 +1,19 @@ +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 + + around_action :web_timeout + + def show + @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 +end diff --git a/app/controllers/old_relations_controller.rb b/app/controllers/old_relations_controller.rb new file mode 100644 index 000000000..9dda82021 --- /dev/null +++ b/app/controllers/old_relations_controller.rb @@ -0,0 +1,19 @@ +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 + + around_action :web_timeout + + def show + @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 +end diff --git a/app/controllers/old_ways_controller.rb b/app/controllers/old_ways_controller.rb new file mode 100644 index 000000000..d18121e6f --- /dev/null +++ b/app/controllers/old_ways_controller.rb @@ -0,0 +1,19 @@ +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 + + around_action :web_timeout + + def show + @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 +end diff --git a/app/controllers/site_controller.rb b/app/controllers/site_controller.rb index 862148b92..3d830c63f 100644 --- a/app/controllers/site_controller.rb +++ b/app/controllers/site_controller.rb @@ -50,6 +50,9 @@ class SiteController < ApplicationController expires_in 7.days, :public => true @key = YAML.load_file(Rails.root.join("config/key.yml")) @key.each_value do |layer_data| + layer_data.each do |entry| + entry["name"] = Array(entry["name"]) + end layer_data.each_cons(2) do |entry, next_entry| entry["max_zoom"] = next_entry["min_zoom"] - 1 if entry["name"] == next_entry["name"] && !entry["max_zoom"] && next_entry["min_zoom"] end diff --git a/app/controllers/user_blocks_controller.rb b/app/controllers/user_blocks_controller.rb index 546c8233c..07d0bc43c 100644 --- a/app/controllers/user_blocks_controller.rb +++ b/app/controllers/user_blocks_controller.rb @@ -8,11 +8,11 @@ class UserBlocksController < ApplicationController authorize_resource - before_action :lookup_user, :only => [:new, :create, :blocks_on, :blocks_by] + before_action :lookup_user, :only => [:new, :create, :revoke_all, :blocks_on, :blocks_by] before_action :lookup_user_block, :only => [:show, :edit, :update, :revoke] before_action :require_valid_params, :only => [:create, :update] before_action :check_database_readable - before_action :check_database_writable, :only => [:create, :update, :revoke] + before_action :check_database_writable, :only => [:create, :update, :revoke, :revoke_all] def index @params = params.permit @@ -39,11 +39,13 @@ class UserBlocksController < ApplicationController def create if @valid_params + now = Time.now.utc @user_block = UserBlock.new( :user => @user, :creator => current_user, :reason => params[:user_block][:reason], - :ends_at => Time.now.utc + @block_period.hours, + :created_at => now, + :ends_at => now + @block_period.hours, :needs_view => params[:user_block][:needs_view] ) @@ -87,6 +89,16 @@ 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 diff --git a/app/controllers/user_mutes_controller.rb b/app/controllers/user_mutes_controller.rb new file mode 100644 index 000000000..2068ab6a3 --- /dev/null +++ b/app/controllers/user_mutes_controller.rb @@ -0,0 +1,45 @@ +class UserMutesController < ApplicationController + include UserMethods + + layout "site" + + before_action :authorize_web + before_action :set_locale + + authorize_resource + + before_action :lookup_user, :only => [:create, :destroy] + before_action :check_database_readable + before_action :check_database_writable, :only => [:create, :destroy] + + def index + @muted_users = current_user.muted_users + @title = t ".title" + + redirect_to edit_account_path unless @muted_users.any? + end + + def create + user_mute = current_user.mutes.build(:subject => @user) + + if user_mute.save + flash[:notice] = t(".notice", :name => user_mute.subject.display_name) + else + flash[:error] = t(".error", :name => user_mute.subject.display_name, :full_message => user_mute.errors.full_messages.to_sentence.humanize) + end + + redirect_back_or_to user_mutes_path(current_user) + end + + def destroy + user_mute = current_user.mutes.find_by!(:subject => @user) + + if user_mute.destroy + flash[:notice] = t(".notice", :name => user_mute.subject.display_name) + else + flash[:error] = t(".error") + end + + redirect_back_or_to user_mutes_path(current_user) + end +end diff --git a/app/controllers/users_controller.rb b/app/controllers/users_controller.rb index f79c284e3..ab13f93be 100644 --- a/app/controllers/users_controller.rb +++ b/app/controllers/users_controller.rb @@ -104,11 +104,11 @@ class UsersController < ApplicationController render :action => "new" elsif current_user.auth_provider.present? # Verify external authenticator before moving on - session[:new_user] = current_user.attributes.slice("email", "display_name", "pass_crypt") + session[:new_user] = current_user.slice("email", "display_name", "pass_crypt", "pass_crypt_confirmation") redirect_to auth_url(current_user.auth_provider, current_user.auth_uid), :status => :temporary_redirect else # Save the user record - session[:new_user] = current_user.attributes.slice("email", "display_name", "pass_crypt") + session[:new_user] = current_user.slice("email", "display_name", "pass_crypt", "pass_crypt_confirmation") redirect_to :action => :terms end end @@ -355,6 +355,8 @@ class UsersController < ApplicationController domain_mx_servers(domain) end + return true if Acl.allow_account_creation(request.remote_ip, :domain => domain, :mx => mx_servers) + blocked = Acl.no_account_creation(request.remote_ip, :domain => domain, :mx => mx_servers) blocked ||= SIGNUP_IP_LIMITER && !SIGNUP_IP_LIMITER.allow?(request.remote_ip) diff --git a/app/helpers/authorization_helper.rb b/app/helpers/authorization_helper.rb new file mode 100644 index 000000000..11c8c298f --- /dev/null +++ b/app/helpers/authorization_helper.rb @@ -0,0 +1,13 @@ +module AuthorizationHelper + include ActionView::Helpers::TranslationHelper + + def authorization_scope(scope) + html = [] + html << t("oauth.scopes.#{scope}") + if Oauth::MODERATOR_SCOPES.include? scope + html << " " + html << image_tag("roles/moderator.png", :srcset => image_path("roles/moderator.svg", :class => "align-text-bottom"), :size => "20x20") + end + safe_join(html) + end +end diff --git a/app/helpers/browse_tags_helper.rb b/app/helpers/browse_tags_helper.rb index ffb88b43f..bbe4c63b1 100644 --- a/app/helpers/browse_tags_helper.rb +++ b/app/helpers/browse_tags_helper.rb @@ -34,9 +34,13 @@ module BrowseTagsHelper end safe_join(phones, "; ") elsif colour_value = colour_preview(key, value) - tag.span("", :class => "colour-preview-box float-end m-1 border border-dark border-opacity-10", :"data-colour" => colour_value, :title => t("browse.tag_details.colour_preview", :colour_value => colour_value)) + colour_value + svg = tag.svg :width => 14, :height => 14, :class => "float-end m-1" do + concat tag.title t("browse.tag_details.colour_preview", :colour_value => colour_value) + concat tag.rect :x => 0.5, :y => 0.5, :width => 13, :height => 13, :fill => colour_value, :stroke => "#2222" + end + svg + colour_value else - safe_join(value.split(";").map { |x| linkify(h(x)) }, ";") + safe_join(value.split(";", -1).map { |x| linkify(h(x)) }, ";") end end diff --git a/app/helpers/svg_helper.rb b/app/helpers/svg_helper.rb new file mode 100644 index 000000000..9c02fc1d9 --- /dev/null +++ b/app/helpers/svg_helper.rb @@ -0,0 +1,56 @@ +module SvgHelper + def previous_page_svg_tag(**options) + adjacent_page_svg_tag(dir == "rtl" ? 1 : -1, **options) + end + + def next_page_svg_tag(**options) + adjacent_page_svg_tag(dir == "rtl" ? -1 : 1, **options) + end + + def key_svg_tag(**options) + border_width = options["border"] ? (options["border-width"] || 1) : 0 + rect_attrs = { + :width => "100%", + :height => "100%", + :fill => options["fill"] || "none" + } + if border_width.positive? + rect_attrs[:x] = rect_attrs[:y] = format("%g", 0.5 * border_width) + rect_attrs[:width] = options["width"] - border_width + rect_attrs[:height] = options["height"] - border_width + end + svg_attrs = options.slice("width", "height", "opacity", :class) + + tag.svg(**svg_attrs) do + horizontal = "H#{options['width']}" + concat tag.rect(**rect_attrs, **stroke_attrs(options, "border")) if options["fill"] || options["border"] + if options["line"] + y_middle = format("%g", 0.5 * options["height"]) + concat tag.path(:d => "M0,#{y_middle} #{horizontal}", **stroke_attrs(options, "line")) + end + if options["casing"] + casing_width = options["casing-width"] || 1 + y_top = format("%g", 0.5 * casing_width) + y_bottom = format("%g", options["height"] - (0.5 * casing_width)) + concat tag.path(:d => "M0,#{y_top} #{horizontal} M0,#{y_bottom} #{horizontal}", **stroke_attrs(options, "casing")) + end + end + end + + private + + # returns "<" shape if side == -1; ">" if side == 1 + def adjacent_page_svg_tag(side, **options) + height = 15 + pad = 2 + segment = (0.5 * height) - pad + width = segment + (2 * pad) + path_data = "M#{side * (pad - (0.5 * width))},#{pad} l#{side * segment},#{segment} l#{-side * segment},#{segment}" + path_tag = tag.path :d => path_data, :fill => "none", :stroke => "currentColor", :"stroke-width" => 1.5 + tag.svg path_tag, :width => width, :height => height, :viewBox => "-#{0.5 * width} 0 #{width} #{height}", :class => options[:class] + end + + def stroke_attrs(attrs, prefix) + attrs.select { |key| key.start_with?(prefix) }.transform_keys { |key| key.delete_prefix(prefix).prepend("stroke") } + end +end diff --git a/app/mailers/user_mailer.rb b/app/mailers/user_mailer.rb index 8ca186aad..d1ad60b2c 100644 --- a/app/mailers/user_mailer.rb +++ b/app/mailers/user_mailer.rb @@ -44,11 +44,13 @@ class UserMailer < ApplicationMailer def gpx_success(trace, possible_points) with_recipient_locale trace.user do @to_user = trace.user.display_name + @trace_url = show_trace_url(trace.user, trace) @trace_name = trace.name @trace_points = trace.size @trace_description = trace.description @trace_tags = trace.tags @possible_points = possible_points + @my_traces_url = url_for(:controller => "traces", :action => "mine") mail :to => trace.user.email, :subject => t(".subject") diff --git a/app/models/acl.rb b/app/models/acl.rb index a65c3a35a..aa503f40c 100644 --- a/app/models/acl.rb +++ b/app/models/acl.rb @@ -41,6 +41,10 @@ class Acl < ApplicationRecord match(address, options).exists?(:k => "no_account_creation") end + def self.allow_account_creation(address, options = {}) + match(address, options).exists?(:k => "allow_account_creation") + end + def self.no_note_comment(address, domain = nil) match(address, :domain => domain).exists?(:k => "no_note_comment") end diff --git a/app/models/language.rb b/app/models/language.rb index 8d3e4583f..f1d40feea 100644 --- a/app/models/language.rb +++ b/app/models/language.rb @@ -26,7 +26,7 @@ class Language < ApplicationRecord def name name = english_name - name += " (#{native_name})" unless native_name.nil? + name += " (#{native_name})" unless native_name.nil? || native_name == english_name name end end diff --git a/app/models/message.rb b/app/models/message.rb index 7c12769d3..665e2d721 100644 --- a/app/models/message.rb +++ b/app/models/message.rb @@ -12,6 +12,7 @@ # to_user_visible :boolean default(TRUE), not null # from_user_visible :boolean default(TRUE), not null # body_format :enum default("markdown"), not null +# muted :boolean default(FALSE), not null # # Indexes # @@ -32,6 +33,10 @@ class Message < ApplicationRecord validates :body, :sent_on, :presence => true validates :title, :body, :characters => true + scope :muted, -> { where(:muted => true) } + + before_create :set_muted + def self.from_mail(mail, from, to) if mail.multipart? if mail.text_part @@ -65,4 +70,18 @@ class Message < ApplicationRecord sha256 << id.to_s Base64.urlsafe_encode64(sha256.digest)[0, 8] end + + def notify_recipient? + !muted? + end + + def unmute + update(:muted => false) + end + + private + + def set_muted + self.muted ||= UserMute.active?(:owner => recipient, :subject => sender) + end end diff --git a/app/models/user.rb b/app/models/user.rb index 1942a25cc..7faf748cd 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -34,12 +34,12 @@ # # Indexes # -# users_auth_idx (auth_provider,auth_uid) UNIQUE -# users_display_name_idx (display_name) UNIQUE -# users_display_name_lower_idx (lower((display_name)::text)) -# users_email_idx (email) UNIQUE -# users_email_lower_idx (lower((email)::text)) -# users_home_idx (home_tile) +# users_auth_idx (auth_provider,auth_uid) UNIQUE +# users_display_name_canonical_idx (lower(NORMALIZE(display_name, NFKC))) +# users_display_name_idx (display_name) UNIQUE +# users_email_idx (email) UNIQUE +# users_email_lower_idx (lower((email)::text)) +# users_home_idx (home_tile) # class User < ApplicationRecord @@ -51,9 +51,10 @@ class User < ApplicationRecord has_many :diary_comments, -> { order(:created_at => :desc) }, :inverse_of => :user has_many :diary_entry_subscriptions, :class_name => "DiaryEntrySubscription" has_many :diary_subscriptions, :through => :diary_entry_subscriptions, :source => :diary_entry - has_many :messages, -> { where(:to_user_visible => true).order(:sent_on => :desc).preload(:sender, :recipient) }, :foreign_key => :to_user_id - has_many :new_messages, -> { where(:to_user_visible => true, :message_read => false).order(:sent_on => :desc) }, :class_name => "Message", :foreign_key => :to_user_id + has_many :messages, -> { where(:to_user_visible => true, :muted => false).order(:sent_on => :desc).preload(:sender, :recipient) }, :foreign_key => :to_user_id + has_many :new_messages, -> { where(:to_user_visible => true, :muted => false, :message_read => false).order(:sent_on => :desc) }, :class_name => "Message", :foreign_key => :to_user_id has_many :sent_messages, -> { where(:from_user_visible => true).order(:sent_on => :desc).preload(:sender, :recipient) }, :class_name => "Message", :foreign_key => :from_user_id + has_many :muted_messages, -> { where(:to_user_visible => true, :muted => true).order(:sent_on => :desc).preload(:sender, :recipient) }, :class_name => "Message", :foreign_key => :to_user_id has_many :friendships, -> { joins(:befriendee).where(:users => { :status => %w[active confirmed] }) } has_many :friends, :through => :friendships, :source => :befriendee has_many :tokens, :class_name => "UserToken", :dependent => :destroy @@ -75,6 +76,9 @@ class User < ApplicationRecord has_many :blocks_created, :class_name => "UserBlock", :foreign_key => :creator_id, :inverse_of => :creator has_many :blocks_revoked, :class_name => "UserBlock", :foreign_key => :revoker_id, :inverse_of => :revoker + has_many :mutes, -> { order(:created_at => :desc) }, :class_name => "UserMute", :foreign_key => :owner_id, :inverse_of => :owner + has_many :muted_users, :through => :mutes, :source => :subject + has_many :roles, :class_name => "UserRole" has_many :issues, :class_name => "Issue", :foreign_key => :reported_user_id, :inverse_of => :reported_user @@ -91,10 +95,11 @@ class User < ApplicationRecord validates :display_name, :presence => true, :length => 3..255, :exclusion => %w[new terms save confirm confirm-email go_public reset-password forgot-password suspended] validates :display_name, :if => proc { |u| u.display_name_changed? }, - :uniqueness => { :case_sensitive => false } + :normalized_uniqueness => { :case_sensitive => false } validates :display_name, :if => proc { |u| u.display_name_changed? }, :characters => { :url_safe => true }, :whitespace => { :leading => false, :trailing => false } + validate :display_name_cannot_be_user_id_with_other_id, :if => proc { |u| u.display_name_changed? } validates :email, :presence => true, :confirmation => true, :characters => true validates :email, :if => proc { |u| u.email_changed? }, :uniqueness => { :case_sensitive => false } @@ -115,11 +120,16 @@ class User < ApplicationRecord alias_attribute :created_at, :creation_time - after_initialize :encrypt_password before_save :encrypt_password before_save :update_tile after_save :spam_check + def display_name_cannot_be_user_id_with_other_id + display_name&.match(/^user_(\d+)$/i) do |m| + errors.add :display_name, I18n.t("activerecord.errors.messages.display_name_is_user_n") unless m[1].to_i == id + end + end + def to_param display_name end @@ -129,7 +139,7 @@ class User < ApplicationRecord user = find_by("email = ? OR display_name = ?", options[:username].strip, options[:username]) if user.nil? - users = where("LOWER(email) = LOWER(?) OR LOWER(display_name) = LOWER(?)", options[:username].strip, options[:username]) + users = where("LOWER(email) = LOWER(?) OR LOWER(NORMALIZE(display_name, NFKC)) = LOWER(NORMALIZE(?, NFKC))", options[:username].strip, options[:username]) user = users.first if users.count == 1 end diff --git a/app/models/user_mute.rb b/app/models/user_mute.rb new file mode 100644 index 000000000..9bee39b8d --- /dev/null +++ b/app/models/user_mute.rb @@ -0,0 +1,34 @@ +# == Schema Information +# +# Table name: user_mutes +# +# id :bigint(8) not null, primary key +# owner_id :bigint(8) not null +# subject_id :bigint(8) not null +# created_at :datetime not null +# updated_at :datetime not null +# +# Indexes +# +# index_user_mutes_on_owner_id_and_subject_id (owner_id,subject_id) UNIQUE +# +# Foreign Keys +# +# fk_rails_... (owner_id => users.id) +# fk_rails_... (subject_id => users.id) +# +class UserMute < ApplicationRecord + belongs_to :owner, :class_name => "User" + belongs_to :subject, :class_name => "User" + + validates :subject, :uniqueness => { :scope => :owner_id, :message => :is_already_muted } + + def self.active?(owner:, subject:) + !subject.administrator? && + !subject.moderator? && + exists?( + :owner => owner, + :subject => subject + ) + end +end diff --git a/app/validators/normalized_uniqueness_validator.rb b/app/validators/normalized_uniqueness_validator.rb new file mode 100644 index 000000000..eb3600c7b --- /dev/null +++ b/app/validators/normalized_uniqueness_validator.rb @@ -0,0 +1,18 @@ +class NormalizedUniquenessValidator < ActiveModel::EachValidator + def validate_each(record, attribute, value) + relation = if options.fetch(:case_sensitive, true) + record.class.where("NORMALIZE(#{attribute}, NFKC) = NORMALIZE(?, NFKC)", value) + else + record.class.where("LOWER(NORMALIZE(#{attribute}, NFKC)) = LOWER(NORMALIZE(?, NFKC))", value) + end + + relation = relation.where.not(record.class.primary_key => [record.id_in_database]) if record.persisted? + + if relation.exists? + error_options = options.except(:case_sensitive) + error_options[:value] = value + + record.errors.add(attribute, :taken, **error_options) + end + end +end diff --git a/app/views/application/_settings_menu.html.erb b/app/views/application/_settings_menu.html.erb index 9ce9755a2..8477a11a0 100644 --- a/app/views/application/_settings_menu.html.erb +++ b/app/views/application/_settings_menu.html.erb @@ -14,5 +14,10 @@ + <% if current_user.muted_users.any? %> + + <% end %> <% end %> diff --git a/app/views/browse/_common_details.html.erb b/app/views/browse/_common_details.html.erb index 4726799e7..7d3f8e829 100644 --- a/app/views/browse/_common_details.html.erb +++ b/app/views/browse/_common_details.html.erb @@ -1,6 +1,6 @@

<%= t "browse.version" %> - #<%= common_details.version %> + #<%= link_to_unless_current common_details.version, :controller => "old_#{@type.pluralize}", :action => :show, :version => common_details.version %>

@@ -19,7 +19,7 @@

  • <%= t "browse.in_changeset" %> - #<%= link_to common_details.changeset_id, :action => :changeset, :id => common_details.changeset_id %> + #<%= link_to common_details.changeset_id, changeset_path(common_details.changeset) %>
  • <% if @type == "node" and common_details.visible? %> @@ -33,4 +33,4 @@ <% end %> -<%= render :partial => "tag_details", :object => common_details.tags %> +<%= render :partial => "browse/tag_details", :object => common_details.tags %> diff --git a/app/views/browse/_node.html.erb b/app/views/browse/_node.html.erb index 152223ae7..cc8597292 100644 --- a/app/views/browse/_node.html.erb +++ b/app/views/browse/_node.html.erb @@ -8,7 +8,7 @@ <% else %>
    - <%= render :partial => "common_details", :object => node %> + <%= render :partial => "browse/common_details", :object => node %> <% unless node.ways.empty? and node.containing_relation_members.empty? %>

    <%= t "browse.part_of" %>

    @@ -17,7 +17,7 @@ <%= t "browse.part_of_ways", :count => node.ways.uniq.count %> @@ -26,7 +26,7 @@
    > <%= t "browse.part_of_relations", :count => node.containing_relation_members.uniq.count %>
      - <%= render :partial => "containing_relation", :collection => node.containing_relation_members.uniq %> + <%= render :partial => "browse/containing_relation", :collection => node.containing_relation_members.uniq %>
    <% end %> diff --git a/app/views/browse/_relation.html.erb b/app/views/browse/_relation.html.erb index 8db40c8c7..c513ea6d1 100644 --- a/app/views/browse/_relation.html.erb +++ b/app/views/browse/_relation.html.erb @@ -8,7 +8,7 @@
    <% else %>
    - <%= render :partial => "common_details", :object => relation %> + <%= render :partial => "browse/common_details", :object => relation %> <% unless relation.containing_relation_members.empty? %>

    <%= t "browse.part_of" %>

    @@ -25,7 +25,7 @@
    > <%= t ".members_count", :count => relation.relation_members.count %>
      - <%= render :partial => "relation_member", :collection => relation.relation_members %> + <%= render :partial => "browse/relation_member", :collection => relation.relation_members %>
    <% end %> diff --git a/app/views/browse/_relation_member.html.erb b/app/views/browse/_relation_member.html.erb index 5c96dadaf..5e52c04e8 100644 --- a/app/views/browse/_relation_member.html.erb +++ b/app/views/browse/_relation_member.html.erb @@ -1,5 +1,5 @@ <% member_class = link_class(relation_member.member_type.downcase, relation_member.member) - linked_name = link_to printable_name(relation_member.member), { :action => relation_member.member_type.downcase, :id => relation_member.member_id.to_s }, { :title => link_title(relation_member.member), :rel => link_follow(relation_member.member) } + linked_name = link_to printable_name(relation_member.member), { :controller => :browse, :action => relation_member.member_type.downcase, :id => relation_member.member_id.to_s }, { :title => link_title(relation_member.member), :rel => link_follow(relation_member.member) } type_str = t ".type.#{relation_member.member_type.downcase}" %>
  • <%= if relation_member.member_role.blank? diff --git a/app/views/browse/_tag_details.html.erb b/app/views/browse/_tag_details.html.erb index 9129ddaf5..cc08fe16a 100644 --- a/app/views/browse/_tag_details.html.erb +++ b/app/views/browse/_tag_details.html.erb @@ -2,7 +2,7 @@

    <%= t ".tags" %>

    - <%= render :partial => "tag", :collection => tag_details.sort %> + <%= render :partial => "browse/tag", :collection => tag_details.sort %>
    <% end %> diff --git a/app/views/browse/_way.html.erb b/app/views/browse/_way.html.erb index 4fdcd035e..26403f3fd 100644 --- a/app/views/browse/_way.html.erb +++ b/app/views/browse/_way.html.erb @@ -8,7 +8,7 @@
  • <% else %>
    - <%= render :partial => "common_details", :object => way %> + <%= render :partial => "browse/common_details", :object => way %> <% unless way.containing_relation_members.empty? %>

    <%= t "browse.part_of" %>

    @@ -27,10 +27,10 @@
    diff --git a/app/views/notes/show.html.erb b/app/views/notes/show.html.erb index fda8946b6..a7baccf85 100644 --- a/app/views/notes/show.html.erb +++ b/app/views/notes/show.html.erb @@ -49,6 +49,8 @@
    +
    <% if current_user.moderator? -%> <%= submit_tag t(".hide"), :name => "hide", :class => "btn btn-light", @@ -65,10 +67,16 @@ :url => comment_api_note_url(@note, "json") } %>
    + <% else -%> +

    + <%= link_to t(".log_in_to_comment"), login_path(:referer => request.fullpath) %> +

    <% end -%> <% else %>
    +
    <% if @note.status != "hidden" and current_user and current_user.moderator? -%> " class="btn btn-light" data-method="DELETE" data-url="<%= api_note_url(@note, "json") %>"> diff --git a/app/views/oauth2_applications/_application.html.erb b/app/views/oauth2_applications/_application.html.erb index 564fa81eb..57e852182 100644 --- a/app/views/oauth2_applications/_application.html.erb +++ b/app/views/oauth2_applications/_application.html.erb @@ -10,7 +10,7 @@
      <% application.scopes.each do |scope| -%> -
    • <%= t "oauth.scopes.#{scope}" %> (<%= scope %>)
    • +
    • <%= authorization_scope(scope) %> (<%= scope %>)
    • <% end -%>
    diff --git a/app/views/oauth2_authorizations/new.html.erb b/app/views/oauth2_authorizations/new.html.erb index ac9c7c6c5..8720bf05a 100644 --- a/app/views/oauth2_authorizations/new.html.erb +++ b/app/views/oauth2_authorizations/new.html.erb @@ -6,7 +6,7 @@
      <% @pre_auth.scopes.each do |scope| -%> -
    • <%= t "oauth.scopes.#{scope}" %>
    • +
    • <%= authorization_scope(scope) %>
    • <% end -%>
    diff --git a/app/views/oauth2_authorized_applications/_application.html.erb b/app/views/oauth2_authorized_applications/_application.html.erb index 8abbb26ed..28d048c4a 100644 --- a/app/views/oauth2_authorized_applications/_application.html.erb +++ b/app/views/oauth2_authorized_applications/_application.html.erb @@ -5,7 +5,7 @@
      <% application.authorized_scopes_for(current_user).each do |scope| -%> -
    • <%= t "oauth.scopes.#{scope}" %>
    • +
    • <%= authorization_scope(scope) %>
    • <% end -%>
    diff --git a/app/views/old_nodes/not_found.html.erb b/app/views/old_nodes/not_found.html.erb new file mode 100644 index 000000000..1ee5d9d3f --- /dev/null +++ b/app/views/old_nodes/not_found.html.erb @@ -0,0 +1,7 @@ +<% set_title(t("browse.not_found.title")) %> + +<%= render "sidebar_header", :title => t("browse.not_found.title") %> + +
    +

    <%= t ".sorry", :id => params[:id], :version => params[:version] %>

    +
    diff --git a/app/views/old_nodes/show.html.erb b/app/views/old_nodes/show.html.erb new file mode 100644 index 000000000..b69c29723 --- /dev/null +++ b/app/views/old_nodes/show.html.erb @@ -0,0 +1,25 @@ +<% set_title t("browse.node.title_html", :name => printable_name(@feature)) %> + +<%= render "sidebar_header", :title => t("browse.node.title_html", :name => printable_name(@feature)) %> + +<%= render :partial => "browse/node", :object => @feature %> + +
    + <% unless @feature.redacted? %> + <%= link_to t("browse.download_xml"), node_version_path(*@feature.id) %> + · + <% end %> + <%= link_to t("browse.view_details"), node_path(@feature.node_id) %> +
    + +
    + <% if @feature.version > 1 %> + <%= link_to "<< #{t('browse.version')} ##{@feature.version - 1}", old_node_path(@feature.node_id, @feature.version - 1) %> + · + <% end %> + <%= link_to t("browse.view_history"), node_history_path(@feature.node_id) %> + <% if @feature.version < @feature.current_node.version %> + · + <%= link_to "#{t('browse.version')} ##{@feature.version + 1} >>", old_node_path(@feature.node_id, @feature.version + 1) %> + <% end %> +
    diff --git a/app/views/old_relations/not_found.html.erb b/app/views/old_relations/not_found.html.erb new file mode 100644 index 000000000..1ee5d9d3f --- /dev/null +++ b/app/views/old_relations/not_found.html.erb @@ -0,0 +1,7 @@ +<% set_title(t("browse.not_found.title")) %> + +<%= render "sidebar_header", :title => t("browse.not_found.title") %> + +
    +

    <%= t ".sorry", :id => params[:id], :version => params[:version] %>

    +
    diff --git a/app/views/old_relations/show.html.erb b/app/views/old_relations/show.html.erb new file mode 100644 index 000000000..29d0b0079 --- /dev/null +++ b/app/views/old_relations/show.html.erb @@ -0,0 +1,25 @@ +<% set_title t("browse.relation.title_html", :name => printable_name(@feature)) %> + +<%= render "sidebar_header", :title => t("browse.relation.title_html", :name => printable_name(@feature)) %> + +<%= render :partial => "browse/relation", :object => @feature %> + +
    + <% unless @feature.redacted? %> + <%= link_to t("browse.download_xml"), relation_version_path(*@feature.id) %> + · + <% end %> + <%= link_to t("browse.view_details"), relation_path(@feature.relation_id) %> +
    + +
    + <% if @feature.version > 1 %> + <%= link_to "<< #{t('browse.version')} ##{@feature.version - 1}", old_relation_path(@feature.relation_id, @feature.version - 1) %> + · + <% end %> + <%= link_to t("browse.view_history"), relation_history_path(@feature.relation_id) %> + <% if @feature.version < @feature.current_relation.version %> + · + <%= link_to "#{t('browse.version')} ##{@feature.version + 1} >>", old_relation_path(@feature.relation_id, @feature.version + 1) %> + <% end %> +
    diff --git a/app/views/old_ways/not_found.html.erb b/app/views/old_ways/not_found.html.erb new file mode 100644 index 000000000..1ee5d9d3f --- /dev/null +++ b/app/views/old_ways/not_found.html.erb @@ -0,0 +1,7 @@ +<% set_title(t("browse.not_found.title")) %> + +<%= render "sidebar_header", :title => t("browse.not_found.title") %> + +
    +

    <%= t ".sorry", :id => params[:id], :version => params[:version] %>

    +
    diff --git a/app/views/old_ways/show.html.erb b/app/views/old_ways/show.html.erb new file mode 100644 index 000000000..e9976dd78 --- /dev/null +++ b/app/views/old_ways/show.html.erb @@ -0,0 +1,25 @@ +<% set_title t("browse.way.title_html", :name => printable_name(@feature)) %> + +<%= render "sidebar_header", :title => t("browse.way.title_html", :name => printable_name(@feature)) %> + +<%= render :partial => "browse/way", :object => @feature %> + +
    + <% unless @feature.redacted? %> + <%= link_to t("browse.download_xml"), way_version_path(*@feature.id) %> + · + <% end %> + <%= link_to t("browse.view_details"), way_path(@feature.way_id) %> +
    + +
    + <% if @feature.version > 1 %> + <%= link_to "<< #{t('browse.version')} ##{@feature.version - 1}", old_way_path(@feature.way_id, @feature.version - 1) %> + · + <% end %> + <%= link_to t("browse.view_history"), way_history_path(@feature.way_id) %> + <% if @feature.version < @feature.current_way.version %> + · + <%= link_to "#{t('browse.version')} ##{@feature.version + 1} >>", old_way_path(@feature.way_id, @feature.version + 1) %> + <% end %> +
    diff --git a/app/views/sessions/new.html.erb b/app/views/sessions/new.html.erb index 3bf4cde5f..f15430efa 100644 --- a/app/views/sessions/new.html.erb +++ b/app/views/sessions/new.html.erb @@ -40,7 +40,7 @@
    <%= hidden_field_tag("referer", params[:referer], :autocomplete => "off") %> - <%= text_field_tag("openid_url", "", :tabindex => 3, :autocomplete => "on", :class => "openid_url form-control") %> + <%= text_field_tag("openid_url", "", :tabindex => 5, :autocomplete => "on", :class => "openid_url form-control") %> (" target="_new"><%= t "accounts.edit.openid.link text" %>)
    diff --git a/app/views/shared/_markdown_help.html.erb b/app/views/shared/_markdown_help.html.erb index 9097c9d91..d2576bfcc 100644 --- a/app/views/shared/_markdown_help.html.erb +++ b/app/views/shared/_markdown_help.html.erb @@ -18,4 +18,7 @@
    <%= t ".image" %>
    ![<%= t ".alt" %>](<%= t ".url" %>)
    + +
    <%= t ".codeblock" %>
    +
    ~~~
    <%= t ".codeblock" %>
    ~~~
    diff --git a/app/views/shared/_pagination.html.erb b/app/views/shared/_pagination.html.erb index fbb9dcf43..3a6000362 100644 --- a/app/views/shared/_pagination.html.erb +++ b/app/views/shared/_pagination.html.erb @@ -1,22 +1,31 @@ <% end %> diff --git a/config/application.rb b/config/application.rb index e568c8540..4517e8adf 100644 --- a/config/application.rb +++ b/config/application.rb @@ -35,6 +35,8 @@ module OpenStreetMap # Enable locale fallbacks for I18n (makes lookups for any locale fall back to # the I18n.default_locale when a translation cannot be found). config.i18n.fallbacks = true + # Enables custom error message formats + config.active_model.i18n_customize_full_message = true # Use logstash for logging if required if Settings.key?(:logstash_path) diff --git a/config/initializers/secure_headers.rb b/config/initializers/secure_headers.rb index 778b5b827..60f155139 100644 --- a/config/initializers/secure_headers.rb +++ b/config/initializers/secure_headers.rb @@ -7,7 +7,7 @@ csp_policy = { :form_action => %w['self'], :frame_ancestors => %w['self'], :frame_src => %w['self'], - :img_src => %w['self' data: www.gravatar.com *.wp.com tile.openstreetmap.org *.tile.openstreetmap.org *.tile.thunderforest.com tileserver.memomaps.de tile.tracestrack.com *.openstreetmap.fr], + :img_src => %w['self' data: www.gravatar.com *.wp.com tile.openstreetmap.org *.tile.openstreetmap.org *.tile.thunderforest.com tile.tracestrack.com *.openstreetmap.fr], :manifest_src => %w['self'], :media_src => %w['none'], :object_src => %w['self'], diff --git a/config/key.yml b/config/key.yml index 5ee24e913..a78dbb282 100644 --- a/config/key.yml +++ b/config/key.yml @@ -1,104 +1,163 @@ mapnik: - # transportation - - { min_zoom: 6, max_zoom: 19, name: motorway, image: motorway.png } - - { min_zoom: 6, max_zoom: 7, name: main_road, image: mainroad.png } - - { min_zoom: 8, max_zoom: 11, name: main_road, image: mainroad8.png } - - { min_zoom: 12, max_zoom: 19, name: main_road, image: mainroad12.png } - - { min_zoom: 13, max_zoom: 19, name: track, image: track.png } - - { min_zoom: 13, max_zoom: 19, name: bridleway, image: bridleway.png } - - { min_zoom: 13, max_zoom: 19, name: cycleway, image: cycleway.png } - - { min_zoom: 13, max_zoom: 19, name: footway, image: footway.png } - - { min_zoom: 8, max_zoom: 11, name: rail, image: rail.png } - - { min_zoom: 12, max_zoom: 19, name: rail, image: rail12.png } - - { min_zoom: 13, max_zoom: 19, name: subway, image: subway.png } - - { min_zoom: 13, max_zoom: 19, name: tram, image: tram.png } - - { min_zoom: 12, max_zoom: 19, name: cable, image: cable.png } - - { min_zoom: 11, max_zoom: 19, name: runway, image: runway.png } - - { min_zoom: 12, max_zoom: 19, name: apron, image: apron.png } + # transportation: roads.mss + - { min_zoom: 6, name: motorway, width: 52, height: 1, line: "#e66e89", line-width: 1 } + - { min_zoom: 7, name: motorway, width: 52, height: 3, line: "#e66e89", line-width: 1.5 } + - { min_zoom: 9, name: motorway, width: 52, height: 2, line: "#e66e89", line-width: 2 } + - { min_zoom: 12, name: motorway, width: 52, height: 5, fill: "#e892a2", casing: "#dc2a67", casing-width: 0.5 } + - { min_zoom: 15, name: motorway, width: 52, height: 10, fill: "#e892a2", casing: "#dc2a67" } + - { min_zoom: 6, name: main_road, width: 52, height: 3, line: "#f6967a", line-width: 1 } + - { min_zoom: 7, name: main_road, width: 52, height: 3, line: "#f6967a", line-width: 1.25 } + - { min_zoom: 8, name: main_road, image: mainroad8.svg } + - { min_zoom: 9, name: main_road, image: mainroad9.svg } + - { min_zoom: 12, name: main_road, image: mainroad12.svg } + - { min_zoom: 15, name: main_road, image: mainroad15.svg } + - { min_zoom: 13, name: track, width: 52, height: 3, opacity: .8, line: "#996600", line-width: 1.5, line-dasharray: "6 5" } + - { min_zoom: 13, name: bridleway, width: 52, height: 3, line: green, line-width: 1.25, line-dasharray: "4 2" } + - { min_zoom: 13, name: cycleway, width: 52, height: 1, line: blue, line-dasharray: "3 3.5" } + - { min_zoom: 13, name: footway, width: 52, height: 3, line: salmon, line-width: 1.3, line-dasharray: "3 3.5" } + - { min_zoom: 8, name: rail, width: 52, height: 1, fill: "#787878" } + - { min_zoom: 12, name: rail, width: 52, height: 3, fill: "#707070", line: white, line-dasharray: 8, line-dashoffset: 2 } + - { min_zoom: 18, name: rail, width: 52, height: 4, fill: "#707070", line: white, line-dasharray: 8, line-dashoffset: 2, line-width: 2 } + - { min_zoom: 12, name: subway, width: 52, height: 2, fill: "#999" } + - { min_zoom: 8, name: light_rail, width: 52, height: 1, fill: "#ccc" } + - { min_zoom: 10, name: light_rail, width: 52, height: 1, fill: "#aaa" } + - { min_zoom: 13, name: light_rail, width: 52, height: 2, fill: "#666" } + - { min_zoom: 12, name: tram, width: 52, height: 1, line: "#6e6e6e", line-width: 0.75 } + - { min_zoom: 14, name: tram, width: 52, height: 3, line: "#6e6e6e", line-width: 1 } + - { min_zoom: 15, name: tram, width: 52, height: 3, line: "#6e6e6e", line-width: 1.5 } + - { min_zoom: 17, name: tram, width: 52, height: 2, line: "#6e6e6e", line-width: 2 } + - { min_zoom: 12, name: [cable_car, chair_lift], image: cable.png } + - { min_zoom: 11, name: [runway, taxiway], image: runway11.svg } + - { min_zoom: 12, name: [runway, taxiway], image: runway12.svg } + - { min_zoom: 13, name: [runway, taxiway], image: runway13.svg } + - { min_zoom: 14, name: [runway, taxiway], image: runway14.svg } + - { min_zoom: 11, name: apron, width: 26, height: 10, fill: "#dadae0" } # landcover.mss # administrative boundaries: admin.mss - { name: admin, width: 52, height: 2, fill: "#8d618b88" } + # places: placenames.mss + - { min_zoom: 4, max_zoom: 6, name: capital, image: capital4.svg } + - { min_zoom: 7, max_zoom: 7, name: capital, image: capital7.svg } + - { min_zoom: 4, max_zoom: 5, name: city, image: city4.svg } + - { min_zoom: 6, max_zoom: 7, name: city, image: city6.svg } # landcover z5: landcover.mss, water.mss - - { name: lake, width: 26, height: 10, fill: "#aad3df" } - - { min_zoom: 5, max_zoom: 9, name: glacier, image: glacier5.svg } - - { min_zoom: 10, name: glacier, image: glacier10.svg } - - { min_zoom: 5, max_zoom: 11, name: forest, width: 26, height: 10, fill: "#bddab1" } - - { min_zoom: 12, name: forest, width: 26, height: 10, fill: "#add19e" } - - { min_zoom: 5, max_zoom: 11, name: orchard, width: 26, height: 10, fill: "#bee5b5" } - - { min_zoom: 12, name: orchard, width: 26, height: 10, fill: "#aedfa3" } - - { min_zoom: 5, max_zoom: 11, name: grass, width: 26, height: 10, fill: "#d7efc0" } - - { min_zoom: 12, name: grass, width: 26, height: 10, fill: "#cdebb0" } - - { min_zoom: 5, max_zoom: 11, name: farmland, width: 26, height: 10, fill: "#f1f3dd" } + - { name: [lake, reservoir], width: 26, height: 10, fill: "#aad3df" } + - { name: intermittent_water, image: intermittent_water.svg } + - { min_zoom: 5, name: glacier, width: 26, height: 10, fill: "#ddecec", border: "#9cf" } + - { min_zoom: 10, name: glacier, width: 26, height: 10, fill: "#ddecec", border: "#9cf", border-dasharray: "4 2" } + - { min_zoom: 10, name: reef, image: reef.png } + - { min_zoom: 10, name: wetland, image: wetland.png } + - { min_zoom: 5, name: [forest, wood], width: 26, height: 10, fill: "#bddab1" } + - { min_zoom: 12, name: [forest, wood], width: 26, height: 10, fill: "#add19e" } + - { min_zoom: 5, name: [orchard, vineyard], width: 26, height: 10, fill: "#bee5b5" } + - { min_zoom: 12, name: [orchard, vineyard], width: 26, height: 10, fill: "#aedfa3" } + - { min_zoom: 5, name: [grass, meadow], width: 26, height: 10, fill: "#d7efc0" } + - { min_zoom: 12, name: [grass, meadow], width: 26, height: 10, fill: "#cdebb0" } + - { min_zoom: 5, name: farmland, width: 26, height: 10, fill: "#f1f3dd" } - { min_zoom: 12, name: farmland, width: 26, height: 10, fill: "#eef0d5" } - - { min_zoom: 5, max_zoom: 11, name: heathland, width: 26, height: 10, fill: "#dee1b2" } + - { min_zoom: 5, name: heathland, width: 26, height: 10, fill: "#dee1b2" } - { min_zoom: 12, name: heathland, width: 26, height: 10, fill: "#d6d99f" } - - { min_zoom: 5, max_zoom: 11, name: scrubland, width: 26, height: 10, fill: "#d3dfbc" } + - { min_zoom: 5, name: scrubland, width: 26, height: 10, fill: "#d3dfbc" } - { min_zoom: 12, name: scrubland, width: 26, height: 10, fill: "#c8d7ab" } - - { min_zoom: 5, max_zoom: 11, name: bare_rock, width: 26, height: 10, fill: "#f1eae3" } + - { min_zoom: 5, name: bare_rock, width: 26, height: 10, fill: "#f1eae3" } - { min_zoom: 12, name: bare_rock, width: 26, height: 10, fill: "#eee5dc" } - - { min_zoom: 5, max_zoom: 11, name: sand, width: 26, height: 10, fill: "#f7edd1" } + - { min_zoom: 5, name: sand, width: 26, height: 10, fill: "#f7edd1" } - { min_zoom: 12, name: sand, width: 26, height: 10, fill: "#f5e9c6" } # landuse z8, z10: landcover.mss - { min_zoom: 10, name: park, width: 26, height: 10, fill: "#c8facc" } - { min_zoom: 10, name: golf, width: 26, height: 10, fill: "#def6c0" } - - { min_zoom: 8, max_zoom: 11, name: built_up, width: 26, height: 10, fill: "#d9d9d9" } + - { min_zoom: 8, name: built_up, width: 26, height: 10, fill: "#d9d9d9" } - { min_zoom: 12, max_zoom: 12, name: built_up, width: 26, height: 10, fill: "#dddddd" } - { min_zoom: 13, name: resident, width: 26, height: 10, fill: "#e0dfdf" } - { min_zoom: 13, name: retail, width: 26, height: 10, fill: "#ffd6d1" } - { min_zoom: 13, name: commercial, width: 26, height: 10, fill: "#f2dad9" } - { min_zoom: 13, name: industrial, width: 26, height: 10, fill: "#ebdbe8" } - - { min_zoom: 10, max_zoom: 11, name: farm, width: 26, height: 10, fill: "#f7e3c8" } + - { min_zoom: 10, name: farm, width: 26, height: 10, fill: "#f7e3c8" } - { min_zoom: 12, name: farm, width: 26, height: 10, fill: "#f5dcba" } - - { min_zoom: 10, max_zoom: 11, name: brownfield, width: 26, height: 10, fill: "#d2d2c3" } + - { min_zoom: 10, name: brownfield, width: 26, height: 10, fill: "#d2d2c3" } - { min_zoom: 12, name: brownfield, width: 26, height: 10, fill: "#c7c7b4" } - - { min_zoom: 10, max_zoom: 11, name: cemetery, width: 26, height: 10, fill: "#bbd5be" } + - { min_zoom: 10, name: cemetery, width: 26, height: 10, fill: "#bbd5be" } - { min_zoom: 12, name: cemetery, width: 26, height: 10, fill: "#aacbaf" } - - { min_zoom: 10, max_zoom: 11, name: allotments, width: 26, height: 10, fill: "#d4e6cc" } + - { min_zoom: 10, name: allotments, width: 26, height: 10, fill: "#d4e6cc" } - { min_zoom: 12, name: allotments, width: 26, height: 10, fill: "#c9e1bf" } - { min_zoom: 11, name: pitch, width: 26, height: 10, fill: "#88e0be" } - { min_zoom: 11, name: centre, width: 26, height: 10, fill: "#dffce2" } - { min_zoom: 10, name: reserve, image: reserve.svg } # admin.mss - - { min_zoom: 8, name: military, image: military.svg } + - { min_zoom: 8, name: military, image: military.svg } + - { min_zoom: 13, name: [school, university, hospital], image: school.svg } + # buildings: buildings.mss + - { min_zoom: 14, name: building, width: 10, height: 10, fill: "#ab9793" } + - { min_zoom: 15, name: building, width: 10, height: 10, fill: "#b9a99c", border: "#a99a8d" } + - { min_zoom: 16, name: building, width: 10, height: 10, fill: "#c4b6ab", border: "#a99a8d" } + # stations: stations.mss + - { min_zoom: 12, name: station, width: 4, height: 4, fill: "#7981b0" } + - { min_zoom: 13, name: station, width: 6, height: 6, fill: "#7981b0" } + - { min_zoom: 15, name: station, width: 9, height: 9, fill: "#7981b0" } # other - - { min_zoom: 12, max_zoom: 19, name: school, image: school.png } - - { min_zoom: 12, max_zoom: 19, name: building, image: building.png } - - { min_zoom: 12, max_zoom: 19, name: station, image: station.png } - - { min_zoom: 11, max_zoom: 19, name: summit, image: summit.png } - - { min_zoom: 12, max_zoom: 19, name: tunnel, image: tunnel.png } - - { min_zoom: 13, max_zoom: 19, name: bridge, image: bridge.png } - - { min_zoom: 15, max_zoom: 19, name: private, image: private.png } - - { min_zoom: 15, max_zoom: 19, name: destination, image: destination.png } - - { min_zoom: 12, max_zoom: 19, name: construction, image: construction.png } + - { min_zoom: 11, name: [summit, peak], image: summit.svg } # amenity-points.mss + - { min_zoom: 13, name: tunnel, width: 50, height: 5, casing: grey, casing-dasharray: "4 2", casing-dashoffset: 1 } # roads.mss + - { min_zoom: 13, name: bridge, width: 50, height: 5, casing: black } # roads.mss + - { min_zoom: 15, name: private, image: private.png } + - { min_zoom: 15, name: destination, image: destination.png } + - { min_zoom: 12, name: construction, image: construction.png } cyclemap: - - { min_zoom: 0, max_zoom: 11, name: motorway, image: motorway.png } - - { min_zoom: 12, max_zoom: 19, name: motorway, image: motorway12.png } - - { min_zoom: 0, max_zoom: 11, name: trunk, image: trunk.png } - - { min_zoom: 12, max_zoom: 19, name: trunk, image: trunk12.png } - - { min_zoom: 7, max_zoom: 11, name: primary, image: primary.png } - - { min_zoom: 12, max_zoom: 19, name: primary, image: primary12.png } - - { min_zoom: 9, max_zoom: 11, name: secondary, image: secondary.png } - - { min_zoom: 12, max_zoom: 19, name: secondary, image: secondary12.png } - - { min_zoom: 13, max_zoom: 19, name: track, image: track.png } - - { min_zoom: 8, max_zoom: 19, name: cycleway, image: cycleway.png } - - { min_zoom: 5, max_zoom: 12, name: cycleway_national, image: cycleway_national.png } - - { min_zoom: 13, max_zoom: 19, name: cycleway_national, image: cycleway_national13.png } - - { min_zoom: 5, max_zoom: 12, name: cycleway_regional, image: cycleway_regional.png } - - { min_zoom: 13, max_zoom: 19, name: cycleway_regional, image: cycleway_regional13.png } - - { min_zoom: 8, max_zoom: 12, name: cycleway_local, image: cycleway_local.png } - - { min_zoom: 13, max_zoom: 19, name: cycleway_local, image: cycleway_local13.png } - - { min_zoom: 13, max_zoom: 19, name: footway, image: footway.png } - - { min_zoom: 7, max_zoom: 13, name: rail, image: rail.png } - - { min_zoom: 14, max_zoom: 19, name: rail, image: rail14.png } - - { min_zoom: 9, max_zoom: 19, name: forest, image: forest.png } - - { min_zoom: 10, max_zoom: 19, name: common, image: common.png } - - { min_zoom: 7, max_zoom: 19, name: lake, image: lake.png } - - { min_zoom: 14, max_zoom: 19, name: bicycle_shop, image: bicycle_shop.png } - - { min_zoom: 14, max_zoom: 19, name: bicycle_parking, image: bicycle_parking.png } - - { min_zoom: 16, max_zoom: 19, name: toilets, image: toilets.png } + - { min_zoom: 5, name: motorway, width: 50, height: 2, fill: "#9a9ab1" } + - { min_zoom: 9, name: motorway, width: 50, height: 3, fill: "#9a9ab1" } + - { min_zoom: 12, name: motorway, width: 50, height: 5, fill: "#bdbece", casing: "#8d95a7" } + - { min_zoom: 13, name: motorway, width: 50, height: 9, fill: "#bdbece", casing: "#8d95a7" } + - { min_zoom: 6, name: trunk, width: 50, height: 2, fill: "#c8d8c8" } + - { min_zoom: 12, name: trunk, width: 50, height: 4, fill: "#c8d8c8", casing: "#abb5a4" } + - { min_zoom: 13, name: trunk, width: 50, height: 8, fill: "#c8d8c8", casing: "#abb5a4" } + - { min_zoom: 8, name: primary, width: 50, height: 2, fill: "#d8c8c8" } + - { min_zoom: 12, name: primary, width: 50, height: 4, fill: "#f0e3e3", casing: "#d4b6b7" } + - { min_zoom: 13, name: primary, width: 50, height: 8, fill: "#f0e3e3", casing: "#d4b6b7" } + - { min_zoom: 10, name: secondary, width: 50, height: 1, fill: "#dadacc" } + - { min_zoom: 12, name: secondary, width: 50, height: 4, fill: "#ededc8", casing: "#c8b48a" } + - { min_zoom: 13, name: secondary, width: 50, height: 7, fill: "#ededc8", casing: "#c8b48a" } + - { min_zoom: 15, name: pedestrian, width: 50, height: 6, fill: "#e2e3e2", casing: "#9a9a9a" } + - { min_zoom: 13, name: track, width: 50, height: 3, fill: white, casing: "#999", casing-dasharray: "5 3", casing-dashoffset: 1 } + - { min_zoom: 15, name: track, width: 50, height: 4, fill: white, casing: "#999", casing-dasharray: "5 3", casing-dashoffset: 1 } + - { min_zoom: 17, name: track, width: 50, height: 5, fill: white, casing: "#999", casing-dasharray: "5 3", casing-dashoffset: 1 } + - { min_zoom: 13, name: bridleway, width: 52, height: 3, line: green, line-width: 1.5, line-dasharray: "4 2" } + - { min_zoom: 8, name: cycleway, width: 50, height: 3, line: "#0100fe", line-width: 1.5, line-dasharray: "6 2" } + - { min_zoom: 5, name: cycleway_national, width: 50, height: 2, fill: "#fe0000" } + - { min_zoom: 12, name: cycleway_national, width: 50, height: 3, fill: "#fe0000" } + - { min_zoom: 13, name: cycleway_national, width: 50, height: 12, fill: "#ffb3b3" } + - { min_zoom: 7, name: cycleway_regional, width: 50, height: 2, fill: "#b638fb" } + - { min_zoom: 12, name: cycleway_regional, width: 50, height: 3, fill: "#b638fb" } + - { min_zoom: 13, name: cycleway_regional, width: 50, height: 10, fill: "#ddb5d9" } + - { min_zoom: 8, name: cycleway_local, width: 50, height: 2, fill: "#0100fe" } + - { min_zoom: 12, name: cycleway_local, width: 50, height: 3, fill: "#0100fe" } + - { min_zoom: 13, name: cycleway_local, width: 50, height: 8, fill: "#b2b2ff" } + - { min_zoom: 10, name: cycleway_mtb, width: 50, height: 2, fill: "#ff7b1c" } + - { min_zoom: 13, name: cycleway_mtb, width: 50, height: 6, fill: "#fbcaa3" } + - { min_zoom: 13, name: footway, width: 50, height: 3, line: "#bd6d6e", line-width: 1.5, line-dasharray: "6 2" } + - { min_zoom: 7, name: rail, width: 50, height: 3, line: "#999999", line-width: 1.5 } + - { min_zoom: 14, name: rail, width: 50, height: 4, fill: "#999999", line: white, line-dasharray: 4, line-width: 2 } + - { min_zoom: 1, name: [lake, reservoir], width: 26, height: 10, fill: "#addeff" } + - { min_zoom: 9, name: [forest, wood], width: 26, height: 10, fill: "#b3d6a4" } + - { min_zoom: 10, name: meadow, width: 26, height: 10, fill: "#c0de9c" } + - { min_zoom: 10, name: park, width: 26, height: 10, fill: "#cbe4c4" } + - { min_zoom: 10, name: common, width: 26, height: 10, fill: "#d4f0d1" } + - { min_zoom: 10, name: heathland, width: 26, height: 10, fill: "#eaf0d6" } + - { min_zoom: 11, max_zoom: 13, name: resident, width: 26, height: 10, fill: "#e2e2e2" } + - { min_zoom: 11, name: industrial, width: 26, height: 10, fill: "#f1dede" } + - { min_zoom: 11, name: allotments, width: 26, height: 10, fill: "#d7d7b1" } + - { min_zoom: 12, name: cemetery, width: 26, height: 10, fill: "#abcfb1" } + - { min_zoom: 12, name: pitch, width: 26, height: 10, fill: "#ade0c5" } + - { min_zoom: 13, name: centre, width: 26, height: 10, fill: "#b4e9cd" } + - { min_zoom: 13, name: beach, image: beach.png } + - { min_zoom: 13, name: [school, university], width: 26, height: 10, fill: "#f0f0d8" } + - { min_zoom: 14, name: bicycle_shop, image: bicycle_shop.png } + - { min_zoom: 15, name: bicycle_rental, image: bicycle_rental_small.svg } + - { min_zoom: 17, name: bicycle_rental, image: bicycle_rental.png } + - { min_zoom: 15, name: bicycle_parking, image: bicycle_parking.png } + - { min_zoom: 16, name: bicycle_parking_small, image: bicycle_parking_small.svg } + - { min_zoom: 16, name: toilets, image: toilets.png } opnvkarte: - { min_zoom: 6, name: rail, width: 52, height: 1, fill: "#868686" } - { min_zoom: 8, name: rail, width: 52, height: 2, fill: "#868686" } - - { min_zoom: 11, name: rail, image: rail11.svg } - - { min_zoom: 15, name: rail, image: rail15.svg } + - { min_zoom: 11, name: rail, width: 52, height: 3, fill: "#868686", line: "#eeeeee", line-dasharray: 10, line-dashoffset: 9 } + - { min_zoom: 15, name: rail, width: 52, height: 4, fill: "#868686", line: "#eeeeee", line-dasharray: 10, line-dashoffset: 9, line-width: 2 } - { min_zoom: 17, name: rail, image: rail17.svg } - { min_zoom: 6, name: train, width: 52, height: 2, fill: "#ffc366" } - { min_zoom: 10, name: train, width: 52, height: 3, fill: "#ffc366" } @@ -109,10 +168,10 @@ opnvkarte: - { min_zoom: 12, name: light_rail, width: 52, height: 4, fill: "#66ff66" } - { min_zoom: 14, name: light_rail, width: 52, height: 8, fill: "#66ff66" } - { min_zoom: 16, name: light_rail, width: 52, height: 10, fill: "#66ff66" } - - { min_zoom: 10, name: tram_only, width: 52, height: 3, fill: "#3333fe" } - - { min_zoom: 12, name: tram_only, width: 52, height: 4, fill: "#3333fe" } - - { min_zoom: 14, name: tram_only, width: 52, height: 8, fill: "#3333fe" } - - { min_zoom: 16, name: tram_only, width: 52, height: 10, fill: "#3333fe" } + - { min_zoom: 10, name: tram, width: 52, height: 3, fill: "#3333fe" } + - { min_zoom: 12, name: tram, width: 52, height: 4, fill: "#3333fe" } + - { min_zoom: 14, name: tram, width: 52, height: 8, fill: "#3333fe" } + - { min_zoom: 16, name: tram, width: 52, height: 10, fill: "#3333fe" } - { min_zoom: 10, name: subway, width: 52, height: 3, fill: "#33339f" } - { min_zoom: 12, name: subway, width: 52, height: 4, fill: "#33339f" } - { min_zoom: 14, name: subway, width: 52, height: 8, fill: "#33339f" } @@ -132,3 +191,19 @@ opnvkarte: - { min_zoom: 15, name: bus_stop, image: bus_stop15.svg } - { min_zoom: 13, name: stop, image: stop13.svg } - { min_zoom: 15, name: stop, image: stop15.svg } + - { min_zoom: 8, name: motorway, width: 52, height: 4, fill: "#dddddd", casing: "#6d6d6d" } + - { min_zoom: 13, name: motorway, width: 52, height: 8, fill: "#dddddd", casing: "#6d6d6d" } + - { min_zoom: 15, name: motorway, width: 52, height: 13, fill: "#dddddd", casing: "#6d6d6d", line: "#ffffff", line-dasharray: 12, line-dashoffset: 4 } + - { min_zoom: 17, name: motorway, width: 52, height: 17, fill: "#dddddd", casing: "#6d6d6d", line: "#ffffff", line-dasharray: 12, line-dashoffset: 4, casing-width: 2 } + - { min_zoom: 8, name: main_road, width: 52, height: 1, fill: "#5c6d6d88" } + - { min_zoom: 11, name: main_road, width: 52, height: 4, fill: "#dddddd", casing: "#a1968b" } + - { min_zoom: 13, name: main_road, width: 52, height: 8, fill: "#dddddd", casing: "#a1968b" } + - { min_zoom: 15, name: main_road, width: 52, height: 13, fill: "#dddddd", casing: "#a1968b" } + - { min_zoom: 17, name: main_road, width: 52, height: 17, fill: "#dddddd", casing: "#a1968b" } + # landcover + - { min_zoom: 0, name: [lake, reservoir], width: 26, height: 10, fill: "#a1cbea" } + - { min_zoom: 8, name: [lake, reservoir], width: 26, height: 10, fill: "#bfd3ef" } + - { min_zoom: 4, name: [forest, wood], width: 26, height: 10, fill: "#b9c5a3" } + - { min_zoom: 4, name: built_up, width: 26, height: 10, fill: "#d8d8d8" } + - { min_zoom: 9, name: farmland, width: 26, height: 10, fill: "#eae8d6" } + - { min_zoom: 12, name: [park, allotments], width: 26, height: 10, fill: "#c2d89a" } diff --git a/config/locales/af.yml b/config/locales/af.yml index d3c6fc01b..7c128bdd3 100644 --- a/config/locales/af.yml +++ b/config/locales/af.yml @@ -1306,9 +1306,9 @@ af: resolved: Opgelos show: title: '%{status} Probleem #%{issue_id}' - report_created_at: Eerste vermelding op %{datetime} - last_resolved_at: Laas geregmaak op %{datetime} - last_updated_at: Laaste opgedateer op %{datetime} deur %{displayname} + report_created_at_html: Eerste vermelding op %{datetime} + last_resolved_at_html: Laas geregmaak op %{datetime} + last_updated_at_html: Laaste opgedateer op %{datetime} deur %{displayname} resolve: Los op ignore: Ignoreer reopen: Heropen @@ -1478,14 +1478,14 @@ af: messages: inbox: title: In-vakkie - my_inbox: My in-vakkie - my_outbox: My uit-vakkie - from: Van - subject: Onderwerp - date: Datum 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 @@ -1502,11 +1502,6 @@ af: heading: Geen so 'n boodskap nie outbox: title: Uit-vakkie - my_inbox: My in-vakkie - my_outbox: My uit-vakkie - to: Aan - subject: Onderwerp - date: Datum 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 @@ -1518,22 +1513,27 @@ af: 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 passwords: - lost_password: + new: title: Wagwoord verloor heading: Wagwoord vergeet? email address: 'E-posadres:' new password button: Herstel wagwoord + create: notice email cannot find: E-posadres is ongelukkig onverkrygbaar, jammer. - reset_password: + edit: title: Herstel wagwoord heading: Herstel wagwoord vir %{user} reset: Herstel wagwoord + update: flash changed: U wagwoord is gewysig. preferences: show: @@ -1639,12 +1639,7 @@ af: anon_edits_link_text: Lees waarom dit so is. export: title: Voer Uit - area_to_export: Area om uit te voer manually_select: Kies self 'n ander area - format_to_export: Formaat om uit te voer - osm_xml_data: OpenStreetMap XML-data - map_image: Kaartbeeld (wys standaardlaag) - embeddable_html: Versteekbare HTML-kode licence: Lisensie too_large: advice: 'As die uitvoering hierbo misluk, oorweeg gerus een van die volgende @@ -1654,17 +1649,6 @@ af: hieronder aan om massas data af te laai. planet: title: Planeet OSM - options: Voorkeure - format: Formaat - scale: Skaal - max: maksimum - image_size: Beeldgrootte - zoom: Vergroot - add_marker: Plaas 'n merker op die kaart - latitude: 'Breedte:' - longitude: 'Lengte:' - output: Uitset - paste_html: Plak HTML om in die webblad te versteek export_button: Voer uit fixthemap: title: Rapporteer 'n probleem / Corrigeer die kaart @@ -1719,34 +1703,24 @@ af: footway: Voetpad rail: Spoorweg subway: Ondergrondse spoorweg - tram: - - Ligte spoor - - trem - cable: - - Sweefspoor - - stoelhyser - runway: - - Aanloopbaan - - vliegtuigrybaan - apron: - - Lughaweplatform - - terminaal + cable_car: Sweefspoor + chair_lift: stoelhyser + runway: Aanloopbaan + taxiway: vliegtuigrybaan + apron: Lughaweplatform admin: Administratiewe grens forest: Woud wood: Bos golf: Gholfbaan park: Park + common: Gemeen resident: Woongebied - common: - - Gemeen - - weiland retail: Kleinhandel-gebied industrial: Nywerheidsgebied commercial: Handelsgebied heathland: Heide - lake: - - Meer - - reservoir + lake: Meer + reservoir: reservoir farm: Plaas brownfield: Braakveldterrein cemetery: Begraafplaas @@ -1755,14 +1729,12 @@ af: centre: Sportsentrum reserve: Natuurreservaat military: Militêre gebied - school: - - Skool - - universiteit + school: Skool + university: universiteit building: Betekenisvolle gebou station: Spoorwegstasie - summit: - - Piek - - piek + summit: Piek + peak: piek tunnel: Strepieomhulsel = tonnel bridge: Swart omhulsel = brug private: Privaat toegang diff --git a/config/locales/aln.yml b/config/locales/aln.yml index a367ef62e..bab97d647 100644 --- a/config/locales/aln.yml +++ b/config/locales/aln.yml @@ -723,13 +723,14 @@ aln: messages: inbox: title: Inbox - my_inbox: postë e mia - from: Prej - subject: Tema - date: Data 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 @@ -749,9 +750,6 @@ aln: body: Me na fal por nuk ka asnjë mesazh me at id. outbox: title: Dalje - to: Te - subject: Titulli - date: Data 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 @@ -768,28 +766,32 @@ aln: 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 passwords: - lost_password: + new: title: T'ka hup fjalkalimi heading: Ke harrue fjalkalimin? email address: 'Email Adresa:' new password button: Ndrysho fjalkalimin help_text: Shkrueje email adresen që je regjistrue me to, do t'ju deromi një lidhe rreth ksaj ku ju muni me ndrru fjalkalimin + create: notice email on way: Na vjen keq që e keni hup :-( po ni email ka me ju ardh së shpejti edhe muni me ricaktu. notice email cannot find: Smujtëm me gjet qat email adres, na vjen keq. - reset_password: + edit: title: Ricakto fjalëkalimin heading: Ricakto fjalëkalimin për %{user} reset: Ricakto Fjalëkalimin - flash changed: Fjalëkalimi juaj u ndryshua. flash token bad: Sun e gjetëm qat token, kontrolloje URL? + update: + flash changed: Fjalëkalimi juaj u ndryshua. profiles: edit: image: 'Imazhi:' @@ -867,26 +869,11 @@ aln: user_page_link: faqe përdorues anon_edits_link_text: Find out pse kjo është e rastit. export: - area_to_export: Zona për Eksport manually_select: Manualisht zgedhe ni zon te ndryshme - format_to_export: Formati për Eksport - osm_xml_data: OpenStreetMap XML të dhana - embeddable_html: HTML e trupzueshme licence: Licensa too_large: body: Kjo zonë është shum e madhe që të eksportohet si XML në OpenStreetMap. Të lutna afroje ma ngat ose mere një zonë ma të vogel. - options: Opcionet - format: Formati - scale: Shkallë - max: maks - image_size: Madhsia e Imazhit - zoom: Zmadho - add_marker: Shto ni shenues en harte - latitude: 'Lat:' - longitude: 'Lon:' - output: Outputi - paste_html: Fute HTML për me ngjit në web sajt export_button: Eksporto sidebar: search_results: Rezultatet e Kërkimit @@ -910,34 +897,24 @@ aln: footway: Këmbësore rail: Hekurudhor subway: Metro - tram: - - hekurudhor Lehta - - tramvaj - cable: - - teleferik - - heqë karrige - runway: - - Aeroporti i pistës - - taxiway - apron: - - aeroportit Aeroporti - - terminal + cable_car: teleferik + chair_lift: heqë karrige + runway: Aeroporti i pistës + taxiway: taxiway + apron: aeroportit Aeroporti admin: kufitare administrative forest: Pyll wood: Druri golf: fushë e golfit park: Park + common: I përbashkët resident: Zonë Rezidenciale - common: - - I përbashkët - - livadh retail: zonë me pakicë industrial: Zonë Industriale commercial: Zona Tregtare heathland: Heathland - lake: - - Liqe - - rezervuar + lake: Liqe + reservoir: rezervuar farm: Ferm brownfield: site Brownfield cemetery: Varrezë @@ -946,14 +923,12 @@ aln: centre: Qendër Sportive reserve: rezervë Natyra military: Zonë Ushtarake - school: - - Shkollë - - universitet + school: Shkollë + university: universitet building: ndërtimin e rëndësishme station: Stacion hekurudhor - summit: - - Samiti i - - pik + summit: Samiti i + peak: pik tunnel: tunel zorrë thye = bridge: Shtresë e jashtme e Zi = urë private: qasje privat diff --git a/config/locales/ar.yml b/config/locales/ar.yml index 43196a2b5..ebf499d96 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -17,6 +17,7 @@ # Author: FiberAhmed # Author: Gravitystorm # Author: Grille chompa +# Author: Hanzo64 # Author: HitomiAkane # Author: Houcinee1 # Author: Hubaishan @@ -1480,9 +1481,9 @@ ar: few: '%{count} تقرير' many: '%{count} تقارير' other: '%{count} تقرير' - report_created_at: أول بلاغ تم في %{datetime} - last_resolved_at: آخر حل تم في %{datetime} - last_updated_at: آخر تحديث تم في %{datetime} بواسطة %{displayname} + report_created_at_html: أول بلاغ تم في %{datetime} + last_resolved_at_html: آخر حل تم في %{datetime} + last_updated_at_html: آخر تحديث تم في %{datetime} بواسطة %{displayname} resolve: حل ignore: تجاهل reopen: إعادة فتح @@ -1750,8 +1751,6 @@ ar: messages: inbox: title: الوارد - my_inbox: الوارد - my_outbox: صندوق الصادر الخاص بي messages: لديك %{new_messages} و%{old_messages} new_messages: one: '%{count} رسالة جديدة' @@ -1759,11 +1758,14 @@ ar: old_messages: one: '%{count} رسالة قديمة' other: '%{count} رسائل قديمة' + no_messages_yet_html: ليست لديك رسائل بعد، لماذا لا تقوم بالاتصال ببعض %{people_mapping_nearby_link}؟ + people_mapping_nearby: مخططون في جواري + messages_table: from: من + to: إلى subject: الموضوع date: التاريخ - no_messages_yet_html: ليست لديك رسائل بعد، لماذا لا تقوم بالاتصال ببعض %{people_mapping_nearby_link}؟ - people_mapping_nearby: مخططون في جواري + actions: الإجراءات message_summary: unread_button: التعليم كغير مقروءة read_button: التعليم كمقروءة @@ -1783,17 +1785,15 @@ ar: body: عذرًا لا توجد رسالة بذلك المعرف. outbox: title: صندوق الصادر - my_inbox: صندوق البريد الوارد الخاص بي - my_outbox: صندوق البريد الصادر الخاص بي + actions: الإجراءات messages: one: لديك %{count} رسالة مبعوثة other: لديك %{count} رسائل مبعوثة - to: إلى - subject: الموضوع - date: التاريخ no_sent_messages_html: ليست لديك رسائل مرسلة بعد، لماذا لا تقوم بالاتصال ببعض %{people_mapping_nearby_link}؟ people_mapping_nearby: مخططون في جواري + muted: + title: الرسائل المخفية reply: wrong_user: "\uFEFFأنت مسجل للدخول باسم '%{user}' ولكن الرسالة التي طلبت الرد عليها لم تكن مرسلة لذلك المستخدم؛ يُرجَى تسجيل الدخول كمستخدم صحيح للرد." @@ -1807,28 +1807,35 @@ ar: لم تكن من أو إلى ذلك المستخدم؛ يُرجَى تسجيل الدخول كمستخدم صحيح للرد." sent_message_summary: destroy_button: حذف + heading: + my_inbox: الوارد + my_outbox: صندوق الصادر الخاص بي mark: as_read: عُلِّمت الرسالة كمقروءة as_unread: عُلِّمت الرسالة كغير مقروءة + unmute: + error: لم يتم نقل الرسالة إلى صندوق البريد destroy: destroyed: حُذِفت الرسالة passwords: - lost_password: + new: title: نسيان كلمة السر heading: أنسيت كلمة السر؟ email address: 'عنوان البريد الإلكتروني:' new password button: أعد ضبط كلمة السر help_text: أدخل عنوان البريد الإلكتروني الذي استخدمته للتسجيل، وسوف نرسل عليه رابطا يمكنك استخدامه لإعادة تعيين كلمة المرور. + create: notice email on way: نأسف لأنك أضعتها :-( ولكن هناك رسالة إلكترونية في طريقها إليك ستمكنك من إعادة تعيينها قريبًا. notice email cannot find: معذرةً، تعذر إيجاد عنوان البريد الإلكتروني. - reset_password: + edit: title: إعادة ضبط كلمة السر heading: إعادة تعيين كلمة السر %{user} reset: أعد ضبط كلمة السر - flash changed: كلمة مرورك قد تغيرت. flash token bad: لم نجد هذا النموذج، تحقق من المسار ربما؟ + update: + flash changed: كلمة مرورك قد تغيرت. preferences: show: title: تفضيلاتي @@ -2087,12 +2094,7 @@ ar: الميزة. export: title: صدِّر - area_to_export: المنطقة المطلوب تصديرها manually_select: اختر يدويًا منطقة أخرى - format_to_export: الهيئة المطلوب تصديرها - osm_xml_data: بيانات خريطة الشارع المفتوحة بصيغة XML - map_image: صورة الخريطة (عرض الطبقة الإفتراضية) - embeddable_html: HTML مضمن licence: الرخصة too_large: advice: 'إذا فشل التصدير أعلاه، فكِّر من فضلك باستخدام أحد المصادر الموضَّحة @@ -2112,17 +2114,6 @@ ar: other: title: مصادر أخرى description: مصادر إضافية مدرجة في الويكي خريطة الشارع المفتوحة - options: خيارات - format: الصيغة - scale: القياس - max: الأقصى - image_size: حجم الصورة - zoom: تكبير - add_marker: أضف علامة على الخريطة - latitude: 'خط العرض:' - longitude: 'خط الطول:' - output: الإخراج - paste_html: ألصق HTML لتضمينه في موقع ما export_button: صدِّر fixthemap: title: الإبلاغ عن مشكلة / إصلاح الخريطة @@ -2194,6 +2185,7 @@ ar: primary: طريق رئيسي secondary: طريق ثانوي unclassified: طريق غير مصنّف + pedestrian: طريق للمشاة track: مسار bridleway: مسلك خيول cycleway: طريق دراجات @@ -2202,57 +2194,50 @@ ar: cycleway_local: طريق الدراجات المحلي footway: طريق مشاة rail: سكة حديدية + train: قطار subway: قطار الأنفاق - tram: - - قطار خفيف - - ترام - cable: - - عربة أسلاك - - تلفريك - runway: - - مدرج مطار - - مدرج مطار لمناورات الطائرات - apron: - - ساحة مطار - - صالة مطار + ferry: عبارة + bus: حافلة + cable_car: عربة أسلاك + chair_lift: تلفريك + runway: مدرج مطار + taxiway: مدرج مطار لمناورات الطائرات + apron: ساحة مطار admin: حدود إدارية + city: مدينة forest: غابة wood: غابة golf: ملعب غولف park: منتزه + common: شائع resident: منطقة سكنية - common: - - شائع - - مرج - - حديقة retail: منطقة بيع بالمفرق industrial: منطقة صناعية commercial: منطقة تجارية heathland: أرض بور - lake: - - بحيرة - - خزان + lake: بحيرة + reservoir: خزان farm: مزرعة brownfield: موقع مخلفات cemetery: مقبرة allotments: حصص سكنية pitch: ملعب رياضي centre: مركز رياضي + beach: شاطئ reserve: محمية طبيعية military: منطقة عسكرية - school: - - مدرسة - - جامعة + school: مدرسة + university: جامعة building: مبنى كبير station: محطة قطار - summit: - - قمة - - ذروة + summit: قمة + peak: ذروة tunnel: غطاء متقطع = نفق bridge: غطاء أسود = جسر private: وصول خصوصي destination: وجهة الوصول construction: الطرق تحت الإنشاء + bus_stop: موقف حافلات bicycle_shop: متجر دراجات bicycle_parking: مرآب دراجات toilets: مرحاض @@ -2702,6 +2687,21 @@ ar: showing_page: الصفحة %{page} next: التالي » previous: « السابق + user_mutes: + index: + title: المستخدمون الممنوعون + user_mute_admins_and_moderators: يمكنك أن تُخفي الرسائل من المديرين والمُديرين + لكن رسائلهم لن تُخفى + table: + thead: + actions: الإجراءات + tbody: + send_message: أرسل رسالة + create: + error: لا يمكن كتم صوت %{name}. %{full_message}. + destroy: + notice: لقد قمت بإلغاء كتم صوت %{name}. + error: لا يمكن أن يكون الصوت غير مكتوم. رجاءً حاول مرة أخرى notes: index: title: ملاحظات مقدمة أو علق عليها %{user} diff --git a/config/locales/arz.yml b/config/locales/arz.yml index 762867a29..70fa3d63a 100644 --- a/config/locales/arz.yml +++ b/config/locales/arz.yml @@ -655,13 +655,14 @@ arz: messages: inbox: title: الوارد - my_inbox: الوارد - from: من - subject: الموضوع - date: التاريخ no_messages_yet_html: لا يوجد لديك رسائل بعد. لماذا لا تقوم بالاتصال مع بعض %{people_mapping_nearby_link}؟ people_mapping_nearby: مخططون فى جواري + messages_table: + from: من + to: إلى + subject: الموضوع + date: التاريخ message_summary: unread_button: علّم كغير مقروءة read_button: علّم كمقروءة @@ -677,9 +678,6 @@ arz: قبل أن تحاول إرسال المزيد. outbox: title: صندوق الصادر - to: إلى - subject: الموضوع - date: التاريخ no_sent_messages_html: لا يوجد لديك رسائل مرسله بعد. لماذا لا تقوم بالاتصال مع بعض %{people_mapping_nearby_link}؟ people_mapping_nearby: مخططون فى جواري @@ -689,28 +687,32 @@ arz: unread_button: علّم كغير مقروءة sent_message_summary: destroy_button: احذف + heading: + my_inbox: الوارد mark: as_read: عُلّمت الرساله مقروءة as_unread: عُلّمت الرساله كغير مقروءة destroy: destroyed: حُذفت الرسالة passwords: - lost_password: + new: title: نسيان كلمه المرور heading: أنسيت كلمه المرور؟ email address: 'عنوان البريد الإلكتروني:' new password button: إعاده ضبط كلمه المرور help_text: أدخل عنوان البريد الإلكترونى الذى استخدمته للتسجيل ، وسوف نرسل عليه رابط يمكنك استخدامه لإعاده تعيين كلمه المرور. + create: notice email on way: نأسف لأنك أضعتها :-( ولكن هناك رساله إلكترونيه فى طريقها إليك ستمكنك من إعاده تعيينها قريبًا. notice email cannot find: تعذّر إيجاد عنوان البريد الإلكترونى، نحن آسفون. - reset_password: + edit: title: إعاده ضبط كلمه المرور heading: إعاده تعيين كلمه المرور %{user} reset: إعاده ضبط كلمه المرور - flash changed: كلمه المرور الخاصه بك قد تغيرت. flash token bad: لم تجد تلك المعلومات، تحقق من الرابط ربما؟ + update: + flash changed: كلمه المرور الخاصه بك قد تغيرت. profiles: edit: home location: 'موقع المنزل:' @@ -738,23 +740,8 @@ arz: user_page_link: صفحه مستخدم anon_edits_link_text: ابحث عن السبب لماذا هو هذا الحال. export: - area_to_export: المنطقه المطلوب تصديرها manually_select: اختر يدويًا منطقه أخرى - format_to_export: الهيئه المطلوب تصديرها - osm_xml_data: معطيات خريطه الطريق المفتوح بنسق إكس أم أل - embeddable_html: HTML مضمن licence: الرخصة - options: خيارات - format: الهيئة - scale: القياس - max: الأقصى - image_size: حجم الصورة - zoom: تكبير - add_marker: أضف علامه على الخريطة - latitude: 'خط العرض:' - longitude: 'خط الطول:' - output: الخرج - paste_html: ألصق HTML لتضمينه فى موقع ما export_button: صدِّر sidebar: search_results: نتائج البحث @@ -778,30 +765,21 @@ arz: footway: طريق مشاة rail: سكه حديدية subway: قطار الأنفاق - tram: - - ترام - - ترام - runway: - - مدرج مطار للإقلاع/الهبوط - - مدرج مطار لمناورات الطائرات - apron: - - ساحه مطار - - صاله مطار + runway: مدرج مطار للإقلاع/الهبوط + taxiway: مدرج مطار لمناورات الطائرات + apron: ساحه مطار admin: حدود إدارية forest: غابة wood: غابة golf: ملعب غولف park: منتزه + common: شائع resident: منطقه سكنية - common: - - شائع - - مرج retail: منطقه بيع بالمفرق industrial: منطقه صناعية commercial: منطقه تجارية - lake: - - بحيرة - - خزان + lake: بحيرة + reservoir: خزان farm: أرض زراعية cemetery: مقبرة allotments: حصص سكنية @@ -809,14 +787,12 @@ arz: centre: مركز رياضي reserve: محميه طبيعية military: منطقه عسكرية - school: - - مدرسة - - جامعة + school: مدرسة + university: جامعة building: مبنى كبير station: محطه قطار - summit: - - قمة - - ذروة + summit: قمة + peak: ذروة private: استخدام خصوصي construction: الطرق تحت الإنشاء traces: diff --git a/config/locales/ast.yml b/config/locales/ast.yml index 730b48262..387fb1b29 100644 --- a/config/locales/ast.yml +++ b/config/locales/ast.yml @@ -1136,9 +1136,9 @@ ast: zero: Nun hai informes one: 1 informe other: '%{count} informes' - report_created_at: Hora del primer informe %{datetime} - last_resolved_at: Hora de la última resolución %{datetime} - last_updated_at: Hora del últimu anovamientu %{datetime} por %{displayname} + report_created_at_html: Hora del primer informe %{datetime} + last_resolved_at_html: Hora de la última resolución %{datetime} + last_updated_at_html: Hora del últimu anovamientu %{datetime} por %{displayname} resolve: Resolver ignore: Inorar reopen: Reabrir @@ -1359,7 +1359,6 @@ ast: messages: inbox: title: Buzón - my_inbox: El mio buzón messages: Tienes %{new_messages} y %{old_messages} new_messages: one: '%{count} mensaxe nuevu' @@ -1367,12 +1366,14 @@ ast: old_messages: one: '%{count} mensaxe vieyu' other: '%{count} mensaxes vieyos' - from: De - subject: Asuntu - date: Data 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 @@ -1395,9 +1396,6 @@ ast: messages: one: Tienes %{count} mensaxe unviáu other: Tienes %{count} mensaxes unviaos - to: Pa - subject: Asuntu - date: Data 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 @@ -1414,28 +1412,32 @@ ast: 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 passwords: - lost_password: + new: title: Contraseña perdida heading: ¿Escaecisti la contraseña? email address: 'Direición de corréu electrónicu:' new password button: Reestablecer contraseña help_text: Escribi les señes de corréu qu'usasti pa date d'alta, unviarémoste un enllaz que pues usar pa reestablecer la contraseña. + create: notice email on way: Sentimos que la perdieres :-( pero hai un corréu en camín pa que puedas reaniciala ceo. notice email cannot find: Nun s'alcontró esa direición de corréu. - reset_password: + edit: title: Reestablecer contraseña heading: Reestablecer la contraseña de %{user} reset: Reaniciar contraseña - flash changed: Cambióse la contraseña flash token bad: Nun s'alcontró esi token, ¿tendríes de comprobar la URL, seique? + update: + flash changed: Cambióse la contraseña preferences: show: edit_preferences: Editar les preferencies @@ -1583,12 +1585,7 @@ ast: se necesiten pa esta carauterística. export: title: Esportar - area_to_export: Área a esportar manually_select: Seleiciona manualmente un área distinta - format_to_export: Formatu a esportar - osm_xml_data: Datos XML d'OpenStreetMap - map_image: Imaxe del mapa (amuesa la capa estándar) - embeddable_html: HTML pa embrivir licence: Llicencia too_large: advice: 'Si falla la esportación anterior, considera utilizar una de les fontes @@ -1610,17 +1607,6 @@ ast: other: title: Otres fontes description: Otres fontes más qu'apaecen na wiki d'OpenStreetMap - options: Opciones - format: Formatu - scale: Escala - max: máx - image_size: Tamañu d'imaxe - zoom: Zoom - add_marker: Amestar un marcador al mapa - latitude: 'Llat:' - longitude: 'Llon:' - output: Salida - paste_html: Pegar el HTML pa embrivir nun sitiu web export_button: Esportar fixthemap: title: Informar d'un problema / iguar el mapa @@ -1704,34 +1690,24 @@ ast: footway: Camín peatonal rail: Ferrocarril subway: Metro - tram: - - Ferrocarril llixeru - - tranvía - cable: - - Teleféricu - - telesilla - runway: - - Pista d'aeropuertu - - cai de rodaxe - apron: - - Aparcamientu d'aviones - - terminal + cable_car: Teleféricu + chair_lift: telesilla + runway: Pista d'aeropuertu + taxiway: cai de rodaxe + apron: Aparcamientu d'aviones admin: Llende alministrativa forest: Área forestal wood: Viesca golf: Campu de golf park: Parque + common: Espaciu comunal resident: Área residencial - common: - - Espaciu comunal - - prau retail: Área de tiendes industrial: Área industrial commercial: Área comercial heathland: Berezal - lake: - - Llagu - - banzáu + lake: Llagu + reservoir: banzáu farm: Casería brownfield: Terrén en derribu cemetery: Cementeriu @@ -1740,14 +1716,12 @@ ast: centre: Centru deportivu reserve: Reserva natural military: Área militar - school: - - Escuela - - universidá + school: Escuela + university: universidá building: Edificiu destacáu station: Estación de tren - summit: - - Cume - - picu + summit: Cume + peak: picu tunnel: Borde de rayes = túnel bridge: Borde prietu = ponte private: Accesu priváu diff --git a/config/locales/az.yml b/config/locales/az.yml index 8fc3dd0cc..11da2b770 100644 --- a/config/locales/az.yml +++ b/config/locales/az.yml @@ -841,7 +841,6 @@ az: messages: inbox: title: Gələnlər - my_inbox: Mənim gələnlər messages: 'Sizin varınızdır: %{new_messages} və %{old_messages}.' new_messages: one: '%{count} yeni mesaj' @@ -849,12 +848,14 @@ az: old_messages: one: '%{count} köhnə mesaj' other: '%{count} köhnə mesaj' - from: Kimdən - subject: Mövzu - date: Tarix 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ə @@ -874,9 +875,6 @@ az: body: Bağışlayın, amma belə ID ilə mesaj yoxdur. outbox: title: Göndərilənlər - to: Kimə - subject: Mövzu - date: Tarix people_mapping_nearby: yaxınlıqdakı istifadəçilərlə show: title: Mesajı oxu @@ -884,21 +882,24 @@ az: 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 passwords: - lost_password: + new: title: Ä°tirilmiş parol heading: Parolu unutmusan? email address: 'E-poçt ünvanları:' new password button: Parolu yenilə - reset_password: + edit: title: Parolu yenilə heading: '%{user} üçün parolu yenilə' reset: Parolu Yenilə + update: flash changed: Parolun indi dəyişildi. profiles: edit: @@ -944,24 +945,8 @@ az: edit: user_page_link: istifadəçi səhifəsi export: - area_to_export: Ä°xrac üçün Ərazi manually_select: Digər ərazini seçmək - format_to_export: Ä°xracın forması - osm_xml_data: OpenStreetMap XML formasında məlumatlar - map_image: Xəritənin Şəkili (standart qatı göstərir) - embeddable_html: Quraşdırılan HTML licence: Lisenziya - options: Nizamlamalar - format: Format - scale: Miqyas - max: maks - image_size: Şəkil ölçüsü - zoom: Yaxınlaşdır - add_marker: Xəritəyə marker əlavə etmək - latitude: 'En:' - longitude: 'Uz:' - output: Nəticə - paste_html: Veb sayta quraşdırmaq üçün HTML kod export_button: Ä°xrac etmək help: beginners_guide: @@ -985,37 +970,27 @@ az: footway: Piyada yolu rail: Dəmir yolu subway: Metro - tram: - 1: tramvay - runway: - - Aeroport uçuş-enmə zolağı - apron: - 1: terminal + runway: Aeroport uçuş-enmə zolağı admin: Administrativ sərhəd forest: Meşə park: Park resident: Yaşayış sahəsi - common: - 1: çəmənlik retail: Ticarət sahəsi industrial: Sənaye sahəsi commercial: Ticarət sahəsi - lake: - - Göl - - su anbarı + lake: Göl + reservoir: su anbarı farm: Ferma cemetery: Məzarlıq centre: Ä°dman mərkəzi reserve: Təbiət Qoruğu military: Hərbi ərazi - school: - - Məktəb - - universitet + school: Məktəb + university: universitet building: Əhəmiyyətli bina station: Dəmiryol stansiyası - summit: - - Zirvə - - pik + summit: Zirvə + peak: pik private: Xüsusi giriş traces: new: diff --git a/config/locales/ba.yml b/config/locales/ba.yml index d68b72030..94e4f9760 100644 --- a/config/locales/ba.yml +++ b/config/locales/ba.yml @@ -964,22 +964,11 @@ ba: site: export: title: Сығарырға - area_to_export: Сығарыу яланы manually_select: Башҡа өлкәне ҡулдан һайларға - format_to_export: Сығарыу форматы - osm_xml_data: Биремдең OpenStreetMap XML форматы - map_image: Карта һүрәте (стандарт ҡатламды күрһәтә) - embeddable_html: Ҡуйылған HTML licence: Лицензия too_large: planet: title: OSM планетаһы - max: макс. - image_size: Һүрәт ҙурлығы - add_marker: Картаға билдә ҡуйыу - latitude: 'Киңлек:' - longitude: 'Оҙонлоҡ:' - paste_html: Сайтҡа индереп ҡуйыу өсөн HTML-код notes: show: title: ' %{id} искәрмәһе' diff --git a/config/locales/be-Tarask.yml b/config/locales/be-Tarask.yml index 7dafad6ef..a400a2f3c 100644 --- a/config/locales/be-Tarask.yml +++ b/config/locales/be-Tarask.yml @@ -961,7 +961,6 @@ be-Tarask: messages: inbox: title: Уваходзячыя - my_inbox: Мае ўваходзячыя messages: Вы маеце %{new_messages} і %{old_messages} new_messages: one: '%{count} новае паведамленьне' @@ -971,12 +970,14 @@ be-Tarask: one: '%{count} старое паведамленьне' few: '%{count} старыя паведамленьні' other: '%{count} старых паведамленьняў' - from: Ад - subject: Тэма - date: Дата no_messages_yet_html: Вы яшчэ ня маеце паведамленьняў. Чаму б не зьвязацца з %{people_mapping_nearby_link}? people_mapping_nearby: людзьмі, якія жывуць каля Вас + messages_table: + from: Ад + to: Да + subject: Тэма + date: Дата message_summary: unread_button: Пазначыць як непрачытанае read_button: Пазначыць як прачытанае @@ -1000,9 +1001,6 @@ be-Tarask: one: Вы маеце %{count} дасланае паведамленьне few: Вы маеце %{count} дасланыя паведамленьні other: Вы маеце %{count} дасланых паведамленьняў - to: Да - subject: Тэма - date: Дата no_sent_messages_html: Вы яшчэ не даслалі паведамленьне. Чаму б не зьвязацца з %{people_mapping_nearby_link}? people_mapping_nearby: людзьмі, якія жывуць каля Вас @@ -1019,29 +1017,33 @@ be-Tarask: як карыстальнік, адпаведна запыту, каб прачытаць. sent_message_summary: destroy_button: Выдаліць + heading: + my_inbox: Мае ўваходзячыя mark: as_read: Паведамленьне пазначанае як прачытанае as_unread: Паведамленьне пазначанае як непрачытанае destroy: destroyed: Паведамленьне выдаленае passwords: - lost_password: + new: title: Згублены пароль heading: Забылі пароль? email address: 'Адрас электроннай пошты:' new password button: Ачысьціць пароль help_text: Увядзіце адрас электроннай пошты, які Вы выкарыстоўвалі пры рэгістрацыі, і мы вышлем Вам спасылку, якую Вы зможаце выкарыстаць для зьмены паролю. + create: notice email on way: Шкада, што Вы яго згубілі, але электронны ліст ужо дасланы, таму Вы хутка зможаце яго зьмяніць. notice email cannot find: Прабачце, не атрымалася знайсьці такога адрасу электроннай пошты. - reset_password: + edit: title: Ачысьціць пароль heading: Скінуць пароль для %{user} reset: Ачысьціць пароль - flash changed: Ваш пароль быў зьменены. flash token bad: Немагчыма знайсьці такі ключ, можа праверце URL-адрас? + update: + flash changed: Ваш пароль быў зьменены. profiles: edit: image: Выява @@ -1117,12 +1119,7 @@ be-Tarask: no_iframe_support: Ваш браўзэр не падтрымлівае рамкі HTML, якія зьяўляюцца неабходнымі для гэтай магчымасьці. export: - area_to_export: Абшар для экспарту manually_select: Выбраць іншы абшар - format_to_export: Фармат экспарту - osm_xml_data: Зьвесткі OpenStreetMap у фармаце XML - map_image: Выява мапы (паказвае стандартны слой) - embeddable_html: HTML-код для ўстаўкі licence: Ліцэнзія too_large: body: 'Гэты абшар занадта вялікі для экспарту ў фармаце XML OpenStreetMap. @@ -1130,17 +1127,6 @@ be-Tarask: з наступных крыніцаў для пакетнай запампоўкі зьвестак:' planet: title: Плянэта OSM - options: Устаноўкі - format: Фармат - scale: Маштаб - max: максымум - image_size: 'Памер выявы:' - zoom: Маштаб - add_marker: Дадаць маркер на мапу - latitude: 'Шырата:' - longitude: 'Даўгата:' - output: Вывад - paste_html: HTML-код для ўстаўкі ў вэб-сайт export_button: Экспартаваць any_questions: title: Маеце пытаньні? @@ -1167,34 +1153,24 @@ be-Tarask: footway: Пешаходная дарога rail: Чыгунка subway: Мэтро - tram: - - Лінія для лёгкага чыгуначнага транспарту - - трамвай - cable: - - Канатная дарога - - крэславы пад’ёмнік - runway: - - Узьлётная паласа - - рулёжная дарога - apron: - - Пэрон аэрапорта - - тэрмінал + cable_car: Канатная дарога + chair_lift: крэславы пад’ёмнік + runway: Узьлётная паласа + taxiway: рулёжная дарога + apron: Пэрон аэрапорта admin: Адміністрацыйная мяжа forest: Лес wood: Пушча golf: Поле для гольфу park: Парк + common: Грамадзкая зямля resident: Жылы раён - common: - - Грамадзкая зямля - - луг retail: Гандлёвы раён industrial: Прамысловы раён commercial: Камэрцыйны раён heathland: Пусташ - lake: - - Возера - - вадасховішча + lake: Возера + reservoir: вадасховішча farm: Фэрма brownfield: Закінутая тэрыторыя cemetery: Могілкі @@ -1203,14 +1179,12 @@ be-Tarask: centre: Спартовы цэнтар reserve: Запаведнік military: Вайсковая тэрыторыя - school: - - Школа - - унівэрсытэт + school: Школа + university: унівэрсытэт building: Значны будынак station: Чыгуначная станцыя - summit: - - Вяршыня - - пік + summit: Вяршыня + peak: пік tunnel: Пункцір = тунэль bridge: Чорная лінія = мост private: Прыватны доступ diff --git a/config/locales/be.yml b/config/locales/be.yml index ac84d783a..6568da07a 100644 --- a/config/locales/be.yml +++ b/config/locales/be.yml @@ -1155,9 +1155,9 @@ be: zero: Няма паведамленняў one: 1 паведамленне other: '%{count} паведамленняў' - report_created_at: Упершыню паведамлена %{datetime} - last_resolved_at: Апошні раз вырашана %{datetime} - last_updated_at: Апошняе абнаўленне %{datetime} карыстальнікам %{displayname} + report_created_at_html: Упершыню паведамлена %{datetime} + last_resolved_at_html: Апошні раз вырашана %{datetime} + last_updated_at_html: Апошняе абнаўленне %{datetime} карыстальнікам %{displayname} resolve: Вырашыць ignore: Ігнараваць reopen: Пераадчыніць @@ -1380,7 +1380,6 @@ be: messages: inbox: title: Уваходныя - my_inbox: Мае уваходныя messages: У вас %{new_messages} і %{old_messages} new_messages: one: '%{count} новае паведамленне' @@ -1388,12 +1387,14 @@ be: old_messages: one: '%{count} старое паведамленне' other: '%{count} старых паведамленняў' - from: Ад - subject: Тэма - date: Дата no_messages_yet_html: У вас пакуль няма паведамленняў. Чаму б не зкаардынавацца з %{people_mapping_nearby_link}? people_mapping_nearby: людзьмі, што жывуць непадалёку + messages_table: + from: Ад + to: Каму + subject: Тэма + date: Дата message_summary: unread_button: Адзначыць як нечытанае read_button: Адзначыць як прачытанае @@ -1416,9 +1417,6 @@ be: messages: one: Вы адаслалі %{count} паведамленне other: Вы адаслалі %{count} паведамленняў - to: Каму - subject: Тэма - date: Дата no_sent_messages_html: У вас пакуль няма дасланых паведамленняў. Чаму б не зкаардынавацца з %{people_mapping_nearby_link}? people_mapping_nearby: людзьмі, што жывуць непадалёку @@ -1437,28 +1435,32 @@ be: як карыстальнік, адпаведна запыту, каб прачытаць. sent_message_summary: destroy_button: Выдаліць + heading: + my_inbox: Мае уваходныя mark: as_read: Паведамленне адмечана прачытаным as_unread: Паведамленне адмечана нечытаным destroy: destroyed: Паведамленне выдалена passwords: - lost_password: + new: title: згублены пароль heading: Забылі пароль? email address: 'Паштовы адрас:' new password button: Выслаць мне новы пароль help_text: Увядзіце адрас электроннай пошты, які Вы выкарыстоўвалі пры рэгістрацыі, і мы вышлем Вам спасылку, якую Вы зможаце выкарыстаць для змены паролю. + create: notice email on way: Жаль, што вы яго згубілі :-( але ліст ужо адпраўлены, і вы хутка зможаце яго скінуць. notice email cannot find: Немагчыма знайсці гэтакі паштовы адрас, прабачце. - reset_password: + edit: title: скінуць пароль heading: Скінуць пароль для %{user} reset: 'Скінуць пароль:' - flash changed: Ваш пароль быў зменены. flash token bad: Не знайшоў такі токен, можа, праверце URL? + update: + flash changed: Ваш пароль быў зменены. profiles: edit: image: 'Выява:' @@ -1600,12 +1602,7 @@ be: для гэтай функцыі. export: title: Экспарт - area_to_export: Экспартаваць мясцовасць manually_select: Выбраць іншую мясцовасць - format_to_export: Фармат для экспарту - osm_xml_data: OpenStreetMap XML - map_image: Выява карты (паказвае стандартны слой) - embeddable_html: HTML-код licence: Ліцэнзія too_large: advice: 'Калі экспарт вышэй не атрымаўся, то разгледзьце магчымасць выкарыстання @@ -1627,17 +1624,6 @@ be: other: title: Іншыя крыніцы description: Дадатковыя крыніцы, пералічаныя на Вікі OpenStreetMap - options: Параметры - format: Фармат - scale: Маштаб - max: макс - image_size: Памер выявы - zoom: Павелічэнне - add_marker: Дадаць маркер на карту - latitude: 'Шыр:' - longitude: 'Даў:' - output: Вывад - paste_html: Уставіць HTML-код у вэб-сайт export_button: Экспарт fixthemap: title: Паведаміць аб праблеме / Выправіць карту @@ -1718,35 +1704,29 @@ be: cycleway_local: Веладарожка мясцовага значэння footway: Пешаходная дарожка rail: Чыгунка + train: Цягнік subway: Метро - tram: - - Хуткасны трамвай - - трамвай - cable: - - Канатная дарога - - Крэсельны пад'ёмнік - runway: - - Узлетна-пасадачная паласа - - рулёжная дарожка - apron: - - Перон аэрапорта - - тэрмінал + trolleybus: Тралейбус + bus: Аўтобус + cable_car: Канатная дарога + chair_lift: Крэсельны пад'ёмнік + runway: Узлетна-пасадачная паласа + taxiway: рулёжная дарожка + apron: Перон аэрапорта admin: Адміністрацыйная мяжа forest: Лес - wood: Пушча + wood: пушча golf: Поле для гольфа park: Парк + common: Агульныя resident: Жылы раён - common: - - Агульныя - - луг retail: Гандлевая плошча industrial: Прамысловая зона commercial: Камерцыйная зона heathland: Пустка - lake: - - Возера - - вадасховішча + lake: Возера + reservoir: вадасховішча + glacier: Ляднік farm: Ферма brownfield: Ачышчаная пляцоўка для забудовы cemetery: Могілкі @@ -1755,14 +1735,12 @@ be: centre: Спартыўны цэнтр reserve: Запаведнік military: Ваенная зона - school: - - Школа - - універсітэт + school: Школа + university: універсітэт building: Значны будынак station: Чыгуначны вакзал - summit: - - Вяршыня - - пік + summit: Вяршыня + peak: пік tunnel: Тунэль (пункцірам) bridge: Мост (суцэльная лінія) private: Прыватны доступ diff --git a/config/locales/bg.yml b/config/locales/bg.yml index e782ec22b..62c07a643 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -205,7 +205,7 @@ bg: description: iD (браузърен редактор) remote: name: дистанционно управление - description: Дистанционно управление (JOSM, Potlatch или Merkaartor) + description: дистанционно управление (JOSM, Potlatch или Merkaartor) auth: providers: none: Нищо @@ -261,6 +261,8 @@ bg: retain_changeset_discussions: Обсъжданията на списъци от промени, ако има такива, ще бъдат запазени. retain_email: Вашият имейл адрес ще бъде запазен. + recent_editing_html: Тъй като сте редактирали наскоро, Вашият акаунт в момента + не може да бъде изтрит. Изтриването ще бъде възможно след %{time}. confirm_delete: Сигурни ли сте? cancel: Отказ accounts: @@ -296,6 +298,8 @@ bg: closed: Затворена closed_ago_html: Затворен %{time_ago} created_ago_by_html: Създаден %{time_ago} от %{user} + closed_ago_by_html: Затворен %{time_ago} от %{user} + edited_ago_by_html: Редактирано %{time_ago} от %{user} version: Версия in_changeset: Списък с промени anonymous: анонимен @@ -704,7 +708,7 @@ bg: winery: Винарна "yes": Работилница emergency: - access_point: Тчока за достъп + access_point: Точка за достъп ambulance_station: Станция за линейки defibrillator: Дефибрилатор fire_extinguisher: Пожарогасител @@ -1129,9 +1133,9 @@ bg: reports: one: '%{count} доклад' other: '%{count} доклада' - report_created_at: Първоначално докладван на %{datetime} - last_resolved_at: Последно решена на %{datetime} - last_updated_at: Последно актуализиран на %{datetime} от %{displayname} + report_created_at_html: Първоначално докладван на %{datetime} + last_resolved_at_html: Последно решена на %{datetime} + last_updated_at_html: Последно актуализиран на %{datetime} от %{displayname} resolve: Решаване ignore: Пропусни reopen: Отново отвори @@ -1316,8 +1320,6 @@ bg: messages: inbox: title: Входящи - my_inbox: Входяща кутия - my_outbox: Изходяща кутия messages: Имате %{new_messages} и %{old_messages} new_messages: one: '%{count} ново съобщение' @@ -1325,12 +1327,15 @@ bg: old_messages: one: '%{count} прочетено съобщение' other: '%{count} прочетени съобщения' - from: От - subject: Тема - date: Дата no_messages_yet_html: Все още нямате никакви съобщения. Не искате ли да се свържете с други %{people_mapping_nearby_link}? people_mapping_nearby: картографи в близост + messages_table: + from: От + to: До + subject: Тема + date: Дата + actions: Действия message_summary: unread_button: Отбелязване като непрочетено read_button: Отбелязване като прочетено @@ -1348,14 +1353,10 @@ bg: body: Съжаляваме но няма съобщение със това id. outbox: title: Изходящи - my_inbox: Входящи - my_outbox: Изходяща кутия + actions: Действия messages: one: Изпратили сте %{count} съобщение other: Изпратили сте %{count} съобщения - to: До - subject: Тема - date: Дата no_sent_messages_html: Все още нямате никакви съобщения. Не искате ли да се свържете с други %{people_mapping_nearby_link}? people_mapping_nearby: картографи в близост @@ -1371,13 +1372,16 @@ bg: back: Назад sent_message_summary: destroy_button: Изтриване + heading: + my_inbox: Входяща кутия + my_outbox: Изходяща кутия mark: as_read: Съобщението е отбелязано като прочетено as_unread: Съобщението е отбелязано като непрочетено destroy: destroyed: Съобщението беше изтрито passwords: - lost_password: + new: title: Възстановяване на парола heading: Забравена парола? email address: 'Електронна поща:' @@ -1385,11 +1389,13 @@ bg: help_text: Въведете имейл адреса, който сте използвали при регистрацията, и ние ще Ви изпратим връзка, която можете да използвате, за да промените паролата си. + create: notice email cannot find: Съжаляваме, но този електронен адрес не е намерен. - reset_password: + edit: title: Възстановяване на парола heading: Смени Парола за %{user} reset: Нулиране на парола + update: flash changed: Паролата е променена успешно. preferences: show: @@ -1402,6 +1408,7 @@ bg: cancel: Отказ profiles: edit: + title: Редактиране на профила cancel: Отказ image: Изображение gravatar: @@ -1495,6 +1502,7 @@ bg: работници, които картографират райони, засегнати от бедствия, и много други. За да научите повече за общността, вижте %{osm_blog_link}, %{user_diaries_link}, %{community_blogs_link} и %{osm_foundation_link}. + community_driven_user_diaries: потребителските дневници community_driven_community_blogs: блогове на общността open_data_title: Отворени данни open_data_1_html: 'OpenStreetMap е %{open_data}: Вие сте свободни да я използвате @@ -1545,11 +1553,7 @@ bg: id_not_configured: iD не е настроен export: title: Експортиране - area_to_export: Зона за експортиране manually_select: Ръчно избиране на друга област - format_to_export: Формат за експортиране - osm_xml_data: OpenStreetMap XML данни - embeddable_html: HTML-код за вграждане licence: Лиценз too_large: advice: 'Ако експортирането по-горе не сработи, моля, използвайте един от @@ -1562,17 +1566,6 @@ bg: title: Geofabrik Downloads other: title: Други източници - options: Настройки - format: Формат - scale: Мащаб - max: макс. - image_size: Размер на изображението - zoom: Мащабиране - add_marker: Добавяне на маркер на картата - latitude: 'Геогр. шир:' - longitude: 'Геогр. дълж:' - output: Изход - paste_html: Копирайте HTML за вграждане в интернет страница export_button: Експортиране fixthemap: title: Докладвай проблем/Коригирай картата @@ -1657,34 +1650,24 @@ bg: footway: Пътека rail: Железен път subway: Метро - tram: - - Бърз трамвай - - трамвай - cable: - - Кабинков лифт - - седалков лифт - runway: - - Летищна писта - - път за рулиране - apron: - - Летищен перон - - терминал + cable_car: Кабинков лифт + chair_lift: седалков лифт + runway: Летищна писта + taxiway: път за рулиране + apron: Летищен перон admin: Административна граница forest: Гора wood: Дървета golf: Игрище за голф park: Парк + common: Обща resident: Жилищна зона - common: - - Обща - - ливада retail: Търговска зона industrial: Промишлена зона commercial: Търговска зона heathland: Пустош - lake: - - Езеро - - язовир + lake: Езеро + reservoir: язовир farm: Ферма brownfield: Място за строеж cemetery: Гробище @@ -1693,14 +1676,12 @@ bg: centre: Спортен център reserve: Природен резерват military: Военна зона - school: - - Училище - - университет + school: Училище + university: Университет building: Значима сграда station: Железопътна гара - summit: - - Било - - връх + summit: Било + peak: връх tunnel: Тунел (пунктирана линия) bridge: Мост (плътна линия) private: Частен достъп @@ -1857,7 +1838,7 @@ bg: allow_read_gpx: прочети вашите лични GPS следи. allow_write_gpx: Качване на GPS следи. allow_write_notes: променяне на бележки. - grant_access: Позволи Достъп + grant_access: Позволи достъп authorize_success: title: Искането за достъп е разрешено allowed_html: Вие позволихте на приложение %{app_name} достъп до вашия профил. @@ -1930,6 +1911,8 @@ bg: my_preferences: Предпочитания blocks on me: Блокирани от мен blocks by me: Блокирани от мен + create_mute: Заглушаване на потребителя + edit_profile: Редактиране на профила send message: Изпратете съобщение diary: Дневник edits: Промени @@ -1986,6 +1969,8 @@ bg: edit: title: Промяна на блокирането на %{name} heading_html: Промяна на блокирането на %{name} + filter: + block_expired: Блокирането вече е изтекло и не може да се редактира. revoke: revoke: Анулиране! helper: @@ -2025,6 +2010,11 @@ bg: showing_page: Страница %{page} next: Следваща » previous: « Предишна + user_mutes: + index: + table: + thead: + actions: Действия notes: index: title: Бележки създадени или с коментар от %{user} @@ -2135,6 +2125,9 @@ bg: graphhopper_bicycle: Велосипед (GraphHopper) graphhopper_car: Автомобил (GraphHopper) graphhopper_foot: Пеша (GraphHopper) + fossgis_valhalla_bicycle: Велосипед (Valhalla) + fossgis_valhalla_car: Автомобил (Valhalla) + fossgis_valhalla_foot: Пеша (Valhalla) descend: Спускане directions: Упътване distance: Разстояние diff --git a/config/locales/bn.yml b/config/locales/bn.yml index 639071048..4fc7440d6 100644 --- a/config/locales/bn.yml +++ b/config/locales/bn.yml @@ -7,6 +7,7 @@ # Author: Anupamdutta73 # Author: Bellayet # Author: Bodhisattwa +# Author: Borhan # Author: Ehsanulhb # Author: Elias Ahmmad # Author: Greatder @@ -347,7 +348,7 @@ bn: version: সংস্করণ in_changeset: পরিবর্তনসমূহ anonymous: নামহীন - no_comment: (কোন মন্তব্য নেই) + no_comment: (কোনো মন্তব্য নেই) part_of: অংশ part_of_relations: one: '%{count}টি সম্পর্ক' @@ -549,7 +550,7 @@ bn: login_to_leave_a_comment_html: মন্তব্য করতে %{login_link} করুন login: প্রবেশ no_such_entry: - title: এমন কোন দিনলিপির ভুক্তি নেই + title: এমন কোনো দিনলিপির ভুক্তি নেই heading: '%{id} এই আইডি থেকে কোনও ভুক্তি নেই' body: দুঃখিত, %{id} এই আইডি থেকে কোনও দিনলিপির ভুক্তি অথবা মন্তব্য নেই। দয়া করে আপনার বানান যাচাই করুন, অথবা হতে পারে আপনি যে লিংকটিতে ক্লিক করেছেন তা @@ -615,7 +616,7 @@ bn: title: নিষিদ্ধ internal_server_error: title: অ্যাপ্লিকেশন ত্রুটি - description: ওপেনস্ট্রিটম্যাপ সার্ভার কোন অপ্রত্যাশিত অবস্থার সম্মুখীন হয়েছে + description: ওপেনস্ট্রিটম্যাপ সার্ভার কোনো অপ্রত্যাশিত অবস্থার সম্মুখীন হয়েছে যার ফলে অনুরোধ পূরণ করা যাচ্ছে না (HTTP ৫০০) not_found: title: ফাইল পাওয়া যায়নি @@ -1445,8 +1446,6 @@ bn: messages: inbox: title: ইনবক্স - my_inbox: আমার ইনবক্স - my_outbox: আমার আউটবক্স messages: আপনার %{new_messages} ও %{old_messages} রয়েছে new_messages: one: '%{count}টি নতুন বার্তা' @@ -1454,39 +1453,37 @@ bn: old_messages: one: '%{count}টি পুরনো বার্তা' other: '%{count}টি পুরনো বার্তা' - from: প্রেরক - subject: বিষয় - date: তারিখ no_messages_yet_html: আপনার কাছে এখনো কোনো বার্তা নেই। কেন কিছু %{people_mapping_nearby_link}-এর সাথে যোগাযোগ করবেন না? people_mapping_nearby: কাছাকাছি অবদানকারী + messages_table: + from: প্রেরক + to: প্রাপক + subject: বিষয় + date: তারিখ message_summary: unread_button: অপঠিত হিসেবে চিহ্নিত করুন read_button: পঠিত হিসেবে চিহ্নিত করুন reply_button: প্রত্যুত্তর destroy_button: মুছুন + unmute_button: ইনবক্সে সরান new: title: বার্তা পাঠান send_message_to_html: '%{name}কে একটি নতুন বার্তা পাঠান' back_to_inbox: ইনবক্সে ফিরে যান create: message_sent: বার্তা পাঠানো হয়েছে - limit_exceeded: সাম্প্রতিক আপনি একগুচ্ছ বার্তা পাঠিয়েছেন। আর কোন বার্তা পাঠানোর + limit_exceeded: সাম্প্রতিক আপনি একগুচ্ছ বার্তা পাঠিয়েছেন। আর কোনো বার্তা পাঠানোর পূর্বে দয়া করে কিছুক্ষণ অপেক্ষা করুন। no_such_message: - title: কোন বার্তা নেই - heading: কোন বার্তা নেই + title: কোনো বার্তা নেই + heading: কোনো বার্তা নেই body: এই আইডির সাথে কোনও বার্তালাপ নেই। outbox: title: বহির্বাক্স - my_inbox: আমার ইনবক্স - my_outbox: আমার আউটবক্স messages: one: আপনি %{count}টি বার্তা পাঠিয়েছেন other: আপনি %{count}টি বার্তা পাঠিয়েছেন - to: প্রাপক - subject: বিষয় - date: তারিখ people_mapping_nearby: কাছাকাছি মানচিত্রকার show: title: বার্তা পড়ুন @@ -1496,23 +1493,27 @@ bn: back: পিছনে sent_message_summary: destroy_button: অপসারণ + heading: + my_inbox: আমার ইনবক্স + my_outbox: আমার আউটবক্স mark: as_read: বার্তা পঠিত হিসেবে চিহ্নিত করুন as_unread: বার্তা অপঠিত হিসেবে চিহ্নিত করুন destroy: destroyed: বার্তা মোছা হয়েছে passwords: - lost_password: + new: title: পাসওয়ার্ড ভুলে গেছেন heading: পাসওয়ার্ড ভুলে গেছেন? - email address: 'ইমেইল ঠিকানা:' + email address: ইমেইল ঠিকানা new password button: পাসওয়ার্ড পুনঃনির্ধারণ help_text: নিবন্ধনের সময় ব্যবহৃত আপনার ইমেইল ঠিকানাটি লিখুন, ইমেইলের মাধ্যমে আমরা একটি লিঙ্ক পাঠাবো যার মাধ্যমে আপনি পাসওয়ার্ড পরিবর্তন করতে পারবেন। - reset_password: + edit: title: পাসওয়ার্ড পুনঃনির্ধারণ heading: '%{user} এর পাসওয়ার্ড পুনর্বদল করুন' reset: পাসওয়ার্ড পুনঃনির্ধারণ + update: flash changed: আপনার পাসওয়ার্ড পরিবর্তন করা হয়েছে। preferences: show: @@ -1543,8 +1544,8 @@ bn: new: title: প্রবেশ heading: প্রবেশ - email or username: ইমেইল ঠিকানা অথবা ব্যবহারকারীনাম - password: 'পাসওয়ার্ড:' + email or username: ইমেইল ঠিকানা অথবা ব্যবহারকারী নাম + password: পাসওয়ার্ড remember: আমাকে মনে রাখো lost password link: পাসওয়ার্ড ভুলে গেছেন? login_button: প্রবেশ @@ -1584,6 +1585,7 @@ bn: image: ছবি alt: বিকল্প পাঠ্য url: ইউআরএল + codeblock: কোড ব্লক richtext_field: edit: সম্পাদনা preview: প্রাকদর্শন @@ -1648,15 +1650,10 @@ bn: user_page_link: ব্যবহারকারীর পাতা export: title: রপ্তানি - area_to_export: রপ্তানির এলাকা manually_select: ম্যানুয়ালি একটি ভিন্ন জায়গা নির্বাচন করুন - format_to_export: রপ্তানির বিন্যাস - osm_xml_data: ওপেনস্ট্রিটম্যাপ এক্সএমএল উপাত্ত - map_image: মানচিত্র ছবি (মান্য স্তর দেখাও) - embeddable_html: অভ্যন্তরীণ HTML licence: লাইসেন্স too_large: - advice: 'যদি উপরের রপ্তানি ব্যর্থ হয়, দয়া করে নীচে তালিকাভুক্ত উৎসের কোন + advice: 'যদি উপরের রপ্তানি ব্যর্থ হয়, দয়া করে নিচে তালিকাভুক্ত উৎসের কোনো একটি ব্যবহারের জন্য বিবেচনা করুন:' planet: title: ওএসএম জগৎ @@ -1668,17 +1665,6 @@ bn: other: title: অন্যান্য উৎস description: ওপেনস্ট্রিটম্যাপ উইকিতে অতিরিক্ত সূত্র তালিকাভুক্ত রয়েছে - options: বিকল্প - format: বিন্যাস - scale: স্কেল - max: সর্বোচ্চ - image_size: চিত্রের আকার - zoom: জুম - add_marker: মানচিত্রে একটি চিহ্নিতকারী যোগ করুন - latitude: 'অক্ষাংশ:' - longitude: 'দ্রাঘিমাংশ:' - output: আউটপুট - paste_html: তথ্যক্ষেত্রে HTML নিহিত করতে প্রতিলেপন করুন export_button: রপ্তানি fixthemap: title: সমস্যা জানান / মানচিত্র ঠিক করুন @@ -1737,37 +1723,42 @@ bn: cycleway_local: স্থানীয় সাইকেলের রাস্তা footway: ফুটপাথ rail: রেলপথ + train: রেলগাড়ি subway: ভূগর্ভস্থ পথ - tram: - 1: ট্রাম - cable: - - ক্যাবল কার - apron: - 1: টার্মিনাল + ferry: ফেরি + tram: ট্রাম + bus: বাস + cable_car: ক্যাবল কার admin: প্রশাসনিক সীমানা + orchard: ফলবাগিচা + vineyard: আঙুর খেত forest: অরণ্য - wood: বন + wood: কাঠ + farmland: কৃষিজমি + meadow: তৃণভূমি + sand: বালু golf: গল্ফ মাঠ park: উদ্যান + common: সাধারণ resident: আবাসিক এলাকা - common: - - সাধারণ industrial: শিল্পাঞ্চল commercial: বাণিজ্যিক এলাকা - lake: - - হ্রদ - - জলাধার + lake: হ্রদ + reservoir: জলাধার + glacier: হিমবাহ farm: খামার cemetery: কবরস্থান centre: ক্রীড়া কেন্দ্র military: সামরিক এলাকা - school: - - বিদ্যালয় - - বিশ্ববিদ্যালয় + school: বিদ্যালয় + university: বিশ্ববিদ্যালয় + hospital: হাসপাতাল station: রেল স্টেশন - summit: - 1: শৃঙ্গ + peak: শৃঙ্গ + bus_stop: বাস স্টপ + stop: স্টপ bicycle_shop: সাইকেলের দোকান + bicycle_rental: সাইকেল ভাড়া bicycle_parking: সাইকেল পার্কিং toilets: পায়খানা welcome: @@ -1923,9 +1914,9 @@ bn: সিদ্ধান্ত নিয়েছেন। আরও তথ্যের জন্য, অনুগ্রহ করে %{terms_declined_link} দেখুন। terms_declined_link: এই উইকি পাতা no_such_user: - title: এরকম কোন ব্যবহারকারী নেই + title: এরকম কোনো ব্যবহারকারী নেই heading: ব্যবহারকারী %{user} বিদ্যমান নয় - body: দুঃখিত, %{user} নামের কোন ব্যবহারকারী নেই। অনুগ্রহ করে আপনার বানান পরীক্ষা + body: দুঃখিত, %{user} নামের কোনো ব্যবহারকারী নেই। অনুগ্রহ করে আপনার বানান পরীক্ষা করুন, অথবা হয়ত আপনি যে সংযোগটিতে টোকা দিয়েছেন সেটি ভুল। deleted: অপসারিত show: @@ -1979,7 +1970,7 @@ bn: summary_no_ip_html: '%{date}-এ %{name} তৈরি হয়েছে' confirm: নির্বাচিত ব্যবহারকারীদের নিশ্চিত করুন hide: নির্বাচিত ব্যবহারকারীদের লুকান - empty: কোন সাদৃশ্যপূর্ণ ব্যবহারকারী পাওয়া যায়নি + empty: কোনো সাদৃশ্যপূর্ণ ব্যবহারকারী পাওয়া যায়নি suspended: title: অ্যাকাউন্ট স্থগিত করা হয়েছে heading: অ্যাকাউন্ট স্থগিত করা হয়েছে @@ -2000,7 +1991,7 @@ bn: যুক্ত করুন। user_role: filter: - not_a_role: উক্ত `%{role}' টি কোন সঠিক দায়িত্ব নয়। + not_a_role: উক্ত `%{role}' টি কোনো সঠিক দায়িত্ব নয়। already_has_role: এই ব্যবহারকারী %{role} দায়িত্বটি এখনো আছে। doesnt_have_role: এই ব্যবহারকারীর %{role} দায়িত্বটি নেই। not_revoke_admin_current_user: বর্তমান ব্যবহারকারীর থেকে প্রশাসকের ভূমিকা প্রত্যাহার @@ -2029,6 +2020,8 @@ bn: revoke: revoke: প্রত্যাহার! flash: এই অবরোধ প্রত্যাহার করা হয়েছে। + revoke_all: + revoke: প্রত্যাহার! helper: block_duration: hours: @@ -2048,6 +2041,11 @@ bn: display_name: বাধাপ্রাপ্ত ব্যবহারকারী next: পরবর্তী » previous: « পূর্ববর্তী + user_mutes: + index: + table: + tbody: + send_message: বার্তা পাঠান notes: show: title: 'টীকা: %{id}' diff --git a/config/locales/br.yml b/config/locales/br.yml index 1a313b065..f0b3194b5 100644 --- a/config/locales/br.yml +++ b/config/locales/br.yml @@ -15,6 +15,7 @@ # Author: McDutchie # Author: Nemo bis # Author: Shirayuki +# Author: Troer56 # Author: Y-M D --- br: @@ -56,6 +57,9 @@ br: messages: invalid_email_address: ne ziskouez ket bezañ ur chomlec'h postel mat email_address_not_routable: n'haller ket routañ + models: + user_mute: + is_already_muted: a zo bet kuzhet dija models: acl: Listenn kontroll moned changeset: Hollad cheñchamantoù @@ -1478,9 +1482,9 @@ br: many: '%{count} danevell' other: '%{count} danevell' no_reports: Danevell ebet - report_created_at: Disklêriet evit ar wech kentañ %{datetime} - last_resolved_at: Diskêriadur diwezhañ d'an %{datetime} - last_updated_at: Diskêriadur diwezhañ d'an %{datetime} gant %{displayname} + report_created_at_html: Disklêriet evit ar wech kentañ %{datetime} + last_resolved_at_html: Diskêriadur diwezhañ d'an %{datetime} + last_updated_at_html: Diskêriadur diwezhañ d'an %{datetime} gant %{displayname} resolve: Diskoulmañ ignore: Lezel a-gostez reopen: Addigeriñ @@ -1752,8 +1756,6 @@ br: messages: inbox: title: Boest resev - my_inbox: Ma boest resev - my_outbox: Ma boest kas messages: '%{new_messages} ha %{old_messages} zo evidoc''h' new_messages: one: '%{count} gemennadenn nevez' @@ -1761,17 +1763,21 @@ br: old_messages: one: '%{count} gemennadenn gozh' other: '%{count} kemennadenn gozh' - from: A-berzh - subject: Danvez - date: Deiziad 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 reply_button: Respont 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} @@ -1786,17 +1792,15 @@ br: body: Ho tigarez, n'eus kemennadenn ebet gant an id-se. outbox: title: Boest kas - my_inbox: Ma boest degemer - my_outbox: Ma boest kas + actions: Oberoù messages: one: Kaset hoc'h eus %{count} gemennadenn other: Kaset hoc'h eus %{count} kemennadenn - to: Da - subject: Danvez - date: Deiziad 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 @@ -1812,28 +1816,38 @@ br: 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 + unmute: + notice: Dilec'hiet eo bet ar gemennadenn d'ar voest resev + error: Ne c'haller ket dilec'hiañ ar gemennadenn d'ar voest resev. destroy: destroyed: Kemennadenn dilamet passwords: - lost_password: + new: title: Ger-tremen kollet heading: Ankouaet hoc'h eus ho ker-tremen ? - email address: 'Chomlec''h postel :' + email address: Chomlec'h postel new password button: Adderaouekaat ar ger-tremen help_text: Ebarzhit ar chomlec'h postel ho poa implijet evit en em enskrivañ, kaset e vo deoc'h ul liamm a c'hallot implijout evit adderaouekaat ho ker-tremen. + create: notice email on way: Kaset ez eus bet ur postel deoc'h evit adderaouekaat ho ker-tremen. notice email cannot find: Ho tigarez, n'eo ket bet kavet ar chomlec'h postel-se. - reset_password: + edit: title: Adderaouekaat ar ger-tremen heading: Adderaouekaat ar ger-tremen evit %{user} reset: Adderaouekaat ar ger-tremen - flash changed: Cheñchet eo bet ho ker-tremen. flash token bad: N'eo ket bet kavet ar jedouer-se, gwiriañ an URL marteze ? + update: + flash changed: Cheñchet eo bet ho ker-tremen. + flash token bad: N'eo ket bet kavet ar jedouer-se, gwiriit an URL mar plij. preferences: show: title: Ma fenndibaboù @@ -1879,8 +1893,8 @@ br: new: title: Kevreañ heading: Kevreañ - email or username: 'Chomlec''h postel pe anv implijer :' - password: 'Ger-tremen :' + email or username: Chomlec'h postel pe anv implijer + password: Ger-tremen openid_html: '%{logo} OpenID :' remember: Derc'hel soñj ac'hanon lost password link: Ankouaet ho ker-tremen ganeoc'h ? @@ -2066,6 +2080,7 @@ br: Degas a reomp da soñj da genlabourerien OSM ne zleont morse lakaat roadennoù a zeu eus mammennoù dindan wirioù (da sk. : Google Maps pe kartennoù moullet) hep aotre ezpleg ar re zo ar gwirioù-aozer ganto. + infringement_2_1_online_filing_page: pajenn danevelliñ enlinenn trademarks_title: Merkoù marilhet trademarks_1_1_trademark_policy: Politikerezh e-keñver ar merkoù index: @@ -2092,12 +2107,7 @@ br: zo eus ar re-se evit an arc'hweladur-mañ. export: title: Ezporzhiañ - area_to_export: Takad da ezporzhiañ manually_select: Diuzañ un takad disheñvel gant an dorn - format_to_export: Furmad da ezporzhiañ - osm_xml_data: Roadennoù XML OpenStreetMap - map_image: Skeudenn gartenn (diskouez ur gwiskad boutin) - embeddable_html: HTML enkorfadus licence: Aotre-implijout licence_details_html: Roadennoù OpenStreetMap a zo dindan an aotre-implijout %{odbl_link} (ODbL). @@ -2121,17 +2131,6 @@ br: other: title: Tarzhioù all description: Mammennoù all a gaver o roll er wiki OpenStreetMap - options: Dibarzhioù - format: Furmad - scale: Skeuliad - max: d'ar muiañ - image_size: Ment ar skeudenn - zoom: Zoum - add_marker: Ouzhpennañ ur merker d'ar gartenn - latitude: 'Led. :' - longitude: 'Hed. :' - output: Er-maez - paste_html: Pegañ HTML evit bezañ enkorfet en ul lec'hienn web export_button: Ezporzhiañ fixthemap: title: ' Diskouez ez eus ur gudenn / Reizhañ ar gartenn' @@ -2216,67 +2215,82 @@ br: primary: Hent bras secondary: Hent bihan unclassified: Hent n'eo ket rummet + pedestrian: Hent evit an dud war-droad track: Roudenn bridleway: Hent evit kezeg cycleway: Roudenn divrodegoù cycleway_national: roudenn vroadel evit an divrodegoù cycleway_regional: Roudenn divrodegoù rannvroel cycleway_local: roudenn lec'hel evit an divrodegoù + cycleway_mtb: Hent MTB footway: Hent evit an dud war droad rail: Hent-houarn + train: Tren subway: Linenn vetro - tram: - - tramgarr - - tramgarr - cable: - - Teleferik - - fungador - runway: - - Roudenn evit an taksioù - - Roudenn evit an taksioù - apron: - - Roudenn aerborzh - - termenva + ferry: Karrlistri + light_rail: Metro skañv + tram: Tramgarr + trolleybus: Trollebus + bus: Karr-boutin + cable_car: Teleferik + chair_lift: Fungador + runway: Roudenn evit an taksioù + taxiway: Hent evit an taksioù + apron: Roudenn aerborzh admin: Bevenn velestradurel + capital: Kêr-benn + city: Kêr + orchard: Gwerje + vineyard: Gwinieg forest: Koad wood: Koad + farmland: Tachenn labour-douar + grass: Geot + meadow: Prad + bare_rock: Roc'h noazh + sand: Traezh golf: Tachenn golf park: Park + common: prad + built_up: Takad savet resident: Takad annez - common: - - prad - - prad - - liorzh retail: Takad kenwerzh industrial: Takad greantel commercial: Takad kenwerzhel heathland: Lanneier - lake: - - Lenn - - mirlec'h + scrubland: Strouezheg + lake: Lenn + reservoir: Mirlenn + glacier: Skorneg + reef: Karreg + wetland: Takad gleborek farm: Ti-feurm brownfield: Takad greanterezh cemetery: Bered allotments: Lodennaouegoù pitch: Tachenn sport centre: Kreizenn sport + beach: Traezhenn reserve: Gwarezva natur military: Takad milourel - school: - - Skol - - skol-veur + school: Skol + university: Skol-veur + hospital: Ospital building: Savadur pouezus station: Porzh-houarn - summit: - - Lein - - pikern + summit: Lein + peak: Pikern tunnel: Bord poentoùigoù = riboul bridge: Bord du = pont private: Moned prevez destination: Moned d'ar pal construction: Hentoù war ar stern + bus_stop: Arsav karr-boutin + stop: Arsav bicycle_shop: Stal varc'hoù-houarn + bicycle_rental: Stal feurmiñ marc'hoù-houarn bicycle_parking: Parklec'h belioù + bicycle_parking_small: Parklec'h marc'hoù-houarn bihan toilets: Privezioù welcome: title: Deuet-mat oc'h ! @@ -2285,6 +2299,10 @@ br: Setu amañ un nebeud displegadennoù diwar-benn an traoù pouezusañ da c'houzout. whats_on_the_map: title: Petra zo war ar gartenn + on_the_map_html: |- + OpenStreetMap zo ul lec'h evit kartennaouiñ traoù %{real_and_current} war un dro + - + Ennañ ez eus milionoù a savadurioù, a hentoù, hag a vunudoù all diwar-benn lec'hioù. Gallout a rit kartennaouiñ forzh peseurt tra eus ar bed gwirion hag a zedenn ac'hanoc'h. real_and_current: gwir hag a-vremañ off_the_map_html: Ar pezh %{doesnt} avat eo ar roadennoù evit notennoù roet gant an dud, elfennoù istorel pe martezeüs, hag ar roadennoù a zo dindan @@ -2311,6 +2329,7 @@ br: imports: Enporzhiadurioù automated_edits: Kemmoù emgefre start_mapping: Kregiñ da gartennaouiñ + continue_authorization: Kenderc'hel gant an aotre add_a_note: title: N'ho peus ket amzer da aozañ ? Ouzhpennit un notenn ! para_1: Ma fell deoc'h ober ur reizhadennig hepken ha ma n'ho peus ket amzer @@ -2454,6 +2473,7 @@ br: oauth1_settings: Arventennoù OAuth 1 oauth2_applications: Arloadoù OAuth 2 oauth2_authorizations: Aotreoù OAuth 2 + muted_users: Implijerien kuzhet oauth: authorize: title: Aotren mont d'ho kont @@ -2560,6 +2580,7 @@ br: oauth2_authorizations: new: title: Rekis eo bezañ aotreet + introduction: Aotren %{application} da haeziñ ho kont gant an aotreoù-se? authorize: Aotren deny: Nac'hañ error: @@ -2627,18 +2648,20 @@ br: mat, pe marteze hoc'h eus kliket war ul liamm fall. deleted: dilamet show: - my diary: ma deizlevr - my edits: ma aozadennoù - my traces: ma roudoù - my notes: ma notennoù + my diary: Ma deizlevr + my edits: Ma c'hemmoù + my traces: Ma roudoù + my notes: Ma notennoù my messages: Ma c'hemennadennoù my profile: Ma frofil my settings: Ma arventennoù - my comments: ma evezhiadennoù + my comments: Ma evezhiadennoù my_preferences: Ma fenndibaboù my_dashboard: Ma zaolenn-vourzh blocks on me: Stankadurioù evidon blocks by me: stankadurioù graet ganin + create_mute: Kuzhat an implijer-mañ + destroy_mute: Diguzhat an implijer-mañ edit_profile: Aozañ ar profil send message: Kas ur gemennadenn diary: deizlevr @@ -2659,12 +2682,15 @@ br: role: administrator: Ur merour eo an implijer-mañ moderator: Un habaskaer eo an implijer-mañ + importer: Un enporzhier/ez eo an implijer/ez-mañ grant: administrator: Reiñ ar moned merour moderator: Reiñ ar moned habaskaer + importer: Grataat gwirioù enporzhiañ revoke: administrator: Disteurel ar moned merour moderator: Disteurel ar moned habaskaer + importer: Lemel ar gwirioù enporzhiañ block_history: stankadurioù oberiant moderator_history: Stankadurioù roet comments: evezhiadennoù @@ -2777,6 +2803,8 @@ br: confirm: Ha sur oc'h hoc'h eus c'hoant da derriñ ar stankadur-mañ ? revoke: Disteuler ! flash: Torret eo bet ar stankadur-mañ. + revoke_all: + revoke: Disteuler! helper: time_future_html: Echuiñ a ray a-benn %{time}. until_login: Oberiant betek ma kevre an implijer. @@ -2850,6 +2878,27 @@ br: showing_page: Page %{page} next: ↓War-lerc'h » previous: ↓« Kent + user_mutes: + index: + title: Implijerien kuzhet + my_muted_users: Ma implijerien kuzhet + you_have_muted_n_users: + one: Kuzhet ho peus %{count} implijer·ez + two: Kuzhet ho peus %{count} implijer·ez + few: Kuzhet ho peus %{count} implijer·ez + many: Kuzhet ho peus %{count} implijer·ez + other: Kuzhet ho peus %{count} implijer·ez + user_mute_explainer: Kemennadennoù an implijerien kuzhet a zo kaset d'ur voest-resev + disheñvel ha n'ho po kemenn ebet a-zivout o fosteloù. + table: + thead: + muted_user: Implijer·ez kuzhet + actions: Oberoù + tbody: + send_message: Kas ur gemennadenn + create: + notice: Kuzhet ho peus %{name}. + error: Ne c'haller ket kuzhat %{name}. %{full_message}. notes: index: title: Notennoù kaset pe addispleget gant %{user} diff --git a/config/locales/bs.yml b/config/locales/bs.yml index 9d3df0ec2..4a6edbf78 100644 --- a/config/locales/bs.yml +++ b/config/locales/bs.yml @@ -955,7 +955,6 @@ bs: messages: inbox: title: Dolazna poÅ¡ta - my_inbox: Moja dolazna poÅ¡ta messages: Imate %{new_messages} i %{old_messages} new_messages: one: '%{count} nova poruka' @@ -963,12 +962,14 @@ bs: old_messages: one: '%{count} stara poruka' other: '%{count} stare poruke' - from: Od - subject: Predmet - date: Datum 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 @@ -991,9 +992,6 @@ bs: messages: one: Poslali ste %{count} poruku other: Poslali ste %{count} poruke/a - to: Za - subject: Predmet - date: Datum 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 @@ -1011,28 +1009,32 @@ bs: 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 passwords: - lost_password: + new: title: Izgubljena lozinka heading: Zaboravljena lozinka? email address: 'Adresa e-poÅ¡te:' new password button: Ponovno postavljanje lozinke help_text: Unesite e-mail adresu koju ste koristili za otvaranje računa i poslaćemo Vam link kojim možete ponovo postaviti lozinku. + create: notice email on way: Žao mi je Å¡to ste je izgubili :-( ali e-mail je na putu tako da je možete pononvo postaviti uskoro. notice email cannot find: Ne možemo pronaći tu e-mail adresu, žao nam je. - reset_password: + edit: title: Ponovno postavljanje lozinke heading: Ponovno postavljanje lozinke za %{user} reset: Ponovno postavljanje lozinke - flash changed: VaÅ¡a lozinka je promjenjena. flash token bad: Niste pronaÅ¡li tz značku, možda da provjerite URL? + update: + flash changed: VaÅ¡a lozinka je promjenjena. profiles: edit: image: 'Slika:' @@ -1127,12 +1129,7 @@ bs: za ovu značajku. export: title: Izvezi - area_to_export: Područje za izvoz manually_select: Ručno izabrati drukčije područje - format_to_export: Format za izvoz - osm_xml_data: OpenStreetMap XML podaci - map_image: Slika karte (prikazuje standardni sloj) - embeddable_html: HTML kod sa mogućnošću za umetanje licence: Dozvola too_large: body: Ovo područje je preveliko da bi se izvezlo kao OpenStreetMap XML podaci. @@ -1141,17 +1138,6 @@ bs: other: title: Drugi izvori description: Dodatni izvori ponuđeni na OpenStreetMap wiki - options: Opcije - format: Format - scale: Skala - max: najviÅ¡e - image_size: Veličina slike - zoom: Uvećanje - add_marker: Dodati marker na kartu - latitude: 'Lat:' - longitude: 'Lon:' - output: Izlaz - paste_html: Zalijepiti HTML za umetanje na web stranicu export_button: Izvoz fixthemap: how_to_help: @@ -1194,34 +1180,24 @@ bs: footway: PjeÅ¡ačka staza rail: Željeznica subway: Podzemna željeznica - tram: - - Lahka željeznica - - tramvaj - cable: - - Kabinska žičara - - Uspinjača sa naslonjačem - runway: - - Aerodromska pista - - Aerodromska rulna staza - apron: - - Parking za avione - - terminal + cable_car: Kabinska žičara + chair_lift: Uspinjača sa naslonjačem + runway: Aerodromska pista + taxiway: Aerodromska rulna staza + apron: Parking za avione admin: Administrativna granica forest: Å ume (održavane, od Å¡umarije) wood: Å ume (prirodne, neodržavane) golf: Golf teren park: Park + common: Travnjaci resident: Stambeno područje - common: - - Travnjaci - - Livada retail: Maloprodajno područje industrial: Industrijsko područje commercial: Poslovno područje heathland: Stepa - lake: - - Jezero - - Rezervoar + lake: Jezero + reservoir: Rezervoar farm: Polja, farme, njive brownfield: GradiliÅ¡te cemetery: Groblje @@ -1230,14 +1206,12 @@ bs: centre: Sportski centar reserve: Rezervat prirode military: Vojno područje - school: - - Å kola - - Univerzitet + school: Å kola + university: Univerzitet building: Značajna zgrada station: Željeznička stanica - summit: - - Vrh - - Kota + summit: Vrh + peak: Kota tunnel: Iscrtkani rubovi = tunel bridge: Crni rubovi = most private: Privatni pristup diff --git a/config/locales/ca.yml b/config/locales/ca.yml index 03219768c..da328fa0d 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -1474,9 +1474,9 @@ ca: one: '%{count} informe' other: '%{count} informes' no_reports: Cap informe - report_created_at: Denunciat per primer cop a %{datetime} - last_resolved_at: Resolt per darrer cop a %{datetime} - last_updated_at: Actualitzat per darrer cop a %{datetime} per %{displayname} + report_created_at_html: Denunciat per primer cop a %{datetime} + last_resolved_at_html: Resolt per darrer cop a %{datetime} + last_updated_at_html: Actualitzat per darrer cop a %{datetime} per %{displayname} resolve: Resol ignore: Ignora reopen: Torna a obrir @@ -1760,8 +1760,6 @@ ca: messages: inbox: title: Safata d'entrada - my_inbox: La meva safata d'entrada - my_outbox: La meva safata de sortida messages: Teniu %{new_messages} i %{old_messages} new_messages: one: '%{count} missatge nou' @@ -1769,16 +1767,20 @@ ca: 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 - 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 + actions: Accions message_summary: unread_button: Marca com a no llegit read_button: Marca com a llegit reply_button: Respon 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} @@ -1793,17 +1795,15 @@ ca: body: No hi ha cap missatge amb aquesta id. outbox: title: Safata de sortida - my_inbox: La meva safata d'entrada - my_outbox: La meva safata de sortida + actions: Accions messages: one: Teniu %{count} missatge enviat other: Teniu %{count} missatges enviats - to: Per a - subject: Assumpte - date: Data 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 @@ -1819,28 +1819,37 @@ ca: 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 + unmute: + notice: El missatge s'ha mogut a la safata d'entrada + error: No s'ha pogut moure el missatge a la safata d'entrada. destroy: destroyed: Missatge suprimit passwords: - lost_password: + new: title: Contrasenya perduda heading: Heu oblidat la contrasenya? email address: 'Adreça de correu electrònic:' new password button: Restableix la contrasenya help_text: Introduïu l'adreça de correu electrònic que vau utilitzar per registrar-vos; us hi enviarem un enllaç per a restablir la contrasenya. + create: notice email on way: Lamentem que l'hàgiu perdut :-( però ja us hem enviat un correu i la podreu restablir ben aviat. notice email cannot find: No s'ha trobat aquesta adreça de correu. - reset_password: + edit: title: Restableix la contrasenya heading: Restableix la contrasenya per a %{user} reset: Restableix la contrasenya - flash changed: S'ha canviat la contrasenya. flash token bad: No s'ha trobat el testimoni. Comproveu l'URL. + update: + flash changed: S'ha canviat la contrasenya. preferences: show: title: Les meves preferències @@ -2063,6 +2072,9 @@ ca: contributors_at_cc_by_at_with_amendments: CC BY AT amb esmenes contributors_au_australia: Austràlia contributors_ca_canada: Canadà + contributors_cz_czechia: Txèquia + contributors_cz_cc_licence: Llicència Creative Commons Reconeixement 4.0 Internacional + (CC BY 4.0) contributors_fi_finland: Finlàndia contributors_fr_credit_html: '%{france}: Conté dades d''origen de la «Direction Générale des Impôts».' @@ -2136,12 +2148,7 @@ ca: són necessàries per a aquesta funcionalitat. export: title: Exporta - area_to_export: Àrea a exportar manually_select: Selecciona manualment una àrea diferent - format_to_export: Format d'exportació - osm_xml_data: Dades XML d'OpenStreetMap - map_image: Imatge de mapa (mostra una capa estàndard) - embeddable_html: HTML incrustable licence: Llicència licence_details_html: Les dades d'OpenStreetMap estan sota la llicència %{odbl_link} (ODbL). @@ -2167,17 +2174,6 @@ ca: other: title: Altres fonts description: Fonts addicionals llistades al wiki d'OpenStreetMap - options: Opcions - format: Format - scale: Escala - max: màx - image_size: Mida de la imatge - zoom: Zoom - add_marker: Afegeix un marcador en el mapa - latitude: 'Lat:' - longitude: 'Lon:' - output: Sortida - paste_html: Enganxa HTML per incrustar-lo al lloc web export_button: Exporta fixthemap: title: Informeu d'un problema / Corregiu el mapa @@ -2279,6 +2275,7 @@ ca: primary: Carretera principal secondary: Carretera secundària unclassified: Carretera sense classificar + pedestrian: Via per a vianants track: Pista - Camí bridleway: Camí de ferradura cycleway: Carril bici @@ -2287,36 +2284,44 @@ ca: cycleway_local: Carril bici local footway: Via de vianants rail: Ferrocarril + train: Tren subway: Metro - tram: - - Tren lleuger - - tramvia - cable: - - Telefèric - - telecadira - runway: - - Pista d'aeroport - - carrer de rodatge - apron: - - Estacionament d'avions - - terminal + ferry: Ferri + light_rail: Ferrocarril lleuger + tram: Tramvia + trolleybus: Troleibús + bus: Autobús + cable_car: Telefèric + chair_lift: Telecadira + runway: Pista d'aeroport + taxiway: Carrer de rodatge + apron: Estacionament d'avions admin: Límit administratiu + orchard: Hort + vineyard: Vinya forest: Bosc - wood: Fusta + wood: Arbreda + farmland: Terra de conreu + grass: Gespa + meadow: Prada + bare_rock: Roca pelada + sand: Sorra golf: Camp de golf park: Parc + common: Àrea comunal + built_up: Zona edificada resident: Zona residencial - common: - - Àrea comunal - - prat - - jardí retail: Àrea comercial industrial: Zona industrial commercial: Zona comercial heathland: Bruguerar - lake: - - Llac - - bassa + scrubland: Matolls + lake: Llac + reservoir: Embassament + intermittent_water: Cos d'aigua intermitent + glacier: Glacera + reef: Escull + wetland: Aiguamoll farm: Granja brownfield: Àrea industrial abandonada cemetery: Cementiri @@ -2325,19 +2330,19 @@ ca: centre: Centre esportiu reserve: Reserva natural military: Àrea militar - school: - - Escola - Institut - - Universitat + school: Escola - Institut + university: Universitat + hospital: Hospital building: Edifici significatiu station: Estació de tren - summit: - - Cim - - pic + summit: Cim + peak: Cim tunnel: Línia discontínua = túnel bridge: Línia negra = pont private: Accés privat destination: Servitud de pas construction: Carreteres en construcció + bus_stop: Parada d'autobús bicycle_shop: Botiga de bicicletes bicycle_parking: Aparcament de bicicletes toilets: Lavabos diff --git a/config/locales/ce.yml b/config/locales/ce.yml index 7073f6b08..14455d1a3 100644 --- a/config/locales/ce.yml +++ b/config/locales/ce.yml @@ -738,7 +738,9 @@ ce: messages: inbox: title: ЧуйогӀурш + messages_table: from: Хьаьнгара + to: Хьаьнга subject: Тема date: Терахь message_summary: @@ -748,9 +750,6 @@ ce: back_to_inbox: ЧубогӀучаьрга йуханехьа outbox: title: ДӀайохьуьйтурш - to: Хьаьнга - subject: Тема - date: Терахь show: title: Хаамашка хьажар reply_button: Жоп ло @@ -760,15 +759,16 @@ ce: sent_message_summary: destroy_button: ДӀайаккха passwords: - lost_password: + new: title: Пароль меттахӀоттор heading: Йицйелла пароль? email address: 'Электронан поштан адрес:' new password button: Керла пароль кхосса соьга - reset_password: + edit: title: Йуха а йазйе пароль heading: Йуха а йазйе пароль %{user} reset: ХӀоттайе пароль + update: flash changed: Хьан пароль хийцина. profiles: edit: @@ -803,12 +803,7 @@ ce: infringement_title_html: Авторийн бакъонаш талхор export: title: Экспорт йан - area_to_export: Экспорт йаран меттиг manually_select: Билгале кхин меттиг - format_to_export: Экспортан формат - osm_xml_data: OpenStreetMap XML форматехь хаамаш - map_image: Картан сурт (гайта стандартан гӀатт) - embeddable_html: Нисйан луш йолу HTML licence: Лицензи too_large: planet: @@ -819,16 +814,6 @@ ce: title: Чуйолурш Geofabrik other: title: Кхин хьосташ - options: Параметраш - format: Формат - scale: Гар - max: макс. - image_size: 'Суьртан барам:' - zoom: Улле йалайе - add_marker: Картан тӀе маркер йилла - latitude: 'Шоралла:' - longitude: 'Дохалла:' - output: Хилам export_button: Экспорт йан fixthemap: title: Хаамбе гӀалатах лаце / нийсде карта diff --git a/config/locales/cs.yml b/config/locales/cs.yml index 5323b9089..32b874f7a 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -883,7 +883,7 @@ cs: "yes": Most building: apartment: Apartmán - apartments: Apartmány + apartments: Bytový dům barn: Stodola bungalow: Bungalov cabin: Chatka @@ -1542,9 +1542,9 @@ cs: many: '%{count} hlášení' other: '%{count} hlášení' no_reports: Žádná hlášení - report_created_at: První hlášení v %{datetime} - last_resolved_at: Naposledy vyřeÅ¡eno v %{datetime} - last_updated_at: Poslední aktualizace v %{datetime} od %{displayname} + report_created_at_html: První hlášení v %{datetime} + last_resolved_at_html: Naposledy vyřeÅ¡eno v %{datetime} + last_updated_at_html: Poslední aktualizace v %{datetime} od %{displayname} resolve: VyřeÅ¡it ignore: Ignorovat reopen: Znovu otevřít @@ -1827,8 +1827,6 @@ cs: messages: inbox: title: Doručená poÅ¡ta - my_inbox: Má doručená poÅ¡ta - my_outbox: Moje odchozí messages: Máte %{new_messages} a %{old_messages} new_messages: few: '%{count} nové zprávy' @@ -1838,12 +1836,14 @@ cs: few: '%{count} staré zprávy' one: '%{count} starou zprávu' other: '%{count} starých zpráv' - from: Od - subject: Předmět - date: Datum 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 message_summary: unread_button: Označit jako nepřečtené read_button: Označit jako přečtené @@ -1863,15 +1863,10 @@ cs: body: Je mi líto, ale žádná zpráva s tímto ID neexistuje. outbox: title: Odeslaná poÅ¡ta - my_inbox: Moje příchozí - my_outbox: Moje odchozí messages: few: Máte %{count} odeslané zprávy one: Máte %{count} odeslanou zprávu other: Máte %{count} odeslaných zpráv - to: Komu - subject: Předmět - date: Datum 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íž @@ -1890,28 +1885,33 @@ cs: se pod správným účtem. sent_message_summary: destroy_button: Smazat + heading: + my_inbox: Má doručená poÅ¡ta + my_outbox: Moje odchozí mark: as_read: Zpráva označena jako přečtená as_unread: Zpráva označena jako nepřečtená destroy: destroyed: Zpráva smazána passwords: - lost_password: + new: title: Ztracené heslo heading: Zapomněli jste heslo? email address: 'E-mailová adresa:' new password button: Resetovat heslo help_text: Zadejte e-mailovou adresu, pod kterou jste se zaregistrovali, my vám na ni poÅ¡leme odkaz, pomocí kterého si nastavíte nové heslo. + create: notice email on way: Å koda zapomenutého hesla :-( e-mail už je na cestě, takže si budete brzy moci zvolit nové. notice email cannot find: Je mi líto, ale nemohu najít tuto e-mailovou adresu. - reset_password: + edit: title: Obnovit heslo heading: Resetovat heslo pro %{user} reset: Resetovat heslo - flash changed: VaÅ¡e heslo bylo změněno. flash token bad: Odpovídající kód nebyl nalezen, možná zkontrolujte URL? + update: + flash changed: VaÅ¡e heslo bylo změněno. preferences: show: title: Moje preference @@ -2247,12 +2247,7 @@ cs: jsou pro tuto funkci nezbytné. export: title: Export - area_to_export: Oblast k exportu manually_select: Ručně vybrat jinou oblast - format_to_export: Formát exportu - osm_xml_data: Data OpenStreetMap XML - map_image: Obrázek mapy (zobrazuje standardní vrstvu) - embeddable_html: Vkládatelné HTML licence: Licence licence_details_html: Data OpenStreetMap jsou licencována pod %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -2275,17 +2270,6 @@ cs: other: title: Další zdroje description: Další zdroje uvedené na wiki OpenStreetMap - options: Možnosti - format: Formát - scale: Měřítko - max: max. - image_size: Velikost obrázku - zoom: Zoom - add_marker: Přidat do mapy značku - latitude: 'Šířka:' - longitude: 'Délka:' - output: Výstup - paste_html: Ke vložení na stránku použijte toto HTML export_button: Export fixthemap: title: Nahlásit problém / opravit mapu @@ -2393,35 +2377,24 @@ cs: footway: Pěší cesta rail: Železnice subway: Metro - tram: - - Rychlodráha - - tramvaj - cable: - - Lanovka - - sedačková lanovka - runway: - - Vzletová a přistávací dráha - - pojezdová dráha - apron: - - LetiÅ¡tní odbavovací plocha - - terminál + cable_car: Lanovka + chair_lift: sedačková lanovka + runway: Vzletová a přistávací dráha + taxiway: pojezdová dráha + apron: LetiÅ¡tní odbavovací plocha admin: Administrativní hranice forest: Les wood: Les golf: Golfové hřiÅ¡tě park: Park + common: Pastvina resident: Obytná oblast - common: - - Pastvina - - louka - - zahrada retail: Nákupní oblast industrial: Průmyslová oblast commercial: Kancelářská oblast heathland: VřesoviÅ¡tě - lake: - - Jezero - - nádrž + lake: Jezero + reservoir: nádrž farm: Farma brownfield: ZbořeniÅ¡tě cemetery: Hřbitov @@ -2430,14 +2403,12 @@ cs: centre: Sportovní centrum reserve: Přírodní rezervace military: Vojenský prostor - school: - - Å kola - - univerzita + school: Å kola + university: univerzita building: Významná budova station: Nádraží - summit: - - Vrchol - - hora + summit: Vrchol + peak: hora tunnel: Čárkované obrysy = tunel bridge: Černé obrysy = most private: Soukromý pozemek diff --git a/config/locales/cy.yml b/config/locales/cy.yml index aa673f831..7f1259369 100644 --- a/config/locales/cy.yml +++ b/config/locales/cy.yml @@ -819,11 +819,15 @@ cy: college: Adeilad Coleg commercial: Adeilad Masnachol construction: Adeilad yn cael ei Adeiladu + detached: TÅ· Datgysylltiedig dormitory: Dorm + duplex: TÅ· Deublyg farm: Ffermdy + farm_auxiliary: TÅ· Fferm Ategol garage: Garej garages: Garejis greenhouse: TÅ· Gwydr + hangar: Hangar hospital: Adeilad Ysbyty hotel: Adeilad Gwesty house: TÅ· @@ -831,11 +835,13 @@ cy: hut: Cwt industrial: Adeilad Diwydiannol kindergarten: Adeilad Meithrinfa + manufacture: Adeilad Gweithgynhyrchu office: Adeilad Swyddfa public: Adeilad Cyhoeddus residential: Adeilad Preswyl retail: Adeilad Adwerthu roof: To + ruins: Adeilad Adfeiliedig school: Adeilad Ysgol shed: Sied stable: Stabl @@ -1387,14 +1393,16 @@ cy: many: '%{count} adroddiad' other: '%{count} adroddiad' no_reports: Dim adroddiadau - report_created_at: Adroddwyd gyntaf am %{datetime} - last_resolved_at: Datryswyd ddiwethaf am %{datetime} - last_updated_at: Diweddarwyd ddiwethaf am %{datetime} gan %{displayname} + report_created_at_html: Adroddwyd gyntaf am %{datetime} + last_resolved_at_html: Datryswyd ddiwethaf am %{datetime} + last_updated_at_html: Diweddarwyd ddiwethaf am %{datetime} gan %{displayname} resolve: Datrys ignore: Anwybyddu reopen: Ailagor read_reports: Darllen Adroddiadau new_reports: Adroddiadau Newydd + comments: + comment_from_html: Sylw gan %{user_link} ar %{comment_created_at} reports: reported_by_html: Adroddwyd fel %{category} gan %{user} ar %{updated_at} helper: @@ -1454,10 +1462,12 @@ cy: 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. intro_2_create_account: Creu cyfrif defnyddiwr + hosting_partners_html: Cefnogir y gynhaliaeth gan %{ucl}, %{fastly}, %{bytemark} + a %{partners} eraill partners_ucl: UCL partners_fastly: Fastly partners_bytemark: Bytemark Hosting - partners_partners: partneriaid + partners_partners: phartneriaid tou: Telerau Gwasanaeth osm_offline: Mae cronfa ddata OpenStreetMap all-lein ar hyn o bryd er mwyn gwaith cynnal a chadw hanfodol. @@ -1524,12 +1534,15 @@ cy: hi: Helo %{to_user}, greeting: Helo, commented: + subject_own: '[OpenStreetMap] Gwnaeth %{commenter} sylw ar un o''ch grwpiau + newid' partial_changeset_with_comment: gyda sylw '%{changeset_comment}' partial_changeset_with_comment_html: gyda sylw '%{changeset_comment}' partial_changeset_without_comment: dim sylw confirmations: confirm: heading: Gwiriwch eich e-byst! + introduction_1: Rydym wedi anfon e-bost cadarnhau atoch. button: Cadarnhau click_here: cliciwch yma confirm_resend: @@ -1542,8 +1555,6 @@ cy: messages: inbox: title: Mewnflwch - my_inbox: Fy Mewnflwch - my_outbox: Fy Mlwch Allan messages: Mae gennych %{new_messages} a %{old_messages} new_messages: zero: '%{count} neges newydd' @@ -1559,15 +1570,19 @@ cy: few: '%{count} hen neges' many: '%{count} hen neges' other: '%{count} hen neges' + people_mapping_nearby: person yn mapio gerllaw + messages_table: from: Gan + to: I subject: Pwnc date: Dyddiad - people_mapping_nearby: person yn mapio gerllaw + actions: Gweithredoedd message_summary: unread_button: Marcio fel heb ei ddarllen read_button: Marcio fel wedi'i ddarllen reply_button: Ateb destroy_button: Dileu + unmute_button: Symud i'r Mewnflwch new: title: Anfon neges send_message_to_html: Anfon neges newydd at %{name} @@ -1582,14 +1597,10 @@ cy: body: Sori, nid oes neges gyda'r id yno. outbox: title: Blwch Allan - my_inbox: Fy Mewnflwch - my_outbox: Fy Mlwch Allan + actions: Gweithredoedd messages: one: Mae gennych %{count} neges wedi ei anfon other: Mae gennych %{count} neges wedi eu hanfon - to: I - subject: Pwnc - date: Dyddiad people_mapping_nearby: pobl yn mapio gerllaw show: title: Darllen neges @@ -1599,22 +1610,27 @@ cy: back: Yn ôl sent_message_summary: destroy_button: Dileu + heading: + my_inbox: Fy Mewnflwch + my_outbox: Fy Mlwch Allan mark: as_read: Nodwyd fod y neges wedi ei ddarllen as_unread: Nodwyd nad yw'r neges wedi ei ddarllen destroy: destroyed: Neges wedi'i dileu passwords: - lost_password: + new: title: Ailosod cyfrinair heading: Wedi anghofio'ch cyfrinair? email address: 'Cyfeiriad e-bost:' new password button: Ailosod cyfrinair + create: notice email cannot find: Methwyd dod o hyd i'r cyfeiriad ebost yno. - reset_password: + edit: title: Ailosod cyfrinair heading: Ailosod cyfrinair ar gyfer %{user} reset: Ailosod cyfrinair + update: flash changed: Mae eich cyfrinair wedi'i newid. preferences: show: @@ -1710,6 +1726,7 @@ cy: image: Delwedd alt: Testun amgen url: URL + codeblock: Bloc cod richtext_field: edit: Golygu preview: Rhagolwg @@ -1822,12 +1839,7 @@ cy: id_not_configured: iD heb ei ffurfweddu export: title: Allforio - area_to_export: Ardal i'w Hallforio manually_select: Dewiswch ardal wahanol â llaw - format_to_export: Fformatiwch i'w Hallforio - osm_xml_data: Data XML OpenStreetMap - map_image: Delwedd y Map (dangoser yr haen safonol) - embeddable_html: Mewnosod HTML licence: Trwydded licence_details_html: Trwyddedir data OpenStreetMap o dan y %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -1842,16 +1854,6 @@ cy: other: title: Ffynonellau eraill description: Ffynonellau ychwanegol a nodir ar wici OpenStreetMap - options: Dewisiadau - format: Fformat - scale: Graddfa - max: uchafswm - image_size: Maint y ddelwedd - zoom: Chwyddo - add_marker: Ychwanegwch bin ar y map - latitude: 'Lledred:' - longitude: 'Hydred:' - output: Allbwn export_button: Allforio fixthemap: title: Adrodd am broblem / Cywiro map @@ -1874,7 +1876,7 @@ cy: help: title: Fforwm Cymorth mailing_lists: - title: Rhestr Gohebiaeth + title: Rhestrau Post community: title: Fforwm Cymunedol irc: @@ -1924,36 +1926,45 @@ cy: cycleway_local: Llwybr beiciau lleol footway: Troedffordd rail: Rheilffordd + train: Trên subway: Trenau tanddaear - tram: - - Rheilffordd ysgafn - - dram - cable: - - Car cebl - - lifft cadair - runway: - - Llwybr glanio - - thacsiffordd maes awyr - apron: - - Llain - - therminws maes awyr + ferry: Fferi + light_rail: Rheilffordd ysgafn + tram: Tram + trolleybus: Bws Drydan + bus: Bws + cable_car: Car cebl + chair_lift: Cadair godi + runway: Llwybr glanio + taxiway: Tacsiffordd + apron: Llain admin: Ffin gweinyddol + capital: Prifddinas + city: Dinas + orchard: Perllan + vineyard: Gwinllan forest: Coedwig wood: Coedlan + farmland: Tir Ffermio + grass: Gwair + meadow: Gwaun + bare_rock: Carreg Plaen + sand: Tywod golf: Maes golff park: Parc + common: Comin + built_up: Ardal Adeiledig resident: Ardal breswyl - common: - - Comin - - gwaun - - gardd retail: Ardal adwerthu industrial: Ardal ddiwydiannol commercial: Ardal fasnachol heathland: Rhos - lake: - - Llyn - - chronfa ddŵr + scrubland: Prysgoed + lake: Llyn + reservoir: Cronfa Ddŵr + glacier: Rhewlif + reef: Riff + wetland: Gwlyptir farm: Fferm brownfield: Safle tir llwyd cemetery: Mynwent @@ -1962,19 +1973,20 @@ cy: centre: Canolfan chwaraeon reserve: Gwarchodfa natur military: Ardal filwrol - school: - - Ysgol - - phrifysgol + school: Ysgol + university: Prifysgol + hospital: Ysbyty building: Adeilad arwyddocâol station: Gorsaf drên - summit: - - Copa - - chrib + summit: Copa + peak: Copa tunnel: Border toredig = twnnel bridge: Border du = pont private: Mynediad preifat destination: Mynediad cyrchfan construction: Ffyrdd yn cael eu hadeiladu + bus_stop: Safle Bws + stop: Safle bicycle_shop: Siop feiciau bicycle_parking: Man parcio beiciau toilets: Toiledau @@ -2146,6 +2158,7 @@ cy: read_gpx: Darllen arllwybrau GPS preifat write_gpx: Uwchlwytho arllwybrau GPS write_notes: Addasu nodiadau + write_redactions: Gorchuddio data map read_email: Darllen cyfeiriad e-bost defnyddwyr skip_authorization: Cymeradwyo cais yn awtomatig oauth_clients: @@ -2206,6 +2219,7 @@ cy: header: Rhydd ac agored display name description: Eich enw defnyddiwr cyhoeddus. Gallwch newid hyn yn nes ymlaen yn eich dewisiadau. + external auth: 'Dilysu Trydydd Parti:' use external auth: Fel arall, defnyddiwch drydydd parti i fewngofnodi continue: Cofrestru terms accepted: Diolch am dderbyn telerau newydd cyfranwyr! @@ -2244,6 +2258,8 @@ cy: my_dashboard: Dangosfwrdd blocks on me: Blociau arnaf i blocks by me: Blociau gennyf i + create_mute: Anwybyddu'r Defnyddiwr hwn + destroy_mute: Dad-anwybyddu'r Defnyddiwr hwn edit_profile: Golygu Proffil send message: Anfon Neges diary: Dyddiadur @@ -2264,6 +2280,15 @@ cy: role: administrator: Mae'r defnyddiwr hwn yn weinyddwr. moderator: Mae'r defnyddiwr hwn yn gymedrolwr. + importer: Mae'r defnyddiwr hwn yn fewnforiwr + grant: + administrator: Rhoi statws gweinyddwr + moderator: Rhoi statws cymedrolwr + importer: Rhoi statws mewnforiwr + revoke: + administrator: Tynnu statws gweinyddwr + moderator: Tynnu statws cymedrolwr + importer: Tynnu statws mewnforiwr block_history: Blociau Gweithredol moderator_history: Blociau a roddwyd comments: Sylwadau @@ -2385,6 +2410,15 @@ cy: showing_page: Tudalen %{page} next: Nesaf » previous: « Blaenorol + user_mutes: + index: + table: + thead: + actions: Gweithredoedd + tbody: + send_message: Anfon neges + create: + notice: Rydych chi wedi anwybyddu %{name}. notes: index: heading: Nodiadau %{user} @@ -2452,6 +2486,7 @@ cy: short_url: URL Byr include_marker: Cynnwys marciwr center_marker: Canoli'r map ar y marciwr + view_larger_map: Gweld Map Mawr embed: report_problem: Adrodd am broblem key: diff --git a/config/locales/da.yml b/config/locales/da.yml index bc01d8f6e..a46e357a8 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -74,6 +74,9 @@ da: messages: invalid_email_address: ser ikke ud til at være en gyldig e-mailadresse email_address_not_routable: kan ikke rutes + models: + user_mute: + is_already_muted: er allerede gjort stille models: acl: Adgangskontrolliste changeset: Ændringssæt @@ -1490,9 +1493,9 @@ da: one: '%{count} rapport' other: '%{count} rapporter' no_reports: Ingen rapporter - report_created_at: Rapporteret første gang %{datetime} - last_resolved_at: Sidst løst %{datetime} - last_updated_at: Sidst opdateret %{datetime} af %{displayname} + report_created_at_html: Rapporteret første gang %{datetime} + last_resolved_at_html: Sidst løst %{datetime} + last_updated_at_html: Sidst opdateret %{datetime} af %{displayname} resolve: Løs ignore: Ignorér reopen: GenÃ¥bn @@ -1773,8 +1776,6 @@ da: messages: inbox: title: Indbakke - my_inbox: Min indbakke - my_outbox: Min udbakke messages: Du har %{new_messages} og %{old_messages} new_messages: one: '%{count} nye besked' @@ -1782,17 +1783,21 @@ da: old_messages: one: '%{count} gammel besked' other: '%{count} gamle beskeder' - from: Fra - subject: Emne - date: Dato 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 reply_button: Svar destroy_button: Slet + unmute_button: Flyt til Indbakke new: title: Send besked send_message_to_html: Send en ny besked til %{name} @@ -1807,17 +1812,18 @@ da: body: Beklager, der er ingen besked med det id. outbox: title: Udbakke - my_inbox: Min indbakke - my_outbox: Min udbakke + actions: Handlinger messages: one: Du har %{count} sendt besked other: Du har %{count} sendte beskeder - to: Til - subject: Emne - date: Dato 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 @@ -1833,28 +1839,39 @@ da: den korrekte bruger for at svare. 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 + unmute: + notice: Beskeden er flyttet til Indbakke + error: Beskeden kunne ikke flyttes til Indbakke. destroy: destroyed: Besked slettet passwords: - lost_password: + new: title: Glemt adgangskode heading: Glemt adgangskode? email address: 'E-mailadresse:' new password button: Nulstil adgangskode help_text: Indtast e-mailadressen du brugte da du oprettede kontoen. Vi sender et link til den som du kan bruge til at nulstille din adgangskode. + create: notice email on way: Synd du har glemt den, men en e-mail er pÃ¥ vej sÃ¥ du kan snart indstille en ny. notice email cannot find: Kunne ikke finde den e-mailadresse, beklager. - reset_password: + edit: title: Nulstil adgangskode heading: Nulstil adgangskode for %{user} reset: Nulstil adgangskode - flash changed: Din adgangskode er ændret. flash token bad: Kunne ikke finde denne nøgle, prøv at kontrollere URL'en? + update: + flash changed: Din adgangskode er ændret. + flash token bad: Fandt ikke den der nøgle. Kunne du mÃ¥ske prøve pÃ¥ at tjekke + URL'en? preferences: show: title: Mine præferencer @@ -1959,6 +1976,7 @@ da: image: Billede alt: Alt-tekst url: URL + codeblock: Kodeblok richtext_field: edit: Rediger preview: ForhÃ¥ndsvisning @@ -2096,6 +2114,10 @@ da: %{canada}: Indeholder data fra GeoBase®, GeoGratis (© Department of Natural Resources Canada), CanVec (© Department of Natural Resources Canada) og StatCan (Geography Division, Statistics Canada). contributors_ca_canada: Canada + contributors_cz_credit_html: |- + %{czechia}: Indeholder data fra State Administration of Land Surveying + and Cadastre licenseret under %{cc_licence_link} + contributors_cz_czechia: Tjekkiet contributors_fi_credit_html: '%{finland}: Indeholder data fra National Land Survey af Finlands topografiske database og andre datasæt under %{nlsfi_license_link}.' contributors_fi_finland: Finland @@ -2182,12 +2204,7 @@ da: for denne funktion. export: title: Eksportér - area_to_export: OmrÃ¥de som skal eksporteres manually_select: Vælg et andet omrÃ¥de manuelt - format_to_export: Format for eksport - osm_xml_data: OpenStreetMap XML-data - map_image: Kort billede (viser standard lag) - embeddable_html: HTML der kan indlejres licence: Licens licence_details_html: OpenStreetMap-data er licenseret under %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -2211,17 +2228,6 @@ da: other: title: Andre kilder description: Yderligere kilder er anført pÃ¥ OpenStreetMap-wiki - options: Indstillinger - format: Format - scale: Skala - max: maks - image_size: Billedstørrelse - zoom: Zoom - add_marker: Tilføj en markør pÃ¥ kortet - latitude: 'Bredde:' - longitude: 'Længde:' - output: Output - paste_html: Indsæt HTML som skal indlejres i siden export_button: Eksportér fixthemap: title: Rapportér et problem / Ret kortet @@ -2322,44 +2328,56 @@ da: primary: Hovedvej (primærrute) secondary: Hovedvej (sekundærrute) unclassified: Anden vej + pedestrian: GÃ¥gade track: Hjulspor bridleway: Ridesti cycleway: Cykelsti cycleway_national: National cykelsti cycleway_regional: Regional cykelsti cycleway_local: Lokal cykelsti + cycleway_mtb: Mountainbikerute footway: Gangsti rail: Jernbane + train: Tog subway: Undergrundsbane - tram: - - Letbane - - sporvogn - cable: - - Kabelvogn - - stolelift - runway: - - Landingsbane - - taxibane - apron: - - Lufthavnsforplads - - terminal + ferry: Færge + light_rail: Letbane + tram: Sporvogn + trolleybus: Trolleybus + bus: Bus + cable_car: Kabelvogn + chair_lift: Stolelift + runway: Landingsbane + taxiway: Rullevej + apron: Lufthavnsforplads admin: Administrativ grænse + capital: Hovedstad + city: By + orchard: Plantage + vineyard: VingÃ¥rd forest: Skov - wood: Skov + wood: Træ + farmland: Landbrugsjord + grass: Græs + meadow: Eng + bare_rock: Blottet klippe + sand: Sand golf: Golfbane park: Park + common: Fælled + built_up: Bebygget omrÃ¥de resident: BoligomrÃ¥de - common: - - Fælled - - eng - - have retail: DetailhandelsomrÃ¥de industrial: IndustriomrÃ¥de commercial: ErhvervsomrÃ¥de heathland: Hede - lake: - - Sø - - reservoir + scrubland: Buskads + lake: Sø + reservoir: Reservoir + intermittent_water: Periodisk vandmasse + glacier: Gletsjer + reef: Rev + wetland: VÃ¥domrÃ¥de farm: GÃ¥rd brownfield: Tidligere industriomrÃ¥de cemetery: Begravelsesplads @@ -2368,19 +2386,20 @@ da: centre: Sportscenter reserve: Naturreservat military: Militært omrÃ¥de - school: - - Skole - - universitet + school: Skole + university: Universitet + hospital: Sygehus building: Vigtig bygning station: Togstation - summit: - - Bjergtop - - højdepunkt + summit: Bjergtop + peak: Højdepunkt tunnel: Stiplet kant = tunnel bridge: Sort kant = bro private: Privat adgang destination: Ærindekørsel tilladt construction: Veje under konstruktion + bus_stop: Busstop + stop: Stop bicycle_shop: Cykelhandler bicycle_parking: Cykelparkering toilets: Toiletter @@ -2425,6 +2444,7 @@ da: imports: Importering automated_edits: Automatiske Redigeringer start_mapping: Begynd at kortlægge + continue_authorization: Fortsæt autorisation add_a_note: title: Ikke tid til redigering? Tilføj en bemærkning! para_1: Hvis du bare vil have en lille detalje rettet, men ikke har tid til @@ -2582,6 +2602,7 @@ da: oauth1_settings: OAuth 1-indstillinger oauth2_applications: OAuth 2-applikationer oauth2_authorizations: OAuth 2-autorisationer + muted_users: Stillegjorte Brugere oauth: authorize: title: Tillad adgang til din konto @@ -2618,6 +2639,7 @@ da: read_gpx: Læse private GPS-spor write_gpx: Overføre GPS-spor write_notes: Ændre bemærkninger + write_redactions: Rediger kortdata read_email: Læse brugerens e-mailadresse skip_authorization: Godkend applikation automatisk oauth_clients: @@ -2789,6 +2811,8 @@ da: my_dashboard: Mit kontrolpanel blocks on me: Mine blokeringer blocks by me: Blokeringer udført af mig + create_mute: Stillegør denne bruger + destroy_mute: Fjern stillegørelse fra denne bruger edit_profile: Rediger profil send message: Send besked diary: Blog @@ -2809,14 +2833,18 @@ da: role: administrator: Denne bruger er en administrator moderator: Denne bruger er en moderator + importer: Denne bruger er en importør grant: administrator: Giv administrator-adgang moderator: Giv moderator-adgang + importer: Tildel adgang til at importere revoke: administrator: Fjern administrator-adgang moderator: Fjern moderator-adgang + importer: Tilbagetræk adgang til at importere block_history: Aktive blokeringer moderator_history: Uddelte blokeringer + revoke_all_blocks: Træk blokering tilbage comments: Kommentarer create_block: Blokér denne bruger activate_user: Aktivér denne bruger @@ -2929,6 +2957,16 @@ da: confirm: Er du sikker pÃ¥ du vil tilbagekalde denne blokering? revoke: Tilbagekald! flash: Denne blokering er blevet tilbagekaldt. + 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Ã¥. @@ -2987,6 +3025,29 @@ da: showing_page: Side %{page} next: Næste » previous: « Forrige + user_mutes: + index: + title: Stillegjorte Brugere + my_muted_users: Mine stillegjorte brugere + you_have_muted_n_users: '{{PLURAL|one=Du har gjort %{count} bruger stille|Du + har gjort %{count} brugere stille.' + user_mute_explainer: Beskeder fra stillegjorte brugere flyttes ind i en separat + Indbox og du modtager ikke længere email notifikationer. + user_mute_admins_and_moderators: Du kan stillegøre Administratorer og Moderatorer, + men deres beskeder kan ikke stillegøres. + table: + thead: + muted_user: Stillegjort Bruger + actions: Handlinger + tbody: + unmute: Fjern stillegørelse + send_message: Din besked + create: + notice: Du stillegjorde %{name}. + error: '%{name} kunne ikke stillegøres. %{full_message}' + destroy: + notice: Du fjernede stillegørelsen fra %{name} + error: Brugeren kunne ikke stillegøres. Prøv venligst igen. notes: index: title: Bemærkninger indsendt eller kommenteret af %{user} @@ -3023,6 +3084,7 @@ da: reactivate: Genaktiver comment_and_resolve: Kommentere pÃ¥ og løse comment: Kommenter + log_in_to_comment: Log ind for at kommentere pÃ¥ denne note report_link_html: Hvis denne bemærkning indeholder følsomme oplysninger, der skal fjernes, kan du %{link}. other_problems_resolve: For alle andre problemer med bemærkningen, bedes du diff --git a/config/locales/de.yml b/config/locales/de.yml index 7dbbc0465..4f7df13b7 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -16,6 +16,7 @@ # Author: Bxalber # Author: Campmaster # Author: Candid Dauth +# Author: Caro # Author: CarstenG # Author: ChrisiPK # Author: ChristianSW @@ -59,6 +60,7 @@ # Author: Kerosin # Author: Kghbln # Author: Killarnee +# Author: KimKelting # Author: Kjon # Author: Lonvia # Author: MGChecker @@ -96,7 +98,9 @@ # Author: The Evil IP address # Author: ThePiscin # Author: Thomas Bohn +# Author: Til # Author: Timonade +# Author: Twistqj # Author: Umherirrender # Author: Unkn0wnCat # Author: Vrifox @@ -143,6 +147,10 @@ de: messages: invalid_email_address: scheint keine gültige E-Mail-Adresse zu sein email_address_not_routable: ist nicht routingfähig + display_name_is_user_n: kann nicht user_n sein, es sei denn, n ist deine Benutzer-ID + models: + user_mute: + is_already_muted: ist bereits stummgeschaltet models: acl: Zugriffssteuerungsliste changeset: Änderungssatz @@ -369,6 +377,8 @@ de: retain_changeset_discussions: Die Diskussionen über deine Änderungssätze, sofern vorhanden, werden beibehalten. retain_email: Deine E-Mail-Adresse wird beibehalten. + recent_editing_html: Da du dein Konto kürzlich bearbeitet hast, kann es derzeit + nicht gelöscht werden. Das Löschen ist in %{time} möglich. confirm_delete: Bist du sicher? cancel: Abbrechen accounts: @@ -705,10 +715,18 @@ de: Konfiguration Doorkeeper::OpenidConnect.configure.auth_time_from_resource_owner. reauthenticate_resource_owner_not_configured: Fehler aufgrund fehlender Konfiguration Doorkeeper::OpenidConnect.configure.reauthenticate_resource_owner. + resource_owner_from_access_token_not_configured: Fehler aufgrund fehlender + Doorkeeper::OpenidConnect.configure.resource_owner_from_access_token-Konfiguration. + select_account_for_resource_owner_not_configured: Fehler aufgrund fehlender + Doorkeeper::OpenidConnect.configure.select_account_for_resource_owner-Konfiguration. + subject_not_configured: Die Generierung des ID-Tokens ist aufgrund der fehlenden + Konfiguration von Doorkeeper::OpenidConnect.configure.subject fehlgeschlagen. scopes: address: Physische Adresse anzeigen email: E-Mail-Adresse anzeigen openid: Account authentifizieren + phone: Sieh dir deine Telefonnummer an + profile: Sieh dir deine Profilinformationen an errors: contact: contact_url: https://wiki.openstreetmap.org/wiki/DE:Kommunikationskan%C3%A4le @@ -1556,9 +1574,9 @@ de: one: Eine Meldung other: '%{count} Meldungen' no_reports: Keine Berichte - report_created_at: Zuerst gemeldet am %{datetime} - last_resolved_at: Zuletzt erledigt am %{datetime} - last_updated_at: Zuletzt aktualisiert am %{datetime} von %{displayname} + report_created_at_html: Zuerst gemeldet am %{datetime} + last_resolved_at_html: Zuletzt erledigt am %{datetime} + last_updated_at_html: Zuletzt aktualisiert am %{datetime} von %{displayname} resolve: Erledigen ignore: Ignorieren reopen: Erneut öffnen @@ -1722,6 +1740,8 @@ de: loaded: one: mit %{trace_points} von einem möglichen Punkt erfolgreich geladen. other: mit %{trace_points} von %{count} möglichen Punkten erfolgreich geladen. + all_your_traces_html: Alle deiner erfolgreich hochgeladenen GPX-Traces findest + du unter %{url}. subject: '[OpenStreetMap] GPX-Import erfolgreich' signup_confirm: subject: '[OpenStreetMap] Willkommen bei OpenStreetMap' @@ -1850,8 +1870,6 @@ de: messages: inbox: title: Posteingang - my_inbox: Posteingang - my_outbox: Mein Postausgang messages: Du hast %{new_messages} und %{old_messages} new_messages: one: '%{count} ungelesene Nachricht' @@ -1859,17 +1877,21 @@ de: old_messages: one: '%{count} gelesene Nachricht' other: '%{count} gelesene Nachrichten' - from: Absender - subject: Betreff - date: Datum 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 reply_button: Antworten destroy_button: Löschen + unmute_button: In den Posteingang verschieben new: title: Nachricht senden send_message_to_html: Eine Nachricht an %{name} senden @@ -1884,17 +1906,18 @@ de: body: Leider gibt es keine Nachricht mit dieser ID. outbox: title: Gesendet - my_inbox: Mein Posteingang - my_outbox: Mein Postausgang + actions: Aktionen messages: one: Du hast %{count} Nachricht gesendet other: Du hast %{count} Nachrichten gesendet - to: An - subject: Betreff - date: Datum 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 angemeldet als '%{user}', aber die Nachricht, auf die du antworten wolltest, wurde an einen anderen Benutzer geschickt. Bitte melde @@ -1910,13 +1933,20 @@ de: Lesen mit dem richtigen Benutzer an. 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 + unmute: + notice: Die Nachricht wurde in den Posteingang verschoben + error: Die Nachricht konnte nicht in den Posteingang verschoben werden. destroy: destroyed: Nachricht gelöscht passwords: - lost_password: + new: title: Passwort vergessen heading: Passwort vergessen? email address: 'E-Mail-Adresse:' @@ -1924,17 +1954,21 @@ de: help_text: Bitte gib deine E-Mail-Adresse ein, mit der du dich angemeldet hast. Wir werden dir dann einen Link schicken, mit dem du dein Passwort zurücksetzen kannst. + create: notice email on way: Eine E-Mail mit Hinweisen zum Zurücksetzen des Passworts wurde an dich versandt. notice email cannot find: Wir konnten die E-Mail-Adresse nicht finden. Du hast dich möglicherweise vertippt oder mit einer anderen E-Mail-Adresse angemeldet. - reset_password: + edit: title: Passwort zurücksetzen heading: Passwort für %{user} zurücksetzen reset: Passwort zurücksetzen - flash changed: Dein Passwort wurde geändert. flash token bad: Wir konnten dieses Kürzel leider nicht finden. Du hast dich möglicherweise vertippt oder du bist einem ungültigem Link gefolgt. + update: + flash changed: Dein Passwort wurde geändert. + flash token bad: Das Token konnte nicht gefundenw werden, überprüfe bitte die + URL. preferences: show: title: Benutzereinstellungen @@ -2039,6 +2073,7 @@ de: image: Bild alt: Alternativer Text url: URL + codeblock: Code-Block richtext_field: edit: Bearbeiten preview: Vorschau @@ -2137,6 +2172,12 @@ de: anzeigst. credit_2_2: Mache deutlich, dass die Daten unter der Open Database-Lizenz verfügbar sind. + credit_3_html: Für den Urheberrechts-Hinweis haben wir unterschiedliche Anforderungen, + wie dieser angezeigt werden soll, je nachdem, wie du unsere Daten verwendest. + Beispielsweise gelten unterschiedliche Regeln für die Anzeige des Urheberrechtshinweises, + je nachdem, ob du eine durchsuchbare Karte, eine gedruckte Karte oder ein + statisches Bild erstellt hast. Ausführliche Informationen zu den Anforderungen + findest du unter %{attribution_guidelines_link}. credit_3_attribution_guidelines: Richtlinien für Namensnennungen credit_4_1_html: Um klarzustellen, dass die Daten unter der Open Database License verfügbar sind, kannst Du auf %{this_copyright_page_link} verlinken. @@ -2146,10 +2187,13 @@ de: openstreetmap.org (vielleicht durch das Erweitern von 'OpenStreetMap' auf diese vollständige Adresse) und auf opendatacommons.org zu verweisen. In diesem Beispiel erscheint der Hinweis in der Ecke der Karte. + credit_4_1_this_copyright_page: diese Copyright-Seite attribution_example: alt: Beispiel, wie man auf OpenStreetMap auf einer Webseite hinweist title: Namensnennung-Beispiel more_title_html: Weitere Informationen + more_1_1_html: Weitere Informationen zur Nutzung unserer Daten und zur Gutschrift + findest du unter %{osmf_licence_page_link}. more_1_1_osmf_licence_page: OSMF-Lizenzseite more_2_1_html: |- Obwohl es sich bei OpenStreetMap um offene Daten handelt, können wir keine kostenlose Karten-API für Dritte bereitstellen. @@ -2161,6 +2205,9 @@ de: contributors_intro_html: 'Unsere Mitwirkenden sind tausende einzelne Menschen. Wir beziehen auch offen lizenzierte Daten von nationalen Kartenagenturen und anderen Quellen ein, darunter:' + contributors_at_credit_html: |- + %{austria}: Enthält Daten aus %{stadt_wien_link} (unter %{cc_by_link}), %{land_vorarlberg_link} + und dem Land Tirol (unter %{cc_by_at_with_amendments_link}). contributors_at_austria: Österreich contributors_at_stadt_wien: Stadt Wien contributors_at_cc_by: CC BY @@ -2180,6 +2227,12 @@ de: Resources Canada) und StatCan (Geography Division, Statistics). Kanada). contributors_ca_canada: Kanada + contributors_cz_credit_html: |- + %{czechia}: Enthält Daten der staatlichen Verwaltung für Landvermessung + und Kataster, lizenziert unter %{cc_licence_link} + contributors_cz_czechia: Tschechien + contributors_cz_cc_licence: Creative Commons Namensnennung 4.0 Internationale + Lizenz (CC BY 4.0) contributors_fi_credit_html: |- %{finland}: Enthält Daten aus der Nationalen Landvermessung der Topografischen Datenbank Finnlands @@ -2230,6 +2283,7 @@ de: contributors_2_html: Weitere Einzelheiten zu diesen und anderen Quellen, die zur Verbesserung von OpenStreetMap verwendet wurden, findest du unter %{contributors_page_link} im OpenStreetMap-Wiki. + contributors_2_contributors_page: Seite der Benutzers contributors_footer_2_html: Die Einbeziehung von Daten bei OpenStreetMap bedeutet nicht, dass der ursprüngliche Datenlieferant OpenStreetMap unterstützt, Gewährleistung dafür gibt oder die Haftung dafür übernimmt. @@ -2238,6 +2292,10 @@ de: hin, dass keinesfalls Daten aus urheberrechtlich geschützten Quellen verwendet werden dürfen (z. B. Google Maps oder gedruckte Kartenwerke), ohne vorher die ausdrückliche Erlaubnis des Rechteinhabers erhalten zu haben. + infringement_2_1_html: Wenn du glaubst, dass urheberrechtlich geschütztes + Material unangemessen zur OpenStreetMap-Datenbank oder dieser Website hinzugefügt + wurde, lies bitte %{takedown_procedure_link} oder reiche die Beschwerde + direkt bei über %{online_filing_page_link} ein. infringement_2_1_takedown_procedure: Takedown-Verfahren infringement_2_1_online_filing_page: Online-Einreichungsseite trademarks_title: Warenzeichen @@ -2269,12 +2327,7 @@ de: die für diese Funktion notwendig sind. export: title: Exportieren - area_to_export: Bereich für den Export manually_select: Einen anderen Bereich manuell auswählen - format_to_export: Format für den Export - osm_xml_data: OpenStreetMap-XML-Daten - map_image: Karte (zeigt die Standardebene) - embeddable_html: HTML zum Einbinden licence: Lizenz licence_details_html: OpenStreetMap-Daten sind unter %{odbl_link} (ODbL) lizenziert. odbl: Open Data Commons Open Database-Lizenz @@ -2298,17 +2351,6 @@ de: other: title: Andere Quellen description: Zusätzliche Quellen sind im OpenStreetMap-Wiki gelistet - options: Optionen - format: 'Format:' - scale: Maßstab - max: max. - image_size: 'Bildgröße:' - zoom: Zoom - add_marker: Markierung zur Karte hinzufügen - latitude: 'Breitengrad:' - longitude: 'Längengrad:' - output: Ausgabe - paste_html: HTML zur Einbettung in eine Webseite kopieren export_button: Export fixthemap: title: Ein Problem melden / Die Karte korrigieren @@ -2319,8 +2361,17 @@ de: explanation_html: |- Falls du bei unseren Kartendaten ein Problem bemerkt hast wie das Fehlen einer Straße oder deiner Adresse, ist der beste Weg zum Weitermachen der Beitritt zur OpenStreetMap-Gemeinschaft und das Beheben der Daten durch dich selbst. + add_a_note: + instructions_1_html: |- + Klicke einfach auf %{note_icon} oder das gleiche Symbol in der Kartenanzeige. + Dadurch wird der Karte eine Markierung hinzugefügt, die du durch Ziehen verschieben kannst. Füge deine Nachricht hinzu und klicke dann auf Speichern. Andere Mapper werden sich dann um die Untersuchung kümmern. other_concerns: title: Andere Anliegen + concerns_html: "Wenn du Bedenken hinsichtlich der Verwendung unserer Daten + oder der Inhalte hast, konsultiere bitte unsere Seite \n%{copyright_link} + für weitere rechtliche Informationen oder wende dich an die entsprechende + %{working_group_link}." + copyright: Copyright-Seite working_group: OSMF-Arbeitsgruppe help: title: Hilfe erhalten @@ -2368,6 +2419,9 @@ de: Nutzung im Browser verfügbar. desktop_application_html: Du kannst Potlatch von %{download_link} weiterhin verwenden. + download: Herunterladen der Desktop-Anwendung für Mac und Windows + id_editor_html: Alternativ kannst du deinen Standardeditor auf iD einstellen, + der wie zuvor Potlatch in deinem Webbrowser ausgeführt wird. %{change_preferences_link}. change_preferences: Einstellungen hier ändern any_questions: title: Fragen? @@ -2400,67 +2454,83 @@ de: primary: Bundesstraße secondary: Landes-, Kreisstraße unclassified: Straße + pedestrian: Fußgängerzone track: Wald-, Feldweg bridleway: Reitweg cycleway: Radweg cycleway_national: Nationaler Radweg cycleway_regional: Regionaler Radweg cycleway_local: Lokaler Radweg + cycleway_mtb: Mountainbike-Route footway: Fußweg rail: Eisenbahn + train: Zug subway: U-Bahn - tram: - - Stadtbahn - - Straßenbahn - cable: - - Seilbahn - - Sessellift - runway: - - Start- und Landebahn - - Rollbahn - apron: - - Flughafenvorfeld - - Terminal + ferry: Fähre + light_rail: Stadtbahn + tram: Straßenbahn + trolleybus: Oberleitungsbus + bus: Bus + cable_car: Seilbahn + chair_lift: Sessellift + runway: Start- und Landebahn + taxiway: Rollbahn + apron: Flughafenvorfeld admin: Landesgrenzen, sonstige Grenzen + capital: Hauptstadt + city: Stadt + orchard: Obstplantage + vineyard: Weinberg forest: Wald wood: Wald + farmland: Ackerland + grass: Gras + meadow: Wiese + bare_rock: Nackter Fels + sand: Sand golf: Golfplatz park: Park + common: öffentliche Grünfläche (brit.) + built_up: Bebautes Gebiet resident: Wohngebiet - common: - - öffentliche Grünfläche (brit.) - - Wiese - - Garten retail: Einkaufszentrum industrial: Industriegebiet commercial: Gewerbegebiet heathland: Heide - lake: - - See - - Stausee + scrubland: Buschland + lake: See + reservoir: Reservoir + intermittent_water: Intermittierender Gewässer + glacier: Gletscher + reef: Riff + wetland: Feuchtgebiet farm: Landwirtschaft brownfield: Brachfläche cemetery: Friedhof allotments: Kleingartenanlage pitch: Spielfeld centre: Sportzentrum + beach: Strand reserve: Naturschutzgebiet military: Militärgebiet - school: - - Schule - - Universität + school: Schule, Universität + university: Universität + hospital: Krankenhaus building: Bedeutendes Gebäude station: Bahnhof - summit: - - Gipfel - - Bergspitze + summit: Gipfel + peak: Gipfel tunnel: Gestrichelter Rand = Tunnel bridge: Schwarzer Rand = Brücke private: Privater Zugang destination: Nur für Anrainer construction: Straßen im Bau + bus_stop: Bushaltestelle + stop: Stop bicycle_shop: Fahrradladen + bicycle_rental: Fahrradverleih bicycle_parking: Fahrradparkplatz + bicycle_parking_small: Kleiner Fahrradabstellplatz toilets: Toiletten welcome: title: Willkommen! @@ -2473,19 +2543,37 @@ de: %{real_and_current} sind. Hier findest Du Millionen von Gebäuden, Straßen und anderen Details über Orte. Du kannst diejenigen Merkmale kartieren, die für Dich interessant sind. + real_and_current: real und aktuell + off_the_map_html: Was es %{doesnt} enthält, sind Meinungsdaten wie Bewertungen, + historische oder hypothetische Merkmale und Daten aus urheberrechtlich geschützten + Quellen. Kopiere nicht von Online- oder Papierkarten, es sei denn, du haben + eine Sondergenehmigung. + doesnt: nicht basic_terms: title: Grundbegriffe fürs Mapping paragraph_1: OpenStreetMap nutzt ein paar spezifische Begriffe. Hier sind ein paar davon, die nützlich sein dürften. + an_editor_html: Ein %{editor} ist ein Programm oder eine Website, mit der + du die Karte bearbeiten kannst. + a_node_html: Ein %{node} ist ein Punkt auf der Karte, wie ein einzelnes Restaurant + oder ein Baum. + a_way_html: Ein %{way} ist eine Linie oder Fläche, wie eine Straße, ein Bach, + ein See oder ein Gebäude. + a_tag_html: Ein %{tag} ist ein Datenstück über einen Knoten oder Weg, etwa + der Name eines Restaurants oder die Geschwindigkeitsbegrenzung einer Straße. editor: Bearbeiter node: Knoten way: Weg tag: Etikett rules: title: Regeln! + para_1_html: |- + OpenStreetMap hat nur wenige formale Regeln, aber wir erwarten von allen Teilnehmern, dass sie mit der Community zusammenarbeiten und kommunizieren. Wenn du andere Aktivitäten als die manuelle Bearbeitung in Betracht ziehst, lies und befolge bitte die Richtlinien zu + %{imports_link} und %{automated_edits_link}. imports: Importe automated_edits: Automatisierte Bearbeitungen start_mapping: Beginne mit dem Bearbeiten der Karte + continue_authorization: Autorisierung fortsetzen add_a_note: title: Keine Zeit? Dann füge einen Hinweis ein! para_1: Falls du nur eine Kleinigkeit korrigieren möchtest und dir die Zeit @@ -2515,6 +2603,9 @@ de: list_text: 'Folgende Gemeinschaften sind offiziell als lokale Verbände eingetragen:' other_groups: title: Andere Gruppen + other_groups_html: |- + Es besteht keine Notwendigkeit, eine Gruppe im gleichen Umfang wie die Local Chapters offiziell zu gründen. + Tatsächlich existieren viele Gruppen sehr erfolgreich als informelle Zusammenkunft von Menschen oder als Community-Gruppe. Jeder kann diese gründen oder beitreten. Lies mehr im %{communities_wiki_link}. communities_wiki: Community-Wiki-Seite traces: visibility: @@ -2646,6 +2737,7 @@ de: oauth1_settings: OAuth 1-Einstellungen oauth2_applications: OAuth 2-Anwendungen oauth2_authorizations: OAuth 2-Berechtigungen + muted_users: Stummgeschaltete Benutzer oauth: authorize: title: Zugriff auf dein Benutzerkonto autorisieren @@ -2684,6 +2776,7 @@ de: read_gpx: Private GPS-Tracks lesen write_gpx: GPS-Tracks hochladen write_notes: Notizen bearbeiten + write_redactions: Kartendaten redigieren read_email: Lesen der Benutzer-E-Mail-Adresse skip_authorization: Antrag automatisch genehmigen oauth_clients: @@ -2709,7 +2802,7 @@ de: list_tokens: 'Die folgenden Token wurde an Anwendungen in Ihrem Namen vergeben:' application: Anwendungsname issued_at: Ausgestellt am - revoke: Widerrufen! + revoke: Aufheben! my_apps: Meine Client-Anwendungen no_apps_html: Wenn du mit einer Anwendung den %{oauth}-Standard verwenden möchtest, musst du sie hier registrieren. @@ -2809,9 +2902,9 @@ de: title: Bedingungen heading: Bedingungen heading_ct: Bedingungen für Mitwirkende - read and accept with tou: Lese bitte die Bedingungen für Mitwirkende, wie auch - unsere Nutzngsbedingungen und bestätige dies jeweils mit einem Häkchen und - klicke dann auf den "Weiter"-Knopf. + read and accept with tou: Lies bitte die Bedingungen für Mitwirkende und die + Nutzungsbedingungen, bestätige dies jeweils mit einem Häkchen und klicke dann + auf den "Weiter"-Knopf. contributor_terms_explain: Diese Vereinbarung definiert die Bedingungen für deine bestehenden und zukünftigen Beiträge. read_ct: Ich habe obige Bedingungen für Mitwirkende gelesen und stimme ihnen @@ -2863,6 +2956,8 @@ de: my_dashboard: Meine Übersichtsseite blocks on me: Erhaltene Sperren blocks by me: Vergebene Sperren + create_mute: Diesen Benutzer stummschalten + destroy_mute: Hebe die Stummschaltung dieses Benutzers auf edit_profile: Profil bearbeiten send message: Nachricht senden diary: Blog @@ -2883,14 +2978,18 @@ de: role: administrator: Dieser Benutzer ist ein Administrator moderator: Dieser Benutzer ist ein Moderator + importer: Dieser Benutzer ist ein Importeur grant: administrator: Administrator-Rechte vergeben moderator: Moderator-Rechte vergeben + importer: Importeurzugriff genehmigne revoke: administrator: Administrator-Rechte entziehen moderator: Moderator-Rechte entziehen + importer: Importeurzugriff aufheben block_history: Aktive Sperren moderator_history: Vergebene Sperren + revoke_all_blocks: Alle Sperren aufheben comments: Kommentare create_block: Benutzer sperren activate_user: Benutzer aktivieren @@ -3009,6 +3108,16 @@ de: confirm: Bist du sicher, dass du diese Sperre aufheben möchtest? revoke: Aufheben flash: Die Sperre wurde aufgehoben. + 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. @@ -3068,6 +3177,31 @@ de: showing_page: Seite %{page} next: Nächste » previous: « Vorige + user_mutes: + index: + title: Stummgeschaltete Benutzer + my_muted_users: Meine stummgeschalteten Benutzer + you_have_muted_n_users: + one: Du hast %{count} Benutzer stummgeschaltet + other: Du hast %{count} Benutzer stummgeschaltet + user_mute_explainer: Nachrichten stummgeschalteter Benutzer werden in einen + separaten Posteingang verschoben und du erhältst keine E-Mail-Benachrichtigungen. + user_mute_admins_and_moderators: Du kannst Administratoren und Moderatoren stummschalten, + ihre Nachrichten werden jedoch nicht stummgeschaltet. + table: + thead: + muted_user: Stummgeschalteter Benutzer + actions: Aktionen + tbody: + unmute: Stummschaltung aufheben + send_message: Nachricht senden + create: + notice: Du hast %{name} stummgeschaltet. + error: '%{name} konnte nicht stummgeschaltet werden. %{full_message}.' + destroy: + notice: Du hast die Stummschaltung von %{name} aufgehoben. + error: Die Stummschaltung des Benutzers konnte nicht aufgehoben werden. Bitte + versuche es erneut. notes: index: title: Hinweise/Fehler erstellt oder kommentiert von %{user} @@ -3104,6 +3238,7 @@ de: reactivate: Reaktivieren comment_and_resolve: Kommentieren & Erledigen comment: Kommentieren + log_in_to_comment: Melden dich an, um diesen Hinweis zu kommentieren report_link_html: Wenn diese Notiz sensible Informationen enthält, die entfernt werden müssen, kannst du %{link}. other_problems_resolve: Für alle anderen Probleme mit dem Hinweis, erledige @@ -3198,6 +3333,7 @@ de: map_data_zoom_in_tooltip: Vergrößere die Karte, um die Daten zu sehen. queryfeature_tooltip: Objektabfrage queryfeature_disabled_tooltip: Für Objektabfrage vergrößern + embed_html_disabled: Für diese Kartenebene ist keine HTML-Einbettung verfügbar changesets: show: comment: Kommentieren diff --git a/config/locales/diq.yml b/config/locales/diq.yml index 0081b009a..545c5ac43 100644 --- a/config/locales/diq.yml +++ b/config/locales/diq.yml @@ -805,8 +805,9 @@ diq: messages: inbox: title: Ameyan - my_inbox: Amayenê mı + messages_table: from: Rıştoğ + to: Gırewtoğ subject: Mewzu date: Tarix message_summary: @@ -816,9 +817,6 @@ diq: title: Mesac bırışê outbox: title: Şıyenan - to: Gırewtoğ - subject: Mewzu - date: Tarix show: title: Mesaci bıwane reply_button: Cewab bıde @@ -826,13 +824,15 @@ diq: back: Peyser sent_message_summary: destroy_button: Bestere + heading: + my_inbox: Amayenê mı passwords: - lost_password: + new: title: Parolaya vınibyayi heading: To parola ke xo vira? email address: 'Adresa e-postey:' new password button: Parola reset ke - reset_password: + edit: title: Parola reset ke heading: Parolay %{user} reset ke reset: Parola reset ke @@ -873,10 +873,7 @@ diq: user_page_link: pela karberi export: title: Teberdayış - area_to_export: Cayo ke cıra bıvciyo manually_select: Be desti ra yew cayo bin weçıne - format_to_export: Formatê teberi ra eştışi - osm_xml_data: OpenStreetMap XML Data licence: Lisans too_large: planet: @@ -885,16 +882,6 @@ diq: title: Overpass API other: title: Çemê bini - options: Weçinegi - format: Format - scale: Sence - max: maks - image_size: Gırdiya Resimi - zoom: Nezdı fi - add_marker: Xeriter rê yew nışan berz - latitude: 'Verıniye:' - longitude: 'Derganiye:' - output: Vıcyaen export_button: Teberdayış sidebar: search_results: Peyniya cıgeyrayışi @@ -910,25 +897,19 @@ diq: track: Raya Herın bridleway: Raya Ancınıştan cycleway: Raya Bisiklet - apron: - 1: terminal forest: Mêşe wood: Meşe golf: Saxay Golfi park: Perk - common: - - Çimen - lake: - - Gol + common: Çimen + lake: Gol farm: Cıtinin cemetery: Mezlaser allotments: Bostan - school: - - Wendxane - - Uniwersita - summit: - - Sersıq - - Ko + school: Wendxane + university: Uniwersita + summit: Sersıq + peak: Ko welcome: title: Xeyr amey! traces: diff --git a/config/locales/dsb.yml b/config/locales/dsb.yml index 6c054f338..2d319c4f2 100644 --- a/config/locales/dsb.yml +++ b/config/locales/dsb.yml @@ -990,7 +990,6 @@ dsb: messages: inbox: title: Post - my_inbox: Mój post messages: MaÅ¡ %{new_messages} a %{old_messages} new_messages: few: '%{count} nowe powěsći' @@ -1002,12 +1001,14 @@ dsb: one: '%{count} stara powěsć' two: '%{count} starej powěsći' other: '%{count} starych powěsćow' - from: Wót - subject: Temowe nadpismo - date: Datum 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ś @@ -1032,9 +1033,6 @@ dsb: 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ł - to: Komu - subject: Temowe nadpismo - date: Datum 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 @@ -1052,28 +1050,32 @@ dsb: 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 passwords: - lost_password: + new: title: Zabyte gronidło heading: Sy gronidło zabył? email address: 'E-mailowa adresa:' new password button: Gronidło slědk stajiś help_text: Zapódaj e-mailowu adresu, kótaruž sy za registrěrowanje wužył, pósćelomy wótkaz na nju, kótaryž móžoÅ¡ wužywaś, aby swójo gronidło slědk stajił. + create: notice email on way: Bóžko sy jo zabył :-(, ale e-mail jo k tebje ducy, tak až móžoÅ¡ jo skóro slědk stajiś. notice email cannot find: Bóžko ta e-mailowa adresa njejo se namakała. - reset_password: + edit: title: Gronidło slědk stajiś heading: Gronidło za %{user} slědk stajiś reset: Gronidło slědk stajiś - flash changed: Twójo gronidło jo se změniło. flash token bad: Njejo móžno było ten token namakaś, pÅ¡osym pśekontrolěruj URL. + update: + flash changed: Twójo gronidło jo se změniło. profiles: edit: image: 'Wobraz:' @@ -1173,12 +1175,7 @@ dsb: su trěbne za toś tu funkciju. export: title: Eksportěrowaś - area_to_export: Wurězk za eksport manually_select: Drugi wurězk manuelnje wubraś - format_to_export: Format za eksport - osm_xml_data: XML-daty OpenStreetMap - map_image: Kórtowy wobraz (pokazujo standardnu rowninu) - embeddable_html: Zasajźujobny HTML licence: Licenca too_large: advice: 'Jolic górni eksport se njeraźi, pÅ¡osym rozwaž, lěc wužywaÅ¡ jadnu @@ -1201,17 +1198,6 @@ dsb: other: title: Druge žrědła description: Pśidatne žrědła nalicone wikiju OpenStreetMap - options: Opcije - format: 'Format:' - scale: Měritko - max: maks. - image_size: 'Wobrazowa wjelikosć:' - zoom: Skalěrowanje - add_marker: Kórśe marku pśidaś - latitude: 'Å yrina:' - longitude: 'Dlinina:' - output: Wudaśe - paste_html: HTML kopěrowaś, aby se zasajźił do websedła export_button: Eksport fixthemap: title: Problem k wěsći daś / Kórtu pópÅ¡awiś @@ -1265,34 +1251,24 @@ dsb: footway: Drožka rail: Zeleznica subway: Pódzemska - tram: - - Měsćańska zeleznica - - elektriska - cable: - - Kablowa elektriska - - sedłowy lift - runway: - - Pśizemjeńska cera - - lětadłowa cera - apron: - - Pśedpólo lětanišća - - terminal + cable_car: Kablowa elektriska + chair_lift: sedłowy lift + runway: Pśizemjeńska cera + taxiway: lětadłowa cera + apron: Pśedpólo lětanišća admin: Zastojnstwowa granica forest: Góla wood: Lěs golf: Golfowišćo park: Park + common: PowÅ¡ykny resident: Bydleński wobcerk - common: - - PowÅ¡ykny - - łuka retail: Nakupowanišćo industrial: Industrijowy wobcerk commercial: Źěłarstwowy wobcerk heathland: Wrjosate strony - lake: - - Jazor - - gaśeński jazor + lake: Jazor + reservoir: gaśeński jazor farm: Farma brownfield: Industrijowe lědo cemetery: Kjarchob @@ -1301,14 +1277,12 @@ dsb: centre: Sportowy centrum reserve: Strony šćitaneje pśirody military: Militarny wobcerk - school: - - Å ula - - uniwersita + school: Å ula + university: uniwersita building: Pśesegajuce twarjenje station: Dwórnišćo, zeleznicowa stacija - summit: - - Wjerch - - Å¡pica + summit: Wjerch + peak: Å¡pica tunnel: Smužkowane wobcerjenje = tunel bridge: Carne wobcerjenje = móst private: Priwatny pśistup diff --git a/config/locales/el.yml b/config/locales/el.yml index ea8f011e9..eceb4cc1b 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -80,6 +80,11 @@ el: messages: invalid_email_address: δεν φαίνεται να είναι έγκυρη διεύθυνση ηλ. ταχυδρομείου email_address_not_routable: δεν είναι δρομολογητέο + display_name_is_user_n: δεν μπορεί να είναι user_n εκτός αν το n είναι το + αναγνωριστικό χρήστη σας + models: + user_mute: + is_already_muted: είναι ήδη σε σίγαση models: acl: Λίστα ελέγχου πρόσβασης changeset: Ομάδα αλλαγών @@ -201,7 +206,7 @@ el: γι' αυτό προσπαθήστε να χρησιμοποιήσετε απλούς και κατανοητούς όρους. needs_view: Πρέπει ο χρήστης να συνδεθεί προτού εκκαθαριστεί αυτή η φραγή; user: - new_email: (να μην εμφανίζεται ποτέ δημόσια) + new_email: (δεν εμφανίζεται ποτέ δημόσια) datetime: distance_in_words_ago: about_x_hours: @@ -499,7 +504,7 @@ el: area: Περιοχή index: title: Αλλαγές - title_user: Αλλαγές από τον %{user} + title_user: Αλλαγές από %{user} title_user_link_html: Ομάδες αλλαγών από %{user_link} title_friend: Αλλαγές από τους φίλους μου title_nearby: Αλλαγές από κοντινούς χρήστες @@ -558,7 +563,7 @@ el: title: Ημερολόγια χρηστών title_friends: Ημερολόγια φίλων title_nearby: Ημερολόγια κοντινών χρηστών - user_title: Ημερολόγιο του/των %{user} + user_title: Ημερολόγιο του χρήστη %{user} in_language_title: Καταχωρήσεις ημερολογίων στα %{language} new: Νέα καταχώρηση ημερολογίου new_title: Σύνταξη νέας καταχώρησης στο ημερολόγιό μου @@ -571,8 +576,8 @@ el: title: Επεξεργασία καταχώρισης ημερολογίου marker_text: Τοποθεσία καταχώρησης ημερολογίου show: - title: το ημερολόγιο του %{user} | %{title} - user_title: το ημερολόγιο του %{user} + title: Ημερολόγιο του χρήστη %{user} | %{title} + user_title: Ημερολόγιο του χρήστη %{user} leave_a_comment: Αφήστε σχόλιο login_to_leave_a_comment_html: '%{login_link} για να αφήσετε ένα σχόλιο' login: Συνδεθείτε @@ -583,7 +588,8 @@ el: %{id}. Είναι πιθανό να υπάρχουν ορθογραφικά λάθη ή να είναι λάθος ο σύνδεσμος μέσω του οποίου φτάσατε σε αυτήν την σελίδα. diary_entry: - posted_by_html: Δημοσιεύτηκε από τον %{link_user} στις %{created} στα %{language_link}. + posted_by_html: Δημοσιεύτηκε από τον χρήστη %{link_user} στις %{created} στα + %{language_link}. updated_at_html: Τελευταία ενημέρωση στις %{updated}. comment_link: Σχολιάστε την καταχώρηση reply_link: Αποστολή μηνύματος στον συγγραφέα @@ -597,7 +603,7 @@ el: confirm: Επιβεβαίωση report: Αναφορά καταχώρησης diary_comment: - comment_from_html: Σχόλιο από τον %{link_user} στις %{comment_created_at} + comment_from_html: Σχόλιο από τον χρήστη %{link_user} στις %{comment_created_at} hide_link: Απόκρυψη σχολίου unhide_link: Επανεμφάνιση σχολίου confirm: Επιβεβαίωση @@ -618,9 +624,9 @@ el: title: Καταχωρήσεις ημερολογίου OpenStreetMap description: Πρόσφατες καταχωρήσεις ημερολογίου από χρήστες του OpenStreetMap comments: - title: Προστέθηκαν σχόλια ημερολογίου από τον χρήστη %{user} + title: Σχόλια ημερολογίου που προστέθηκαν από τον χρήστη %{user} heading: Σχόλια Ημερολογίου %{user} - subheading_html: Προστέθηκαν σχόλια ημερολογίου από τον χρήστη %{user} + subheading_html: Σχόλια ημερολογίου που προστέθηκαν από τον χρήστη %{user} no_comments: Χωρίς σχόλια ημερολογίου post: Καταχώρηση when: Πότε @@ -1513,9 +1519,10 @@ el: one: '%{count} αναφορά' other: '%{count} αναφορές' no_reports: Καμία αναφορά - report_created_at: Αναφέρθηκε για πρώτη φορά στις %{datetime} - last_resolved_at: Επιλύθηκε για τελευταία φορά στις %{datetime} - last_updated_at: Ενημερώθηκε για τελευταία φορά στις %{datetime} από τον %{displayname} + report_created_at_html: Αναφέρθηκε για πρώτη φορά στις %{datetime} + last_resolved_at_html: Επιλύθηκε για τελευταία φορά στις %{datetime} + last_updated_at_html: Ενημερώθηκε για τελευταία φορά στις %{datetime} από τον + %{displayname} resolve: Επίλυση ignore: Αγνόηση reopen: Ξανάνοιγμα @@ -1673,6 +1680,11 @@ el: subject: '[OpenStreetMap] Η εισαγωγή GPX απέτυχε' gpx_success: hi: Γεια σας %{to_user}, + loaded: + one: φορτώθηκε επιτυχώς με %{trace_points} από πιθανό %{count} σημείο. + other: φορτώθηκε επιτυχώς με %{trace_points} από πιθανά %{count} σημεία. + all_your_traces_html: Όλα τα ίχνη GPX που ανεβάσατε με επιτυχία μπορούν να βρεθούν + στη διεύθυνση %{url}. subject: '[OpenStreetMap] Η εισαγωγή GPX πέτυχε' signup_confirm: subject: '[OpenStreetMap] Καλώς ήλθατε στο OpenStreetMap' @@ -1806,8 +1818,6 @@ el: messages: inbox: title: Εισερχόμενα - my_inbox: Τα εισερχόμενα μου - my_outbox: Τα εξερχόμενα μου messages: Έχετε %{new_messages} και %{old_messages} new_messages: one: '%{count} νέο μήνυμα' @@ -1815,17 +1825,21 @@ el: old_messages: one: '%{count} παλιό μήνυμα' other: '%{count} παλιά μηνύματα' - from: Από - subject: Θέμα - date: Ημερομηνία no_messages_yet_html: Δεν έχετε μηνύματα ακόμα. Γιατί δεν έρχεστε σε επαφή με μερικά από τα %{people_mapping_nearby_link}? people_mapping_nearby: άτομα που χαρτογραφούν κοντά σας + messages_table: + from: Από + to: Προς + subject: Θέμα + date: Ημερομηνία + actions: Ενέργειες message_summary: unread_button: Σήμανση ως αδιάβαστο read_button: Σήμανση ως διαβασμένο reply_button: Απάντηση destroy_button: Διαγραφή + unmute_button: Μετακίνηση στα Εισερχόμενα new: title: Αποστολή μηνύματος send_message_to_html: Αποστολή νέου μηνύματος προς %{name} @@ -1840,17 +1854,18 @@ el: body: Λυπάμαι δεν υπάρχει μήνυμα με αυτό το αναγνωριστικό. outbox: title: Εξερχόμενα - my_inbox: Τα εισερχόμενα μου - my_outbox: Τα εξερχόμενα μου + actions: Ενέργειες messages: one: Έχετε %{count} απεσταλμένο μήνυμα other: Έχετε %{count} απεσταλμένα μηνύματα - to: Προς - subject: Θέμα - date: Ημερομηνία no_sent_messages_html: Δεν έχετε στείλει κανένα μήνυμα ακόμα. Γιατί δεν έρχεστε σε επαφή με μερικά %{people_mapping_nearby_link}? people_mapping_nearby: άτομα που χαρτογραφούν κοντά σας + muted: + title: Μηνύματα σε Σίγαση + messages: + one: '%{count} μήνυμα σε σίγαση' + other: Έχετε %{count} μηνύματα σε σίγαση reply: wrong_user: Έχετε συνδεθεί ως «%{user}» αλλά το μήνυμα που ζητάτε να απαντήσετε δεν έχει σταλεί σε αυτόν το χρήστη. Παρακαλούμε συνδεθείτε με το σωστό όνομα @@ -1866,13 +1881,20 @@ el: χρήστη ώστε να μπορέσετε να το διαβάσετε. sent_message_summary: destroy_button: Διαγραφή + heading: + my_inbox: Τα εισερχόμενα μου + my_outbox: Τα εξερχόμενα μου + muted_messages: Μηνύματα σε Σίγαση mark: as_read: Το μήνυμα σημειώθηκε ως αναγνωσμένο as_unread: Το μήνυμα σημειώθηκε ως μη αναγνωσμένο + unmute: + notice: Το μήνυμα μετακινήθηκε στα Εισερχόμενα + error: Δεν ήταν δυνατή η μετακίνηση του μηνύματος στα Εισερχόμενα. destroy: destroyed: Το μήνυμα διαγράφηκε passwords: - lost_password: + new: title: Χάσατε το συνθηματικό σας heading: Ξεχάσατε το συνθηματικό σας; email address: 'Διεύθυνση ηλεκτρονικού ταχυδρομείου:' @@ -1880,16 +1902,19 @@ el: help_text: Πληκτρολογήστε τη διεύθυνση ηλεκτρονικού ταχυδρομείου που χρησιμοποιήσατε για να εγγραφείτε. Θα στείλουμε έναν σύνδεσμο τον οποίον μπορείτε να χρησιμοποιήσετε για να επαναφέρετε το συνθηματικό σας. + create: notice email on way: Λυπούμαστε που το χάσατε :-(, αλλά ένα μήνυμα ηλεκτρονικού ταχυδρομείου εστάλη, ώστε να μπορέσετε να το επαναφέρετε σύντομα. notice email cannot find: Λυπούμαστε, δεν βρέθηκε αυτή η διεύθυνση ηλεκτρονικού ταχυδρομείου. - reset_password: + edit: title: Επαναφορά συνθηματικού heading: Επαναφορά συνθηματικού για τον χρήστη %{user} reset: Επαναφορά συνθηματικού - flash changed: Το συνθηματικό σας άλλαξε! flash token bad: Δεν βρήκατε αυτό το κομμάτι, μήπως πρέπει να ελέγξετε το URL; + update: + flash changed: Το συνθηματικό σας άλλαξε! + flash token bad: Δεν βρέθηκε αυτό το token, ελέγξτε ίσως τη διεύθυνση URL; preferences: show: title: Οι προτιμήσεις μου @@ -1982,9 +2007,9 @@ el: support: υποστήριξη shared: markdown_help: - heading_html: Αναλύθηκε με %{kramdown_link} + heading_html: Αναλυμμένο με %{kramdown_link} headings: Επικεφαλίδες - heading: Καφαλίδα + heading: Κεφαλίδα subheading: Υποκεφαλίδα unordered: Αταξινόμητη λίστα ordered: Ταξινομημένη λίστα @@ -1995,6 +2020,7 @@ el: image: Εικόνα alt: Εναλ. κείμενο url: URL + codeblock: Μπλοκ κώδικα richtext_field: edit: Επεξεργασία preview: Προεπισκόπηση @@ -2039,6 +2065,8 @@ el: Παρακαλούμε %{contact_the_osmf_link} εάν έχετε ερωτήσεις για αδειοδότηση, πνευματικά δικαιώματα ή άλλα νομικά. legal_2_1_contact_the_osmf: επικοινωνήστε με το OSMF + legal_2_2_html: Το OpenStreetMap, το λογότυπο με τον μεγεθυντικό φακό και το + State of the Map είναι %{registered_trademarks_link}. legal_2_2_registered_trademarks: εγγεγραμμένα εμπορικά σήματα του OSMF partners_title: Συνεργάτες copyright: @@ -2063,6 +2091,8 @@ el: introduction_1_odc_odbl: Open Data Commons Άδεια Ανοικτής Βάσης Δεδομένων introduction_1_osm_foundation: Ίδρυμα OpenStreetMap introduction_2_legal_code: νομικός κώδικας + introduction_3_html: Η τεκμηρίωση μας αδειοδοτείται βάσει της άδειας %{creative_commons_link} + (CC BY-SA 2.0). introduction_3_creative_commons: Creative Commons Αναφορά Δημιουργού-Παρόμοια Διανομή 2.0 credit_title_html: Πως να κάνετε αναφορά δημιουργού προς το OpenStreetMap @@ -2091,6 +2121,9 @@ el: contributors_intro_html: 'Οι συνεισφέροντες μας είναι χιλιάδες άτομα. Επίσης έχουμε περιλάβει δεδομένα ανοικτής άδειας από εθνικές υπηρεσίες χαρτογράφησης και άλλες πηγές, μεταξύ αυτών:' + contributors_at_credit_html: |- + %{austria}: Περιέχει δεδομένα από %{stadt_wien_link} (under %{cc_by_link}), %{land_vorarlberg_link} + και Land Tirol (under %{cc_by_at_with_amendments_link}). contributors_at_austria: Αυστρία contributors_at_stadt_wien: Stadt Wien contributors_at_cc_by: CC BY @@ -2146,6 +2179,9 @@ el: %{united_kingdom}: Περιέχει δεδομένα Χαρτογραφικής Υπηρεσίας © Crown πνευματικά δικαιώματα και δικαιώματα βάσης δεδομένων 2010-2023. contributors_gb_united_kingdom: Ηνωμένο Βασίλειο + contributors_2_html: Για περισσότερες λεπτομέρειες για αυτές, και άλλες πηγές + που έχουν χρησιμοποιηθεί για να βοηθήσουν στην βελτίωση του OpenStreetMap, + παρακαλούμε δείτε την %{contributors_page_link} στο OpenStreetMap Wiki. contributors_2_contributors_page: Σελίδα συνεισφερόντων contributors_footer_2_html: Η συμπερίληψη δεδομένων στο OpenStreetMap δεν συνεπάγεται ότι ο αρχικός πάροχος δεδομένων εγκρίνει το OpenStreetMap, παρέχει @@ -2162,6 +2198,10 @@ el: infringement_2_1_takedown_procedure: διαδικασία αφαίρεσης infringement_2_1_online_filing_page: ηλεκτρονική φόρμα trademarks_title: Εμπορικά σήματα + trademarks_1_1_html: Το OpenStreetMap, το λογότυπο με τον μεγεθυντικό φακό + και το State of the Map είναι σήματα κατατεθέντα του Ιδρύματος OpenStreetMap. + Αν έχετε ερωτήσεις σχετικά με την χρήση σας αυτών των σημάτων, παρακαλούμε + δείτε την %{trademark_policy_link}. trademarks_1_1_trademark_policy: Πολιτική Εμπορικών Σημάτων index: js_1: Είτε χρησιμοποιείτε πρόγραμμα περιήγησης που δεν υποστηρίζει JavaScript @@ -2186,12 +2226,7 @@ el: που είναι απαραίτητο για αυτήν την λειτουργία. export: title: Εξαγωγή - area_to_export: Περιοχή προς εξαγωγή manually_select: Χειροκίνητη επιλογή διαφορετικής περιοχής - format_to_export: Μορφή προς εξαγωγή - osm_xml_data: Δεδομένα OpenStreetMap σε μορφή XML - map_image: Εικόνα χάρτη (δείχνει τυπικό στρώμα) - embeddable_html: Ενσωματούμενη HTML licence: Άδεια licence_details_html: Τα δεδομένα OpenStreetMap αδειοδοτούνται με %{odbl_link} (ODbL). @@ -2217,17 +2252,6 @@ el: other: title: Άλλες πηγές description: Επιπλέον πηγές απαριθμούνται στο wiki του OpenStreetMap - options: Επιλογές - format: Μορφοποίηση - scale: Κλίμακα - max: μέγιστο - image_size: Μέγεθος εικόνας - zoom: Εστίαση - add_marker: Προσθέστε ένα δείκτη στο χάρτη - latitude: 'Γεω. Πλ:' - longitude: 'Γεω. Μη.:' - output: Απόδοση - paste_html: Επικόλληση HTML για ενσωμάτωση στην ιστοσελίδα export_button: Εξαγωγή fixthemap: title: Αναφέρετε πρόβλημα / Διορθώστε τον χάρτη @@ -2328,67 +2352,83 @@ el: primary: Κύρια Οδός secondary: Δευτερεύουσα Οδός unclassified: Αταξινόμητη Οδός + pedestrian: Πεζόδρομος track: Αγροτικός / Δασικός δρόμος bridleway: Μονοπάτι για Άλογα cycleway: Ποδηλατόδρομος cycleway_national: Εθνικός ποδηλατόδρομος cycleway_regional: Περιφερειακός ποδηλατόδρομος cycleway_local: Τοπικός ποδηλατόδρομος + cycleway_mtb: Ορεινή ποδηλατική διαδρομή footway: Μονοπάτι rail: Σιδηρόδρομος + train: Τρένο subway: Υπόγειος Σιδηρόδρομος - tram: - - Προαστιακός - - τραμ - cable: - - Τελεφερίκ - - τελεφερίκ με καθίσματα - runway: - - Διάδρομος Αεροδρομίου - - τροχόδρομος - apron: - - Πίστα προσγείωσης αεροδρομίου - - τερματικός σταθμός + ferry: Πορθμείο + light_rail: Ελαφρύς σιδηρόδρομος + tram: Τραμ + trolleybus: Τρόλεϊ + bus: Λεωφορείο + cable_car: Τελεφερίκ + chair_lift: Αναβατήρας + runway: Διάδρομος Αεροδρομίου + taxiway: Τροχόδρομος + apron: Πίστα προσγείωσης αεροδρομίου admin: Διοικητικό όριο + capital: Πρωτεύουσα + city: Πόλη + orchard: Περιβόλι + vineyard: Αμπελώνας forest: Δάσος wood: Φυσικό δάσος + farmland: Καλλιεργήσιμη έκταση + grass: Γρασίδι + meadow: Λιβάδι + bare_rock: Γυμνός βράχος + sand: Άμμος golf: Γήπεδο γκολφ park: Πάρκο + common: Κοινόχρηστο + built_up: Δομημένη περιοχή resident: Κατοικημένη περιοχή - common: - - Κοινόχρηστο - - λιβάδι - - κήπος retail: Περιοχή λιανικού εμπορίου industrial: Βιομηχανική περιοχή commercial: Εμπορική περιοχή heathland: Φρυγανότοπος - lake: - - Λίμνη - - ταμιευτήρας + scrubland: Θαμνότοπος + lake: Λίμνη + reservoir: Ταμιευτήρας + intermittent_water: Σώμα νερού με διαλείπουσα ροή + glacier: Παγετώνας + reef: Ύφαλος + wetland: Έλος farm: Αγρόκτημα brownfield: Πρώην βιομηχανική περιοχή cemetery: Κοιμητήριο allotments: Παραχώρηση γης pitch: Γήπεδο αθλήματος centre: Αθλητικό κέντρο + beach: Παραλία reserve: Φυσικό καταφύγιο military: Στρατιωτική περιοχή - school: - - Σχολείο - - πανεπιστήμιο + school: Σχολείο + university: Πανεπιστήμιο + hospital: Νοσοκομείο building: Σημαντικό κτήριο station: Σιδηροδρομικός σταθμός - summit: - - Κορυφή - - κορυφή + summit: Κορυφή + peak: Κορυφή tunnel: Διακεκομμένο περίβλημα = σήραγγα bridge: Μαύρο περίβλημα = γέφυρα private: Ιδιωτική πρόσβαση destination: Πρόσβαση προορισμού construction: Δρόμοι υπό κατασκευή + bus_stop: Στάση λεωφορείου + stop: Στάση bicycle_shop: Κατάστημα ποδηλάτων + bicycle_rental: Ενοικίαση ποδηλάτων bicycle_parking: Χώρος στάθμευσης ποδηλάτων + bicycle_parking_small: Μικρό πάρκινγκ ποδηλάτων toilets: Τουαλέτες welcome: title: Καλώς ήρθατε! @@ -2434,6 +2474,7 @@ el: imports: Εισαγωγές automated_edits: Αυτοματοποιημένες Επεξεργασίες start_mapping: Ξεκινήστε τη Χαρτογράφηση + continue_authorization: Συνέχιση Εξουσιοδότησης add_a_note: title: Δεν έχετε χρόνο για χαρτογράφηση; Προσθέστε μια σημείωση! para_1: Εάν θέλετε κάτι μικρό να διορθωθεί και δεν έχετε χρόνο να εγγραφείτε @@ -2542,7 +2583,7 @@ el: my_gps_traces: Τα ίχνη GPS μου public_traces_from: Δημόσια ίχνη GPS από τον %{user} description: Προβολή πρόσφατων μεταφορτωμένων ιχνών GPS - tagged_with: χαρακτηρίστηκαν με %{tags} + tagged_with: ' με ετικέτα %{tags}' empty_title: Τίποτα εδώ ακόμα empty_upload_html: '%{upload_link} ή μάθετε περισσότερα για την ανίχνευση GPS στο %{wiki_link}.' @@ -2592,6 +2633,7 @@ el: oauth1_settings: Ρυθμίσεις OAuth 1 oauth2_applications: Εφαρμογές OAuth 2 oauth2_authorizations: Εξουσιοδοτήσεις OAuth 2 + muted_users: Χρήστες σε Σίγαση oauth: authorize: title: Επιτρέψτε την πρόσβαση στο λογαριασμό σας @@ -2631,6 +2673,7 @@ el: read_gpx: Ανάγνωση προσωπικών ιχνών GPS write_gpx: Μεταφόρτωση ιχνών GPS write_notes: Τροποποίηση σημειώσεων + write_redactions: Αφαίρεση και απόκρυψη δεδομένων χάρτη read_email: Διαβάζει τη διεύθυνση email χρήστη skip_authorization: Αυτόματη έγκριση εφαρμογής oauth_clients: @@ -2717,7 +2760,7 @@ el: oauth2_authorized_applications: index: title: Οι Εξουσιοδοτημένες Εφαρμογές μου - application: Εφαρμογές + application: Εφαρμογή permissions: Άδειες no_applications_html: Δεν έχετε εξουσιοδοτήσει ακόμη %{oauth2} εφαρμογές. application: @@ -2806,6 +2849,8 @@ el: my_dashboard: Το ταμπλό μου blocks on me: Φραγές σε Εμένα blocks by me: Φραγές από Εμένα + create_mute: Σίγαση αυτού του χρήστη + destroy_mute: Κατάργηση σίγασης αυτού του χρήστη edit_profile: Επεξεργασία προφίλ send message: Αποστολή Μηνύματος diary: Ημερολόγιο @@ -2837,6 +2882,7 @@ el: importer: Ανάκληση πρόσβασης εισαγωγέα block_history: Ενεργές Φραγές moderator_history: Φραγές που Επιβλήθηκαν + revoke_all_blocks: Ανάκληση όλων των φραγών comments: Σχόλια create_block: Φραγή αυτού του Χρήστη activate_user: Ενεργοποίηση αυτού του λογαριασμού Χρήστη @@ -2950,6 +2996,16 @@ el: confirm: Είστε σίγουρος πως επιθυμείτε να ανακαλέσετε αυτή τη φραγή; revoke: Ανακαλέστε! flash: Αυτή η φραγή έχει ανακληθεί. + 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: Ενεργό έως ότου ο χρήστης συνδεθεί. @@ -3008,11 +3064,36 @@ el: showing_page: Σελίδα %{page} next: Επόμενη » previous: « Προηγούμενη + user_mutes: + index: + title: Χρήστες σε Σίγαση + my_muted_users: Οι χρήστες μου σε σίγαση + you_have_muted_n_users: + one: Έχετε θέσει σε σίγαση %{count} χρήστη + other: Έχετε θέσει σε σίγαση %{count} χρήστες + user_mute_explainer: Τα μηνύματα των χρηστών σε σίγαση μετακινούνται σε ξεχωριστά + Εισερχόμενα και δεν θα λαμβάνετε ειδοποιήσεις μέσω email. + user_mute_admins_and_moderators: Μπορείτε να θέσετε σε σίγαση τους Διαχειριστές + και τους Συντονιστές αλλά δεν θα γίνει σίγαση των μηνυμάτων τους. + table: + thead: + muted_user: Χρήστης σε Σίγαση + actions: Ενέργειες + tbody: + unmute: Κατάργηση σίγασης + send_message: Αποστολή μηνύματος + create: + notice: Θέσατε σε σίγαση τον χρήστη %{name}. + error: Ο χρήστης %{name} δεν μπόρεσε να τεθεί σε σίγαση. %{full_message}. + destroy: + notice: Καταργήσατε τη σίγαση του χρήστη %{name}. + error: Δεν ήταν δυνατή η κατάργηση της σίγασης του χρήστη. Παρακαλούμε προσπαθήστε + ξανά. notes: index: - title: Σημειώσεις που υποβλήθηκαν ή σχολιάστηκαν από τον %{user} - heading: σημειώσεις του %{user} - subheading_html: Σημειώσεις που %{submitted} ή %{commented} από τον %{user} + title: Σημειώσεις που υποβλήθηκαν ή σχολιάστηκαν από τον χρήστη %{user} + heading: Σημειώσεις του χρήστη %{user} + subheading_html: Σημειώσεις που %{submitted} ή %{commented} από τον χρήστη %{user} subheading_submitted: υποβλήθηκε subheading_commented: σχολιάστηκε no_notes: Χωρίς σημειώσεις @@ -3044,6 +3125,7 @@ el: reactivate: Επανενεργοποίηση comment_and_resolve: Σχολιάστε και Επιλύστε comment: Σχολιάζω + log_in_to_comment: Συνδεθείτε για να σχολιάσετε σε αυτή την σημείωση report_link_html: Εάν αυτή η σημείωση περιέχει ευαίσθητες πληροφορίες που πρέπει να αφαιρεθούν, μπορείτε %{link}. other_problems_resolve: Για όλα τα άλλα προβλήματα με τη σημείωση, επιλύστε diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml index 5858dd57c..3da8d38ab 100644 --- a/config/locales/en-GB.yml +++ b/config/locales/en-GB.yml @@ -5,6 +5,7 @@ # Author: Alefar # Author: Andibing # Author: BEANS +# Author: Back ache # Author: Bjh21 # Author: Bpfhjquevaps # Author: Bruce89 @@ -507,6 +508,14 @@ en-GB: comment: Comment newer_comments: Newer Comments older_comments: Older Comments + doorkeeper: + errors: + messages: + account_selection_required: The authorisation server requires end-user account + selection + consent_required: The authorisation server requires end-user consent + interaction_required: The authorisation server requires end-user interaction + login_required: The authorisation server requires end-user authentication friendships: make_friend: heading: Add %{user} as a friend? @@ -1265,7 +1274,6 @@ en-GB: messages: inbox: title: Inbox - my_inbox: My Inbox messages: You have %{new_messages} and %{old_messages} new_messages: one: '%{count} new message' @@ -1273,12 +1281,14 @@ en-GB: old_messages: one: '%{count} old message' other: '%{count} old messages' - from: From - subject: Subject - date: Date 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 @@ -1301,9 +1311,6 @@ en-GB: messages: one: You have %{count} sent message other: You have %{count} sent messages - to: To - subject: Subject - date: Date 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 @@ -1322,28 +1329,32 @@ en-GB: order to read it. 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 passwords: - lost_password: + new: title: Lost password heading: Forgotten Password? email address: E-mail address new password button: Reset password help_text: Enter the e-mail address you used to sign up, we will send a link to it that you can use to reset your password. + create: notice email on way: Sorry you lost it :-( but an email is on its way so you can reset it soon. notice email cannot find: Could not find that email address, sorry. - reset_password: + edit: title: Reset password heading: Reset Password for %{user} reset: Reset Password - flash changed: Your password has been changed. flash token bad: Did not find that token, check the URL maybe? + update: + flash changed: Your password has been changed. profiles: edit: image: Image @@ -1471,12 +1482,7 @@ en-GB: for this feature. export: title: Export - area_to_export: Area to Export manually_select: Manually select a different area - format_to_export: Format to Export - osm_xml_data: OpenStreetMap XML Data - map_image: Map Image (shows standard layer) - embeddable_html: Embeddable HTML licence: Licence too_large: advice: 'If the above export fails, please consider using one of the sources @@ -1498,17 +1504,6 @@ en-GB: other: title: Other Sources description: Additional sources listed on the OpenStreetMap wiki - options: Options - format: Format - scale: Scale - max: max - image_size: Image Size - zoom: Zoom - add_marker: Add a marker to the map - latitude: 'Lat:' - longitude: 'Lon:' - output: Output - paste_html: Paste HTML to embed in website export_button: Export fixthemap: title: Report a problem/Fix the map @@ -1584,34 +1579,24 @@ en-GB: footway: Footway rail: Railway subway: Subway - tram: - - Light rail - - tram - cable: - - Cable car - - chairlift - runway: - - Airport Runway - - taxiway - apron: - - Airport apron - - terminal + cable_car: Cable car + chair_lift: chairlift + runway: Airport Runway + taxiway: taxiway + apron: Airport apron admin: Administrative boundary forest: Forest wood: Wood golf: Golf course park: Park + common: Common resident: Residential area - common: - - Common - - meadow retail: Retail area industrial: Industrial area commercial: Commercial area heathland: Heathland - lake: - - Lake - - reservoir + lake: Lake + reservoir: reservoir farm: Farm brownfield: Brownfield site cemetery: Cemetery @@ -1620,14 +1605,12 @@ en-GB: centre: Sports centre reserve: Nature reserve military: Military area - school: - - School - - university + school: School + university: university building: Significant building station: Railway station - summit: - - Summit - - peak + summit: Summit + peak: peak tunnel: Dashed casing = tunnel bridge: Black casing = bridge private: Private access diff --git a/config/locales/en.yml b/config/locales/en.yml index 9c6dbc3bd..c7325e64f 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -40,6 +40,13 @@ en: messages: invalid_email_address: does not appear to be a valid e-mail address email_address_not_routable: is not routable + display_name_is_user_n: can't be user_n unless n is your user id + models: + user_mute: + attributes: + subject: + format: "%{message}" + is_already_muted: "is already muted" # Translates all the model names, which is used in error handling on the website models: acl: "Access Control List" @@ -421,6 +428,15 @@ en: introduction: "Click on the map to find nearby features." nearby: "Nearby features" enclosing: "Enclosing features" + old_nodes: + not_found: + sorry: "Sorry, node #%{id} version %{version} could not be found." + old_ways: + not_found: + sorry: "Sorry, way #%{id} version %{version} could not be found." + old_relations: + not_found: + sorry: "Sorry, relation #%{id} version %{version} could not be found." changesets: changeset_paging_nav: showing_page: "Page %{page}" @@ -1433,9 +1449,9 @@ en: one: "%{count} report" other: "%{count} reports" no_reports: No reports - report_created_at: "First reported at %{datetime}" - last_resolved_at: "Last resolved at %{datetime}" - last_updated_at: "Last updated at %{datetime} by %{displayname}" + report_created_at_html: "First reported at %{datetime}" + last_resolved_at_html: "Last resolved at %{datetime}" + last_updated_at_html: "Last updated at %{datetime} by %{displayname}" resolve: Resolve ignore: Ignore reopen: Reopen @@ -1584,6 +1600,7 @@ en: 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." + all_your_traces_html: "All your successfully uploaded GPX traces can be found at %{url}." subject: "[OpenStreetMap] GPX Import success" signup_confirm: subject: "[OpenStreetMap] Welcome to OpenStreetMap" @@ -1673,8 +1690,6 @@ en: messages: inbox: title: "Inbox" - my_inbox: "My Inbox" - my_outbox: "My Outbox" messages: "You have %{new_messages} and %{old_messages}" new_messages: one: "%{count} new message" @@ -1682,16 +1697,20 @@ en: 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" - 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" + actions: "Actions" message_summary: unread_button: "Mark as unread" read_button: "Mark as read" reply_button: "Reply" destroy_button: "Delete" + unmute_button: "Move to Inbox" new: title: "Send message" send_message_to_html: "Send a new message to %{name}" @@ -1705,16 +1724,17 @@ en: body: "Sorry there is no message with that id." outbox: title: "Outbox" - my_inbox: "My Inbox" - my_outbox: "My Outbox" + actions: "Actions" messages: one: "You have %{count} sent message" other: "You have %{count} sent messages" - to: "To" - subject: "Subject" - date: "Date" 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 login as the correct user in order to reply." show: @@ -1726,16 +1746,23 @@ en: 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 login 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" + unmute: + notice: "Message has been moved to Inbox" + error: "The message could not be moved to the Inbox." destroy: destroyed: "Message deleted" passwords: new: title: "Lost password" heading: "Forgotten Password?" - email address: "Email Address:" + email address: "Email Address" new password button: "Reset password" help_text: "Enter the email address you used to sign up, we will send a link to it that you can use to reset your password." create: @@ -1793,9 +1820,9 @@ en: new: title: "Login" heading: "Login" - email or username: "Email Address or Username:" - password: "Password:" - openid_html: "%{logo} OpenID:" + email or username: "Email Address or Username" + password: "Password" + openid_html: "%{logo} OpenID" remember: "Remember me" lost password link: "Lost your password?" login_button: "Login" @@ -1854,6 +1881,7 @@ en: image: Image alt: Alt text url: URL + codeblock: Code block richtext_field: edit: Edit preview: Preview @@ -2144,12 +2172,7 @@ en: no_iframe_support: "Your browser doesn't support HTML iframes, which are necessary for this feature." export: title: "Export" - area_to_export: "Area to Export" manually_select: "Manually select a different area" - format_to_export: "Format to Export" - osm_xml_data: "OpenStreetMap XML Data" - map_image: "Map Image (shows standard layer)" - embeddable_html: "Embeddable HTML" licence: "Licence" licence_details_html: OpenStreetMap data is licensed under the %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -2169,17 +2192,6 @@ en: other: title: "Other Sources" description: "Additional sources listed on the OpenStreetMap Wiki" - options: "Options" - format: "Format" - scale: "Scale" - max: "max" - image_size: "Image Size" - zoom: "Zoom" - add_marker: "Add a marker to the map" - latitude: "Lat:" - longitude: "Lon:" - output: "Output" - paste_html: "Paste HTML to embed in website" export_button: "Export" fixthemap: title: Report a problem / Fix the map @@ -2282,52 +2294,43 @@ en: primary: "Primary road" secondary: "Secondary road" unclassified: "Unclassified road" + pedestrian: "Pedestrian way" track: "Track" bridleway: "Bridleway" cycleway: "Cycleway" cycleway_national: "National cycleway" cycleway_regional: "Regional cycleway" cycleway_local: "Local cycleway" + cycleway_mtb: "Mountain bike route" footway: "Footway" rail: "Railway" train: "Train" subway: "Subway" ferry: "Ferry" - tram: - - Light rail - - tram light_rail: "Light rail" - tram_only: "Tram" + tram: "Tram" trolleybus: "Trolleybus" bus: "Bus" - cable: - - Cable car - - chair lift - runway: - - Airport Runway - - taxiway - apron: - - Airport apron - - terminal + cable_car: "Cable car" + chair_lift: "Chair lift" + runway: "Airport Runway" + taxiway: "Taxiway" + apron: "Airport apron" admin: "Administrative boundary" - orchard: - - Orchard - - vineyard - forest: - - Forest - - wood + capital: "Capital" + city: "City" + orchard: "Orchard" + vineyard: "Vineyard" + forest: "Forest" + wood: "Wood" farmland: "Farmland" - grass: - - Grass - - meadow + grass: "Grass" + meadow: "Meadow" bare_rock: "Bare rock" sand: "Sand" golf: "Golf course" park: "Park" - common: - - Common - - meadow - - garden + common: "Common" built_up: "Built-up area" resident: "Residential area" retail: "Retail area" @@ -2335,26 +2338,28 @@ en: commercial: "Commercial area" heathland: "Heathland" scrubland: "Scrubland" - lake: - - Lake - - reservoir + lake: "Lake" + reservoir: "Reservoir" + intermittent_water: "Intermittent waterbody" glacier: "Glacier" + reef: "Reef" + wetland: "Wetland" farm: "Farm" brownfield: "Brownfield site" cemetery: "Cemetery" allotments: "Allotments" pitch: "Sports pitch" centre: "Sports centre" + beach: "Beach" reserve: "Nature reserve" military: "Military area" - school: - - School - - university + school: "School" + university: "University" + hospital: "Hospital" building: "Significant building" station: "Railway station" - summit: - - Summit - - peak + summit: "Summit" + peak: "Peak" tunnel: "Dashed casing = tunnel" bridge: "Black casing = bridge" private: "Private access" @@ -2363,7 +2368,9 @@ en: bus_stop: "Bus stop" stop: "Stop" bicycle_shop: "Bicycle shop" + bicycle_rental: "Bicycle rental" bicycle_parking: "Bicycle parking" + bicycle_parking_small: "Small bicycle parking" toilets: "Toilets" welcome: title: Welcome! @@ -2558,6 +2565,7 @@ en: oauth1_settings: OAuth 1 settings oauth2_applications: OAuth 2 applications oauth2_authorizations: OAuth 2 authorizations + muted_users: Muted Users oauth: authorize: title: "Authorize access to your account" @@ -2592,6 +2600,7 @@ en: read_gpx: Read private GPS traces write_gpx: Upload GPS traces write_notes: Modify notes + write_redactions: Redact map data read_email: Read user email address skip_authorization: Auto approve application oauth_clients: @@ -2676,6 +2685,7 @@ en: application: "Application" permissions: "Permissions" no_applications_html: "You have not yet authorized any %{oauth2} applications." + oauth_2: "OAuth 2" application: revoke: "Revoke Access" confirm_revoke: "Revoke access for this application?" @@ -2745,6 +2755,8 @@ en: my_dashboard: My Dashboard blocks on me: Blocks on Me blocks by me: Blocks by Me + create_mute: Mute this User + destroy_mute: Unmute this User edit_profile: Edit Profile send message: Send Message diary: Diary @@ -2776,6 +2788,7 @@ en: importer: "Revoke importer access" block_history: "Active Blocks" moderator_history: "Blocks Given" + revoke_all_blocks: "Revoke all blocks" comments: "Comments" create_block: "Block this User" activate_user: "Activate this User" @@ -2878,6 +2891,16 @@ en: confirm: "Are you sure you wish to revoke this block?" revoke: "Revoke!" flash: "This block has been revoked." + 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." @@ -2935,6 +2958,29 @@ en: showing_page: "Page %{page}" next: "Next »" previous: "« Previous" + user_mutes: + index: + title: "Muted Users" + my_muted_users: "My muted users" + you_have_muted_n_users: + one: "You have muted %{count} User" + other: "You have muted %{count} users" + user_mute_explainer: "Messages of muted users are moved into a separate Inbox and you won't receive email notifications." + user_mute_admins_and_moderators: "You can mute Admins and Moderators but their messages will not be muted." + table: + thead: + muted_user: "Muted User" + actions: "Actions" + tbody: + unmute: "Unmute" + send_message: "Send message" + + create: + notice: "You muted %{name}." + error: "%{name} could not be muted. %{full_message}." + destroy: + notice: "You unmuted %{name}." + error: "User could not be unmuted. Please try again." notes: index: title: "Notes submitted or commented on by %{user}" @@ -2971,6 +3017,7 @@ en: reactivate: Reactivate comment_and_resolve: Comment & Resolve comment: Comment + log_in_to_comment: "Log in to comment on this note" report_link_html: "If this note contains sensitive information that needs to be removed, you can %{link}." other_problems_resolve: "For all other problems with the note, please resolve it yourself with a comment." other_problems_resolved: "For all other problems, resolving is sufficient." @@ -3027,7 +3074,6 @@ en: transport_map: Transport Map tracestracktop_topo: Tracestrack Topo hot: Humanitarian - opnvkarte: ÖPNVKarte layers: header: Map Layers notes: Map Notes @@ -3044,8 +3090,6 @@ en: osm_france: OpenStreetMap France thunderforest_credit: "Tiles courtesy of %{thunderforest_link}" andy_allan: Andy Allan - opnvkarte_credit: "Tiles courtesy of %{memomaps_link}" - memomaps: MeMoMaps tracestrack_credit: "Tiles courtesy of %{tracestrack_link}" tracestrack: Tracestrack hotosm_credit: "Tiles style by %{hotosm_link} hosted by %{osm_france_link}" diff --git a/config/locales/eo.yml b/config/locales/eo.yml index b9b108e17..22025511c 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -65,6 +65,9 @@ eo: messages: invalid_email_address: ŝajnas ne estas ĝusta retpoŝta adreso email_address_not_routable: ne estas enkursigebla + models: + user_mute: + is_already_muted: jam estas silentigita models: acl: Listo de kontrolo de akiroj changeset: Ŝanĝaro @@ -918,7 +921,7 @@ eo: construction: Vojo konstruata corridor: Koridoro crossing: Trapasejo - cycleway: Bicikovojo + cycleway: Bicikla vojo elevator: Lifto emergency_access_point: Vivsava rekonebla signo emergency_bay: Kriokaza strat-golfo @@ -1477,9 +1480,9 @@ eo: one: '%{count} raporto' other: '%{count} raportoj' no_reports: Neniu raporto - report_created_at: Unue raportita je %{datetime} - last_resolved_at: Laste solvita je %{datetime} - last_updated_at: Laste aktualigita je %{datetime} de %{displayname} + report_created_at_html: Unue raportita je %{datetime} + last_resolved_at_html: Laste solvita je %{datetime} + last_updated_at_html: Laste aktualigita je %{datetime} de %{displayname} resolve: Solvi ignore: Ignori reopen: Remalfermi @@ -1636,6 +1639,7 @@ eo: loaded: one: estas sukcese enlegita kun %{trace_points} el ebla %{count} punkto. other: estas sukcese enlegita kun %{trace_points} el eblaj %{count} punktoj. + all_your_traces_html: Ĉiuj viaj sukcese alŝutitaj GPX-spuroj troveblas ĉe %{url}. subject: '[OpenStreetMap] GPX-dosiero enportita sukcese' signup_confirm: subject: '[OpenStreetMap] Bonvenon al OpenStreetMap' @@ -1745,8 +1749,6 @@ eo: messages: inbox: title: Ricevujo - my_inbox: Ricevujo - my_outbox: Senditujo messages: Vi havas %{new_messages} kaj %{old_messages} new_messages: one: '%{count} novan mesaĝon' @@ -1754,17 +1756,21 @@ eo: old_messages: one: '%{count} malnovan mesaĝon' other: '%{count} malnovajn mesaĝojn' - from: De - subject: Temo - date: Dato 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 reply_button: Respondi destroy_button: Forigi + unmute_button: Movi al ricevujo new: title: Sendi mesaĝon send_message_to_html: Sendi novan mesaĝon al %{name} @@ -1778,18 +1784,19 @@ eo: heading: Tiu ĉi mesaĝo ne ekzistas body: BedaÅ­rinde ne ekzistas mesaĝo kun tiu ĉi identigilo. outbox: - title: Elirkesto - my_inbox: Ricevujo - my_outbox: Senditujo + title: Senditujo + actions: Agoj messages: one: Vi havas %{count} senditan mesaĝon other: Vi havas %{count} senditajn mesaĝojn - to: Al - subject: Temo - date: Dato 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. Bonvolu ensaluti kiel propra uzanto @@ -1805,28 +1812,38 @@ eo: 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 + unmute: + notice: Movis mesaĝon al ricevujo + error: La mesaĝo ne povis esti movita al la ricevujo. destroy: destroyed: Mesaĝo forigita passwords: - lost_password: + new: title: Perdita pasvorto heading: Forgesis vian pasvorton ? email address: 'Retpoŝtadreso:' new password button: Nuligi pasvorton help_text: Entajpu la retpoŝtan adreson kiun vi uzis por ensaluto, ni sendos al vi ligilon, kiun vi povos uzi por restarigi vian pasvorton. + create: notice email on way: BedaÅ­ras, ke vi perdis ĝin :-( sed baldaÅ­ vi ricevos retleteron, kiun vi uzos por restarigi ĝin. notice email cannot find: BedaÅ­rinde, tiu retadreso ne troveblas. - reset_password: + edit: title: Nuligi pasvorton heading: Nuligi Pasvorton por %{user} reset: Nuligi pasvorton - flash changed: Via pasvorto estis ŝanĝita. flash token bad: Netrovebla ĵetono, bonvolu kontroli la URLon. + update: + flash changed: Via pasvorto estis ŝanĝita. + flash token bad: Ne povas trovi ĵetonon. Provu kontroli la retadreson. preferences: show: title: Miaj preferoj @@ -1931,6 +1948,7 @@ eo: image: Bildo alt: Kromteksto url: Retadreso + codeblock: Bloko de kodo richtext_field: edit: Redakti preview: AntaÅ­vidi @@ -2158,12 +2176,7 @@ eo: por tiu ĉi eblo. export: title: Elporti - area_to_export: Elportonta areo manually_select: Permane elektu alian areon. - format_to_export: Elport-formo - osm_xml_data: XML datumoj de OpenStreetMap - map_image: Bildo de mapo (norma tavolo) - embeddable_html: Enkorpigebla HTML licence: Permesilo licence_details_html: OpenStreetMap estas publikigata laÅ­ la permesilo %{odbl_link} (ODbL). @@ -2186,17 +2199,6 @@ eo: other: title: Aliaj fontoj description: Aliaj fontoj enlistigitaj ĉe OpenStreetMap-vikio - options: Elektebloj - format: Formo - scale: Skalo - max: maks - image_size: Bildamplekso - zoom: Pligrandigi - add_marker: Aldoni markon al la mapo - latitude: 'Lat:' - longitude: 'Lon:' - output: Eliro - paste_html: Engluu HTML-kodon al via retpaĝo export_button: Elporti fixthemap: title: Raporti problemon / Korekti mapon @@ -2295,67 +2297,83 @@ eo: primary: Vojo unua-ranga secondary: Vojo dua-ranga unclassified: Vojo kvara-ranga + pedestrian: Piedirada strato track: Vojo kampa bridleway: Ĉevalvojo cycleway: Bicikla vojo - cycleway_national: Bicikla vojo ŝtata - cycleway_regional: Bicikla vojo regiona - cycleway_local: Bicikla vojo loka + cycleway_national: Bicikla kurso ŝtata + cycleway_regional: Bicikla kurso regiona + cycleway_local: Bicikla kurso loka + cycleway_mtb: Montbicikla kurso footway: Trotuaro rail: Fervojo + train: Vagonaro subway: Metroo - tram: - - Fervojo malpeza - - tramo - cable: - - Kablovojo - - seĝtelfero - runway: - - Avia dromo - - aÅ­tokur-strato - apron: - - Aviadil-parkumejo - - flugstacio + ferry: Pramo + light_rail: Malpeza vagonaro + tram: Tramo + trolleybus: Trolebuso + bus: AÅ­tobuso + cable_car: Kablovojo + chair_lift: Telfero seĝa + runway: Avia dromo + taxiway: AÅ­tokur-strato + apron: Aviadil-parkumejo admin: Administra limo + capital: Ĉefurbo + city: Urbo + orchard: Fruktoĝardeno + vineyard: Vinberĝardeno forest: Kultiv-arbaro wood: Arbaro + farmland: Agrokultura tereno + grass: Herbotapiŝo + meadow: Herbejo + bare_rock: Roka areo + sand: Sabla tereno golf: Golfejo park: Parko + common: Publika ripoza tereno + built_up: Konstruaĵ-kovrita tereno resident: Privatdoma tereno - common: - - Publika ripoza tereno - - herbejo - - ĝardeno retail: Komercejo industrial: Industria areo commercial: Oficeja tereno heathland: Erikejo - lake: - - Lago - - akvorezervujo + scrubland: Arbustaro + lake: Lago + reservoir: Lago artefarita + intermittent_water: Sezona akvujo + glacier: Glacirivero + reef: Rifo + wetland: Malsekejo farm: Farmobieno brownfield: AntaÅ­-konstruejo (post-malkonstruado) cemetery: Tombejo allotments: Familiaj ĝardenoj pitch: Ludkampo centre: Sporta centro + beach: Sablobordo reserve: Naturrezervejo military: Armea tereno - school: - - Lernejo - - universitato + school: Lernejo + university: Universitato + hospital: Malsanulejo building: Grava konstruaĵo station: Stacidomo - summit: - - Montosupro - - montpinto + summit: Montosupro + peak: Montpinto tunnel: Strekumita konturo - tunelo bridge: Nigra konturo - ponto private: Privata aliro destination: Aliro nur al celo construction: Vojoj konstruataj + bus_stop: Haltejo aÅ­tobusa + stop: Haltejo bicycle_shop: Bicikl-vendejo + bicycle_rental: Bicikl-pruntejo bicycle_parking: Parkumejo bicikla + bicycle_parking_small: Malgranda parkumejo bicikla toilets: Necesejo welcome: title: Bonvenon! @@ -2486,8 +2504,8 @@ eo: visibility: 'Videbleco:' confirm_delete: Ĉu forigi tiun ĉi spuron? trace_paging_nav: - older: AntaÅ­aj spuroj - newer: Postaj spuroj + older: Pli malnovaj spuroj + newer: Pli novaj spuroj trace: pending: OKAZONTA count_points: @@ -2554,6 +2572,7 @@ eo: oauth1_settings: Agordoj OAuth 1 oauth2_applications: Aplikaĵoj OAuth 2 oauth2_authorizations: Rajtigoj OAuth 2 + muted_users: Silentigitaj uzantoj oauth: authorize: title: Rajtigi aliron al via konto @@ -2590,6 +2609,7 @@ eo: read_gpx: legi privatajn GPS-spurojn write_gpx: alŝuti GPS-spurojn write_notes: modifi rimarkojn + write_redactions: Redakti map-datumojn read_email: legi retpoŝtan adreson de uzanto skip_authorization: AÅ­tomate akcepti aplikaĵojn oauth_clients: @@ -2760,8 +2780,10 @@ eo: my comments: Miaj komentoj my_preferences: Preferoj my_dashboard: Panelo - blocks on me: Blokas min + blocks on me: Ricevitaj blokadoj blocks by me: Blokitaj de mi + create_mute: Silentigi tiun ĉi uzanton + destroy_mute: Malsilentigi tiun ĉi uzanton edit_profile: Redakti profilon send message: Sendi mesaĝon diary: Taglibro @@ -2793,6 +2815,7 @@ eo: importer: Nuligi aliron de enportisto block_history: Blokadoj aktivaj moderator_history: Blokadoj eldonitaj + revoke_all_blocks: Nuligi ĉiujn blokadojn comments: Komentoj create_block: Bloki ĉi tiun uzanton activate_user: Aktivigi tiun ĉi uzanton @@ -2898,6 +2921,14 @@ eo: confirm: Ĉu vi certe volas nuligi ĉi tiun blokadon? revoke: Malbloki! flash: Ĉi tiu blokado estas nuligita. + 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. @@ -2955,6 +2986,30 @@ eo: showing_page: Paĝo %{page} next: Sekva » previous: « AntaÅ­a + user_mutes: + index: + title: Silentigitaj uzantoj + my_muted_users: Miaj silentigitaj uzantoj + you_have_muted_n_users: + one: Vi silentigis %{count} uzanton + other: Vi silentigis %{count} uzantojn + user_mute_explainer: Mesaĝoj de silentigitaj uzantoj estos movitaj al aparta + mesaĝujo kaj vi ne ricevos retpoŝtajn sciigojn pri ili. + user_mute_admins_and_moderators: Vi povas silentigi administrantojn kaj kontrolantojn, + tamen iliaj mesaĝoj ne estos silentigitaj. + table: + thead: + muted_user: Silentigita uzanto + actions: Agoj + tbody: + unmute: Malsilentigi + send_message: Sendi mesaĝon + create: + notice: Vi silentigis la uzanton %{name}. + error: Uzanto %{name} ne povas esti silentigita. %{full_message}. + destroy: + notice: Vi malsilentigis la uzanton %{name}. + error: Ne povis malsilentigi la uzanton. Reprovu. notes: index: title: Rimarkoj kreitaj aÅ­ komentitaj de %{user} @@ -2992,6 +3047,7 @@ eo: reactivate: Remalfermi comment_and_resolve: Komenti kaj solvi comment: Komenti + log_in_to_comment: Ensalutu por komenti tiun ĉi rimarkon report_link_html: Se tiu ĉi rimarko enhavas privatajn informojn, kiuj ne devas esti publikigitaj, vi povas %{link}. other_problems_resolve: Koncerne al ĉiuj aliaj problemoj pri la rimarko, solvu diff --git a/config/locales/es.yml b/config/locales/es.yml index 95905c01b..ee6e3a3a2 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -47,6 +47,7 @@ # Author: Javiersanp # Author: Jelou # Author: Jlrb+ +# Author: Jmabel # Author: Joanmp17 # Author: Johnarupire # Author: Josuert @@ -133,6 +134,10 @@ es: messages: invalid_email_address: no parece ser una dirección de correo electrónico válida email_address_not_routable: no es enrutable + display_name_is_user_n: no puedes ser user_n a menos que n sea tu ID de usuario + models: + user_mute: + is_already_muted: ya esta silenciado models: acl: Lista de control de acceso changeset: Conjunto de cambios @@ -616,7 +621,7 @@ es: user_title: Diario de %{user} in_language_title: Entradas de diario en %{language} new: Nueva entrada de diario - new_title: Redactar una nueva entrada en mi diario de usuario + new_title: Escribir una nueva entrada en mi diario de usuario my_diary: Mi diario no_entries: No hay entradas en el diario recent_entries: Entradas recientes en el diario @@ -1564,9 +1569,9 @@ es: one: '%{count} reporte' other: '%{count} reportes' no_reports: Sin reportes - report_created_at: Denunciado por primera vez el %{datetime} - last_resolved_at: Resuelto por última vez el %{datetime} - last_updated_at: Actualizado por última vez el %{datetime} por %{displayname} + report_created_at_html: Denunciado por primera vez el %{datetime} + last_resolved_at_html: Resuelto por última vez el %{datetime} + last_updated_at_html: Actualizado por última vez el %{datetime} por %{displayname} resolve: Resolver ignore: Ignorar reopen: Reabrir @@ -1728,6 +1733,8 @@ es: loaded: one: se cargó correctamente, con %{trace_points} de %{count} puntos posibles. other: se cargaron correctamente, con %{trace_points} de %{count} puntos posibles. + all_your_traces_html: Todas los trazas GPX cargadas correctamente se pueden + encontrar en %{url}. subject: '[OpenStreetMap] Éxito al importar GPX' signup_confirm: subject: '[OpenStreetMap] OpenStreetMap te da la bienvenida' @@ -1849,8 +1856,6 @@ es: messages: inbox: title: Buzón de entrada - my_inbox: Mi buzón - my_outbox: Mi buzón de salida messages: Tienes %{new_messages} y %{old_messages} new_messages: one: '%{count} nuevo mensaje' @@ -1858,17 +1863,21 @@ es: old_messages: one: '%{count} mensaje antiguo' other: '%{count} mensajes antiguos' - from: De - subject: Asunto - date: Fecha 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 reply_button: Responder 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} @@ -1883,17 +1892,18 @@ es: body: Lo sentimos, no hay mensaje alguno con este identificador. outbox: title: Bandeja de salida - my_inbox: Mi Bandeja de entrada - my_outbox: Mi Bandeja de salida + actions: Acciones messages: one: Tiene %{count} mensaje enviado other: Tiene %{count} mensajes enviados - to: Para - subject: Asunto - date: Fecha 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 no se ha enviado a dicho usuario. Por favor, inicia sesión con el usuario @@ -1909,29 +1919,40 @@ es: 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 + unmute: + notice: El mensaje se ha trasladado a la bandeja de entrada + error: No se pudo trasladar el mensaje a la bandeja de entrada. destroy: destroyed: Mensaje eliminado passwords: - lost_password: + new: title: Contraseña perdida heading: ¿Contraseña olvidada? - email address: 'Dirección de correo electrónico:' + email address: Dirección de correo electrónico new password button: Restablecer contraseña help_text: Escribe la dirección de correo electrónico con la que te registraste, te enviaremos un enlace a esa dirección que podrás utilizar para restablecer tu contraseña. + create: notice email on way: Sentimos que la hayas perdido :-( pero ya va de camino un mensaje de correo electrónico que te servirá para restablecer tu contraseña enseguida. notice email cannot find: Lo sentimos, no se pudo encontrar esa dirección de correo electrónico. - reset_password: + edit: title: Restablecer contraseña heading: Restablecer contraseña para %{user} reset: Restablecer contraseña + flash token bad: No se ha encontrado este token, ¿Quizá deberías comprobar la + URL? + update: flash changed: Tu contraseña ha sido cambiada. flash token bad: No se ha encontrado este token, ¿Quizá deberías comprobar la URL? @@ -1981,7 +2002,7 @@ es: title: Iniciar sesión heading: Iniciar sesión email or username: 'Dirección de correo electrónico o nombre de usuario:' - password: 'Contraseña:' + password: Contraseña openid_html: '%{logo} OpenID:' remember: Recordarme lost password link: ¿Has perdido tu contraseña? @@ -2041,6 +2062,7 @@ es: image: Imagen alt: Texto alternativo url: URL + codeblock: Bloque de código richtext_field: edit: Editar preview: Previsualizar @@ -2281,12 +2303,7 @@ es: para esta funcionalidad. export: title: Exportar - area_to_export: Área a exportar manually_select: Seleccionar manualmente un área diferente - format_to_export: Formato de exportación - osm_xml_data: Datos de OpenStreetMap en formato XML - map_image: Imagen de mapa (muestra la capa estándar) - embeddable_html: HTML integrable licence: Licencia licence_details_html: Los datos de OpenStreetMap están registrados bajo %{odbl_link} (ODbL). @@ -2312,17 +2329,6 @@ es: other: title: Otras fuentes description: Fuentes adicionales enumeradas en la wiki de OpenStreetMap - options: Opciones - format: Formato - scale: Escala - max: máx. - image_size: Tamaño de la imagen - zoom: Acercar - add_marker: Añadir un marcador al mapa - latitude: 'Lat:' - longitude: 'Lon:' - output: Resultado - paste_html: Pegar HTML para insertar en sitio web export_button: Exportar fixthemap: title: Reportar un problema / corregir el mapa @@ -2425,67 +2431,83 @@ es: primary: Vía primaria secondary: Vía secundaria unclassified: Vía de menos nivel + pedestrian: Vía peatonal track: Pista bridleway: Vía ecuestre cycleway: Ciclovía cycleway_national: Ciclovía nacional cycleway_regional: Ciclovía regional cycleway_local: Ciclovía local + cycleway_mtb: Ruta de bicicleta de montaña footway: Vía peatonal rail: Ferrocarril + train: Tren subway: Metro - tram: - - Metro ligero - - tranvía - cable: - - Telecabina - - Telesilla - runway: - - Pista de aeropuerto - - Calle de rodaje - apron: - - Rampa aeroportuaria - - terminal + ferry: Ferry + light_rail: Tren Ligero + tram: Tranvía + trolleybus: Trolebús + bus: Autobús + cable_car: Telecabina + chair_lift: Telesilla + runway: Pista de aeropuerto + taxiway: Calle de rodaje + apron: Rampa aeroportuaria admin: Límite administrativo + capital: Capital + city: Ciudad + orchard: Huerta + vineyard: Viñedo forest: Bosque - wood: Bosque + wood: Bosque maderable + farmland: Tierras de cultivo + grass: Césped + meadow: Pradera + bare_rock: Roca desnuda + sand: Arena golf: Campo de golf park: Parque + common: Común + built_up: Área construida resident: Zona residencial - common: - - Común - - pradera - - jardín retail: Zona de comercios industrial: Zona industrial commercial: Zona comercial heathland: Brezal - lake: - - Lago - - embalse + scrubland: Matorral + lake: Lago + reservoir: Embalse + intermittent_water: Cuerpo de agua intermitente + glacier: Glaciar + reef: Arrecife + wetland: Pantano farm: Granja brownfield: Sitio baldío cemetery: Cementerio allotments: Huertos de ocio pitch: Campo de juego centre: Centro deportivo + beach: Playa reserve: Reserva natural military: Área militar - school: - - Escuela - - universidad + school: Escuela + university: Universidad + hospital: Hospital building: Edificio significativo station: Estación de tren - summit: - - Cumbre - - pico + summit: Cumbre + peak: Pico tunnel: Borde a rayas = túnel bridge: Borde negro = puente private: Acceso privado destination: Acceso a destino construction: Vías en construcción + bus_stop: Parada de autobuses + stop: Parada bicycle_shop: Tienda de bicicletas + bicycle_rental: Alquiler de bicicletas bicycle_parking: Estacionamiento de bicicletas + bicycle_parking_small: Pequeño aparcamiento para bicicletas toilets: Baños welcome: title: ¡Bienvenido! @@ -2695,6 +2717,7 @@ es: oauth1_settings: Otras configuraciones oauth2_applications: Aplicaciones de OAuth 2 oauth2_authorizations: Autorizaciones de OAuth 2 + muted_users: Usuarios silenciados oauth: authorize: title: Autorizar el acceso a tu cuenta @@ -2731,6 +2754,7 @@ es: read_gpx: Leer trazas de GPS privadas write_gpx: Subir trazas de GPS write_notes: Modifica notas + write_redactions: Censurar datos del mapa read_email: Leer dirección de correo electrónico del usuario skip_authorization: Auto aprobar aplicación oauth_clients: @@ -2780,7 +2804,6 @@ es: no_applications_html: ¿Tienes una aplicación que te gustaría registrar para usar con nosotros utilizando el estándar %{oauth2}? Debes registrar tu aplicación antes de que pueda hacer solicitudes OAuth a este servicio. - oauth_2: OAuth 2 new: Registra tu aplicación name: Nombre permissions: Permisos @@ -2906,6 +2929,8 @@ es: my_dashboard: Mi tablero blocks on me: Bloqueos sobre mí blocks by me: Bloqueados por mí + create_mute: Silenciar a este usuario + destroy_mute: Dejar de silenciar a este usuario edit_profile: Editar perfil send message: Enviar mensaje diary: Diario @@ -2937,6 +2962,7 @@ es: importer: Revocar el acceso importador block_history: Bloqueos activos moderator_history: Bloqueos impuestos + revoke_all_blocks: Revocar todos los bloqueos comments: Comentarios create_block: Bloquear a este usuario activate_user: Activar este usuario @@ -3051,6 +3077,16 @@ es: confirm: ¿Estás seguro de que deseas revocar este bloqueo? revoke: ¡Revocar! flash: Este bloqueo ha sido revocado. + 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. @@ -3110,6 +3146,30 @@ es: showing_page: Página %{page} next: Siguiente » previous: « Anterior + user_mutes: + index: + title: Usuarios silenciados + my_muted_users: Mis usuarios silenciados + you_have_muted_n_users: + one: Has silenciado %{count} usuario + other: Has silenciado %{count} usuarios + user_mute_explainer: Los mensajes de los usuarios silenciados se trasladan a + una bandeja de entrada separada y no recibirás notificaciones por correo electrónico. + user_mute_admins_and_moderators: Puedes silenciar a los administradores y moderadores + pero sus mensajes no serán silenciados. + table: + thead: + muted_user: Usuario silenciado + actions: Acciones + tbody: + unmute: Dejar de silenciar + send_message: Enviar mensaje + create: + notice: Has silenciado a %{name}. + error: '%{name} no pudo ser silenciado. %{full_message}.' + destroy: + notice: Has dejado de silenciar a %{name}. + error: No se pudo quitar el silenciado del usuario. Inténtalo de nuevo. notes: index: title: Notas creadas o comentadas por %{user} @@ -3146,6 +3206,7 @@ es: reactivate: Reactivar comment_and_resolve: Comentar y resolver comment: Comentar + log_in_to_comment: Inicia sesión para comentar esta nota report_link_html: Si esta nota contiene información sensible que debe eliminarse, puedes %{link}. other_problems_resolve: Para todos los demás problemas con la nota, resuélvelo @@ -3370,7 +3431,7 @@ es: heading: Lista de censuras title: Lista de censuras new: - heading: Introduzca la información de la nueva censura + heading: Introduce la información de la nueva censura title: Creando nueva censura show: description: 'Descripción:' @@ -3381,13 +3442,13 @@ es: destroy: Eliminar esta censura confirm: ¿Está seguro? create: - flash: Se creó la censura. + flash: Censura creada. update: flash: Cambios guardados. destroy: not_empty: La censura no está vacía. Elimina todas las versiones previas pertenecientes a esta censura antes de destruirla. - flash: Redacción destruida. + flash: Censura destruida. error: Se produjo un error al destruir esta censura. validations: leading_whitespace: tiene espacio en blanco delantero diff --git a/config/locales/et.yml b/config/locales/et.yml index 59866c7a1..5fb170c07 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -34,8 +34,8 @@ et: create: Registreeri update: Uuenda redaction: - create: Loo redaktsioon - update: Salvesta redaktsioon + create: Loo kinnikatmine + update: Salvesta kinnikatmine trace: create: Laadi üles update: Salvesta muudatused @@ -387,9 +387,9 @@ et: changeset: muudatuskogumi note: märkuse redacted: - redaction: Redaktsioon %{id} - message_html: Selle %{type} versiooni %{version} ei saa kuvada, sest seda on - muudetud. Palun vaata üksikasju %{redaction_link}. + redaction: '%{id}. kinnikatmise' + message_html: Selle %{type} versiooni %{version} ei saa näidata, sest see on + kinni kaetud. Palun vaata %{redaction_link} üksikasju. type: node: sõlme way: joone @@ -1260,8 +1260,6 @@ et: messages: inbox: title: Saabunud sõnumid - my_inbox: Saabunud sõnumid - my_outbox: Saadetud sõnumid messages: Sul on %{new_messages} ja %{old_messages}. new_messages: one: '%{count} uus sõnum' @@ -1269,17 +1267,21 @@ et: old_messages: one: '%{count} vana sõnum' other: '%{count} vana sõnumit' - from: Saatja - subject: Teema - date: Kuupäev 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 reply_button: Vasta destroy_button: Kustuta + unmute_button: Teisalda postkasti new: title: Saada sõnum send_message_to_html: Sõnumi saatmine kasutajale %{name} @@ -1294,17 +1296,18 @@ et: body: Vabandust, kuid sellise ID-ga sõnum puudub. outbox: title: Saadetud sõnumid - my_inbox: Saabunud sõnumid - my_outbox: Saadetud sõnumid + actions: Toimingud messages: one: Sul on %{count} saadetud sõnum. other: Sul on %{count} saadetud sõnumit. - to: Kellele - subject: Teema - date: Kuupäev 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. @@ -1319,28 +1322,37 @@ et: 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. + unmute: + notice: Sõnum on teisaldatud postkasti. + error: Sõnumit ei õnnestunud postkasti teisaldada. destroy: destroyed: Sõnum kustutatud. passwords: - lost_password: + new: title: Unustatud parool heading: Parool ununenud? email address: 'E-posti aadress:' new password button: Lähtesta parool help_text: Sisesta e-posti aadress, mida kasutasid registreerumisel. Saadame sinna lingi, mida saad kasutada parooli lähtestamiseks. + create: notice email on way: Kahju, et parooli kaotasid, kuid ära muretse. Peagi saad e-kirja, mille abil saad parooli lähtestada. notice email cannot find: Seda e-posti aadressi ei leitud. - reset_password: + edit: title: Lähtesta parool heading: Kasutaja %{user} parooli lähtestamine reset: Lähtesta parool - flash changed: Sinu parool on muudetud. flash token bad: Ei leitud sellist kinnituskoodi. Kontrolli URL-i. + update: + flash changed: Sinu parool on muudetud. preferences: show: title: Minu eelistused @@ -1438,6 +1450,7 @@ et: text: Tekst image: Pilt alt: Asendustekst + codeblock: Koodiplokk richtext_field: edit: Muuda preview: Eelvaade @@ -1669,12 +1682,7 @@ et: on vajalik selle režiimi toimimiseks. export: title: Eksportimine - area_to_export: Eksporditav ala manually_select: Vali käsitsi teine ala - format_to_export: Eksporditav vorming - osm_xml_data: OpenStreetMapi andmed XML-kujul - map_image: Kaardi pilt (kuvab tavakaardi) - embeddable_html: Põimitav HTML licence: Litsents licence_details_html: OpenStreetMapi andmed on avaldatud Open Data Commonsi litsentsi %{odbl_link} (ODbL) tingimustel. @@ -1698,17 +1706,6 @@ et: other: title: Muud allikad description: Täiendavad allikad on välja toodud OpenStreetMapi vikis. - options: Sätted - format: 'Vorming:' - scale: Mõõtkava - max: maks. - image_size: Pildi suurus - zoom: Suurendus - add_marker: Lisa kaardile kohamärk - latitude: 'Laius:' - longitude: 'Pikkus:' - output: Väljund - paste_html: Kopeeri ja lisa see HTML-kood oma veebilehele. export_button: Ekspordi fixthemap: title: Probleemist teatamine / kaardi parandamine @@ -1805,34 +1802,24 @@ et: footway: Jalgtee rail: Raudtee subway: Metroo - tram: - - Trammitee - - tramm - cable: - - Köisraudtee - - toolilift - runway: - - Lennurada - - ruleerimistee - apron: - - Lennujaama perroon - - terminal + cable_car: Köisraudtee + chair_lift: Toolilift + runway: Lennurada + taxiway: Ruleerimistee + apron: Lennujaama perroon admin: Halduspiir forest: Tulundusmets wood: Mets golf: Golfiväljak park: Park + common: Heinamaa resident: Elamurajoon - common: - - Heinamaa - - luht retail: Kaubanduspiirkond industrial: Tööstuspiirkond commercial: Äripiirkond heathland: Nõmm - lake: - - Järv - - veehoidla + lake: Järv + reservoir: Veehoidla farm: Põllumajanduslik maa brownfield: Ehitusmaa cemetery: Surnuaed @@ -1841,14 +1828,12 @@ et: centre: Spordikeskus reserve: Looduskaitseala military: Sõjaväe kasutuses - school: - - Kool - - ülikool + school: Kool + university: Ülikool building: Märkimisväärne hoone station: Raudteejaam - summit: - - Mägi - - tipp + summit: Mägi + peak: Tipp tunnel: Katkendlik ümbris = tunnel bridge: Must ümbris = sild private: Üksnes omanikule @@ -2052,6 +2037,7 @@ et: read_gpx: Lugeda isiklikke GPS-radu write_gpx: Laadida üles GPS-radu write_notes: Muuta märkusi + write_redactions: Katta kaardiandmed kinni read_email: Lugeda kasutaja e-posti aadressi skip_authorization: Kiita rakendus heaks automaatselt oauth_clients: @@ -2202,6 +2188,8 @@ et: my_dashboard: Minu andmelaud blocks on me: Saadud blokeeringud blocks by me: Minu seatud blokeeringud + create_mute: Vaigista see kasutaja + destroy_mute: Tühista selle kasutaja vaigistamine edit_profile: Muuda profiili send message: Saada sõnum diary: Päevik @@ -2387,6 +2375,30 @@ et: showing_page: Leht %{page} next: Järgmine » previous: « Eelmine + user_mutes: + index: + title: Vaigistatud kasutajad + my_muted_users: Minu vaigistatud kasutajad + you_have_muted_n_users: + one: Oled vaigistanud ühe kasutaja. + other: Oled vaigistanud %{count} kasutajat. + user_mute_explainer: Vaigistatud kasutajate sõnumid viiakse eraldi postkasti + ja sa ei saa e-posti teavitusi. + user_mute_admins_and_moderators: Saad vaigistada administraatoreid ja moderaatoreid, + aga nende sõnumeid ei vaigistata. + table: + thead: + muted_user: Vaigistatud kasutaja + actions: Toimingud + tbody: + unmute: Tühista vaigistamine + send_message: Saada sõnum + create: + notice: Vaigistasid kasutaja %{name}. + error: Kasutajat %{name} ei õnnestunud vaigistada. %{full_message}. + destroy: + notice: Tühistasid kasutaja %{name} vaigistamise. + error: Kasutaja vaigistamist ei õnnestunud tühistada. Palun proovi uuesti. notes: index: title: Kasutaja %{user} loodud või kommenteeritud märkused @@ -2547,30 +2559,30 @@ et: centre_map: Kuva kaardi keskel redactions: edit: - heading: Redigeeri redaktsiooni - title: Redigeeri redaktsiooni + heading: Redigeeri kinnikatmist + title: Redigeeri kinnikatmist index: - empty: Redaktsioone pole näidata. - heading: Redaktsioonide loend - title: Redaktsioonide loend + empty: Pole ühtegi kinnikatmist, mida näidata. + heading: Kinnikatmiste loend + title: Kinnikatmiste loend new: - heading: Sisesta teave uue redaktsiooni kohta - title: Uue redaktsiooni loomine + heading: Sisesta teave uue kinnikatmise kohta + title: Uue kinnikatmise loomine show: description: 'Kirjeldus:' - heading: Näidatakse redaktsiooni "%{title}" - title: Nähtaval redaktsioon + heading: Kinnikatmine "%{title}" + title: Kinnikatmine user: 'Looja:' - edit: Muuda seda redaktsiooni - destroy: Kustuta see redaktsioon + edit: Muuda seda kinnikatmist + destroy: Eemalda see kinnikatmine confirm: Kas oled kindel? create: - flash: Redaktsioon on loodud. + flash: Kinnikatmine on loodud. update: flash: Salvestati muudatused. destroy: - not_empty: Redaktsioon ei ole tühi. Palun eemalda enne redaktsiooni hävitamist - kõik versioonid, mis selle alla kuuluvad. - flash: Redaktsioon hävitatud. - error: Viga selle redaktsiooni hävitamisel. + not_empty: Kinnikatmine ei ole tühi. Palun tühista kõigi sellesse kinnikatmisesse + kuuluvate versioonide kinnikatmine enne kui selle hävitad. + flash: Kinnikatmine hävitatud. + error: Viga selle kinnikatmise hävitamisel. ... diff --git a/config/locales/eu.yml b/config/locales/eu.yml index a626cb41d..659a88876 100644 --- a/config/locales/eu.yml +++ b/config/locales/eu.yml @@ -1446,9 +1446,9 @@ eu: one: '%{count} report' other: '%{count} jakinarazpen' no_reports: Ez dago txostenik - report_created_at: Lehenengoz %{datetime} egunean berri emanda - last_resolved_at: Azkenekoz %{datetime} egunean konponduta - last_updated_at: Azkenekoz %{displayname}-(e)k %{datetime} egunean eguneratua + report_created_at_html: Lehenengoz %{datetime} egunean berri emanda + last_resolved_at_html: Azkenekoz %{datetime} egunean konponduta + last_updated_at_html: Azkenekoz %{displayname}-(e)k %{datetime} egunean eguneratua resolve: Konpondu ignore: Ezikusi reopen: Berrireki @@ -1728,8 +1728,6 @@ eu: messages: inbox: title: Sarrera-ontzia - my_inbox: Nire sarrera-ontzia - my_outbox: Nire Irteera-Ontzia messages: '%{new_messages} eta %{old_messages} dituzu' new_messages: one: '%Mezu berri {count}' @@ -1737,12 +1735,14 @@ eu: old_messages: one: mezu zahar %{count} other: '%{count} mezu zahar' - from: Igorlea - subject: Gaia - date: Data 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 message_summary: unread_button: Markatu irakurri gabekotzat read_button: Markatu irakurritzat @@ -1762,14 +1762,9 @@ eu: body: Barkatu baina id horrekin ez dago mezurik. outbox: title: Irteerako ontzia - my_inbox: Nire sarrera-ontzia - my_outbox: Nire Irteera-Ontzia messages: one: '%{count} Mezua bidali duzu' other: ' %{count} Mezuak bidali dituzu' - to: Hartzailea - subject: Gaia - date: Data 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 @@ -1788,28 +1783,33 @@ eu: zuzenarekin irakurtzeko.' sent_message_summary: destroy_button: Ezabatu + heading: + my_inbox: Nire sarrera-ontzia + my_outbox: Nire Irteera-Ontzia mark: as_read: Mezua irakurrita gisa markatu da as_unread: Mezua irakurri gabe gisa markatu da destroy: destroyed: Mezua ezabatuta passwords: - lost_password: + new: title: Ahaztutako pasahitza heading: Pasahitza ahaztuta? email address: 'Eposta helbidea:' new password button: Pasahitza berrezarri help_text: Sartu saioa hastean erabiltzen zenuen helbide elektronikoa, zure pasahitza berrezarri ahal izateko erabil dezakezu bidaliko dizugun esteka. + create: notice email on way: Sentitzen duzu hau galdu izatea :-( baina posta elektronikoa bidaltzen ari zaizu laster berrabiarazi dezakezun. notice email cannot find: Eposta helbide hori ezin izan dugu aurkitu, barkatu. - reset_password: + edit: title: Pasahitza berrezarri heading: '%{user}-ren pasahitza berrezarri' reset: Pasahitza berrezarri - flash changed: Zure pasahitza aldatu da. flash token bad: Token hori ez da aurkitu, URL egiaztatu beharbada? + update: + flash changed: Zure pasahitza aldatu da. preferences: show: title: Nire hobespenak @@ -2066,12 +2066,7 @@ eu: honetarako ezinbestekoak direnak. export: title: Esportatu - area_to_export: Esportatu beharreko eremua manually_select: Aukeratu eskuz eremu ezberdin bat - format_to_export: Esportatzeko formatua - osm_xml_data: OpenStreetMap XML Datuak - map_image: Maparen irudia (geruza estandarra erakusten du) - embeddable_html: HTML kapsulagarria licence: Lizentzia licence_details_html: OpenStreetMap datuak %{odbl_link} (ODbL) lizentziapean daude. @@ -2096,17 +2091,6 @@ eu: other: title: Bestelako Iturriak description: OpenStreetMap wikian zerrendatutako iturri osagarriak - options: Aukerak - format: Formatua - scale: Eskala - max: max - image_size: Irudiaren tamaina - zoom: Zooma - add_marker: Mapari markatzailea gehitu - latitude: 'Lat:' - longitude: 'Lon:' - output: Irteera - paste_html: Itsatsi HTMLa webgunean kapsulatzeko export_button: Esportatu fixthemap: title: Arazo baten berri eman / Mapa zuzendu @@ -2206,35 +2190,24 @@ eu: footway: Oinezkoen bidea rail: Trenbidea subway: Metroa - tram: - - Tren arina - - tranbia - cable: - - Funikularra - - teleaulkia - runway: - - Aireportuko Pista - - taxi bidea - apron: - - Aireportu plataforma - - terminala + cable_car: Funikularra + chair_lift: teleaulkia + runway: Aireportuko Pista + taxiway: taxi bidea + apron: Aireportu plataforma admin: Muga administratiboa forest: Baso wood: Basoa golf: Golf-zelai park: Parke + common: Arrunta resident: Etxebizitza ingurua - common: - - Arrunta - - belardia - - lorategia retail: Txikizkako azalera industrial: Industrialdea commercial: Merkataritza eremua heathland: Txilardia - lake: - - Aintzira - - urtegia + lake: Aintzira + reservoir: urtegia farm: Baserria brownfield: Landarik gabeko gunea cemetery: Hilerri @@ -2243,14 +2216,12 @@ eu: centre: Kiroldegi reserve: Natura-erreserba military: Eremu militarra - school: - - Eskola - - unibertsitate + school: Eskola + university: unibertsitate building: Eraikin garrantzitsua station: Tren geltokia - summit: - - Tontorra - - gailurra + summit: Tontorra + peak: gailurra tunnel: Marratxodun estalkia = tunela bridge: Estalki beltza = zubia private: Sarbide pribatua diff --git a/config/locales/fa.yml b/config/locales/fa.yml index b37387776..6fa9f36ef 100644 --- a/config/locales/fa.yml +++ b/config/locales/fa.yml @@ -1398,9 +1398,9 @@ fa: one: '%{count} گزارش' other: '%{count} گزارش' no_reports: گزارشی پیدا نشد - report_created_at: اولین بار %{datetime} گزارش شد - last_resolved_at: آخرین بار %{datetime} حل شد - last_updated_at: آخرین روزآمدسازی در %{datetime} به دست %{displayname} + report_created_at_html: اولین بار %{datetime} گزارش شد + last_resolved_at_html: آخرین بار %{datetime} حل شد + last_updated_at_html: آخرین روزآمدسازی در %{datetime} به دست %{displayname} resolve: حل شد ignore: نادیده‌گیری reopen: بازگشایی @@ -1696,8 +1696,6 @@ fa: messages: inbox: title: صندوق دریافت - my_inbox: صندوق دریافت - my_outbox: صندوق ارسال messages: '%{new_messages} و %{old_messages} دارید' new_messages: one: '%{count} پیام تازه' @@ -1705,12 +1703,14 @@ fa: old_messages: one: '%{count} پیام قدیمی' other: '%{count} پیام قدیمی' - from: از - subject: عنوان - date: تاریخ no_messages_yet_html: هنوز پیامی ندارید. چطور است با چند نفر از %{people_mapping_nearby_link} تماس بگیرید؟ people_mapping_nearby: کسانی که نزدیک شما نقشه می‌کشند + messages_table: + from: از + to: به + subject: عنوان + date: تاریخ message_summary: unread_button: نشان بزن نخواندم read_button: نشان بزن که خواندم @@ -1730,14 +1730,9 @@ fa: body: متأسفانه هیچ پیامی با این شناسه وجود ندارد. outbox: title: صندوق ارسال - my_inbox: صندوق دریافت - my_outbox: صندوق ارسال messages: one: '%{count} پیام ارسالی دارید' other: '%{count} پیام ارسالی دارید' - to: به - subject: موضوع - date: تاریخ no_sent_messages_html: هنوز پیامی نفرستاده‌اید. چطور است با چند نفر از %{people_mapping_nearby_link} تماس بگیرید؟ people_mapping_nearby: کسانی که نزدیک شما نقشه می‌کشند @@ -1756,28 +1751,33 @@ fa: وارد سامانه شوید تا بتوانید آن را بخوانید. sent_message_summary: destroy_button: حذف + heading: + my_inbox: صندوق دریافت + my_outbox: صندوق ارسال mark: as_read: پیام به‌عنوان خوانده علامت‌گذاری شد as_unread: پیام به عنوان نخوانده علامت‌گذاری شد destroy: destroyed: پیام حذف شد passwords: - lost_password: + new: title: فراموشی رمز عبور heading: رمز عبور خودتان را فراموش کرده‌اید؟ email address: 'نشانی رایانامه:' new password button: بازنشانی رمز عبور help_text: رایانامه‌ای که با آن نام‌نویسی کرده‌اید را وارد کنید. ما پیوندی به آن می‌فرستیم تا بتوانید به وسیلهٔ آن گذرواژه‌تان را بازنشانی کنید. + create: notice email on way: متأسفیم که آن را گم کرده‌اید :-( اما رایانامه‌ای در راه است که می‌توانید به‌زودی آن را مجدد تنظیم کنید. notice email cannot find: چنین رایانامه‌ای پیدا نشد، متأسفیم. - reset_password: + edit: title: بازنشانی رمز عبور heading: بازنشانی رمز عبور برای %{user} reset: بازنشانی رمز عبور - flash changed: رمز عبورتان عوض شد. flash token bad: توکن را نیافتید؟ نشانی را بررسی کنید شاید بیابید. + update: + flash changed: رمز عبورتان عوض شد. preferences: show: title: ترجیحات من @@ -1812,6 +1812,7 @@ fa: no home location: شما محل خانهٔ خودتان را وارد نکرده‌اید. update home location on click: وقتی روی نقشه کلیک می‌کنم موقعیت خانه روزآمد شود. + delete: حذف update: success: نمایه ذخیره شد. failure: ذخیره‌سازی نمایه انجام نشد. @@ -1980,12 +1981,7 @@ fa: پشتیبانی نمی‌کند. export: title: برون‌ریزی - area_to_export: محدوده برای برون‌ریزی manually_select: به‌صورت دستی منطقهٔ دیگری انتخاب کنید - format_to_export: قالب برون‌ریزی - osm_xml_data: OpenStreetMap XML Data - map_image: تصویر نقشه (لایهٔ استاندارد را نشان می‌دهد) - embeddable_html: HTML توکار licence: پروانه too_large: advice: 'اگر برون‌ریزی بالا انجام نشد، لطفاً یکی از منابع زیر را استفاده کنید:' @@ -2006,17 +2002,6 @@ fa: other: title: سایر منابع description: منابع بیشتر در ویکی OpenStreetMap ذکر شده است - options: گزینه‌ها - format: قالب - scale: مقیاس - max: حداکثر - image_size: اندازهٔ تصویر - zoom: بزگ‌نمایی - add_marker: افزودن نشانگر به نقشه - latitude: 'عرض:' - longitude: 'طول:' - output: خروجی - paste_html: برای استفادهٔ توکار در وبگاه، HTML را جایگذاری کنید export_button: برون‌ریزی fixthemap: title: گزارش مشکل / اصلاح نقشه @@ -2096,34 +2081,24 @@ fa: footway: راه پیاده rail: راه‌آهن subway: مترو - tram: - - راه‌آهن سبک - - قطار برقی - cable: - - تله‌فریک - - صندلی بالابر - runway: - - باند فرودگاه - - خزش‌راه - apron: - - پیشگاه فرودگاه - - پایانه + cable_car: تله‌فریک + chair_lift: صندلی بالابر + runway: باند فرودگاه + taxiway: خزش‌راه + apron: پیشگاه فرودگاه admin: مرز اداری forest: جنگل wood: چوب golf: زمین گلف park: پارک + common: مشاع resident: منطقهٔ مسکونی - common: - - مشاع - - علفزار retail: منطقه خرده فروشی industrial: منطقه صنعتی commercial: منطقه تجاری heathland: Heathland - lake: - - دریاچه - - مخزن + lake: دریاچه + reservoir: مخزن farm: مزرعه brownfield: سایت قهوه‌ای cemetery: گورستان @@ -2132,14 +2107,12 @@ fa: centre: مرکز ورزشی reserve: طبیعت حفاظت شده military: منطقه نظامی - school: - - مدرسه - - دانشگاه + school: مدرسه + university: دانشگاه building: ساختمان مهم station: ایستگاه راه آهن - summit: - - چکاد - - قله + summit: چکاد + peak: قله tunnel: لبهٔ خط‌چین‌دار = تونل bridge: لبهٔ سیاه = پل private: دسترسی شخصی diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 21b1bf5f6..b362cdfe5 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -1450,9 +1450,9 @@ fi: one: '%{count} ilmianto' other: '%{count} ilmiantoa' no_reports: Ei ilmiantoja - report_created_at: Ilmoitettu ensimmäisen kerran %{datetime} - last_resolved_at: Ratkaistu %{datetime} - last_updated_at: Viimeisin käsittelijä %{displayname} %{datetime} + report_created_at_html: Ilmoitettu ensimmäisen kerran %{datetime} + last_resolved_at_html: Ratkaistu %{datetime} + last_updated_at_html: Viimeisin käsittelijä %{displayname} %{datetime} resolve: Ratkaise ignore: Merkitse aiheettomaksi reopen: Avaa uudelleen @@ -1709,8 +1709,6 @@ fi: messages: inbox: title: Saapuneet - my_inbox: Saapuneet - my_outbox: Lähetetyt messages: Kansiossa on %{new_messages} ja %{old_messages}. new_messages: one: '%{count} lukematon viesti' @@ -1718,11 +1716,13 @@ fi: 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 - no_messages_yet_html: Ei viestejä. %{people_mapping_nearby_link} - people_mapping_nearby: Lähiseudun kartoittajat message_summary: unread_button: Merkitse lukemattomaksi read_button: Merkitse luetuksi @@ -1742,14 +1742,9 @@ fi: body: Valitettavasti tällä ID-tunnuksella ei ole viestiä. outbox: title: Lähetetyt - my_inbox: Saapuneet - my_outbox: Lähetetyt messages: one: Kansiossa on %{count} lähetetty viesti. other: Kansiossa on %{count} lähetettyä viestiä. - to: Vastaanottaja - subject: Otsikko - date: Päiväys 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 @@ -1768,27 +1763,32 @@ fi: 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. passwords: - lost_password: + new: title: Unohtunut salasana heading: Unohditko salasanasi? email address: 'Sähköpostiosoite:' new password button: Lähetä salasanan palautusohjeet help_text: Kirjoita alapuolelle kirjautumissähköpostiosoitteesi. Osoitteeseen lähetetään salasanan palautusohjeet. + create: notice email on way: Salasanan palautusohjeet on lähetetty annettuun sähköpostiosoitteeseen. notice email cannot find: Annettu sähköpostiosoite ei ole käytössä. - reset_password: + edit: title: Salasanan vaihto heading: Vaihda käyttäjän %{user} salasana reset: Vaihda salasana - flash changed: Salasanasi on vaihdettu. flash token bad: Tuntematon tunniste. Tarkista että URL on sama kuin postissasi. + update: + flash changed: Salasanasi on vaihdettu. preferences: show: title: Asetukset @@ -2074,12 +2074,7 @@ fi: tämän toiminnon käyttämiseen. export: title: Alueen vienti - area_to_export: Vietävä alue manually_select: Valitse pienempi alue - format_to_export: Vientimuoto - osm_xml_data: OpenStreetMapin XML-muoto - map_image: Karttakuva (näyttää standarditason) - embeddable_html: HTML-koodi licence: Lisenssi odbl: Open Data Commons Open Database -lisenssillä too_large: @@ -2100,17 +2095,6 @@ fi: other: title: Muut lähteet description: Muut lähteet ovat esillä OpenStreetMap-wikissä - options: Asetukset - format: 'Tiedostomuoto:' - scale: Mittakaava - max: enintään - image_size: Kuvan koko - zoom: Suurennostaso - add_marker: Lisää vietävään kartaan kohdemerkki - latitude: 'Lev:' - longitude: 'Pit:' - output: Tulos - paste_html: Kopioi ja liitä tämä HTML-koodi verkkosivullesi export_button: Vie fixthemap: title: Ilmoita ongelmasta / Korjaa karttaa @@ -2205,35 +2189,24 @@ fi: footway: Jalkakäytävä rail: Junarata subway: Metro - tram: - - Pikaraitiotie - - raitiotie - cable: - - Köysirata - - tuolihissi - runway: - - Lentokentän kiitotie - - rullaustie - apron: - - Lentokentän asemataso - - terminaali + cable_car: Köysirata + chair_lift: tuolihissi + runway: Lentokentän kiitotie + taxiway: rullaustie + apron: Lentokentän asemataso admin: Hallinnollinen raja forest: Talousmetsä wood: Metsä golf: Golfkenttä park: Puisto + common: Niitty resident: Asuinalue - common: - - Niitty - - keto - - puutarha retail: Kaupallinen alue industrial: Teollisuusalue commercial: Toimistoalue heathland: Kanervikko - lake: - - Järvi - - tekojärvi + lake: Järvi + reservoir: tekojärvi farm: Maatila brownfield: Purettujen rakennusten alue cemetery: Hautausmaa @@ -2242,14 +2215,12 @@ fi: centre: Urheilukeskus reserve: Luonnonsuojelualue military: Sotilasalue - school: - - Koulu - - yliopisto + school: Koulu + university: yliopisto building: Merkittävä rakennus station: Rautatieasema - summit: - - Vuorenhuippu - - huippu + summit: Vuorenhuippu + peak: huippu tunnel: Katkoviivallinen kehys = tunneli bridge: Musta kehys = silta private: Yksityinen diff --git a/config/locales/fit.yml b/config/locales/fit.yml index ba2382b34..894428501 100644 --- a/config/locales/fit.yml +++ b/config/locales/fit.yml @@ -521,9 +521,9 @@ fit: zero: Ei ilmiantoa one: Yksi ilmianto other: '%{count} ilmiantoa' - report_created_at: Ilmotettu ensimmäisen kerran %{datetime} - last_resolved_at: Ratkastu %{datetime} - last_updated_at: Viimeisin käsittelijä %{displayname} %{datetime} + report_created_at_html: Ilmotettu ensimmäisen kerran %{datetime} + last_resolved_at_html: Ratkastu %{datetime} + last_updated_at_html: Viimeisin käsittelijä %{displayname} %{datetime} resolve: Ratkase ignore: Merkitte aiheettomaksi reopen: Aukase uuesti @@ -636,7 +636,6 @@ fit: messages: inbox: title: Saapuneet - my_inbox: Saapuneet messages: Kansiossa oon %{new_messages} ja %{old_messages}. new_messages: one: '%{count} lukematon viesti' @@ -644,11 +643,13 @@ fit: 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 - no_messages_yet_html: Ei viestejä. %{people_mapping_nearby_link} - people_mapping_nearby: Lähiseudun kartoittajat message_summary: unread_button: Markeeraa lukemattomaksi read_button: Markeeraa luetuksi @@ -670,9 +671,6 @@ fit: messages: one: Kansiossa oon %{count} lähätetty viesti. other: Kansiossa oon %{count} lähätettyä viestiä. - to: Vastaanottaja - subject: Otsikko - date: Taatumi 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 @@ -688,13 +686,15 @@ fit: 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 passwords: - lost_password: + new: title: Unohtunut salasana heading: Unohditko salasanasi? email address: 'E-postiatressi:' @@ -777,10 +777,6 @@ fit: user_page_link: käyttäjätieot export: title: Alueen eksporteeraus - area_to_export: Eksporteerattava alue - format_to_export: Eksporteerausmuoto - osm_xml_data: OpenStreetMap XML-taatta - embeddable_html: HTML-kooti licence: Lisensi too_large: planet: @@ -790,17 +786,6 @@ fit: other: title: Muut läheet description: Muut läheet ovat esillä OpenStreetMap-wikissä - options: Inställninkit - format: 'Fiilimuoto:' - scale: Mittakaava - max: eninthään - image_size: Kuvan koko - zoom: Suurennostaso - add_marker: Lissää vietävään kartaan kohemerkki - latitude: 'Lev:' - longitude: 'Pit:' - output: Tulos - paste_html: Jäljennä ja liitä tämä HTML-kooti verkkosivulesi export_button: Eksporteeraa fixthemap: title: Ilmota prupleemasta / Korjaa karttaa @@ -830,8 +815,7 @@ fit: key: table: entry: - school: - 1: yniversiteetti + university: yniversiteetti welcome: title: Tervetuloa! add_a_note: diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 8e8ac8620..eef299dc3 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -2,6 +2,7 @@ # Exported from translatewiki.net # Export driver: phpyaml # Author: 0x010C +# Author: 2NumForIce # Author: Adriendelucca # Author: Ajeje Brazorf # Author: Alno @@ -9,6 +10,7 @@ # Author: Antimuonium # Author: BlueCamille # Author: Boniface +# Author: CKali # Author: Cantons-de-l'Est # Author: Cquoi # Author: Crochet.david @@ -32,15 +34,18 @@ # Author: Frigory # Author: Fylip22 # Author: Gaspard +# Author: GeorgeKaplan # Author: Gileri # Author: Gomoko # Author: Gravitystorm # Author: Guilhelma # Author: Hashar # Author: IAlex +# Author: Iketsi # Author: JB # Author: Jean-Frédéric # Author: JenyxGym +# Author: Jg45 # Author: Jiremek # Author: Jlrb+ # Author: Koreller @@ -89,6 +94,7 @@ # Author: Vcalame # Author: Vega # Author: Verdy p +# Author: Vikoula5 # Author: Windes # Author: Wladek92 # Author: Yodaspirine @@ -135,6 +141,9 @@ fr: messages: invalid_email_address: ne semble pas être une adresse de courriel valide email_address_not_routable: n’est pas routable + models: + user_mute: + is_already_muted: est déjà en sourdine models: acl: Liste de contrôle d’accès changeset: Groupe de modifications @@ -781,7 +790,7 @@ fr: drag_lift: Téléski gondola: Télécabine magic_carpet: Tapis roulant élévateur - platter: Monte-plat + platter: Téléski à plateau pylon: Pylône station: Gare de télécabine t-bar: Monte-barre en T @@ -1124,7 +1133,7 @@ fr: military: Zone militaire mine: Mine orchard: Verger - plant_nursery: Crèche d’usine + plant_nursery: Pépinière quarry: Carrière railway: Voie ferrée recreation_ground: Aire de jeux @@ -1581,9 +1590,9 @@ fr: one: '%{count} rapport' other: '%{count} rapports' no_reports: Aucun rapport - report_created_at: Signalé la première fois à %{datetime} - last_resolved_at: Dernière résolution à %{datetime} - last_updated_at: Dernière mise à jour à %{datetime} par %{displayname} + report_created_at_html: Signalé la première fois à %{datetime} + last_resolved_at_html: Dernière résolution à %{datetime} + last_updated_at_html: Dernière mise à jour à %{datetime} par %{displayname} resolve: Résoudre ignore: Ignorer reopen: Rouvrir @@ -1872,8 +1881,6 @@ fr: messages: inbox: title: Boîte de réception - my_inbox: Ma boîte de réception - my_outbox: Ma boîte d’envoi messages: Vous avez %{new_messages} et %{old_messages} new_messages: zero: zéro nouveau message @@ -1883,17 +1890,21 @@ fr: zero: aucun ancien message one: un ancien message other: '%{count} anciens messages' - from: De - subject: Objet - date: Date 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 reply_button: Répondre 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} @@ -1908,17 +1919,15 @@ fr: body: Désolé, il n’y a aucun message avec cet identifiant. outbox: title: Boîte d’envoi - my_inbox: Ma boîte de réception - my_outbox: Ma boîte d’envoi + actions: Actions messages: one: Vous n’avez aucun message envoyé other: Vous avez %{count} messages envoyés - to: À - subject: Objet - date: Date 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 reply: wrong_user: Vous êtes identifié(e) comme « %{user} » mais le message auquel vous souhaitez répondre n’a pas été envoyé à cet utilisateur. Veuillez vous @@ -1934,13 +1943,20 @@ fr: vous connecter avec l’identifiant correct pour pouvoir le lire. 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 + unmute: + notice: Le message a été déplacé dans la boîte de réception + error: Le message n'a pas pu être déplacé vers la boîte de réception. destroy: destroyed: Message supprimé passwords: - lost_password: + new: title: Mot de passe perdu heading: Vous avez perdu votre mot de passe ? email address: 'Adresse de courriel :' @@ -1948,13 +1964,16 @@ fr: help_text: Entrez l’adresse de courriel que vous avez utilisée à votre inscription, nous enverrons à cette adresse un lien que vous pourrez utiliser pour réinitialiser votre mot de passe. + create: notice email on way: Désolé que vous ayez perdu votre mot de passe :-( Un courriel vous a été envoyé pour que vous puissiez vite le réinitialiser. notice email cannot find: Cette adresse de courriel est introuvable, désolé. - reset_password: + edit: title: Réinitialiser le mot de passe heading: Réinitialiser le mot de passe de %{user} reset: Réinitialiser le mot de passe + flash token bad: Ce jeton est introuvable, veuillez vérifier l’URL. + update: flash changed: Votre mot de passe a été modifié. flash token bad: Ce jeton est introuvable, veuillez vérifier l’URL. preferences: @@ -2064,6 +2083,7 @@ fr: image: Image alt: Texte alternatif url: URL + codeblock: Bloc de code richtext_field: edit: Modifier preview: Aperçu @@ -2319,12 +2339,7 @@ fr: qui sont nécessaires pour cette fonctionnalité. export: title: Exporter - area_to_export: Zone à exporter manually_select: Sélectionner manuellement une autre zone - format_to_export: Format d’export - osm_xml_data: Données XML OpenStreetMap - map_image: Image de la carte (affiche le calque standard) - embeddable_html: HTML incorporable. licence: Licence licence_details_html: Les données OpenStreetMap sont sous licence %{odbl_link} (ODbL). @@ -2350,17 +2365,6 @@ fr: other: title: Autres sources description: Sources supplémentaires listées sur le wiki d’OpenStreetMap - options: Options - format: Format - scale: Échelle - max: max - image_size: Taille de l’image - zoom: Zoom - add_marker: Ajouter un marqueur sur la carte - latitude: 'Lat. :' - longitude: 'Lon. :' - output: Sortie - paste_html: Copier le code HTML à intégrer dans un site web export_button: Exporter fixthemap: title: Signaler un problème / Corriger la carte @@ -2466,67 +2470,83 @@ fr: primary: Route principale secondary: Route secondaire unclassified: Route non classifiée + pedestrian: Rue piétonne track: Piste bridleway: Sentier équestre cycleway: Piste cyclable cycleway_national: Itinéraire cyclable national cycleway_regional: Itinéraire cyclable régional cycleway_local: Itinéraire cyclable local + cycleway_mtb: Chemin de vélo de montagne footway: Chemin piéton rail: Voie de chemin de fer + train: Train subway: Ligne de métro - tram: - - Voie ferrée légère - - tramway - cable: - - Téléphérique - - télésiège - runway: - - Piste d’aéroport - - piste de circulation d’un aéroport - apron: - - Stationnement d’avions - - terminal + ferry: Ferry + light_rail: Voie ferrée légère + tram: Tramway + trolleybus: Trolleybus + bus: Bus + cable_car: Téléphérique + chair_lift: Télésiège + runway: Piste d’aéroport + taxiway: Piste de circulation d'un aéroport + apron: Stationnement d’avions admin: Limite administrative + capital: Capitale + city: Ville + orchard: Verger + vineyard: Vignoble forest: Forêt wood: Bois + farmland: Terres agricoles + grass: Pelouse + meadow: Prairie + bare_rock: Roche nue + sand: Sable golf: Parcours de golf park: Parc + common: Espace commun + built_up: Zone bâtie resident: Zone résidentielle - common: - - Espace commun - - prairie - - jardin retail: Zone de commerce industrial: Zone industrielle commercial: Zone tertiaire heathland: Lande - lake: - - Lac - - bassin de retenue + scrubland: Fruticée + lake: Lac + reservoir: Réservoir + intermittent_water: plan d’eau intermittent + glacier: Glacier + reef: Récif + wetland: Zone humide farm: Zone agricole brownfield: Zone de démolition cemetery: Cimetière allotments: Jardins familiaux pitch: Terrain de sport centre: Centre sportif + beach: Plage reserve: Réserve naturelle military: Zone militaire - school: - - École - - université + school: École + university: Université + hospital: Hôpital building: Bâtiment important station: Gare ferroviaire - summit: - - Sommet - - pic + summit: Sommet + peak: Pic tunnel: Bordure pointillée = tunnel bridge: Bord noir = pont private: Accès privé destination: Accès réservé aux riverains construction: Routes en construction + bus_stop: Arrêt de bus + stop: Arrêter bicycle_shop: Magasin de vélos + bicycle_rental: Location de vélos bicycle_parking: Parking à vélos + bicycle_parking_small: Petit parking à vélos toilets: Toilettes welcome: title: Bienvenue ! @@ -2740,6 +2760,7 @@ fr: oauth1_settings: Paramètres OAuth 1 oauth2_applications: Applications OAuth 2 oauth2_authorizations: Droits OAuth 2 + muted_users: Utilisateurs silencieux oauth: authorize: title: Autoriser l’accès à votre compte @@ -3163,6 +3184,13 @@ fr: showing_page: Page %{page} next: Suivant » previous: ◂ Précédent + user_mutes: + index: + table: + thead: + actions: Actions + tbody: + send_message: Envoyer un message notes: index: title: Notes soumises ou commentées par « %{user} » @@ -3200,6 +3228,7 @@ fr: reactivate: Réactiver comment_and_resolve: Commenter et résoudre comment: Commenter + log_in_to_comment: Connectez-vous pour commenter cette note report_link_html: Si cette note contient des informations sensibles qui doivent être supprimées, vous pouvez %{link}. other_problems_resolve: Pour tout autre problème avec la note, veuillez le résoudre diff --git a/config/locales/fur.yml b/config/locales/fur.yml index e29af0f60..d30991d99 100644 --- a/config/locales/fur.yml +++ b/config/locales/fur.yml @@ -146,41 +146,41 @@ fur: datetime: distance_in_words_ago: about_x_hours: - one: cirche 1 ore indaûr + one: cirche %{count} ore indaûr other: cirche %{count} oris indaûr about_x_months: - one: cirche 1 mês indaûr + one: cirche %{count} mês indaûr other: cirche %{count} mês indaûr about_x_years: - one: cirche 1 an indaûr + one: cirche %{count} an indaûr other: cirche %{count} agns indaûr almost_x_years: - one: scuasit 1 an indaûr + one: scuasit %{count} an indaûr other: scuasit %{count} agns indaûr half_a_minute: mieç minût indaûr less_than_x_seconds: - one: mancul di 1 secont indaûr + one: mancul di %{count} secont indaûr other: mancul di %{count} seconts indaûr less_than_x_minutes: - one: mancul di 1 minût indaûr + one: mancul di %{count} minût indaûr other: mancul di %{count} minûts indaûr over_x_years: - one: plui di 1 an indaûr + one: plui di %{count} an indaûr other: plui di %{count} agns indaûr x_seconds: - one: 1 secont indaûr + one: '%{count} secont indaûr' other: '%{count} seconts indaûr' x_minutes: - one: 1 minût indaûr + one: '%{count} minût indaûr' other: '%{count} minûts indaûr' x_days: - one: 1 zornade indaûr + one: '%{count} zornade indaûr' other: '%{count} zornadis indaûr' x_months: - one: 1 mês indaûr + one: '%{count} mês indaûr' other: '%{count} mês indaûr' x_years: - one: 1 an indaûr + one: '%{count} an indaûr' other: '%{count} agns indaûr' editor: default: Predeterminât (par cumò %{name}) @@ -196,6 +196,7 @@ fur: openid: OpenID google: Google facebook: Facebook + microsoft: Microsoft github: GitHub wikipedia: Vichipedie api: @@ -266,16 +267,22 @@ fur: browse: created: Creât closed: Sierât + created_ago_html: Creât %{time_ago} + closed_ago_html: Sierât %{time_ago} + created_ago_by_html: Creât di %{user} %{time_ago} + closed_ago_by_html: Sierât di %{user} %{time_ago} + deleted_ago_by_html: Eliminât di %{user} %{time_ago} + edited_ago_by_html: Modificât di %{user} %{time_ago} version: Version in_changeset: Grup di cambiaments anonymous: anonim no_comment: (nissun coment) part_of: Part di part_of_relations: - one: 1 relazion + one: '%{count} relazion' other: '%{count} relazions' part_of_ways: - one: 1 vie + one: '%{count} vie' other: '%{count} viis' download_xml: Discjame XML view_history: Cjale il storic @@ -291,6 +298,8 @@ fur: relation: Relazions (%{count}) relation_paginated: Relazions (%{x}-%{y} su %{count}) comment: Coments (%{count}) + hidden_comment_by_html: Coment platât di %{user} %{time_ago} + comment_by_html: Comentât di %{user} %{time_ago} changesetxml: Grup di cambiaments XML osmchangexml: XML in formât osmChange feed: @@ -306,7 +315,7 @@ fur: history_title_html: 'Storic de vie: %{name}' nodes: Grops nodes_count: - one: 1 grop + one: '%{count} grop' other: '%{count} grops' also_part_of_html: one: part de vie %{related_ways} @@ -316,7 +325,7 @@ fur: history_title_html: 'Storic de relazion: %{name}' members: Membris members_count: - one: 1 membri + one: '%{count} membri' other: '%{count} membris' relation_member: entry_role_html: '%{type} %{name} come %{role}' @@ -471,8 +480,9 @@ fur: comment_link: Scrîf un coment su cheste vôs reply_link: Mande un messaç al autôr comment_count: - one: 1 coment + one: '%{count} coment' other: '%{count} coments' + no_comments: Nissun coment edit_link: Cambie cheste vôs hide_link: Plate cheste vôs confirm: Conferme @@ -511,6 +521,11 @@ fur: applications: create: notice: Aplicazion regjistrade. + errors: + forbidden: + title: Proibît + not_found: + title: File no cjatât friendships: make_friend: heading: Zontâ %{user} ai amîs? @@ -523,9 +538,14 @@ fur: success: '%{name} al è stât gjavât dai tiei amîs.' not_a_friend: '%{name} nol è un dai tiei amîs.' geocoder: + search: + title: + results_from_html: Risultâts di %{results_link} + latlon: Interni search_osm_nominatim: prefix: aerialway: + cable_car: Funivie pylon: Pilon aeroway: gate: Puarte di aeropuart @@ -539,6 +559,7 @@ fur: bench: Bancjute bicycle_parking: Parc pes bicicletis bicycle_rental: Nauli di bicicletis + brothel: Bordel bureau_de_change: Ufizi di cambi bus_station: Stazion des corieris car_rental: Nauli di machinis @@ -567,6 +588,7 @@ fur: kindergarten: Scuelute language_school: Scuele di lenghis library: Biblioteche + monastery: Monastîr music_school: Scuele di musiche nightclub: Club noturni parking: Parcament @@ -595,6 +617,7 @@ fur: veterinary: Veterinari village_hall: Centri civic waste_basket: Scovacere + weighbridge: Pese boundary: administrative: Confin aministratîf national_park: Parc nazionâl @@ -644,6 +667,7 @@ fur: shoemaker: Cjaliâr tailor: Sartôr emergency: + fire_extinguisher: Estintôr phone: Telefon di emergjence highway: bus_stop: Fermade autobus @@ -651,6 +675,7 @@ fur: cycleway: Percors ciclabil emergency_access_point: Pont di acès di emergjence footway: Percors pedonâl + give_way: Cartel di precedenze motorway: Autostrade motorway_junction: Svincul autostradâl motorway_link: Autostrade @@ -683,6 +708,8 @@ fur: battlefield: Cjamp di bataie boundary_stone: Piere di confin building: Edifici storic + bunker: Bunker + cannon: Canon storic castle: Cjiscjel church: Glesie city_gate: Puarte de citât @@ -721,6 +748,7 @@ fur: vineyard: Vigne leisure: common: Comugnâi (UK) + dog_park: Parc pai cjans fishing: Riserve par pescjâ garden: Zardin golf_course: Troi di golf @@ -728,6 +756,7 @@ fur: miniature_golf: Minigolf nature_reserve: Riserve naturâl park: Parc + picnic_table: Taule pal picnic pitch: Cjamp sportîf sauna: Saune sports_centre: Centri sportîf @@ -739,7 +768,9 @@ fur: bridge: Puint bunker_silo: Bunker tower: Tor + water_tower: Tor pe aghe water_well: Poç + works: Fabriche military: airfield: Cjamp di aviazion militâr barracks: Caserme @@ -763,18 +794,29 @@ fur: peak: Pic peninsula: Penisule point: Pont + sand: Savalon + strait: Stret tree: Arbul + tree_row: Rie di arbui valley: Val volcano: Vulcan water: Aghe "yes": Element naturâl office: architect: Architet + association: Associazion + company: Aziende + diplomatic: Ufici diplomatic employment_agency: Agjenzie di ocupazion estate_agent: Agjent imobiliâr + financial: Ufici finanziari government: Ufizi governatîf insurance: Agjenzie di assicurazions + it: Ufici informatic lawyer: Avocat + logistics: Ufici di logjistiche + newspaper: Ufici di gjornâl + notary: Nodâr travel_agent: Agjenzie di viaçs "yes": Ufizi place: @@ -826,6 +868,7 @@ fur: hairdresser: Piruchîr o barbîr jewelry: Buteghe dal oresin laundry: Lavandarie + massage: Massaç newsagent: Buteghe dai gjornâi optician: Otic pet: Buteghe di animâi @@ -833,6 +876,7 @@ fur: shoes: Buteghe di scarpis sports: Buteghe di articui sportîfs supermarket: Supermarcjât + tailor: Sartôr toys: Negozi di zugatui travel_agency: Agjenzie di viaçs "yes": Buteghe @@ -876,7 +920,7 @@ fur: reports: Segnalazions link_to_reports: Viôt lis segnalazions reports_count: - one: 1 segnalazion + one: '%{count} segnalazion' other: '%{count} segnalazions' states: ignored: Ignorât @@ -884,7 +928,7 @@ fur: resolved: Risolt show: reports: - one: 1 segnalazion + one: '%{count} segnalazion' other: '%{count} segnalazions' resolve: Risolf ignore: Ignore @@ -999,8 +1043,6 @@ fur: messages: inbox: title: In jentrade - my_inbox: I miei messaçs in jentrade - my_outbox: I miei messaçs in jessude messages: Tu âs %{new_messages} e %{old_messages} new_messages: one: '%{count} messaç gnûf' @@ -1008,12 +1050,15 @@ fur: old_messages: one: '%{count} messaç vieli' other: '%{count} messaçs vielis' - from: Di - subject: Sogjet - date: Date 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 @@ -1030,14 +1075,10 @@ fur: heading: Messaç no cjatât outbox: title: In jessude - my_inbox: I miei messaçs in jentrade - my_outbox: I miei messaçs in jessude + actions: Azions messages: one: Tu âs %{count} messaç in jessude other: Tu âs %{count} messaçs in jessude - to: A - subject: Sogjet - date: Date 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 @@ -1049,24 +1090,29 @@ fur: 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 passwords: - lost_password: + new: title: Password pierdude heading: Âstu pierdût la password? email address: 'Direzion di pueste:' new password button: Azere la password help_text: Scrîf la direzion di pueste eletroniche che tu âs doprât par iscrivîti e ti mandarin un leam par tornâ a impuestâ la tô password. + create: notice email cannot find: No vin podût cjatâ la tô direzion di pueste, nus displâs. - reset_password: + edit: title: Azere la password heading: Azere la password par %{user} reset: Azere la password + update: flash changed: La tô password e je stade cambiade. preferences: show: @@ -1098,6 +1144,8 @@ fur: no home location: No tu âs configurât il lûc iniziâl. update home location on click: Aio di inzornâ il lûc iniziâl cuant che o frachi parsore de mape? + show: Mostre + delete: Elimine update: success: Profîl inzornât sessions: @@ -1125,8 +1173,8 @@ fur: title: Jentre cun Facebook alt: Jentre cuntun un cont Facebook microsoft: - title: Jentre cun Windows Live - alt: Jentre cuntun cont di Windows Live + title: Jentre cun Microsoft + alt: Jentre cuntun cont di Microsoft github: title: Jentre cun GitHub alt: Jentre cuntun cont GitHub @@ -1143,6 +1191,8 @@ fur: title: Jes heading: Va fûr di OpenStreetMap logout_button: Jes + suspended_flash: + support: assistence shared: markdown_help: link: Leam @@ -1157,7 +1207,15 @@ fur: about: next: Prossim local_knowledge_title: Cognossince locâl + community_driven_osm_blog: Blog di OpenStreetMap + community_driven_user_diaries: diaris dai utents + community_driven_community_blogs: Blogs de comunitât + community_driven_osm_foundation: Fondazion OSM open_data_title: Dâts vierts + open_data_open_data: dâts vierts + legal_title: Legâl + legal_1_1_terms_of_use: Cundizions pal ûs + legal_2_1_contact_the_osmf: contate il OSMF partners_title: Associâts copyright: foreign: @@ -1171,6 +1229,13 @@ fur: title: Esempli di atribuzion more_title_html: Par savênt di plui contributors_title_html: Nestris colaboradôrs + contributors_at_austria: Austrie + contributors_au_australia: Australie + contributors_fr_france: France + contributors_nz_new_zealand: Gnove Zelande + contributors_si_slovenia: Slovenie + contributors_es_spain: Spagne + contributors_gb_united_kingdom: Ream Unît index: js_1: Tu stâs doprant un sgarfadôr che nol supuarte JavaScript o ben JavaScript al è stât disativât. @@ -1193,10 +1258,7 @@ fur: par cheste funzion. export: title: Espuarte - area_to_export: Aree di espuartâ manually_select: Sielç a man une aree divierse - format_to_export: Formât di espuartâ - osm_xml_data: Dâts XML di OpenStreetMap licence: Licence too_large: body: Cheste aree e je masse grande par espuartâle come dâts XML di OpenStreetMap. @@ -1207,17 +1269,6 @@ fur: other: title: Altris sorzints description: Altris sorzints elencadis su la wiki di OpenStreetMap - options: Opzions - format: 'Formât:' - scale: Scjale - max: max - image_size: 'Dimensions figure:' - zoom: Ingrandiment - add_marker: Zonte un segnalut ae mape - latitude: 'Lat:' - longitude: 'Lon:' - output: Jessude - paste_html: Tache l'HTML par inserîlu tal to sît web export_button: Espuarte fixthemap: title: Segnale un probleme / Comede la mape @@ -1242,6 +1293,8 @@ fur: title: Pe organizazions wiki: title: OpenStreetMap Wiki + potlatch: + change_preferences: Cambie lis tôs preferences culì any_questions: title: Domandis? sidebar: @@ -1266,52 +1319,62 @@ fur: primary: Strade primarie secondary: Strade secondarie unclassified: Strade no classificade + pedestrian: Strade pedonâl + track: Piste rail: Ferade subway: Metropolitane - tram: - - Metropolitana leggera - - tram - runway: - - Piste dal aeropuart - apron: - 1: terminâl + ferry: Traghet + tram: Tram + runway: Piste dal aeropuart admin: Confin aministratîf forest: Bosc + grass: Prât + meadow: Prâts + sand: Savalon golf: Troi di golf park: Parc + common: Comugnâi resident: Zone residenziâl - common: - - Comugnâi - - prâts retail: Zone di buteghis industrial: Zone industriâl commercial: Aree comerciâl - lake: - - Lâc + lake: Lâc cemetery: Simiteri pitch: Cjamp sportîf centre: Centri sportîf reserve: Riserve naturâl military: Zone militâr - school: - - Scuele - - universitât + school: Scuele + university: Universitât + hospital: Ospedâl station: stazion de ferade tunnel: Rie a trats = galarie bridge: Rie nere = puint private: Acès privât construction: Stradis in costruzion + bus_stop: Fermade autobus + stop: Fermade + bicycle_shop: Buteghe di bicicletis welcome: title: Benvignût! whats_on_the_map: title: Ce ch'al è su la mape + basic_terms: + node: grop + way: vie + tag: etichete + rules: + title: Regulis! start_mapping: Scomence a mapâ add_a_note: title: No tu âs timp par fâ i cambiaments? Zonte une note! communities: title: Comunitâts + other_groups: + title: Altris grups traces: new: + upload_trace: Cjame percors GPS visibility_help: ce vuelial dî? help: Jutori create: @@ -1337,6 +1400,7 @@ fur: uploaded: 'Cjamât ai:' points: 'Ponts:' start_coordinates: 'Coordenadis iniziâls:' + coordinates_html: '%{latitude}; %{longitude}' map: mape edit: cambie owner: 'Paron:' @@ -1354,7 +1418,7 @@ fur: trace: pending: IN SPIETE count_points: - one: 1 pont + one: '%{count} pont' other: '%{count} ponts' more: plui trace_details: Cjale i detais dal percors @@ -1367,9 +1431,12 @@ fur: in: in index: public_traces: Percors GPS publics + my_gps_traces: I miei percors GPS public_traces_from: Percors GPS publics di %{user} description: Viôt i percors GPS cjamâts sù tai ultins timps tagged_with: ' etichetât cun %{tags}' + empty_title: Ancjemò nuie par culì + upload_new: Cjame un gnûf percors upload_trace: Cjame un percors all_traces: Ducj i percors my_traces: I miei percors @@ -1455,6 +1522,9 @@ fur: show: edit: Cambie delete: Elimine + confirm_delete: Vuelistu eliminâ cheste aplicazion? + client_id: ID dal client + client_secret: Segret dal client permissions: Permès oauth2_authorizations: new: @@ -1596,7 +1666,7 @@ fur: time_past_html: Finît %{time} indaûr. block_duration: hours: - one: 1 ore + one: '%{count} ore' other: '%{count} oris' blocks_on: title: Blocs su %{name} @@ -1633,11 +1703,20 @@ fur: showing_page: Pagjine %{page} next: Sucessîf » previous: « Precedent + user_mutes: + index: + table: + thead: + actions: Azions + tbody: + send_message: Mande messaç notes: index: title: Note inseride o comentade di %{user} heading: Lis notis di %{user} - subheading_html: Lis notis inseridis o comentadis di %{user} + subheading_html: Lis notis %{submitted} o %{commented} di %{user} + subheading_submitted: inseridis + subheading_commented: comentadis no_notes: Nissune note id: Identificatîf creator: Creadôr @@ -1650,6 +1729,15 @@ fur: open_title: 'Note no risolte #%{note_name}' closed_title: 'Note risolte #%{note_name}' hidden_title: 'Note platade #%{note_name}' + event_opened_by_html: Creât di %{user} %{time_ago} + event_opened_by_anonymous_html: Creât di un anonim %{time_ago} + event_commented_by_html: Comentât di %{user} %{time_ago} + event_commented_by_anonymous_html: Comentât di un anonim %{time_ago} + event_closed_by_html: Risolt di %{user} %{time_ago} + event_closed_by_anonymous_html: Risolt di un anonim %{time_ago} + event_reopened_by_html: Tornât a ativâ di %{user}%{time_ago} + event_reopened_by_anonymous_html: Tornât a ativâ di un anonim %{time_ago} + event_hidden_by_html: Platât di %{user} %{time_ago} report: segnale cheste note anonymous_warning: Cheste note e inclût coments di utents anonims che a varessin di jessi verificâts in mût indipendent. @@ -1698,6 +1786,12 @@ fur: out: Diminuìs zoom locate: title: Mostre la mê posizion + metersPopup: + one: Tu sês a mancul di %{count} metri di chest pont + other: Tu sês a mancul di %{count} metris di chest pont + feetPopup: + one: Tu sês a mancul di %{count} pît di chest pont + other: Tu sês a mancul di %{count} pîts di chest pont base: standard: Standard cycle_map: Cycle Map @@ -1710,6 +1804,17 @@ fur: gps: Percors GPS publics overlays: Ative i nivei utii par risolvi i problemis de mape title: Nivei + make_a_donation: Done alc + website_and_api_terms: Tiermins di ûs dal sît e des APIs + cyclosm_credit: Stîl dai tassei di %{cyclosm_link} ospitât di %{osm_france_link} + osm_france: OpenStreetMap France + thunderforest_credit: Tassei par gentîl concession di %{thunderforest_link} + andy_allan: Andy Allan + opnvkarte_credit: Tassei par gentîl concession di %{memomaps_link} + memomaps: MeMoMaps + tracestrack_credit: Tassei par gentîl concession di %{tracestrack_link} + hotosm_credit: Stîl dai tassei di %{hotosm_link} ospitât di %{osm_france_link} + hotosm_name: La clape umanitare di OpenStreetMap site: edit_tooltip: Cambie la mape edit_disabled_tooltip: Cres il zoom par cambiâ la mape @@ -1733,13 +1838,18 @@ fur: engines: fossgis_osrm_bike: Biciclete (OSRM) fossgis_osrm_car: Machine (OSRM) - fossgis_osrm_foot: A pit (OSRM) + fossgis_osrm_foot: A pît (OSRM) graphhopper_bicycle: Biciclete (OSRM) graphhopper_car: Machine (GraphHopper) - graphhopper_foot: A pit (GraphHopper) + graphhopper_foot: A pît (GraphHopper) + fossgis_valhalla_bicycle: Biciclete (Valhalla) + fossgis_valhalla_car: Machine (Valhalla) + fossgis_valhalla_foot: A pît (Valhalla) descend: Disnivel negatîf directions: Indicazions distance: Distance + distance_m: '%{distance}m' + distance_km: '%{distance}km' errors: no_route: No si à rivât a cjatâ une strade tra chescj doi puescj. no_place: No si à rivât a cjatâ "%{place}". diff --git a/config/locales/fy.yml b/config/locales/fy.yml index 00a26d0db..f270dd742 100644 --- a/config/locales/fy.yml +++ b/config/locales/fy.yml @@ -1378,9 +1378,9 @@ fy: reports: one: 1 melding other: '%{count} meldings' - report_created_at: Earst meld op %{datetime} - last_resolved_at: Lêst oplost op %{datetime} - last_updated_at: Lêst bywurke op %{datetime} troch %{displayname} + report_created_at_html: Earst meld op %{datetime} + last_resolved_at_html: Lêst oplost op %{datetime} + last_updated_at_html: Lêst bywurke op %{datetime} troch %{displayname} resolve: Oplosse ignore: Negearje reopen: Weriepenje @@ -1657,8 +1657,6 @@ fy: messages: inbox: title: Ynfek - my_inbox: Myn ynfek - my_outbox: Myn útfek messages: Jo hawwe %{new_messages} en %{old_messages} new_messages: one: '%{count} nij berjocht' @@ -1666,12 +1664,14 @@ fy: old_messages: one: '%{count} âld berjocht' other: '%{count} âlde berjochten' - from: Fan - subject: Underwerp - date: Datum 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 @@ -1691,14 +1691,9 @@ fy: body: Spitich, der is gjin berjocht mei dy ID. outbox: title: Utfek - my_inbox: Myn ynfek - my_outbox: Myn útfek messages: one: Jo hawwe %{count} ferstjoerd berjocht other: Jo hawwe %{count} ferstjoerde berjochten - to: Oan - subject: Underwerp - date: Datum 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 @@ -1717,13 +1712,16 @@ fy: 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 passwords: - lost_password: + new: title: Wachtwurd kwyt heading: Wachtwurd fergetten? email address: 'E-mailadres:' @@ -1731,15 +1729,17 @@ fy: help_text: Folje it e-mailadres yn dat jo by it ynskriuwen brûkt hawwe. Wy stjoere der dan in keppeling hinne dy't jo brûke kinne om jo wachtwurd op 'e nij yn te stellen. + create: notice email on way: Spitich dat jo 'm kwyt binne :-( mar in e-mail is ûnderweis, dat jo kinne gau in nijenien ynstelle. notice email cannot find: Koe dat e-mailadres net fine, spitich. - reset_password: + edit: title: Nij wachtwurd heading: Wachtwurd op 'e nij ynstelle foar %{user} reset: Nij wachtwurd - flash changed: Jo wachtwurd is feroare. flash token bad: Haw dy kaai net fûn, de URL efkes neisjen? + update: + flash changed: Jo wachtwurd is feroare. preferences: show: title: Myn foarkarren @@ -1911,12 +1911,7 @@ fy: foar dizze funksje. export: title: Eksportearje - area_to_export: Eksportgebiet manually_select: Mei de hân in oar gebiet selektearje - format_to_export: Bestânsfoarm - osm_xml_data: OpenStreetMap-XML-data - map_image: Kaartôfbylding (toant standertlaach) - embeddable_html: Ynbou-HTML licence: Lisinsje too_large: advice: |- @@ -1938,17 +1933,6 @@ fy: other: title: Oare boarnen description: Fierders noch boarnen dy't op 'e OpenStreetMap-wiki steane - options: Opsjes - format: 'Foarm:' - scale: Skaal - max: maks. - image_size: 'Ofbyldgrutte:' - zoom: Sûm - add_marker: Markearder oan 'e kaart tafoegje - latitude: 'Bgr.:' - longitude: 'Lgr.:' - output: Utfier - paste_html: HTML op te nimmen yn in webstee export_button: Eksportearje fixthemap: title: Probleem melde / Kaart ferbetterje @@ -2034,35 +2018,24 @@ fy: footway: Fuotpaad rail: Spoarwei subway: Metrospoar - tram: - - Sneltrem - - trem - cable: - - Kabelbaan - - stuoltsjelift - runway: - - Start-/lânings- - - taksybaan lofthaven - apron: - - Platfoarm - - passazjiershal lofth. + cable_car: Kabelbaan + chair_lift: stuoltsjelift + runway: Start-/lânings- + taxiway: taksybaan lofthaven + apron: Platfoarm admin: Bestjoerlike grins forest: Bosk wood: Wâld golf: Golfbaan park: Park + common: Miente resident: Wengebiet - common: - - Miente - - greide - - tún retail: Winkelgebiet industrial: Yndustrygebiet commercial: Kommersjeel gebiet heathland: Heidelân - lake: - - Mar - - opslachmar + lake: Mar + reservoir: opslachmar farm: Boerepleats brownfield: Braaklân cemetery: Begraafplak @@ -2071,14 +2044,12 @@ fy: centre: Sportsintrum reserve: Natuerreservaat military: Militêr terrein - school: - - Skoalle - - universiteit + school: Skoalle + university: universiteit building: Wichtich gebou station: Spoarweistasjon - summit: - - Top - - pyk + summit: Top + peak: pyk tunnel: Streekte râne = tunnel bridge: Swarte râne = brêge private: Tagong privee diff --git a/config/locales/ga.yml b/config/locales/ga.yml index 7b89a2179..ee7384518 100644 --- a/config/locales/ga.yml +++ b/config/locales/ga.yml @@ -1005,9 +1005,9 @@ ga: zero: Tuairisc ar bith one: Tuairisc amháin other: '%{count} tuairisc' - report_created_at: Tuairiscíodh den chéad uair ag %{datetime} - last_resolved_at: Réitithe den uair dheirineach ag %{datetime} - last_updated_at: Rinne %{displayname} an nuashonrú is déanaí ag %{datetime} + report_created_at_html: Tuairiscíodh den chéad uair ag %{datetime} + last_resolved_at_html: Réitithe den uair dheirineach ag %{datetime} + last_updated_at_html: Rinne %{displayname} an nuashonrú is déanaí ag %{datetime} resolve: Réitigh ignore: Tabhair neamhaird air reopen: Athoscail @@ -1227,7 +1227,6 @@ ga: messages: inbox: title: Bosca isteach - my_inbox: Mo Bhosca Isteach messages: Tá %{new_messages} agus %{old_messages} agat. new_messages: one: '%{count} theachtaireacht amháin' @@ -1239,12 +1238,14 @@ ga: few: '%{count} seanteachtaireacht' many: '%{count} seanteachtaireacht nua' other: '%{count} seanteachtaireacht' - from: Ó - subject: Ábhar - date: Dáta 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 @@ -1267,9 +1268,6 @@ ga: messages: one: Tá %{count} teachtaireacht seolta amháin agat other: Tá %{count} teachtaireacht seolta agat - to: Chuig - subject: Ábhar - date: Dáta 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 @@ -1288,30 +1286,34 @@ ga: 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 passwords: - lost_password: + new: title: Focal faire caillte heading: Focal Faire Caillte? email address: 'Seoladh ríomhphoist:' new password button: Athshocraigh an focal faire help_text: Iontráil an seoladh ríomhphoist a d'úsáid tú le clárú, agus seolfaimid nasc chugat a bheidh tú in ann a úsáid chun do phasfhocal a athshocrú. + create: notice email on way: Is oth linn gur chaill tú é :-( ach tá ríomhphost ar an mbealach chugat le go mbeidh tú in ann é a athshocrú go luath. notice email cannot find: Níorbh fhéidir an seoladh ríomhphoist sin a aimsiú, ár leithscéil faoi sin. - reset_password: + edit: title: Focal faire a athshocrú heading: Focal Faire le haghaidh %{user} a Athshocrú reset: Athshocraigh an Focal Faire - flash changed: Athraíodh d'fhocal faire. flash token bad: Níor aimsíodh an ceadchomhartha sin, seiceáil an bhfuil an URL cruinn? + update: + flash changed: Athraíodh d'fhocal faire. profiles: edit: image: Íomhá @@ -1430,12 +1432,7 @@ ga: HTML, rud atá riachtanach don ghné seo. export: title: Easportáil - area_to_export: Limistéar la hEaspórtáil manually_select: Roghnaigh limistéar eile de láimh - format_to_export: Formáid le hEaspórtáil - osm_xml_data: Sonraí XML OpenStreetMap - map_image: Íomhá den Léarscáil (taispeántar an tsraith chaighdeánach) - embeddable_html: HTML inleabaithe licence: Ceadúnas too_large: advice: 'Má theipeann ar an easpórtáil thuas, smaoinigh ar cheann de na foinsí @@ -1458,17 +1455,6 @@ ga: other: title: Foinsí Eile description: Tá liosta de na foinsí breise ar vicí OpenStreetMap - options: Roghanna - format: Formáid - scale: Scála - max: uasta - image_size: Méid na hÍomhá - zoom: Zúmáil - add_marker: Cuir marcóir leis an léarscáil - latitude: 'D-lthd:' - longitude: 'D-fhad:' - output: Aschur - paste_html: Greamaigh HTML le leabú i suíomh gréasáil export_button: Easportáil fixthemap: title: Fadhb a thuairisciú / An léarscáil a dheisiú @@ -1541,34 +1527,24 @@ ga: footway: Cosán rail: Iarnród subway: Meitreo - tram: - - Iarnród Éadrom - - tram - cable: - - Carr cábla - - cathaoir chábla - runway: - - Rúidbhealach Aerfoirt - - bealach innealta - apron: - - Naprún Aerfoirt - - críochfort + cable_car: Carr cábla + chair_lift: cathaoir chábla + runway: Rúidbhealach Aerfoirt + taxiway: bealach innealta + apron: Naprún Aerfoirt admin: Teorainn riaracháin forest: Foraois wood: Coill golf: Galfchúrsa park: Páirc + common: Coimín resident: Ceantar cónaithe - common: - - Coimín - - móinéar retail: Limistéar miondíola industrial: Limistéar tionsclaíoch commercial: Limistéar tráchtála heathland: Móinteach/fraochmhá - lake: - - Loch - - taiscumar + lake: Loch + reservoir: taiscumar farm: Feirm brownfield: Láithreán athfhorbraíochta cemetery: Reilig @@ -1577,14 +1553,12 @@ ga: centre: Ionad spóirt reserve: Tearmann dúlra military: Limistéar míleata - school: - - Scoil - - ollscoil + school: Scoil + university: ollscoil building: Foirgneamh suntasach station: Stáisiún Iarnróid - summit: - - Mullach - - binn + summit: Mullach + peak: binn tunnel: Líne bhriste = tollán bridge: Líne dhubh = droichead private: Rochtain phríobháideach diff --git a/config/locales/gcf.yml b/config/locales/gcf.yml index 0d0263483..5f9d14cf5 100644 --- a/config/locales/gcf.yml +++ b/config/locales/gcf.yml @@ -1,37 +1,117 @@ -# Messages for kréyòl Gwadloup (kréyòl Gwadloup) +# Messages for Guadeloupean Creole (kréyòl Gwadloup) # Exported from translatewiki.net # Export driver: phpyaml +# Author: Istwalezanti # Author: Léon973 --- gcf: + helpers: + submit: + diary_comment: + create: Komantasyon + diary_entry: + create: Voyé + issue_comment: + create: Jouté komantasyon + message: + create: Voyé activerecord: + models: + country: Péyi + friend: Zanmi + language: Lang + message: Mésaj + user: Itilizatè + user_preference: Sa itilizatè-la simyé attributes: + client_application: + allow_write_api: Modifyé kat-la + diary_entry: + user: Itilizatè + latitude: latitid + longitude: lonjitid + language_code: Lang + friend: + user: Itilizatè + friend: Sendika + trace: + user: Itilizatè + latitude: Latitid + longitude: Lonjitid user: home_lat: 'Latitid:' - home_lon: 'Longitid:' + home_lon: 'Lonjitid:' + languages: Lang ou simyé + pass_crypt: Kòd a-w + pass_crypt_confirmation: Konfimé kòd a-w la help: user: new_email: (Pa janmen maké piblikman) + auth: + providers: + wikipedia: Wikipédya + api: + notes: + entry: + comment: Komantasyon + account: + deletions: + show: + title: Néyantizé kont a-w la + warning: Penga! Si-w ka néyantizé kont a-w, ou ka pèdi-y poubon é ou pé ké + pésa woutini-y ankò. + delete_account: Néyantizé on kont + delete_introduction: |- + Ou pé NÉYANTIZÉ kont OpenStreetMap a-w èvè bouton-la. + Kanmensa ou pou sav sa: + delete_display_name: Tinon a-w la ké néyantizé, é nenpòt kimoun ké pé sèvi + épi-y èvè on dòt kont. + retain_caveats: 'Kanmenmsa, OpenStreetMap ké woutyenn dotwa kamo asi-w, menmsi + sé aprédavwa ou néyantizé kont a-w la:' + retain_email: Nou ké chonjé email a-w la. + recent_editing_html: |- + Davwa ou sòti modifyé biten, nou pé pa néyantizé kont a-w ankò. + Nou ké pé fè-y adan %{time} + confirm_delete: Ès ou sèkten? accounts: edit: + title: Modifyé kont a-w la my settings: Mes options + openid: + link text: Ka sa yé? public editing: enabled: Aktif. Y pa anonnim, y pé édité doné. enabled link text: Ka sa yé? disabled: Inaktif y pé pa édité doné ; tout édision pasé anonim. - disabled link text: Poukwa an pé pa édité? + disabled link text: Pouki an pé pa modifyé? + contributor terms: + link text: Ka sa yé? save changes button: Enrèjisré tout chanjman + delete_account: Néyantizé kont a-w... go_public: - heading: 'Édision piblik:' + heading: 'Édisyon piblik:' + currently_not_public: Konyéla, Ponmoun pa konnèt aki-w lè ou ka modifyé on biten, + larèstan itilizatè pa sav voyé-w mésaj é yo pé pa sav ola ou yé. Pou montré + sa ou modifyé é kité larèstan itilizatè palé ba-w asi twèl-la, Pijé asi bouton-la. make_edits_public_button: Mèt tou sa an fè piblik update: success_confirm_needed: Enfowmasion asi itilisatè la bien anrèjistré. Gadé bwet imél aw pou konfirmé adres nouvo imél aw success: Efowmasion asi itilisatè la bien anrejistré. + destroy: + success: Kont néyantizé. browse: + no_comment: (pon komantasyon) + download_xml: Chantyé XML + location: 'Ki koté:' changeset: + comment: Komantasyon (%{count}) + hidden_comment_by_html: Komantasyon ou dévwè a %{user} %{time_ago} + comment_by_html: Komantasyon a %{user} %{time_ago} changesetxml: Niméwo Chanjeman XML osmchangexml: osmChanjeman XML + join_discussion: Konèkté-w pou jwenn bokantaj-la + discussion: Bokantaj containing_relation: entry_html: Rèlasion %{relation_name} entry_role_html: Rèlasion %{relation_name} (adan wol %{relation_role}) @@ -40,92 +120,375 @@ gcf: start_rjs: load_data: Chajé sé doné la loading: Y ka chajé... + tag_details: + wikipedia_link: Kotéfèy %{page} asi Wikipégya + telephone_link: Kriyé %{phone_number} + query: + introduction: Pijé asi kat-la pou jwenn biten toupréla. + nearby: Biten pa lwen + changesets: + changeset_paging_nav: + showing_page: Kotéfèy %{page} + previous: Pwochenn + changesets: + comment: Komantasyon dashboards: contact: km away: '%{count} km' popup: your location: Koté ou yé nearby mapper: Arpantè owa aw + friend: Zanmi show: + my friends: Zanmi a-w no friends: Ou poko ni pon zanmi - nearby users: 'Itilizatè owa aw :' - no nearby users: Ou poko ni itilizatè owa aw. + nearby users: 'Itilizatè owa a-w :' + no nearby users: Ou poko ni itilizatè owa a-w. diary_entries: new: title: Nouvel nèf an jounal la form: location: 'Ki koté:' - use_map_link: Sèvi èvè kat la + use_map_link: Sèvi èvè kat-la index: new: Nouvel nèf an jounal la - new_title: Mèt on nouvel nèf an jounal aw - no_entries: Pa ni nouvel an jounal aw + new_title: Mèt on nouvèl nèf an jounal a-w + my_diary: Jounal a-w la + no_entries: Pa ni nouvèl an jounal a-w recent_entries: 'Nouvel fré:' - older_entries: Nouvel rasi - newer_entries: Nouvel pi fré + older_entries: Nouvèl rasi + newer_entries: Nouvèl pi fré edit: marker_text: Ola jounal la ka koumansé + show: + leave_a_comment: Kité on komantasyon no_such_entry: - heading: 'Pa ti ni nouvel èvè niméwo la sa : %{id}' - body: Woy, pa ti ni pon nouvel adan jounal la ouben komantè èvè niméwo la sa - %{id}. Kontrolé lòtograf la ouben lien la ou kliké asiy la pa bon. + heading: 'Pa tini nouvel èvè niméwo-lasa : %{id}' + body: Woy, pa tini pon nouvèl adan jounal la ouben komantè èvè niméwo lasa %{id}. + Kontwolé lòtograf la ouben lyen la ou kliké asiy la pa bon. diary_entry: posted_by_html: Sé %{link_user} ki voyé sa , koté %{created} i maké an %{language_link} - comment_link: Palé asi nouvel la sa - reply_link: Réponn nouvel la sa + comment_link: Palé asi nouvèl-lasa + reply_link: Réponn nouvèl-lasa comment_count: one: On Komantè other: '%{count} Komantè' - edit_link: Modifié nouvel la sa + no_comments: Pa ni komantasyon + edit_link: Modifyé nouvèl-lasa diary_comment: comment_from_html: Komantè a %{link_user} koté %{comment_created_at} + hide_link: Dévwè komantasyon-lasa + location: + view: Vwè + comments: + comment: Komantasyon + older_comments: Pli vyé komantasyon + doorkeeper: + scopes: + phone: Vwè liméwo a téléfòn a-w + errors: + forbidden: + title: Défandi + friendships: + make_friend: + heading: Mèt %{user} adan sé zanmi a-w la? + button: Jouté on zanmi + success: Alè-la %{name} sé sendika a-w la! + failed: Malérèzsò, Zingchap toupannan joutaj a %{name} adan sé zanmi a-w la + already_a_friend: '%{name} ja zanmi a-w' + limit_exceeded: |- + Pa ni enpé tan ou jwenn zanmi kon tilili. + Atann tibwen avan ou ka séyé trapé dòt ankò. + remove_friend: + heading: Kasé-lo èvè %{user}? + button: Woté on zanmi + success: '%{name} pa zanmi a-w ankò.' + not_a_friend: '%{name} pa zanmi a-w' + geocoder: + search_osm_nominatim: + prefix: + aerialway: + chair_lift: Sizé a kab + aeroway: + aerodrome: Layodwòm + runway: Pis a dékolaj + taxiway: Koulwa a avyon + terminal: Tèminal a layopò + amenity: + bench: ban-fennyan + bicycle_rental: Lwéyaj a biskèt + boat_rental: Lwéyaj a bato + brothel: Kaz a bòbò + bus_station: Istòp a bis + cinema: Siléma + clock: Lòlòj + dentist: Dòktè a dan + doctors: Dòktè + hospital: Lopital + kindergarten: Tipoulayé + language_school: Lékòl a lang + library: Kaz a Liv + music_school: Lékòl a mizik + nightclub: Bwat + parking: Ga + pharmacy: Fanmasi + police: Manblo + prison: Lajòl + school: Lékòl + townhall: Lanméri + waste_basket: Bwètazòdi + bridge: + "yes": Pon + building: + chapel: Chapèl + church: Batiman a Légliz + hospital: Batiman a lopital + hotel: Batiman a Lotèl + house: Kaz + kindergarten: Batiman a tipoulayé + roof: Fètay + ruins: Batiman Kanni + school: Batiman lékòl + "yes": Batiman + emergency: + defibrillator: Bouwèkyè + siren: Kòn + highway: + cycleway: Chimen a biskèt + motorway: Lotowout + motorway_junction: Britèl lotowout + motorway_link: Lotowout + primary: Chimen a gouvèlman + primary_link: Chimen a gouvèlman + road: Chimen + speed_camera: Rada + street_lamp: Révèbè + traffic_mirror: Glas a lari + trunk: Wokad + trunk_link: Wokad + unclassified: Chimen san kad + "yes": Wout + historic: + aircraft: Vyé avyon + bomb_crater: Tou a dyab fèt parapòt a bonm + cannon: Kannon + castle: Chato + church: Légliz + house: Kaz + railway: Chimen fè a listwa + ruins: Rèstan + tower: Tou + "yes": Vi a listwa + junction: + "yes": Fouchèt a Chimen + landuse: + cemetery: Simityè + forest: Granbwa + grass: Zèb + railway: Chimen fè + reservoir: Rézèvwa + leisure: + garden: Haden + stadium: Istad + man_made: + bridge: Pon + flagpole: lakomèt + snow_cannon: Kannon a lannèj + storage_tank: Sitèn + tower: Tou + windmill: Moulen + works: Lizin + natural: + bay: Lans + beach: Bòdlanmè + cliff: Falèz + crater: Tou a dyab + forest: Granbwa + geyser: Tijaj + hill: Mòn + island: Lilèt + mud: Labou + peninsula: Pwent + rock: Wòch + sand: Sab + scrub: Zèb-razyé + shingle: Wòch-galèt + spring: Sous + tree: Pyébwa + valley: Koulé + volcano: Vòlkan + water: Glo + office: + lawyer: Avoka + place: + archipelago: bann-zil + city: Vil prensipal + country: Péyi + house: Kaz + island: Lilèt + islet: Tililèt + locality: Koté + sea: Lanmè + town: Vil + village: Vilaj + "yes": Koté + railway: + construction: Chimen fè yo ka konstwi + halt: Laga + junction: Fouchèt a chimen fè + level_crossing: Janbaj féwovyè + rail: Chimen fè + shop: + bicycle: Boutik a bisiklèt + books: Boutik a liv + cheese: Boutik a fomaj + clothes: Boutik a lenj + florist: Boutik a flè + mall: bann-boutik + massage: Fòtman + optician: Boutik a linèt + perfumery: Boutik a losyon + seafood: Manjé lannè + shoes: Boutik a Soulyé + ticket: Boutik a bon + "yes": Lolo + tourism: + hotel: Lotèl + information: Kamo + museum: Mizé + tunnel: + "yes": Tinèl + waterway: + canal: Kannal + drain: Dalo + river: Rivyè + stream: Ravin + waterfall: Sodo + admin_levels: + level8: Lizyè a konmin + level9: Lizyè a vilaj + level10: Lizyè a sèksyon + types: + cities: Vil prensipal + towns: Vil + results: + no_results: Yo pa jwenn p'on rézilta + issues: + index: + search: Chaché + states: + open: Ouvè + show: + ignore: Dévwè + reports: + new: + categories: + diary_entry: + other_label: Dòt + diary_comment: + other_label: Dòt + user: + other_label: Dòt + note: + other_label: Dòt layouts: + home: Ay akaz logout: Chapé log_in: Rantré - sign_up: Enskriw + sign_up: Enskri-w + start_mapping: Koumansé kataj-la edit: Modifié history: Istwa sa ou fè export: Voyé déwò gps_traces: Chimen GPS user_diaries: Jounal tag_line: Lyannaj pou kat lib + intro_header: Kontan vwè-w asi OpenStreetMap! + intro_text: Openstreetmap, sé on kat a lèmonn-la ki fèt parapòt a moun kon-w é + lib pou sèvi épi-y évè on lisans lib. osm_offline: Base a doné a OpenStreetMap dékonekté atchelman ; Yo ka fè on gwo travay enpòtan asi-y pou-y maché bien. osm_read_only: Atchelman ou pé li selamn base a doné a OpenStreetMap ; Yo ka fè on gwo travay enpòtan asi-y pou-y maché bien. donate: Ba OpenStreetMap on Fòs, %{link} Pou fè matériel la vansé. + help: Anmwé make_a_donation: text: Ba OpenStreetMap On Fòs + more: Plis + user_mailer: + note_comment_notification: + commented: + subject_own: '[OpenStreetMap] %{commenter} voyé on komantasyon asi on biten + ou maké' + subject_other: '[OpenStreetMap] %{commenter} voyé on komantasyon asi on maké + ki ka kriyé-w' + your_note: '%{commenter} kité on komantasyon asi on biten ou maké asi kat-la + ora a %{place}' + your_note_html: '%{commenter} lésé on komantasyon asi on biten ou maké asi + kat-la pasi %{place}' + commented_note_html: '%{commenter} kité on komantasyon anlè on maké a kat + ou konmanté. Maké-la ora a %{place}.' + changeset_comment_notification: + commented: + subject_own: '[OpenStreetMap] %{commenter} voyé on komantasyon asi yonn a + krèy a modifikasyon a-w' + subject_other: '[OpenStreetMap] %{commenter} voyé on komantasyon asi on modifikasyon + i ka kriyé-w' confirmations: confirm: heading: Konfirmé kont a itilizatè la 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 imél aw. button: Konfirmé + messages: + new: + send_message_to_html: Voyé on dòt mésaj ba %{name} passwords: - lost_password: + new: heading: Ou pèd kòd aw? email address: 'Adres imél aw :' new password button: Voyé on nouvo kòd + preferences: + show: + title: Sa ou simyé + preferred_languages: Lang ou pisimyé profiles: edit: + gravatar: + gravatar: Sèvi épi Gravatar + what_is_gravatar: Ka ki Gravatar? + disabled: Yo étenn Gravatar. home location: 'La ou ka rété :' no home location: Ou po ko mèt la ou ka rété. update home location on click: Eskè y fo modifié la ou ka rété lè ou ka kliké asi kat la? sessions: new: + title: Konèkté-w heading: Konekté email or username: 'Adres imél ouben nom itilizaté aw :' password: 'Kòd aw:' - lost password link: Ou pèd kòd aw? + lost password link: Ou pèd kòd a-w? login_button: Konektéw + auth_providers: + wikipedia: + title: Konèkté-w épi Wikipédya site: + copyright: + native: + mapping_link: koumansé kataj-la + legal_babble: + contributors_ca_canada: Kanada + contributors_fi_finland: Fenlann + contributors_fr_france: Frans + contributors_nl_netherlands: Nédèlann + contributors_es_spain: Èspany index: js_1: Ou ka sèvi èvè on navigatè ki pa ka sipòté Javascript ouben Javascript éten. @@ -137,6 +500,12 @@ gcf: rann édision aw piblik asi %{user_page}. user_page_link: paj_itilizatè anon_edits_link_text: Ka y ni la. + fixthemap: + how_to_help: + title: Kijan pou ba on pal + help: + welcome: + title: Kontan vwè-w asi OpenStreetMap sidebar: search_results: Rézilta a chèché aw close: Fèmé @@ -144,9 +513,42 @@ gcf: search: Chèché where_am_i: Ki moun an yé? submit_text: Voyé + key: + table: + entry: + motorway: Lotowout + trunk: Wokad + primary: Chimen a gouvèlman + train: Tren + taxiway: Koulwa a avyon + city: Vil prensipal + forest: Granbwa + grass: Zèb + sand: Sab + reservoir: Rézèvwa + cemetery: Simityè + beach: Bòdlanmè + school: Lékòl + hospital: Lopital + welcome: + rules: + title: Larèl-la! + add_a_note: + the_map: Kat-la + traces: + new: + help: Anmwé + oauth_clients: + show: + confirm: Ès ou sèkten? users: new: no_auto_account_create: Malérezman, alè kilé, nou pé pa ouvè kont automatikman. + terms: + legale_names: + france: Frans + italy: Itali + rest_of_world: Larèstan a lèmonn-la no_such_user: body: Malérezman, pa ti ni pon itilisatè èvè non la sa %{user}. Kontrolé lòtograf la ouben lien la ou kliké asiy la pa bon. @@ -154,7 +556,9 @@ gcf: my diary: Jounal an mwen my edits: Édision an mwen my traces: Chimen an mwen + my messages: Sé mésaj a-w la my settings: Opsion an mwen + my_preferences: Sa ou simyé send message: Voyé on mésaj diary: Jounal edits: Édision @@ -164,4 +568,33 @@ gcf: mapper since: 'Arpantè dèpi:' go_public: flash success: Tou sa ou fè jis alè ki lé piblik ou pa otorizé édité. + user_blocks: + show: + confirm: Ès ou sèkten? + notes: + index: + last_changed: Dènyé lèwvwè yo modifyé-y + javascripts: + share: + title: Simé + map: + locate: + title: Montré la ou yé + site: + edit_tooltip: Modifyé kat-la + createnote_tooltip: Jouté on komantasyon asi kat-la + changesets: + show: + comment: Komantasyon + directions: + engines: + fossgis_valhalla_bicycle: biskèt (Valhalla) + errors: + no_place: Malérèzsò, yo pa sav ola '%{place}' yé. + instructions: + continue_without_exit: Kontinyé asi %{name} + slight_right_without_exit: Touné tibwen an dwèt a-w asi %{name} + redactions: + show: + confirm: Ès ou sèkten? ... diff --git a/config/locales/gd.yml b/config/locales/gd.yml index eb6f77f98..9d8be7331 100644 --- a/config/locales/gd.yml +++ b/config/locales/gd.yml @@ -3,6 +3,7 @@ # Export driver: phpyaml # Author: Akerbeltz # Author: Amire80 +# Author: Dimitar # Author: GunChleoc # Author: Macofe --- @@ -1072,18 +1073,19 @@ gd: messages: inbox: title: Am bogsa a-steach - my_inbox: Am bogsa a-steach agam messages: Tha %{new_messages} agus %{old_messages} agad new_messages: other: '%{count} teachdaireachd ùr' old_messages: other: '%{count} teachdaireachd shean' - from: O - subject: Cuspair - date: Ceann-là 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 @@ -1105,9 +1107,6 @@ gd: title: Am bogsa a-mach messages: other: Tha %{count} teachdaireachd chuirte agad - to: Gu - subject: Cuspair - date: Ceann-là 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 @@ -1125,13 +1124,15 @@ gd: 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 passwords: - lost_password: + new: title: Facal-faire air chall heading: Na chaill thu am facal-faire agad? email address: 'Seòladh puist-d:' @@ -1139,17 +1140,19 @@ gd: help_text: Cuir a-steach an seòladh puist-d a chleachd thu gus an cunntas agad a chlàradh agus cuiridh sinn post-d dha as urrainn dhut cleachdadh gus am facal-faire agad ath-shuidheachadh. + create: notice email on way: Tha sinn duilich gun do chaill thu e :-( ach tha post-d gu bhith tighinn thugad ach an urrainn dhut ath-shuidheachadh a dh'aithghearr. notice email cannot find: Duilich ach cha do rinn sinn lorg air an t-seòladh puist-d ud. - reset_password: + edit: title: Ath-shuidhich am facal-faire heading: Ath-shuidhich am facal-faire aig %{user} reset: Ath-shuidhich am facal-faire - flash changed: Chaidh am facal-faire agad atharrachadh. flash token bad: Cha do rinn sinn lorg air an tòcan ud, an toir thu sùil air an URL? + update: + flash changed: Chaidh am facal-faire agad atharrachadh. profiles: edit: image: 'Dealbh:' @@ -1287,12 +1290,7 @@ gd: airson an fhearta seo. export: title: Às-phortaich - area_to_export: An raon ri às-phortadh manually_select: Tagh raon eile a làimh - format_to_export: Fòrmat an às-phortaidh - osm_xml_data: Dàta XML OpenStreetMap - map_image: Dealbh a' mhapa (seallaidh seo a' bhreath stannardach) - embeddable_html: HTML a ghabhas leabachadh licence: Ceadachas too_large: advice: 'Ma dh''fhàilligeas leis an às-phortadh gu h-àrd, feuch an cleachd @@ -1315,17 +1313,6 @@ gd: other: title: Tùsan eile description: Gheibh thu tùsan a bharrachd air an uicidh aig OpenStreetMap - options: Roghainnean - format: Fòrmat - scale: Sgèile - max: as motha - image_size: Meud an deilbh - zoom: Sùm - add_marker: Cuir comharra ris a' mhapa - latitude: 'D-leud:' - longitude: 'D-fhad:' - output: Às-chur - paste_html: Cuir ann HTML gus a leabachadh ann an làrach-lìn eile export_button: Às-phortaich fixthemap: title: Innis dhuinn mu dhuilgheadas / Càraich am mapa @@ -1395,34 +1382,24 @@ gd: footway: Àrainn-choisichean rail: Rèile subway: Meatro - tram: - - Rèile aotrom - - Trama - cable: - - Carbad-càbaill - - Lioft-sèitheir - runway: - - Raon-laighe puirt-adhair - - Raon-cuairteachaidh - apron: - - Aparan puirt-adhair - - Tèirmineal + cable_car: Carbad-càbaill + chair_lift: Lioft-sèitheir + runway: Raon-laighe puirt-adhair + taxiway: Raon-cuairteachaidh + apron: Aparan puirt-adhair admin: Crìoch rianachd forest: Coille wood: Coille golf: Raon goilf park: Pàirc + common: Coitcheann resident: Raon-còmhnaidh - common: - - Coitcheann - - Faiche retail: Raon bhuitean industrial: Raon gnìomhachais commercial: Raon malairt heathland: Aonach - lake: - - Loch - - Loch-tasgaidh + lake: Loch + reservoir: Loch-tasgaidh farm: Tuathanas brownfield: Fearann fàs cemetery: Cladh @@ -1431,14 +1408,12 @@ gd: centre: Ionad-spòrs reserve: Tèarmann nàdair military: Raon an airm - school: - - Sgoil - - Oilthigh + school: Sgoil + university: Oilthigh building: Togalach cudromach station: Stèisean-rèile - summit: - - Mullach - - Sgurr + summit: Mullach + peak: Sgurr tunnel: Oir-strìochagan = tunail bridge: Oir-loidhnichean = drochaid private: Cead-inntrigidh prìobhaideach @@ -1658,7 +1633,7 @@ gd: consider_pd: A bharrachd air an aonta gu h-àrd, aontaichidh mi gun dèid na bheir mi dhuibh 'nam cho-thabhartaiche a chur sa Public Domain consider_pd_why: Dè th`ann? - consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain + consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain decline: Cha ghabh mi ris you need to accept or decline: Feuch an leugh thu teirmichean ùra a' chom-pàirtiche agus an uairsin aontaich no nach gabh riutha mus lean thu air adhart. diff --git a/config/locales/gl.yml b/config/locales/gl.yml index dd0a9b2f5..3411ce224 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -9,6 +9,7 @@ # Author: Fitoschido # Author: Gallaecio # Author: Iváns +# Author: MAGHOI # Author: Macofe # Author: Maria zaos # Author: McDutchie @@ -44,8 +45,8 @@ gl: create: Rexistrarse update: Actualizar redaction: - create: Crear a redacción - update: Gardar a redacción + create: Crear a censura + update: Gardar a censura trace: create: Subir update: Gardar as modificacións @@ -57,6 +58,9 @@ gl: messages: invalid_email_address: non semella ser un enderezo de correo electrónico válido email_address_not_routable: non é atinxíbel + models: + user_mute: + is_already_muted: xa está silenciado models: acl: Listaxe do control de acceso changeset: Conxunto de modificacións @@ -426,9 +430,10 @@ gl: changeset: conxunto de modificacións note: nota redacted: - redaction: Redacción %{id} - message_html: A versión %{version} deste %{type} non se pode amosar tal como - foi redactada. Consulte %{redaction_link} para obter máis detalles. + redaction: Censura %{id} + message_html: A versión %{version} deste elemento de tipo "%{type}" non se pode + amosar tal como foi censurada. Consulta a %{redaction_link} para obter máis + detalles. type: node: nó way: vía @@ -1482,9 +1487,9 @@ gl: one: '%{count} denuncia' other: '%{count} denuncias' no_reports: Sen denuncias - report_created_at: Primeira incidencia o %{datetime} - last_resolved_at: Resolto por derradeira vez o %{datetime} - last_updated_at: Última actualización o %{datetime} por %{displayname} + report_created_at_html: Primeira incidencia o %{datetime} + last_resolved_at_html: Resolto por derradeira vez o %{datetime} + last_updated_at_html: Última actualización o %{datetime} por %{displayname} resolve: Resolver ignore: Ignorar reopen: Reabrir @@ -1633,18 +1638,19 @@ gl: description_with_no_tags_html: Parece o teu ficheiro GPX %{trace_name} coa descrición %{trace_description} e sen etiquetas gpx_failure: - hi: Ola %{to_user}, + hi: 'Ola %{to_user}:' failed_to_import: 'erro ao importar. Velaquí atópase o erro:' more_info_html: Máis información sobre os erros de importación de GPX e como evitalos en %{url}. subject: '[OpenStreetMap] Importación GPX errónea' gpx_success: - hi: Ola %{to_user}, + hi: 'Ola %{to_user}:' loaded: one: cargouse correctamente con %{trace_points} de entre un %{count} punto posible. other: cargouse correctamente con %{trace_points} de entre %{count} puntos posibles. + all_your_traces_html: Podes atopar todas as pistas GPX que subiches en %{url}. subject: '[OpenStreetMap] Importación GPX correcta' signup_confirm: subject: '[OpenStreetMap] Dámoslle a benvida ao OpenStreetMap' @@ -1767,8 +1773,6 @@ gl: messages: inbox: title: Caixa de entrada - my_inbox: A miña caixa de entrada - my_outbox: Caixa de saída messages: Ten %{new_messages} e %{old_messages} new_messages: one: '%{count} mensaxe nova' @@ -1776,17 +1780,21 @@ gl: old_messages: one: '%{count} mensaxe vella' other: '%{count} mensaxes vellas' - from: De - subject: Asunto - date: Data no_messages_yet_html: Aínda non ten ningunha mensaxe. Por que non se pon 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 reply_button: Responder destroy_button: Eliminar + unmute_button: Mover á caixa de entrada new: title: Enviar unha mensaxe send_message_to_html: Enviarlle unha nova mensaxe a %{name} @@ -1801,20 +1809,21 @@ gl: body: Non hai ningunha mensaxe con esa ID. outbox: title: Caixa de saída - my_inbox: Caixa de entrada - my_outbox: Caixa de saída + actions: Accións messages: one: Enviaches %{count} mensaxe other: Enviaches %{count} mensaxes - to: Para - subject: Asunto - date: Data no_sent_messages_html: Aínda non enviou ningunha mensaxe. Por que non se pon 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: Accedeu ó sistema coma "%{user}", pero a mensaxe que pediu respostar - non lla enviou a ese usuario. Acceda co usuario correcto para redactar a resposta. + wrong_user: Accediches ó sistema coma "%{user}", pero a mensaxe que pediu responder + non lla enviou a ese usuario. Accede co usuario correcto para redactar a resposta. show: title: Ler a mensaxe reply_button: Responder @@ -1826,13 +1835,20 @@ gl: correcto para ler a resposta. 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 + unmute: + notice: A mensaxe moveuse á caixa de entrada + error: Non se puido mover a mensaxe á caixa de entrada. destroy: destroyed: Mensaxe eliminada passwords: - lost_password: + new: title: Contrasinal perdido heading: Esqueciches o contrasinal? email address: 'Enderezo de correo electrónico:' @@ -1840,16 +1856,20 @@ gl: help_text: Escribe o enderezo de correo electrónico que empregaches para te rexistrares. Enviarémosche unha ligazón que poderás empregar para restablecer o teu contrasinal. + create: notice email on way: Por desgraza perdeuno, pero hai en camiño unha mensaxe de correo electrónico ca que o poderá restabelecelo axiña. notice email cannot find: Non se puido atopar o enderezo de correo electrónico. - reset_password: + edit: title: Restablecer o contrasinal heading: Restablecer o contrasinal de %{user} reset: Restablecer o contrasinal - flash changed: Mudouse o teu contrasinal. flash token bad: Non se atopou o pase. Quizabes tería que comprobar o enderezo URL. + update: + flash changed: Mudouse o teu contrasinal. + flash token bad: Non se atopou o pase. Quizais deberías comprobar o enderezo + URL. preferences: show: title: As miñas preferencias @@ -1954,6 +1974,7 @@ gl: image: Imaxe alt: Texto alternativo url: URL + codeblock: Segmento de código richtext_field: edit: Editar preview: Vista previa @@ -2207,12 +2228,7 @@ gl: este elemento. export: title: Exportar - area_to_export: Zona a exportar manually_select: Seleccionar de xeito manual outra zona - format_to_export: Formato de exportación - osm_xml_data: Datos XML do OpenStreetMap - map_image: Imaxe do mapa (amosa unha capa normal) - embeddable_html: HTML embebíbel licence: Licenza licence_details_html: Os datos do OpenStreetMap atópanse baixo a %{odbl_link} (ODbL). @@ -2237,17 +2253,6 @@ gl: other: title: Outras fontes description: Fontes adicionais listadas no wiki do OpenStreetMap - options: Opcións - format: Formato - scale: Escala - max: máx. - image_size: Tamaño da imaxe - zoom: Zoom - add_marker: Engadir un marcador ao mapa - latitude: 'Lat:' - longitude: 'Lon:' - output: Saída - paste_html: Pegue o código HTML para incluílo na páxina web export_button: Exportar fixthemap: title: Denunciar un problema / Corrixir o mapa @@ -2348,67 +2353,83 @@ gl: primary: Estrada primaria secondary: Estrada secundaria unclassified: Estrada sen clasificar + pedestrian: Camiño peonil track: Pista bridleway: Pista de cabalos cycleway: Senda ciclista cycleway_national: Carril bici nacional cycleway_regional: Carril bici rexional cycleway_local: Carril bici local + cycleway_mtb: Ruta de bicicleta de montaña footway: Senda peonil rail: Ferrocarril + train: Tren subway: Metro - tram: - - Metro lixeiro - - tranvía - cable: - - Teleférico - - telecadeira - runway: - - Pista do aeroporto - - vía de circulación do aeroporto - apron: - - Plataforma do aeroporto - - terminal + ferry: Transbordador + light_rail: Metro lixeiro + tram: Tranvía + trolleybus: Trolebús + bus: Autobús + cable_car: Teleférico + chair_lift: Telecadeira + runway: Pista do aeroporto + taxiway: Vía de circulación do aeroporto + apron: Plataforma do aeroporto admin: Límite administrativo + capital: Capital + city: Cidade + orchard: Horta + vineyard: Viñedo forest: Bosque wood: Bosque + farmland: Terra de labranza + grass: Herba + meadow: Pradaría + bare_rock: Rocha núa + sand: Area golf: Campo de golf park: Parque + common: Espazo común + built_up: Zona edificada resident: Zona residencial - common: - - Espazo común - - pradaría - - xardín retail: Zona comercial industrial: Zona industrial commercial: Zona de oficinas heathland: Breixeira - lake: - - Lagoa - - encoro + scrubland: Matogueira + lake: Lagoa + reservoir: Encoro + intermittent_water: Masa de auga intermitente + glacier: Glaciar + reef: Arrecife + wetland: Pantano farm: Granxa brownfield: Lugar baldío cemetery: Cemiterio allotments: Hortas pitch: Cancha deportiva centre: Centro deportivo + beach: Praia reserve: Reserva natural military: Zona militar - school: - - Escola - - universidade + school: Escola + university: Universidade + hospital: Hospital building: Edificio significativo station: Estación de ferrocarrís - summit: - - Cumio - - cume + summit: Cumio + peak: Cume tunnel: Bordo a raias = túnel bridge: Bordo negro = ponte private: Acceso privado destination: Acceso a destino construction: Estradas baixo construción + bus_stop: Parada de bus + stop: Parada bicycle_shop: Tenda de bicicletas + bicycle_rental: Alugueiro de bicicletas bicycle_parking: Aparcadoiro de bicicletas + bicycle_parking_small: Aparcadoiro de bicicletas pequeno toilets: Servizos welcome: title: Reciba a nosa benvida! @@ -2609,6 +2630,7 @@ gl: oauth1_settings: Axustes OAuth 1 oauth2_applications: Aplicacións OAuth 2 oauth2_authorizations: Autorizacións OAuth 2 + muted_users: Usuarios silenciados oauth: authorize: title: Autorizar o acceso á túa conta @@ -2645,6 +2667,7 @@ gl: read_gpx: Ler pistas GPS privadas write_gpx: Subir pistas GPS write_notes: Modificar notas + write_redactions: Censurar datos do mapa read_email: Ver os enderezos de correo electrónico dos usuarios skip_authorization: Aprobar automaticamente aplicacións oauth_clients: @@ -2656,7 +2679,7 @@ gl: title: Detalles OAuth para %{app_name} key: 'Chave ou clave do consumidor:' secret: 'Pregunta secreta do consumidor:' - url: 'Solicitar unha URL de pase:' + url: 'URL do pase da solicitude:' access_url: 'Acceder á URL do pase:' authorize_url: 'Autorizar a URL:' support_notice: Soportamos HMAC-SHA1 (recomendado) e sinaturas RSA-SHA1. @@ -2818,6 +2841,8 @@ gl: my_dashboard: O meu panel de control blocks on me: Os meus bloqueos blocks by me: Bloqueos efectuados + create_mute: Silenciar este usuario + destroy_mute: Deixar de silenciar este usuario edit_profile: Editar perfil send message: Enviar unha mensaxe diary: Diario @@ -2849,6 +2874,7 @@ gl: importer: Revogar o acceso de importador block_history: Bloqueos activos moderator_history: Bloqueos impostos + revoke_all_blocks: Revogar todos os bloqueos comments: Comentarios create_block: Bloquear este usuario activate_user: Activar este usuario @@ -2958,6 +2984,16 @@ gl: confirm: Ten a certeza de querer revogar este bloqueo? revoke: Revogar! flash: Revogouse o 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. @@ -3017,6 +3053,30 @@ gl: showing_page: Páxina %{page} next: Seguinte » previous: « Anterior + user_mutes: + index: + title: Usuarios silenciados + my_muted_users: Os meus usuarios silenciados + you_have_muted_n_users: + one: Silenciaches %{count} usuario + other: Silenciaches %{count} usuarios + user_mute_explainer: As mensaxes dos usuarios silenciados móvense a unha caixa + de entrada independente e non recibirás notificacións por correo electrónico. + user_mute_admins_and_moderators: Podes silenciar os administradores e moderadores, + pero as súas mensaxes non se silenciarán. + table: + thead: + muted_user: Usuario silenciado + actions: Accións + tbody: + unmute: Deixar de silenciar + send_message: Enviar unha mensaxe + create: + notice: Silenciaches a %{name}. + error: Non se puido silenciar a %{name}. %{full_message}. + destroy: + notice: Deixaches de silenciar a %{name}. + error: Non se puido deixar de silenciar o usuario. Por favor, inténtao de novo. notes: index: title: Notas enviadas ou comentadas por %{user} @@ -3053,6 +3113,7 @@ gl: reactivate: Reactivar comment_and_resolve: Comentar e resolver comment: Comentar + log_in_to_comment: Accede para comentar esta nota report_link_html: Se esta nota contén información confidencial que debe eliminarse, podes %{link}. other_problems_resolve: Para calquera outro problema coa nota, resólveo ti cun @@ -3174,71 +3235,70 @@ gl: distance_km: '%{distance} km' errors: no_route: Non se puido atopar unha ruta entre eses dous lugares. - no_place: Sentímolo - non foi posíbel atopar '%{place}'. + no_place: Sentímolo, non foi posíbel atopar "%{place}". instructions: - continue_without_exit: Continuar en %{name} - slight_right_without_exit: Xire un pouco cara á dereita en %{name} - offramp_right: Colla a rampla da dereita - offramp_right_with_exit: Tome a saída %{exit} cara á dereita - offramp_right_with_exit_name: Tome a saída %{exit} á dereita cara %{name} - offramp_right_with_exit_directions: Tome a saída %{exit} cara á dereita, en - dirección a %{directions} - offramp_right_with_exit_name_directions: Tome a saída %{exit} á dereita cara - %{name}, en dirección a %{directions} - offramp_right_with_name: Colla a rampla á dereita en %{name} - offramp_right_with_directions: Tome a vía de acceso cara á dereita en dirección + continue_without_exit: Continúa en %{name} + slight_right_without_exit: Xira lixeiramente á dereita cara a %{name} + offramp_right: Toma a rampla á dereita + offramp_right_with_exit: Toma a saída %{exit} á dereita + offramp_right_with_exit_name: Toma a saída %{exit} á dereita cara a %{name} + offramp_right_with_exit_directions: Toma a saída %{exit} á dereita, en dirección a %{directions} - offramp_right_with_name_directions: Tome a vía de acceso á dereita cara %{name}, + offramp_right_with_exit_name_directions: Toma a saída %{exit} á dereita cara + a %{name}, en dirección a %{directions} + offramp_right_with_name: Toma a rampla á dereita cara a %{name} + offramp_right_with_directions: Toma a rampla á dereita en dirección a %{directions} + offramp_right_with_name_directions: Toma a rampla á dereita cara a %{name}, en dirección a %{directions} - onramp_right_without_exit: Xire á dereita na rampla en %{name} - onramp_right_with_directions: Xire á dereita, cara á rampla en dirección a + onramp_right_without_exit: Xira á dereita na rampla cara a %{name} + onramp_right_with_directions: Xira á dereita, cara á rampla en dirección a %{directions} - onramp_right_with_name_directions: Xire á dereita na rampla cara %{name}, + onramp_right_with_name_directions: Xira á dereita na rampla cara a %{name}, en dirección a %{directions} - onramp_right_without_directions: Xire á dereita cara a rampla - onramp_right: Xire á dereita cara a rampla - endofroad_right_without_exit: Ó final da estrada xire á dereita en %{name} - merge_right_without_exit: Únase á dereita en %{name} - fork_right_without_exit: Na bifurcación xire á dereita en %{name} - turn_right_without_exit: Xire á dereita en %{name} - sharp_right_without_exit: Xiro brusco á dereita en %{name} + onramp_right_without_directions: Xira á dereita cara a rampla + onramp_right: Xira á dereita cara a rampla + endofroad_right_without_exit: Ó final da estrada xira á dereita cara a %{name} + merge_right_without_exit: Incorpórate á dereita cara a %{name} + fork_right_without_exit: Na bifurcación xira á dereita cara a %{name} + turn_right_without_exit: Xira á dereita cara a %{name} + sharp_right_without_exit: Xiro brusco á dereita cara a %{name} uturn_without_exit: Cambio de sentido en %{name} - sharp_left_without_exit: Xiro brusco á esquerda en %{name} - turn_left_without_exit: Xire á esquerda cara %{name} - offramp_left: Tome a rampla á esquerda - offramp_left_with_exit: Tome a saída %{exit} á esquerda - offramp_left_with_exit_name: Tome a saída %{exit} á esquerda cara %{name} - offramp_left_with_exit_directions: Tome a saída %{exit} á esquerda en dirección + sharp_left_without_exit: Xiro brusco á esquerda cara a %{name} + turn_left_without_exit: Xira á esquerda cara a %{name} + offramp_left: Toma a rampla á esquerda + offramp_left_with_exit: Toma a saída %{exit} á esquerda + offramp_left_with_exit_name: Toma a saída %{exit} á esquerda cara a %{name} + offramp_left_with_exit_directions: Toma a saída %{exit} á esquerda en dirección a %{directions} - offramp_left_with_exit_name_directions: Tome a saída %{exit} á esquerda cara - %{name}, en dirección a %{directions} - offramp_left_with_name: Colla a rampla á esquerda en %{name} - offramp_left_with_directions: Tome a rampla á esquerda en dirección a %{directions} - offramp_left_with_name_directions: Tome a rampla á esquerda cara %{name}, + offramp_left_with_exit_name_directions: Toma a saída %{exit} á esquerda cara + a %{name}, en dirección a %{directions} + offramp_left_with_name: Toma a rampla á esquerda cara a %{name} + offramp_left_with_directions: Toma a rampla á esquerda en dirección a %{directions} + offramp_left_with_name_directions: Toma a rampla á esquerda cara a %{name}, en dirección a %{directions} - onramp_left_without_exit: Xire á esquerda na rampla en %{name} - onramp_left_with_directions: Xire á esquerda na rampla en dirección a %{directions} - onramp_left_with_name_directions: Xire á esquerda na rampla cara %{name}, + onramp_left_without_exit: Xira á esquerda na rampla cara a %{name} + onramp_left_with_directions: Xira á esquerda na rampla en dirección a %{directions} + onramp_left_with_name_directions: Xira á esquerda na rampla cara a %{name}, en dirección a %{directions} - onramp_left_without_directions: Xire á esquerda cara a rampla - onramp_left: Xire á esquerda cara a rampla - endofroad_left_without_exit: Ó final da estrada xire á esquerda en %{name} - merge_left_without_exit: Únase á esquerda en %{name} - fork_left_without_exit: Na bifurcación xire á esquerda en %{name} - slight_left_without_exit: Xire un pouco cara á esquerda en %{name} + onramp_left_without_directions: Xira á esquerda cara a rampla + onramp_left: Xira á esquerda cara a rampla + endofroad_left_without_exit: Ó final da estrada xira á esquerda cara a %{name} + merge_left_without_exit: Incorpórate á esquerda cara a %{name} + fork_left_without_exit: Na bifurcación xira á esquerda cara a %{name} + slight_left_without_exit: Xira lixeiramente á esquerda cara a %{name} via_point_without_exit: (punto intermedio) - follow_without_exit: Siga %{name} - roundabout_without_exit: Na rotonda, tome a saída cara a %{name} - leave_roundabout_without_exit: Saír da rotonda - %{name} - stay_roundabout_without_exit: Permanecer na rotonda - %{name} - start_without_exit: Comezar en %{name} - destination_without_exit: Chegada ó destino - against_oneway_without_exit: Ir en contra dun só sentido en %{name} + follow_without_exit: Sigue %{name} + roundabout_without_exit: Na rotonda, toma a saída cara a %{name} + leave_roundabout_without_exit: Sae da rotonda - %{name} + stay_roundabout_without_exit: Permanece na rotonda - %{name} + start_without_exit: Comeza en %{name} + destination_without_exit: Chega ó destino + against_oneway_without_exit: Vai en contra do sentido en %{name} end_oneway_without_exit: Final dun só sentido en %{name} - roundabout_with_exit: Na rotonda coller saída %{exit} en %{name} - roundabout_with_exit_ordinal: Na rotonda coller saída %{exit} cara %{name} - exit_roundabout: Saír da rotonda cara %{name} - unnamed: sen nome + roundabout_with_exit: Na rotonda, toma a saída %{exit} cara a %{name} + roundabout_with_exit_ordinal: Na rotonda, toma a saída %{exit} cara a %{name} + exit_roundabout: Sae da rotonda cara a %{name} + unnamed: estrada sen nome courtesy: Indicacións cortesía de %{link} exit_counts: first: 1.ª @@ -3257,8 +3317,8 @@ gl: way: Vía relation: Relación nothing_found: Non se atoparon elementos - error: 'Erro ó contactar a %{server}: %{error}' - timeout: Tempo de agarde esgotado ó contactar a %{server} + error: 'Erro ó contactar con %{server}: %{error}' + timeout: Tempo de agarda esgotado ó contactar con %{server} context: directions_from: Indicacións dende aquí directions_to: Indicacións até aquí @@ -3268,32 +3328,32 @@ gl: centre_map: Centrar o mapa aquí redactions: edit: - heading: Editar a redacción - title: Editar a redacción + heading: Editar a censura + title: Editar a censura index: - empty: Non hai ningunha redacción que amosar. - heading: Listaxe das redaccións - title: Listaxe das redaccións + empty: Non hai ningunha censura que amosar. + heading: Listaxe de censuras + title: Listaxe de censuras new: - heading: Escriba a información da nova redacción - title: Creando unha nova redacción + heading: Escriba a información da nova censura + title: Creando unha nova censura show: description: 'Descrición:' - heading: Amosando a redacción "%{title}" - title: Amosando a redacción + heading: Amosando a censura "%{title}" + title: Amosando a censura user: 'Creador:' - edit: Editar esta redacción - destroy: Eliminar esta redacción + edit: Editar esta censura + destroy: Eliminar esta censura confirm: Queres continuar? create: - flash: Redacción creada. + flash: Censura creada. update: flash: Gardáronse as modificacións. destroy: - not_empty: A redacción non está baleira. Elimine tódalas versións previas pertencentes - a esta redacción antes de destruíla. - flash: Redacción destruída. - error: Houbo un erro ó destruír esta redacción. + not_empty: A censura non está baleira. Elimina tódalas versións previas pertencentes + a esta censura antes de destruíla. + flash: Censura destruída. + error: Houbo un erro ó destruír esta censura. validations: leading_whitespace: ten espazos no inicio trailing_whitespace: ten espazos ó final diff --git a/config/locales/gsw.yml b/config/locales/gsw.yml index ac44d7f59..c5475f3d6 100644 --- a/config/locales/gsw.yml +++ b/config/locales/gsw.yml @@ -185,12 +185,13 @@ gsw: success: Dyy E-Mail-Adräss isch bstetigt wore, dankschen fir s Regischtriere! failure: E E-Mail-Adräss isch scho mit däm Link bstetigt wore. passwords: - reset_password: + edit: title: Passwort zrucksetze heading: Passwort fir %{user} zrucksetze reset: Passwort zrucksetze - flash changed: Dyy Passwort isch gänderet wore. flash token bad: Mir hän des Chirzel leider nit chenne finde. Iberprief d URL. + update: + flash changed: Dyy Passwort isch gänderet wore. traces: visibility: private: Privat (nume as anonymi, nit sortierti Pinkt ohni Zytstämpfel aazeigt) diff --git a/config/locales/he.yml b/config/locales/he.yml index e5a7c2e03..ab32d78fd 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -79,6 +79,11 @@ he: messages: invalid_email_address: זאת אינה כתובת דוא״ל תקנית email_address_not_routable: לא בר־ניתוב + display_name_is_user_n: זה לא יכול להיות user_n אלא אם כן n הוא מזהה המשתמש + שלך + models: + user_mute: + is_already_muted: כבר מושתק models: acl: רשימת בקרת גישה changeset: ערכת שינויים @@ -266,7 +271,7 @@ he: description: iD (עורך בתוך הדפדפן) remote: name: שליטה מרחוק - description: שליטה מרחוק (JOSM, Potlatch או Merkaartor) + description: שליטה מרחוק (JOSM‏, Potlatch או Merkaartor) auth: providers: none: ללא @@ -313,7 +318,7 @@ he: retain_caveats: 'אבל חלק מהמידע עליך יישמר ב־OpenStreetMap, אפילו אחרי מחיקת חשבונך:' retain_edits: העריכות שלך לבסיס הנתונים של המפה, אם קיימות, יישמרו. - retain_traces: ההקלטות (traces) שהעליתם, יישמרו. + retain_traces: ההקלטות שהעליתם, אם יש כאלו, יישמרו. retain_diary_entries: יומן הכניסות ויומן התגובות שלך, אם קיימים, יישמרו, אך לא ניתן יהיה לצפות בהם. retain_notes: הערות המפה ותגובות להערות, אם יש כאלה, יישמרו, אבל יוסתרו. @@ -361,8 +366,8 @@ he: כברירת מחדל. make_edits_public_button: להפוך את כל עריכותיי לציבוריות update: - success_confirm_needed: מידע על המשתמש עודכן בהצלחה. נא לבדוק את תיבת הדוא"ל - כדי לאמת את הדוא"ל החדש. + success_confirm_needed: מידע על המשתמש עודכן בהצלחה. נא לבדוק את תיבת הדוא״ל + כדי לאמת את הדוא״ל החדש. success: פרטי המשתמש עודכנו בהצלחה. destroy: success: חשבון נמחק. @@ -1183,7 +1188,7 @@ he: fjord: פיורד forest: יער geyser: גייזר - glacier: קרחון + glacier: קרחון יבשתי grassland: ערבה heath: בתה hill: גבעה @@ -1518,9 +1523,9 @@ he: many: '%{count} דו״חות' other: '%{count} דו״חות' no_reports: אין דיווחים - report_created_at: דיווח ראשון ב־%{datetime} - last_resolved_at: נפתר לאחרונה ב־%{datetime} - last_updated_at: עדכון אחרון ב־%{datetime} על־ידי %{displayname} + report_created_at_html: דיווח ראשון ב־%{datetime} + last_resolved_at_html: נפתר לאחרונה ב־%{datetime} + last_updated_at_html: עדכון אחרון ב־%{datetime} על־ידי %{displayname} resolve: לפתור ignore: התעלמות reopen: פתיחה מחדש @@ -1570,10 +1575,10 @@ he: threat_label: הערה זו ביומן מכילה איום other_label: אחר user: - spam_label: פרופיל משתמש זה הוא/מכיל ספאם - offensive_label: פרופיל משתמש זה בוטה/פוגעני - threat_label: פרופיל משתמש זה מכיל איום - vandal_label: משתמש זה משחית + spam_label: פרופיל המשתמש הזה הוא ספאם (או מכיל ספאם) + offensive_label: פרופיל המשתמש הזה בוטה או פוגעני + threat_label: פרופיל המשתמש הזה מכיל איום + vandal_label: המשתמש הזה הוא משחית other_label: אחר note: spam_label: הערה זו היא זבל @@ -1764,7 +1769,7 @@ he: success: חשבונך אושר, תודה שנרשמת! already active: החשבון הזה כבר אושר. unknown token: נראה שקוד האישור הזה פג או שאינו קיים. - resend_html: אם צריך שנשלח לך שוב את דוא"ל האישור, %{reconfirm_link}. + resend_html: אם צריך שנשלח לך שוב את דוא״ל האישור, %{reconfirm_link}. click_here: נא ללחוץ כאן confirm_resend: failure: משתמש %{name} לא נמצא. @@ -1784,8 +1789,6 @@ he: messages: inbox: title: תיבת דואר נכנס - my_inbox: תיבת הדואר הנכנס שלי - my_outbox: תיבת הדואר היוצא שלי messages: יש לך %{new_messages} ועוד %{old_messages} new_messages: one: הודעה חדשה אחת @@ -1793,16 +1796,20 @@ he: old_messages: one: הודעה ישנה אחת other: '%{count} הודעות ישנות' + no_messages_yet_html: אין לך הודעות חדשות עדיין. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}? + people_mapping_nearby: אנשים ממפים בקרבת מקום + messages_table: from: מאת + to: אל subject: נושא date: תאריך - no_messages_yet_html: אין לך הודעות חדשות עדיין. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}? - people_mapping_nearby: אנשים ממפים בקרבת מקום + actions: פעולות message_summary: unread_button: סימון כ„לא נקרא” read_button: סימון כ„נקרא” reply_button: להשיב destroy_button: מחיקה + unmute_button: העברה לדואר הנכנס new: title: שליחת הודעה send_message_to_html: לשליחת הודעה חדשה אל %{name} @@ -1813,19 +1820,22 @@ he: no_such_message: title: אין הודעה כזאת heading: אין הודעה כזאת - body: אנו מצטערים, אין הודעה עם מזהה זה. + body: אנו מצטערים, אין הודעה עם המזהה הזה. outbox: title: תיבת דואר יוצא - my_inbox: תיבת הדואר הנכנס שלי - my_outbox: תיבת הדואר היוצא שלי + actions: פעולות messages: one: יש לך הודעה אחת שנשלחה other: יש לך %{count} הודעות שנשלחו - to: אל - subject: נושא - date: תאריך no_sent_messages_html: אין לך הודעות נשלחו עד כה. מה דעתך ליצור קשר עם %{people_mapping_nearby_link}? people_mapping_nearby: משתתפים הממפים בקרבת מקום + muted: + title: הודעות מושתקות + messages: + one: הודעה מושתקת + two: יש לך שתי הודעות מושתקות + many: יש לך %{count} הודעות מושתקות + other: יש לך %{count} הודעות מושתקות reply: wrong_user: נכנסת בשם „%{user}”, אבל ההודעה שביקשת להשיב עליה לא נשלחה לאותו המשתמש. נא להיכנס בחשבון הנכון כדי להשיב. @@ -1839,28 +1849,38 @@ he: נא להיכנס בחשבון הנכון כדי ללקרוא אותה. sent_message_summary: destroy_button: מחיקה + heading: + my_inbox: תיבת הדואר הנכנס שלי + my_outbox: תיבת הדואר היוצא שלי + muted_messages: הודעות מושתקות mark: as_read: ההודעה סומנה כהודעה שנקראה as_unread: ההודעה סומנה כהודעה שלא נקראה + unmute: + notice: הודעה הועברה לדואר הנכנס + error: אי־אפשר להעביר את ההודעה לדואר הנכנס. destroy: destroyed: ההודעה נמחקה passwords: - lost_password: + new: title: הסיסמה הלכה לאיבוד heading: שכחת סיסמה? email address: 'כתובת דוא״ל:' new password button: נא לשלוח לי סיסמה חדשה help_text: נא להזין את כתובת הדוא״ל שהשתמשת בה כדי להירשם. אנו נשלח אליה קישור שאפשר להשתמש בו כדי לאפס את סיסמתך. + create: notice email on way: אנו מצטערים לשמוע שאיבדת אותה :-( אבל נשלח לדואר האלקטרוני שלך מכתב שבאמצעותו אפשר לאפס אותה. notice email cannot find: סליחה, הכתובת הזאת לא נמצאה. - reset_password: + edit: title: איפוס סיסמה heading: איפוס הסיסמה עבור %{user} reset: איפוס הסיסמה - flash changed: סיסמתך שונתה. flash token bad: לא מצאנו את האסימון ההוא, אולי בדיקת הכתובת תעזור? + update: + flash changed: סיסמתך שונתה. + flash token bad: האסימון לא נמצא, אולי משהו עם הכתובת? preferences: show: title: ההעדפות שלי @@ -1963,6 +1983,7 @@ he: image: תמונה alt: טקסט חלופי url: כתובת URL + codeblock: קטע קוד richtext_field: edit: עריכה preview: תצוגה מקדימה @@ -2018,12 +2039,12 @@ he: partners_title: שותפים copyright: foreign: - title: אודות תרגום זה + title: אודות התרגום הזה html: במקרה של חוסר תאימות בין הדף המתורגם הזה לבין %{english_original_link}, הדף באנגלית הוא הקובע english_link: המקור באנגלית native: - title: אודות דף זה + title: אודות הדף הזה html: זהו דף זכויות היוצרים בגרסתו באנגלית. אפשר לחזור ל%{native_link} של הדף הזה, ואפשר גם להפסיק לקרוא על זכויות יוצרים ו%{mapping_link}. native_link: גרסה העברית @@ -2062,9 +2083,9 @@ he: credit_3_attribution_guidelines: הנחיות ייחוס credit_4_1_html: |- כדי להבהיר שהנתונים זמינים לפי תנאי רישיון מסד הנתונים הפתוח, באפשרותך לקשר ל%{this_copyright_page_link}. - לחלופין, וכדרישה אם OSM מופץ על־ידיך בצורת נתונים, באפשרותך לתת שם ולקשר ישירות לרישיון (או רישיונות). באמצעי אחסון שבהם קישורים אינם אפשריים (למשל עבודות מודפסות), אנו מציעים לך להפנות את הקוראים שלך לאתר openstreetmap.org (אולי על‏‏־ידי הרחבת - "OpenStreetMap" לכתובת המלאה הזאת) ולאתר opendatacommons.org. - בדוגמה הזאת, הקרדיט מופיע בפינת המפה. + לחלופין, וכדרישה אם OSM מופץ על־ידיך בצורת נתונים, אפשר לספק שם ולקשר ישירות לרישיון (או רישיונות). באמצעי אחסון שבהם קישורים אינם אפשריים (למשל עבודות מודפסות), אנו מציעים לך להפנות את הקוראים שלך לאתר openstreetmap.org (אולי על‏‏־ידי הרחבת + ‚OpenStreetMap’ לכתובת המלאה הזאת) ולאתר opendatacommons.org. + בדוגמה הזאת, התודות מופיעות בפינת המפה. credit_4_1_this_copyright_page: דף זכויות היוצרים הזה attribution_example: alt: דוגמה לצורה הנכונה לתת ייחוס ל־OpenStreetMap באתר האינטרנט @@ -2095,8 +2116,8 @@ he: contributors_at_cc_by_at_with_amendments: קריאייטיב קומונז ייחוס אוסטריה עם תיקונים contributors_au_credit_html: |- - %{australia}: משלבת או פותחה באמצעות גבולות ניהוליים © %{geoscape_australia_link} - ברישיון הקהילייה של אוסטרליה תחת %{cc_licence_link}. + %{australia}: משלבת או מפותחת באמצעות Administrative Boundaries‏ ©â€ %{geoscape_australia_link} + והרישיון ניתן על־ידי הקהילייה של אוסטרליה תחת %{cc_licence_link}. contributors_au_australia: אוסטרליה contributors_au_geoscape_australia: Geoscape אוסטרליה contributors_au_cc_licence: רישיון קריאייטיב קומונז ייחוס 4.0 בין־לאומי (CC @@ -2209,12 +2230,7 @@ he: הזאת. export: title: יצוא - area_to_export: האזור לייצוא manually_select: בחירה ידנית של אזור אחר - format_to_export: תסדיר לייצוא - osm_xml_data: נתוני XML של OpenStreetMap - map_image: תמונת מפה (תצוגת שכבה תקנית) - embeddable_html: HTML שניתן להטמעה licence: רישיון licence_details_html: נתוני OpenStreetMap מתפרסמים עכשיו לפי רישיון %{odbl_link} (ODbL). @@ -2236,17 +2252,6 @@ he: other: title: מקורות אחרים description: מקורות נוספים רשומים בוויקי של OpenStreetMap - options: אפשרויות - format: תסדיר - scale: קנה מידה - max: לכל היותר - image_size: גודל התמונה - zoom: מרחק מתצוגה - add_marker: הוספת סמן למפה - latitude: 'קווי אורך:' - longitude: 'קווי רוחב:' - output: פלט - paste_html: להדביק HTML להטמעה באתר export_button: יצוא fixthemap: title: לדווח על בעיה / לתקן את המפה @@ -2342,67 +2347,83 @@ he: primary: כביש ראשי secondary: כביש משני unclassified: דרך לא מסווגת + pedestrian: דרך להולכי רגל track: מסלול bridleway: מסלול לרכיבת סוסים cycleway: דרך לאופניים cycleway_national: מסלול אופניים לאומי cycleway_regional: מסלול אופניים אזורי cycleway_local: מסלול אופניים מקומי + cycleway_mtb: מסלול אופני הרים footway: שביל להולכי רגל rail: מסילת ברזל + train: רכבת subway: רכבת תחתית - tram: - - רכבת קלה - - חשמלית - cable: - - רכבל - - מעלית סקי - runway: - - מסלול נחיתה - - דרך למוניות - apron: - - רחבת חניה למטוסים - - מסוף + ferry: מעבורת + light_rail: רכבת קלה + tram: חשמלית + trolleybus: טרוליבוס + bus: אוטובוס + cable_car: רכבל + chair_lift: רכבל מושבים + runway: מסלול נחיתה + taxiway: מסלול הסעה + apron: רחבת חניה למטוסים admin: גבול שטח שיפוט + capital: בירה + city: עיר + orchard: מטע + vineyard: כרם forest: יער wood: חורשה + farmland: שטח חקלאי + grass: דשא + meadow: אחו + bare_rock: סלע חשוף + sand: חול golf: מסלול גולף park: פארק + common: מרעה + built_up: שטח בנוי resident: אזור מגורים - common: - - מרעה - - מרעה - - גן retail: אזור קמעונאי industrial: אזור תעשייה commercial: אזור מסחרי heathland: שדה פרא - lake: - - אגם - - מאגר + scrubland: בתה + lake: אגם + reservoir: מאגר + intermittent_water: גוף מים תקופתי + glacier: קרחון יבשתי + reef: שונית + wetland: ביצה farm: חווה brownfield: אזור תעשייה נטוש cemetery: בית עלמין allotments: שטחים חקלאיים pitch: מגרש ספורט centre: מרכז ספורט + beach: חוף reserve: שמורת טבע military: שטח צבאי - school: - - בית ספר - - אוניברסיטה + school: בית ספר + university: אוניברסיטה + hospital: בית חולים building: בניין בעל חשיבות station: תחנת רכבת - summit: - - פסגה - - פסגה + summit: פסגה + peak: פסגה tunnel: קו מקווקו = מנהרה bridge: קו שחור = גשר private: גישה פרטית destination: גישה ליעד construction: דרכים בבנייה + bus_stop: תחנת אוטובוס + stop: עצירה bicycle_shop: חנות אופניים + bicycle_rental: השכרת אופניים bicycle_parking: חניית אופניים + bicycle_parking_small: חניית אופניים קטנה toilets: שירותים welcome: title: ברוך בואך! @@ -2415,10 +2436,10 @@ he: הוא מכיל מיליוני מבנים, דרכים ופרטים אחרים על מקומות. אפשר למפות כל ישות מהעולם האמיתי שמעניינת אותך. real_and_current: אמיתיים ונוכחיים - off_the_map_html: מה ש%{doesnt} פה זה מידע דעתני כמו דירוגים, מקומות היסטוריים + off_the_map_html: מה ש%{doesnt} פה הוא מידע דעתני כמו דירוגים, מקומות היסטוריים או היפותטיים ונתונים ומקורות שמוגבלים בזכויות יוצרים. אנו דורשים ממך לא להוסיף מידע ממפות מקוונות או מודפסות אלא אם יש לך אישור מיוחד לכך. - doesnt: אינו + doesnt: לא נמצא basic_terms: title: מונחים בסיסיים למיפוי paragraph_1: למיזם OpenStreetMap יש עגה משלו. הינה כמה מילות מפתח שיהיו שימושיות. @@ -2554,7 +2575,7 @@ he: upload_trace: העלאת מסלול all_traces: כל המסלולים my_traces: המסלולים שלי - traces_from: מסלולים ציבוריים מ-%{user} + traces_from: מסלולים ציבוריים מאת %{user} remove_tag_filter: הסרת סינון לפי תג destroy: scheduled_for_deletion: מסלול מיועד למחיקה @@ -2590,6 +2611,7 @@ he: oauth1_settings: הגדרות OAuth 1 oauth2_applications: יישומי OAuth 2 oauth2_authorizations: אישורי OAuth 2 + muted_users: משתמשים מושתקים oauth: authorize: title: אישור הגישה לחשבון שלך @@ -2626,6 +2648,7 @@ he: read_gpx: לקרוא את מסלולי ה־GPS הפרטיים שלך write_gpx: להעלות מסלולי GPS write_notes: לשנות הערות + write_redactions: שינוי נתוני המפה read_email: לקרוא את כתובת הדוא"ל של המשתמש skip_authorization: לאשר את היישום אוטומטית oauth_clients: @@ -2730,7 +2753,7 @@ he: display name description: שם המשתמש שלך, שמוצג בפומבי. אפשר לשנות את זה בהעדפות שלך. external auth: 'אימות עם צד שלישי:' - use external auth: 'לחלופין, השתמשו בצד שלישי כדי להיכנס:' + use external auth: 'לחלופין, אפשר להשתמש בגורמי צד שלישי כדי להיכנס:' auth no password: עם אימות צד שלישי אין צורך בסיסמה, אבל כלים נוספים או שרת יכולים להזדקק לכזה. continue: הרשמה @@ -2738,15 +2761,16 @@ he: email_confirmation_help_html: הכתובת שלך אינה מוצגת בפומבי, ר' את %{privacy_policy_link} שלנו למידע נוסף. privacy_policy: מדיניות הפרטיות - privacy_policy_title: מדיניות הפרטיות של OSMF כולל סעיף על כתובות דוא"ל + privacy_policy_title: מדיניות הפרטיות של OSMF כוללת סעיף על כתובות דוא״ל terms: title: תנאים heading: תנאים heading_ct: תנאי התנדבות read and accept with tou: נא לקרוא את הסכם המתנדבים ואת תנאי השימוש, יש לסמן את שתי התיבות עם הסיום ואז ללחוץ על כפתור ההמשך. - contributor_terms_explain: הסכם זה מאגד את תנאי התרומות הקיימות והעתידיות שלך. - read_ct: קראתי את תנאי התורמים לעיל ואני מסכימ/ה לתנאים אלו + contributor_terms_explain: ההסכם הזה מגדיר את התנאים של התרומות הקיימות והעתידיות + שלך. + read_ct: קראתי את תנאי התורמים לעיל והסכמתי איתם tou_explain_html: '%{tou_link} האלה מאגדים את תנאי השימוש באתר ובתשתית נוספת שמסופקת על־ידי ה־OSMF. נא ללחוץ על הקישור, לקרוא ולהסכים לטקסט.' read_tou: קראתי את תנאי השימוש ואני מסכימ/ה לתנאים אלו @@ -2790,6 +2814,8 @@ he: my_dashboard: לוח הבקרה שלי blocks on me: מתי חסמו אותי blocks by me: מתי חסמתי + create_mute: השתקת המשתמש הזה + destroy_mute: ביטול השתקת המשתמש הזה edit_profile: עריכת פרופיל send message: שליחת הודעה diary: יומן @@ -2808,28 +2834,29 @@ he: status: 'מצב:' spam score: 'דירוג זיבול:' role: - administrator: לחשבון הזה יש הרשאות מפעיל - moderator: זהו חשבון מנהל - importer: המשתמש הזה הוא מייבא + administrator: לחשבון הזה יש הרשאות מנהל + moderator: זהו חשבון מפקח + importer: זהו חשבון מייבא grant: - administrator: הענקת הרשאות מפעיל - moderator: הענקת הרשאות מנהל - importer: הענקת גישת מייבא + administrator: הענקת הרשאות מנהל + moderator: הענקת הרשאות מפקח + importer: הענקת הרשאות מייבא revoke: - administrator: שלילת הרשאות מפעיל - moderator: שלילת הרשאות מנהל - importer: שלילת גישת מייבא + administrator: שלילת הרשאות מנהל + moderator: שלילת הרשאות מפקח + importer: שלילת הרשאות מייבא block_history: חסימות פעילות moderator_history: חסימות שניתנו + 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: @@ -2870,7 +2897,7 @@ he: not_a_role: המחרוזת „%{role}” אינה תפקיד תקין. already_has_role: למשתמש כבר יש תפקיד %{role}. doesnt_have_role: למשתמש אין תפקיד %{role}. - not_revoke_admin_current_user: לא ניתן לשלול הרשאות מפעיל מהמשתמש הנוכחי. + not_revoke_admin_current_user: לא ניתן לשלול הרשאות מנהל מהמשתמש הנוכחי. grant: title: לאשר הענקת תפקיד heading: לאשר הענקת תפקיד @@ -2887,8 +2914,8 @@ he: תקינים. user_blocks: model: - non_moderator_update: צריך להיות מנהל כדי ליצור או לעדכן חסימה. - non_moderator_revoke: צריך להיות מנהל כדי לבטל חסימה. + non_moderator_update: צריך להיות מפקח כדי ליצור או לעדכן חסימה. + non_moderator_revoke: צריך להיות מפקח כדי לבטל חסימה. not_found: sorry: סליחה, החסימה עם המזהה %{id} לא נמצאה. back: חזרה למפתח @@ -2909,7 +2936,7 @@ he: create: flash: נוצרה חסימה על חשבון %{name} update: - only_creator_can_edit: רק המנהל שיצר את החסימה הזאת יכול לערוך אותה. + only_creator_can_edit: רק המפקח שיצר את החסימה הזאת יכול לערוך אותה. success: החסימה עודכנה. index: title: חסימות משתמש @@ -2923,6 +2950,18 @@ he: confirm: האם ברצונך לבטל את החסימה הזאת? revoke: לבטל! flash: החסימה הזאת בוטלה. + 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: פעילה עד שהמשתמש ייכנס לחשבון. @@ -2990,6 +3029,32 @@ he: showing_page: הדף %{page} next: הבא » previous: « הקודם + user_mutes: + index: + title: משתמשים מושתקים + my_muted_users: המשתמשים המושתקים שלי + you_have_muted_n_users: + one: השתקת משתמש אחד + two: השתקת שני משתמשים + many: השתקת %{count} משתמשים + other: השתקת %{count} משתמשים + user_mute_explainer: הודעות של משתמשים מושתקים מועברות לתיבת דואר נפרדת ולא + תישלחנה אליך התראות בדוא״ל. + user_mute_admins_and_moderators: אפשר להשתיק מנהלים ומפקחים אבל ההודעות שלהם + לא יושתקו. + table: + thead: + muted_user: משתמש מושתק + actions: פעולות + tbody: + unmute: ביטול השתקה + send_message: שליחת הודעה + create: + notice: השתקת את %{name}. + error: לא היה אפשר להשתיק את %{name}.‏ %{full_message} + destroy: + notice: ביטלת את ההשתקה של %{name}. + error: לא היה אפשר לבטל את השתקת המשתמש. נא לנסות שוב. notes: index: title: הערות ותגובות של %{user} @@ -3026,6 +3091,7 @@ he: reactivate: הפעלה מחדש comment_and_resolve: להגיב ולפתור comment: להגיב + log_in_to_comment: יש להיכנס כדי להגיב על ההערה הזאת report_link_html: אם ההערה הזאת מכילה מידע רגיש שיש להסיר, אפשר %{link}. other_problems_resolve: עבור כל שאר הבעיות עם ההערה, נא לפתור אותה בעצמך באמצעות הערה. @@ -3113,10 +3179,10 @@ he: edit_disabled_tooltip: להתקרב כדי לערוך את המפה createnote_tooltip: הוספת הערה למפה createnote_disabled_tooltip: נא להתקרב כדי להוסיף הערה למפה - map_notes_zoom_in_tooltip: התקרבות כדי לראות הערות על המפה - map_data_zoom_in_tooltip: יש לקרב את המפה כדי לראות נתוני מפה + map_notes_zoom_in_tooltip: יש להתקרב כדי לראות הערות על המפה + map_data_zoom_in_tooltip: יש להתקרב כדי לראות נתוני מפה queryfeature_tooltip: שאילתת ישויות - queryfeature_disabled_tooltip: תקריב כדי להריץ שאילתת ישויות + queryfeature_disabled_tooltip: יש להתקרב כדי להריץ שאילתת ישויות embed_html_disabled: הטבעת HTML אינה זמינה בשכבת המפה הזאת changesets: show: diff --git a/config/locales/hi.yml b/config/locales/hi.yml index b9ade6469..3d457f3ce 100644 --- a/config/locales/hi.yml +++ b/config/locales/hi.yml @@ -930,10 +930,10 @@ hi: destroy: destroyed: संदेश खात्मा passwords: - lost_password: + new: title: lost password new password button: Send me a new password - reset_password: + edit: title: reset password profiles: edit: @@ -954,9 +954,7 @@ hi: contributors_title_html: हमारे योगदानकर्ता contributors_rs_serbia: सर्बिया export: - area_to_export: क्षेत्र निर्यात करने के लिए manually_select: कृपया, आप एक अलग क्षेत्र चुनिए - format_to_export: स्वरूप निर्यात करने के लिए licence: लाइसेंस fixthemap: how_to_help: @@ -983,26 +981,27 @@ hi: footway: पगडंडी rail: रेलवे subway: उपमार्ग - cable: - - केबल कार - runway: - - एयरपोर्ट रनवे + bus: बस + cable_car: केबल कार + runway: एयरपोर्ट रनवे forest: वन wood: लकड़ी + grass: घास + sand: रेत golf: गोल्फ मैदान park: पार्क resident: रिहायशी क्षेत्र industrial: औद्योगिक क्षेत्र - lake: - - झील + lake: झील farm: खेत cemetery: कब्रिस्तान allotments: आवंटन - school: - - पाठशाला - - विश्वविद्यालय + school: पाठशाला + university: विश्वविद्यालय + hospital: अस्पताल building: महत्वपूर्ण भवन station: रेलवे स्टेशन + stop: रोकें traces: new: visibility_help: इसका क्या मतलब है? diff --git a/config/locales/hr.yml b/config/locales/hr.yml index c497084f0..b6d934a7a 100644 --- a/config/locales/hr.yml +++ b/config/locales/hr.yml @@ -1135,7 +1135,6 @@ hr: messages: inbox: title: Dolazna poÅ¡ta - my_inbox: Dolazna poÅ¡ta messages: Imate %{new_messages} i %{old_messages} new_messages: one: '%{count} nova poruka' @@ -1143,12 +1142,14 @@ hr: old_messages: one: '%{count} stara poruka' other: '%{count} stare poruke' - from: Od - subject: Tema - date: Datum 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 @@ -1171,9 +1172,6 @@ hr: messages: one: Imate %{count} poslanu poruku other: Imate %{count} poslane poruke - to: Za - subject: Tema - date: Datum 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 @@ -1192,28 +1190,32 @@ hr: 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 passwords: - lost_password: + new: title: Izgubljena zaporka heading: Zaboravljena zaporka? email address: 'Email adresa:' new password button: Reset lozinke help_text: Unesite email adresu koju ste koristili za otvaranje računa i poslati ćemo vam poveznicu kojom možete resetirati zaporku. + create: notice email on way: Žao mi je Å¡to ste je izgubili :-( ali email je na putu tako da je možete resetirati uskoro. notice email cannot find: Ne mogu pronaći email adresu. - reset_password: + edit: title: Reset lozinke heading: Reset lozinke za %{user} reset: Reset lozinke - flash changed: VaÅ¡a lozinka je promjenjena. flash token bad: Nije pronađen takav token, provjeri URL? + update: + flash changed: VaÅ¡a lozinka je promjenjena. profiles: edit: image: 'Slika:' @@ -1343,12 +1345,7 @@ hr: ovu mogućnost. export: title: Izvoz - area_to_export: Područje za izvoz manually_select: Ručno izaberi drukčije područje - format_to_export: Format za izvoz - osm_xml_data: OpenStreetMap XML podaci - map_image: Slika karte (prikazuje standardni sloj) - embeddable_html: HTML kod za umetanje licence: Dozvola too_large: advice: 'Ako gornji izvoz podataka ne uspije, molim pokuÅ¡aj sa nekim od izvora @@ -1370,17 +1367,6 @@ hr: other: title: Drugi izvori description: Dodatni izvori su navedeni na wiki stranici OpenStreetMap-a - options: Opcije - format: Format - scale: Mjerilo - max: max - image_size: Veličina slike - zoom: Približenje - add_marker: Dodaj marker na kartu - latitude: 'Lat:' - longitude: 'Lon:' - output: Izlaz - paste_html: Zalijepi HTML za ugrađivanje na web stranicu export_button: Export help: welcome: @@ -1423,34 +1409,24 @@ hr: footway: PjeÅ¡ačka staza rail: Željeznica subway: Podzemna željeznica - tram: - - Laka željeznica - - tramvaj - cable: - - Kabinska žičara - - sedežnica - runway: - - Aerodromska pista - - aerodromske ceste (za avione) - apron: - - Parking za avione (apron) - - terminal + cable_car: Kabinska žičara + chair_lift: sedežnica + runway: Aerodromska pista + taxiway: aerodromske ceste (za avione) + apron: Parking za avione (apron) admin: Administrativna granica forest: Å uma (održavane, od Å¡umarije) wood: Å ume (prirodne, neodržavane) golf: Golf teren park: Park + common: Travnjaci resident: Stambeno područje - common: - - Travnjaci - - livade retail: Maloprodajno područje industrial: Industrijsko područje commercial: Poslovno područje heathland: GustiÅ¡, makija, grmlje - lake: - - Jezero - - rezervoar + lake: Jezero + reservoir: rezervoar farm: Polja, farme, njive brownfield: GradiliÅ¡te cemetery: Groblje @@ -1459,14 +1435,12 @@ hr: centre: Sportski centar reserve: Rezervat prirode military: Vojno područje - school: - - Å kola - - SveučiliÅ¡te + school: Å kola + university: SveučiliÅ¡te building: Zgrada station: Željeznički kolodvor - summit: - - Vrh - - vrhunac + summit: Vrh + peak: vrhunac tunnel: Iscrtkani rubovi = tunel bridge: Crni rubovi = most private: Privatni pristup diff --git a/config/locales/hsb.yml b/config/locales/hsb.yml index caa9f5276..14887dc76 100644 --- a/config/locales/hsb.yml +++ b/config/locales/hsb.yml @@ -1363,9 +1363,9 @@ hsb: zero: Žane rozprawy one: Jedna rozprawa other: '%{count} rozprawje' - report_created_at: Prěni raz rozprawjene dnja %{datetime} - last_resolved_at: Posledni raz rozrisany dnja %{datetime} - last_updated_at: Posledni raz aktualizowany dnja %{datetime} wot %{displayname} + report_created_at_html: Prěni raz rozprawjene dnja %{datetime} + last_resolved_at_html: Posledni raz rozrisany dnja %{datetime} + last_updated_at_html: Posledni raz aktualizowany dnja %{datetime} wot %{displayname} resolve: Rozrisać ignore: Ignorować reopen: Zaso wočinić @@ -1635,8 +1635,6 @@ hsb: messages: inbox: title: Póštowy kašćik - my_inbox: Moja póšta - my_outbox: Mój póstowy wuchad messages: MaÅ¡ %{new_messages} a %{old_messages} new_messages: few: '%{count} nowe powěsće' @@ -1648,12 +1646,14 @@ hsb: one: '%{count} staru powěsć' two: '%{count} starej powěsći' other: '%{count} starych powěsćow' - from: Wot - subject: Tema - date: Datum 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 message_summary: unread_button: Jako njepřečitanu markěrować read_button: Jako přečitanu markěrować @@ -1673,16 +1673,11 @@ hsb: body: Bohužel njeje powěsć z tutej ID. outbox: title: Pósłane - my_inbox: Mój póstowy dochad - my_outbox: Mój póstowy wuchad 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) - to: Komu - subject: Tema - date: Datum 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 @@ -1699,28 +1694,33 @@ hsb: 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 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 passwords: - lost_password: + new: title: Hesło zabyte heading: Sy hesło zabył? email address: 'E-mejlowa adresa:' new password button: Hesło wróćo stajić help_text: Zapódaj mejlowu adresu, kotruž sy za registrowanje wužił, pósćelemy wotkaz na nju, kotryž móžeÅ¡ za wróćostajenje hesła wužić. + create: notice email on way: Sy jo zabył :-(, ale e-mejl je po puću, zo by móhł jo borze wróćo stajić. notice email cannot find: Wodaj, ale njemóžachmy tutu e-mejlowu adresu namakać. - reset_password: + edit: title: Hesło wróćo stajić heading: Hesło za wužiwarja %{user} wróćo stajić reset: Hesło wróćo stajić - flash changed: Twoje hesło je so změniło. flash token bad: Njemóžachmy tutón kod namakać, proÅ¡u přepruwuj URL. + update: + flash changed: Twoje hesło je so změniło. preferences: show: title: Moje nastajenja @@ -1889,12 +1889,7 @@ hsb: tutu funkciju trěbne. export: title: Eksportować - area_to_export: Wobłuk za eksport manually_select: Druhi wobłuk manuelnje wubrać - format_to_export: Format za eksport - osm_xml_data: OpenStreetMap XML-daty - map_image: Kartowy wobraz (pokazuje standardnu runinu) - embeddable_html: Zasadźujomny HTML licence: Licenca too_large: advice: 'Jeli horni eksport so njeradźi, proÅ¡u wuwaž, hač wužiwaÅ¡ jednu ze @@ -1917,17 +1912,6 @@ hsb: other: title: Druhe žórła description: Přidatne žórła nalistowane na wikiju OpenStreetMap - options: Opcije - format: 'Format:' - scale: Měritko - max: maks. - image_size: 'Wobrazowa wulkosć:' - zoom: Skalowanje - add_marker: Marku karće přidać - latitude: 'Šěrokostnik:' - longitude: 'Dołhostnik:' - output: Wudaće - paste_html: HTML-kod kopěrować, zo by so do websydła zasunył export_button: Eksport fixthemap: title: Problem zdźělić / Kartu poprawić @@ -2007,34 +1991,24 @@ hsb: footway: Chódnik rail: Železnica subway: Podzemska železnica - tram: - - Měšćanska železnica - - nadróžna - cable: - - Kablowa nadróžna - - sydłowy lift - runway: - - Přizemišćo - - lětadłowa jězdnja - apron: - - Lětanišćowe předpolo - - terminal + cable_car: Kablowa nadróžna + chair_lift: sydłowy lift + runway: Přizemišćo + taxiway: lětadłowa jězdnja + apron: Lětanišćowe předpolo admin: Zarjadniska hranica forest: Hajina wood: Lěs golf: Golfownišćo park: Park + common: PowÅ¡itkowny resident: Bydlenski wobwod - common: - - PowÅ¡itkowny - - łuka retail: Nakupowanišćo industrial: Industrijowa kónčina commercial: Přemysłowa kónčina heathland: Hola - lake: - - Jězor - - spjaty jězor + lake: Jězor + reservoir: spjaty jězor farm: Farma brownfield: Industrijowe lado cemetery: Kěrchow @@ -2043,14 +2017,12 @@ hsb: centre: Sportowy centrum reserve: PřirodoÅ¡kitne pasmo military: Wojerske pasmo - school: - - Å ula - - uniwersita + school: Å ula + university: uniwersita building: Wuznamne twarjenje station: Dwórnišćo - summit: - - WjerÅ¡k - - kónčk hory + summit: WjerÅ¡k + peak: kónčk hory tunnel: Smužkowana kroma = tunl bridge: Čorna kroma = móst private: Priwatny přistup diff --git a/config/locales/hu.yml b/config/locales/hu.yml index c87f3904f..1aa9661f5 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -73,6 +73,9 @@ hu: messages: invalid_email_address: nem tűnik érvényes e-mail-címnek email_address_not_routable: nem irányítható + models: + user_mute: + is_already_muted: már el van némítva models: acl: Hozzáférés-szabályzási lista changeset: Módosításcsomag @@ -1468,9 +1471,9 @@ hu: one: '%{count} bejelentés' other: '%{count} bejelentés' no_reports: Nincs bejelentés - report_created_at: Először bejelentve %{datetime} időpontban - last_resolved_at: Utoljára megoldva %{datetime} időpontban - last_updated_at: Utoljára frissítve %{displayname} által %{datetime} időpontban + report_created_at_html: Először bejelentve %{datetime} időpontban + last_resolved_at_html: Utoljára megoldva %{datetime} időpontban + last_updated_at_html: Utoljára frissítve %{displayname} által %{datetime} időpontban resolve: Megoldás ignore: Figyelmen kívül hagyás reopen: Újramegnyitás @@ -1746,8 +1749,6 @@ hu: messages: inbox: title: Beérkezett üzenetek - my_inbox: Beérkezett üzenetek - my_outbox: Elküldött üzenetek messages: '%{new_messages} és %{old_messages} van' new_messages: one: 1 új üzeneted @@ -1755,17 +1756,21 @@ hu: old_messages: one: 1 régi üzeneted other: '%{count} régi üzeneted' - from: Feladó - subject: Tárgy - date: Érkezett 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 reply_button: Válasz 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}' @@ -1780,17 +1785,15 @@ hu: body: Sajnáljuk, nincs ilyen azonosítójú üzenet. outbox: title: Elküldött üzenetek - my_inbox: Beérkezett üzenetek - my_outbox: Elküldött üzenetek + actions: Műveletek messages: one: Egy elküldött üzeneted van other: '%{count} elküldött üzeneted van' - to: Címzett - subject: Tárgy - date: Elküldve 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 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 @@ -1806,28 +1809,36 @@ hu: 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 + unmute: + notice: Az üzenet átkerült a Beérkezett üzenetek mappába destroy: destroyed: Üzenet törölve passwords: - lost_password: + new: title: Elvesztett jelszó heading: Elfelejtetted jelszavad? email address: 'E-mail-cím:' new password button: Jelszó alaphelyzetbe állítása help_text: Add meg az e-mail-címed, amellyel regisztráltál. Küldeni fogunk egy hivatkozást, amellyel visszaállíthatod a jelszavad. + create: notice email on way: Sajnáljuk, hogy elvesztetted :-( de már úton van egy e-mail, így nemsokára alaphelyzetbe állíthatod. notice email cannot find: Sajnáljuk, az e-mail-cím nem található. - reset_password: + edit: title: Jelszó alaphelyzetbe állítása heading: '%{user} jelszavának alaphelyzetbe állítása' reset: Jelszó alaphelyzetbe állítása - flash changed: Jelszavad megváltozott. flash token bad: Nem találtad meg a tokent? Esetleg ellenőrizd az URL-t. + update: + flash changed: Jelszavad megváltozott. preferences: show: title: Megjelenési beállítások @@ -1862,6 +1873,7 @@ hu: no home location: Nem adtad meg az otthonod helyét. update home location on click: Frissüljön-e az otthonom helye, amikor a térképre kattintok? + show: Megjelenítés delete: Törlés undelete: Törlés visszavonása update: @@ -2062,9 +2074,17 @@ hu: contributors_au_australia: Ausztrália contributors_au_geoscape_australia: Geoscape Australia contributors_ca_canada: Kanada + contributors_cz_czechia: Csehország + contributors_fi_finland: Finnország + contributors_fr_france: Franciaország + contributors_nl_netherlands: Hollandia + contributors_nz_new_zealand: Új-Zéland + contributors_rs_serbia: Szerbia contributors_si_slovenia: Szlovénia + contributors_si_mkgp: Mezőgazdasági, Erdészeti és Élelmiszerügyi Minisztérium contributors_es_spain: Spanyolország contributors_es_cc_by: CC BY 4.0 + contributors_za_south_africa: Dél-Afrika contributors_gb_united_kingdom: Egyesült Királyság contributors_footer_2_html: Az adatok befoglalása az OpenStreetMapbe nem jelenti azt, hogy az eredeti adatszolgáltató támogatja az OpenStreetMapet, garanciát @@ -2074,6 +2094,7 @@ hu: ne adjanak hozzá adatokat egyetlen szerzői jogvédett forrásból se (pl. Google Térkép vagy nyomtatott térképek) a szerzői jog tulajdonosának kifejezett engedélye nélkül. + trademarks_title: Védjegyek index: js_1: Vagy egy olyan böngészőt használsz, amely nem támogatja a JavaScriptet, vagy letiltottad a JavaScriptet. @@ -2096,12 +2117,7 @@ hu: funkcióhoz szükséges. export: title: Exportálás - area_to_export: Exportálandó terület manually_select: Más terület kézi kijelölése - format_to_export: Exportálás formátuma - osm_xml_data: OpenStreetMap XML adatok - map_image: Térkép képe (az alapréteget jeleníti meg) - embeddable_html: Beágyazható HTML licence: Licenc licence_details_html: Az OpenStreetMap adatokra az %{odbl_link} (ODbL) licenc vonatkozik. @@ -2126,17 +2142,6 @@ hu: other: title: Más források description: További források az OpenStreetMap wiki oldalán találhatók - options: Beállítások - format: 'Formátum:' - scale: Méretarány - max: max. - image_size: Képméret - zoom: Nagyítási szint - add_marker: Jelölő hozzáadása a térképhez - latitude: 'Földrajzi szélesség:' - longitude: 'Földrajzi hosszúság:' - output: Kimenet - paste_html: Webhelyekbe való beágyazáshoz illeszd be a HTML kódot export_button: Exportálás fixthemap: title: Probléma bejelentése / Térkép javítása @@ -2149,6 +2154,7 @@ hu: és kijavítod az adatot saját magad. other_concerns: title: Egyéb aggályok + copyright: szerzői jogi oldal help: title: Segítségkérés introduction: Az OpenStreetMap számos anyagot kínál fel ahhoz, hogy ismerkedj @@ -2191,6 +2197,7 @@ hu: potlatch: removed: Az alapértelmezett szerkesztőd a Potlatch. Mivel az Adobe Flash Playert visszavonták, a Potlatch webböngészőben már nem futtatható. + change_preferences: Itt módosíthatja beállításait any_questions: title: Kérdésed van? paragraph_1_html: |- @@ -2221,67 +2228,83 @@ hu: primary: Főút secondary: Összekötő út unclassified: Egyéb út + pedestrian: Sétálóutca track: Mezőgazdasági/erdészeti út bridleway: Lovaglóút cycleway: Kerékpárút cycleway_national: Országos kerékpárút cycleway_regional: Regionális kerékpárút cycleway_local: Helyi kerékpárút + cycleway_mtb: Hegyikerékpáros útvonal footway: Gyalogút rail: Vasút + train: Vonat subway: Metró - tram: - - HÉV - - villamos - cable: - - Nagykabinos felvonó - - függőszékes felvonó - runway: - - Kifutópálya - - gurulóút - apron: - - Forgalmi előtér - - utasterminál + ferry: Komp + light_rail: HÉV + tram: Villamos + trolleybus: Trolibusz + bus: Busz + cable_car: Nagykabinos felvonó + chair_lift: Ülőlift + runway: Kifutópálya + taxiway: Gurulóút + apron: Forgalmi előtér admin: Közigazgatási határ + capital: Főváros + city: Nagyváros + orchard: Gyümölcsös + vineyard: Szőlő forest: Erdő - wood: Erdő + wood: Természetes erdő + farmland: Mezőgazdasági terület + grass: Fű + meadow: Rét + bare_rock: Csupasz szikla + sand: Homok golf: Golfpálya park: Park + common: Füves terület + built_up: Beépített terület resident: Gyalogos övezet - common: - - Füves terület - - rét - - kert retail: Kereskedelmi terület industrial: Ipari terület commercial: Kereskedelmi terület heathland: Fenyér - lake: - - Tó - - víztározó + scrubland: Bozót + lake: Tó + reservoir: Víztározó + intermittent_water: Időszakos víztest + glacier: Gleccser + reef: Zátony + wetland: Vizenyős terület farm: Tanya brownfield: Bontási terület cemetery: Temető allotments: Kiskertek pitch: Sportpálya centre: Sportközpont + beach: Természetes strand reserve: Természetvédelmi terület military: Katonai terület - school: - - Iskola - - egyetem + school: Iskola; egyetem + university: Egyetem + hospital: Kórház building: Fontosabb épület station: Vasútállomás - summit: - - Hegycsúcs - - magaslat + summit: Hegycsúcs + peak: Hegycsúcs tunnel: Szaggatott szegély = alagút bridge: Fekete szegély = híd private: Behajtás csak engedéllyel destination: Csak célforgalom construction: Épülő utak + bus_stop: Buszmegálló + stop: Megálló bicycle_shop: Kerékpárbolt + bicycle_rental: Kerékpárkölcsönzés bicycle_parking: Kerékpártároló + bicycle_parking_small: Kis kerékpártároló toilets: WC welcome: title: Üdvözlünk! @@ -2323,6 +2346,7 @@ hu: imports: Importálások automated_edits: automatizált szerkesztések start_mapping: Térképezés indítása + continue_authorization: Engedélyezés folytatása add_a_note: title: Nincs időd szerkeszteni? Küldj be jegyzetet! para_1: Ha valami apróságot szeretnél kijavíttatni és nincs időd regisztrálni @@ -2350,6 +2374,7 @@ hu: list_text: 'A következő közösségek hivatalosan is Helyi Csoportként működnek:' other_groups: title: Más csoportok + communities_wiki: Közösségek wikioldala traces: visibility: private: Magán (megosztva csak névtelenül, rendezetlen pontok) @@ -2471,6 +2496,7 @@ hu: oauth1_settings: OAuth 1 beállítások oauth2_applications: OAuth 2 alkalmazások oauth2_authorizations: OAuth 2 engedélyek + muted_users: Elnémított felhasználók oauth: authorize: title: A fiókodhoz való hozzáférés engedélyezése @@ -2669,6 +2695,8 @@ hu: my_dashboard: Irányítópult blocks on me: Engem sújtó blokkolások blocks by me: Általam kiosztott blokkolások + create_mute: Felhasználó elnémítása + destroy_mute: Felhasználó elnémításának feloldása edit_profile: Profil szerkesztése send message: Üzenet küldése diary: Napló @@ -2678,6 +2706,7 @@ hu: remove as friend: Ismerős eltávolítása add as friend: Felvétel ismerősnek mapper since: 'Térképszerkesztő ezóta:' + uid: 'Felhasználói azonosító:' ct status: 'Hozzájárulási feltételek:' ct undecided: Nem eldöntött ct declined: Elutasítva @@ -2688,12 +2717,15 @@ hu: role: administrator: Ez a felhasználó adminisztrátor moderator: Ez a felhasználó moderátor + importer: Ez a felhasználó importálhat grant: administrator: Adminisztrátori hozzáférés megadása moderator: Moderátori hozzáférés megadása + importer: Importálási jog megadása revoke: administrator: Adminisztrátori hozzáférés visszavonása moderator: Moderátori hozzáférés viszzavonása + importer: Importálási hozzáférés visszavonása block_history: Aktív blokkolások moderator_history: Kiosztott blokkolások comments: Hozzászólások @@ -2861,6 +2893,19 @@ hu: showing_page: '%{page}. oldal' next: Következő » previous: « Előző + user_mutes: + index: + title: Elnémított felhasználók + my_muted_users: Elnémított felhasználóim + table: + thead: + muted_user: Elnémított felhasználó + actions: Műveletek + tbody: + unmute: Némítás feloldása + send_message: Üzenet küldése + create: + notice: 'Elnémítottad őt: %{name}.' notes: index: title: '%{user} által beküldött vagy kommentált jegyzetek' @@ -2974,6 +3019,7 @@ hu: map_data_zoom_in_tooltip: Nagyítsd fel a térképet a térképadatok megjelenítéséhez queryfeature_tooltip: Objektumok lekérdezése queryfeature_disabled_tooltip: Objektumok lekérdezéséhez nagyíts a térképre + embed_html_disabled: Ezen a térképrétegen nem lehet HTML-t beágyazni changesets: show: comment: Hozzászólás diff --git a/config/locales/ia.yml b/config/locales/ia.yml index 5281dd4ab..3493cc9b1 100644 --- a/config/locales/ia.yml +++ b/config/locales/ia.yml @@ -1468,9 +1468,9 @@ ia: one: '%{count} reporto' other: '%{count} reportos' no_reports: Nulle reporto - report_created_at: 'Prime reporto: %{datetime}' - last_resolved_at: 'Ultime resolution: %{datetime}' - last_updated_at: 'Ultime actualisation: %{datetime} per %{displayname}' + report_created_at_html: 'Prime reporto: %{datetime}' + last_resolved_at_html: 'Ultime resolution: %{datetime}' + last_updated_at_html: 'Ultime actualisation: %{datetime} per %{displayname}' resolve: Resolver ignore: Ignorar reopen: Reaperir @@ -1758,8 +1758,6 @@ ia: messages: inbox: title: Cassa de entrata - my_inbox: Mi cassa de entrata - my_outbox: Mi cassa de exito messages: Tu ha %{new_messages} e %{old_messages} new_messages: one: '%{count} nove message' @@ -1767,12 +1765,14 @@ ia: old_messages: one: '%{count} ancian message' other: '%{count} ancian messages' - from: De - subject: Subjecto - date: Data 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 message_summary: unread_button: Marcar como non legite read_button: Marcar como legite @@ -1792,14 +1792,9 @@ ia: body: Non existe un message con iste ID. outbox: title: Cassa de exito - my_inbox: Mi cassa de entrata - my_outbox: Mi cassa de exito messages: one: Tu ha %{count} message inviate other: Tu ha %{count} messages inviate - to: A - subject: Subjecto - date: Data no_sent_messages_html: Tu non ha ancora inviate alcun message. Proque non contactar alcun %{people_mapping_nearby_link}? people_mapping_nearby: cartographos vicin @@ -1818,26 +1813,32 @@ ia: 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 mark: as_read: Message marcate como legite as_unread: Message marcate como non legite destroy: destroyed: Message delite passwords: - lost_password: + new: title: Contrasigno perdite heading: Contrasigno oblidate? email address: 'Adresse de e-mail:' new password button: Reinitialisar contrasigno help_text: Entra le adresse de e-mail que tu usava pro inscriber te, e nos te inviara un ligamine que tu pote usar pro reinitialisar tu contrasigno. + create: notice email on way: Es infortunate que tu lo perdeva :-( ma nos te ha inviate un e-mail que te permittera de reinitialisar lo. notice email cannot find: Non poteva trovar iste adresse de e-mail, pardono. - reset_password: + edit: title: Reinitialisar contrasigno heading: Reinitialisar le contrasigno de %{user} reset: Reinitialisar contrasigno + flash token bad: Token non trovate. Verifica le URL. + update: flash changed: Tu contrasigno ha essite cambiate. flash token bad: Token non trovate. Verifica le URL. preferences: @@ -2180,12 +2181,7 @@ ia: iste functionalitate. export: title: Exportar - area_to_export: Area a exportar manually_select: Seliger manualmente un altere area - format_to_export: Formato de exportation - osm_xml_data: Datos XML de OpenStreetMap - map_image: Imagine de carta (monstra le strato standard) - embeddable_html: HTML incorporabile licence: Licentia licence_details_html: Le datos de OpenStreetMap data es sub licentia %{odbl_link} (ODbL). @@ -2211,17 +2207,6 @@ ia: other: title: Altere fontes description: Fontes additional listate in le wiki de OpenStreetMap - options: Optiones - format: 'Formato:' - scale: Scala - max: max - image_size: 'Dimension del imagine:' - zoom: Zoom - add_marker: Adder un marcator al carta - latitude: 'Lat:' - longitude: 'Lon:' - output: Resultato - paste_html: Colla HTML pro incorporar in sito web export_button: Exportar fixthemap: title: Reportar un problema / Corriger le carta @@ -2330,36 +2315,44 @@ ia: cycleway_local: Pista cyclabile local footway: Sentiero pro pedones rail: Ferrovia + train: Traino subway: Metro - tram: - - Ferrovia legier - - tram - cable: - - Telepherico - - Telesedia - runway: - - Pista de aeroporto - - via de circulation pro aviones - apron: - - Platteforma pro aviones - - terminal + ferry: Ferry-boat + light_rail: Ferrovia legier + tram: Tram + trolleybus: Trolleybus + bus: Autobus + cable_car: Telepherico + chair_lift: Telesedia + runway: Pista de aeroporto + taxiway: Via de circulation pro aviones + apron: Platteforma pro aviones admin: Limite administrative + orchard: Verdiero + vineyard: Vinia forest: Foreste wood: Bosco + farmland: Terra agricole + grass: Herba + meadow: Prato + bare_rock: Rocca nude + sand: Sablo golf: Percurso de golf park: Parco + common: Commun + built_up: Area edificate resident: Area residential - common: - - Commun - - prato - - jardin retail: Zona de commercio al detalio industrial: Area industrial commercial: Area commercial heathland: Landa - lake: - - Laco - - bassino + scrubland: Terreno de brossas + lake: Laco + reservoir: Reservoir + intermittent_water: Massa de aqua intermittente + glacier: Glaciero + reef: Scolio + wetland: Terra humide farm: Ferma brownfield: Terra in reposo cemetery: Cemeterio @@ -2368,19 +2361,20 @@ ia: centre: Centro de sport reserve: Reserva natural military: Area militar - school: - - Schola - - universitate + school: Schola + university: Universitate + hospital: Hospital building: Edificio significante station: Station ferroviari - summit: - - Summitate - - picco + summit: Summitate + peak: Picco tunnel: Bordo a lineettas = tunnel bridge: Bordo nigre = ponte private: Accesso private destination: Traffico local construction: Vias in construction + bus_stop: Halto de autobus + stop: Halto bicycle_shop: Magazin de bicyclettas bicycle_parking: Parcamento de bicyclettas toilets: Toilettes @@ -2424,6 +2418,7 @@ ia: imports: Importationes automated_edits: Modificationes automatisate start_mapping: comenciar le cartographia + continue_authorization: Continuar autorisation add_a_note: title: Non ha tempore pro modificar? Adde un nota! para_1: Si tu vole meliorar un micre cosa e non ha le tempore pro crear un @@ -3117,6 +3112,8 @@ ia: map_data_zoom_in_tooltip: Face zoom avante pro vider le datos del carta queryfeature_tooltip: Cercar objectos queryfeature_disabled_tooltip: Face zoom avante pro cercar objectos + embed_html_disabled: Le incastration de HTML non es disponibile pro iste strato + cartographic changesets: show: comment: Commento diff --git a/config/locales/id.yml b/config/locales/id.yml index 14b330837..b1be472c6 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -1461,9 +1461,9 @@ id: zero: Tak ada one: satu other: '%{count} laporan' - report_created_at: Pertama dilaporkan pada %{datetime} - last_resolved_at: Terakhir diselesaikan pada %{datetime} - last_updated_at: Terakhir diubah pada %{datetime} oleh %{displayname} + report_created_at_html: Pertama dilaporkan pada %{datetime} + last_resolved_at_html: Terakhir diselesaikan pada %{datetime} + last_updated_at_html: Terakhir diubah pada %{datetime} oleh %{displayname} resolve: Selesaikan ignore: Abaikan reopen: Buka lagi @@ -1744,8 +1744,6 @@ id: messages: inbox: title: Kotak Masuk - my_inbox: Kotak Masuk Saya - my_outbox: Kotak Keluar Saya messages: Anda memiliki %{new_messages} dan %{old_messages} new_messages: one: '%{count} pesan baru' @@ -1753,12 +1751,14 @@ id: old_messages: one: '%{count} pesan lama' other: '%{count} pesan lama' - from: Dari - subject: Subyek - date: Tanggal 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 message_summary: unread_button: Tandai belum dibaca read_button: Tandai sudah dibaca @@ -1778,14 +1778,9 @@ id: body: Maaf tidak ada pesan dengan id tersebut. outbox: title: Kotak keluar - my_inbox: Kotak Masuk Saya - my_outbox: Kotak Keluar Saya messages: one: Anda memiliki %{count} pesan terkirim other: Anda memiliki %{count} pesan terkirim - to: Kepada - subject: Subjek - date: Tanggal 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 @@ -1803,13 +1798,16 @@ id: yang benar untuk membacanya. sent_message_summary: destroy_button: Hapus + heading: + my_inbox: Kotak Masuk Saya + my_outbox: Kotak Keluar Saya mark: as_read: Pesan ditandai sebagai telah dibaca as_unread: Pesan ditandai sebagai belum dibaca destroy: destroyed: Pesan dihapus passwords: - lost_password: + new: title: Kehilangan kata sandi heading: Lupa Kata Sandi? email address: 'Alamat Email:' @@ -1817,15 +1815,17 @@ id: help_text: Masukkan alamat email yang Anda gunakan untuk mendaftar, kami akan mengirim link ke alamat tersebut yang dapat Anda gunakan untuk menyetel ulang kata sandi Anda. + create: notice email on way: Maaf sudah hilang :-( namun sebuah email telah dikirimkan agar Anda dapat segera mengatur ulang. notice email cannot find: Tidak dapat menemukan alamat email tersebut, maaf. - reset_password: + edit: title: Setel ulang kata sandi heading: Setel ulang kata sandi untuk %{user} reset: Setel Ulang Kata Sandi - flash changed: Kata sandi Anda telah diubah. flash token bad: Tidak dapat menemukan token tersebut, cek URL nya mungkin? + update: + flash changed: Kata sandi Anda telah diubah. preferences: show: title: Preferensi Saya @@ -2142,12 +2142,7 @@ id: untuk fitur ini. export: title: Ekspor - area_to_export: Wilayah untuk diekspor manually_select: Pilih wilayah berbeda secara manual - format_to_export: Format untuk diekspor - osm_xml_data: Data XML OpenStreetMap - map_image: Gambar Peta (menunjukkan layer standar) - embeddable_html: HTML yang terkait licence: Lisensi licence_details_html: Data OpenStreetMap dilindungi oleh lisensi %{odbl_link} (ODbL). @@ -2172,17 +2167,6 @@ id: other: title: Sumber Lain description: Sumber-sumber tambahan yang tercantum di wiki OpenStreetMap - options: Pilihan - format: Format - scale: Skala - max: Maks - image_size: Ukuran gambar - zoom: Perbesar - add_marker: Tambahkan penanda ke peta - latitude: 'Lintang:' - longitude: 'Bujur:' - output: Hasil - paste_html: Salin HTML untuk menyimpan di website export_button: Ekspor fixthemap: title: Laporkan kesalahan / Perbaiki peta @@ -2291,35 +2275,24 @@ id: footway: Jalan Setapak rail: Rel Kereta subway: Kereta bawah tanah - tram: - - Kereta listrik - - trem - cable: - - Kereta Kabel - - Kereta Gantung - runway: - - Landasan bandara - - landas hubung - apron: - - Tempat Parkir Pesawat - - terminal + cable_car: Kereta Kabel + chair_lift: Kereta Gantung + runway: Landasan bandara + taxiway: landas hubung + apron: Tempat Parkir Pesawat admin: Batas administrasi forest: Hutan wood: Kayu golf: Lapangan Golf park: Taman + common: Umum resident: Area Permukiman - common: - - Umum - - Padang rumput - - kebun retail: Area pertokoan industrial: Kawasan industri commercial: Area komersial heathland: Semak - lake: - - Danau - - Wilayah Serapan (Reservoir) + lake: Danau + reservoir: Wilayah Serapan (Reservoir) farm: Pertanian brownfield: Lahan kosong cemetery: Pemakaman @@ -2328,14 +2301,12 @@ id: centre: Pusat Olahraga reserve: Cagar Alam military: Kawasan militer - school: - - Sekolah - - universitas + school: Sekolah + university: universitas building: Bangunan Penting station: Stasiun Kereta Api - summit: - - Puncak - - puncak + summit: Puncak + peak: puncak tunnel: Dashed Casing = terowongan bridge: Black casing = jembatan private: Akses pribadi diff --git a/config/locales/is.yml b/config/locales/is.yml index 638a1e31b..3b49cc15a 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -1459,9 +1459,9 @@ is: one: '%{count} skýrsla' other: '%{count} skýrslur' no_reports: Engar skýrslur - report_created_at: Fyrst tilkynnt %{datetime} - last_resolved_at: Síðast leyst %{datetime} - last_updated_at: Síðast uppfært %{datetime} af %{displayname} + report_created_at_html: Fyrst tilkynnt %{datetime} + last_resolved_at_html: Síðast leyst %{datetime} + last_updated_at_html: Síðast uppfært %{datetime} af %{displayname} resolve: Leysa ignore: Hunsa reopen: Enduropna @@ -1751,8 +1751,6 @@ is: messages: inbox: title: Innhólf - my_inbox: Innhólfið mitt - my_outbox: Úthólfið mitt messages: Þú átt %{new_messages} og %{old_messages} new_messages: one: '%{count} ný skilaboð' @@ -1760,12 +1758,14 @@ is: old_messages: one: '%{count} eldri skilaboð' other: '%{count} eldri skilaboð' - from: Frá - subject: Viðfangsefni - date: Dagsetning 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 message_summary: unread_button: Merkja sem ólesin read_button: Merkja sem lesin @@ -1785,14 +1785,9 @@ is: body: Því miður er ekkert skilaboð með þetta auðkenni. outbox: title: Úthólf - my_inbox: Innhólfið mitt - my_outbox: Úthólfið mitt messages: one: Þú hefur sent %{count} skilaboð other: Þú hefur sent %{count} skilaboð - to: Til - subject: Viðfangsefni - date: Dags 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 @@ -1811,27 +1806,32 @@ is: notanda til að geta svarað. sent_message_summary: destroy_button: Eyða + heading: + my_inbox: Innhólfið mitt + my_outbox: Úthólfið mitt mark: as_read: Skilaboðin voru merkt sem lesin as_unread: Skilaboðin voru merkt sem ólesin destroy: destroyed: Skilaboðunum var eytt passwords: - lost_password: + new: title: Glatað lykilorð heading: Gleymt lykilorð? email address: 'Tölvupóstfang:' new password button: Endurstilla lykilorð help_text: Sláðu inn netfangið sem þú skráðir þig með, við munum senda tengil á það sem þú getur notað til að breyta lykilorðinu þínu. + create: notice email on way: Nýtt lykilorð er á leiðinni í innhólfið þitt. notice email cannot find: Þetta netfang fannst ekki. - reset_password: + edit: title: Endurstilla lykilorð heading: Endurstilla lykilorð fyrir %{user} reset: Endurstilla lykilorð - flash changed: Lykilorðinu þínu hefur verið breytt flash token bad: Þessi leynistrengur fannst ekki, kannski er slóðin röng? + update: + flash changed: Lykilorðinu þínu hefur verið breytt preferences: show: title: Kjörstillingar @@ -2212,12 +2212,7 @@ is: ef nota á þennan eiginleika. export: title: Flytja út - area_to_export: Svæði til útflutnings manually_select: Veldu annað svæði handvirkt - format_to_export: Skráasnið - osm_xml_data: OpenStreetMap XML gögn - map_image: Kortamynd (sýnir staðallagið) - embeddable_html: HTML til að bæta á vefsíðu licence: Leyfi licence_details_html: OpenStreetMap gögnin eru með %{odbl_link}. odbl: Open Data Commons Open Database License (ODbL) notkunarleyfi @@ -2240,17 +2235,6 @@ is: other: title: Aðrar heimildir description: Aðrir gagnagjafar sem taldir eru upp á kviku/wiki OpenStreetMap - options: Valmöguleikar - format: Snið - scale: Kvarði - max: hámark - image_size: Stærð myndar - zoom: Aðdráttur - add_marker: Bæta kortamerki á kortið - latitude: 'Lengd:' - longitude: 'Breidd:' - output: Úttak - paste_html: Notaðu þennan HTML kóða til að bæta kortinu á vefsíðu export_button: Flytja út fixthemap: title: Tilkynna vandamál / Laga kortið @@ -2367,35 +2351,24 @@ is: footway: Gönguleið rail: Lestarteinar subway: Neðanjarðarlest - tram: - - Léttlest - - sporvagn - cable: - - Kláflyfta - - stólalyfta - runway: - - Flugbraut - - akstursbraut - apron: - - Flughlað - - flugstöð + cable_car: Kláflyfta + chair_lift: stólalyfta + runway: Flugbraut + taxiway: akstursbraut + apron: Flughlað admin: Stjórnsýslumörk forest: Ræktaður skógur wood: Náttúrulegur skógur golf: Golfvöllur park: Almenningsgarður + common: Almenningur resident: Íbúðasvæði - common: - - Almenningur - - lundur - - garður retail: Smásölusvæði industrial: Iðnaðarsvæði commercial: Verslunarsvæði heathland: Heiðalönd - lake: - - Vatn - - uppistöðulón + lake: Vatn + reservoir: uppistöðulón farm: Bóndabær brownfield: Nýbyggingarsvæði cemetery: Grafreitur @@ -2404,14 +2377,12 @@ is: centre: Íþróttamiðstöð reserve: Náttúruverndarsvæði military: Hersvæði - school: - - Skóli - - Háskóli + school: Skóli + university: Háskóli building: Merkisbygging station: Lestarstöð - summit: - - Fjallstindur - - tindur + summit: Fjallstindur + peak: tindur tunnel: Umkringt punktalínum = göng bridge: Umkringt svartri línu = brú private: Einkaaðgangur @@ -2715,7 +2686,6 @@ is: no_applications_html: Ert þú að nota forrit sem þú myndir vilja skrá til notkunar hjá okkur með %{oauth2} staðlinum? Þú verður að skrá vefforritið áður en það fer að senda OAuth-beiðnir á þessa þjónustu. - oauth_2: OAuth 2 new: Skrá nýtt forrit name: Nafn permissions: Heimildir diff --git a/config/locales/it.yml b/config/locales/it.yml index 049a556ab..67f12f23c 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -98,6 +98,9 @@ it: messages: invalid_email_address: non sembra essere un indirizzo e-mail valido email_address_not_routable: non è instradabile + models: + user_mute: + is_already_muted: è già silenziato models: acl: Lista di controllo degli accessi changeset: Gruppo di modifiche @@ -324,6 +327,9 @@ it: retain_changeset_discussions: Le discussioni su tuoi gruppi di modifiche e i commenti inseriti su altri gruppi di modifiche, se presenti, saranno mantenute. retain_email: Il tuo indirizzo e-mail sarà conservato. + recent_editing_html: Dato che hai effettuato delle modifiche di recente, al + momento la tua utenza non può essere eliminata. Sarà possibile farlo tra + %{time}. confirm_delete: Sei sicuro? cancel: Annulla accounts: @@ -1522,9 +1528,9 @@ it: one: '%{count} segnalazione' other: '%{count} segnalazioni' no_reports: Nessuna segnalazione - report_created_at: Segnalato per la prima volta il %{datetime} - last_resolved_at: Risolto per l’ultima volta il %{datetime} - last_updated_at: Aggiornato per l’ultima volta il %{datetime} da %{displayname} + report_created_at_html: Segnalato per la prima volta il %{datetime} + last_resolved_at_html: Risolto per l’ultima volta il %{datetime} + last_updated_at_html: Aggiornato per l’ultima volta il %{datetime} da %{displayname} resolve: Risolvi ignore: Ignora reopen: Riapri @@ -1810,8 +1816,6 @@ it: messages: inbox: title: Posta in arrivo - my_inbox: Posta in arrivo - my_outbox: Posta in uscita messages: Hai %{new_messages} e %{old_messages} new_messages: one: '%{count} nuovo messaggio' @@ -1819,17 +1823,21 @@ it: old_messages: one: '%{count} vecchio messaggio' other: '%{count} messaggi vecchi' - from: Da - subject: Oggetto - date: Data 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 reply_button: Rispondi destroy_button: Cancella + unmute_button: Sposta nella Posta in arrivo new: title: Invia messaggio send_message_to_html: Spedisci un nuovo messaggio a %{name} @@ -1844,17 +1852,18 @@ it: body: Siamo spiacenti, non ci sono messaggi con l'id indicato. outbox: title: Posta in uscita - my_inbox: Posta in arrivo - my_outbox: Posta in uscita + actions: Azioni messages: one: Hai %{count} messaggio inviato other: Hai %{count} messaggi inviati - to: A - subject: Oggetto - date: Data 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, @@ -1870,31 +1879,41 @@ it: 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 + unmute: + notice: Il messaggio è stato spostato nella Posta in arrivo + error: Non è stato possibile spostare il messaggio nella Posta in arrivo. destroy: destroyed: Messaggio eliminato passwords: - lost_password: + new: title: password persa heading: Password dimenticata? - email address: 'Indirizzo email:' + email address: Indirizzo email new password button: Reimposta password help_text: Inserire l'indirizzo email che si è utilizzato per l'iscrizione, a cui verrà inviato un collegamento che permetterà la reimpostazione della propria password. + create: notice email on way: Siamo spiacenti che tu l'abbia persa :-( ma una email ti è stata spedita in modo che tu la possa presto reimpostare. notice email cannot find: Spiacenti, ma non è possibile trovare l'indirizzo email. - reset_password: + edit: title: Reimposta password heading: Reimposta password per %{user} reset: Reimposta password - flash changed: La propria password è stata modificata. flash token bad: Non è stato possibile trovare il codice. Controllare l'indirizzo URL. + update: + flash changed: La propria password è stata modificata. + flash token bad: Non è stato trovato quel token, controlla l'URL forse? preferences: show: title: Preferenze @@ -1938,8 +1957,8 @@ it: new: title: Entra heading: Entra - email or username: 'Indirizzo email o nome utente:' - password: 'Password:' + email or username: Indirizzo e-mail o nome utente + password: Password openid_html: '%{logo} OpenID:' remember: Ricordati di me lost password link: Persa la password? @@ -1998,6 +2017,7 @@ it: image: Immagine alt: Testo alternativo url: URL + codeblock: Blocco di codice richtext_field: edit: Modifica preview: Anteprima @@ -2134,6 +2154,10 @@ it: Resources Canada), e della StatCan (Geography Division, Statistics Canada). contributors_ca_canada: Canada + contributors_cz_credit_html: '%{czechia}: contiene dati dell''Amministrazione + statale dei rilevamenti topografici e del Catasto pubblicati con licenza + %{cc_licence_link}' + contributors_cz_czechia: Repubblica Ceca contributors_cz_cc_licence: Licenza internazionale Creative Commons Attribuzione 4.0 (CC BY 4.0) contributors_cz_cc_licence_url: https://creativecommons.org/licenses/by/4.0/deed.it @@ -2227,12 +2251,7 @@ it: per questa funzionalità. export: title: Esporta - area_to_export: Area da esportare manually_select: Seleziona manualmente un'area differente - format_to_export: Formato di esportazione - osm_xml_data: Dati XML OpenStreetMap - map_image: Immagine Mappa (mostra livello standard) - embeddable_html: HTML incapsulabile licence: Licenza licence_details_html: I dati OpenStreetMap sono rilasciati con licenza %{odbl_link} (ODbL). @@ -2257,17 +2276,6 @@ it: other: title: Altre fonti description: Ulteriori fonti elencate sul wiki di OpenStreetMap - options: Opzioni - format: Formato - scale: Scala - max: max - image_size: Dimensione immagine - zoom: Ingrandimento - add_marker: Aggiungi un marcatore alla mappa - latitude: 'Lat:' - longitude: 'Lon:' - output: Risultato - paste_html: Incolla l'HTML per incapsulare nel sito web export_button: Esporta fixthemap: title: Segnala un problema / Correggi la mappa @@ -2367,66 +2375,80 @@ it: primary: Strada primaria secondary: Strada secondaria unclassified: Strada non classificata + pedestrian: Percorso pedonale track: Strada forestale o agricola bridleway: Percorso per equitazione cycleway: Pista ciclabile cycleway_national: Pista ciclabile nazionale cycleway_regional: Pista ciclabile regionale cycleway_local: Pista ciclabile locale + cycleway_mtb: Percorso in mountain bike footway: Percorso pedonale rail: Ferrovia + train: Treno subway: Metropolitana - tram: - - Metropolitana leggera - - tram - cable: - - Funivia - - seggiovia - runway: - - Pista di decollo/atterraggio - - pista di rullaggio - apron: - - Area di parcheggio aeroportuale - - terminal + ferry: Traghetto + light_rail: Metropolitana leggera + tram: Tram + trolleybus: Filobus + bus: Autobus + cable_car: Funivia + chair_lift: Seggiovia + runway: Pista di decollo/atterraggio + taxiway: Pista di rullaggio + apron: Area di parcheggio aeroportuale admin: Confine amministrativo + capital: Capitale + city: Città + orchard: Frutteto + vineyard: Vigneto forest: Foresta wood: Bosco + farmland: Terreno agricolo + grass: Prato + meadow: Prato + bare_rock: Roccia nuda + sand: Sabbia golf: Campo da golf park: Parco + common: Area comune resident: Zona residenziale - common: - - Area comune - - prato - - giardino retail: Zona con negozi industrial: Zona industriale commercial: Zona di uffici heathland: Brughiera - lake: - - Lago - - riserva d'acqua + scrubland: Macchia + lake: Lago + reservoir: Riserva idrica + intermittent_water: Corpo idrico intermittente + glacier: Ghiacciaio + reef: Scogliera + wetland: Zona umida farm: Azienda agricola brownfield: Area soggetta ad interventi di ridestinazione d'uso cemetery: Cimitero allotments: Area comune orti casalinghi pitch: Campo sportivo centre: Centro sportivo + beach: Spiaggia reserve: Riserva naturale military: Area militare - school: - - Scuola - - università + school: Scuola + university: Università + hospital: Ospedale building: Edificio significativo station: Stazione ferroviaria - summit: - - Vetta - - picco montuoso + summit: Vetta + peak: Picco montuoso tunnel: Linea tratteggiata = tunnel bridge: Quadrettatura nera = ponte private: Accesso privato destination: Servitù di passaggio construction: Strade in costruzione + bus_stop: Fermata dell'autobus + stop: Fermata bicycle_shop: Negozio di biciclette + bicycle_rental: Noleggio biciclette bicycle_parking: Parcheggio per biciclette toilets: Bagni pubblici welcome: @@ -2471,6 +2493,7 @@ it: imports: Importazioni automated_edits: Contributi automatici start_mapping: Inizia a mappare + continue_authorization: Continua l'autorizzazione add_a_note: title: Non hai tempo per editare? Aggiungi una nota! para_1: Se vuoi fare solo una piccola correzione, ma non hai abbastanza tempo @@ -2638,6 +2661,7 @@ it: oauth1_settings: Impostazioni OAuth oauth2_applications: Applicazioni OAuth 2 oauth2_authorizations: Autorizzazioni OAuth 2 + muted_users: Utenti silenziati oauth: authorize: title: Autorizzare l'accesso al tuo account @@ -2847,6 +2871,8 @@ it: my_dashboard: La mia dashboard blocks on me: Blocchi su di me blocks by me: Blocchi applicati da me + create_mute: Silenzia questo utente + destroy_mute: Non silenziare più questo utente edit_profile: Modifica profilo send message: Invia messaggio diary: Diario @@ -2878,6 +2904,7 @@ it: importer: Revoca l'accesso come importatore block_history: Blocchi attivi moderator_history: Blocchi applicati + revoke_all_blocks: Revoca tutti i blocchi comments: Commenti create_block: Blocca questo utente activate_user: Attiva questo utente @@ -2987,6 +3014,16 @@ it: confirm: Sei sicuro di voler revocare questo blocco? revoke: Revoca! flash: Questo blocco è stato revocato. + 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. @@ -3045,6 +3082,31 @@ it: showing_page: Pagina %{page} next: Successivo » previous: « Precedente + user_mutes: + index: + title: Utenti silenziati + my_muted_users: I miei utenti silenziati + you_have_muted_n_users: + one: Hai silenziato %{count} utente + other: Hai silenziato %{count} utenti + user_mute_explainer: I messaggi degli utenti silenziati vengono spostati in + una Posta in arrivo separata e non riceverai le notifiche via e-mail. + user_mute_admins_and_moderators: Puoi silenziare amministratori e moderatori + ma i loro messaggi non saranno silenziati. + table: + thead: + muted_user: Utente silenziato + actions: Azioni + tbody: + unmute: Non silenziare + send_message: Invia messaggio + create: + notice: Hai silenziato %{name}. + error: Non è stato possibile silenziare %{name}. %{full_message}. + destroy: + notice: Non rimosso %{name} dagli utenti silenziati. + error: Non è stato possibile rimuovere dagli utenti silenziati. Riprova più + tardi. notes: index: title: Note inserite o commentate da %{user} @@ -3081,6 +3143,7 @@ it: reactivate: Riattiva comment_and_resolve: Commenta e chiudi comment: Commenta + log_in_to_comment: Accedi per commentare questa nota report_link_html: Se questa nota contiene informazioni sensibili che devono essere rimosse, puoi %{link}. other_problems_resolve: Per tutti gli altri problemi con la nota, risolvilo @@ -3172,6 +3235,8 @@ it: map_data_zoom_in_tooltip: Zooma per vedere i dati della mappa queryfeature_tooltip: Ricerca di elementi queryfeature_disabled_tooltip: Ingrandisci per ricercare elementi + embed_html_disabled: L'incorporamento HTML non è disponibile per questo livello + mappa changesets: show: comment: Commenta diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 71b055ca0..5c5e9a665 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -12,6 +12,7 @@ # Author: Ffff23 # Author: Foomin10 # Author: Fryed-peach +# Author: Great ones # Author: Hayashi # Author: Higa4 # Author: Hiro884 @@ -274,6 +275,7 @@ ja: reopened_at_by_html: '%{user}さんが%{when}に再開' rss: title: OpenStreetMap メモ + description_all: 報告されたメモ、コメントされたメモ、または閉じられたメモのリスト description_area: あなたのエリア [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})] に関する注記で報告済みまたはコメント付きあるいは解決済みの一覧 description_item: メモ %{id} の RSS フィード @@ -300,6 +302,7 @@ ja: retain_notes: 日記のエントリと日記のコメントがある場合は保持されますが、表示されません。 retain_changeset_discussions: 変更セットのディスカッションがあれば、保持されます。 retain_email: メールアドレスは保持されます。 + recent_editing_html: 最近編集したため、現在アカウントを削除できません。 %{time}以内に削除可能になります。 confirm_delete: 本当によろしいですか? cancel: キャンセル accounts: @@ -329,7 +332,12 @@ ja: delete_account: アカウントを削除 go_public: heading: 公開編集 + currently_not_public: 現在、あなたの編集内容は匿名であり、他の人があなたにメッセージを送ったり、あなたの位置情報を確認したりすることはできません。編集内容を表示し、Web + サイトを通じて他の人があなたに連絡できるようにするには、下のボタンをクリックしてください。 + only_public_can_edit: 0.6 API 変更以来,地図データを公開ユーザーだけが編集できます. find_out_why: 理由を明らかにする + email_not_revealed: あなたのメールアドレスが公開されることはありません + not_reversible: このアクションを元に戻すことはできず、すべての新規ユーザーはデフォルトで公開になります。 make_edits_public_button: 自分の編集をすべて公開する update: success_confirm_needed: 利用者情報を更新しました。新着メールを確認して新しいメール アドレスを検証してください。 @@ -1419,9 +1427,9 @@ ja: reports: other: '%{count}件のレポート' no_reports: 報告はありません - report_created_at: 最初の通報は%{datetime}です - last_resolved_at: 最近の更新は%{datetime}です - last_updated_at: 最近の更新は%{displayname}による%{datetime}の版です + report_created_at_html: 最初の通報は%{datetime}です + last_resolved_at_html: 最近の更新は%{datetime}です + last_updated_at_html: 最近の更新は%{displayname}による%{datetime}の版です resolve: 解決 ignore: 無視 reopen: 再開 @@ -1647,18 +1655,18 @@ ja: messages: inbox: title: 受信箱 - my_inbox: 自分の受信箱 - my_outbox: 自分の送信ボックス 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: 日付 - no_messages_yet_html: まだメッセージがありません。%{people_mapping_nearby_link}とお近づきになってはいかがですか? - people_mapping_nearby: 近所でマッピングしている人々 message_summary: unread_button: 未読にする read_button: 既読にする @@ -1677,13 +1685,8 @@ ja: body: 申し訳ありませんが、この ID のメッセージはありません。 outbox: title: 送信箱 - my_inbox: 自分の受信箱 - my_outbox: 自分の送信ボックス messages: other: '%{count} 件の送信済みメッセージがあります' - to: 宛先 - subject: 件名 - date: 日付 no_sent_messages_html: 送信したメッセージはまだありません。%{people_mapping_nearby_link}とお近づきになってはいかがですか? people_mapping_nearby: 近所でマッピングしている人々 reply: @@ -1697,26 +1700,31 @@ ja: wrong_user: あなたは「%{user}」としてログインしていますが、閲覧しようとしたメッセージは、この利用者が送信したものでも、この利用者宛てのものでもありません。メッセージを閲覧するには、正しいユーザーとしてログインしてください。 sent_message_summary: destroy_button: 削除 + heading: + my_inbox: 自分の受信箱 + my_outbox: 自分の送信ボックス mark: as_read: 既読メッセージ as_unread: 未読メッセージ destroy: destroyed: メッセージを削除しました passwords: - lost_password: + new: title: パスワードを忘れた heading: パスワードを忘れた場合はこちら - email address: 'メール アドレス:' + email address: 'メールアドレス:' new password button: パスワードを再設定 help_text: ユーザー登録に使用したメール アドレスを入力してください。そのアドレス宛に、パスワードを再設定するためのリンクをお送りします。 + create: notice email on way: すみません。紛失してしまいました :-( しかし、メールをお送りしたので、すぐにリセットできるでしょう。 notice email cannot find: 申し訳ありませんが、このメール アドレスは見つかりません。 - reset_password: + edit: title: パスワードの再設定 heading: '%{user} のパスワードのリセット' reset: パスワードを初期化 - flash changed: あなたのパスワードは変更されました。 flash token bad: キーワードが見つかりません。URL を確認してください。 + update: + flash changed: あなたのパスワードは変更されました。 preferences: show: title: 個人設定 @@ -1758,7 +1766,7 @@ ja: new: title: ログイン heading: ログイン - email or username: 'メール アドレスまたは利用者名:' + email or username: 'メールアドレスまたは利用者名:' password: 'パスワード:' openid_html: '%{logo} OpenID:' remember: ログイン状態を保持 @@ -1902,12 +1910,7 @@ ja: no_iframe_support: あなたのブラウザーは、この機能に必須の HTML iframe に未対応です。 export: title: エクスポート - area_to_export: エクスポートする領域 manually_select: ドラッグして別の領域を選択 - format_to_export: エクスポートするファイル形式 - osm_xml_data: OpenStreetMap XML データ - map_image: 地図画像 (標準レイヤーを表示) - embeddable_html: 埋め込み HTML licence: ライセンス too_large: advice: '上のエクスポートが失敗した場合は、以下に列挙した情報源のいずれかの使用を検討してください:' @@ -1924,17 +1927,6 @@ ja: other: title: 他の情報源 description: OpenStreetMap ウィキに記載されている追加の情報源 - options: オプション - format: ファイル形式 - scale: 縮尺 - max: 最大 - image_size: 画像サイズ - zoom: ズーム - add_marker: マーカーを地図に追加 - latitude: '緯度:' - longitude: '経度:' - output: 出力 - paste_html: 以下の HTML をあなたのサイトに貼り付けてください export_button: エクスポート fixthemap: title: 問題点の報告 / 地図の修正 @@ -2017,35 +2009,24 @@ ja: footway: 歩道 rail: 鉄道 subway: 地下鉄 - tram: - - 軽便鉄道 - - 路面電車 - cable: - - 交走式ロープウェイ - - チェアリフト - runway: - - 空港滑走路 - - 空港誘導路 - apron: - - 空港ビル - - 空港ターミナル + cable_car: 交走式ロープウェイ + chair_lift: チェアリフト + runway: 空港滑走路 + taxiway: 空港誘導路 + apron: 空港ビル admin: 行政境界 forest: 森 wood: 森林 golf: ゴルフ場 park: 公園 + common: 共有地 resident: 住宅地 - common: - - 共有地 - - 牧草地 - - 庭園 retail: 小売業地域 industrial: 工業地域 commercial: オフィス地域 heathland: 荒地 - lake: - - 湖 - - 溜池 + lake: 湖 + reservoir: 溜池 farm: 農牧場 brownfield: 褐色地 cemetery: 墓地 @@ -2054,14 +2035,12 @@ ja: centre: スポーツセンター reserve: 自然保護区 military: 軍用地域 - school: - - 学校 - - 大学 + school: 学校 + university: 大学 building: 重要建造物 station: 鉄道駅 - summit: - - 山脈 - - 山頂 + summit: 山脈 + peak: 山頂 tunnel: 点線の枠 = トンネル bridge: 黒枠 = 橋梁 private: 私的通行 @@ -2391,6 +2370,7 @@ ja: my_dashboard: 私のダッシュボード blocks on me: 自分に与えられたブロック blocks by me: 自分が実行したブロック + create_mute: この利用者をミュートする edit_profile: プロフィールを編集 send message: メッセージを送信 diary: 日記 diff --git a/config/locales/ka.yml b/config/locales/ka.yml index da1e87d99..4b2b25057 100644 --- a/config/locales/ka.yml +++ b/config/locales/ka.yml @@ -795,7 +795,6 @@ ka: messages: inbox: title: მიღებული - my_inbox: ჩემი მიღებული messages: თქვენ გაქვთ %{new_messages} და %{old_messages} new_messages: one: '%{count} ახალი შეტყობინება' @@ -803,12 +802,14 @@ ka: old_messages: one: '%{count} ძველი შეტყობინება' other: '%{count} ძველი შეტყობინება' - from: გამომგზავნი - subject: თემა - date: თარიღი no_messages_yet_html: თქვენ ჯერ არ გაქვთ შეტყობინებები. რატომ არ უნდა გავესაუბრო ვინმეს %{people_mapping_nearby_link}? people_mapping_nearby: ახლოს მყოფი ხალხი + messages_table: + from: გამომგზავნი + to: ვის + subject: თემა + date: თარიღი message_summary: unread_button: მონიშნეთ როგორც წაუკითხავი read_button: მონიშნეთ როგორც წაკითხული @@ -831,9 +832,6 @@ ka: messages: one: თქვენ გაქვთ %{count} გაგზავნილი შეტყობინება other: თქვენ გაქვთ %{count} გაგზავნილი შეტყობინება - to: ვის - subject: თემა - date: თარიღი no_sent_messages_html: თქვენ ჯერ არ გაქვთ გაგზავნილი შეტყობინებები. რატომ არ უნდა გავესაუბრო ვინმეს %{people_mapping_nearby_link}? people_mapping_nearby: ახლოს მყოფი ხალხი @@ -850,17 +848,19 @@ ka: როგორც შესაბამისი მომხმარებელი, რათა წაიკითხოთ ის. sent_message_summary: destroy_button: წაშლა + heading: + my_inbox: ჩემი მიღებული mark: as_read: შეტყობინება მონიშნულია როგორც წაკითხული as_unread: შეტყობინება მონიშნულია როგორც წაუკითხავი destroy: destroyed: შეტყობინება წაშლილია passwords: - lost_password: + new: title: პაროლის აღდგენა heading: დაგავიწყდათ პაროლი? email address: 'ელ. ფოსტის მისამართი:' - reset_password: + update: flash changed: თქვენი პაროლი შეიცვალა. profiles: edit: @@ -902,25 +902,11 @@ ka: user_page_link: მომხმარებლის გვერდი export: title: ექსპორტი - area_to_export: ტერიტორია ექსპორტისათვის manually_select: სხვა რეგიონის გამოყოფა ხელით - format_to_export: ექსპორტის ფორმატი - osm_xml_data: OpenStreetMap XML–ის მონაცემები - map_image: რუკის სურათი (სტანდარტული ფენის ჩვენება) licence: ლიცენზია too_large: planet: title: პლანეტა OSM - options: პარამეტრები - format: ფორმატი - scale: მასშტაბი - max: მაქს. - image_size: გამოსახულების ზომა - zoom: გადიდება - add_marker: რუკაზე ნიშნულის დასმა - latitude: 'განედი:' - longitude: 'გრძედი:' - output: შედეგი export_button: ექსპორტი sidebar: search_results: ძიების შედეგები @@ -942,14 +928,8 @@ ka: footway: საფეხმავლო გზა rail: რკინიგზა subway: მეტრო - tram: - 1: ტრამვაი - cable: - - საბაგირო გზა - runway: - - აეროპორტის ასაფრენ-დასაფრენი ბილიკი - apron: - 1: ტერმინალი + cable_car: საბაგირო გზა + runway: აეროპორტის ასაფრენ-დასაფრენი ბილიკი admin: ადმინისტრაციული საზღვარი forest: ტყე wood: ტყე @@ -957,22 +937,19 @@ ka: park: პარკი resident: საცხოვრებელი ტერიტორია commercial: კომერციული ტერიტორია - lake: - - ტბა - - წყალსაცავი + lake: ტბა + reservoir: წყალსაცავი farm: ფერმა cemetery: სასაფლაო pitch: სპორტული მოედანი centre: სპორტული ცენტრი reserve: ნაკრძალი military: სამხედრო ტერიტორია - school: - - სკოლა - - უნივერსიტეტი + school: სკოლა + university: უნივერსიტეტი station: რკინიგზის სადგური - summit: - - მწვერვალი - - პიკი + summit: მწვერვალი + peak: პიკი traces: new: visibility_help: ეს რას ნიშნავს? diff --git a/config/locales/kab.yml b/config/locales/kab.yml index 434ed18f3..f170bc8e5 100644 --- a/config/locales/kab.yml +++ b/config/locales/kab.yml @@ -903,9 +903,10 @@ kab: messages: inbox: title: Tanaka n urmas - my_inbox: Tanaka-iw n urmas messages: Ɣur-k %{new_messages} akked %{old_messages} + messages_table: from: Seg + to: I subject: Asentel date: Azemz message_summary: @@ -923,9 +924,6 @@ kab: body: Suref-aÉ£, ulac izen s usulay-agi. outbox: title: Tanaka n tuzna - to: I - subject: Asentel - date: Azemz show: title: Ɣeṛ izen reply_button: Err @@ -934,23 +932,26 @@ kab: 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 passwords: - lost_password: + new: title: Awal uffir iṛuḥ heading: Tettuḍ awal uffir? email address: 'Tansa imayl:' new password button: Ales awennez n wawal uffir - reset_password: + edit: title: Ales awennez n wawal uffir heading: Ales awennez n wawal uffir i %{user} reset: Ales awennez n wawal uffir - flash changed: Awal-ik uffir ibeddel. flash token bad: Ajiá¹­un-agi ulac-it, ahat tuccḍa di tansa URL? + update: + flash changed: Awal-ik uffir ibeddel. profiles: edit: image: 'Tugna:' @@ -1036,12 +1037,7 @@ kab: user_page_link: asebter n useqdac export: title: Sifeḍ - area_to_export: Tamnaḍt n usifeḍ manually_select: Fren s ufus tamnadt-nniḍen - format_to_export: Amasal n usifeḍ - osm_xml_data: Isefka XML OpenStreetMap - map_image: Tugna n tkarḍa (ad tesken akalku n tegnut) - embeddable_html: HTML yettwaslaÉ£en licence: Turagt too_large: advice: 'Ma yella asifed ddaw-a yeÉ£li, seqdec ma ulac aÉ£ilif tiÉ£bula yettwabedren @@ -1062,17 +1058,6 @@ kab: other: title: IÉ£bula-nniḍen description: Ibula-nniḍen yettwabedren deug uwiki OpenStreetMap - options: IÉ£ewwaṛen - format: Amasal - scale: Sellum - max: afellay - image_size: TeÉ£zi n tugna - zoom: SemÉ£eṛ - add_marker: Rnu taṛekkizt É£ef tkarḍa - latitude: 'Tarrut:' - longitude: 'Tazegrart:' - output: TuffÉ£a - paste_html: Senteḍ tangalt HTML deg usmel Web export_button: Sifeḍ fixthemap: how_to_help: @@ -1120,11 +1105,9 @@ kab: table: entry: forest: Tiẓgi - lake: - - Amdun - school: - - AÉ£erbaz - - Tasdawit + lake: Amdun + school: AÉ£erbaz + university: Tasdawit welcome: title: Aná¹£uf! whats_on_the_map: diff --git a/config/locales/kk-cyrl.yml b/config/locales/kk-cyrl.yml index 9a7569784..b42373947 100644 --- a/config/locales/kk-cyrl.yml +++ b/config/locales/kk-cyrl.yml @@ -852,7 +852,7 @@ kk-cyrl: lost_password: subject: '[OpenStreetMap] Құпиясөзді арылту сұранысы' messages: - inbox: + messages_table: subject: Тақырып message_summary: unread_button: Оқылмаған деп белгілеу @@ -866,10 +866,11 @@ kk-cyrl: sent_message_summary: destroy_button: Жою passwords: - lost_password: + new: email address: 'Е-пошта мекенжайы:' - reset_password: + edit: title: Құпиясөзді арылту + update: flash changed: Құпия сөзіңіз өзгертілді. preferences: show: @@ -937,7 +938,6 @@ kk-cyrl: title: OSM ғаламшары overpass: title: Overpass API - image_size: 'Сурет өлшемі:' export_button: Экспорттау fixthemap: how_to_help: @@ -971,36 +971,26 @@ kk-cyrl: unclassified: Жергілікті жол rail: Темір жол subway: Метро - tram: - - Жеңіл рельсті көлік - apron: - - Әуежай перроны - - терминал + apron: Әуежай перроны admin: Әкімшілік шекара forest: Орман golf: Гольф алаңы park: Саябақ resident: Тұрғын аудан - common: - 1: шабындық - 2: бақ retail: Сауда аймағы industrial: Өнеркәсіп аймағы - lake: - - Көл + lake: Көл farm: Ферма cemetery: Зират allotments: Саяжайлар pitch: Спорт алаңы centre: Спорт орталығы military: Әскери аймақ - school: - - Мектеп - - университет + school: Мектеп + university: университет building: Елеулі ғимарат station: Темір жол бекеті - summit: - 1: шың + peak: шың bicycle_shop: Велосипед дүкені toilets: Дәретхана welcome: diff --git a/config/locales/km.yml b/config/locales/km.yml index d32001d7b..b6a7d62fc 100644 --- a/config/locales/km.yml +++ b/config/locales/km.yml @@ -650,16 +650,13 @@ km: button: បញ្ជាក់​ success: បានបញ្ជាក់អាសយដ្ឋានអ៊ីមែលរបស់អ្នករូចរាល់ហើយ! messages: - inbox: + messages_table: from: ពី​ + to: ទៅ​ subject: ប្រធានបទ​ date: កាលបរិច្ឆេទ​ new: back_to_inbox: ត្រឡប់ទៅប្រអប់សំបុត្រ​ - outbox: - to: ទៅ​ - subject: ប្រធានបទ​ - date: កាលបរិច្ឆេទ​ sessions: new: title: កត់ឈ្មោះចូល @@ -694,20 +691,10 @@ km: not_public: អ្នកមិនបានកំណត់​កំណែប្រែរបស់អ្នកជាសាធារណៈ​។ user_page_link: ទំព័រអ្នកប្រើប្រាស់​ export: - area_to_export: ផ្ទៃដើម្បីនាំចេញ​ licence: អាជ្ញាបណ្ណ too_large: planet: title: Planet OSM - options: ជម្រើស - format: ទម្រង់ - scale: រង្វាស់​ - max: អតិ. - image_size: ទំហំ​រូបភាព​ - zoom: ពង្រីកចូលឬបង្រួមចេញ - add_marker: បន្ថែមសញ្ញាសម្គាល់ទៅលើផែនទី - latitude: រយៈទទឹង៖ - longitude: រយៈបណ្ដោយ៖ export_button: នាំចេញ​ sidebar: search_results: លទ្ធផលនៃការស្វែងរក​ @@ -726,17 +713,14 @@ km: cycleway_local: ផ្លូវទោចក្រយានតំបន់ rail: ផ្លូវដែក subway: ផ្លូវដែកក្រោមដី - tram: - - ផ្លូវដែកធុនស្រាល admin: ព្រំដែនរដ្ឋបាល forest: ព្រៃឈើ​ park: ឧទ្យាន​ industrial: តំបន់ឧស្សាហកម្ម​ farm: កសិដ្ឋាន​ centre: មជ្ឈមណ្ឌល​កីឡា​ - school: - - សាលារៀន​ - - សាកលវិទ្យាល័យ​ + school: សាលារៀន​ + university: សាកលវិទ្យាល័យ​ station: ស្ថានីយ៍ផ្លូវដែក traces: new: diff --git a/config/locales/kn.yml b/config/locales/kn.yml index 21f4cd062..87394bf2e 100644 --- a/config/locales/kn.yml +++ b/config/locales/kn.yml @@ -715,8 +715,9 @@ kn: confirm_email: button: ಧೃಡಪಡಿಸಿ messages: - inbox: + messages_table: from: ಇಂದ + to: ಗೆ subject: ವಿಷಯ date: ದಿನಾಂಕ message_summary: @@ -729,9 +730,6 @@ kn: title: ಅಂತಹ ಯಾವುದೇ ಸಂದೇಶವಿಲ್ಲ heading: ಅಂತಹ ಯಾವುದೇ ಸಂದೇಶವಿಲ್ಲ outbox: - to: ಗೆ - subject: ವಿಷಯ - date: ದಿನಾಂಕ people_mapping_nearby: ನಿಮ್ಮ ಹತ್ತಿರವಿರುವ ಬಳಕೆದಾರರು show: title: ಸಂದೇಶವನ್ನು ಓದಿ @@ -747,9 +745,9 @@ kn: destroy: destroyed: ಸಂದೇಶವನ್ನು ಅಳಿಸಿ ಹಾಕಲಾಗಿದೆ passwords: - lost_password: + new: email address: 'ಮಿಂಚಂಚೆ ವಿಳಾಸ:' - reset_password: + update: flash changed: ನಿಮ್ಮ ಪ್ರವೇಶಪದವನ್ನು ಬದಲಾಯಿಸಲಾಗಿದೆ. preferences: show: @@ -830,11 +828,6 @@ kn: export: title: ರಫ್ತು ಮಾಡು licence: ಪರವಾನಗಿ - options: ಆಯ್ಕೆಗಳು - scale: ಮಾಪಕ - latitude: 'ಅಕ್ಷಾಂಶ:' - longitude: 'ರೇಖಾಂಶ:' - output: ಔಟ್‌ಪುಟ್ export_button: ರಫ್ತು ಮಾಡು fixthemap: title: ಸಮಸ್ಯೆಯನ್ನು ವರದಿ ಮಾಡಿ / ನಕ್ಷೆಯನ್ನು ಸರಿಪಡಿಸಿ @@ -873,14 +866,12 @@ kn: forest: ಅರಣ್ಯ park: ಉದ್ಯಾನ resident: ವಾಸ ಮಾಡುವ ಸ್ಥಳ - lake: - - ಕೆರೆ - - ಅಣೆಕಟ್ಟು + lake: ಕೆರೆ + reservoir: ಅಣೆಕಟ್ಟು farm: ಒಕ್ಕಲು ಜಮೀನು cemetery: ಸ್ಮಾಶಾಣ - school: - - ಪಾಠಶಾಲೆ - - ವಿಶ್ವವಿದ್ಯಾಲಯ + school: ಪಾಠಶಾಲೆ + university: ವಿಶ್ವವಿದ್ಯಾಲಯ station: ರೈಲು ನಿಲ್ದಾಣ welcome: title: ಸುಸ್ವಾಗತ! diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 62ccce407..71151740b 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -1406,9 +1406,9 @@ ko: reports: other: 신고 %{count}ê±´ no_reports: 보고서 없음 - report_created_at: '%{datetime}에 처음 보고됨' - last_resolved_at: '%{datetime}에 마지막으로 해결됨' - last_updated_at: '%{displayname}에 의해 %{datetime}에 마지막으로 갱신됨' + report_created_at_html: '%{datetime}에 처음 보고됨' + last_resolved_at_html: '%{datetime}에 마지막으로 해결됨' + last_updated_at_html: '%{displayname}에 의해 %{datetime}에 마지막으로 갱신됨' resolve: 해결 ignore: 무시 reopen: 다시 열림 @@ -1649,8 +1649,6 @@ ko: messages: inbox: title: 받은 쪽지함 - my_inbox: 받은 쪽지함 - my_outbox: 보낸 쪽지함 messages: '%{new_messages}와 %{old_messages}가 있습니다' new_messages: one: 새 메시지 %{count}개 @@ -1658,12 +1656,14 @@ ko: old_messages: one: 오래된 메시지 %{count}개 other: 오래된 메시지 %{count}개 - from: 보낸 사람 - subject: 제목 - date: 날짜 no_messages_yet_html: 아직 메시지가 없습니다. %{people_mapping_nearby_link}에서 마음에 드는 친구를 찾아보는 것은 어떨까요? people_mapping_nearby: 근처에 매핑한 사람 + messages_table: + from: 보낸 사람 + to: 받는이 + subject: 제목 + date: 날짜 message_summary: unread_button: 읽지 않음으로 표시 read_button: 읽음으로 표시 @@ -1682,14 +1682,9 @@ ko: body: 죄송합니다 해당 id로 된 메시지가 없습니다. outbox: title: 보낸 쪽지함 - my_inbox: 받은 쪽지함 - my_outbox: 보낸 쪽지함 messages: one: 메시지 %{count}개를 보냈습니다 other: 메시지 %{count}개를 보냈습니다 - to: 받는이 - subject: 제목 - date: 날짜 no_sent_messages_html: 아직 보낸 메시지가 없습니다. %{people_mapping_nearby_link}에서 마음에 드는 친구를 찾아보는 것은 어떨까요? people_mapping_nearby: 근처에 매핑한 사람 @@ -1706,26 +1701,31 @@ ko: 올바른 사용자로 로그인하세요.' sent_message_summary: destroy_button: 삭제 + heading: + my_inbox: 받은 쪽지함 + my_outbox: 보낸 쪽지함 mark: as_read: 메시지를 읽은 것으로 표시 as_unread: 메시지를 읽지 않은 것으로 표시 destroy: destroyed: 메시지가 삭제됨 passwords: - lost_password: + new: title: 잊어버린 비밀번호 heading: 비밀번호를 잊으셨나요? email address: '이메일 주소:' new password button: 비밀번호 재설정 help_text: 가입할 때 사용한 이메일 주소를 입력하세요, 비밀번호를 재설정하여 사용할 수 있는 링크를 보내드립니다. + create: notice email on way: 비밀번호를 잊었다니, 안타깝습니다 :-( 비밀번호 재설정을 할 수 있도록 이메일이 발송되었습니다. notice email cannot find: 이메일 주소를 찾지 못해 죄송합니다. - reset_password: + edit: title: 비밀번호 재설정 heading: '%{user}의 비밀번호 재설정' reset: 비밀번호 재설정 - flash changed: 비밀번호가 바뀌었습니다. flash token bad: 토큰을 찾지 못했습니다. URL을 확인했습니까? + update: + flash changed: 비밀번호가 바뀌었습니다. preferences: show: title: 내 환경 설정 @@ -1828,6 +1828,7 @@ ko: image: 이미지 alt: 대체 텍스트 url: URL + codeblock: 코드 블록 richtext_field: edit: 편집 preview: 미리 보기 @@ -2019,12 +2020,7 @@ ko: no_iframe_support: 브라우저가 이 기능에 필요한 HTML iframe을 지원하지 않습니다. export: title: 내보내기 - area_to_export: 지역 내보내기 manually_select: 수동으로 다른 지역 선택 - format_to_export: 내보내기 형식 - osm_xml_data: 오픈스트리트맵 XML 데이터 - map_image: 지도 그림 (표준 레이어 보이기) - embeddable_html: 내장된 HTML licence: 라이선스 licence_details_html: OpenStreetMap 데이터의 라이선스는 %{odbl_link} (ODbL)를 따릅니다. odbl: 오픈 데이터 커먼즈 오픈 데이터베이스 라이선스 @@ -2044,17 +2040,6 @@ ko: other: title: 다른 원본 description: OpenStreetMap 위키에 나와있는 추가 원본 - options: 옵션 - format: 형식 - scale: 축척 - max: 최대 - image_size: 그림 크기 - zoom: 확대/축소 - add_marker: 지도에 표시 추가 - latitude: '위도:' - longitude: '경도:' - output: 출력 - paste_html: HTML을 붙여 넣어 웹사이트에 포함시키세요 export_button: 내보내기 fixthemap: title: 문제 ë³´ê³  / 지도 수정 @@ -2155,35 +2140,24 @@ ko: footway: 보도 rail: 철도 subway: 지하철 - tram: - - 경전철 - - 노면 전차 - cable: - - 케이블 ì¹´ - - 체어 리프트 - runway: - - 공항 활주로 - - 공항 유도로 - apron: - - 공항 계류장 - - 터미널 + cable_car: 케이블 ì¹´ + chair_lift: 체어 리프트 + runway: 공항 활주로 + taxiway: 공항 유도로 + apron: 공항 계류장 admin: 행정 구역 경계 forest: 숲 wood: 산림 golf: 골프장 park: 공원 + common: 공유지 resident: 주거 지역 - common: - - 공유지 - - 목초지 - - 정원 retail: 소매 지역 industrial: 산업 지역 commercial: 상업/관공서 지역 heathland: 황무지 - lake: - - 호수 - - 저수지 + lake: 호수 + reservoir: 저수지 farm: 농장 brownfield: 재개발지역 cemetery: 묘역 @@ -2192,14 +2166,12 @@ ko: centre: 스포츠 센터 reserve: 자연 보호구역 military: 군사 지역 - school: - - 학교 - - 대학 + school: 학교 + university: 대학 building: 주요 건물 station: 철도역 - summit: - - 산꼭대기 - - 봉우리 + summit: 산꼭대기 + peak: 봉우리 tunnel: 점선 테두리 = 터널 bridge: 검은 테두리 = 다리 private: 개인 통행 diff --git a/config/locales/ksh.yml b/config/locales/ksh.yml index 3cf67f7b5..0cbe9713c 100644 --- a/config/locales/ksh.yml +++ b/config/locales/ksh.yml @@ -190,12 +190,13 @@ ksh: heading: Donn en neue Adräß för de e-mail beschtäätejje messages: inbox: - from: Vum - subject: Theema - date: Et Dattum 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}? @@ -204,14 +205,15 @@ ksh: sent_message_summary: destroy_button: Fottschmiiße passwords: - lost_password: + new: title: Verloore Paßwoot heading: Paßwoot verjäße? email address: 'De Adräß för de e-mail:' new password button: Paßwoot neu säze - reset_password: + edit: title: Paßwoot neu säze reset: Paßwoot neu säze + update: flash changed: Ding Paßwoot es jeändert. sessions: new: @@ -248,9 +250,6 @@ ksh: title: Övver di Sigg heh edit: anon_edits_link_text: Fengk eruß, woröm dadd esu es. - export: - osm_xml_data: OpenStreetMap sing XML Daate - options: Ennschtällonge help: beginners_guide: title: Aanleidong för Aanfänger @@ -277,34 +276,24 @@ ksh: footway: Fohßwääsch udder Päddsche rail: Eiserbahn subway: U-Bahn - tram: - - Klëijnbahn - - Strohßebahn - cable: - - Seilbahn - - Sässelbahn - runway: - - Startbahn, Landebahn - - Rollwääsch om Fluchhaaven - apron: - - Halldepläz om Fluchveäld - - Terminal em Fluchhaaven + cable_car: Seilbahn + chair_lift: Sässelbahn + runway: Startbahn, Landebahn + taxiway: Rollwääsch om Fluchhaaven + apron: Halldepläz om Fluchveäld admin: Verwalldongsjränz forest: Wald, Bösch wood: Urwald golf: Jolfplaz park: Park + common: öffentlesch Land resident: Wohnjebeet - common: - - öffentlesch Land - - Wiß retail: Einkaufszentrum industrial: Industriejebeet commercial: Jewerbejebeet heathland: Heed - lake: - - See, Wejer - - Stausee + lake: See, Wejer + reservoir: Stausee farm: Buurehoff brownfield: Industriebrachland cemetery: Friedhoff @@ -313,14 +302,12 @@ ksh: centre: Schpochtzäntom reserve: Naturschozjebeet military: Jebeet vum Kammiß - school: - - Scholl - - Univäsität + school: Scholl + university: Univäsität building: Weeschtesch Bouwärk station: Bahnhoff - summit: - - Bärschspez - - Bärschspez + summit: Bärschspez + peak: Bärschspez tunnel: Rand jeschtreschelt = Tunnell bridge: Fätte Rand = Bröck private: Der Zohjang es prėvaat diff --git a/config/locales/ku-Latn.yml b/config/locales/ku-Latn.yml index 5e53c06d1..43eee1b8d 100644 --- a/config/locales/ku-Latn.yml +++ b/config/locales/ku-Latn.yml @@ -47,6 +47,9 @@ ku-Latn: messages: invalid_email_address: ne weke navnîşaneke e-peyamê ya derbasdar e email_address_not_routable: nikare were alîkirin + models: + user_mute: + is_already_muted: jixwe bêdengkirî ne models: acl: Lîsteya kontrola têketinan changeset: Qeyda guhartinan @@ -237,6 +240,7 @@ ku-Latn: reopened_at_by_html: '%{when} ji aliyê %{user} ve jinûve hate aktîvkirin' rss: title: Notên OpenStreetMapê + description_all: Lîsteyeke notên gilîkirî, şîrovekirî an girtî description_area: Lîsteya notên herêma te yên ku hatine raporkirin, şirovekirin an jî girtin [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})] description_item: Ji bo nota %{id} xwedîkirina rss'ê @@ -271,6 +275,8 @@ ku-Latn: retain_changeset_discussions: Gotûbêjên te yên qeyda guhartinan, ger hebin, wê bêne muhafezekirin. retain_email: Adresa te ya epeyamê wê were muhafezekirin. + recent_editing_html: Ji ber ku te hesabê xwe vê talîyê guherandîye, vê gavê + nayê jêbirin. Jêbirin wê di %{time} de mimkin be. confirm_delete: Tu piştrast î? cancel: Betal bike accounts: @@ -301,6 +307,9 @@ ku-Latn: delete_account: Hesabê Jê bibe... go_public: heading: Guherandina ji her kesê re vekirî + currently_not_public: Vê gavê guhertinên te anonîm in û însan nikarin mesaj + bişînin te an lokasyona te bibînin. Ji bo nîşandan guhertinên te kirî û îzin + bidî însanan ku bi rêya malperê bi te re îrtîbat deynin, li bûtona jêrî bitikîne. make_edits_public_button: Hemû guherandinên min bila ji her kesê re vekirî be update: success_confirm_needed: Agahiyên bikarhêner bi awayekî serkeftî hate nûkirin. @@ -1423,10 +1432,10 @@ ku-Latn: one: '%{count} rapor' other: '%{count} raporan' no_reports: Ti raporekî tine - report_created_at: Pêşî di %{datetime} de hatiye raporkirin - last_resolved_at: Herî dawî di %{datetime} de hat çareserkirin - last_updated_at: Ji aliyê %{displayname} ve herî dawî di %{datetime} de hat - rojanekirin + report_created_at_html: Pêşî di %{datetime} de hatiye raporkirin + last_resolved_at_html: Herî dawî di %{datetime} de hat çareserkirin + last_updated_at_html: Ji aliyê %{displayname} ve herî dawî di %{datetime} de + hat rojanekirin resolve: Çareser bike ignore: Guh nedê reopen: Dîsa veke @@ -1715,8 +1724,6 @@ ku-Latn: messages: inbox: title: Qutiya hatiyan - my_inbox: Qutiya min a hatiyan - my_outbox: Çûdanka min messages: '%{new_messages} û %{old_messages} hene.' new_messages: one: '%{count} peyama nû' @@ -1724,12 +1731,14 @@ ku-Latn: old_messages: one: '%{count} peyama kevin' other: '%{count} peyamên kevin' - from: Ji - subject: Mijar - date: Dîrok 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 @@ -1749,14 +1758,9 @@ ku-Latn: body: Li me bibore, bi vê id-yê ti peyam tine ye. outbox: title: Qutiya min a çûyiyan - my_inbox: Hatdanka min - my_outbox: Çûdanka min messages: one: Te %{count} peyam şand other: Te %{count} peyaman şand - to: Ji bo - subject: Mijar - date: Dîrok 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 @@ -1775,29 +1779,34 @@ ku-Latn: Xêra xwe ji bo xwendinê wekî bikarhênerê rast têbikeve. 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 passwords: - lost_password: + new: title: Şîfreya wenda heading: Te şîfreya xwe ji bîr kir? email address: 'Navnîşana E-peyamê:' new password button: Şîfreyê nû bike help_text: E-peyama ku te pê xwe qeydkiribû binivîse, em ê ji te re lînkek bişînin tu yê bi wê lînkê bikaribî şîfreya xwe nû bikî. + create: notice email on way: Bibore, te wê wenda kir :-( lê belê e-peyamekî nû di rê de ye. Lewma tu dikarî di nêz de wê nû bikî. notice email cannot find: Bibore, ev adrêsa e-peyamê nehate dîtin. - reset_password: + edit: title: Şîfreyê nû bike heading: Şîfreyê nû bike ji bo %{user} reset: Şîfreyê nû bike - flash changed: Şîfreya te hate guhartin. flash token bad: Eger te vê sembolê nedîtibe, belkî jî divê tu URLyê kontrol bikî? + update: + flash changed: Şîfreya te hate guhartin. preferences: show: title: Tercîhên min @@ -1982,12 +1991,7 @@ ku-Latn: vê taybetmendiyê lazim e. export: title: Derxîne - area_to_export: Cihê ku wê were derxistin manually_select: Bi destê xwe cihekî din bibijêre - format_to_export: Awayê derxistinê - osm_xml_data: Daneyên OpenStreetMapê a bi şiklê XML'yê - map_image: Risma Xerîteyê (tebeqeya standart nîşan dide) - embeddable_html: HTML'a ku dikare were pêvekirin licence: Lîsans too_large: advice: Eger hûn ji yê jor nikaribin eksport bikin, xêra xwe yek ji van çavkaniyên @@ -2011,17 +2015,6 @@ ku-Latn: title: Çavkaniyên din description: Çavkaniyên îlawe yên ku li ser wîkiya OpenStreetMapê hatine lîstekirin - options: Vebijêrk - format: Format - scale: Pîvan (miqyas) - max: maksîmum - image_size: Mezinahiya Rismê - zoom: Nêzîk bike - add_marker: Nîşankereke îlawe bike xerîteyê - latitude: Hêlîpanː - longitude: Hêlîlarː - output: Encam - paste_html: Vê koda HTML'yê dikarî bi ser malperra xwe ve kopî bikî export_button: Derxîne fixthemap: title: Pirgirêkek rabigihîne / Nexşeyê sererast bike @@ -2110,35 +2103,24 @@ ku-Latn: footway: Rêya peyayan rail: Rêhesin subway: Metro - tram: - - Rêya trênê yê bi xeta teng - - tramway - cable: - - Teleferîk - - teleferîk - runway: - - Pîsta balafirgehê - - rêya balafirgehê yê çûnûhatinê - apron: - - Aprona balafirgehê - - termînal + cable_car: Teleferîk + chair_lift: Teleferîk + runway: Pîsta balafirgehê + taxiway: Rêya balafirgehê yê çûnûhatinê + apron: Aprona balafirgehê admin: Sînorê îdarî forest: Daristan - wood: Daristan + wood: Daristan (bêçavdêrî, wek-xwe-hêlayî) golf: Cihê golfê park: Park + common: Erda mişterek resident: Cihê îkametê - common: - - Erda mişterek - - mêrg - - bexçe retail: Saheya Perakendeyê (Maxazayan) industrial: Cihê endustriyê commercial: Herêma bazirganiyê heathland: Erdê qeraç - lake: - - Gol - - mexzen + lake: Gol + reservoir: Gola sûnî farm: Cotgeh brownfield: Erdê vala cemetery: Gorristan @@ -2147,14 +2129,12 @@ ku-Latn: centre: Navenda sporê reserve: Herêma muhefezekirî ya tebîetê military: Qada eskerî - school: - - Dibistan - - zanîngeh + school: Dibistan + university: Unîversîte building: Avahiya girîng station: Stasyona trênê - summit: - - Lûtke - - lûtke + summit: Lûtke + peak: Lûtke tunnel: Xeta qutqutî = tûnel bridge: Xeta reş = pir private: Têketina taybet @@ -2258,8 +2238,8 @@ ku-Latn: trace: pending: LI BENDÊ YE count_points: - one: Nuqteyekê - other: '%{count} nuqte' + one: Niqteyekê + other: '%{count} niqte' more: dêtay trace_details: Dêtayên Şopê Bibîne view_map: Nexşeyê bibîne diff --git a/config/locales/lb.yml b/config/locales/lb.yml index e23c73132..2780f6577 100644 --- a/config/locales/lb.yml +++ b/config/locales/lb.yml @@ -1401,9 +1401,9 @@ lb: reports: one: '%{count} Meldung' other: '%{count} Meldungen' - report_created_at: Fir d'éischt gemellt den %{datetime} - last_resolved_at: Fir d'lescht erleedegt den %{datetime} - last_updated_at: Fir d'lescht aktualiséiert den %{datetime} vun %{displayname} + report_created_at_html: Fir d'éischt gemellt den %{datetime} + last_resolved_at_html: Fir d'lescht erleedegt den %{datetime} + last_updated_at_html: Fir d'lescht aktualiséiert den %{datetime} vun %{displayname} resolve: Léisen ignore: Ignoréieren reopen: Nees opmaachen @@ -1691,8 +1691,6 @@ lb: messages: inbox: title: Postagang - my_inbox: Mäi Postagang - my_outbox: Mäi Postausgang messages: Dir hutt %{new_messages} a(n) %{old_messages} new_messages: one: '%{count} neie mMssage' @@ -1700,12 +1698,15 @@ lb: old_messages: one: '%{count} ale Message' other: '%{count} al Messagen' - from: Vu(n) - subject: Sujet - date: Datum 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 @@ -1725,14 +1726,10 @@ lb: body: Leider gëtt et kee Message mat där ID. outbox: title: Outbox - my_inbox: Mäi Postagang - my_outbox: Mäi Postausgang + actions: Aktiounen messages: one: Du hues %{count} Noriicht gesent other: Du hues %{count} Noriichte gesent - to: Un - subject: Sujet - date: Datum 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 @@ -1751,30 +1748,35 @@ lb: mat dem richtege Benotzer un. 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 passwords: - lost_password: + new: title: Passwuert vergiess heading: Passwuert vergiess? - email address: 'E-Mail-Adress:' + email address: E-Mail-Adress new password button: Passwuert zrécksetzen help_text: Wannechgelift gëff deng E-Mail-Adress an, mat däers du dech ugemellt has. Mir wäerten dir dann e Link schécken, mat dems du däi Passwuert zerécksetze kanns. + create: notice email on way: Eng E-Mail mat Hiweiser fir d'Zerécksetze vum Passwuert gouf un dech versent. notice email cannot find: Déi E-Mail-Adress konnt net fonnt ginn, pardon. - reset_password: + edit: title: Passwuert zrécksetzen heading: Passwuert fir %{user} zrécksetzen reset: Passwuert zrécksetzen - flash changed: Äert Passwuert gouf geännert. flash token bad: Mir konnten dëst Kierzel leider net fannen. Du hues dech méiglecherweis vertippt oder du hues en ongëltege Link opgemaach. + update: + flash changed: Äert Passwuert gouf geännert. preferences: show: title: Meng Benotzerastellungen @@ -1820,8 +1822,8 @@ lb: new: title: Umellen heading: Umellen - email or username: 'E-Mail-Adress oder Benotzernumm:' - password: 'Passwuert:' + email or username: E-Mail-Adress oder Benotzernumm + password: Passwuert openid_html: '%{logo} OpenID:' remember: Sech u mech erënneren lost password link: Hutt Dir Äert Passwuert vergiess? @@ -1896,6 +1898,7 @@ lb: community_driven_title: Communautéitsbedriwwen open_data_title: Open Data legal_title: Rechtlech Hiweiser + legal_1_1_privacy_policy: Dateschutzrichtlinnen partners_title: Partneren copyright: foreign: @@ -1948,11 +1951,7 @@ lb: anon_edits_link_text: Fannt eraus firwat dat de Fall ass. export: title: Exportéieren - area_to_export: Beräich fir den Export manually_select: Sicht manuell eng aner Géigend eraus - format_to_export: Format fir z'exportéieren - osm_xml_data: OpenStreetMap-XML-Daten - embeddable_html: HTML fir anzebannen licence: Lizenz too_large: body: Dëse Beräich ass ze grouss, fir als OpenStreetMap-XML-Donnéeën exportéiert @@ -1967,17 +1966,6 @@ lb: other: title: Aner Quellen description: Zousätzlech Quelle stinn an der OpenStreetMap Wiki - options: Optiounen - format: Format - scale: Maassstab - max: max - image_size: Gréisst vum Bild - zoom: Zoom - add_marker: Eng Markéierung op der Kaart bäifügen - latitude: 'Geographesch Breet:' - longitude: 'Geographesch Längt:' - output: Resultat - paste_html: HTML-Code kopéieren, fir en an eng Websäit anzefügen export_button: Exportéieren fixthemap: title: E Probleem mellen / D'Kaart verbesseren @@ -2023,6 +2011,7 @@ lb: main_road: Haaptstrooss secondary: Niewestrooss unclassified: Net klasséiert Strooss + pedestrian: Foussgängerwee track: Spuer bridleway: Wee fir Päerd cycleway: Vëlospiste @@ -2031,32 +2020,33 @@ lb: cycleway_local: Lokale Vëloswee footway: Fousswee rail: Eisebunn + train: Zuch subway: Metro - tram: - 1: Tram - cable: - - Seelbunn - - Sessellift - runway: - - Start- a Landebunn - - Rullbunn - apron: - 1: Terminal + ferry: Fär + tram: Tram + bus: Bus + cable_car: Seelbunn + chair_lift: Sessellift + runway: Start- a Landebunn + taxiway: Rullbunn admin: Verwaltungsgrenz + capital: Haaptstad + city: Stad + orchard: Bongert + vineyard: Wéngert forest: Bësch wood: Bësch + grass: Wiss + sand: Sand golf: Golfterrain park: Park - common: - - ëffentlech Gréngfläch (brit.) - - Wiss - - Gaart + common: ëffentlech Gréngfläch (brit.) retail: Akaafszentrum industrial: Industriezone commercial: Commercëgebitt heathland: Heed - lake: - - Séi + lake: Séi + glacier: Gletscher farm: Bauerenhaff brownfield: Broochland cemetery: Kierfecht @@ -2065,16 +2055,16 @@ lb: centre: Sportszenter reserve: Naturschutzgebitt military: Militärgebitt - school: - - Schoul - - Universitéit + school: Schoul + university: Universitéit + hospital: Spidol building: Bedeitend Gebai station: Gare (Eisebunn) - summit: - - Spëtzt + summit: Spëtzt private: Privaten Terrain destination: Nëmme fir Leit mat Uleies construction: Stroossen am Bau + bus_stop: Busarrêt bicycle_shop: Vëlosgeschäft bicycle_parking: Vëlosparking toilets: Toiletten @@ -2247,6 +2237,7 @@ lb: display name description: Däin ëffentlech ugewisene Benotzernumm. E ka spéider an den Astellunge geännert ginn. continue: Mellt Iech un + privacy_policy: Dateschutzrichtlinnen terms: heading: Bedingungen consider_pd: Zousätzlech zu den uewe genannte Konditioune betruechten ech meng @@ -2406,6 +2397,13 @@ lb: showing_page: Säit %{page} next: Nächst » previous: « Vireg + user_mutes: + index: + table: + thead: + actions: Aktiounen + tbody: + send_message: Message schécken notes: index: no_notes: Keng Notizen diff --git a/config/locales/lt.yml b/config/locales/lt.yml index a47ba27db..cd71732cb 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -1382,9 +1382,9 @@ lt: many: '{%count} praneÅ¡imas' other: '%{count} praneÅ¡imų' no_reports: Jokių ataskaitų - report_created_at: Pirmą kartą praneÅ¡ta %{datetime} - last_resolved_at: Paskutinį kartą iÅ¡spręsta %{datetime} - last_updated_at: Paskutinį kartą atnaujinta %{datetime} naudotojo %{displayname} + report_created_at_html: Pirmą kartą praneÅ¡ta %{datetime} + last_resolved_at_html: Paskutinį kartą iÅ¡spręsta %{datetime} + last_updated_at_html: Paskutinį kartą atnaujinta %{datetime} naudotojo %{displayname} resolve: IÅ¡spręsti ignore: Ignoruoti reopen: IÅ¡ naujo atidaryti @@ -1659,8 +1659,6 @@ lt: messages: inbox: title: Gautieji - my_inbox: Mano gauti - my_outbox: IÅ¡siųsti messages: JÅ«s turite %{new_messages} ir %{old_messages} new_messages: one: '%{count} naujas praneÅ¡imas' @@ -1668,12 +1666,14 @@ lt: old_messages: one: '%{count} senas praneÅ¡imas' other: '%{count} seni praneÅ¡imai' - from: Nuo - subject: Tema - date: Data 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 message_summary: unread_button: Žymėti neskaitytu read_button: Žymėti skaitytu @@ -1693,14 +1693,9 @@ lt: body: Gaila, bet žinutės su tokiu id nėra. outbox: title: IÅ¡siųstieji - my_inbox: Gautieji - my_outbox: IÅ¡siųsti messages: one: JÅ«s %{count} nusiųstą praneÅ¡imą other: JÅ«s %{count} nusiųstus(-ų) praneÅ¡imus(-ų) - to: Kam - subject: Tema - date: Data 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 @@ -1719,13 +1714,16 @@ lt: naudotojo paskyros, jei norite tai perskaityti. sent_message_summary: destroy_button: IÅ¡trinti + heading: + my_inbox: Mano gauti + my_outbox: IÅ¡siųsti mark: as_read: PraneÅ¡imas pažymėtas kaip skaitytas as_unread: PraneÅ¡imas pažymėtas kaip neskaitytas destroy: destroyed: PraneÅ¡imas iÅ¡trintas passwords: - lost_password: + new: title: PamirÅ¡au slaptažodį heading: PamirÅ¡ote slaptažodį? email address: 'E-paÅ¡to adresas:' @@ -1733,15 +1731,17 @@ lt: help_text: Ä®veskite elektroninio paÅ¡to adresą, kurį naudojote užsiregistruodami. Mes atsiųsime nuorodą į elektroninį paÅ¡tą, kurią galėsite naudoti norėdami iÅ¡ naujo nustatyti slaptažodį. + create: notice email on way: Apgailestaujame, kad praradote slaptažodį :-( bet elektroninis laiÅ¡kas jau iÅ¡siųstas, tad greitai slaptažodį atstatysite. notice email cannot find: Gaila, bet toks e-paÅ¡to adresas nerastas. - reset_password: + edit: title: IÅ¡ naujo nustatyti slaptažodį heading: IÅ¡ naujo nustatyti naudotojo %{user} slaptažodį reset: IÅ¡ naujo nustatyti slaptažodį - flash changed: JÅ«sų slaptažodis sėkmingai pakeistas. flash token bad: Ženklas nerastas, galbÅ«t bloga nuoroda? + update: + flash changed: JÅ«sų slaptažodis sėkmingai pakeistas. preferences: show: title: Mano parinktys @@ -1941,12 +1941,7 @@ lt: bÅ«tini. export: title: Eksportuoti - area_to_export: Eksportuotinas plotas manually_select: Rankiniu bÅ«du parinkti kitą sritį - format_to_export: Eksporto formatas - osm_xml_data: OpenStreetMap XML duomenys - map_image: Žemėlapio vaizdas (rodo standartinį sluoksnį) - embeddable_html: Pritaikomas HTML licence: Licencija licence_details_html: OpenStreetMap duomenys yra licencijuoti pagal %{odbl_link} (ODbL). @@ -1971,17 +1966,6 @@ lt: other: title: Kiti Å¡altiniai description: Papildomi Å¡altiniai iÅ¡vardinti OpenStreetMap wiki - options: Parinktys - format: Formatas - scale: Mastelis - max: maksimalus - image_size: Žemėlapio dydis - zoom: Padidinti - add_marker: Pridėti žymeklį žemėlapyje - latitude: 'Plat:' - longitude: 'Ilg:' - output: Rezultatas - paste_html: Ä®kelkite šį HTML į svetainę export_button: Eksportuoti fixthemap: title: PraneÅ¡ti apie problemą / taisyti žemėlapį @@ -2078,34 +2062,24 @@ lt: footway: Pėsčiųjų takas rail: Geležinkelis subway: Metropoliteno linija - tram: - - Lengvasis geležinkelis - - tramvajus - cable: - - Lyno keltuvas - - keltuvas - runway: - - Kilimo takas - - Riedėjimo takas - apron: - - Oro uosto lėktuvų aikÅ¡telė - - terminalas + cable_car: Lyno keltuvas + chair_lift: keltuvas + runway: Kilimo takas + taxiway: Riedėjimo takas + apron: Oro uosto lėktuvų aikÅ¡telė admin: Administracinės ribos forest: MiÅ¡kas wood: Medžių teritorija golf: Golfo laukas park: Parkas + common: Bendras resident: Gyvenamoji zona - common: - - Bendras - - pieva retail: Mažmeninis rajonas industrial: Pramoninė zona commercial: Komericinis plotas heathland: Å ilynas - lake: - - Ežeras - - rezervuaras + lake: Ežeras + reservoir: rezervuaras farm: Ūkis brownfield: Apleista teritorija cemetery: Kapinės @@ -2114,14 +2088,12 @@ lt: centre: Sporto centras reserve: Gamtos rezervatas military: Karinis rajonas - school: - - Mokykla - - universitetas + school: Mokykla + university: universitetas building: Didelis pastatas station: Geležinkelio stotis - summit: - - VirÅ¡Å«nė - - VirÅ¡ukalnė + summit: VirÅ¡Å«nė + peak: VirÅ¡ukalnė tunnel: Punktyriniai kraÅ¡tai = tiltas bridge: TamsÅ«s kraÅ¡tai = tiltas private: Privati prieiga diff --git a/config/locales/lv.yml b/config/locales/lv.yml index 62e4fa3df..82ecc03ef 100644 --- a/config/locales/lv.yml +++ b/config/locales/lv.yml @@ -44,6 +44,7 @@ lv: create: ReÄ£istrēties update: Atjaunināt oauth2_application: + create: ReÄ£istrēties update: Atjaunināt redaction: create: Izveidot redakciju @@ -232,6 +233,7 @@ lv: Domēnā. link text: kas tas ir? save changes button: Saglabāt izmaiņas + delete_account: Dzēst kontu... go_public: heading: Publiska rediģēšana currently_not_public: PaÅ¡laik jÅ«su labojumi ir anonÄ«mi, un cilvēki nevar jums @@ -411,7 +413,7 @@ lv: title: Jauns dienasgrāmatas ieraksts form: location: 'AtraÅ¡anās vieta:' - use_map_link: izmantot karti + use_map_link: Izmantot karti index: title: Lietotāju dienasgrāmatas title_friends: Draugu dienasgrāmatas @@ -448,6 +450,7 @@ lv: one: '%{count} komentārs' zero: Nav komentāru other: '%{count} komentāri' + no_comments: Nav komentāru edit_link: Rediģēt Å¡o ierakstu hide_link: Slēpt Å¡o ierakstu confirm: Apstiprināt @@ -498,6 +501,7 @@ lv: chair_lift: Krēslu Pacēlājs drag_lift: VilkÅ¡anas Pacēlājs gondola: Gondola Lifts + pylon: Pilons station: Pacēlāja Stacija "yes": Gaisa ceļš aeroway: @@ -610,6 +614,7 @@ lv: census: SkaitÄ«Å¡anas robeža national_park: Nacionālais parks protected_area: Aizsargājamās teritorijas + "yes": Robeža bridge: aqueduct: Akvedukts suspension: Piekartitls @@ -666,6 +671,7 @@ lv: blacksmith: Kalējs brewery: Alus darÄ«tava carpenter: Galdnieks + caterer: Ēdinātājs dressmaker: Drēbnieks electrician: ElektriÄ·is electronics_repair: Elektronikas remonts @@ -845,6 +851,7 @@ lv: flagpole: Karoga masts kiln: Ceplis lighthouse: Bāka + manhole: LÅ«ka mine: Raktuves mineshaft: Raktuves Å¡ahta monitoring_station: UzraudzÄ«bas stacija @@ -1173,6 +1180,8 @@ lv: resolve: Atrisināt ignore: Ignorēt reopen: Atkārtoti atvērt + read_reports: LasÄ«t ziņojumus + new_reports: Jauni ziņojumi layouts: logo: alt_text: OpenStreetMap logo @@ -1335,8 +1344,6 @@ lv: messages: inbox: title: iesÅ«tne - my_inbox: Mana iesÅ«tne - my_outbox: Mana izsÅ«tne messages: Jums ir %{new_messages} un %{old_messages} new_messages: one: '%{count} jauna ziņa' @@ -1344,12 +1351,14 @@ lv: old_messages: one: '%{count} veca ziņa' other: '%{count} vecas ziņas' - from: "No" - subject: Temats - date: Datums 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 @@ -1369,14 +1378,9 @@ lv: body: Atvainojiet, ziņa ar norādÄ«to identifikatoru nav atrodama. outbox: title: izsÅ«tne - my_inbox: Mana iesÅ«tne - my_outbox: Mana izsÅ«tne messages: one: Tev ir %{count} nosÅ«tÄ«ta ziņa other: Tev ir %{count} nosÅ«tÄ«tas ziņas - to: Kam - subject: Temats - date: Datums 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ē @@ -1395,28 +1399,33 @@ lv: 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 passwords: - lost_password: + new: title: Aizmirsāt paroli heading: Aizmirsi paroli? email address: 'E-pasta adrese:' new password button: AtiestatÄ«t paroli help_text: Ievadiet e-pasta adresi, kuru izmantojāt, lai reÄ£istrētos, mēs Jums nosÅ«tÄ«sim saiti uz to, lai JÅ«s varētu atjaunot savu paroli. + create: notice email on way: Atvaino, tu to pazaudēji :-( , bet e-pasts jau ir ceļā, lai tu viņu drÄ«z varētu atjaunot. notice email cannot find: Atvaino, nevaru atrast Å¡o epasta adresi. - reset_password: + edit: title: AtiestatÄ«t paroli heading: Atcelt %{user} paroli reset: Atcelt paroli - flash changed: JÅ«su parole ir nomainÄ«ta. flash token bad: Neatradu to pilnvaru, varbÅ«t pārbaudi URL? + update: + flash changed: JÅ«su parole ir nomainÄ«ta. preferences: show: title: Mani uzstādÄ«jumi @@ -1591,12 +1600,7 @@ lv: Å¡ai iezÄ«mei. export: title: Eksportēt - area_to_export: Apgabals, kuru eksportēt manually_select: Manuāli izvēlēties citu teritoriju - format_to_export: Eksportēšanas formāts - osm_xml_data: OpenStreetMap XML dati - map_image: Kartes attēls (parāda standarta slāni) - embeddable_html: Ievietojams HTML kods licence: Licence too_large: advice: 'Ja augstāk esoÅ¡ais eksports neizdodas, lÅ«dzu apsver iespēj lietot @@ -1616,17 +1620,6 @@ lv: other: title: Citi Avoti description: Papildus avoti, kas norādÄ«ti OpenStreetMap wiki - options: Iespējas - format: Formāts - scale: Mērogs - max: lÄ«dz - image_size: Attēla izmērs - zoom: Palielināt - add_marker: Pievienot atzÄ«mi kartei - latitude: 'Platums:' - longitude: 'Garums:' - output: Izvade - paste_html: IelÄ«mēt HTML mājas lapā export_button: Eksportēt fixthemap: title: Ziņot par problēmu / Labot karti @@ -1710,35 +1703,24 @@ lv: footway: Gājēju ceļš rail: Dzelzceļš subway: Metro - tram: - - Tramvaja sliedes - - Tramvajs - cable: - - TroÅ¡u ceļš - - krēslu pacēlājs - runway: - - Lidostas skrejceļš - - manevrēšanas ceļš - apron: - - Lidostas rampa - - termināls + cable_car: TroÅ¡u ceļš + chair_lift: krēslu pacēlājs + runway: Lidostas skrejceļš + taxiway: manevrēšanas ceļš + apron: Lidostas rampa admin: AdministratÄ«vā robeža forest: Mežs wood: Pirmatnējs mežs golf: Golfa laukums park: Parks + common: KoplietoÅ¡anas zeme resident: DzÄ«vojamā zona - common: - - KoplietoÅ¡anas zeme - - Pļava - - dārzs retail: MazumtirdzniecÄ«bas zona industrial: RÅ«pniecÄ«bas zona commercial: TirdzniecÄ«bas zona heathland: TÄ«relis - lake: - - Ezeri - - Å«denskrātuves + lake: Ezeri + reservoir: Å«denskrātuves farm: SaimniecÄ«ba brownfield: Nekopta vieta cemetery: Kapsēta @@ -1747,14 +1729,12 @@ lv: centre: Sporta centrs reserve: Dabas rezervāts military: Militārā zona - school: - - Skola - - universitāte + school: Skola + university: universitāte building: Ēka station: Dzelzceļa stacija - summit: - - Virsotne - - smaile + summit: Virsotne + peak: smaile tunnel: Tunelis bridge: Tilts private: Privāta pieeja diff --git a/config/locales/mk.yml b/config/locales/mk.yml index a54ed02ab..be53a8d61 100644 --- a/config/locales/mk.yml +++ b/config/locales/mk.yml @@ -46,6 +46,9 @@ mk: messages: invalid_email_address: не претставува важечка е-пошта email_address_not_routable: не е насочлива + models: + user_mute: + is_already_muted: е веќе замолкнат models: acl: Список за контрола на пристап changeset: Измени @@ -274,7 +277,7 @@ mk: accounts: edit: title: Уреди сметка - my settings: Мои прилагодувања + my settings: Мои нагодувања current email address: Тековна е-пошта external auth: Надворешна заверка openid: @@ -1162,7 +1165,7 @@ mk: valley: Долина volcano: Вулкан water: Вода - wetland: Мочуриште + wetland: Моклиште wood: Шума "yes": Природен елемент office: @@ -1462,9 +1465,9 @@ mk: one: '%{count} пријава' other: '%{count} пријави' no_reports: Нема пријави - report_created_at: Првпат пријавено на %{datetime} - last_resolved_at: Последно пријавено на %{datetime} - last_updated_at: Последно пријавено на %{datetime} од %{displayname} + report_created_at_html: Првпат пријавено на %{datetime} + last_resolved_at_html: Последно пријавено на %{datetime} + last_updated_at_html: Последно пријавено на %{datetime} од %{displayname} resolve: Реши ignore: Занемари reopen: Повторно отвори @@ -1624,6 +1627,8 @@ mk: loaded: one: успешно вчитано со %{trace_points} од %{count} можни точки. other: успешно вчитано со %{trace_points} од %{count} можни точки. + all_your_traces_html: Сите ваши успешно подигнати GPX-траги ќе ги најдете на + %{url}. subject: '[OpenStreetMap] Успешен увоз на GPX-податотека' signup_confirm: subject: '[OpenStreetMap] Добре дојдовте на OpenStreetMap' @@ -1742,8 +1747,6 @@ mk: messages: inbox: title: Примени - my_inbox: Моето сандаче - my_outbox: Моја излезна пошта messages: Имате %{new_messages} и %{old_messages} new_messages: one: '%{count} нова порака' @@ -1751,21 +1754,25 @@ mk: old_messages: one: '%{count} стара порака' other: '%{count} стари пораки' - from: Од - subject: Наслов - date: Датум no_messages_yet_html: Сè уште немате пораки. Зошто не се поврзете со некој од %{people_mapping_nearby_link}? people_mapping_nearby: картографите во вашата близина + messages_table: + from: Од + to: До + subject: Наслов + date: Датум + actions: Дејства message_summary: unread_button: Означи како непрочитано read_button: Означи како прочитано reply_button: Одговори destroy_button: Избриши + unmute_button: Премести во Примени new: title: Испрати ја пораката send_message_to_html: Испрати нова порака за %{name} - back_to_inbox: Назад во примени + back_to_inbox: Назад на примените create: message_sent: Пораката е испратена limit_exceeded: Во последно време имате испратено многу пораки. Почекајте малку, @@ -1776,17 +1783,18 @@ mk: body: За жал, нема порака со таа назнака. outbox: title: За праќање - my_inbox: Мое сандаче - my_outbox: Моја излезна пошта + actions: Дејства messages: one: Имате %{count} испратена порака other: Имате %{count} испратени пораки - to: До - subject: Наслов - date: Датум no_sent_messages_html: Сè уште немате испратено пораки. Зошто да не исконтактирате некои %{people_mapping_nearby_link}? people_mapping_nearby: картографите во вашата близина + muted: + title: Замолкнати пораки + messages: + one: '%{count} замолкната порака' + other: Имате %{count} замолкнати пораки reply: wrong_user: Најавени сте како „%{user}“, но пораката на којашто побаравте да одговорите не е испратена до тој корисник. Најавете се под правилно корисничко @@ -1802,26 +1810,36 @@ mk: име за да ја прочитате. sent_message_summary: destroy_button: Избриши + heading: + my_inbox: Примени + my_outbox: Моја излезна пошта + muted_messages: Замолкнати пораки mark: as_read: Пораката е означена како прочитана as_unread: Пораката е означена како непрочитана + unmute: + notice: Пораката е преместена во Примени + error: Пораката не можеше да се премести во Примени. destroy: destroyed: Пораката е избришана passwords: - lost_password: + new: title: Загубена лозинка heading: Ја заборавивте лозинката? email address: 'Е-пошта:' new password button: Смени лозинка help_text: Внесете ја е-поштенската адреса со која се зачленивте, и ќе ви пратиме врска каде ќе наведете нова лозинка. + create: notice email on way: Жалиме, ова истече :-( но ви пративме нова порака на е-пошта, па наскоро повторно ќе можете да ја смените. notice email cannot find: Жалам, не можев да ја пронајдам таа адреса - reset_password: + edit: title: Смени лозинка heading: Смени лозинка за %{user} reset: Смени лозинка + flash token bad: Не ја пронајдов таа шифра. Проверете ја URL-адресата. + update: flash changed: Лозинката ви е сменета. flash token bad: Не ја пронајдов таа шифра. Проверете ја URL-адресата. preferences: @@ -1929,6 +1947,7 @@ mk: image: Слика alt: Алтернативен текст url: URL + codeblock: Коден блок richtext_field: edit: Уреди preview: Преглед @@ -2170,12 +2189,7 @@ mk: без кои оваа можност не може да работи. export: title: Извези - area_to_export: Подрачје за извоз manually_select: Рачно изберете друга површина - format_to_export: Формат за извоз - osm_xml_data: OpenStreetMap XML податоци - map_image: Слика на картата (прикажува стандарден слој) - embeddable_html: HTML-код за вметнување licence: Лиценца licence_details_html: Податоците на OpenStreetMap се лиценцирани според %{odbl_link} (ODbL). @@ -2199,17 +2213,6 @@ mk: other: title: Други извори description: Другите извори се наведени на викито на OpenStreetMap - options: Нагодувања - format: Формат - scale: Размер - max: најв. - image_size: Големина на сликата - zoom: Приближи - add_marker: Додај бележник на картата - latitude: Г.Ш. - longitude: Г.Д. - output: Извод - paste_html: Ископирајте го HTML кодот за да го вметнете во страницата. export_button: Извези fixthemap: title: Пријава на проблем / Исправка на картата @@ -2308,67 +2311,83 @@ mk: primary: Главен пат secondary: Спореден пат unclassified: Некласификуван пат + pedestrian: Пешачки пат track: Патека bridleway: Пешачко-влечен пат cycleway: Велосипедска патека cycleway_national: Државна велосипедска патека cycleway_regional: Регионална велосипедска патека cycleway_local: Месна велосипедска патека + cycleway_mtb: Пат за планински велосипедизам footway: Пешачка патека rail: Железница + train: Воз subway: Метро - tram: - - Лека железница - - трамвај - cable: - - Клупна жичница - - клупна жичница - runway: - - Аеродромска писта - - рулажна патека - apron: - - Аеродромска платформа - - терминал + ferry: Траект + light_rail: Лека железница + tram: Трамвај + trolleybus: Тролејбус + bus: Автобус + cable_car: Клупна жичница + chair_lift: Клупна жичница + runway: Аеродромска писта + taxiway: Рулажна патека + apron: Аеродромска платформа admin: Административна граница + capital: Главен град + city: Град + orchard: Овоштарник + vineyard: Лозје forest: Шума - wood: Шумичка + wood: Шума + farmland: Земјоделско земјиште + grass: Трева + meadow: Ливада + bare_rock: Гола карпа + sand: Песок golf: Голф-терен park: Парк + common: Општествена земја + built_up: Изградено подрачје resident: Станбено подрачје - common: - - Општествена земја - - ливада - - градина retail: Трговско подрачје industrial: Индустриско подрачје commercial: Комерцијално подрачје heathland: Вресиште - lake: - - Езеро - - резервоар + scrubland: Шикара + lake: Езеро + reservoir: Резервоар + intermittent_water: Повремена водна површина + glacier: Ледник + reef: Гребен + wetland: Моклиште farm: Фарма brownfield: Запуштено подрачје cemetery: Гробишта allotments: Парцели pitch: Спортски терен centre: Спортски центар + beach: Плажа reserve: Природен резерват military: Воено подрачје - school: - - Училиште - - универзитет + school: Училиште + university: Универзитет + hospital: Болница building: Значајно здание station: Железничка станица - summit: - - Врв - - врв + summit: Врв + peak: Врв tunnel: Испрекината линија = тунел bridge: Црна линија = мост private: Доверлив пристап destination: Пристап до одредницата construction: Патишта во изградба + bus_stop: Автобуска постојка + stop: Постојка bicycle_shop: Точкар + bicycle_rental: Изнајмување велосипеди bicycle_parking: Паркирање велосипеди + bicycle_parking_small: Мал паркинг за велосипеди toilets: Тоалет welcome: title: Добре дојдовте! @@ -2569,6 +2588,7 @@ mk: oauth1_settings: Поставки за OAuth 1 oauth2_applications: Поставки за OAuth 2 oauth2_authorizations: Овластувања за OAuth 2 + muted_users: Замолкнати корисници oauth: authorize: title: Овластете пристап до вашата сметка @@ -2605,6 +2625,7 @@ mk: read_gpx: Читање на приватни ГПС-траги write_gpx: Подигање на ГПС-траги write_notes: Менување на белешки + write_redactions: Прикриј податоци за картата read_email: Читање на корисничка е-пошта skip_authorization: Автоодобрување на прилог oauth_clients: @@ -2771,12 +2792,14 @@ mk: my notes: Мои белешки my messages: Мои пораки my profile: Мојот профил - my settings: Мои нагодувања + my settings: Мои поставки my comments: Мои коментари my_preferences: Мои нагодувања my_dashboard: Моја управувачница blocks on me: Добиени блокови blocks by me: Извршени болокови + create_mute: Замолкни го корисников + destroy_mute: Одмолкни го корисников edit_profile: Уреди профил send message: Испрати порака diary: Дневник @@ -2808,6 +2831,7 @@ mk: importer: Одземи увознички пристап block_history: Активни блокови moderator_history: Зададени блокови + revoke_all_blocks: Отповикај ги сите блокови comments: Коментари create_block: Блокирај го корисников activate_user: Активирај го корисников @@ -2917,6 +2941,16 @@ mk: confirm: Дали сигурно дакате да го поништите овој блок? revoke: Поништи! flash: Овој блок е поништен. + 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: Активно додека не се најави корисникот. @@ -2975,6 +3009,30 @@ mk: showing_page: Страница %{page} next: Следна » previous: « Претходна + user_mutes: + index: + title: Замолкнати корисници + my_muted_users: Мои замолкнати корисници + you_have_muted_n_users: + one: Имате замолкнато %{count} корисник + other: Имате замолкнато %{count} корисници + user_mute_explainer: Пораките на замолкнатите корисници се преместуваат во посебно + сандаче Примени, и за нив нема да добивате известувања по е-пошта. + user_mute_admins_and_moderators: Можете да замолкнувате администратори и модератори, + но нивните пораки нема да бидат замолкнати. + table: + thead: + muted_user: Замолкнат корисник + actions: Дејства + tbody: + unmute: Одмолкни + send_message: Испрати порака + create: + notice: Го замолкнавте %{name}. + error: '%{name} не можеше да се замолкне. %{full_message}.' + destroy: + notice: Го одмолкнавте %{name}. + error: Корисникот не можеше да се одмолкне. Обидете се повторно. notes: index: title: Белешки создадени или коментирани од %{user} @@ -3011,6 +3069,7 @@ mk: reactivate: Преактивирај comment_and_resolve: Коментирај и реши comment: Коментирај + log_in_to_comment: Најавете се за да коментирате на оваа белешка report_link_html: Доколку оваа белешка содржи чувствителни информации кои треба да се остранат, можете да %{link}. other_problems_resolve: За сите други проблеми со белешката, решете ги самите diff --git a/config/locales/mo.yml b/config/locales/mo.yml index b8183b232..59955c5c6 100644 --- a/config/locales/mo.yml +++ b/config/locales/mo.yml @@ -546,7 +546,7 @@ mo: learn_more: Афлаць май мулте more: Май мулте passwords: - lost_password: + new: title: Рестабилиря паролей heading: Аць уйтат парола? email address: 'Адреса де поштэ електроникэ:' diff --git a/config/locales/mr.yml b/config/locales/mr.yml index d59950796..35841b091 100644 --- a/config/locales/mr.yml +++ b/config/locales/mr.yml @@ -927,7 +927,6 @@ mr: messages: inbox: title: अंतर्पेटी - my_inbox: माझी अंतर्पेटी messages: आपल्यासाठी %{new_messages} आणि %{old_messages} आहेत new_messages: one: '%{count} नवा संदेश' @@ -935,12 +934,14 @@ mr: old_messages: one: '%{count} जुना संदेश' other: '%{count} जुने संदेश' - from: पासून - subject: विषय - date: दिनांक no_messages_yet_html: आपल्यासाठी अद्याप संदेश नाहीत. %{people_mapping_nearby_link} संपर्क साधावा काय? people_mapping_nearby: जवळपासच्या इतर नकाशाकारांशी + messages_table: + from: पासून + to: प्रति + subject: विषय + date: दिनांक message_summary: unread_button: न वाचलेले अशी खूण करा read_button: वाचले अशी खूण करा @@ -962,9 +963,6 @@ mr: messages: one: आपण पाठविलेला %{count} संदेश other: आपण पाठविलेले %{count} संदेश - to: प्रति - subject: विषय - date: दिनांक no_sent_messages_html: आपण अद्याप कुठलेही संदेश पाठविलेले नाहीत. %{people_mapping_nearby_link} संपर्क साधावा काय? people_mapping_nearby: जवळपासच्या इतर नकाशाकारांशी @@ -982,20 +980,23 @@ mr: सदस्य म्हणून दाखल व्हा. sent_message_summary: destroy_button: वगळा + heading: + my_inbox: माझी अंतर्पेटी mark: as_read: संदेश वाचला आहे अशी खूण केली as_unread: संदेश वाचला नाही अशी खूण केली destroy: destroyed: संदेश वगळला passwords: - lost_password: + new: heading: परवलीचा शब्द विसरला? email address: 'विपत्र पत्ता:' new password button: परवलीचा शब्द पुनर्स्थापित करा - reset_password: + edit: title: परवलीचा शब्द पुनर्स्थापित करा heading: '%{user}साठी परवलीचा शब्द पुनर्स्थापित करा' reset: परवलीचा शब्द पुनर्स्थापित करा + update: flash changed: आपला परवलीचा शब्द बदलण्यात आला आहे. preferences: show: @@ -1089,12 +1090,7 @@ mr: anon_edits_link_text: असे का आहे ते जाणून घ्या. export: title: निर्यात - area_to_export: निर्यात करावयाचे क्षेत्र manually_select: वेगळे क्षेत्र निवडा - format_to_export: निर्यातीचे प्रारुप - osm_xml_data: ओपनस्ट्रीटमॅप XML डाटा - map_image: नकाशा चित्र (प्रमाणित स्तर दाखविते) - embeddable_html: अंतःस्थापन करण्याजोगी HTML licence: परवाना too_large: advice: 'जर वरील निर्यात करण्यास अपयश आले, तर कृपया खालील स्रोत वापरण्याचा @@ -1115,17 +1111,6 @@ mr: other: title: इतर स्रोत description: ओपनस्ट्रीटमॅप विकीवर सूचीबद्ध अतिरिक्त स्रोत - options: विकल्प - format: आराखडा - scale: प्रमाण - max: कमाल - image_size: चित्राचा आकार - zoom: मोठे करा - add_marker: नकाशावर दर्शकचिन्ह जोडा - latitude: 'अक्षांश:' - longitude: 'रेखांश:' - output: उत्पादन - paste_html: संकेतस्थळावर अंतःस्थापनासाठी HTML चिकटवा export_button: निर्यात fixthemap: title: समस्या नोंदवा/नकाशा नीयत करा @@ -1171,33 +1156,23 @@ mr: footway: पदपथ rail: लोहमार्ग subway: मेट्रो - tram: - - हलकी रेल्वे - - ट्राम - cable: - - रज्जुमार्ग - - खुर्ची उद्वाहन - runway: - - विमानतळ धावपट्टी - - खेचमार्ग - apron: - - विमानतळावरील भरणतळ - - अग्र + cable_car: रज्जुमार्ग + chair_lift: खुर्ची उद्वाहन + runway: विमानतळ धावपट्टी + taxiway: खेचमार्ग + apron: विमानतळावरील भरणतळ admin: प्रशासकीय सीमा forest: वन wood: जंगल golf: गोल्फ कोर्स park: उद्यान + common: सार्वजनिक जमीन resident: निवासी क्षेत्र - common: - - सार्वजनिक जमीन - - कुरण retail: विक्री क्षेत्र industrial: औद्योगिक क्षेत्र commercial: वाणिज्यिक क्षेत्र - lake: - - तलाव - - जलाशय + lake: तलाव + reservoir: जलाशय farm: मळा cemetery: दफनभूमी allotments: वाटप @@ -1205,14 +1180,12 @@ mr: centre: क्रीडाकेंद्र reserve: अभयारण्य military: लष्करी क्षेत्र - school: - - शाळा - - विद्यापीठ + school: शाळा + university: विद्यापीठ building: महत्वपूर्ण इमारत station: रेल्वे स्थानक - summit: - - शिखर - - शिखर + summit: शिखर + peak: शिखर tunnel: तुटक कड = बोगदा bridge: काळी कड = पूल private: खाजगी प्रवेश diff --git a/config/locales/ms.yml b/config/locales/ms.yml index 170a23977..b214e43fc 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -1337,16 +1337,17 @@ ms: messages: inbox: title: Peti Masuk - my_inbox: Peti masuk saya messages: Anda ada %{new_messages} dan %{old_messages} new_messages: '%{count} pesanan baru' old_messages: '%{count} pesanan lama' - from: Daripada - subject: Subjek - date: Tarikh 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 @@ -1367,9 +1368,6 @@ ms: outbox: title: Peti Keluar messages: Anda ada %{count} pesanan terhantar - to: Kepada - subject: Subjek - date: Tarikh no_sent_messages_html: Anda belum menghantar pesanan. Apa kata anda berhubung dengan %{people_mapping_nearby_link}? people_mapping_nearby: pemeta-pemeta yang berdekatan @@ -1388,29 +1386,33 @@ ms: 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 passwords: - lost_password: + new: title: Terlupa kata laluan heading: Lupa Kata Laluan? email address: 'Alamat E-mel:' new password button: Set semula kata laluan help_text: Isikan alamat e-mel yang anda gunakan untuk mendaftar. Kami akan menge-melkan pautan untuk anda mengeset semula kata laluan anda. + create: notice email on way: Kesiannya anda sudah terlupa kata laluan :-( tetapi kami akan menghantar satu pesanan e-mel untuk anda mengesetnya semula tidak lama lagi. notice email cannot find: Maaf, alamat e-mel itu tidak dapat dijumpai. - reset_password: + edit: title: Set semula kata laluan heading: Set Semula Kata Laluan untuk %{user} reset: Set Semula Kata Laluan - flash changed: Kata laluan anda telah ditukar. flash token bad: Token itu tidak dijumpai; sila semak URL-nya. + update: + flash changed: Kata laluan anda telah ditukar. preferences: show: title: Keutamaan Saya @@ -1600,12 +1602,7 @@ ms: untuk ciri ini. export: title: Eksport - area_to_export: Kawasan untuk Dieksport manually_select: Pilih kawasan yang lain secara insani - format_to_export: Format untuk Dieksport - osm_xml_data: Data XML OpenStreetMap - map_image: Imej Peta (memaparkan paparan piawai) - embeddable_html: HTML Boleh Benam licence: Lesen too_large: advice: 'Jika pengeksportan di atas gagal, sila pertimbangkan untuk menggunakan @@ -1627,17 +1624,6 @@ ms: other: title: Sumber-sumber Lain description: Sumber-sumber lanjutan yang tersenarai di wiki OpenStreetMap - options: Pilihan - format: Format - scale: Skala - max: maks - image_size: Saiz Imej - zoom: Zum - add_marker: Bubuh penanda pada peta - latitude: 'GL:' - longitude: 'GB:' - output: Output - paste_html: Tampalkan HTML untuk dibenamkan dalam tapak web export_button: Eksport fixthemap: title: Laporkan masalah / Baiki peta @@ -1722,34 +1708,24 @@ ms: footway: Laluan pejalan kaki rail: Landasan keretapi subway: Landasan bawah tanah - tram: - - Rel ringan - - tram - cable: - - Kereta kabel - - lif kerusi - runway: - - Landasan kapal terbang - - jalan rayap - apron: - - Kawasan gerak lapangan terbang - - terminal + cable_car: Kereta kabel + chair_lift: lif kerusi + runway: Landasan kapal terbang + taxiway: jalan rayap + apron: Kawasan gerak lapangan terbang admin: Sempadan pentadbiran forest: Hutan wood: Hutan kecil golf: Padang golf park: Taman + common: Tanah awam resident: Kawasan perumahan - common: - - Tanah awam - - padang rumput retail: Kawasan peruncitan industrial: Kawasan perindustrian commercial: Kawasan perdagangan heathland: Kawasan rawa - lake: - - Tasik - - takungan + lake: Tasik + reservoir: takungan farm: Ladang brownfield: Tanah terbiar cemetery: Perkuburan @@ -1758,14 +1734,12 @@ ms: centre: Pusat sukan reserve: Cagar alam military: Kawasan tentera - school: - - Sekolah - - universiti + school: Sekolah + university: universiti building: Bangunan penting station: Stesen keretapi - summit: - - Kemuncak - - puncak + summit: Kemuncak + peak: puncak tunnel: Kasing bertitik-titik = terowong bridge: Kasing hitam = jambatan private: Jalan masuk persendirian diff --git a/config/locales/my.yml b/config/locales/my.yml index 4e978e7c9..e3c440284 100644 --- a/config/locales/my.yml +++ b/config/locales/my.yml @@ -562,7 +562,9 @@ my: messages: inbox: title: အဝင်စာ + messages_table: from: မှ + to: သို့ subject: အကြောင်းအရာ date: နေ့စွဲ message_summary: @@ -578,9 +580,6 @@ my: heading: ယင်းကဲ့သို့မက်ဆေ့မရှိပါ outbox: title: အထွက်စာ - to: သို့ - subject: အကြောင်းအရာ - date: နေ့စွဲ show: title: မက်ဆေ့ ဖတ်ရန် reply_button: အကြောင်းပြန်ရန် @@ -589,15 +588,16 @@ my: sent_message_summary: destroy_button: ဖျက်​ပါ​ passwords: - lost_password: + new: title: စကားဝှက် ပျောက်ဆုံးသွား heading: စကားဝှက် မေ့နေပါသလား email address: 'အီးမေး လိပ်စာ :' new password button: စကားဝှက်ကို ပြန်ချိန်ရန် - reset_password: + edit: title: စကားဝှက်ကို ပြန်ချိန်ရန် heading: '%{user} အတွက် စကားဝှက်ကို ပြန်ချိန်ရန်' reset: စကားဝှက်ကို ပြန်ချိန်ရန် + update: flash changed: သင့်စကားဝှက်ကို ပြောင်းလဲပြီးပါပြီ sessions: new: @@ -655,11 +655,6 @@ my: too_large: other: title: အခြားရင်းမြစ်များ - options: ရွေးပိုင်ခွင့် - image_size: ရုပ်ပုံ အရွယ်အစား - zoom: ချုံ့/ချဲ့ကြည့်ရန် - latitude: 'လတ္တီ:' - longitude: 'လောင်ဂျီ:' export_button: တင်ပို့ရန် fixthemap: how_to_help: @@ -689,16 +684,13 @@ my: bridleway: မြင်းစီးလမ်း cycleway: စက်ဘီးသွားလမ်း rail: ရထားလမ်း - runway: - - လေယာဉ်ကွင်းပြေးလမ်း + runway: လေယာဉ်ကွင်းပြေးလမ်း forest: သစ်တော park: ပန်းခြံ - lake: - - ရေကန် + lake: ရေကန် cemetery: သုဿန် - school: - - ကျောင်း - - တက္ကသိုလ် + school: ကျောင်း + university: တက္ကသိုလ် station: ရထားဘူတာ construction: ဖောက်နေဆဲ လမ်းများ toilets: အိမ်သာများ diff --git a/config/locales/nb.yml b/config/locales/nb.yml index 5f079b028..c8fa8937d 100644 --- a/config/locales/nb.yml +++ b/config/locales/nb.yml @@ -1276,9 +1276,9 @@ nb: one: '%{count} rapport' other: '%{count} rapporter' no_reports: Ingen rapporter - report_created_at: Første gang rapportert %{datetime} - last_resolved_at: Siste gang løst %{datetime} - last_updated_at: Siste gang oppdatert %{datetime} av %{displayname} + report_created_at_html: Første gang rapportert %{datetime} + last_resolved_at_html: Siste gang løst %{datetime} + last_updated_at_html: Siste gang oppdatert %{datetime} av %{displayname} resolve: Løs ignore: Se bort fra reopen: GjenÃ¥pne @@ -1497,7 +1497,6 @@ nb: messages: inbox: title: Innboks - my_inbox: Min innboks messages: Du har %{new_messages} og %{old_messages} new_messages: one: '%{count} ny melding' @@ -1505,12 +1504,14 @@ nb: old_messages: one: '%{count} gammel melding' other: '%{count} gamle meldinger' - from: Fra - subject: Emne - date: Dato 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 message_summary: unread_button: Marker som ulest read_button: Marker som lest @@ -1530,13 +1531,9 @@ nb: body: Det er ingen melding med den ID-en. outbox: title: Utboks - my_inbox: Min innboks messages: one: Du har %{count} sendt melding other: Du har %{count} sendte meldinger - to: Til - subject: Emne - date: Dato 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 @@ -1553,28 +1550,32 @@ nb: 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 mark: as_read: Melding markert som lest as_unread: Melding markert som ulest destroy: destroyed: Melding slettet passwords: - lost_password: + new: title: Glemt passord heading: Glemt passord? email address: 'E-postadresse:' new password button: Nullstill passord help_text: Skriv inn e-postadressen du brukte for Ã¥ registrere deg, og vi vil sende deg ei lenke som du kan bruke til Ã¥ nullstille passordet ditt. + create: notice email on way: Synd at du mistet det, men en e-post er pÃ¥ vei slik at du kan tilbakestille det snart. notice email cannot find: Klarte ikke finne den e-postadressen. Beklager. - reset_password: + edit: title: Nullstill passord heading: Nullstill passord for %{user} reset: Nullstill passord - flash changed: Ditt passord er endret. flash token bad: Kunne ikke finne den nøkkelen. Sjekke URLen kanskje? + update: + flash changed: Ditt passord er endret. preferences: show: preferred_languages: Foretrukne sprÃ¥k @@ -1721,12 +1722,7 @@ nb: for denne egenskapen. export: title: Eksporter - area_to_export: OmrÃ¥de som skal eksporteres manually_select: Velg et annet omrÃ¥de manuelt - format_to_export: Eksportformat - osm_xml_data: OpenStreetMap XML-data - map_image: Kartbilde (viser standardlag) - embeddable_html: HTML som kan bygges inn licence: Lisens too_large: advice: 'Hvis eksporten over skulle feile kan du forsøke Ã¥ bruke av en av @@ -1747,17 +1743,6 @@ nb: other: title: Andre kilder description: Ytterliger kilder listet pÃ¥ OpenStreetMap-wikien - options: Valg - format: Format - scale: Skala - max: maks - image_size: Bildestørrelse - zoom: Zoom - add_marker: Legg til en markør pÃ¥ kartet - latitude: 'Bre:' - longitude: 'Len:' - output: Utdata - paste_html: Lim inn HTML som skal bygges inn i nettsted export_button: Eksporter fixthemap: title: Rapporter et problem / Korriger kartet @@ -1840,34 +1825,24 @@ nb: footway: Gangvei rail: Jernbane subway: Undergrunnsbane - tram: - - Bybane - - trikk - cable: - - Kabelvogn - - stolheis - runway: - - Flystripe - - taksebane - apron: - - terminal - - terminal + cable_car: Kabelvogn + chair_lift: stolheis + runway: Flystripe + taxiway: taksebane + apron: terminal admin: Administrativ grense forest: Skog wood: Ved golf: Golfbane park: Park + common: Vanlig resident: BoligomrÃ¥de - common: - - Vanlig - - eng retail: DetaljsalgomrÃ¥de industrial: IndustriomrÃ¥de commercial: Kommersielt omrÃ¥de heathland: Heilandskap - lake: - - Innsjø - - reservoar + lake: Innsjø + reservoir: reservoar farm: GÃ¥rd brownfield: Tidligere industriomrÃ¥de cemetery: Gravplass @@ -1876,14 +1851,12 @@ nb: centre: Sportssenter reserve: Naturreservat military: Militært omrÃ¥de - school: - - Skole - - universitet + school: Skole + university: universitet building: Viktig bygning station: Jernbanestasjon - summit: - - Topp - - fjelltopp + summit: Topp + peak: fjelltopp tunnel: Streket kant = tunnel bridge: Sort kant = bru private: Privat tilgang diff --git a/config/locales/nds.yml b/config/locales/nds.yml index 0a465ab79..0fd29f799 100644 --- a/config/locales/nds.yml +++ b/config/locales/nds.yml @@ -429,10 +429,11 @@ nds: messages: inbox: title: Postfack Ingang - my_inbox: Mien Postfack Ingang + people_mapping_nearby: Koortenmakers in de Neegd + messages_table: from: Von + to: An date: Datum - people_mapping_nearby: Koortenmakers in de Neegd message_summary: unread_button: as ‚noch nich leest‘ kennteken read_button: as ‚leest‘ kennteken @@ -445,25 +446,25 @@ nds: message_sent: Naricht afsennt outbox: title: Postfack Utgang - to: An - subject: Thema - date: Datum show: reply_button: Antern sent_message_summary: destroy_button: Wegdoon + heading: + my_inbox: Mien Postfack Ingang destroy: destroyed: Naricht wegdaan passwords: - lost_password: + new: title: Passwoord vergeten heading: Passwoord vergeten? email address: 'E-Mail-Adress:' new password button: Passwoord trüchsetten - reset_password: + edit: title: Passwoord trüchsetten heading: Passwoord för %{user} trüchsetten reset: Passwoord trüchsetten + update: flash changed: Dien Passwoord is nu ännert. profiles: edit: @@ -489,15 +490,6 @@ nds: user_page_link: Brukersied export: licence: Lizenz - format: 'Format:' - scale: Skaal - max: max. - image_size: 'Bildgrött:' - zoom: Zoom - add_marker: Sett en Markteken op de Koort - latitude: 'Breed:' - longitude: 'Läng:' - output: Utgaav export_button: Export sidebar: close: Sluten @@ -519,34 +511,24 @@ nds: footway: Footpadd rail: Iesenbahn subway: U-Bahn - tram: - - Stadtbahn - - Stratenbahn - cable: - - Kavelbahn - - Skilift - runway: - - Fleger-Lannbahn - - Fleger-Rullweg - apron: - - Terminal - - Terminal + cable_car: Kavelbahn + chair_lift: Skilift + runway: Fleger-Lannbahn + taxiway: Fleger-Rullweg + apron: Terminal admin: Grenz forest: Forst wood: Woold golf: Golfplatz park: Park + common: Wisch resident: Wahnrebeed - common: - - Wisch - - Wisch retail: Ladenrebeed industrial: Industrierebeed commercial: Hannelsrebeed heathland: Heid - lake: - - See - - Stausee + lake: See + reservoir: Stausee farm: Buurnhoff brownfield: Industrie-Braakland cemetery: Karkhoff @@ -555,14 +537,12 @@ nds: centre: Sportzentrum reserve: Naturpark military: Militärrebeed - school: - - School - - Universität + school: School + university: Universität building: Wichtig Bowark station: Bahnhoff - summit: - - Bargtopp - - Bargtopp + summit: Bargtopp + peak: Bargtopp tunnel: Strekel-Rand = Tunnel bridge: Fett Rand = Brügg private: Privat Togang diff --git a/config/locales/ne.yml b/config/locales/ne.yml index 68536eaf8..a2422fcf4 100644 --- a/config/locales/ne.yml +++ b/config/locales/ne.yml @@ -822,8 +822,9 @@ ne: messages: inbox: title: इनबक्स - my_inbox: मेरो इनबक्स + messages_table: from: बाट + to: लाई subject: विषय date: मिति message_summary: @@ -842,9 +843,6 @@ ne: heading: त्यस्तो कुनै पनि सन्देश छैन outbox: title: आउटबक्स - to: लाई - subject: विषय - date: मिति show: title: सन्देश पढ्नुहोस् reply_button: जवाफ दिने @@ -853,18 +851,21 @@ ne: back: पछाडि sent_message_summary: destroy_button: हटाउनुहोस् + heading: + my_inbox: मेरो इनबक्स destroy: destroyed: सन्देश मेटियो passwords: - lost_password: + new: title: पासवर्ड बिर्सियो heading: पासवर्ड बिर्सिनुभयो ? email address: 'इमेल ठेगाना:' new password button: प्रवेस शब्द परिवर्तन गर्ने - reset_password: + edit: title: प्रवेस शब्द परिवर्तन गर्ने heading: '%{user}को लागि प्रवेस शब्द परिवर्तन गर्ने' reset: नयाँ प्रवेशशव्द + update: flash changed: तपाईंको प्रवेश शब्द परिवर्तन गरिएको छ। profiles: edit: @@ -908,12 +909,7 @@ ne: user_page_link: प्रयोगकर्ता पृष्ठ export: title: निर्यात गर्नुहोस् - area_to_export: निर्यात गर्ने क्षेत्र manually_select: आफै अर्को क्षेत्र छान्नुहोस - format_to_export: निर्यात गर्ने ढाँचा - osm_xml_data: OpenStreetMap XML डेटा - map_image: नक्साको तस्वीर (सर्वस्वीकृत सतहहरू देखाउँछ) - embeddable_html: थप्नलायक HTML licence: इजाजतपत्र too_large: advice: निर्यात गर्ने प्रक्रिया असफल भएमा तल दिइएका स्रोतहरू प्रयोग गर्नुहोस्- @@ -934,17 +930,6 @@ ne: other: title: अन्य स्रोतहरू description: ओपनस्ट्रीटम्याप विकिमा सूचीत थप स्रोतहरू - options: विकल्पहरू - format: ढाँचा - scale: स्केल - max: अधिकतम - image_size: तस्वीर आकार - zoom: जुम - add_marker: नक्शामा चिह्न थप्नुहोस् - latitude: 'अक्षांश:' - longitude: 'देशान्तर:' - output: उत्पादन - paste_html: वेबसाइट इम्बेड गर्न HTML पेस्ट गर्नुहोस् export_button: निर्यात गर्नुहोस् fixthemap: how_to_help: @@ -990,25 +975,21 @@ ne: cycleway: साइकल मार्ग rail: रेलमार्ग subway: सबवे - cable: - - केबल कार - - कुर्सी लिफ्ट + cable_car: केबल कार + chair_lift: कुर्सी लिफ्ट forest: वन wood: कुञ्ज golf: गल्फ कोर्स park: उद्यान resident: आवासीय क्षेत्र - lake: - - ताल - - मुहान + lake: ताल + reservoir: मुहान farm: खेती cemetery: अन्त्यष्टी स्थल - school: - - विद्यालय - - विश्वविद्यालय - summit: - - शिखर - - शिखर + school: विद्यालय + university: विश्वविद्यालय + summit: शिखर + peak: शिखर bicycle_shop: साइकल पसल bicycle_parking: साकल पार्किङ toilets: शौचालय diff --git a/config/locales/nl.yml b/config/locales/nl.yml index 2b66ed417..d48f6db74 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -191,7 +191,7 @@ nl: details: Geef wat meer details over het probleem (verplicht). user: auth_provider: Authenticatiedienst - auth_uid: Authenticatie UID + auth_uid: Authenticatie-UID email: E-mail email_confirmation: E-mailbevestiging new_email: Nieuw e-mailadres @@ -206,8 +206,9 @@ nl: pass_crypt_confirmation: Wachtwoord bevestigen help: doorkeeper/application: - confidential: Toepassing wordt gebruikt waar het clientgeheim vertrouwelijk - kan worden gehouden (native mobiele apps en éénpagina-apps zijn niet vertrouwelijk) + confidential: De applicatie wordt gebruikt waar het clientgeheim vertrouwelijk + kan worden gehouden (voor mobiele apparaten ontworpen apps en éénpagina-apps + zijn niet vertrouwelijk) redirect_uri: Gebruik één regel per URI trace: tagstring: kommagescheiden @@ -1524,9 +1525,9 @@ nl: one: '%{count} rapport' other: '%{count} rapporten' no_reports: Geen rapporten - report_created_at: Voor het eerst vermeld op %{datetime} - last_resolved_at: Laatst opgelost op %{datetime} - last_updated_at: Laatst bijgewerkt op %{datetime} door %{displayname} + report_created_at_html: Voor het eerst vermeld op %{datetime} + last_resolved_at_html: Laatst opgelost op %{datetime} + last_updated_at_html: Laatst bijgewerkt op %{datetime} door %{displayname} resolve: Oplossen ignore: Negeren reopen: Heropenen @@ -1815,8 +1816,6 @@ nl: messages: inbox: title: Postvak IN - my_inbox: Mijn Postvak IN - my_outbox: Mijn Postvak UIT messages: U hebt %{new_messages} en %{old_messages} new_messages: one: '%{count} nieuw bericht' @@ -1824,12 +1823,14 @@ nl: old_messages: one: '%{count} oud bericht' other: '%{count} oude berichten' - from: Van - subject: Onderwerp - date: Datum no_messages_yet_html: U hebt nog geen berichten. Waarom legt u geen contact met %{people_mapping_nearby_link}? people_mapping_nearby: dichtbijzijnde mappers + messages_table: + from: Van + to: Aan + subject: Onderwerp + date: Datum message_summary: unread_button: Markeren als ongelezen read_button: Markeren als gelezen @@ -1849,14 +1850,9 @@ nl: body: Er is geen bericht met dat ID. outbox: title: Postvak UIT - my_inbox: Mijn Postvak IN - my_outbox: Mijn Postvak UIT messages: one: U hebt één verzonden bericht other: U hebt %{count} verzonden berichten - to: Aan - subject: Onderwerp - date: Datum no_sent_messages_html: U hebt nog geen berichten verzonden. Waarom legt u geen contact met %{people_mapping_nearby_link}? people_mapping_nearby: dichtbijzijnde mappers @@ -1875,13 +1871,16 @@ nl: 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 mark: as_read: Gemarkeerd als gelezen as_unread: Gemarkeerd als ongelezen destroy: destroyed: Het bericht is verwijderd passwords: - lost_password: + new: title: Wachtwoord vergeten heading: Wachtwoord vergeten? email address: 'E-mailadres:' @@ -1889,13 +1888,16 @@ nl: help_text: Voer het e-mailadres in dat u hebt opgegeven bij uw registratie. We sturen u dan een webkoppeling die u kunt gebruiken om uw wachtwoord opnieuw in te stellen. + create: notice email on way: Spijtig om te horen dat u het vergeten bent, maar er is een e-mail onderweg zodat u uw wachtwoord opnieuw kunt instellen. notice email cannot find: Dat e-mailadres kon helaas niet worden gevonden. - reset_password: + edit: title: Wachtwoord opnieuw instellen heading: Wachtwoord voor %{user} opnieuw instellen reset: Wachtwoord opnieuw instellen + flash token bad: Het token kon niet gevonden worden. Controleer de URL. + update: flash changed: Uw wachtwoord is gewijzigd. flash token bad: Het token kon niet gevonden worden. Controleer de URL. preferences: @@ -2252,12 +2254,7 @@ nl: deze functie. export: title: Exporteren - area_to_export: Te exporteren gebied manually_select: Handmatig een ander gebied selecteren - format_to_export: Bestandsformaat - osm_xml_data: OpenStreetMap XML-gegevens - map_image: Kaartafbeelding (geeft de standaard laag weer) - embeddable_html: HTML-code licence: Licentie licence_details_html: OpenStreetMap-gegevens zijn gelicentieerd onder de %{odbl_link} (ODbL). @@ -2281,17 +2278,6 @@ nl: other: title: Andere bronnen description: Extra bronnen die worden vermeld op de OpenStreetMap-wiki - options: Opties - format: 'Formaat:' - scale: Schaal - max: max - image_size: 'Afbeeldingsgrootte:' - zoom: Zoomen - add_marker: Marker op de kaart zetten - latitude: 'Breedte:' - longitude: 'Lengte:' - output: Uitvoer - paste_html: Kopieer de HTML-code en voeg deze toe aan uw website export_button: Exporteren fixthemap: title: Een probleem melden / de kaart corrigeren @@ -2402,36 +2388,41 @@ nl: cycleway_local: Lokale fietsroute footway: Voetpad rail: Spoorweg + train: Trein subway: Metro - tram: - - Lightrail - - tram - cable: - - Kabelbaan - - stoeltjeslift - runway: - - Start- en landingsbaan - - taxibaan - apron: - - Luchthavenplatform - - terminal + ferry: Veerboot + light_rail: Lightrail + tram: Tram + trolleybus: Trolleybus + bus: Bus + cable_car: Kabelbaan + chair_lift: Stoeltjeslift + runway: Start- en landingsbaan + taxiway: Taxibaan + apron: Luchthavenplatform admin: Bestuurlijke grens + orchard: Boomgaard + vineyard: Wijngaard forest: Bos wood: Bos + farmland: Landbouwgrond + grass: Gras + meadow: Weide + bare_rock: Kale rots + sand: Zand golf: Golfbaan park: Park + common: Gemene grond + built_up: Bebouwde kom resident: Woongebied - common: - - Gemene grond - - weide - - tuin retail: Winkelgebied industrial: Industriegebied commercial: Commercieel gebied heathland: Heide - lake: - - Meer - - reservoir + scrubland: Struikgewas + lake: Meer + reservoir: Reservoir + glacier: Gletsjer farm: Boerderij brownfield: Braakliggend terrein cemetery: Begraafplaats @@ -2440,19 +2431,19 @@ nl: centre: Sportcentrum reserve: Natuurreservaat military: Militair gebied - school: - - School - - universiteit + school: School; universiteit + university: Universiteit building: Belangrijk gebouw station: Spoorwegstation - summit: - - Top - - piek + summit: Top + peak: Piek tunnel: Tunnel bridge: Brug private: Privétoegang destination: Bestemmingsverkeer construction: Weg in aanleg + bus_stop: Bushalte + stop: Halte bicycle_shop: Fietsenwinkel bicycle_parking: Fietsenstalling toilets: Toiletten @@ -2498,6 +2489,7 @@ nl: imports: Importeringen automated_edits: Geautomatiseerde bewerkingen start_mapping: Beginnen met kaarten maken + continue_authorization: Doorgaan met autoriseren add_a_note: title: Geen tijd om te bewerken? Voeg een opmerking toe! para_1: Als u gewoon iets kleins wilt verbeteren en niet de tijd hebt om u @@ -3008,8 +3000,8 @@ nl: helper: time_future_html: Vervalt over %{time}. until_login: Actief totdat de gebruiker zich aanmeldt. - time_future_and_until_login_html: Eindigt in %{time} en nadat de gebruiker ingelogd - is. + time_future_and_until_login_html: Eindigt in %{time} en nadat de gebruiker zich + heeft aangemeld. time_past_html: '%{time} vervallen.' block_duration: hours: diff --git a/config/locales/nn.yml b/config/locales/nn.yml index 2f022d908..2cb252331 100644 --- a/config/locales/nn.yml +++ b/config/locales/nn.yml @@ -5,6 +5,7 @@ # Author: Amire80 # Author: Bjorni # Author: Danieldegroot2 +# Author: Dimitar # Author: Dittaeva # Author: Eirik # Author: Gnonthgol @@ -1382,9 +1383,9 @@ nn: one: '%{count} melding' other: '%{count} meldingar' no_reports: Ingen meldingar - report_created_at: Fyrst meld %{datetime} - last_resolved_at: Sist løyst %{datetime} - last_updated_at: Sis oppdatert %{datetime} av %{displayname} + report_created_at_html: Fyrst meld %{datetime} + last_resolved_at_html: Sist løyst %{datetime} + last_updated_at_html: Sis oppdatert %{datetime} av %{displayname} resolve: Løys ignore: SjÃ¥ bort frÃ¥ reopen: Opna att @@ -1658,8 +1659,6 @@ nn: messages: inbox: title: Mottekne - my_inbox: Mottekne - my_outbox: Sende messages: Du har %{new_messages} og %{old_messages} new_messages: one: '%{count} ny melding' @@ -1667,12 +1666,14 @@ nn: old_messages: one: '%{count} gamal melding' other: '%{count} gamle meldingar' - from: FrÃ¥ - subject: Emne - date: Dato 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 @@ -1692,14 +1693,9 @@ nn: body: Det er inga melding med den ID-en. outbox: title: Sende - my_inbox: Mottekne - my_outbox: Sende messages: one: Du har %{count} send melding other: Du har %{count} sende meldingar - to: Til - subject: Emne - date: Dato 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 @@ -1716,28 +1712,33 @@ nn: 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 passwords: - lost_password: + new: title: Gløymt passord heading: Gløymt passord? email address: 'E-postadresse:' new password button: Nullstill passord help_text: Skriv inn e-postadressa du brukte for Ã¥ registrere deg, og me vil sende deg ei lenkje som du kan bruke til Ã¥ nullstille passordet ditt. + create: notice email on way: Synd at du mista det, men ein e-post er pÃ¥ veg slik at du kan tilbakestille det snart. notice email cannot find: Klarte ikkje finne den e-postadressa. Beklagar. - reset_password: + edit: title: Nullstill passord heading: Nullstill passord for %{user} reset: Nullstill passord - flash changed: Passordet ditt er endra. flash token bad: Kunne ikkje finne den nøkkelen. Sjekke URLen kanskje? + update: + flash changed: Passordet ditt er endra. preferences: show: title: Innstillingar @@ -2056,12 +2057,7 @@ nn: for denne eigenskapen. export: title: Eksporter - area_to_export: OmrÃ¥de som skal eksporterast manually_select: Vel eit anna omrÃ¥de manuelt - format_to_export: Format for eksport - osm_xml_data: OpenStreetMap XML-data - map_image: Kartblad (viser standard laget) - embeddable_html: HTML som kan byggjast inn licence: Lisens licence_details_html: Data frÃ¥ OpenStreetMap er lisensert under %{odbl_link} (ODbL). @@ -2083,17 +2079,6 @@ nn: other: title: Andre kjelder description: Yttarlegare kjelder hjÃ¥ OpenStreetMap sin wiki - options: Val - format: Format - scale: Skala - max: maks - image_size: Bildestørrelse - zoom: Zoom - add_marker: Legg til ein markør pÃ¥ kartet - latitude: 'Brei:' - longitude: 'Len:' - output: Utdata - paste_html: Lim inn HTML som skal byggjast inn i nettstad export_button: Eksporter fixthemap: title: Rapporter eit problem/Korriger kartet @@ -2178,34 +2163,24 @@ nn: footway: Gangveg rail: Jernbane subway: Undergrunnsbane - tram: - - Bybane - - trikk - cable: - - Kabelvogn - - stolheis - runway: - - Flystripe - - taksebane - apron: - - terminal - - terminal + cable_car: Kabelvogn + chair_lift: stolheis + runway: Flystripe + taxiway: taksebane + apron: terminal admin: Administrativ grense forest: Skog wood: Ved golf: Golfbane park: Park + common: Vanleg resident: BoligomrÃ¥de - common: - - Vanleg - - snever retail: DetaljsalgomrÃ¥de industrial: IndustriomrÃ¥de commercial: Kommersielt omrÃ¥de heathland: Heilandskap - lake: - - Innsjø - - reservoar + lake: Innsjø + reservoir: reservoar farm: Gard brownfield: Tidlegare industriomrÃ¥de cemetery: Gravplass @@ -2214,14 +2189,12 @@ nn: centre: Sportssenter reserve: Naturreservat military: Militært omrÃ¥de - school: - - Skule - - universitet + school: Skule + university: universitet building: Viktig bygning station: Jernbanestasjon - summit: - - Topp - - fjelltopp + summit: Topp + peak: fjelltopp tunnel: Streka kant = tunnel bridge: Sort kant = bru private: Privat tilgjenge @@ -2417,7 +2390,7 @@ nn: consider_pd: I tillegg til den ovannemnde avtala ansar eg bidraga mine for Ã¥ vere i public domain consider_pd_why: kva er dette? - consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_i_want_my_contributions_to_be_public_domain + consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_i_want_my_contributions_to_be_public_domain decline: AvslÃ¥ you need to accept or decline: Les og deretter anten godta eller avslÃ¥ dei nye bidragsytervilkÃ¥ra for Ã¥ halde fram. diff --git a/config/locales/nqo.yml b/config/locales/nqo.yml index 846b4375e..cabe99246 100644 --- a/config/locales/nqo.yml +++ b/config/locales/nqo.yml @@ -1021,9 +1021,9 @@ nqo: resolved: ߊ߬ ߓߘߊ߫ ߢߊߓߐ߫ show: title: '%{status} ߝߌ߬ߛߌ #%{issue_id}' - report_created_at: ߞߏߝߐߟߌ߫ ߝߟߐ ߞߍ߫ ߘߊ߫ %{datetime} - last_resolved_at: ߢߊߓߐߟߌ߫ ߟߊߓߊ߲ ߞߍ߫ ߘߊ߫ %{datetime} - last_updated_at: ߊ߬ ߟߊߛߋ߫ ߟߊߓߊ߲ ߞߍ߫ ߘߊ߫ ߘߊߞߎ߲ ߘߐ߫ %{datetime} ߊ߬ ߣߌ߫ %{displayname} + report_created_at_html: ߞߏߝߐߟߌ߫ ߝߟߐ ߞߍ߫ ߘߊ߫ %{datetime} + last_resolved_at_html: ߢߊߓߐߟߌ߫ ߟߊߓߊ߲ ߞߍ߫ ߘߊ߫ %{datetime} + last_updated_at_html: ߊ߬ ߟߊߛߋ߫ ߟߊߓߊ߲ ߞߍ߫ ߘߊ߫ ߘߊߞߎ߲ ߘߐ߫ %{datetime} ߊ߬ ߣߌ߫ %{displayname} ߓߟߏ߫ resolve: ߊ߬ ߢߊߓߐ߫ ignore: ߊ߬ ߡߋߓߌ߬ߟߊ߫ @@ -1235,15 +1235,15 @@ nqo: messages: inbox: title: ߗߋߛߓߍ߫ ߟߊߣߊ߬ߣߍ߲ - my_inbox: ߒ ߠߊ߫ ߞߏ߲߬ߘߏ ߞߣߐߟߊ - my_outbox: ߒ ߠߊ߫ ߗߋߛߓߍ߫ ߗߋߣߍ߲ messages: '%{new_messages} ߟߎ߬ ߣߌ߫ %{old_messages} ߠߎ߬ ߦߴߌ ߓߟߏ߫' - from: ߞߊ߬ ߝߘߊ߫ - subject: ߝߐߡߊ - date: ߕߎ߬ߡߊ߬ߘߊ no_messages_yet_html: ߗߋߛߓߍ߫ ߕߴߌ ߓߟߏ߫ ߡߎߣߎ߲߬. ߡߎ߲߬ߠߊ߫ ߌ ߡߊ߫ ߕߘߍ߬ ߡߊ߰ߒ߬ߠߊ߬ߟߌ ߘߐ߫ %{people_mapping_nearby_link} ߟߊ߫؟ people_mapping_nearby: ߛߌ߰ߢߐ߰ߡߊ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߔߊ߬ߔߘߊ߬ߦߊ ߞߊ߲߬ + messages_table: + from: ߞߊ߬ ߝߘߊ߫ + to: ߞߊ߬ ߕߊ߯ + subject: ߝߐߡߊ + date: ߕߎ߬ߡߊ߬ߘߊ message_summary: unread_button: ߊ߬ ߞߍ߫ ߞߊ߬ߙߊ߲߬ߓߊߟߌ ߘߌ߫ read_button: ߊ߬ ߣߐ߬ߣߐ߫ ߘߐ߬ߞߊ߬ߙߊ߲߬ߣߍ߲ ߘߌ߫ @@ -1263,11 +1263,6 @@ nqo: body: ߤߊߞߍ߬ߕߏ߫߸ ߗߋߛߓߍ߫ ߛߌ߫ ߕߍ߫ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߏ߬ ߟߊ߫. outbox: title: ߗߋߟߌ߫ ߞߏ߲ߘߏ - my_inbox: ߒ ߠߊ߫ ߗߋߛߓߍ߫ ߛߐ߬ߡߐ߲߲߬ߣߍ߲ - my_outbox: ߒ ߠߊ߫ ߗߋߛߓߍ߫ ߗߋߣߍ߲ - to: ߞߊ߬ ߕߊ߯ - subject: ߝߐߡߊ - date: ߕߎ߬ߡߊ߬ߘߊ no_sent_messages_html: ߗߋߛߓߍ߫ ߗߋߣߍ߲߫ ߕߴߌ ߓߟߏ߫ ߡߎߣߎ߲߬. ߡߎ߲߬ߠߊ߫ ߌ ߡߊ߫ ߕߘߍ߬ ߓߌ߬ߟߊ߬ߒ߬ߡߊ߬ߟߌ ߘߐ߫ %{people_mapping_nearby_link}؟ people_mapping_nearby: ߡߐ߱ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߔߊ߬ߔߘߊ߬ߦߊ ߞߊ߲߬ ߌ ߕߙߐߝߍ߬ @@ -1286,28 +1281,33 @@ nqo: ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ߫ ߖߐ߲ߖߐ߲ ߘߌ߫ ߖߊ߰ߣߌ߲߫ ߛߴߌ ߘߌ߫ ߛߴߊ߬ ߘߐߞߊ߬ߙߊ߲߬ ߠߊ߫. sent_message_summary: destroy_button: ߊ߬ ߖߏ߬ߛߌ߬ + heading: + my_inbox: ߒ ߠߊ߫ ߞߏ߲߬ߘߏ ߞߣߐߟߊ + my_outbox: ߒ ߠߊ߫ ߗߋߛߓߍ߫ ߗߋߣߍ߲ mark: as_read: ߗߋߛߓߍ ߓߘߊ߫ ߣߐ߫ߣߐ߫ ߘߐ߬ߞߊ߬ߙߊ߲߬ߣߍ߲ ߘߌ߫ as_unread: ߗߋߛߓߍ ߓߘߊ߫ ߣߐ߬ߣߐ߬ ߞߊ߬ߙߊ߲߬ߓߊߟߌ ߘߌ߫ destroy: destroyed: ߗߋߛߓߍ ߓߘߊ߫ ߖߏ߬ߛߌ߫ passwords: - lost_password: + new: title: ߓߣߐ߬ ߓߘߊ߫ ߞߍ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߘߐ߫ heading: ߌ ߓߘߊ߫ ߢߌ߬ߣߊ߬ ߌ ߟߊ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߊ߫؟ email address: 'ߢߎߡߍߙߋ߲߫ ߞߏ߲ߘߏ ߛߊ߲߬ߓߊ߬ߕߐ߮:' new password button: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬ help_text: ߢ:ߞߏ߲ߘߏ ߟߊߘߏ߲߬ ߌ ߞߊ߬ ߡߍ߲ ߠߊߓߊ߯ߙߊ߫ ߞߵߌ ߜߊ߲߬ߞߎ߲߫߸ ߊ߲ ߘߌ߫ ߛߘߌ߬ߜߋ߲ ߗߴߌ ߡߵߊ߬ ߟߊ߫ ߌ ߘߴߏ߬ ߟߊߓߊ߯ߙߊ߫ ߞߵߌ ߟߊ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߫. + create: notice email on way: ߤߊߞߍ߬ߕߏ߫ ߌ ߓߘߊ߫ ߓߐߣߵߊ߬ ߘߐ߫:-(ߒ߬ߞߊ߬ ߗߋߛߓߍ ߘߏ߫ ߦߴߊ߬ ߞߣߐ߫ ߏ߬ ߘߐ߫ ߌ ߘߌ߫ ߛߴߊ߬ ߡߊߦߟߍ߬ߡߊ߲߫ ߠߊ߫ ߖߏߣߊ߫. notice email cannot find: ߢ:ߞߏ߲ߘߏ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߏ߬ ߕߴߛߋ߫ ߢߌߣߌ߲߫ ߠߊ߫߸ ߤߊߞߍ߬ߕߏ߫. - reset_password: + edit: title: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬ heading: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߫ %{user} ߦߋ߫ reset: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬ - flash changed: ߌ ߟߊ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߓߘߊ߫ ߓߊ߲߫ ߡߊߝߊ߬ߟߋ߲߬ ߠߊ߫. flash token bad: ߌ ߞߊߣߊ߬ ߖߐߟߐ߲ߞߐ ߏ߬ ߢߌߣߌ߲߫߸ URL ߡߊߝߟߍ߫ ߕߎ߬ߡߊ߬ߘߐ߫؟ + update: + flash changed: ߌ ߟߊ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߓߘߊ߫ ߓߊ߲߫ ߡߊߝߊ߬ߟߋ߲߬ ߠߊ߫. preferences: show: title: ߒ ߠߊ߫ ߦߟߌߡߊߛߙߋ ߟߎ߬ @@ -1448,11 +1448,7 @@ nqo: id_not_configured: ID ߡߊ߫ ߘߊߘߐߓߍ߲߬ ߡߎߣߎ߲߬ export: title: ߟߊ߬ߝߏ߬ߦߌ߬ߟߌ - area_to_export: ߟߊ߬ߝߏ߬ߦߌ߬ߟߌ ߞߍ߫ ߦߙߐ manually_select: ߦߙߐ߫ ߓߐߣߍ߲ߢߐ߲߰ߡߊ ߟߎ߬ ߓߊߕߐ߬ߡߐ߲߬ ߓߟߏߟߕߊߦߊ ߘߐ߫ - format_to_export: ߖߙߎߡߎ߲߫ ߛߏ߲߯ߓߕߊ - osm_xml_data: ߏߔߌ߲ߛߑߕߙߌߕߑߡߊߔ XML ߟߐ߲ߕߊ - map_image: ߡߊߔ ߖߌ߬ߦߊ߬ߓߍ (ߓߊߖߎ ߟߊߟߊߟߌ ߦߌ߬ߘߊ߬ߟߌ) too_large: planet: title: ߖߊ߯ߓߊߟߌ OSM @@ -1460,11 +1456,6 @@ nqo: title: ߛߎ߲߫ ߜߘߍ ߟߎ߬ description: ߊ߬ ߛߎ߲߫ ߞߏ ߡߞߊ߬ߝߏ߬ߟߌ߬ ߜߘߍ߫ ߟߎ߫ ߛߙߍߘߍ ߦߋ߫ ߏߔߌ߲ߛߑߕߙߌߕߑߡߊߔ ߥߞߌ ߞߊ߲߬ - options: ߢߣߊߕߊߟߌ - format: ߖߙߎߡߎ߲ - image_size: ߖߌ߬ߦߊ߬ߓߍ ߢߊ߲ߞߊ߲ - zoom: ߡߛߊ߬ߡߊ߲߬ߠߌ߲ - add_marker: ߣߐ߬ߣߐ߬ߟߊ߲ ߓߌ߬ߟߊ߬ ߡߊߔ ߟߊ߫ export_button: ߟߊ߬ߝߏ߬ߦߌ߬ߟߌ fixthemap: title: ߝߙߋߞߋ ߘߏ߫ ߟߊߞߏߝߐ߫\ߔߊ߬ߔߘߊ ߘߐߓߍ߲߬ @@ -1520,30 +1511,25 @@ nqo: footway: ߛߋ߲߬ߡߊ߬ߛߌߟߊ rail: ߣߍ߰ߛߌߟߊ subway: ߘߎ߰ߞߘߐ߬ߛߌߟߊ - cable: - - ߘߎ߲ߞߎߟߎ߲ - runway: - - ߛߊ߲ߡߊߘߊ߲ ߓߏ߬ߙߌ߬ ߛߌߟߊ - - ߥߊߟߌߥߊߟߌ ß« ߛߌߟߊ + cable_car: ߘߎ߲ߞߎߟߎ߲ + runway: ߛߊ߲ߡߊߘߊ߲ ߓߏ߬ߙߌ߬ ߛߌߟߊ + taxiway: ߥߊߟߌߥߊߟߌ ß« ߛߌߟߊ admin: ߓߐߕߏ߲߫ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ߬ߞߊ forest: ߕߎ wood: ߦߙߌ + common: ߘߍ߬ߒ߬ߡߊ߬ ߞߣߍ resident: ߡߐ߰ߘߐ߬ ߛߌߟߊ - common: - - ߘߍ߬ߒ߬ߡߊ߬ ߞߣߍ retail: ߖߎ߬ߟߦߊ߬ ߞߣߍ industrial: ߘߍ߲߰ߦߊ߬ߟߌ ߕߌ߲߬ߞߎߘߎ߲ commercial: ߖߊ߬ߥߏ ߘߌ߲߬ߞߌߙߊ - lake: - - ߞߐ߰ߖߌ߬ߘߟߊ + lake: ߞߐ߰ߖߌ߬ߘߟߊ farm: ߝߏ߬ߘߏ cemetery: ߞߊߓߙߎߟߏ centre: ߝߊ߬ߘߌ߬ߡߊ߬ߞߟߏ ߕߊ߲ߓߊ߲ reserve: ߛߎ߲ߞߎ߲ ߦߙߐ߫ ߟߊߕߏߣߍ߲ military: ߣߊ߲߬ߕߌ߰ ߕߌ߲ߞߎߘߎ߲ - school: - - ߞߊ߬ߙߊ߲߬ߕߊ - - ߖߊ߯ߓߘߊ + school: ߞߊ߬ߙߊ߲߬ߕߊ + university: ߖߊ߯ߓߘߊ station: ߣߍ߰ߛߌߟߊ ߟߐ߬ߘߊ߮ construction: ߛߌߟߊ ߡߍ߲ ߟߊ ߦߴߌ ߘߐ߫ bicycle_shop: ߣߍ߰ߛߏ߬ ߝߎ߲ߞߎ߲ diff --git a/config/locales/oc.yml b/config/locales/oc.yml index 4e5604c50..2a02782d0 100644 --- a/config/locales/oc.yml +++ b/config/locales/oc.yml @@ -1401,9 +1401,9 @@ oc: zero: Ges de rapòrt one: 1 rapport other: '%{count} rapòrts' - report_created_at: Raportat per premier còp lo %{datetime} - last_resolved_at: Reglat per darrier còp lo %{datetime} - last_updated_at: Actualizat per darrier còp lo %{datetime} per %{displayname} + report_created_at_html: Raportat per premier còp lo %{datetime} + last_resolved_at_html: Reglat per darrier còp lo %{datetime} + last_updated_at_html: Actualizat per darrier còp lo %{datetime} per %{displayname} resolve: Reglar ignore: Ignorar reopen: Tornar dobrir @@ -1667,8 +1667,6 @@ oc: messages: inbox: title: Bóstia de recepcion - my_inbox: Ma bóstia de recepcion - my_outbox: Mon mandador messages: Avètz %{new_messages} e %{old_messages} new_messages: one: '%{count} messatge novèl' @@ -1676,12 +1674,14 @@ oc: old_messages: one: '%{count} ancian messatge' other: '%{count} ancians messatges' - from: De - subject: Subjècte - date: Data 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 @@ -1701,14 +1701,9 @@ oc: body: O planhèm, i a pas cap de messatge amb aqueste identificant. outbox: title: Bóstia de mandadís - my_inbox: Mon recebedor - my_outbox: Mon mandador messages: one: Avètz %{count} messatge mandat other: Avètz %{count} messatges mandats - to: A - subject: Subjècte - date: Data 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 @@ -1727,26 +1722,31 @@ oc: 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 passwords: - lost_password: + new: title: Senhal perdut heading: Avètz perdut vòstre senhal ? email address: 'Adreça de corrièr electronic :' new password button: Mandar un senhal novèl + create: notice email on way: Un e-mail vos es estat mandat per reïnicializar vòstre senhal. notice email cannot find: Adreça email introbabla, o planhèm. - reset_password: + edit: title: Reïnicializar lo senhal heading: Reïnicializar lo senhal de %{user} reset: Reïnicializar lo senhal - flash changed: Vòstre senhal es estat modificat. flash token bad: Avètz pas trobat aqueste geton, avètz verificat l'URL ? + update: + flash changed: Vòstre senhal es estat modificat. preferences: show: title: Preferéncias @@ -1908,12 +1908,7 @@ oc: id_not_configured: iD es pas estat configurat export: title: Exportar - area_to_export: Zòna d'exportar manually_select: Seleccionar manualament una zòna diferenta - format_to_export: Format d'exportar - osm_xml_data: Donadas XML d'OpenStreetMap - map_image: Imatge de mapa (aficha un calc normal) - embeddable_html: HTML incorporable. licence: Licéncia too_large: advice: 'Se l’expòrt çaisús fracassa, envisatjatz l’utilizacion d’una de las @@ -1936,17 +1931,6 @@ oc: other: title: Autras fonts description: Fonts suplementàrias listadas dins lo wiki d'OpenStreetMap - options: Opcions - format: Format - scale: Escala - max: max - image_size: Talha de l'imatge - zoom: Zoom - add_marker: Apondre un marcador a la mapa - latitude: 'Lat :' - longitude: 'Lon :' - output: Sortida - paste_html: Pegatz lo còdi HTML per incorporar dins un site web. export_button: Exportar fixthemap: title: Senhalar un problèma / Corregir la mapa @@ -2026,35 +2010,24 @@ oc: footway: Via pietonièra rail: Via ferrada subway: Linha de mètro - tram: - - Pichona via ferrada - - tram - cable: - - Teleferic - - telesèti - runway: - - Pista d'aeropòrt - - via de circulacion d'aeropòrt - apron: - - Estacionament d'avions - - terminal + cable_car: Teleferic + chair_lift: telesèti + runway: Pista d'aeropòrt + taxiway: via de circulacion d'aeropòrt + apron: Estacionament d'avions admin: Limit administratiu forest: Sèuva wood: Bòsc golf: Percors de gòlf park: Pargue + common: Espaci comun resident: Zòna residenciala - common: - - Espaci comun - - prada - - Jardin retail: Zòna de comèrci industrial: Zòna industriala commercial: Zòna terciària heathland: Landa - lake: - - Lac - - Sèrva + lake: Lac + reservoir: Sèrva farm: Zòna agricòla brownfield: Zòna rasada cemetery: Cementèri @@ -2063,14 +2036,12 @@ oc: centre: Centre esportiu reserve: Resèrva naturala military: Zòna militara - school: - - Escòla - - universitat + school: Escòla + university: universitat building: Bastissa significativa station: Gara ferroviària - summit: - - Som - - pic + summit: Som + peak: pic tunnel: Bòrd en puntilhats = tunèl bridge: Bòrd negre = pont private: Accès privat diff --git a/config/locales/pa.yml b/config/locales/pa.yml index 74e807cdc..6a25538e3 100644 --- a/config/locales/pa.yml +++ b/config/locales/pa.yml @@ -777,8 +777,9 @@ pa: messages: inbox: title: ਇਨਬਾਕਸ - my_inbox: ਮੇਰਾ ਇਨਬਾਕਸ + messages_table: from: ਵੱਲੋਂ + to: ਵੱਲ subject: ਵਿਸ਼ਾ date: ਮਿਤੀ message_summary: @@ -793,9 +794,6 @@ pa: heading: ਅਜਿਹਾ ਕੋਈ ਸੁਨੇਹਾ ਨਹੀਂ outbox: title: ਆਊਟਬਾਕਸ - to: ਵੱਲ - subject: ਵਿਸ਼ਾ - date: ਮਿਤੀ show: title: ਸੁਨੇਹਾ ਪੜ੍ਹੋ reply_button: ਜੁਆਬ @@ -803,17 +801,20 @@ pa: back: ਪਿੱਛੇ sent_message_summary: destroy_button: ਮਿਟਾਉ + heading: + my_inbox: ਮੇਰਾ ਇਨਬਾਕਸ destroy: destroyed: ਸੁਨੇਹਾ ਮਿਟਾਇਆ ਗਿਆ passwords: - lost_password: + new: title: ਪਛਾਣ ਸ਼ਬਦ ਗੁੰਮ ਗਿਆ heading: ਪਛਾਣ ਸ਼ਬਦ ਭੁੱਲ ਗਿਆ? email address: 'ਈਮੇਲ ਪਤਾ:' new password button: ਪਛਾਣ ਸ਼ਬਦ ਮੁੜ-ਸੈੱਟ ਕਰੋ - reset_password: + edit: title: ਪਛਾਣ ਸ਼ਬਦ ਮੁੜ-ਸੈੱਟ ਕਰੋ reset: ਪਛਾਣ ਸ਼ਬਦ ਮੁੜ-ਸੈੱਟ ਕਰੋ + update: flash changed: ਤੁਹਾਡਾ ਪਛਾਣ ਸ਼ਬਦ ਬਦਲਿਆ ਜਾ ਚੁੱਕਾ ਹੈ। profiles: edit: @@ -869,23 +870,11 @@ pa: anon_edits_link_text: ਪਤਾ ਕਰੋ ਕਿ ਮਾਮਲਾ ਇਸ ਤਰ੍ਹਾਂ ਕਿਉਂ ਹੈ। export: title: ਬਰਾਮਦ - area_to_export: ਬਰਾਮਦ ਵਾਸਤੇ ਇਲਾਕਾ manually_select: ਆਪਣੇ ਆਪ ਇੱਕ ਵੱਖਰਾ ਖੇਤਰ ਚੁਣੋ - format_to_export: ਬਰਾਮਦ ਵਾਸਤੇ ਰੂਪ licence: ਲਾਇਸੰਸ too_large: other: title: ਹੋਰ ਸਰੋਤ - options: ਚੋਣਾਂ - format: ਰੂਪ-ਰੇਖਾ - scale: ਪੈਮਾਨਾ - max: ਵੱਧ ਤੋਂ ਵੱਧ - image_size: ਤਸਵੀਰ ਦਾ ਅਕਾਰ - zoom: ਜ਼ੂਮ ਕਰੋ - add_marker: ਨਕਸ਼ੇ 'ਤੇ ਕੋਈ ਨਿਸ਼ਾਨਦੇਹੀ ਜੋੜੋ - latitude: 'ਅਕਸ਼ਾਂਸ਼:' - longitude: 'ਰੇਖਾਂਸ਼:' - output: ਆਊਟਪੁਟ export_button: ਬਰਾਮਦ fixthemap: title: ਕਿਸੇ ਔਕੜ ਦੀ ਇਤਲਾਹ ਦਿਉ / ਨਕਸ਼ਾ ਸਹੀ ਕਰੋ @@ -933,47 +922,35 @@ pa: footway: ਪੈਦਲ ਰਾਹ rail: ਰੇਲਵੇ subway: ਸਬ-ਵੇਅ - tram: - - ਹਲਕੀ ਰੇਲ - - ਟਰਾਮ - cable: - - ਕੇਬਲ ਕਾਰ - - ਕੁਰਸੀ ਲਿਫ਼ਟ - runway: - - ਹਵਾਈ ਅੱਡੇ ਦੀ ਉਡਾਣ ਪੱਟੀ - - ਟੈਕਸੀਵੇਅ - apron: - - ਹਵਾਈ ਅੱਡੇ ਦਾ ਐਪਰਨ - - ਟਰਮੀਨਲ + cable_car: ਕੇਬਲ ਕਾਰ + chair_lift: ਕੁਰਸੀ ਲਿਫ਼ਟ + runway: ਹਵਾਈ ਅੱਡੇ ਦੀ ਉਡਾਣ ਪੱਟੀ + taxiway: ਟੈਕਸੀਵੇਅ + apron: ਹਵਾਈ ਅੱਡੇ ਦਾ ਐਪਰਨ admin: ਪ੍ਰਸ਼ਾਸਕੀ ਸਰਹੱਦ forest: ਜੰਗਲ wood: ਜੰਗਲ golf: ਗੋਲਫ਼ ਮੈਦਾਨ park: ਪਾਰਕ + common: ਸ਼ਾਮਲਾਟ resident: ਰਿਹਾਇਸ਼ੀ ਇਲਾਕਾ - common: - - ਸ਼ਾਮਲਾਟ - - ਚਰਗਾਹ retail: ਪਰਚੂਨ ਖੇਤਰ industrial: ਉਦਯੋਗਿਕ ਖੇਤਰ commercial: ਵਪਾਰਕ ਖੇਤਰ - lake: - - ਝੀਲ - - ਕੁੰਡ + lake: ਝੀਲ + reservoir: ਕੁੰਡ farm: ਖੇਤ cemetery: ਸ਼ਮਸ਼ਾਨ pitch: ਖੇਡ ਦੀ ਪਿੱਚ centre: ਖੇਡ ਕੇਂਦਰ reserve: ਕੁਦਰਤੀ ਰੱਖ military: ਫ਼ੌਜੀ ਇਲਾਕਾ - school: - - ਸਕੂਲ - - ਯੂਨੀਵਰਸਿਟੀ + school: ਸਕੂਲ + university: ਯੂਨੀਵਰਸਿਟੀ building: ਮਹੱਤਵਪੂਰਨ ਇਮਾਰਤ station: ਰੇਲਵੇ ਸਟੇਸ਼ਨ - summit: - - ਸਿਖਰ - - ਚੋਟੀ + summit: ਸਿਖਰ + peak: ਚੋਟੀ construction: ਉਸਾਰੀ ਹੇਠ ਸੜਕਾਂ welcome: title: ਜੀ ਆਇਆਂ ਨੂੰ! diff --git a/config/locales/pl.yml b/config/locales/pl.yml index a75907e90..0bf4740d5 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -21,6 +21,7 @@ # Author: Deejay1 # Author: FunPL # Author: GlutPaprykarz +# Author: Iketsi # Author: Ireun # Author: Kaligula # Author: Kastanoto @@ -104,6 +105,9 @@ pl: messages: invalid_email_address: nie wygląda na poprawny adres e-mail email_address_not_routable: nie jest routowalny + models: + user_mute: + is_already_muted: jest już wyciszony models: acl: Lista kontroli dostępu changeset: Zestaw zmian @@ -1539,9 +1543,10 @@ pl: many: '%{count} zgłoszeń' other: '%{count} zgłoszeń' no_reports: Brak zgłoszeń - report_created_at: Pierwsze zgłoszenie z %{datetime} - last_resolved_at: Ostatnia reakcja z %{datetime} - last_updated_at: Ostatnio zaktualizowane %{datetime} przez użytkownika %{displayname} + report_created_at_html: Pierwsze zgłoszenie z %{datetime} + last_resolved_at_html: Ostatnia reakcja z %{datetime} + last_updated_at_html: Ostatnio zaktualizowane %{datetime} przez użytkownika + %{displayname} resolve: Rozwiąż ignore: Zignoruj reopen: Otwórz ponownie @@ -1818,8 +1823,6 @@ pl: messages: inbox: title: Wiadomości odebrane - my_inbox: wiadomości odebrane - my_outbox: wiadomości wysłane messages: Masz %{new_messages} i %{old_messages} new_messages: few: '%{count} nowe wiadomości' @@ -1831,12 +1834,14 @@ pl: many: '%{count} starych wiadomości' one: '%{count} starą wiadomość' other: '%{count} starych wiadomości' - from: Od - subject: Temat - date: Data 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 message_summary: unread_button: Oznacz jako nieprzeczytaną read_button: Oznacz jako przeczytaną @@ -1856,15 +1861,10 @@ pl: body: Niestety nie ma wiadomości o tym identyfikatorze. outbox: title: Wiadomości wysłane - my_inbox: wiadomości odebrane - my_outbox: wiadomości wysłane messages: one: '%{count} wysłana wiadomość' few: '%{count} wysłane wiadomości' other: '%{count} wysłanych wiadomości' - to: Do - subject: Temat - date: Nadano 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 @@ -1883,28 +1883,33 @@ pl: 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 mark: as_read: Wiadomość została oznaczona jako przeczytana as_unread: Wiadomość została oznaczona jako nieprzeczytana destroy: destroyed: Wiadomość usunięta passwords: - lost_password: + new: title: Zgubione hasło heading: Zapomniałeś hasła? - email address: 'Adres e-mail:' + email address: Adres e-mail new password button: Wyczyść hasło help_text: Proszę wprowadzić adres e-mail używany do logowania. Zostanie wysłany na niego odnośnik służący do wyczyszczenia hasła. + create: notice email on way: Przykro nam z powodu utraty hasła. Wiadomość, która umożliwi jego wyczyszczenie, jest już w drodze. notice email cannot find: Niestety, nie odnaleziono tego adresu e-mail. - reset_password: + edit: title: Wyczyść hasło heading: Czyszczenie hasła użytkownika %{user} reset: Wyczyść hasło - flash changed: Hasło zostało zmienione. flash token bad: Nie znaleziono tokenu, sprawdź URL + update: + flash changed: Hasło zostało zmienione. preferences: show: title: Preferencje @@ -1949,8 +1954,8 @@ pl: new: title: Logowanie heading: Logowanie - email or username: 'Adres e-mail lub nazwa użytkownika:' - password: 'Hasło:' + email or username: Adres e-mail lub nazwa użytkownika + password: Hasło openid_html: '%{logo} OpenID:' remember: Zapamiętaj dane uwierzytelniające lost password link: Zapomniałeś hasła? @@ -2008,6 +2013,7 @@ pl: image: Obraz alt: Tekst alternatywny url: Adres URL + codeblock: Blok kodu richtext_field: edit: Edytuj preview: Podgląd @@ -2119,6 +2125,7 @@ pl: (© Department of Natural Resources Canada), CanVec (© Department of Natural Resources Canada) i StatCan (Geography Division, Statistics Canada).' contributors_ca_canada: Kanada + contributors_cz_czechia: Czechy contributors_fi_credit_html: '%{finland}: Zawiera dane z National Land Survey of Finland''s Topographic Database i innych zbiorów danych, na podstawie %{nlsfi_license_link}.' @@ -2198,12 +2205,7 @@ pl: niezbędne do tej funkcji. export: title: Eksportuj - area_to_export: Obszar do wyeksportowania manually_select: Ręcznie zaznacz inny obszar - format_to_export: Format eksportu - osm_xml_data: Dane XML OpenStreetMap - map_image: Obraz mapy (standardowa warstwa) - embeddable_html: Kod HTML do osadzenia licence: Licencja licence_details_html: Dane OpenStreetMap są objęte licencją %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -2227,17 +2229,6 @@ pl: other: title: Inne zasoby description: Dodatkowe zasoby wymienione w OpenStreetMap Wiki - options: Opcje - format: Format - scale: Skala - max: maks - image_size: Rozmiar obrazu - zoom: Przybliżenie - add_marker: Dodaj znacznik na mapie - latitude: 'Szer:' - longitude: 'Dł:' - output: Wynik - paste_html: Wklej podany kod HTML do swojej strony export_button: Wyeksportuj fixthemap: title: Zgłoś błąd / Popraw mapę @@ -2330,36 +2321,32 @@ pl: cycleway_local: Droga rowerowa znaczenia lokalnego footway: Droga dla pieszych rail: Tor kolejowy + train: Kolej subway: Metro - tram: - - Kolej miejska - - tramwaj - cable: - - Kolej linowa - - wyciąg krzesełkowy - runway: - - Pas startowy - - kołowania - apron: - - Płyta lotniska - - terminal + ferry: Prom + light_rail: Kolej miejska + tram: Tramwaj + trolleybus: Trolejbus + bus: Autobus + cable_car: Kolej linowa + chair_lift: wyciąg krzesełkowy + runway: Pas startowy + taxiway: kołowania + apron: Płyta lotniska admin: Granica forest: Las wood: Drzewa golf: Pole golfowe park: Park + common: Pole resident: Teren mieszkalny - common: - - Pole - - łąka - - ogród retail: Zabudowa handlowo-usługowa industrial: Teren przemysłowy commercial: Teren komercyjny heathland: Wrzosowisko - lake: - - Jezioro - - zbiornik + lake: Jezioro + reservoir: zbiornik + glacier: Lodowiec farm: Gospodarstwo rolne brownfield: Teren powyburzeniowy cemetery: Cmentarz @@ -2368,19 +2355,19 @@ pl: centre: Centrum sportowe reserve: Rezerwat przyrody military: Teren wojskowy - school: - - Szkoła - - uniwersytet + school: Szkoła + university: uniwersytet building: Ważny budynek station: Stacja kolejowa - summit: - - Góra - - szczyt + summit: Góra + peak: szczyt tunnel: Kreskowany obrys – tunel bridge: Czarny obrys – most private: Dostęp za zezwoleniem destination: Dostęp tylko do punktu docelowego construction: Drogi w budowie + bus_stop: Przystanek autobusowy + stop: Stop bicycle_shop: Sklep rowerowy bicycle_parking: Parking dla rowerów toilets: Toalety @@ -3110,6 +3097,7 @@ pl: map_data_zoom_in_tooltip: Przybliż mapę, aby zobaczyć jej dane queryfeature_tooltip: Pobierz i wyświetl obiekty queryfeature_disabled_tooltip: Przybliż mapę, aby obejrzeć dane obiektów + embed_html_disabled: Osadzanie HTML nie jest dostępne dla tej warstwy mapy changesets: show: comment: Komentarz diff --git a/config/locales/pnb.yml b/config/locales/pnb.yml index 848871cf6..f7bef6bc1 100644 --- a/config/locales/pnb.yml +++ b/config/locales/pnb.yml @@ -1139,10 +1139,10 @@ pnb: reports: other: zeroرپورٹ نہیں one: اِکّ رپورٹ - report_created_at: '%{datetime} رپورٹ بھیجی سی۔' - last_resolved_at: '%{datetime} مسئلہ بند کیتا سی۔' - last_updated_at: '%{datetime} مسئلے تے «%{displayname}» نویں کاݨکاری پائی گئی - سی۔' + report_created_at_html: '%{datetime} رپورٹ بھیجی سی۔' + last_resolved_at_html: '%{datetime} مسئلہ بند کیتا سی۔' + last_updated_at_html: '%{datetime} مسئلے تے «%{displayname}» نویں کاݨکاری پائی + گئی سی۔' resolve: حل کڈھو ignore: نظر انداز کرو reopen: ولدا کھُلھو @@ -1338,8 +1338,6 @@ pnb: messages: inbox: title: اینباکس - my_inbox: اینباکس - my_outbox: میرا آؤٹباکس messages: تہاڈے %{new_messages} تے %{old_messages} اے new_messages: one: '%{count} نویں سنیہا' @@ -1347,12 +1345,14 @@ pnb: old_messages: one: '%{count} پراݨا سنیہا' other: '%{count} پراݨے سنیہے' - from: ولّوں - subject: وشا - date: تریخ no_messages_yet_html: حالاں کوئی سنیہے نہیں اے۔ %{people_mapping_nearby_link} ویکھ سکیو۔ people_mapping_nearby: نیڑے تیڑے دے نقشے والے + messages_table: + from: ولّوں + to: ول + subject: وشا + date: تریخ message_summary: unread_button: اݨ پڑھا نشان لاؤ read_button: پڑھا نشان لاؤ @@ -1369,14 +1369,9 @@ pnb: body: ایہہ سنیہا نہیں لبھیا۔ outbox: title: آؤٹباکس - my_inbox: اینباکس - my_outbox: میرا آؤٹباکس messages: one: تہاڈے %{count} بھیجݨ سنیہا اے other: تہاڈے %{count} بھیجݨ سنیہے اے - to: ول - subject: وشا - date: تریخ people_mapping_nearby: نیڑے تیڑے دے نقشے والے show: title: مُنیہا پڑھو @@ -1386,25 +1381,30 @@ pnb: back: پچھے sent_message_summary: destroy_button: مٹاؤ + heading: + my_inbox: اینباکس + my_outbox: میرا آؤٹباکس mark: as_read: سنیہا پڑھا نشان لایا گیا as_unread: سنیہا اݨ پڑھا نشان لایا گیا destroy: destroyed: سُنیہا مٹائا گیا passwords: - lost_password: + new: title: پاس‌ورڈ گُم گیا heading: پچھاݨ شبد بھّل گیا؟ email address: 'ای‌میل پتہ:' new password button: پاس‌ورڈ فیر بݨایو help_text: تہاڈے ای‌میل دا پتہ جو پاس‌ورڈ فیر بݨاؤݨ دی کڑی بھیج سکاں‌گی اے۔ + create: notice email on way: اچھا، ای‌میل تے مدد دی کڑی بھیجاں‌گی اے notice email cannot find: افسوس، اوہ ای‌میل دا پتہ نہیں لبھ سکیا - reset_password: + edit: title: پاس‌ورڈ فیر بݨایو reset: پاس‌ورڈ فیر بݨایو - flash changed: تہاڈے پاس‌ورڈ تبدیلی کیتی گئی سی۔ flash token bad: ٹوکن نہیں لبھیا، خبر کڑی دا پتہ ویکھیو؟ + update: + flash changed: تہاڈے پاس‌ورڈ تبدیلی کیتی گئی سی۔ preferences: show: title: ترجیحاں @@ -1556,12 +1556,7 @@ pnb: ورتݨے چاہیدے۔ export: title: برامد کرو - area_to_export: برامد واسطے علاقہ manually_select: آپݨے آپ اِکّ وکھرا کھیتر چݨو - format_to_export: برامد واسطے فارماٹ - osm_xml_data: اوپن سٹریٹ میپ ایکس ایم ایل ڈیٹا - map_image: نقشے دی تصویر (میعری) - embeddable_html: ایچ ٹی ایم ایل ایمبیڈ licence: لائیسنس too_large: advice: 'جے برامد نہیں سکدا، خبرے تسیں ایہہ ہور سروت ورت سکدے:' @@ -1579,17 +1574,6 @@ pnb: other: title: ہور سروت description: وِکی توں ہور سروت - options: چوݨاں - format: فارمیٹ - scale: پیمانہ - max: ودھ توں ودھ - image_size: تصویر دا اکار - zoom: وڈے چھوٹے کیتے - add_marker: نقشے تے کوئی نشاندیہی پایو - latitude: اکشانش - longitude: لمبکار - output: آؤٹپُٹ - paste_html: ایمبیڈ کوڈ پیسٹ کریو export_button: برامد کرو fixthemap: title: کسے اوکڑ دی اطلاع دیو، نقشہ دُرُست کریو @@ -1657,35 +1641,24 @@ pnb: footway: فُت‌وے rail: ریلوے subway: سبوے - tram: - - ہلکی ریلوے - - ٹرام‌وے - cable: - - کیبل کار - - کُرسی لِفٹ - runway: - - ہوائی اڈے اُڈاݨ پٹی - - ٹیکسی‌وے - apron: - - ہوائی اڈے دا ایپرن - - ٹرمینل + cable_car: کیبل کار + chair_lift: کُرسی لِفٹ + runway: ہوائی اڈے اُڈاݨ پٹی + taxiway: ٹیکسی‌وے + apron: ہوائی اڈے دا ایپرن admin: پرشاسکی سرحد forest: رکھّ wood: جنگل golf: گولف مَیدان park: پارک + common: شاملاٹ resident: رہائشی کھیتر - common: - - شاملاٹ - - چرگاہ - - باغ retail: پرچون کھیتر industrial: سناتی کھیتر commercial: وپارک کھیتر heathland: ہیتھ - lake: - - جھیل - - کُنڈ + lake: جھیل + reservoir: کُنڈ farm: کھیت brownfield: براؤنفیلڈ cemetery: شمشان @@ -1694,14 +1667,12 @@ pnb: centre: کھیڈ کیندر reserve: کُدرتی رکھّ military: فَوجی کھیتر - school: - - سکول - - یونیورستی + school: سکول + university: یونیورستی building: مہتوپورن عمارت station: ریلوے سٹیشن - summit: - - سکھر - - چوٹی + summit: سکھر + peak: چوٹی tunnel: سُرنگ (ڈیش لائیناں) bridge: پُل (کالیاں لائیناں) private: نِجی ورتوں diff --git a/config/locales/ps.yml b/config/locales/ps.yml index 1ef959f57..a118d65ed 100644 --- a/config/locales/ps.yml +++ b/config/locales/ps.yml @@ -310,22 +310,20 @@ ps: confirm_email: button: تاييد messages: - inbox: + messages_table: date: نېټه message_summary: reply_button: ځوابول destroy_button: ړنگول new: title: پيغام لېږل - outbox: - date: نېټه show: title: پيغام لوستل reply_button: ځواب sent_message_summary: destroy_button: ړنگول passwords: - lost_password: + new: heading: آيا پټنوم مو هېر شوی؟ email address: 'برېښليک پته:' profiles: @@ -358,8 +356,6 @@ ps: user_page_link: د کارن مخ export: licence: منښتليک - options: خوښنې - format: بڼه sidebar: search_results: د پلټنې پايلې close: تړل @@ -372,15 +368,13 @@ ps: entry: forest: ځنگل park: پارک - lake: - - ډنډ - - زېرمتون + lake: ډنډ + reservoir: زېرمتون farm: کرونده cemetery: هديره military: پوځي سيمه - school: - - ښوونځی - - پوهنتون + school: ښوونځی + university: پوهنتون traces: new: visibility_help: دا څه مانا لري؟ diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml index 7d7f84ab7..ab6f28520 100644 --- a/config/locales/pt-PT.yml +++ b/config/locales/pt-PT.yml @@ -81,6 +81,11 @@ pt-PT: messages: invalid_email_address: não parece ser um endereço de correio eletrónico válido email_address_not_routable: não é atingível + display_name_is_user_n: não pode ser user_n a não ser que n seja a tua id + de utilizador + models: + user_mute: + is_already_muted: já está silenciado models: acl: Aceder à lista de controlo changeset: Conjunto de alterações @@ -1510,9 +1515,9 @@ pt-PT: one: '%{count} denúncia' other: '%{count} denúncias' no_reports: Sem denúncias - report_created_at: Denunciado pela primeira vez em %{datetime} - last_resolved_at: Resolvido pela última vez em %{datetime} - last_updated_at: Atualizado pela última vez em %{datetime} por %{displayname} + report_created_at_html: Denunciado pela primeira vez em %{datetime} + last_resolved_at_html: Resolvido pela última vez em %{datetime} + last_updated_at_html: Atualizado pela última vez em %{datetime} por %{displayname} resolve: Resolver ignore: Ignorar reopen: Reabrir @@ -1673,6 +1678,8 @@ pt-PT: loaded: one: carregado com sucesso com %{trace_points} de %{count} point possível. other: carregado com sucesso com %{trace_points} de %{count} pontos possíveis. + all_your_traces_html: Todos os trajetos GPX que enviaste podem ser encontrados + em %{url}. subject: '[OpenStreetMap] Importação de GPX bem-sucedida' signup_confirm: subject: '[OpenStreetMap] Bem-vind@ ao OpenStreetMap' @@ -1794,8 +1801,6 @@ pt-PT: messages: inbox: title: Caixa de Entrada - my_inbox: Caixa de entrada - my_outbox: Caixa de saída messages: Tens %{new_messages} e %{old_messages} new_messages: one: '%{count} mensagem nova' @@ -1803,17 +1808,21 @@ pt-PT: old_messages: one: '%{count} mensagem antiga' other: '%{count} mensagens antigas' - from: De - subject: Assunto - date: Data 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 reply_button: Responder destroy_button: Eliminar + unmute_button: Mover para caixa de entrada new: title: Enviar mensagem send_message_to_html: Enviar uma nova mensagem para %{name} @@ -1828,17 +1837,18 @@ pt-PT: body: Lamentamos, não existe nenhuma mensagem com esse identificador (id). outbox: title: Caixa de saída - my_inbox: Caixa de entrada - my_outbox: Caixa de saída + actions: Ações messages: one: Tens %{count} mensagem enviada other: Tens %{count} mensagens enviadas - to: Para - subject: Assunto - date: Data 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: Estás autenticado como `%{user}', mas a mensagem a que pretendes responder não foi enviada para esse utilizador. Por favor, entra na conta @@ -1854,29 +1864,39 @@ pt-PT: 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 + unmute: + notice: A mensagem foi movida para a caixa de entrada + error: A mensagem não pôde ser movida para a caixa de entrada. destroy: destroyed: Mensagem eliminada passwords: - lost_password: + new: title: Palavra-passe esquecida heading: Esqueceste a palavra-passe? email address: 'Endereço eletrónico:' new password button: Repor palavra-passe help_text: Introduz o endereço de correio eletrónico que usaste para criar a conta. Enviar-te-emos uma ligação que poderás usar para repor a palavra-passe. + create: notice email on way: Lamentamos que a tenhas perdido :-( mas já te enviámos um e-mail para que possas repô-la em breve. notice email cannot find: Lamentamos, mas não foi possível encontrar esse endereço eletrónico. - reset_password: + edit: title: Repor palavra-passe heading: Repor palavra-passe para %{user} reset: Repor palavra-passe - flash changed: A tua palavra-passe foi alterada. flash token bad: Não encontrámos esse token. Confere o URL, por favor. + update: + flash changed: A tua palavra-passe foi alterada. + flash token bad: O token não foi encontrado. Talvez devas conferir o URL? preferences: show: title: Preferências @@ -1967,7 +1987,7 @@ pt-PT: support: apoio shared: markdown_help: - heading_html: Analisado com %{kramdown_link} + heading_html: Processado com %{kramdown_link} headings: Títulos heading: Cabeçalho subheading: Subtítulo @@ -1980,6 +2000,7 @@ pt-PT: image: Imagem alt: Texto alternativo url: URL + codeblock: Bloco de código richtext_field: edit: Editar preview: Pré-visualizar @@ -2206,12 +2227,7 @@ pt-PT: são necessárias para esta funcionalidade. export: title: Exportar - area_to_export: Área a exportar manually_select: Selecionar manualmente outra área - format_to_export: Formato a exportar - osm_xml_data: Dados XML do OpenStreetMap - map_image: Imagem do mapa (mostra a camada padrão) - embeddable_html: HTML integrável licence: Licença licence_details_html: Os dados do OpenStreetMap são licenciados sob %{odbl_link} (ODbL). @@ -2237,17 +2253,6 @@ pt-PT: other: title: Outras fontes description: Fontes adicionais listadas na wiki do OpenStreetMap - options: Opções - format: Formato - scale: Escala - max: máx - image_size: Tamanho da imagem - zoom: Zoom - add_marker: Adicionar marcador no mapa - latitude: 'Lat:' - longitude: 'Lon:' - output: Resultado - paste_html: Cole o HTML para incorporar no website export_button: Exportar fixthemap: title: Reportar um problema / Corrigir o mapa @@ -2346,67 +2351,83 @@ pt-PT: primary: Estrada primária secondary: Estrada secundária unclassified: Estrada sem classificação + pedestrian: Caminho pedestre track: Estrada florestal ou agrícola bridleway: Via equestre cycleway: Ciclovia cycleway_national: Ciclovia nacional cycleway_regional: Ciclovia regional cycleway_local: Ciclovia local + cycleway_mtb: Rota de bicicleta de montanha footway: Via pedonal rail: Ferrovia + train: Comboio subway: Metropolitano - tram: - - Metropolitano de superfície - - elétrico - cable: - - Teleférico - - telecadeira - runway: - - Pista de aviação - - Via de circulação - apron: - - Estacionamento de aviões - - terminal de aeroporto + ferry: Ferry + light_rail: Comboio ligeiro + tram: Elétrico + trolleybus: Troleicarro + bus: Autocarro + cable_car: Teleférico + chair_lift: Teleférico + runway: Pista de aviação + taxiway: Via de circulação + apron: Estacionamento de aviões admin: Fronteira administrativa + capital: Capital + city: Cidade + orchard: Pomar + vineyard: Vinha forest: Floresta gerida wood: Bosque + farmland: Terreno agrícola + grass: Relva + meadow: Prado + bare_rock: Rocha exposta + sand: Areia golf: Campo de golfe park: Parque público + common: Terrenos comunitários + built_up: Zona edificada resident: Área residencial - common: - - Terrenos comunitários - - prado - - Jardim retail: Área de retalho industrial: Área industrial commercial: Área comercial heathland: Charneca - lake: - - Lago - - reservatório hidrográfico + scrubland: Matagal + lake: Lago + reservoir: Reservatório + intermittent_water: Corpo de água intermitente + glacier: Glaciar + reef: Recife + wetland: Zona húmida farm: Quinta brownfield: Baldio industrial cemetery: Cemitério allotments: Hortas urbanas pitch: Campo desportivo centre: Centro desportivo + beach: Praia reserve: Reserva natural military: Área militar - school: - - Escola - - universidade + school: Escola + university: Universidade + hospital: Hospital building: Edifício importante station: Estação ferroviária - summit: - - Cume - - pico + summit: Cume + peak: Pico tunnel: Linha tracejada = túnel bridge: Linha cheia = ponte private: Acesso privado destination: Acesso explícito ao local construction: Estradas em construção + bus_stop: Paragem de autocarro + stop: Paragem bicycle_shop: Loja de bicicletas + bicycle_rental: Aluguer de bicicletas bicycle_parking: Estacionamento de bicicletas + bicycle_parking_small: Estacionamento para bicicletas toilets: Casas de banho welcome: title: Bem-vind@! @@ -2608,6 +2629,7 @@ pt-PT: oauth1_settings: Definições OAuth 1 oauth2_applications: Aplicações OAuth 2 oauth2_authorizations: Autorizações OAuth 2 + muted_users: Utilizadores Silenciados oauth: authorize: title: Autorizar Acesso À Tua Conta @@ -2645,6 +2667,7 @@ pt-PT: read_gpx: Ler rotas GPS privadas write_gpx: Enviar rotas GPS write_notes: Modificar notas + write_redactions: Rever dados do mapa read_email: ‎Ler e-mail de utilizador skip_authorization: Aprovar a aplicação automaticamente oauth_clients: @@ -2823,6 +2846,8 @@ pt-PT: my_dashboard: Painel de Controlo blocks on me: Quem me bloqueou blocks by me: Os meus bloqueios + create_mute: Silenciar este utilizador + destroy_mute: Ativar este utilizador edit_profile: Editar Perfil send message: Enviar mensagem diary: Diário @@ -2854,6 +2879,7 @@ pt-PT: importer: Revogar acesso de importador block_history: Bloqueios ativos moderator_history: Bloqueios aplicados + revoke_all_blocks: Revogar todos os bloqueios comments: Comentários create_block: Bloquear este utilizador activate_user: Ativar este utilizador @@ -2965,6 +2991,16 @@ pt-PT: confirm: Tens a certeza de que queres revogar este bloqueio? revoke: Revogar! flash: Este bloqueio foi revogado. + 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. @@ -3023,13 +3059,39 @@ pt-PT: showing_page: Página %{page} next: Seguinte » previous: « Anterior + user_mutes: + index: + title: Utilizadores Silenciados + my_muted_users: Os meus utilizadores silenciados + you_have_muted_n_users: + one: Silenciaste %{count} utilizador + other: Silenciaste %{count} utilizadores + user_mute_explainer: As mensagens de utilizadores silenciados são movidas para + uma caixa de entrada separada e não receberás notificações por e-mail. + user_mute_admins_and_moderators: Podes silenciar administradores e moderadores, + mas as suas mensagens não serão silenciadas. + table: + thead: + muted_user: Utilizador Silenciado + actions: Ações + tbody: + unmute: Ativar + send_message: Enviar mensagem + create: + notice: Silenciaste %{name}. + error: |- + %{name} não pôde ser silenciado. + %{full_message}. + destroy: + notice: Ativaste %{name}. + error: O utilizador não pôde ser silenciado. Por favor, tenta novamente. notes: index: title: Notas submetidas ou comentadas por %{user} heading: Notas de %{user} subheading_html: Notas %{submitted} ou %{commented} por %{user} - subheading_submitted: enviada - subheading_commented: comentada em + subheading_submitted: enviadas + subheading_commented: comentadas em no_notes: Sem notas id: Id creator: Criador @@ -3059,6 +3121,7 @@ pt-PT: reactivate: Reabrir comment_and_resolve: Comentar e resolver comment: Comentar + log_in_to_comment: Inicia sessão para comentar esta nota report_link_html: Se esta nota contiver informações sensíveis que precisem de ser removidas, poderás %{link}. other_problems_resolve: Para qualquer outro problema com a nota, resolve-a pessoalmente diff --git a/config/locales/pt.yml b/config/locales/pt.yml index cc27269ba..c8a6e147e 100644 --- a/config/locales/pt.yml +++ b/config/locales/pt.yml @@ -7,6 +7,7 @@ # Author: BraulioBezerra # Author: Brunomelnic # Author: Cainamarques +# Author: CorraleH # Author: Crazymadlover # Author: Cristofer Alves # Author: Danieldegroot2 @@ -1518,9 +1519,9 @@ pt: one: '%{count} relatório' other: '%{count} relatórios' no_reports: Sem relatórios - report_created_at: Primeiro relatado em %{datetime} - last_resolved_at: Resolvido pela última vez em %{datetime} - last_updated_at: Última atualização em %{datetime} por %{displayname} + report_created_at_html: Primeiro relatado em %{datetime} + last_resolved_at_html: Resolvido pela última vez em %{datetime} + last_updated_at_html: Última atualização em %{datetime} por %{displayname} resolve: Resolvido ignore: Ignorar reopen: Reabrir @@ -1802,8 +1803,6 @@ pt: messages: inbox: title: Caixa de Entrada - my_inbox: Minha Caixa de Entrada - my_outbox: Minha caixa de saída messages: Você tem %{new_messages} e %{old_messages} new_messages: one: '%{count} nova mensagem' @@ -1811,12 +1810,14 @@ pt: old_messages: one: '%{count} mensagem antiga' other: '%{count} mensagens antigas' - from: De - subject: Assunto - date: Data 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 message_summary: unread_button: Marcar como não lida read_button: Marcar como lida @@ -1836,14 +1837,9 @@ pt: body: Não existe uma mensagem com este id. outbox: title: Caixa de Saída - my_inbox: Minha caixa de entrada - my_outbox: Minha caixa de saída messages: one: Você tem %{count} mensagem enviada other: Você tem %{count} mensagens enviadas - to: Para - subject: Assunto - date: Data 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 @@ -1862,28 +1858,33 @@ pt: para poder responder. sent_message_summary: destroy_button: Apagar + heading: + my_inbox: Minha Caixa de Entrada + my_outbox: Minha caixa de saída mark: as_read: Mensagem marcada como lida as_unread: Mensagem marcada como não lida destroy: destroyed: Mensagem apagada passwords: - lost_password: + new: title: Senha esquecida heading: Esqueceu sua senha? email address: 'Endereço de E-mail:' new password button: Redefinir senha help_text: Digite o endereço de e-mail que você usou para se conectar e enviaremos um link que você poderá usar para redefinir a sua senha. + create: notice email on way: Um e-mail foi enviado para que você possa escolher outra senha. notice email cannot find: Não foi possível encontrar esse endereço de e-mail. - reset_password: + edit: title: Redefinir senha heading: Redefinir Senha de %{user} reset: Redefinir Senha - flash changed: Sua senha foi alterada. flash token bad: O código não confere, verifique a URL. + update: + flash changed: Sua senha foi alterada. preferences: show: title: Minhas preferências @@ -2221,12 +2222,7 @@ pt: para esse recurso. export: title: Exportar - area_to_export: Área a Exportar manually_select: Selecionar outra área manualmente - format_to_export: Formato a Exportar - osm_xml_data: Dados XML do OpenStreetMap - map_image: Imagem do Mapa (exibe a camada padrão) - embeddable_html: HTML para embutir licence: Licença licence_details_html: Os dados do OpenStreetMap são licenciados por %{odbl_link} (ODbL). @@ -2252,17 +2248,6 @@ pt: other: title: Outras Fontes description: Fontes adicionais listadas no wiki do OpenStreetMap - options: Opções - format: Formato - scale: Escala - max: máx - image_size: Tamanho da Imagem - zoom: Ampliação - add_marker: Incluir um marcador no mapa - latitude: 'Lat:' - longitude: 'Lon:' - output: Saída - paste_html: Cole o HTML para publicar no site export_button: Exportar fixthemap: title: Relatar um problema / Corrigir o mapa @@ -2375,35 +2360,26 @@ pt: footway: Caminho de pedestre rail: Ferrovia subway: Metrô - tram: - - Ferrovia metropolitana - - bonde - cable: - - Bonde aéreo - - telecadeira - runway: - - Pista de Pouso - - pista de taxiamento - apron: - - Pátio de aeródromo - - terminal + cable_car: Bonde aéreo + chair_lift: Teleférico + runway: Pista de Pouso + taxiway: pista de taxiamento + apron: Pátio de aeródromo admin: Limite administrativo + vineyard: Vinha forest: Floresta manejada wood: Bosque nativo + meadow: Prado golf: Campo de golfe park: Parque + common: Baldio comunitário resident: Área residencial - common: - - Baldio comunitário - - prado - - Jardim retail: Área de varejo industrial: Área industrial commercial: Área de negócios heathland: Urzal - lake: - - Lago - - lago artificial + lake: Lago + reservoir: Reservatório farm: Lavoura brownfield: Terreno abandonado cemetery: Cemitério secular @@ -2412,14 +2388,13 @@ pt: centre: Centro/clube esportivo reserve: Reserva ambiental military: Área militar - school: - - Escola - - universidade + school: Escola/Universidade + university: universidade + hospital: Hospital building: Edifício importante station: Estação ferroviária - summit: - - Cume - - cume + summit: Cume + peak: cume tunnel: Túnel (contorno tracejado) bridge: Ponte/viaduto (contorno contínuo) private: Acesso restrito @@ -2664,6 +2639,7 @@ pt: read_gpx: Ler rotas GPS privadas write_gpx: Enviar rotas GPS write_notes: Modificar notas + write_redactions: Rever dados do mapa read_email: Ler o endereço de e-mail do usuário skip_authorization: Aplicação de aprovação automática oauth_clients: diff --git a/config/locales/ro.yml b/config/locales/ro.yml index 4dd7a9bbf..624560049 100644 --- a/config/locales/ro.yml +++ b/config/locales/ro.yml @@ -9,6 +9,7 @@ # Author: EddyPetrisor # Author: GabiBil # Author: Gravitystorm +# Author: Heron702 # Author: Kyouko # Author: Lucdrei # Author: MSClaudiu @@ -295,6 +296,8 @@ ro: retain_changeset_discussions: Discuțiile dvs. privind setul de modificări, dacă există, vor fi păstrate. retain_email: Adresa dvs. de e-mail va fi păstrată. + recent_editing_html: Deoarece ați editat recent, contul dvs. nu poate fi șters + în prezent. Ștergerea va fi posibilă în %{time}. confirm_delete: Sunteți sigur(ă)? cancel: Anulează accounts: @@ -1494,9 +1497,9 @@ ro: few: '%{count} raporturi' other: "" no_reports: Fara rapoarte - report_created_at: Prima dată raportată la %{datetime} - last_resolved_at: Ultima rezolvată la %{datetime} - last_updated_at: Ultima actualizare la %{datetime} de către %{displayname} + report_created_at_html: Prima dată raportată la %{datetime} + last_resolved_at_html: Ultima rezolvată la %{datetime} + last_updated_at_html: Ultima actualizare la %{datetime} de către %{displayname} resolve: Rezolvat ignore: Ignoră reopen: Redeschide @@ -1776,8 +1779,6 @@ ro: messages: inbox: title: Mesaje primite - my_inbox: Mesaje primite - my_outbox: Mesaje trimise messages: Aveți mesaje %{new_messages} și %{old_messages} new_messages: one: '%{count} mesaj nou' @@ -1785,12 +1786,15 @@ ro: old_messages: one: '%{count} mesaj vechi' other: '%{count} mesaje vechi' - from: De la - subject: Subiect - date: Dată 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 @@ -1810,14 +1814,10 @@ ro: body: Ne pare rău că nu există niciun mesaj cu acel id. outbox: title: Mesaje trimise - my_inbox: Mesaje primite - my_outbox: Mesaje trimise + actions: Acțiuni messages: one: Aveți %{count} mesaj trimis other: Aveți %{count} (de) mesaje trimise - to: Către - subject: Subiect - date: Dată 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 @@ -1836,28 +1836,34 @@ ro: ca utilizatorul corect pentru a-l citi. sent_message_summary: destroy_button: Șterge + heading: + my_inbox: Mesaje primite + my_outbox: Mesaje trimise mark: as_read: Mesaj marcat ca fiind citit as_unread: Mesaj marcat ca necitit destroy: destroyed: Mesaj șters passwords: - lost_password: + new: title: Parola pierdută heading: Ai uitat parola? email address: 'Adresa de e-mail:' new password button: Resetare parolă help_text: Introduceți adresa de e-mail pe care ați utilizat-o pentru a vă înscrie, vom trimite un link la aceasta pe care îl puteți utiliza pentru a reseta parola. + create: notice email on way: Ne pare rău că ați pierdut-o :-( dar un e-mail este pe drum, astfel încât să puteți să-l resetați în curând. notice email cannot find: Nu am putut găsi adresa de e-mail, îmi pare rău. - reset_password: + edit: title: Resetare parolă heading: Resetați parola pentru %{user} reset: Resetează parola - flash changed: Parola dumneavoastră a fost schimbată. flash token bad: Nu ați găsit acel simbol, verificați adresa URL? + update: + flash changed: Parola dumneavoastră a fost schimbată. + flash token bad: Nu s-a găsit acel simbol, poate verificați adresa URL? preferences: show: title: Preferințe @@ -1962,6 +1968,7 @@ ro: image: Imagine alt: Text alternativ url: URL + codeblock: Bloc cod sursă richtext_field: edit: Editează preview: Previzualizare @@ -2113,6 +2120,9 @@ ro: Resources Canada) și StatCan (Divizia de Geografie, Statistics Canada). contributors_ca_canada: Canada + contributors_cz_czechia: Cehia + contributors_cz_cc_licence: Creative Commons Attribution 4.0 International + licence (CC BY 4.0) contributors_fi_credit_html: |- %{finland}: Conține date din National Land Survey of Finland's Topographic Database @@ -2208,12 +2218,7 @@ ro: pentru această caracteristică. export: title: Exportare - area_to_export: Zona pentru export manually_select: Selectați manual o altă zonă - format_to_export: Format de exportat - osm_xml_data: Date XML OpenStreetMap - map_image: Imagine hartă (arată stratul standard) - embeddable_html: HTML încorporabil licence: Licență licence_details_html: Datele OpenStreetMap sunt licențiate sub %{odbl_link} (ODbL). @@ -2238,17 +2243,6 @@ ro: other: title: Alte surse description: Surse suplimentare listate pe wiki-ul OpenStreetMap - options: Opțiuni - format: Format - scale: Scară - max: max - image_size: Dimensiune imagine - zoom: Zoom - add_marker: Adaugă un marcator pe hartă - latitude: 'Lat:' - longitude: 'Long:' - output: Date de ieșire - paste_html: Inserați HTML pentru a încorpora în site-ul web export_button: Exportare fixthemap: title: Raportați o problemă / Reparați harta @@ -2350,6 +2344,7 @@ ro: primary: Drum primar secondary: Drum secundar unclassified: Drum neclasificat + pedestrian: Cale pietonală track: Înregistrare GPS bridleway: Traseu de călărie cycleway: Pistă de biciclete @@ -2358,36 +2353,41 @@ ro: cycleway_local: Rețeaua locală de ciclism footway: Trotuar rail: Cale ferată + train: Tren subway: Stație de metrou - tram: - - Metrou - - tramvai - cable: - - Telecabină - - Telescaun - runway: - - Pistă de Aeroport - - taxiway - apron: - - Aeronavă - - terminal + ferry: Feribot + tram: Tramvai + trolleybus: Troleibuz + bus: Autobuz + cable_car: Telecabină + chair_lift: Telescaun + runway: Pistă de Aeroport + taxiway: taxiway + apron: Aeronavă admin: Graniță administrativă + orchard: Livadă + vineyard: Podgorie forest: Pădure wood: Lemn + farmland: Teren agricol + grass: Iarbă + meadow: Luncă + bare_rock: Stâncă goală + sand: Nisip golf: Teren de golf park: Parc + common: Comun + built_up: Zonă construită resident: Zonă rezidențială - common: - - Comun - - luncă - - grădină retail: Spațiul de retail industrial: Zonă industrială commercial: Zonă comercială heathland: Landă - lake: - - Lac - - Rezervor + lake: Lac + reservoir: Rezervor + intermittent_water: Corp de apă intermitent + glacier: Ghețar + reef: Recif farm: Fermă brownfield: Terenuri industriale dezafectate cemetery: Cimitir @@ -2396,19 +2396,20 @@ ro: centre: Centru de sport reserve: Rezervație naturală military: Zonă militară - school: - - Școală - - Universitate + school: School; university + university: Universitate + hospital: Spital building: Clădire importantă station: Gară - summit: - - Vârf de munte - - Vârf + summit: Vârf de munte + peak: Vârf tunnel: Dashed casing = tunel bridge: Black casing = pod private: Acces privat destination: Accesul la destinație construction: Drumuri în construcție + bus_stop: Stație de autobuz + stop: Stație bicycle_shop: Magazin de biciclete bicycle_parking: Parcare pentru biciclete toilets: Toalete @@ -2454,6 +2455,7 @@ ro: imports: Importurile automated_edits: Editări automate start_mapping: Începeți să cartografiați + continue_authorization: Continuați autorizarea add_a_note: title: Nu aveți timp pentru editare? Adaugați o notă! para_1: |- @@ -2650,6 +2652,7 @@ ro: read_gpx: Citiți track-urile GPS private write_gpx: Încărcați track-uri GPS write_notes: Modificați notele + write_redactions: Redactați datele hărții read_email: Citiți adresa de e-mail a utilizatorului skip_authorization: Aprobare automată a cererii oauth_clients: @@ -2846,12 +2849,15 @@ ro: role: administrator: Acest utilizator este un administrator moderator: Acest utilizator este un moderator + importer: Acest utilizator este un importator grant: administrator: Acordați permisiunile de administrator moderator: Acordați accesul de moderator + importer: Acordați acces de importator revoke: administrator: Revocă accesul de administrator moderator: Revocă accesul de moderator + importer: Revocați accesul de importator block_history: Blocări active moderator_history: Blocări acordate comments: Comentarii @@ -3031,6 +3037,13 @@ ro: showing_page: Pagina %{page} next: Următoarea » previous: « Precedenta + user_mutes: + index: + table: + thead: + actions: Acțiuni + tbody: + send_message: Trimite mesajul notes: index: title: Notele trimise sau comentate de %{user} @@ -3160,6 +3173,8 @@ ro: map_data_zoom_in_tooltip: Mărește pentru a vedea datele hărții queryfeature_tooltip: Funcții de interogare queryfeature_disabled_tooltip: Mărește caracteristicile de interogare + embed_html_disabled: Încorporarea HTML nu este disponibilă pentru acest strat + de hartă changesets: show: comment: Comentariu diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 55c84d533..61686301f 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -533,7 +533,7 @@ ru: feature_warning: Необходимо загрузить %{num_features} объектов, что может замедлить ваш браузер. Вы уверены что хотите просмотреть эти данные? load_data: Загрузить данные - loading: Загрузка... + loading: Загружается… tag_details: tags: Теги wiki_link: @@ -1532,9 +1532,9 @@ ru: zero: Нет сообщений one: 1 сообщение other: '%{count} сообщений' - report_created_at: Впервые сообщено %{datetime} - last_resolved_at: Последний раз обработано %{datetime} - last_updated_at: Последнее обновление %{datetime} пользователем %{displayname} + report_created_at_html: Впервые сообщено %{datetime} + last_resolved_at_html: Последний раз обработано %{datetime} + last_updated_at_html: Последнее обновление %{datetime} пользователем %{displayname} resolve: Обработать ignore: Игнорировать reopen: Переоткрыть @@ -1812,8 +1812,6 @@ ru: messages: inbox: title: Входящие - my_inbox: Мои входящие - my_outbox: Мои исходящие messages: У вас %{new_messages} и %{old_messages} new_messages: few: '%{count} новых сообщения' @@ -1825,11 +1823,14 @@ ru: many: '%{count} старых' one: '%{count} старое' other: '%{count} старых' + no_messages_yet_html: У вас пока нет сообщений. Почему бы не пообщаться с %{people_mapping_nearby_link}? + people_mapping_nearby: пользователями поблизости + messages_table: from: От + to: Кому subject: Тема date: Дата - no_messages_yet_html: У вас пока нет сообщений. Почему бы не пообщаться с %{people_mapping_nearby_link}? - people_mapping_nearby: пользователями поблизости + actions: Действия message_summary: unread_button: Пометить как непрочитанное read_button: Пометить как прочитанное @@ -1855,16 +1856,12 @@ ru: Извините, но сообщения с таким ID нет. outbox: title: Исходящие - my_inbox: Мои входящие - my_outbox: Мои исходящие + actions: Действия messages: few: У вас %{count} отправленных сообщения many: У вас %{count} отправленных сообщений one: У вас %{count} отправленное сообщение other: У вас %{count} отправленных сообщений - to: Кому - subject: Тема - date: Дата no_sent_messages_html: Нет отправленных сообщений. Почему бы не пообщаться с %{people_mapping_nearby_link}? people_mapping_nearby: пользователями поблизости @@ -1883,28 +1880,33 @@ ru: вашему вопросу пользователь, чтобы прочитать его. sent_message_summary: destroy_button: Удалить + heading: + my_inbox: Мои входящие + my_outbox: Мои исходящие mark: as_read: Сообщение отмечено как прочитанное as_unread: Сообщение отмечено как непрочитанное destroy: destroyed: Сообщение удалено passwords: - lost_password: + new: title: Восстановление пароля heading: Забыли пароль? email address: 'Адрес электронной почты:' new password button: Вышлите мне новый пароль help_text: Введите адрес вашей электронной почты, который вы использовали для подписки, и мы вышлем инструкции, как можно обновить ваш пароль. + create: notice email on way: Жаль, что вы потеряли пароль :-( но ничего, скоро придёт письмо и вы сможете поменять свой пароль. notice email cannot find: Такой адрес не зарегистрирован. - reset_password: + edit: title: Повторная установка пароля heading: Повторная установка пароля для %{user} reset: Установить пароль - flash changed: Ваш пароль был изменён. flash token bad: Невозможно найти такой код подтверждения, проверьте ссылку. + update: + flash changed: Ваш пароль был изменён. preferences: show: title: Мои предпочтения @@ -2167,12 +2169,7 @@ ru: этого режима. export: title: Экспортировать - area_to_export: Область для экспорта manually_select: Выделить другую область - format_to_export: Формат экспорта - osm_xml_data: Данные в формате OpenStreetMap XML - map_image: Изображение карты (показывает стандартный слой) - embeddable_html: Встраиваемый HTML licence: Лицензия too_large: advice: 'Если этот экспорт пройдёт неудачно, пожалуйста, попробуйте один из @@ -2194,17 +2191,6 @@ ru: other: title: Другие источники description: Дополнительные источники, перечисленные в вики OpenStreetMap - options: Настройки - format: Формат - scale: Масштаб - max: макс. - image_size: 'Размер изображения:' - zoom: Приблизить - add_marker: Добавить маркер на карту - latitude: 'Широта:' - longitude: 'Долгота:' - output: Результат - paste_html: HTML-код для встраивания на сайт export_button: Экспортировать fixthemap: title: Сообщить о проблеме / исправить карту @@ -2310,58 +2296,61 @@ ru: cycleway_local: Велодорожка местного значения footway: Пешеходная дорожка rail: Железная дорога + train: Поезд subway: Линия метро - tram: - - Легкорельсовый транспорт - - трамвай - cable: - - Канатная дорога - - кресельный подъёмник - runway: - - Взлётно-посадочная полоса аэропорта - - рулёжная дорожка - apron: - - Перрон аэродрома - - терминал + ferry: Паром + tram: Трамвай + trolleybus: Троллейбус + bus: Автобус + cable_car: Канатная дорога + chair_lift: кресельный подъёмник + runway: Взлётно-посадочная полоса аэропорта + taxiway: рулёжная дорожка + apron: Перрон аэродрома admin: Административная граница + orchard: Фруктовый сад + vineyard: Виноградник forest: Лес wood: Роща + farmland: Сельхозугодья + grass: Трава + meadow: Луг golf: Площадка для гольфа park: Парк + common: Общественная земля + built_up: Площадь застройки resident: Жилой район - common: - - Общественная земля - - луг - - сад retail: Торговый район industrial: Промышленный район commercial: Коммерческий район heathland: Вересковая пустошь - lake: - - Озеро - - водохранилище + lake: Озеро + reservoir: Водохранилище + glacier: Ледник farm: Ферма brownfield: Расчистка под застройку cemetery: Кладбище allotments: Сады-огороды, дачные участки pitch: Спортивная площадка centre: Спортивный центр + beach: Пляж reserve: Заповедник military: Военная территория - school: - - Школа - - университет + school: Школа, университет + university: Университет + hospital: Больница building: Значительное здание station: Железнодорожная станция - summit: - - Вершина - - пик + summit: Вершина + peak: Вершина горы tunnel: Туннель (пунктир) bridge: Мост (жирная линия) private: Частный доступ destination: Целевой доступ construction: Строительство дороги + bus_stop: Автобусная остановка bicycle_shop: Магазин велосипедов + bicycle_rental: Прокат велосипедов bicycle_parking: Парковка для велосипедов toilets: Туалет welcome: @@ -2978,6 +2967,13 @@ ru: showing_page: Страница %{page} next: Следующая → previous: ← Предыдущая + user_mutes: + index: + table: + thead: + actions: Действия + tbody: + send_message: Отправить сообщение notes: index: title: Заметки, созданные или прокомментированный участником %{user} diff --git a/config/locales/sat.yml b/config/locales/sat.yml index c48c8e850..e40868efb 100644 --- a/config/locales/sat.yml +++ b/config/locales/sat.yml @@ -505,26 +505,23 @@ sat: confirm_email: button: ᱜᱚᱴᱟᱭ ᱢᱮ messages: - inbox: + messages_table: subject: ᱵᱤᱥᱚᱭ date: ᱢᱟᱹᱦᱤᱛ message_summary: destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ new: title: ᱠᱷᱚᱵᱚᱨ ᱠᱩᱞ ᱢᱮ - outbox: - subject: ᱵᱤᱥᱚᱭ - date: ᱢᱟᱹᱦᱤᱛ show: destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ back: ᱛᱟᱭᱚᱢ sent_message_summary: destroy_button: ᱜᱮᱫ ᱜᱤᱰᱤ passwords: - lost_password: + new: title: ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱟᱫ ᱠᱮᱫᱟᱢ email address: 'ᱤᱢᱮᱞ ᱴᱷᱤᱠᱟᱹᱬᱟ:' - reset_password: + update: flash changed: ᱟᱢᱟᱜ ᱫᱟᱱᱟᱝ ᱥᱟᱵᱟᱫᱽ ᱫᱚ ᱵᱚᱫᱚᱞᱮᱱᱟ á±¾ profiles: edit: @@ -570,7 +567,6 @@ sat: user_page_link: ᱵᱮᱵᱦᱟᱨᱤᱭᱟᱜ ᱥᱟᱦᱴᱟ export: title: ᱵᱷᱮᱡᱟ - zoom: ᱞᱟᱹᱴᱩ export_button: ᱵᱷᱮᱡᱟ help: welcome: @@ -589,8 +585,7 @@ sat: forest: ᱵᱤᱨ wood: ᱠᱟᱴᱷ park: ᱵᱟᱜᱟᱱ - school: - - ᱤᱛᱩᱱ ᱟᱥᱲᱟ + school: ᱤᱛᱩᱱ ᱟᱥᱲᱟ bicycle_shop: ᱥᱟᱭᱠᱤᱞ ᱫᱩᱠᱟᱹᱱ bicycle_parking: ᱥᱟᱭᱠᱤᱞ ᱯᱟᱨᱠᱤᱝ toilets: ᱴᱚᱭᱞᱮᱴᱠᱚ diff --git a/config/locales/sc.yml b/config/locales/sc.yml index 7d5b6c6ce..4021e2df1 100644 --- a/config/locales/sc.yml +++ b/config/locales/sc.yml @@ -1479,9 +1479,9 @@ sc: one: '%{count} sinnalatzione' other: '%{count} sinnalatziones' no_reports: Perunu informe - report_created_at: Sinnaladu pro sa prima borta su %{datetime} - last_resolved_at: Risoltu pro s'ùrtima borta su %{datetime} - last_updated_at: Ùrtima atualizatzione de %{displayname} su %{datetime} + report_created_at_html: Sinnaladu pro sa prima borta su %{datetime} + last_resolved_at_html: Risoltu pro s'ùrtima borta su %{datetime} + last_updated_at_html: Ùrtima atualizatzione de %{displayname} su %{datetime} resolve: Risolve ignore: Ignora reopen: Torra a abèrrere @@ -1770,8 +1770,6 @@ sc: messages: inbox: title: Posta in intrada - my_inbox: Posta in intrada mea - my_outbox: Posta in essida mea messages: Tenes %{new_messages} e %{old_messages} new_messages: one: '%{count} messàgiu nou' @@ -1779,12 +1777,14 @@ sc: old_messages: one: '%{count} messàgiu betzu' other: '%{count} messàgios betzos' - from: Dae - subject: 'Sugetu:' - date: Data 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 @@ -1804,14 +1804,9 @@ sc: body: Non b'at perunu messàgiu cun custu id. outbox: title: Posta in essida - my_inbox: Posta in intrada mea - my_outbox: Posta in essida mea messages: one: Tenes %{count} messàgiu imbiadu other: Tenes %{count} messàgios imbiados - to: Cara a - subject: 'Sugetu:' - date: Data 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 @@ -1830,13 +1825,16 @@ sc: 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 passwords: - lost_password: + new: title: Crae de intrada pèrdida heading: Ais ismentigadu sa crae de intrada? email address: 'Indiritzu de posta eletrònica:' @@ -1844,16 +1842,18 @@ sc: help_text: Inserta s'indiritzu de posta chi as impreadu pro ti registrare, l'amus a imbiare unu ligàmene chi as a pòdere impreare pro ripristinare sa crae de intrada tua. + create: notice email on way: Nos dispraghet chi l'apas pèrdida :-( ma t'amus imbiadu unu messàgiu de posta eletrònica pro chi la potzas ripristinare. notice email cannot find: A dolu mannu non semus resèssidos a agatare custu indiritzu de posta eletrònica. - reset_password: + edit: title: Riprìstina sa crae de intrada heading: Riprìstina sa crae de intrada pro %{user} reset: Riprìstina sa crae de intrada - flash changed: Sa crae de intrada tua est istada mudada. flash token bad: No amus agatadu custu getone, proa a verificare s'URL. + update: + flash changed: Sa crae de intrada tua est istada mudada. preferences: show: title: Preferèntzias meas @@ -2206,12 +2206,7 @@ sc: chi sunt netzessàrios pro custa funtzionalidade. export: title: Esporta - area_to_export: Àrea de esportare manually_select: Seletziona un'àrea diferente in manera manuale - format_to_export: Formadu de esportatzione - osm_xml_data: Datos XML de OpenStreetMap - map_image: Immàgine de sa mapa (ammustrat s'istratu istandard) - embeddable_html: HTML incorporàbile licence: Litzèntzia licence_details_html: Sos datos de OpenStreetMap sunt suta de sa litzèntzia %{odbl_link} (ODbL). @@ -2237,17 +2232,6 @@ sc: other: title: Àteras fontes description: Fontes additzionales postas in lista in sa wiki de OpenStreetMap - options: Optziones - format: Formadu - scale: Iscala - max: màssimu - image_size: Mannària de s'immàgine - zoom: Ismanniamentu - add_marker: Annanghe unu marcadore a sa mapa - latitude: 'Lat:' - longitude: 'Lon:' - output: Resurtadu - paste_html: Incolla s'HTML pro l'integrare in su situ web export_button: Esporta fixthemap: title: Sinnala unu problema / Acontza sa mapa @@ -2361,35 +2345,24 @@ sc: footway: Caminu pro pedones rail: Ferrovia subway: Metropolitana - tram: - - Trenu lèbiu/metropolitana lèbia - - Tram - cable: - - Funivia - - ascensore carrotzina - runway: - - Pista de aeroportu - - carrera de furriada - apron: - - Àrea de parchègiu de sos aèreos - - terminale + cable_car: Funivia + chair_lift: ascensore carrotzina + runway: Pista de aeroportu + taxiway: carrera de furriada + apron: Àrea de parchègiu de sos aèreos admin: Làcana amministrativa forest: Litu wood: Buscu golf: Campu de golf park: Parcu + common: Comunu resident: Àrea de residèntzia - common: - - Comunu - - pradu - - giardinu retail: Àrea cummertziale industrial: Àrea industriale commercial: Àrea cummertziale heathland: Istruvina - lake: - - Lagu - - riserva de abba + lake: Lagu + reservoir: riserva de abba farm: Fatoria brownfield: Terrinu industriale abbandonadu cemetery: Campusantu @@ -2398,14 +2371,12 @@ sc: centre: Tzentru isportivu reserve: Reserva naturale military: Zona militare - school: - - Iscola - - universidade + school: Iscola + university: universidade building: Edifìtziu significativu station: Istatzione ferroviària - summit: - - Cùcuru de monte - - cùcuru + summit: Cùcuru de monte + peak: cùcuru tunnel: Lìnia trategiada = galleria bridge: Oros nieddos = ponte private: Atzessu privadu diff --git a/config/locales/scn.yml b/config/locales/scn.yml index 2d445a4da..fb77107fc 100644 --- a/config/locales/scn.yml +++ b/config/locales/scn.yml @@ -163,6 +163,7 @@ scn: openid: OpenID google: Google facebook: Facebook + microsoft: Microsoft github: GitHub wikipedia: Wikipedia api: @@ -191,6 +192,7 @@ scn: account: deletions: show: + title: Cancella lu mè cuntu delete_account: Cancella cuntu confirm_delete: Sî sicuru? cancel: Annulla @@ -325,8 +327,10 @@ scn: tag: La pàggina dâ wiki chi discrivi l'etichetta %{key}=%{value} wikidata_link: Lu suggettu %{page} supra a Wikidata wikipedia_link: L'artìculu %{page} supra a Wikipedia + wikimedia_commons_link: L'elementu %{page} supra Wikimedia Commons telephone_link: Chiama lu %{phone_number} colour_preview: Antiprima culuri %{colour_value} + email_link: Email %{email} query: title: Arricerca di l'elimenti introduction: Clicca supra â cartina pi circari l'elimenti vicini. @@ -1168,7 +1172,6 @@ scn: messages: inbox: title: Posta arrivata - my_inbox: La mè posta arrivata messages: Hai %{new_messages} e %{old_messages} new_messages: one: '%{count} missaggiu novu' @@ -1176,12 +1179,14 @@ scn: old_messages: one: '%{count} missaggiu vecchiu' other: '%{count} missaggî vecchî' - from: Di - subject: Oggettu - date: Data no_messages_yet_html: Ancora nun hai nuddu 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 @@ -1204,9 +1209,6 @@ scn: messages: one: Hai %{count} missaggiu mannatu other: Hai %{count} missaggî mannati - to: A - subject: Oggettu - date: Data 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 @@ -1224,28 +1226,32 @@ scn: 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 passwords: - lost_password: + new: title: Palora d'òrdini pirduta heading: Ti scurdasti la palora d'òrdini? email address: 'Nnirizzu di posta elittrònica:' new password button: Azzera la palora d'òrdini help_text: Scrivi lu nnirizzu di posta elittrònica c'adupirasti quannu ti scrivisti, e ci mannamu nu culligamentu chi poi adupirari p'azzirari la tò palora d'òrdini. + create: notice email on way: Ni dispiaci chi la pirdisti :-( pirò ti sta arrivannu nu missaggiu di posta elittrònica pi menzu dû quali prestu la poi azzirari. notice email cannot find: Putroppu nun s'attrova stu nnirizzu di posta elittrònica. - reset_password: + edit: title: Azzera la palora d'òrdini heading: Azziramentu dâ palora d'òrdini di %{user} reset: Azzera la palora d'òrdini - flash changed: La tò palora d'òrdini fu canciata. flash token bad: Stu còdici nun s'attrova, pirchì nun cuntrolli l'URL? + update: + flash changed: La tò palora d'òrdini fu canciata. preferences: show: title: Li mè prifirenzi @@ -1403,12 +1409,7 @@ scn: nicissarî pi sta funziunalità. export: title: Espurtazzioni - area_to_export: Ària d'espurtari manually_select: Scegghî manualmenti n'ària diffirenti - format_to_export: Furmatu d'espurtari - osm_xml_data: Dati XML d'OpenStreetMap - map_image: Mmàggini dâ cartina (ammustra lu stratu standard) - embeddable_html: HTML ncurpuràbbili licence: Licenza too_large: advice: 'Si la spurtazzioni ccassupra nun arrinesci, poi pruvari cu una dî @@ -1430,17 +1431,6 @@ scn: other: title: Àutri fonti description: Àutri fonti elincati ntâ wiki d'OpenStreetMap - options: Opzioni - format: Furmatu - scale: Scala - max: max - image_size: Grannizza dâ mmàggini - zoom: Ngrannimentu - add_marker: Agghiunci un signu ntâ cartina - latitude: 'Lat:' - longitude: 'Lun:' - output: Pruduttu - paste_html: Ncodda l'HTML pi ncurpurari ntôn situ web export_button: Esporta fixthemap: title: Assignalari prubblemi / Cunzari la cartina @@ -1514,34 +1504,24 @@ scn: footway: Caminu pidunali rail: Ferruvìa subway: Mitrupulitana - tram: - - Mitrupulitana leggia - - tram - cable: - - Funivìa - - seggiuvìa - runway: - - Pista d’attirraggiu - - pista di rullaggiu - apron: - - Ària di parcheggiu ariupurtuali - - terminal + cable_car: Funivìa + chair_lift: seggiuvìa + runway: Pista d’attirraggiu + taxiway: pista di rullaggiu + apron: Ària di parcheggiu ariupurtuali admin: Cunfini amministrativu forest: Furesta wood: Voscu golf: Campu di golf park: Villa + common: Cumuni resident: Zona risidinziali - common: - - Cumuni - - Pratu retail: Zona di nigozzî industrial: Zona nnustriali commercial: Zona cummirciali heathland: Brughiera - lake: - - Lacu - - lacu artificiali + lake: Lacu + reservoir: lacu artificiali farm: Massarìa brownfield: Zona di bunìfica cemetery: Cimiteru @@ -1550,14 +1530,12 @@ scn: centre: Centru spurtivu reserve: Riserva naturali military: Zona militari - school: - - Scola - - univirsità + school: Scola + university: univirsità building: Edificiu mpurtanti station: Stazzioni dâ ferruvìa - summit: - - Muntagna - - Muntagna + summit: Muntagna + peak: Muntagna tunnel: Cuntornu trattiatu = jallarìa bridge: Cuntornu niurittu = ponti private: Accessu privatu diff --git a/config/locales/sco.yml b/config/locales/sco.yml index b297330bf..6a6d25b53 100644 --- a/config/locales/sco.yml +++ b/config/locales/sco.yml @@ -797,7 +797,7 @@ sco: subject_other: '[OpenStreetMap] %{commenter} haes commentit on a note ye are interestit in' passwords: - lost_password: + new: title: Lost password heading: Forgotten Passwird? sessions: @@ -860,12 +860,7 @@ sco: infringement_title_html: Copyricht infringement export: title: Export - area_to_export: Area tae Export manually_select: Manually select a different aurie - format_to_export: Format tae Export - osm_xml_data: OpenStreetMap XML Data - map_image: Cairt Image (shaws staundart layer) - embeddable_html: Embeddable HTML licence: Licence too_large: advice: 'If the abuin export fails, please consider uisin ane o the soorces @@ -887,17 +882,6 @@ sco: other: title: Ither Soorces description: Addeetional soorces leetit on the OpenStreetMap wiki - options: Options - format: Format - scale: Scale - max: max - image_size: Image Size - zoom: Zuim - add_marker: Add a marker tae the cairt - latitude: 'Lat:' - longitude: 'Lon:' - output: Ootput - paste_html: Paste HTML tae embed in wabsteid export_button: Export fixthemap: how_to_help: @@ -923,13 +907,11 @@ sco: retail: Retail aurie industrial: Industrial aurie commercial: Commercial aurie - lake: - - Loch + lake: Loch farm: Ferm military: Militar aurie - school: - - Schuil - - varsity + school: Schuil + university: varsity building: Signeeficant biggin welcome: title: Walcome! diff --git a/config/locales/sh.yml b/config/locales/sh.yml index b529925df..4a03f0827 100644 --- a/config/locales/sh.yml +++ b/config/locales/sh.yml @@ -557,6 +557,8 @@ sh: confirm_email: heading: Potvrda promjene e-adrese messages: + messages_table: + to: Za message_summary: reply_button: Odgovori destroy_button: IzbriÅ¡i @@ -574,9 +576,6 @@ sh: body: Nažalost, nema poruke s tom naznakom. outbox: title: Odlazna poÅ¡ta - to: Za - subject: Tema - date: Datum 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 @@ -699,12 +698,7 @@ sh: a oni su potrebni za ovu mogućnost. export: title: Izvoz - area_to_export: Područje za izvoz manually_select: Ručno izaberi drukčije područje - format_to_export: Format za izvoz - osm_xml_data: OpenStreetMap XML podaci - map_image: Slika karte (prikazuje standardni sloj) - embeddable_html: Ugradivi HTML kod licence: Licenca too_large: advice: 'Ako gornji izvoz podataka ne uspije, molimo pokuÅ¡ajte sa nekim od @@ -730,34 +724,24 @@ sh: footway: PjeÅ¡ačka staza rail: Željeznica subway: Podzemna željeznica - tram: - - Laka željeznica - - tramvaj - cable: - - Kabinska žičara - - sedežnica - runway: - - Aerodromska pista - - rulna staza - apron: - - Parking za avione - - terminal + cable_car: Kabinska žičara + chair_lift: sedežnica + runway: Aerodromska pista + taxiway: rulna staza + apron: Parking za avione admin: Administrativna granica forest: Å uma wood: Å ume (prirodne, neodržavane) golf: Golf teren park: Park + common: Travnjaci resident: Stambeno područje - common: - - Travnjaci - - livada retail: Maloprodajno područje industrial: Industrijsko područje commercial: Poslovno područje heathland: VriÅ¡tina - lake: - - Jezero - - rezervoar + lake: Jezero + reservoir: rezervoar farm: Farma brownfield: GradiliÅ¡te cemetery: Groblje @@ -766,14 +750,12 @@ sh: centre: Sportski centar reserve: Rezervat prirode military: Vojno područje - school: - - Å kola - - univerzitet + school: Å kola + university: univerzitet building: Značajna zgrada station: Željeznička stanica - summit: - - Vrh - - vrh + summit: Vrh + peak: vrh welcome: title: DobrodoÅ¡li! introduction: DobrodoÅ¡li u OpenStreetMap — slobodnu i uredljivu kartu svijeta. diff --git a/config/locales/sk.yml b/config/locales/sk.yml index 5f075a812..196ab794d 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -1395,9 +1395,9 @@ sk: few: '%{count} hlásenia' many: '%{count} hlásení' other: '%{count} hlásení' - report_created_at: Prvýkrát nahlásené %{datetime} - last_resolved_at: Naposledy vyrieÅ¡ené %{datetime} - last_updated_at: Naposledy aktualizované %{datetime} používateľom %{displayname} + report_created_at_html: Prvýkrát nahlásené %{datetime} + last_resolved_at_html: Naposledy vyrieÅ¡ené %{datetime} + last_updated_at_html: Naposledy aktualizované %{datetime} používateľom %{displayname} resolve: VyrieÅ¡iÅ¥ ignore: IgnorovaÅ¥ reopen: Znovu otvoriÅ¥ @@ -1644,8 +1644,6 @@ sk: messages: inbox: title: Doručená poÅ¡ta - my_inbox: Doručená poÅ¡ta - my_outbox: Odoslané messages: Máte %{new_messages} a %{old_messages} new_messages: few: '%{count} nové správy' @@ -1655,11 +1653,13 @@ sk: 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 - 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í message_summary: unread_button: OznačiÅ¥ ako neprečítané read_button: OznačiÅ¥ ako prečítané @@ -1679,15 +1679,10 @@ sk: body: Ľutujeme, neexistuje správa s takým ID. outbox: title: Odoslaná poÅ¡ta - my_inbox: Doručená poÅ¡ta - my_outbox: Odoslané messages: few: Máte %{count} odeslané správy one: Máte %{count} odoslanú správu other: Máte %{count} odoslaných správ - to: Komu - subject: Predmet - date: Dátum 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 @@ -1706,28 +1701,33 @@ sk: sa pod prísluÅ¡ným kontom. sent_message_summary: destroy_button: ZmazaÅ¥ + heading: + my_inbox: Doručená poÅ¡ta + my_outbox: Odoslané mark: as_read: Správa označená ako prečítaná as_unread: Správa označená ako neprečítaná destroy: destroyed: Správa vymazaná passwords: - lost_password: + new: title: Stratené heslo heading: Zabudli ste heslo? email address: 'E-mailová adresa:' new password button: Resetnúť heslo help_text: Vložte emailovú adresu, ktorú ste uviedli pri registrácii, poÅ¡leme vám odkaz, pomocou ktorého si budete môcÅ¥ nastaviÅ¥ nové heslo. + create: notice email on way: Å koda zabudnutého hesla :-( ale e-mail je už na ceste, takže si čoskoro budete môcÅ¥ zvoliÅ¥ nové. notice email cannot find: Ľutujeme, túto e-mailovú adresu nie je možné nájsÅ¥. - reset_password: + edit: title: Resetnúť heslo heading: Resetnúť heslo pre %{user} reset: VynulovaÅ¥ heslo - flash changed: VaÅ¡e heslo bolo zmenené. flash token bad: Zodpovedajúci kód nebol nájdený, skontrolujte prípadne URL. + update: + flash changed: VaÅ¡e heslo bolo zmenené. preferences: show: title: Moje predvoľby @@ -1998,12 +1998,7 @@ sk: sú pre túto funkciu nevyhnutné. export: title: Export - area_to_export: OblasÅ¥ pre export manually_select: Manuálne vybraÅ¥ inú oblasÅ¥ - format_to_export: Formát pre export - osm_xml_data: OpenStreetMap XML dáta - map_image: Obrázok (obsahuje Å¡tandardné vrstvy) - embeddable_html: Vložiteľné HTML licence: Licencia licence_details_html: Údaje OpenStreetMap sú licencované pod %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -2025,17 +2020,6 @@ sk: other: title: Iné zdroje description: ĎalÅ¡ie zdroje sú uvedené na OpenStreetMap wiki - options: Možnosti - format: Formát - scale: Mierka - max: max - image_size: Rozmery obrázku - zoom: Zväčšenie - add_marker: PridaÅ¥ do mapy značku - latitude: 'Zem.šírka:' - longitude: 'Zem. dĺžka:' - output: Výstup - paste_html: Pre vloženie do stránky použite toto HTML export_button: Export fixthemap: title: NahlásiÅ¥ problém / OpraviÅ¥ mapu @@ -2119,34 +2103,24 @@ sk: footway: Chodník pre peších rail: Železnica subway: Metro - tram: - - Rýchloelektrička - - električka - cable: - - Lanovka - - sedačková lanovka - runway: - - Letisková dráha - - pojazdová dráha - apron: - - Letisková odbavovacia plocha - - terminál + cable_car: Lanovka + chair_lift: sedačková lanovka + runway: Letisková dráha + taxiway: pojazdová dráha + apron: Letisková odbavovacia plocha admin: Administratívne hranice forest: Les (udržiavaný) wood: Les (neudržiavaný) golf: Golfové ihrisko park: Park + common: Pastvina resident: Obytná oblasÅ¥ - common: - - Pastvina - - lúka retail: Nákupná oblasÅ¥ industrial: Priemyselná oblasÅ¥ commercial: Komerčná oblasÅ¥ heathland: Vresovisko - lake: - - Jazero - - nádrž + lake: Jazero + reservoir: nádrž farm: Farma brownfield: Zborenisko cemetery: Cintorín @@ -2155,14 +2129,12 @@ sk: centre: Å portové centrum reserve: Prírodná rezervácia military: Vojenský priestor - school: - - Å kola - - univerzita + school: Å kola + university: univerzita building: Významná budova station: Železničná stanica - summit: - - Vrchol - - vrchol + summit: Vrchol + peak: vrchol tunnel: Čiarkovaný obrys = tunel bridge: Čireny obrys = most private: Súkromný prístup diff --git a/config/locales/skr-arab.yml b/config/locales/skr-arab.yml index 4fba080b7..c0425c64f 100644 --- a/config/locales/skr-arab.yml +++ b/config/locales/skr-arab.yml @@ -1038,11 +1038,12 @@ skr-arab: messages: inbox: title: ان باکس - my_inbox: میݙا انباکس - my_outbox: میݙا آؤٹ باکس + messages_table: from: کنوں + to: تائیں subject: موضوع date: تریخ + actions: عمل message_summary: unread_button: نشان لاؤ جو کائنی پڑھا read_button: نشان لاؤ جو پڑھ گھدے @@ -1054,11 +1055,7 @@ skr-arab: back_to_inbox: انباکس تے واپس outbox: title: آؤٹ باکس - my_inbox: میݙا انباکس - my_outbox: میݙا آؤٹ باکس - to: تائیں - subject: موضوع - date: تریخ + actions: عمل show: title: سنیہا پڑھو reply_button: جواب @@ -1067,15 +1064,19 @@ skr-arab: back: پچھوں sent_message_summary: destroy_button: مٹاؤ + heading: + my_inbox: میݙا انباکس + my_outbox: میݙا آؤٹ باکس destroy: destroyed: سنیہا مٹ ڳیا passwords: - lost_password: - email address: 'ای میل پتہ:' + new: + email address: ای میل پتہ new password button: پاس ورڈ ولدا ٹھیک کرو - reset_password: + edit: title: پاس ورڈ ولدا ٹھیک کرو reset: پاس ورڈ ولدا ٹھیک کرو + update: flash changed: تہاݙا پاس ورڈ تبدیل تھی ڳیا۔ preferences: show: @@ -1099,7 +1100,7 @@ skr-arab: new: title: لاگ ان heading: لاگ ان - password: 'پاس ورڈ:' + password: پاس ورڈ openid_html: '%{logo} اوپن آئی ڈی:' remember: میکوں یاد رکھو lost password link: پاسورڈ بھل ڳئے ہو؟ @@ -1187,15 +1188,6 @@ skr-arab: too_large: other: title: ٻئے ماخذ - options: اختیارات - format: فارمیٹ - scale: پیمانہ - max: ودھ و ودھ - image_size: فوٹو دا سائز - zoom: وݙا چھوٹا کرݨ - latitude: عرض بلد - longitude: طول بلد - output: آؤٹ پٹ export_button: ٻاہر بھیڄو help: irc: @@ -1213,29 +1205,39 @@ skr-arab: table: entry: track: ٹرَیک - tram: - 1: ٹرام - cable: - - کیبل کار - - چیئر لفٹ + train: ڳَݙی + light_rail: لائٹ ریل + tram: ٹرام + trolleybus: ٹرالی بس + bus: بس + cable_car: کیبل کار + chair_lift: چیئر لفٹ + taxiway: ٹیکسی دا راہ + capital: دار الحکومت + city: شَہر + orchard: بغیچا forest: جنگل wood: لکڑ + grass: گھا + meadow: چراگاہ + sand: ریت golf: گولف مَیدان park: پارک - common: - - وقف - - چراگاہ - - باغ + common: وقف retail: پرچون علاقہ industrial: صنعتی علاقہ commercial: کمرشل ایریا - lake: - - جھیل + lake: جھیل + reservoir: ذخائر + glacier: گلیشیئر farm: کھیت - school: - - سکول - - یونی ورسٹی + school: سکول + university: یونی ورسٹی + hospital: ہسپتال station: ریلوے ٹیشݨ + peak: چوٹی + bus_stop: بساں دا اݙا + stop: اݙہ welcome: title: ست بسم اللہ! basic_terms: @@ -1322,6 +1324,13 @@ skr-arab: block: show: ݙِکھاؤ edit: تبدیلی کرو + user_mutes: + index: + table: + thead: + actions: عمل + tbody: + send_message: سنیہا پٹھو notes: index: subheading_submitted: جمع تھی ڳیا diff --git a/config/locales/sl.yml b/config/locales/sl.yml index 0708a3722..aa1395ed4 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -58,6 +58,11 @@ sl: messages: invalid_email_address: ni videti veljaven e-poÅ¡tni naslov email_address_not_routable: ni preusmerljiv + display_name_is_user_n: ne more biti user_n, razen če je n vaÅ¡ uporabniÅ¡ki + ID + models: + user_mute: + is_already_muted: je že utiÅ¡an models: acl: Seznam nadzora dostopa changeset: Nabor sprememb @@ -265,7 +270,7 @@ sl: opened_at_html: Ustvarjeno %{when} opened_at_by_html: Ustvaril_a %{user} %{when} commented_at_html: Posodobljeno %{when} - commented_at_by_html: Posodobil/a %{user} %{when} + commented_at_by_html: Posodobil_a %{user} %{when} closed_at_html: RazreÅ¡eno %{when} closed_at_by_html: RazreÅ¡il_a %{user} %{when} reopened_at_html: Znova aktivirano %{when} @@ -503,7 +508,7 @@ sl: index: title: Sklopi sprememb title_user: Sklopi sprememb od %{user} - title_user_link_html: Sklopi sprememb uporabnika/ce %{user_link} + title_user_link_html: Sklopi sprememb uporabnika_ce %{user_link} title_friend: Množice sprememb mojih prijateljev title_nearby: Sklopi sprememb bližnjih uporabnikov empty: Ni najdenih množic sprememb. @@ -518,7 +523,7 @@ sl: changeset_comments: comment: comment: 'Nov komentar o naboru sprememb #%{changeset_id} uporabnika %{author}' - commented_at_by_html: Posodobil/a %{user} %{when} + commented_at_by_html: Posodobil_a %{user} %{when} comments: comment: 'Nov komentar o naboru sprememb #%{changeset_id} uporabnika %{author}' index: @@ -1512,9 +1517,9 @@ sl: few: '%{count} prijave' other: '%{count} prijav' no_reports: Ni prijav - report_created_at: Prvič prijavljeno %{datetime} - last_resolved_at: Zadnjič razreÅ¡eno %{datetime} - last_updated_at: Zadnjič %{datetime} posodobil/a %{displayname} + report_created_at_html: Prvič prijavljeno %{datetime} + last_resolved_at_html: Zadnjič razreÅ¡eno %{datetime} + last_updated_at_html: Zadnjič %{datetime} posodobil_a %{displayname} resolve: RazreÅ¡i ignore: Prezri reopen: Znova odpri @@ -1684,6 +1689,7 @@ sl: other: |- bila uspeÅ¡no naložena z %{trace_points} od možnih %{count} točk + all_your_traces_html: Vse vaÅ¡e uspeÅ¡no naložene sledi GPX najdete na %{url}. subject: '[OpenStreetMap] Uspeh uvoza datoteke GPX' signup_confirm: subject: '[OpenStreetMap] Pozdravljeni v OpenStreetMap' @@ -1807,8 +1813,6 @@ sl: messages: inbox: title: Prejeta poÅ¡ta - my_inbox: Prejeta poÅ¡ta - my_outbox: Poslana poÅ¡ta messages: Imate %{new_messages} in %{old_messages}. new_messages: few: '%{count} nova sporočila' @@ -1820,17 +1824,21 @@ sl: one: '%{count} staro sporočilo' two: '%{count} stari sporočili' other: '%{count} starih sporočil' - from: Od - subject: Zadeva - date: Datum 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 reply_button: Odgovori 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} @@ -1845,19 +1853,22 @@ sl: body: Žal ni sporočila s tem id-jem. outbox: title: Poslana poÅ¡ta - my_inbox: Prejeta poÅ¡ta - my_outbox: Poslana poÅ¡ta + actions: Dejanja 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 - to: Za - subject: Zadeva - date: Datum 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. @@ -1871,27 +1882,38 @@ sl: 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 + unmute: + notice: Sporočilo je bilo prestavljeno v mapo »Prejeto«. + error: Sporočila ni bilo mogoče premakniti v mapo »Prejeto«. destroy: destroyed: Sporočilo izbrisano passwords: - lost_password: + new: title: pozabljeno geslo heading: Ste pozabili geslo? - email address: 'E-poÅ¡tni naslov:' + email address: E-poÅ¡tni naslov new password button: PoÅ¡lji mi novo geslo help_text: VpiÅ¡ite e-poÅ¡tni naslov, s katerim ste se registrirali. Poslali vam bomo povezavo za ponastavitev gesla. + create: notice email on way: E-pismo z vsemi potrebnimi podatki za nastavitev novega gesla je že na poti. notice email cannot find: Oprostite, toda vnesenega e-poÅ¡tnega naslova ni bilo mogoče najti. - reset_password: + edit: title: Ponastavitev gesla heading: Ponastavi geslo za %{user} reset: Ponastavitev gesla + flash token bad: Tega žetona ni bilo mogoče najti. Predlagamo, da preverite + naslov URL. + update: flash changed: VaÅ¡e geslo je bilo spremenjeno. flash token bad: Tega žetona ni bilo mogoče najti. Predlagamo, da preverite naslov URL. @@ -1938,8 +1960,8 @@ sl: new: title: Prijava heading: Prijava - email or username: 'E-poÅ¡tni naslov ali uporabniÅ¡ko ime:' - password: 'Geslo:' + email or username: E-poÅ¡tni naslov ali uporabniÅ¡ko ime + password: Geslo openid_html: '%{logo} OpenID:' remember: Zapomni si me lost password link: Ste pozabili geslo? @@ -1997,6 +2019,7 @@ sl: image: Slika alt: nadomestno besedilo url: URL + codeblock: Blok kode richtext_field: edit: Uredi preview: Predogled @@ -2245,12 +2268,7 @@ sl: to funkcijo. export: title: Izvozi - area_to_export: Območje za izvoz manually_select: Ročno izberite drugo območje - format_to_export: Oblika izvoženih podatkov - osm_xml_data: Podatki OpenStreetMap v zapisu XML - map_image: Slika zemljevida (prikaže standardni izris) - embeddable_html: HTML za vključitev na spletno stran licence: Licenca licence_details_html: Podatki OpenStreetMap so licencirani pod %{odbl_link} (ODbL). @@ -2273,17 +2291,6 @@ sl: other: title: Drugi viri description: Dodatni viri, navedeni v vikiju OpenStreetMap - options: Možnosti - format: Oblika - scale: Merilo - max: največ - image_size: Velikost slike - zoom: Povečava - add_marker: Dodaj označevalec na zemljevid - latitude: 'Å ir:' - longitude: 'Dol:' - output: Izhod - paste_html: Uporabite ta HTML za vključitev zemljevida na spletno stran export_button: Izvozi fixthemap: title: Prijavi napako / Popravi zemljevid @@ -2383,67 +2390,83 @@ sl: primary: Glavna cesta secondary: Regionalna cesta unclassified: Ostale ceste izven naselij + pedestrian: Pot za peÅ¡ce track: Kolovoz bridleway: Jahalna pot cycleway: Kolesarska steza cycleway_national: Nacionalna kolesarska steza cycleway_regional: Regionalna kolesarska steza cycleway_local: Krajevna kolesarska steza + cycleway_mtb: Gorskokolesarska pot footway: PeÅ¡pot rail: Železnica + train: Vlak subway: Podzemna železnica - tram: - - Mestna železnica - - tramvaj - cable: - - Nihalka - - sedežnica - runway: - - Vzletno-pristajalna steza - - povezave - apron: - - LetaliÅ¡ka ploščad - - terminal + ferry: Trajekt + light_rail: Lahka železnica + tram: Tramvaj + trolleybus: Trolejbus + bus: Avtobus + cable_car: Nihalka + chair_lift: Sedežnica + runway: Vzletno-pristajalna steza + taxiway: Vozna steza + apron: LetaliÅ¡ka ploščad admin: Upravna razmejitev + capital: Glavno mesto + city: Mesto + orchard: Sadovnjak + vineyard: Vinograd forest: Gozd - wood: Pragozd + wood: Gozd + farmland: Kmetijsko zemljišče + grass: Trava + meadow: Travnik + bare_rock: Gola skala + sand: Pesek golf: Igrišče za golf park: Park + common: Travniki + built_up: Pozidano območje resident: Naselje - common: - - Travniki - - travnik - - vrt retail: Trgovinsko območje industrial: Industrijsko območje commercial: Poslovno območje heathland: Grmičevje - lake: - - Jezero - - vodni zbiralnik + scrubland: Grmičevje + lake: Jezero + reservoir: Vodni zbiralnik + intermittent_water: Presihajoče vodno telo + glacier: Ledenik + reef: Greben + wetland: Mokrišče farm: Kmetija brownfield: Gradbišče cemetery: Pokopališče allotments: Vrtički pitch: Å portno igrišče centre: Å portni center + beach: Plaža reserve: Naravni rezervat military: VojaÅ¡ko območje - school: - - Å ola - - univerza + school: Å ola; univerza + university: Univerza + hospital: BolniÅ¡nica building: Pomembna stavba station: ŽelezniÅ¡ka postaja - summit: - - Vrh - - vrh + summit: Vrh + peak: Vrh tunnel: Črtkana obroba = predor bridge: Krepka obroba = most private: Zasebni dostop destination: Dovoljeno za dostavo construction: Ceste v gradnji + bus_stop: Avtobusno postajališče + stop: Postajališče bicycle_shop: Kolesarska trgovina + bicycle_rental: Izposoja koles bicycle_parking: Parkirišče za kolesa + bicycle_parking_small: Majhno parkirišče za kolesa toilets: Stranišče welcome: title: Pozdravljeni! @@ -2645,6 +2668,7 @@ sl: oauth1_settings: Nastavitve OAuth 1 oauth2_applications: Aplikacije OAuth 2 oauth2_authorizations: Pooblastila OAuth 2 + muted_users: UtiÅ¡ani uporabniki oauth: authorize: title: Dovoli dostop do vaÅ¡ega računa @@ -2683,6 +2707,7 @@ sl: read_gpx: Branje zasebnih sledi GPS write_gpx: Nalaganje sledi GPS write_notes: Spreminjanje opomb + write_redactions: Skrij podatke na zemljevidu read_email: Branje uporabnikovega e-poÅ¡tnega naslova skip_authorization: Samodejna odobritev aplikacije oauth_clients: @@ -2773,7 +2798,7 @@ sl: no_applications_html: Pooblastili Å¡e niste nobene aplikacije %{oauth2}. application: revoke: Prekliči dostop - confirm_revoke: Želite za to aplikacijo preklicati dostop? + confirm_revoke: Želite tej aplikaciji odvzeti dostop? users: new: title: Registracija @@ -2856,6 +2881,8 @@ sl: my_dashboard: Moja nadzorna plošča blocks on me: Blokiranja mene blocks by me: Moja blokiranja + create_mute: UtiÅ¡aj tega uporabnika + destroy_mute: Vklopi zvok tega uporabnika edit_profile: Uredi profil send message: PoÅ¡lji sporočilo diary: Dnevnik @@ -2887,6 +2914,7 @@ sl: importer: Odvzemi dostop uvoznika block_history: Aktivna blokiranja moderator_history: Izvedena blokiranja + revoke_all_blocks: Prekliči vsa blokiranja comments: Komentarji create_block: Blokiraj uporabnika activate_user: Aktiviraj uporabnika @@ -2991,6 +3019,18 @@ sl: confirm: Ali res želite preklicati blokiranje? revoke: Prekliči! flash: To blokiranje je bilo preklicano. + 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. @@ -3025,11 +3065,11 @@ sl: blocks_on: title: Blokiranja uporabnika %{name} heading_html: Seznam blokiranj uporabnika %{name} - empty: Uporabnik/ca %{name} Å¡e ni bil/a blokiran/a. + empty: Uporabnik_ca %{name} Å¡e ni bil_a blokiran_a. blocks_by: - title: Dana blokiranja uporabnika/ce %{name} + title: Dana blokiranja uporabnika_ce %{name} heading_html: Seznam izvedenih blokiranj uporabnika %{name} - empty: Uporabnik/ca %{name} ni blokiral/a Å¡e nikogar. + 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}' @@ -3058,6 +3098,32 @@ sl: showing_page: Stran %{page} next: Naprej » previous: « PrejÅ¡nja + user_mutes: + index: + title: UtiÅ¡ani uporabniki + my_muted_users: Moji utiÅ¡ani uporabniki + you_have_muted_n_users: + one: UtiÅ¡ali ste %{count} uporabnika + two: UtiÅ¡ali ste %{count} uproabnika + few: UtiÅ¡ali ste %{count} uporabnikov + other: UtiÅ¡ali ste %{count} uporabnikov + user_mute_explainer: Sporočila utiÅ¡anih uporabnikov so premaknjena v ločeno + mapo »Prejeto« in ne boste prejemali e-poÅ¡tnih obvestil. + user_mute_admins_and_moderators: Administratorje in moderatorje lahko utiÅ¡ate, + vendar njihova sporočila ne bodo utiÅ¡ana. + table: + thead: + muted_user: UtiÅ¡ani uporabnik + actions: Dejanja + tbody: + unmute: Vklopi zvok + send_message: PoÅ¡lji sporočilo + create: + notice: UtiÅ¡ali ste %{name}. + error: '%{name} ni bilo mogoče utiÅ¡ati. %{full_message}.' + destroy: + notice: Vklopili ste zvok %{name}. + error: Zvoka uporabnika ni bilo mogoče vklopiti. Prosimo, poskusite znova. notes: index: title: Opombe, ki jih je posredoval_a ali komentiral_a %{user} @@ -3094,6 +3160,7 @@ sl: reactivate: Znova aktiviraj comment_and_resolve: Komentiraj in razreÅ¡i comment: Komentiraj + log_in_to_comment: Za komentiranje te opombe se prijavite report_link_html: Če ta opomba vsebuje občutljive podatke, ki jih je treba odstraniti, lahko %{link}. other_problems_resolve: Vse preostale težave z opombo reÅ¡ite sami s komentarjem. @@ -3310,7 +3377,7 @@ sl: add_note: Tu dodaj opombo show_address: Prikaži naslov query_features: Preveri značilnosti - centre_map: Premakni na sredino + centre_map: Osredini zemljevid tukaj redactions: edit: heading: Uredi redakcijo diff --git a/config/locales/sq.yml b/config/locales/sq.yml index 30f0e88f8..ad01fd0c3 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -2,6 +2,7 @@ # Exported from translatewiki.net # Export driver: phpyaml # Author: Bjakupi +# Author: Dimitar # Author: Eraldkerciku # Author: Euriditi # Author: Fanjiayi @@ -855,8 +856,8 @@ sq: ignored: Injoruar open: E hapur show: - report_created_at: E raportuar së pari tek %{datetime} - last_updated_at: Herën e fundit i ri- freskuar%{datetime}nga%{displayname} + report_created_at_html: E raportuar së pari tek %{datetime} + last_updated_at_html: Herën e fundit i ri- freskuar%{datetime}nga%{displayname} resolve: Zgjidh ignore: injoro reports_of_this_issue: Raportimet e këtij problemi @@ -959,14 +960,15 @@ sq: messages: inbox: title: Kutia mbërritëse - my_inbox: Kutia ime mbërritëse messages: Ti ke %{new_messages} dhe %{old_messages} - from: Prej - subject: Titulli - date: Data 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 @@ -986,9 +988,6 @@ sq: body: Na vjen keq, nuk ka mesazh me këtë id. outbox: title: Dalje - to: Për - subject: Titulli - date: Data show: reply_button: Përgjigje unread_button: Shëno si të palexuar @@ -998,11 +997,13 @@ sq: 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 passwords: - lost_password: + new: title: Fjalëkalimi i humbur heading: Ke harruar fjalëkalimin? email address: 'Adresa e emailit:' @@ -1010,16 +1011,18 @@ sq: help_text: Shkruani adresën e emailit që keni përdorur për tu regjistruar, ne do të dërgojmë një lidhje të cilën mund të përdorni për të rivendosur fjalëkalimin tuaj. + create: notice email on way: Na vjen keq e keni humbur atë :-( por një email është në rrugëtim kështu që ju mund të rivendosni atë së shpejti. notice email cannot find: Na vjen keq, ne nuk arritë ta gjejmë adresën e emailit të dhënë. - reset_password: + edit: title: Rivendos fjalëkalimin heading: Rivendos fjalëkalimin për %{user} reset: Rivendos fjalëkalimin - flash changed: Fjalëkalimi yt është ndryshuar. flash token bad: Nuk e gjet atë shenjë, kontrollo URL-në? + update: + flash changed: Fjalëkalimi yt është ndryshuar. profiles: edit: image: Imazhi @@ -1095,12 +1098,7 @@ sq: user_page_link: '{{GENDER:{{ROOTPAGENAME}}|faqja e përdoruesit|faqja e përdorueses}}' export: title: Eksporto - area_to_export: Zona për tu eksportuar manually_select: Zgjidh me dorë një zonë tjetër - format_to_export: Formati per eksportim - osm_xml_data: Të dhëna XML të OpenStreetMap - map_image: Imzhi i hartës (shfaq shtresën e parazgjedhur) - embeddable_html: HTML i inkorporueshëm licence: Licensa too_large: advice: 'Në qoftë se dështon eksporti i mësipërm, të lutem konsidero përdorimin @@ -1123,17 +1121,6 @@ sq: other: title: Burime të tjera description: Burime shtesë të listuara në faqen e OpenStreetMap wiki - options: Opsionet - format: Formati - scale: Shkallë - max: max - image_size: Madhësia e imazhit - zoom: Zmadho - add_marker: Shto një shënues në hartë - latitude: 'Lat:' - longitude: 'Lon:' - output: Dalja - paste_html: Ngjite HTML për ta inkorporuar në uebfaqe export_button: Eksporto fixthemap: how_to_help: @@ -1180,14 +1167,12 @@ sq: entry: centre: Qendër sportive military: Zonë ushtarake - school: - - Shkollë - - Universitet + school: Shkollë + university: Universitet building: Ndërtesë station: Stacioni hekurudhor - summit: - - Samit - - majë + summit: Samit + peak: majë welcome: title: Mirësevjen whats_on_the_map: @@ -1299,7 +1284,7 @@ sq: consider_pd: Përveç marrëveshjes së mësipërme, unë i konsideroj kontributet e mia të jenë në Domeinin Publik consider_pd_why: çfarë është kjo? - consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain + consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain decline: Nuk e pranoj legale_select: 'Vendi i banimit:' legale_names: diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml index adcbcc886..342f9f3c0 100644 --- a/config/locales/sr-Latn.yml +++ b/config/locales/sr-Latn.yml @@ -829,7 +829,6 @@ sr-Latn: messages: inbox: title: Primljene - my_inbox: Primljene messages: Imate %{new_messages} i %{old_messages} new_messages: one: '%{count} nova poruka' @@ -837,12 +836,14 @@ sr-Latn: old_messages: one: '%{count} stara poruka' other: '%{count} stare poruke' - from: Od - subject: Naslov - date: Datum 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 @@ -865,9 +866,6 @@ sr-Latn: messages: one: Imate %{count} poslatu poruku other: Imate %{count} poslate poruke - to: Za - subject: Naslov - date: Datum 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 @@ -883,27 +881,31 @@ sr-Latn: 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 passwords: - lost_password: + new: title: Povratak lozinke heading: Zaboravili ste lozinku? email address: 'E-adresa:' new password button: PoniÅ¡ti lozinku help_text: Unesite e-adresu koju ste uneli pri upisu, a mi ćemo vam poslati vezu pomoću koje možete da poniÅ¡tite lozinku. + create: notice email on way: Poruka za poniÅ¡tavanje lozinke je poslata. notice email cannot find: E-adresa nije pronađena. - reset_password: + edit: title: PoniÅ¡ti lozinku heading: PoniÅ¡tavanje lozinke za %{user} reset: PoniÅ¡ti lozinku - flash changed: VaÅ¡a lozinka je promenjena. flash token bad: Takav novčić nije pronađen. Proverite adresu. + update: + flash changed: VaÅ¡a lozinka je promenjena. profiles: edit: image: 'Slika:' @@ -986,27 +988,11 @@ sr-Latn: no_iframe_support: VaÅ¡ pregledač ne podržava HTML iframes, a oni su potrebni za ovu mogućnost. export: - area_to_export: Područje za izvoz manually_select: Ručno izaberite drugo područje - format_to_export: Format za izvoz - osm_xml_data: Openstritmap XML podaci - map_image: Slika mape (prikazuje standardni sloj) - embeddable_html: Ugradivi HTML kod licence: Licenca too_large: body: Ovo područje je preveliko da bi bilo izvezeno u formatu XML. Uvećajte prikaz ili izaberite manju povrÅ¡inu. - options: Mogućnosti - format: Format - scale: Razmera - max: najviÅ¡e - image_size: Veličina slike - zoom: Uvećanje - add_marker: Dodaj marker na mapu - latitude: 'GÅ :' - longitude: 'GD:' - output: Izlaz - paste_html: Ubacite HTML kod za ugrađivanje na stranice export_button: Izvezi sidebar: search_results: Rezultati pretrage @@ -1030,34 +1016,24 @@ sr-Latn: footway: PeÅ¡ačka staza rail: Železnička pruga subway: Podzemna železnica - tram: - - Laka železnica - - tramvaj - cable: - - Žičara - - sediÅ¡nica - runway: - - Aerodromska pista - - rulne staze - apron: - - Aerodromski peron - - terminal + cable_car: Žičara + chair_lift: sediÅ¡nica + runway: Aerodromska pista + taxiway: rulne staze + apron: Aerodromski peron admin: Administrativna granica forest: Å uma wood: Å uma golf: Golf teren park: Park + common: Poljana resident: Stambeno područje - common: - - Poljana - - livada retail: Maloprodajno područje industrial: Industrijsko područje commercial: Poslovno područje heathland: PustoÅ¡ - lake: - - Jezero - - rezervoar + lake: Jezero + reservoir: rezervoar farm: Farma brownfield: Građevinsko zemljiÅ¡te cemetery: Groblje @@ -1066,14 +1042,12 @@ sr-Latn: centre: Sportski centar reserve: Rezervat prirode military: Vojno područje - school: - - Å kola - - univerzitet + school: Å kola + university: univerzitet building: Značajna zgrada station: Železnička stanica - summit: - - UzviÅ¡enje - - vrh + summit: UzviÅ¡enje + peak: vrh tunnel: Isprekidan okvir – tunel bridge: Crni okvir – most private: Privatni posed diff --git a/config/locales/sr.yml b/config/locales/sr.yml index 2141d3565..e05969ff0 100644 --- a/config/locales/sr.yml +++ b/config/locales/sr.yml @@ -115,6 +115,7 @@ sr: diary_entry: user: Корисник title: Наслов + body: Текст latitude: Географска ширина longitude: Географска дужина language_code: Језик @@ -217,6 +218,15 @@ sr: entry: comment: Коментар full: Потпуна белешка + account: + deletions: + show: + title: Обришите мој налог + warning: Упозорење! Брисање налога је неповратан процес. + delete_account: Обриши налог + retain_email: Ваша имејл адреса ће бити задржана. + confirm_delete: Јесте ли сигурни? + cancel: Откажи accounts: edit: title: Уреди налог @@ -241,8 +251,10 @@ sr: agreed_with_pd: Такође се слажете да ваше измене буду у јавном власништву. link text: шта је ово? save changes button: Сачувај промене + delete_account: Брисање налога... go_public: heading: Јавно уређивање + find_out_why: сазнајте зашто make_edits_public_button: Нека све моје измене буду јавне update: success_confirm_needed: Подаци о кориснику су успешно ажурирани. Проверите имејл @@ -340,6 +352,7 @@ sr: wikidata_link: Ставка %{page} на Википодацима wikipedia_link: Чланак %{page} на Википедији telephone_link: Позови %{phone_number} + email_link: Имејл %{email} query: title: Информације о објектима introduction: Кликните на мапу да бисте пронашли објекте у близини. @@ -396,6 +409,7 @@ sr: nearby mapper: Оближњи картограф friend: Пријатељ show: + edit_your_profile: Уредите Ваш профил my friends: Моји пријатељи no friends: Нисте додали ниједног пријатеља. nearby users: 'Остали оближњи корисници:' @@ -442,9 +456,9 @@ sr: comment_link: Коментариши овај унос reply_link: Пошаљи поруку аутору comment_count: - zero: Нема коментара one: '%{count} коментар' other: '%{count} коментара' + no_comments: Нема коментара edit_link: Уреди овај унос hide_link: Сакриј овај унос unhide_link: Откриј овај унос @@ -476,6 +490,13 @@ sr: comment: Коментар newer_comments: Новији коментари older_comments: Старији коментари + errors: + forbidden: + title: Забрањено + internal_server_error: + title: Грешка у апликацији + not_found: + title: Датотека није пронађена friendships: make_friend: heading: Додати корисника %{user} као пријатеља? @@ -597,11 +618,13 @@ sr: toilets: Тоалет townhall: Градска скупштина university: Универзитет + vehicle_inspection: Технички преглед vending_machine: Аутомат veterinary: Ветеринарска клиника village_hall: Сеоска месна заједница waste_basket: Корпа за отпатке waste_disposal: Контејнер + waste_dump_site: Депонија boundary: administrative: Административна граница census: Пописна граница @@ -616,6 +639,7 @@ sr: viaduct: Вијадукт "yes": Мост building: + apartment: Стан apartments: Станови barn: Штала bungalow: Бунгалов @@ -632,11 +656,13 @@ sr: farm_auxiliary: Помоћна штала garage: Гаража garages: Гараже + greenhouse: Стакленик hangar: Хангар hospital: Болница hotel: Хотел house: Кућа houseboat: Кућа на води + hut: Колиба industrial: Индустријска зграда kindergarten: Зграда вртића manufacture: Зграда фабрике @@ -667,6 +693,7 @@ sr: brewery: Пивара carpenter: Столар confectionery: Кондитор + dressmaker: Кројач electrician: Електричар electronics_repair: Поправка електронике gardener: Баштован @@ -676,6 +703,7 @@ sr: roofer: Кровник sawmill: Пилана shoemaker: Обућар + stonemason: Каменорезац tailor: Кројач winery: Винарија "yes": Занатска радња @@ -684,6 +712,7 @@ sr: ambulance_station: Хитна помоћ assembly_point: Тачка окупљања defibrillator: Дефибрилатор + fire_extinguisher: ПП апарат landing_site: Место за хитно слетање phone: Телефон за хитне случајеве highway: @@ -693,6 +722,7 @@ sr: bus_stop: Аутобуска станица construction: Пут у изградњи corridor: Коридор + crossing: Пешачки прелаз cycleway: Бициклистичка стаза elevator: Лифт emergency_access_point: Прва помоћ @@ -765,6 +795,7 @@ sr: "yes": Раскрсница landuse: allotments: Парцеле + aquaculture: Рибњак basin: Басен brownfield: Запуштена локација cemetery: Гробље @@ -796,6 +827,7 @@ sr: leisure: beach_resort: Приобално одмаралиште bird_hide: Осматрачница за птице + bowling_alley: Куглана common: Општинско земљиште dog_park: Парк за псе firepit: Камин @@ -830,6 +862,7 @@ sr: bridge: Мост bunker_silo: Бункер chimney: Димњак + communications_tower: Репетитор crane: Кран dyke: Насип embankment: Насип @@ -848,8 +881,11 @@ sr: pumping_station: Црпна станица silo: Силос surveillance: Присмотра + telescope: Телескоп tower: Кула + utility_pole: Бандера watermill: Водени млин + water_tap: Чесма water_tower: Водени торањ water_well: Бунар windmill: Ветрењача @@ -859,6 +895,8 @@ sr: airfield: Војни аеродром barracks: Касарна bunker: Бункер + checkpoint: Контролна тачка + trench: Ров "yes": Војска mountain_pass: "yes": Планински прелаз @@ -943,6 +981,7 @@ sr: municipality: Општина neighbourhood: Кварт postcode: Поштански број + quarter: Четврт region: Регион sea: Море square: Трг @@ -967,6 +1006,7 @@ sr: platform: Железнички перон preserved: Очувана железница proposed: Пројектована железница + rail: Железница spur: Огранак железничке пруге station: Железничка станица stop: Железничко стајалиште @@ -987,6 +1027,7 @@ sr: beauty: Козметички салон beverages: Продавница пића bicycle: Продавница бицикала + bookmaker: Кладионица books: Књижара boutique: Бутик butcher: Месара @@ -1006,6 +1047,7 @@ sr: copyshop: Фотокопирница cosmetics: Козметичка радња curtain: Продавница драперија + dairy: Продавница млечних производа deli: Сендвичара department_store: Робна кућа discount: Дисконт @@ -1018,11 +1060,13 @@ sr: fabric: Продавница тканине farm: Пољопривредна апотека fashion: Продавница модне одеће + fishing: Рибарница florist: Цвећара food: Продавница хране funeral_directors: Погребно предузеће furniture: Продавница намештаја garden_centre: Вртни центар + gas: Пунионица ТНГ-а general: Продавница робе широке потрошње gift: Продавница поклона greengrocer: Продавница воћа и поврћа @@ -1035,6 +1079,7 @@ sr: jewelry: Јувелирница kiosk: Трафика laundry: Перионица веша + locksmith: Бравар lottery: Лутрија mall: Тржни центар massage: Масажа @@ -1047,6 +1092,7 @@ sr: outdoor: Продавница опреме за спортове на отвореном paint: Фарбара pawnbroker: Залагаоничар + perfumery: Парфимерија pet: Продавница за кућне љубимце photo: Фотографска радња seafood: Морски плодови @@ -1062,7 +1108,9 @@ sr: toys: Продавница играчака travel_agency: Туристичка агенција tyres: Продавница гума + vacant: Упражњен локал video: Видеотека + video_games: Продавница видео-игара wine: Винарија "yes": Продавница tourism: @@ -1111,9 +1159,11 @@ sr: "yes": Водоток admin_levels: level2: Државна граница + level3: Граница региона level4: Граница савезне државе level5: Граница региона level6: Граница округа + level7: Граница општине/града level8: Граница града level9: Граница села level10: Граница насеља @@ -1216,6 +1266,7 @@ sr: help: Помоћ about: О нама copyright: Ауторска права + communities: Заједнице community: Заједница community_blogs: Блогови заједнице community_blogs_title: Блогови чланова заједнице OpenStreetMap @@ -1248,6 +1299,7 @@ sr: import_failures_url: https://wiki.openstreetmap.org/wiki/GPX_Import_Failures?uselang=sr-ec subject: '[OpenStreetMap] GPX увоз није успео' gpx_success: + hi: Здарво %{to_user}, subject: '[OpenStreetMap] GPX увоз је успео' signup_confirm: subject: '[OpenStreetMap] Добро дошли на ОпенСтритМап' @@ -1327,6 +1379,7 @@ sr: success: Ваш налог је потврђен. Хвала вам на упису! already active: Овај налог је већ потврђен. unknown token: Тај код за потврду је истекао или не постоји. + click_here: кликните овде confirm_resend: failure: Корисник %{name} није пронађен. confirm_email: @@ -1340,7 +1393,6 @@ sr: messages: inbox: title: Примљене - my_inbox: Примљене messages: Имате %{new_messages} и %{old_messages} new_messages: one: '%{count} нова порука' @@ -1348,12 +1400,15 @@ sr: old_messages: one: '%{count} стара порука' other: '%{count} старих порука' - from: Од - subject: Наслов - date: Датум no_messages_yet_html: Још увек немате порука. Зашто не бисте ступили у контакт с %{people_mapping_nearby_link}? people_mapping_nearby: маперима у вашој околини + messages_table: + from: Од + to: За + subject: Наслов + date: Датум + actions: Радње message_summary: unread_button: Означи као непрочитано read_button: Означи као прочитано @@ -1376,12 +1431,11 @@ sr: messages: one: Имате %{count} послату поруку other: Имате %{count} послате поруке - to: За - subject: Наслов - date: Датум no_sent_messages_html: Још увек немате послатих порука. Зашто не бисте ступили у контакт с %{people_mapping_nearby_link}? people_mapping_nearby: маперима у вашој околини + muted: + title: Пригушене поруке reply: wrong_user: Пријављени сте као %{user}, али порука на коју сте желели да одговорите није послата том кориснику. Пријавите се као исправан корисник да бисте одговорили. @@ -1396,29 +1450,41 @@ sr: прочитали. sent_message_summary: destroy_button: Обриши + heading: + my_inbox: Примљене mark: as_read: Порука је означена као прочитана as_unread: Порука је означена као непрочитана destroy: destroyed: Порука је обрисана passwords: - lost_password: + new: title: Повратак лозинке heading: Заборавили сте лозинку? - email address: 'Имејл адреса:' + email address: Имејл адреса new password button: Поништи лозинку help_text: Унесите е-адресу коју сте унели при упису, а ми ћемо вам послати везу помоћу које можете да поништите лозинку. + create: notice email on way: Порука за поништавање лозинке је послата. notice email cannot find: Имејл адреса није пронађена, жао нам је. - reset_password: + edit: title: Поништи лозинку heading: Поништавање лозинке за %{user} reset: Поништи лозинку - flash changed: Ваша лозинка је промењена. flash token bad: Такав новчић није пронађен. Проверите адресу. + update: + flash changed: Ваша лозинка је промењена. + preferences: + show: + title: Моја подешавања + edit: + cancel: Откажи profiles: edit: + title: Уреди профил + save: Ажурирај профил + cancel: Откажи image: Слика gravatar: gravatar: Користи Граватар @@ -1433,12 +1499,17 @@ sr: home location: Место становања no home location: Нисте унели место становања. update home location on click: Ажурирати место становања када кликнем на мапу? + show: Прикажи + delete: Обриши + undelete: Поништи брисање + update: + success: Профил ажуриран. sessions: new: title: Пријава heading: Пријава - email or username: 'Имејл адреса или корисничко име:' - password: 'Лозинка:' + email or username: Имејл адреса или корисничко име + password: Лозинка openid_html: '%{logo} OpenID:' remember: Запамти ме lost password link: Заборавили сте лозинку? @@ -1477,6 +1548,16 @@ sr: title: Одјава heading: Одјава logout_button: Одјави ме + suspended_flash: + support: подршка + shared: + markdown_help: + link: Веза + text: Текст + image: Слика + richtext_field: + edit: Уреди + preview: Преглед site: about: next: Следеће @@ -1492,6 +1573,8 @@ sr: community_driven_title: Заједница је покретач open_data_title: Отворени подаци legal_title: Правни аспекти + legal_1_1_terms_of_use: Услови коришћења + legal_1_1_privacy_policy: Политика приватности partners_title: Партнери copyright: foreign: @@ -1508,9 +1591,11 @@ sr: mapping_link: почни с уређивањем карте legal_babble: title_html: Ауторска права и лиценца + introduction_2_legal_code: правни текст credit_title_html: Како да именујете OpenStreetMap credit_1_html: 'Када користите податке са OpenStreetMap-а, захтевамо да урадите две ствари:' + credit_3_attribution_guidelines: Смернице за приписивање attribution_example: alt: Пример како да наведете Опенстритмап на некој страници title: Пример за навођење @@ -1520,9 +1605,24 @@ sr: У нашем пројекту учествује на хиљаде појединаца. Користимо и податке с отвореном лиценцом од државних картографских установа и других извора, међу којима су: + contributors_at_austria: Аустрија + contributors_au_australia: Аустралија + contributors_au_cc_licence: Creative Commons Ауторство 4.0 међународна (CC + BY 4.0) + contributors_ca_canada: Канада contributors_cz_czechia: Чешка contributors_cz_cc_licence: Creative Commons Ауторство 4.0 међународна (CC BY 4.0) + contributors_fi_finland: Финска + contributors_fr_france: Француска + contributors_nl_netherlands: Холандија + contributors_nz_new_zealand: Нови Зеланд + contributors_rs_serbia: Србија + contributors_rs_rgz: Републички геодетски завод + contributors_si_slovenia: Словенија + contributors_es_spain: Шпанија + contributors_za_south_africa: Јужна Африка + contributors_gb_united_kingdom: Уједињено Краљевство contributors_footer_2_html: |2- Укључивање података у Опенстритмап не подразумева да изворни власник података прихвата Опенстритмап, обезбеђује било какву @@ -1531,6 +1631,7 @@ sr: infringement_1_html: ОСМ сарадници се подсећају да никад не додају податке из извора заштићених ауторским правима (нпр. Гугл карте или штампане карте) без изричите дозволе власника ауторских права. + trademarks_title: Заштитни знаци index: js_1: Користите прегледач који не подржава јаваскрипт или сте га онемогућили. js_2: OpenStreetMap користи јаваскрипт за приказивање мапа. @@ -1552,12 +1653,7 @@ sr: за ову могућност. export: title: Извоз - area_to_export: Област за извоз manually_select: Ручно изаберите другу област - format_to_export: Формат за извоз - osm_xml_data: Подаци у XML формату - map_image: Слика мапе (приказује стандардни слој) - embeddable_html: Уградиви HTML код licence: Лиценца too_large: advice: 'Ако буде проблема при извозу, послужите се неким од доленаведених @@ -1577,17 +1673,6 @@ sr: other: title: Други извори description: Додатни извори наведени на викију OpenStreetMap-а - options: Опције - format: Формат - scale: Размера - max: макс. - image_size: Величина слике - zoom: Приближи - add_marker: Постави маркер на мапу - latitude: 'Ширина:' - longitude: 'Дужина:' - output: Исход - paste_html: HTML код за уградњу на сајт export_button: Извези fixthemap: title: Пријави проблем / Поправи карту @@ -1666,58 +1751,59 @@ sr: cycleway_local: Локална бициклистичка стаза footway: Пешачка стаза rail: Железничка пруга + train: Воз subway: Подземна железница - tram: - - Лака железница - - трамвај - cable: - - Жичара - - седишница - runway: - - Аеродромска писта - - рулне стазе - apron: - - Аеродромски перон - - терминал + trolleybus: Тролејбус + bus: Аутобус + cable_car: Жичара + chair_lift: седишница + runway: Аеродромска писта + taxiway: Рулна стаза + apron: Аеродромски перон admin: Административна граница + capital: Престоница + city: Град + vineyard: Виноград forest: Шума wood: Шума + meadow: Ливада golf: Голф терен park: Парк + common: Пољана resident: Стамбено подручје - common: - - Пољана - - ливада retail: Малопродајно подручје industrial: Индустријско подручје commercial: Пословно подручје heathland: Пустош - lake: - - Језеро - - резервоар + lake: Језеро + reservoir: Резервоар farm: Фарма brownfield: Грађевинско земљиште cemetery: Гробље allotments: Баште pitch: Спортско игралиште centre: Спортски центар + beach: Плажа reserve: Резерват природе military: Војно подручје - school: - - Школа - - универзитет + school: Школа + university: Универзитет + hospital: Болница building: Значајна зграда station: Железничка станица - summit: - - Узвишење - - врх + summit: Узвишење + peak: Врх tunnel: Испрекидан оквир – тунел bridge: Црни оквир – мост private: Приватни посед destination: Приступ одредишту construction: Путеви у изградњи + bus_stop: Аутобуска станица + stop: Стоп bicycle_shop: Продавница бицикала + bicycle_rental: Изнајмљивање бицикала bicycle_parking: Паркинг за бицикле + bicycle_parking_small: Мали паркинг за бицикле toilets: Тоалети welcome: title: Добро дошли! @@ -1732,6 +1818,7 @@ sr: да буду корисне. rules: title: Правила! + automated_edits: Аутоматизоване измене start_mapping: Почни са цртањем карте add_a_note: title: Немаш времена да уредиш? Додај белешку! @@ -1814,6 +1901,7 @@ sr: public_traces_from: Јавни GPS трагови корисника %{user} description: Претражите недавне аплоуде GPS путева tagged_with: ' означени са %{tags}' + wiki_page: вики страница upload_trace: Отпреми траг my_traces: Моји трагови destroy: @@ -1848,6 +1936,7 @@ sr: их видите. settings_menu: account_settings: Подешавња налога + muted_users: Пригушени корисници oauth: authorize: title: Ауторизујте приступ свом налогу @@ -1913,13 +2002,38 @@ sr: flash: Подаци о клијенту су успешно ажурирани destroy: flash: Уништена је регистрација клијентског програма + oauth2_applications: + index: + name: Назив + permissions: Дозволе + application: + edit: Уреди + delete: Обриши + confirm_delete: Обриши ову апликацију? + show: + edit: Уреди + delete: Обриши + oauth2_authorizations: + new: + authorize: Одобри + deny: Одбиј + error: + title: Дошло је до грешке + oauth2_authorized_applications: + index: + application: Апликација + permissions: Дозволе users: new: title: Регистрација no_auto_account_create: Нажалост, тренутно нисмо у могућности да отворимо нови налог. + support: подршка about: header: Слободно и изменљиво + paragraph_1: За разлику од других мапа, OpenStreetMap-е употпуности праве + људи као Ви. И слободна је за све да је поправљају, ажурирају, преузимају + и користе. display name description: Јавно приказано корисничко име. Касније га можете променити у поставкама. external auth: 'Аутентификација треће стране:' @@ -1928,12 +2042,15 @@ sr: али неки додатни алати или сервер можда је ипак буду захтевали. continue: Отвори налог terms accepted: Хвала вам што прихватате нове услове уређивања. + privacy_policy: политика приватности terms: title: Услови heading: Услови + read_tou: Прочитао сам и прихватам Услове коришћења consider_pd: Према горенаведеном, сматрам да моји доприноси припадају јавном власништву consider_pd_why: шта је ово? + continue: Настави declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=sr-ec decline: Одбаци you need to accept or decline: Молимо вас да прочитате уговор пре него што га @@ -2013,6 +2130,9 @@ sr: suspended: title: Суспендован налог heading: Суспендован налог + support: подршка + automatically_suspended: Жао нам је, Ваш налог је аутоматски суспендован због + сумљивих радњи. auth_failure: connection_failed: Повезивање до аутентификационог провајдера неуспешно invalid_credentials: Невалидни аутентификациони акредитиви @@ -2109,6 +2229,7 @@ sr: title: '%{block_on} је блокиран/а од %{block_by}' heading_html: '%{block_on} је блокиран/а од %{block_by}' created: 'Направљено:' + duration: 'Трајање:' status: 'Стање:' show: Прикажи edit: Уреди @@ -2209,6 +2330,7 @@ sr: gps: Јавне GPS трасе overlays: Омогући преклапање за тражење грешака на карти title: Слојеви + make_a_donation: Донација site: edit_tooltip: Уредите мапу edit_disabled_tooltip: Увећајте приказ да бисте уредили мапу diff --git a/config/locales/sv.yml b/config/locales/sv.yml index 791d63e93..5b75229c4 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -5,6 +5,7 @@ # Author: Abbedabb # Author: Adrianod # Author: Ainali +# Author: Andreasl # Author: Balp # Author: Bengtsson96 # Author: Carlbacker @@ -18,6 +19,7 @@ # Author: Jas # Author: Jenniesarina # Author: Jopparn +# Author: Kakan spelar # Author: Larske # Author: Liftarn # Author: Lokal Profil @@ -1500,9 +1502,9 @@ sv: one: '%{count} rapport' other: '%{count} rapporter' no_reports: Inga rapporter - report_created_at: Rapporterades först %{datetime} - last_resolved_at: Löstes senast %{datetime} - last_updated_at: Uppdaterades senast %{datetime} av %{displayname} + report_created_at_html: Rapporterades först %{datetime} + last_resolved_at_html: Löstes senast %{datetime} + last_updated_at_html: Uppdaterades senast %{datetime} av %{displayname} resolve: Lös ignore: Ignorera reopen: Öppna igen @@ -1781,8 +1783,6 @@ sv: messages: inbox: title: Inkorg - my_inbox: Min inkorg - my_outbox: Min utkorg messages: Du har %{new_messages} och %{old_messages} new_messages: one: '%{count} nytt meddelande' @@ -1790,12 +1790,15 @@ sv: old_messages: one: '%{count} gammalt meddelande' other: '%{count} gamla meddelanden' - from: FrÃ¥n - subject: Ärende - date: Datum 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 @@ -1815,14 +1818,10 @@ sv: body: Det finns inget meddelande med det ID:et. outbox: title: Utkorg - my_inbox: Min inkorg - my_outbox: Min utkorg + actions: Åtgärder messages: one: Du har %{count} skickat ett meddelande other: Du har %{count} skickat meddelanden - to: Till - subject: Ärende - date: Datum 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 @@ -1841,27 +1840,32 @@ sv: användare för att läsa det. sent_message_summary: destroy_button: Radera + heading: + my_inbox: Min inkorg + my_outbox: Min utkorg mark: as_read: Meddelandet markerat som läst as_unread: Meddelandet markerat som oläst destroy: destroyed: Meddelande raderat passwords: - lost_password: + new: title: Förlorat lösenord heading: Glömt lösenord? email address: 'E-postadress:' new password button: Återställ lösenord help_text: Ange e-postadressen du använde för att registrera dig sÃ¥ skickar vi en länk till den som du kan använda för att Ã¥terställa ditt lösenord. + create: notice email on way: Synd att du förlorade det, men ett nytt är pÃ¥ väg via e-post. notice email cannot find: Kunde inte hitta den e-postadressen. - reset_password: + edit: title: Återställ lösenord heading: Återställ lösenord för %{user} reset: Återställ lösenord - flash changed: Ditt lösenord har ändrats. flash token bad: Hittade inte den nyckeln, kontrollera webbadressen. + update: + flash changed: Ditt lösenord har ändrats. preferences: show: title: Mina alternativ @@ -1964,6 +1968,7 @@ sv: image: Bild alt: Alt-text url: Webbadress + codeblock: Kodblock richtext_field: edit: Redigera preview: Förhandsgranska @@ -2053,6 +2058,7 @@ sv: credit_title_html: Hur du anger OpenStreetMap som källa credit_1_html: 'När du använder OpenStreetMap-data, mÃ¥ste du göra dessa tvÃ¥ saker:' + credit_2_1: Tillskriva datan till OpenStreetMap genom att visa vÃ¥rt upphovsrättsmeddelande. credit_2_2: Gör klart att uppgifterna är tillgängliga under Öppen Database Licensen. credit_3_html: |- @@ -2176,12 +2182,7 @@ sv: för den här funktionen. export: title: Exportera - area_to_export: OmrÃ¥de att exportera manually_select: Välj ett annat omrÃ¥de manuellt - format_to_export: Format för export - osm_xml_data: OpenStreetMap XML-data - map_image: Kartbild (visar vanliga lager) - embeddable_html: Inbäddad HTML licence: Licens licence_details_html: OpenStreetMap-data licensieras under %{odbl_link} (ODbL). odbl: Open Data Commons Open Database License @@ -2204,17 +2205,6 @@ sv: other: title: Andra källor description: Ytterligare källor anges pÃ¥ OpenStreetMaps wiki - options: Alternativ - format: Format - scale: Skala - max: max - image_size: Bildstorlek - zoom: Zooma - add_marker: Lägg till markör pÃ¥ kartan - latitude: 'Lat:' - longitude: 'Lon:' - output: Utdata - paste_html: Klistra in HTML för att bädda in pÃ¥ webbplats export_button: Exportera fixthemap: title: Rapportera ett problem / Fixa kartan @@ -2323,35 +2313,24 @@ sv: footway: GÃ¥ngväg rail: Järnväg subway: Tunnelbana - tram: - - SnabbspÃ¥rväg - - spÃ¥rväg - cable: - - Linbana - - stollift - runway: - - Landningsbana - - taxibana - apron: - - Flygplatsplatta - - terminal + cable_car: Linbana + chair_lift: stollift + runway: Landningsbana + taxiway: taxibana + apron: Flygplatsplatta admin: Administrativ gräns forest: Kulturskog wood: Naturskog golf: Golfbana park: Park + common: Allmänning resident: BostadsomrÃ¥de - common: - - Allmänning - - äng - - trädgÃ¥rd retail: OmrÃ¥de för Detaljhandel industrial: Industriellt omrÃ¥de commercial: Kommersiellt omrÃ¥de heathland: Hed - lake: - - Sjö - - vattenmagasin + lake: Sjö + reservoir: vattenmagasin farm: BondgÃ¥rd brownfield: Förfallen industritomt cemetery: Begravningsplats @@ -2360,14 +2339,12 @@ sv: centre: Idrottsanläggning reserve: Naturreservat military: MilitäromrÃ¥de - school: - - Skola - - universitet + school: Skola + university: universitet building: Viktig byggnad station: Järnvägsstation - summit: - - Höjd - - topp + summit: Höjd + peak: topp tunnel: Streckade kanter = tunnel bridge: Svarta kanter = bro private: Privat tillgÃ¥ng diff --git a/config/locales/ta.yml b/config/locales/ta.yml index d94d88674..7a9cc619d 100644 --- a/config/locales/ta.yml +++ b/config/locales/ta.yml @@ -3,6 +3,7 @@ # Export driver: phpyaml # Author: Aswn # Author: ElangoRamanujam +# Author: Fahimrazick # Author: Gurulenin # Author: Karthi.dr # Author: Krishnaprasaths @@ -39,8 +40,8 @@ ta: create: பதிவுசெய் update: புதுப்பி redaction: - create: படித்திருத்தத்தை உருவாக்கவும் - update: படிதிருத்தத்தைச் சேமிக்கவும் + create: படித்திருத்தத்தை ஆக்கு + update: படித்திருத்தத்தைச் சேமி trace: create: பதிவேற்று update: மாற்றங்களை சேமி @@ -52,6 +53,9 @@ ta: messages: invalid_email_address: செல்லுபடியாகும் மின்னஞ்சல் முகவரியாகத் தெரியவில்லை email_address_not_routable: திசைதிருப்பக்கூடியது அல்ல + models: + user_mute: + is_already_muted: ஏற்கனவே மௌனிக்கப்பட்டுள்ளார் models: acl: அனுமதிக் கட்டுப்பாட்டுப் பட்டியல் changeset: மாற்றங்கள் @@ -82,7 +86,7 @@ ta: tracepoint: சுவடு புள்ளி tracetag: சுவடு இணைப்பு user: பயனர் - user_preference: பயனர் விருப்பத்தேர்வு + user_preference: பயனர் விருப்பம் user_token: பயனர் அடையாளம் way: வழி way_node: வழி முனையம் @@ -93,7 +97,7 @@ ta: url: முதன்மை பயன்பாட்டு URL (தேவை) callback_url: திரும்ப அழைக்கும் URL support_url: URL ஐ ஆதரிக்கவும் - allow_read_prefs: அவர்களின் பயனர் விருப்பங்களைப் படிக்கவும் + allow_read_prefs: அவர்களின் பயனர் விருப்பங்களை வாசி allow_write_prefs: அவர்களின் பயனர் விருப்பங்களை மாற்றவும் allow_write_diary: நாட்குறிப்பு உள்ளீடுகள், கருத்துகள் மற்றும் நண்பர்களை உருவாக்குங்கள் allow_write_api: வரைபடத்தை மாற்றவும் @@ -592,17 +596,20 @@ ta: messages: inbox: title: உள்பெட்டி + messages_table: from: 'அனுப்புநர்:' subject: பொருள் date: நாள் + actions: செயல்கள் message_summary: unread_button: வாசிக்கப்படாததாக என குறியிடு read_button: வாசித்ததாக குறியிடு - reply_button: பதில் அளி + reply_button: பதிலளி destroy_button: நீக்கு + unmute_button: வருமஞ்சலுக்கு நகர்த்து new: - title: தகவல் அனுப்பு - send_message_to_html: '%{name} க்கு புதிய தகவல் அனுப்பு' + title: தகவலனுப்பு + send_message_to_html: '%{name} என்பவருக்கு ஒரு புதிய தகவலை அனுப்பு' back_to_inbox: உள்பெட்டிக்கு திரும்பவும் create: message_sent: செய்தி அனுப்பப்பட்டுவிட்டது @@ -611,27 +618,36 @@ ta: heading: அப்படியொரு தகவல் இல்லை outbox: title: அனுப்பியவை - subject: பொருள் - date: நாள் + actions: செயல்கள் + muted: + title: மௌனித்த தகவல்கள் + messages: + one: '%{count} மௌனித்த தகவல்' + other: உமக்கு %{count} மௌனித்த தகவல்கள் உள்ளன show: title: தகவலை வாசிக்கவும் - reply_button: பதில் அளி + reply_button: பதிலளி unread_button: வாசிக்கப்படாததாக குறியிடு - destroy_button: நீக்குக + destroy_button: நீக்கு sent_message_summary: destroy_button: நீக்கு + heading: + muted_messages: மௌனித்த தகவல்கள் + unmute: + notice: தகவல் வருமஞ்சலுக்கு நகர்த்தப்பட்டுள்ளது destroy: destroyed: தகவல் நீக்கப்பட்டது passwords: - lost_password: + new: title: காணப்படாத கடவுச்சொல் heading: கடவுச்சொல் மறந்துவிட்டதா? email address: 'மின்னஞ்சல் முகவரி:' new password button: கடவுச்சொல்லை மீட்டமை - reset_password: + edit: title: கடவுச்சொல்லை மீட்டமை heading: ' %{user}க்கு கடவுச்சொல் மீட்டமை' reset: கடவுச்சொல்லை மீட்டமை + update: flash changed: உங்கள் கடவுச்சொல் மாற்றப்பட்டது. profiles: edit: @@ -670,19 +686,12 @@ ta: export: title: ஏற்றுமதி செய் licence: உரிமம் - options: விருப்பத் தேர்வுகள் - format: வடிவமைப்பு - scale: அளவுவீதம் - max: அதிகபட்சம் - image_size: பட அளவு - zoom: பெரிதாக்கு - output: வெளியீடு export_button: ஏற்றுமதி செய் sidebar: search_results: தேடல் முடிவுகள் close: மூடு search: - search: தேடல் + search: தேடு submit_text: செல் key: table: @@ -690,28 +699,37 @@ ta: primary: முதன்மையான சாலை secondary: இரண்டாம் நிலை சாலை unclassified: வகைப்படுத்தாத சாலை + cycleway_mtb: மலையீருருளிப் பாதை rail: இரயில்வே + capital: தலைநகரம் + city: நகரம் + vineyard: திராட்சைத் தோட்டம் forest: காடு wood: விறகு + farmland: பண்ணை நிலம் + meadow: புல்வெளி + bare_rock: வெற்றுப் பாறை + sand: மணல் park: பூங்கா - common: - - பொதுவான + common: பொதுவான + built_up: கட்டடப் பகுதி industrial: தொழிற்சாலை பகுதி commercial: வணிக பகுதி - lake: - - ஏரி - - நீர்த்தேக்கம் + scrubland: புதர் நிலம் + lake: ஏரி + reservoir: நீர்நிலை + glacier: பனிப்பாறை + wetland: ஈரநிலம் farm: பண்ணை centre: விளையாட்டு மையம் military: ராணுவ பகுதி - school: - - பள்ளி - - பல்கலைக்கழகம் + school: பள்ளி + university: பல்கலைக்கழகம் + hospital: மருத்துவமனை building: குறிப்பிடத்தக்க கட்டிடம் station: தொடர்வண்டி நிலையம் - summit: - - உச்சி மாநாடு - - உயரமான இடம் + summit: உச்சி மாநாடு + peak: உச்சி private: தனியார் அனுமதி construction: சாலைகளில் கட்டுமானப் பணிகள் நடந்து வருகின்றன. toilets: கழிவறைகள் @@ -740,7 +758,7 @@ ta: tags: 'குறிச்சொற்கள்:' none: ஏதுமில்லை edit_trace: இந்த சுவடை திருத்து - delete_trace: இந்த சுவடை நீக்கவும் + delete_trace: இச்சுசுவட்டை நீக்கு trace_not_found: சுவடு காணப்படவில்லை! trace: more: மேலும் @@ -753,6 +771,9 @@ ta: in: உள் index: upload_trace: சுவடை பதிவேற்றவும் + application: + settings_menu: + muted_users: மௌனித்த பயனர்கள் oauth_clients: show: edit: தொகுப்பு விவரங்கள் @@ -775,6 +796,8 @@ ta: my diary: எனது நாட்குறிப்பேடு my edits: என் திருத்தங்கள் my settings: என் அமைப்புகள் + create_mute: இப்பயனரை மௌனி + destroy_mute: இப்பயனரை ஓசையாக்கு diary: நாட்குறிப்பேடு edits: தொகுப்புகள் add as friend: நண்பராக சேர் @@ -800,7 +823,7 @@ ta: confirm_user: இந்த பயனரை உறுதிசெய் hide_user: இந்த பயனரை மறை unhide_user: இந்த பயனரை மறைத்ததை நீக்கு - delete_user: இப்பயனரை நீக்கவும் + delete_user: இப்பயனரை நீக்கு confirm: உறுதிசெய் index: title: பயனர்கள் @@ -814,22 +837,42 @@ ta: user_blocks: show: status: நிலை - show: காண்பி + show: காட்டு edit: தொகு revoke: திரும்பபெறு! confirm: உறுதியாகவா? reason: 'தடைக்கான காரணம்:' block: - show: காண்பி + show: காட்டு edit: தொகு revoke: திரும்பபெறு! blocks: display_name: தடைசெய்யப்பட்ட பயனர் creator_name: உருவாக்கியவர் status: நிலை + user_mutes: + index: + title: மௌனித்த பயனர்கள் + my_muted_users: எனது மௌனிக்கப்பட்ட பயனர்கள் + you_have_muted_n_users: + one: நீர் %{count} பயனரை மௌனித்துள்ளீர் + other: நீர் %{count} பயனர்களை மௌனித்துள்ளீர் + table: + thead: + muted_user: மௌனித்த பயனர் + actions: செயல்கள் + tbody: + unmute: ஓசையாக்கு + send_message: தகவலனுப்பு + create: + notice: நீர் %{name} என்பவரை மௌனித்தீர். + error: '%{name} என்பவரை மௌனிக்க முடியவில்லை. %{full_message}.' + destroy: + notice: நீர் %{name} என்பவரை ஓசையாக்கினீர். notes: show: description: விளக்கம் + log_in_to_comment: இக்குறிப்புக்குக் கருத்துரை வழங்கப் புகுபதிக new: title: புதுக் குறிப்பு redactions: diff --git a/config/locales/te.yml b/config/locales/te.yml index e87767a89..30b60738f 100644 --- a/config/locales/te.yml +++ b/config/locales/te.yml @@ -1374,9 +1374,9 @@ te: resolved: పరిష్కరించినవి show: title: '%{status} అంశం #%{issue_id}' - report_created_at: '%{datetime} à°¨ మొదటిసారి ఫిర్యాదు చేసారు' - last_resolved_at: '%{datetime} à°¨ చివరిగా పరిష్కరించారు' - last_updated_at: చివరిగా %{displayname} గారు %{datetime} కు తాజాకరించారు + report_created_at_html: '%{datetime} à°¨ మొదటిసారి ఫిర్యాదు చేసారు' + last_resolved_at_html: '%{datetime} à°¨ చివరిగా పరిష్కరించారు' + last_updated_at_html: చివరిగా %{displayname} గారు %{datetime} కు తాజాకరించారు resolve: పరిష్కరించు ignore: పట్టించుకోవద్దు reopen: మళ్ళీ తెరువు @@ -1641,8 +1641,6 @@ te: messages: inbox: title: ఇన్‌బాక్సు - my_inbox: నా ఇన్‌బాక్స్ - my_outbox: నా ఔట్‌బాక్సు messages: మీకు %{new_messages}, %{old_messages} ఉన్నాయి new_messages: one: '%{count} కొత్త సందేశం' @@ -1650,12 +1648,14 @@ te: old_messages: one: '%{count} పాత సందేశం' other: '%{count} పాత సందేశాలు' - from: నుండి - subject: విషయం - date: తేదీ no_messages_yet_html: మీకింకా సందేశాలేమీ లేవు. %{people_mapping_nearby_link} ఎవరినైనా ఎందుకు సంప్రదించకూడదూ? people_mapping_nearby: సమీపంలో మ్యాపింగు చేస్తున్నవారు + messages_table: + from: నుండి + to: కు + subject: విషయం + date: తేదీ message_summary: unread_button: చదవనట్లుగా గుర్తుపెట్టు read_button: చదివినట్లుగా గుర్తుపెట్టు @@ -1675,14 +1675,9 @@ te: body: సారీ, ఆ ఐడీతో సందేశమేమీ లేదు. outbox: title: ఔట్‌బాక్సు - my_inbox: నా ఇన్‌బాక్సు - my_outbox: నా ఔట్‌బాక్సు messages: one: మీకు %{count} పంపిన సందేశం ఉంది other: మీకు %{count} పంపిన సందేశాలు ఉన్నాయి - to: కు - subject: విషయం - date: తేదీ no_sent_messages_html: మీకింకా పంపిన సందేశాలు లేవు. %{people_mapping_nearby_link} ఎవరినైనా ఎందుకు సంప్రదించకూడదూ? people_mapping_nearby: సమీపంలో మ్యాపింగు చేస్తున్నవారు @@ -1699,28 +1694,33 @@ te: పంపలేదు, ఆ వాడుకరికి రాలేదు. సరైన వాడుకరిగా లాగినై చదవండి. sent_message_summary: destroy_button: తొలగించు + heading: + my_inbox: నా ఇన్‌బాక్స్ + my_outbox: నా ఔట్‌బాక్సు mark: as_read: సందేశాన్ని చదివినట్లుగా గుర్తుపెట్టాం as_unread: సందేశాన్ని చదవనట్లుగా గుర్తుపెట్టాం destroy: destroyed: సందేశాన్ని తొలగించాం passwords: - lost_password: + new: title: సంకేతపదం పోయింది heading: సంకేతపదం మర్చిపోయారా? email address: 'ఈమెయిల్ చిరునామా:' new password button: సంకేతపదాన్ని మార్చు help_text: నమోదైనపుడు మీరిచ్చిన ఈమెయిలు చిరునామాను ఇవ్వండి. సంకేతపదాన్ని మార్చుకునే లింకును ఆ చిరునామాకు పంపిస్తాం. + create: notice email on way: అయ్యో.. పోయిందా :-( పోన్లెండి, దాన్ని మార్చుకునేందుకు ఒక ఈమెయిలు వచ్చేస్తోంది. notice email cannot find: క్షమించండి, ఆ ఈమెయిలు చిరునామా దొరకలేదు. - reset_password: + edit: title: సంకేతపదం మార్పు heading: '%{user} సంకేతపదాన్ని మార్చు' reset: సంకేతపదాన్ని మార్చు - flash changed: మీ సంకేతపదాన్ని మార్చాం. flash token bad: ఆ టోకెను కనబడలేదు, ఓసారి URL సరిచూస్తారా? + update: + flash changed: మీ సంకేతపదాన్ని మార్చాం. preferences: show: title: నా అభీష్టాలు @@ -1894,12 +1894,7 @@ te: అది అవసరం. export: title: ఎగుమతి - area_to_export: ఎగిమతి చెయ్యాల్సిన ప్రాంతం manually_select: వేరే ప్రాంతాన్ని మానవికంగా ఎంచుకోండి - format_to_export: ఎగిమతి చెయ్యాల్సిన ఆకృతి - osm_xml_data: OpenStreetMap XML డేటా - map_image: మ్యాపు బొమ్మ (ప్రామాణిక పొరను చూపిస్తుంది) - embeddable_html: ఇముడ్చగలిగే HTML licence: లైసెన్సు too_large: advice: 'పై ఎగుమతి విఫలమైతే, కింది జాబితా లోంచి ఒక మూలాన్ని వాడండి:' @@ -1916,17 +1911,6 @@ te: title: ఇతర మూలాలు description: Additional sources listed on the OpenStreetMap వికీలోని జాబితాలో ఉన్న అదనపు మూలాలు - options: ఎంపికలు - format: ఫార్మాటు - scale: కొలబద్ద - max: గరిష్టం - image_size: బొమ్మ పరిమాణం - zoom: పెద్దది - add_marker: మ్యాపుకు ఒక మార్కరును చేర్చండి - latitude: 'అక్షాం:' - longitude: 'రేఖాం:' - output: ఔట్‌పుట్ - paste_html: వెబ్‌సైటులో ఇమిడ్చే HTML ను అతికించండి export_button: ఎగుమతించు fixthemap: title: సమస్యను నివేదించండి / మ్యాపును సరిచెయ్యండి @@ -2003,33 +1987,23 @@ te: footway: కాల్దారి rail: రైలుమార్గం subway: కిందారి - tram: - - లైట్ రైల్ - - ట్రాము - cable: - - కేబుల్ కారు - - చెయిర్ లిఫ్ట్ - runway: - - విమానాశ్రయం రన్‌వే - - టాక్సీ వే - apron: - - విమానాశ్రయం ఏప్రాన్ - - టర్మినల్ + cable_car: కేబుల్ కారు + chair_lift: చెయిర్ లిఫ్ట్ + runway: విమానాశ్రయం రన్‌వే + taxiway: టాక్సీ వే + apron: విమానాశ్రయం ఏప్రాన్ admin: పరిపాలనా సరిహద్దు forest: అడవి wood: కలప golf: గోల్ఫ్ కోర్సు park: పార్కు + common: పచ్చికబయలు resident: నివాస ప్రాంతం - common: - - పచ్చికబయలు - - పచ్చికబయలు retail: రిటెయిల్ ప్రదేశం industrial: పారిశ్రామిక ప్రదేశం commercial: వాణిజ్య ప్రదేశం - lake: - - సరస్సు - - జలాశయం + lake: సరస్సు + reservoir: జలాశయం farm: పొలాలు brownfield: బ్రౌన్‌ఫీల్డ్ స్థలం cemetery: స్మశానం @@ -2037,13 +2011,11 @@ te: centre: క్రీడా కేంద్రం reserve: ప్రకృతి సంరక్షణ కేంద్రం military: మిలిటరీ ప్రదేశం - school: - - పాఠశాల - - విశ్వవిద్యాలయం + school: పాఠశాల + university: విశ్వవిద్యాలయం building: ప్రముఖ కట్టడము station: రైల్వే స్టేషన్ - summit: - 1: శిఖరం + peak: శిఖరం bridge: Black casing = వంతెన construction: నిర్మాణంలో ఉన్న రహదార్లు bicycle_shop: సైకిలు దుకాణం diff --git a/config/locales/th.yml b/config/locales/th.yml index b38cecd94..cc288592b 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -5,6 +5,7 @@ # Author: Ariesanywhere # Author: B20180 # Author: Bebiezaza +# Author: Ekminarin # Author: Just Sayori # Author: Karit # Author: Korrawit @@ -129,7 +130,7 @@ th: description: คำอธิบาย gpx_file: 'อัปโหลดแฟ้ม GPX:' visibility: 'สถานะการแสดง:' - tagstring: 'ป้ายกำกับ:' + tagstring: ป้ายระบุ message: sender: ผู้ส่ง title: หัวเรื่อง @@ -372,7 +373,7 @@ th: load_data: กำลังโหลดข้อมูล loading: กำลังโหลด... tag_details: - tags: ป้ายกำกับ + tags: ป้ายระบุ wiki_link: key: หน้าคำอธิบายวิกิาสำหรับป้ายระบุ %{key} tag: หน้าคำอธิบายวิกิาสำหรับป้ายระบุ %{key}=%{value} @@ -1140,9 +1141,9 @@ th: zero: ไม่มีรายงาน one: 1 รายงาน other: '%{count} รายงาน' - report_created_at: รายงานครั้งแรกเมื่อ %{datetime} - last_resolved_at: ปิดเรื่องล่าสุดเมื่อ %{datetime} - last_updated_at: ปรับปรุงล่าสุดเมื่อ %{datetime} โดย %{displayname} + report_created_at_html: รายงานครั้งแรกเมื่อ %{datetime} + last_resolved_at_html: ปิดเรื่องล่าสุดเมื่อ %{datetime} + last_updated_at_html: ปรับปรุงล่าสุดเมื่อ %{datetime} โดย %{displayname} resolve: ปิดเรื่อง ignore: ละเว้น reopen: เปิดใหม่ @@ -1184,23 +1185,23 @@ th: spam_label: รายการบันทึกนี้เป็น/มีสแปม offensive_label: รายการบันทึกนี้หยาบคาย/ก้าวร้าว threat_label: บันทึกนี้มีใจความข่มขู่คุกคาม - other_label: อื่นๆ + other_label: อื่น ๆ diary_comment: spam_label: ความคิดเห็นบันทึกนี้เป็น/มีสแปม offensive_label: ความคิดเห็นบันทึกนี้หยาบคาย/ก้าวร้าว threat_label: ความคิดเห็นบันทึกนี้มีใจความข่มขู่คุกคาม - other_label: อื่นๆ + other_label: อื่น ๆ user: spam_label: โปรไฟล์ผู้ใช้นี้เป็น/มีสแปม offensive_label: โปรไฟล์ผู้ใช้นี้หยาบคาย/ก้าวร้าว threat_label: หน้าของผู้ใช้คนนี้มีใจความข่มขู่คุกคาม vandal_label: ผู้ใช้คนนี้มือบอน/มีพฤติกรรมแก้ไขก่อกวนบนแผนที่ - other_label: อื่นๆ + other_label: อื่น ๆ note: spam_label: หมายเหตุนี้เป็นสแปม personal_label: หมายเหตุนี้มีข้อมูลส่วนบุคคล abusive_label: หมายเหตุนี้ใช้ถ้อยคำหยาบคายหรือส่งเสริมความรุนแรง - other_label: อื่นๆ + other_label: อื่น ๆ create: successful_report: ทำการแจ้งปัญหาเสร็จสิ้นเรียบร้อย provide_details: กรุณาระบุรายละเอียด @@ -1357,8 +1358,6 @@ th: messages: inbox: title: จดหมายรับ - my_inbox: จดหมายรับส่วนตัว - my_outbox: กล่องจดหมายขาออกส่วนตัว messages: ท่านมี %{new_messages} และ %{old_messages} new_messages: one: ข้อความใหม่ %{count} ข้อความ @@ -1366,11 +1365,13 @@ th: old_messages: one: ข้อความเก่า %{count} ข้อความ other: ข้อความเก่า %{count} ข้อความ + no_messages_yet_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง? + people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง + messages_table: from: จาก + to: ถึง subject: เรื่อง date: วันที่ - no_messages_yet_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง? - people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง message_summary: unread_button: ทำเครื่องหมายว่ายังไม่ได้อ่าน read_button: ทำเครื่องหมายว่าอ่านแล้ว @@ -1389,14 +1390,9 @@ th: body: ขออภัย ไม่พบข้อความที่กำกับด้วยรหัสดังกล่าว outbox: title: จดหมายออก - my_inbox: กล่องจดหมายขาเข้าส่วนตัว - my_outbox: กล่องจดหมายขาออกส่วนตัว messages: one: ท่านมีข้อความส่งแล้ว %{count} ฉบับ other: ท่านมีข้อความส่งแล้ว %{count} ฉบับ - to: ถึง - subject: หัวเรื่อง - date: วันที่ no_sent_messages_html: ท่านยังไม่มีข้อความใด ๆ ทำไมไม่ลองติดต่อกับ%{people_mapping_nearby_link}บ้าง? people_mapping_nearby: ผู้คนที่กำลังทำแผนที่ที่อยู่ใกล้เคียง reply: @@ -1412,22 +1408,27 @@ th: โปรดเข้าระบบใหม่โดยใช้ชื่อผู้ใช้นั้นเพื่อตอบกลับ sent_message_summary: destroy_button: ลบ + heading: + my_inbox: จดหมายรับส่วนตัว + my_outbox: กล่องจดหมายขาออกส่วนตัว mark: as_read: ข้อความถูกทำเครื่องหมายว่าอ่านแล้ว as_unread: ข้อความถูกทำเครื่องหมายว่ายังไม่ได้อ่าน destroy: destroyed: ข้อความถูกลบแล้ว passwords: - lost_password: + new: title: ตั้งรหัสผ่านใหม่ heading: ลืมรหัสผ่านหรือ? email address: 'ที่อยู่อีเมล:' new password button: ตั้งรหัสผ่านใหม่ + create: notice email cannot find: ขออภัย, ไม่พบที่อยู่อีเมลที่ระบุ - reset_password: + edit: title: ตั้งรหัสผ่านใหม่ heading: 'ตั้วรหัสผ่านใหม่สำหรับ: %{user}' reset: ตั้งรหัสผ่านใหม่ + update: flash changed: เปลี่ยนรหัสผ่านของคุณแล้วเรียบร้อย profiles: edit: @@ -1558,12 +1559,7 @@ th: no_iframe_support: เบราว์เซอร์ของท่านไม่รองรับการใช้งานเฟรมภายในหน้า HTML จึงไม่สามารถใช้ส่วนประกอบนี้ได้ export: title: ส่งออก - area_to_export: พื้นที่ที่จะส่งออก manually_select: เลือกพื้นที่อื่นด้วยตนเอง - format_to_export: รูปแบบที่จะส่งออก - osm_xml_data: ข้อมูล XML ของ OpenStreetMap - map_image: ภาพแผนที่ (แสดงชั้นภาพมาตรฐาน) - embeddable_html: HTML ฝังตัวได้ licence: สัญญาอนุญาต too_large: advice: 'ถ้าการส่งออกข้างต้นล้มเหลว โปรดพิจารณาใช้แหล่งข้อมูลตามที่ระบุด้านล่างนี้:' @@ -1581,17 +1577,6 @@ th: other: title: แหล่งข้อมูลอื่น description: แหล่งข้อมูลอื่นตามที่ระบุไว้ใน OpenStreetMap wiki - options: ตัวเลือก - format: รูปแบบ - scale: มาตราส่วน - max: ขนาดสูงสุด - image_size: ขนาดภาพ - zoom: ย่อ-ขยาย - add_marker: เพิ่มเครื่องหมายลงในแผนที่ - latitude: 'ละติจูด:' - longitude: 'ลองจิจูด:' - output: การแสดงผล - paste_html: วาง HTML สำหรับนำไปใช้ในเว็บไซต์ export_button: ส่งออก fixthemap: title: รายงานปัญหา/แก้ไขข้อผิดพลาดในแผนที่ @@ -1647,34 +1632,24 @@ th: footway: ทางเดินเท้า rail: ทางรถไฟ subway: รถไฟใต้ดิน - tram: - - รถไฟเบา - - รถราง - cable: - - รถกระเช้า - - รถกระเช้าเปลือย - runway: - - ทางวิ่งสนามบิน - - ทางขับเครื่องบิน - apron: - - โรงซ่อมบำรุงเครื่องบิน - - อาคารผู้โดยสาร + cable_car: รถกระเช้า + chair_lift: รถกระเช้าเปลือย + runway: ทางวิ่งสนามบิน + taxiway: ทางขับเครื่องบิน + apron: โรงซ่อมบำรุงเครื่องบิน admin: ขอบเขตการปกครอง forest: ป่า wood: ไม้ golf: สนามกอล์ฟ park: สวน + common: ที่ส่วนกลาง resident: เขตที่พักอาศัย - common: - - ที่ส่วนกลาง - - ทุ่งหญ้า retail: พื้นที่พาณิชยกรรม industrial: พื้นที่อุตสาหกรรม commercial: พื้นที่พาณิชยกรรม heathland: ทุ่งไม้พุ่ม - lake: - - ทะเลสาบ - - อ่างเก็บน้ำ + lake: ทะเลสาบ + reservoir: อ่างเก็บน้ำ farm: ไร่นา brownfield: พื้นที่อุตสาหกรรมเดิม cemetery: สุสาน @@ -1683,14 +1658,12 @@ th: centre: ศูนย์กีฬา reserve: พื้นที่สงวนธรรมชาติ military: เขตทหาร - school: - - โรงเรียน - - มหาวิทยาลัย + school: โรงเรียน + university: มหาวิทยาลัย building: อาคารสำคัญ station: สถานีรถไฟ - summit: - - ยอดเขา - - ยอดเขา + summit: ยอดเขา + peak: ยอดเขา tunnel: เส้นประ = อุโมงค์ bridge: เส้นทึบ = สะพาน private: พื้นที่ส่วนบุคคล @@ -1735,7 +1708,7 @@ th: cancel: ยกเลิก visibility_help: นี่หมายความว่าอะไร? trace_optionals: - tags: ป้ายกำกับ + tags: ป้ายระบุ show: title: แสดงรอยทางชื่อ %{name} heading: แสดงรอยทางชื่อ %{name} @@ -1749,7 +1722,7 @@ th: edit: แก้ไข owner: 'เจ้าของ:' description: 'คำอธิบาย:' - tags: 'ป้ายกำกับ:' + tags: 'ป้ายระบุ:' none: ไม่มี edit_trace: แก้ไขรอยทางนี้ delete_trace: ลบรอยทางนี้ diff --git a/config/locales/tl.yml b/config/locales/tl.yml index 623514b66..076c59953 100644 --- a/config/locales/tl.yml +++ b/config/locales/tl.yml @@ -1134,8 +1134,8 @@ tl: reports: one: 1 ulat other: '%{count} mga ulat' - report_created_at: Unang naiulat noong %{datetime} - last_resolved_at: Huling nalutas noong %{datetime} + report_created_at_html: Unang naiulat noong %{datetime} + last_resolved_at_html: Huling nalutas noong %{datetime} resolve: Lutasin ignore: Huwag pansinin reopen: Muling Buksan @@ -1362,8 +1362,6 @@ tl: messages: inbox: title: Kahon ng pumapasok - my_inbox: Kahong-tanggapan Ko - my_outbox: Kahong-labasan Ko messages: Mayroong kang %{new_messages} at %{old_messages} new_messages: one: '%{count} bagong mensahe' @@ -1371,12 +1369,14 @@ tl: old_messages: one: '%{count} lumang mensahe' other: '%{count} lumang mga mensahe' - from: Mula sa - subject: Paksa - date: Petsa 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 @@ -1396,14 +1396,9 @@ tl: body: Paumanhin walang mensahe na may ganyang ID. outbox: title: Kahong-labasan - my_inbox: Kahong-tanggapan Ko - my_outbox: Kahong-labasan Ko messages: one: Mayroon kang %{count} ipinadalang mensahe other: Mayroon kang %{count} ipinadalang mga mensahe - to: Para kay - subject: Paksa - date: Petsa 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 @@ -1422,13 +1417,16 @@ tl: 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 passwords: - lost_password: + new: title: Naiwalang password heading: Nakalimutang Password? email address: 'Tirahan ng e-liham:' @@ -1436,15 +1434,17 @@ tl: help_text: Ipasok ang tirahan ng e-liham na ginamit mo upang magpatala, ipapadala namin ang isang kawing papunta rito na magagamit mo upang muling maitakda mo ang iyong password. + create: notice email on way: Ikinalulungkot na naiwala mo iyan :-( ngunit darating na ang isang e-liham upang maitakda mong muli iyan kaagad. notice email cannot find: Hindi matagpuan ang ganyang tirahan ng e-liham, paumanhin. - reset_password: + edit: title: Muling itakda ang password heading: Muling itakda ang Hudyat para kay %{user} reset: Muling Itakda ang Password - flash changed: Napalitan na ang hudyat mo. flash token bad: Hindi natagpuan ang ganyang kahalip, suriin kaya ang URL? + update: + flash changed: Napalitan na ang hudyat mo. preferences: show: preferred_languages: Nais na mga Wika @@ -1602,12 +1602,7 @@ tl: ng HTML, na kailangan para sa tampok na ito. export: title: Iluwas - area_to_export: Pook na Iluluwas manually_select: Kinakamay na pumili ng ibang lugar - format_to_export: Anyong Iluluwas - osm_xml_data: Dato ng XML ng OpenStreetMap - map_image: Larawan ng Mapa (nagpapakita ng patong na saligan) - embeddable_html: Maibabaong HTML licence: Lisensiya too_large: body: Masyadong malaki ang lugar na ito upang mailuwas bilang Dato ng XML @@ -1622,17 +1617,6 @@ tl: title: Iba pang mga Pinagmulan description: Karagdagang mga mapagkukunan na nakalista sa OpenStreetMap Wiki - options: Mga mapagpipilian - format: Anyo - scale: Sukat - max: pinakamataas - image_size: Sukat ng Larawan - zoom: Lapitan - add_marker: Magdagdag ng isang pananda sa mapa - latitude: 'Latitud:' - longitude: 'Longhitud:' - output: Kinalabasan - paste_html: Idikit ang HTML na ibabaon sa websayt export_button: Iluwas fixthemap: title: Mag-ulat ng problema/ Ayusin ang mapa @@ -1688,35 +1672,24 @@ tl: footway: Lakaran ng tao rail: Daambakal subway: Daanang pang-ilalim - tram: - - Banayad na riles - - trambya - cable: - - Kotse ng kable - - upuang inaangat - runway: - - Rampa ng Paliparan - - daanan ng taksi - apron: - - Tapis ng paliparan - - terminal + cable_car: Kotse ng kable + chair_lift: upuang inaangat + runway: Rampa ng Paliparan + taxiway: daanan ng taksi + apron: Tapis ng paliparan admin: Hangganang pampangangasiwa forest: Gubat wood: Kahoy golf: Kurso ng golp park: Liwasan + common: Karaniwan resident: Pook na panuluyan - common: - - Karaniwan - - kaparangan - - halamanan retail: Lugar na tingian industrial: Pook na pang-industriya commercial: Pook na pangkalakalan heathland: Lupain ng halamang erika - lake: - - Lawa - - tinggalan ng tubig + lake: Lawa + reservoir: tinggalan ng tubig farm: Bukid brownfield: Pook ng kayumangging bukirin cemetery: Libingan @@ -1725,14 +1698,12 @@ tl: centre: Lunduyang pampalakasan reserve: Lupaing laan sa kalikasan military: Pook ng militar - school: - - Paaralan - - pamantasan + school: Paaralan + university: pamantasan building: Makabuluhang gusali station: Himpilan ng daambakal - summit: - - Taluktok - - tugatog + summit: Taluktok + peak: tugatog tunnel: Ginitlingang pambalot = lagusan bridge: Itim na pambalot = tulay private: Pribadong pagpunta diff --git a/config/locales/tr.yml b/config/locales/tr.yml index 27d2c67c7..e99628891 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -91,6 +91,10 @@ tr: messages: invalid_email_address: geçerli bir e-posta adresi gibi görünmüyor email_address_not_routable: yönlendirilebilir değil + display_name_is_user_n: n, sizin kullanıcı kimliğiniz olmadıkça user_n olamaz + models: + user_mute: + is_already_muted: zaten sessize alındı models: acl: Erişim Kontrol Listesi changeset: Değişiklik Kaydı @@ -144,7 +148,7 @@ tr: diary_entry: user: Kullanıcı title: Konu - body: Gövde + body: Mesaj latitude: Enlem longitude: Boylam language_code: Dil @@ -193,7 +197,7 @@ tr: languages: Tercih Edilen Diller preferred_editor: Tercih Edilen Düzenleyici pass_crypt: Parola - pass_crypt_confirmation: Parolayı Onayla + pass_crypt_confirmation: Parola Onayı help: doorkeeper/application: confidential: Uygulama, kullanıcı gizliliğini güvenilir yerlerde kullanacaktır @@ -363,7 +367,7 @@ tr: destroy: success: Hesap Silindi. browse: - created: Oluşturuldu + created: Oluşturulma closed: Kapandı created_ago_html: '%{time_ago} oluşturuldu' closed_ago_html: '%{time_ago} kapatıldı' @@ -535,7 +539,7 @@ tr: latest_edit_html: 'Son değişiklik (%{ago}):' popup: your location: Konumum - nearby mapper: Komşu haritacı + nearby mapper: Yakındaki haritacı friend: Arkadaş show: title: Gösterge Panelim @@ -560,7 +564,7 @@ tr: title: Kullanıcı Günlükleri title_friends: Arkadaşların günlükleri title_nearby: Yakındaki kullanıcıların günlükleri - user_title: '%{user} kullanıcısının günlüğü' + user_title: '%{user} Kullanıcısının Günlüğü' in_language_title: '%{language} dillindeki günlük girdiler' new: Yeni Günlük Girdisi new_title: Kullanıcı günlüğümde yeni bir girdi oluştur @@ -573,8 +577,8 @@ tr: title: Günlük Girdisini Düzenle marker_text: Günlük girdisinin konumu show: - title: '%{user} kullanıcısının günlüğü | %{title}' - user_title: '%{user} kullanıcısının günlüğü' + title: '%{user} Kullanıcısının Günlüğü | %{title}' + user_title: '%{user} Kullanıcısının Günlüğü' leave_a_comment: Yorum yap login_to_leave_a_comment_html: Yorum yazmak için %{login_link} login: Oturum Aç @@ -622,10 +626,10 @@ tr: description: OpenStreetMap kullanıcıların en son günlük girdileri comments: title: '%{user} tarafından yapılan günlük yorumları' - heading: '%{user} kullanıcısının günlük yorumları' + heading: '%{user} Kullanıcısının Günlük Yorumları' subheading_html: '%{user} tarafından yapılan günlük yorumları' no_comments: Günlük yorumu yok - post: Gönder + post: Gönderi when: Tarih comment: Yorum newer_comments: Daha Yeni Yorumlar @@ -692,7 +696,7 @@ tr: daha fazla arkadaş olmaya çalışmadan önce bir süre bekleyin. remove_friend: heading: '%{user}, arkadaşlıktan çıkarılsın mı?' - button: Arkadaşlıktan çıkar + button: Arkadaşlıktan Çıkar success: '%{name}, arkadaş listesinden çıkarıldı.' not_a_friend: '%{name}, arkadaşın değil.' geocoder: @@ -1510,9 +1514,9 @@ tr: one: '%{count} rapor' other: '%{count} rapor' no_reports: Rapor yok - report_created_at: Ä°lk defa %{datetime} tarihinde bildirildi - last_resolved_at: En son %{datetime} tarihinde çözümlendi - last_updated_at: Son güncelleme %{displayname} tarafından %{datetime} tarihinde + report_created_at_html: Ä°lk defa %{datetime} tarihinde bildirildi + last_resolved_at_html: En son %{datetime} tarihinde çözümlendi + last_updated_at_html: Son güncelleme %{displayname} tarafından %{datetime} tarihinde yapıldı resolve: Çözümle ignore: Yoksay @@ -1588,7 +1592,7 @@ tr: start_mapping: Haritacılığa Başla edit: Düzenle history: Geçmiş - export: Dışa aktar + export: Dışa Aktar issues: Sorunlar data: Veri export_data: Verinin Dışalımı @@ -1607,7 +1611,7 @@ tr: partners_ucl: UCL partners_fastly: Fastly partners_bytemark: Bytemark Hosting - partners_partners: işbirlikçiler + partners_partners: iş birlikçiler tou: Kullanım Şartları osm_offline: OpenStreetMap veritabanı bakım çalışmaları yürütüldüğü için veritabanı şu anda çevrimdışıdır. @@ -1659,7 +1663,7 @@ tr: befriend_them_html: '%{befriendurl} üzerinden arkadaş olarak da ekleyebilirsiniz.' gpx_description: description_with_tags_html: '%{trace_description} açıklamasına ve şu etiketlere - sahip %{trace_name} GPX dosyanız gibi görünüyor: %{tags}' + sahip %{trace_name} GPX dosyanıza benziyor: %{tags}' description_with_no_tags_html: '%{trace_description} açıklamasına sahip ve etiket içermeyen %{trace_name} GPX dosyanız gibi görünüyor' gpx_failure: @@ -1673,6 +1677,8 @@ tr: loaded: one: olası %{count} puan üzerinden %{trace_points} ile başarıyla yüklendi. other: olası %{count} puan üzerinden %{trace_points} ile başarıyla yüklendi. + all_your_traces_html: Başarıyla yüklediğiniz tüm GPX izlerinizi %{url} adresinde + bulabilirsiniz. subject: '[OpenStreetMap] GPX dosyası başarıyla alındı' signup_confirm: subject: '[OpenStreetMap]''e hoş geldin' @@ -1798,8 +1804,6 @@ tr: messages: inbox: title: Gelen kutusu - my_inbox: Gelen kutusu - my_outbox: Giden Kutum messages: '%{new_messages} ve %{old_messages}' new_messages: one: '%{count} yeni mesaj' @@ -1807,17 +1811,21 @@ tr: old_messages: one: '%{count} eski mesaj' other: '%{count} eski mesaj' - from: Gönderen - subject: Konu - date: Tarih 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 reply_button: Yanıtla 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' @@ -1832,17 +1840,18 @@ tr: body: Üzgünüz, bu kimlik ile bir mesaj yok. outbox: title: Giden kutusu - my_inbox: Gelen Kutum - my_outbox: Giden Kutum + actions: Eylemler messages: one: '%{count} mesaj gönderdiniz' other: ' %{count} mesaj gönderdiniz' - to: Alıcı - subject: Konu - date: Tarih 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 @@ -1858,26 +1867,36 @@ tr: 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 + unmute: + notice: Mesaj, gelen kutusuna taşındı + error: Mesaj, gelen kutusuna taşınamadı. destroy: destroyed: Mesaj silindi passwords: - lost_password: + new: title: Kayıp parola heading: Parolanızı mı Unuttunuz? - email address: 'E-posta Adresi:' + email address: E-posta Adresi new password button: Parolayı sıfırla help_text: Kaydolmak için kullandığınız e-posta adresini girin, şifrenizi sıfırlamak için kullanabileceğiniz bir bağlantı yollayacağız. + create: notice email on way: Maalesef şifrenizi kaybettiniz :-( Ancak yeni bir e-posta yolda böylece şifreniziyakında sıfırlayabilirsiniz. notice email cannot find: 'Üzgünüz: bu e-posta adresi bulunamadı.' - reset_password: + edit: title: Parolayı sıfırla heading: '%{user} İçin Parolayı Sıfırlayın' reset: Parolayı Sıfırla + flash token bad: Bu simgeyi bulamadıysanız belki de bağlantıyı kontrol etmelisiniz? + update: flash changed: Parolanız değiştirildi. flash token bad: Bu simgeyi bulamadıysanız belki de bağlantıyı kontrol etmelisiniz? preferences: @@ -1922,17 +1941,17 @@ tr: failure: Profil güncellenemedi. sessions: new: - title: Oturum aç - heading: Oturum aç - email or username: 'E-posta Adresi veya Kullanıcı Adı:' - password: 'Parola:' + title: Oturum Aç + heading: Oturum Aç + email or username: E-posta Adresi veya Kullanıcı Adı + password: Parola openid_html: '%{logo} OpenID:' remember: Beni hatırla lost password link: Parolanı mı unuttun? - login_button: Oturum aç + login_button: Oturum Aç register now: Şimdi kaydol with external: 'Alternatif olarak bir üçüncü parti uygulaması kullanarak oturum - aç:' + açın:' no account: Hesabın yok mu? auth failure: Üzgünüz, bu giriş ile oturum açılamadı. openid_logo_alt: OpenID ile giriş @@ -1985,6 +2004,7 @@ tr: image: Resim alt: Alt metin url: URL + codeblock: Kod bloğu richtext_field: edit: Düzenle preview: Önizleme @@ -2035,7 +2055,7 @@ tr: legal_2_2_html: OpenStreetMap, büyüteç logosu ve Harita Durumu %{registered_trademarks_link} sayılmaktadır. legal_2_2_registered_trademarks: OSMF'nin tescilli ticari markaları - partners_title: İşbirlikçiler + partners_title: İş birlikçiler copyright: foreign: title: Bu çeviri hakkında @@ -2044,7 +2064,7 @@ tr: bölümü önceliklidir. english_link: Ä°ngilizce orijinali native: - title: Sayfa hakkında + title: Bu sayfa hakkında html: Telif hakkı sayfasının Ä°ngilizce sürümünü görüntülüyorsunuz. Bu sayfanın %{native_link} sayfasına geri gidebilir ya da telif hakkı ve %{mapping_link} hakkında bilgi edinmek için sayfada kalabilirsiniz. @@ -2221,13 +2241,8 @@ tr: no_iframe_support: Bu özelliği görüntülemek için gerekli olan HTML iframe tarayıcınız desteklemiyor. export: - title: Dışa aktar - area_to_export: Çıkartılacak alan + title: Dışa Aktar manually_select: Fare kullanarak farklı bir alan seç - format_to_export: Çıkartma biçimi - osm_xml_data: OpenStreetMap XML Veri - map_image: Harita (varsayılan katmanı gösterir) - embeddable_html: Gömülebilir HTML licence: Lisans licence_details_html: OpenStreetMap verileri, %{odbl_link} (ODbL) altında lisanslanmıştır. odbl: Open Data Commons Açık Veritabanı Lisansı @@ -2251,18 +2266,7 @@ tr: other: title: Diğer Kaynaklar description: OpenStreetMap vikisinde listelenen ek kaynaklar - options: Seçenekler - format: Biçim - scale: Ölçek - max: maks. - image_size: Resim Boyutu - zoom: Yakınlaştır - add_marker: Haritaya bir işaret ekle - latitude: 'Enlem:' - longitude: 'Boylam:' - output: Çıktı - paste_html: Yukarıdaki HTML kodu kopyalayıp websitesinde yapıştırabilir - export_button: Dışa aktar + export_button: Dışa Aktar fixthemap: title: Sorun bildir / Haritayı onar how_to_help: @@ -2362,67 +2366,83 @@ tr: primary: Devlet Yolu secondary: Ä°l yolu unclassified: Sınıflandırılmamış yol + pedestrian: Yaya yolu track: Toprak yolu bridleway: Binici yolu cycleway: Bisiklet yolu cycleway_national: Ulusal Bisiklet Yolu cycleway_regional: Bölgesel Bisiklet Yolu cycleway_local: Yerel Bisiklet Yolu + cycleway_mtb: Dağ bisikleti rotası footway: Yaya yolu rail: Demiryolu + train: Tren subway: Metro - tram: - - Dar raylı demiryolu - - tramvay - cable: - - Teleferik - - gondol - runway: - - Uçuş pisti - - Uçak pisti - apron: - - Havaalanı apronu - - terminal + ferry: Feribot + light_rail: Hafif raylı + tram: Tramvay + trolleybus: Troleybüs + bus: Otobüs + cable_car: Teleferik + chair_lift: Telesiyej + runway: Uçuş pisti + taxiway: Taksi yolu + apron: Havaalanı apronu admin: Ä°dari sınırı + capital: Başkent + city: Şehir + orchard: Meyve bahçesi + vineyard: Üzüm bağı forest: Orman - wood: Orman + wood: Koru + farmland: Tarım arazisi + grass: Çimen + meadow: Çayır + bare_rock: Çıplak kaya + sand: Kum golf: Golf sahası park: Park + common: Çimen + built_up: Ä°nşa alanı resident: Yerleşim bölgesi - common: - - Çimen - - mera - - bahçe retail: Alışveriş merkezi industrial: Sanayi alanı commercial: Ticari ve hizmet alanı heathland: Fundalık - lake: - - Göl - - rezervuar + scrubland: Çalılık + lake: Göl + reservoir: Rezervuar + intermittent_water: Aralıklı su birikintisi + glacier: Buzul + reef: Resif + wetland: Sulak alan farm: Çiftlik brownfield: Çıplak arazi cemetery: Mezarlık allotments: Bostan pitch: Spor sahası centre: Spor merkezi + beach: Plaj reserve: Doğa koruma alanı military: Askeri bölge - school: - - Okul - - Üniversite + school: Okul + university: Üniversite + hospital: Hastane building: Önemli yapı station: Gar - summit: - - Zirve - - Dağ + summit: Zirve + peak: Zirve tunnel: çizgili kenar = tünel bridge: Siyah kenar = köprü private: Özel giriş destination: Hedef noktası construction: yapım aşamasındaki yollar + bus_stop: Otobüs durağı + stop: Durak bicycle_shop: Bisikletçi + bicycle_rental: Bisiklet kiralama bicycle_parking: Bisiklet parkı + bicycle_parking_small: Küçük bisiklet parkı toilets: Tuvaletler welcome: title: Hoş geldiniz! @@ -2516,9 +2536,9 @@ tr: help_url: https://wiki.openstreetmap.org/wiki/Tr:Upload create: upload_trace: GPS Ä°zi Gönder - trace_uploaded: GPX dosya yüklendi ve veritabanına eklemek için bekliyor. Bu - işlem genellikle yarım saat içinde gerçekleşir ve tamamlandığında sana bir - e-posta gönderiliyor. + trace_uploaded: GPX dosyanız yüklendi ve veritabanına eklenmeyi bekliyor. Bu + işlem genellikle yarım saat içinde gerçekleşir ve tamamlandığında size bir + e-posta gönderilir. upload_failed: Üzgünüz, GPX yüklemesi başarısız oldu. Bir yönetici hatayla ilgili bilgilendirildi. Lütfen tekrar deneyin traces_waiting: @@ -2626,6 +2646,7 @@ tr: oauth1_settings: OAuth 1 ayarları oauth2_applications: OAuth 2 uygulamaları oauth2_authorizations: OAuth 2 yetkilendirmeleri + muted_users: Sessize Alınan Kullanıcılar oauth: authorize: title: Hesabınıza erişimi yetkilendirin @@ -2662,6 +2683,7 @@ tr: read_gpx: Özel GPS izlerini oku write_gpx: GPS izlerini yükle write_notes: Notları değiştir + write_redactions: Harita verilerini düzelt read_email: Kullanıcı e-posta adresini oku skip_authorization: Başvuruyu otomatik onayla oauth_clients: @@ -2764,16 +2786,16 @@ tr: support: destek about: header: Ücretsiz ve düzenlenebilir - paragraph_1: Diğer haritaların aksine, OpenStreetMap tamamen sizin gibi kullanıcılar - tarafından oluşturulmuş ve herkesin düzeltmesi, güncellemesi, indirmesi - ve kullanması ücretsizdir. + paragraph_1: Diğer haritaların aksine tamamen sizler tarafından oluşturulan + OpenStreetMap'i herkesin düzeltmesi, güncellemesi, indirmesi ve kullanması + ücretsizdir. paragraph_2: Katkıda bulunmaya başlamak için kaydolun. Hesabınızı onaylamak için bir e-posta göndereceğiz. display name description: Herkes tarafından görünecek bir kullanıcı adı. Bu adı istediğiniz zaman ayarlar bölümünde değiştirebilirsiniz. external auth: 'Üçüncü Taraf Kimlik Doğrulaması:' use external auth: 'Alternatif olarak bir üçüncü parti uygulaması kullanarak - oturum aç:' + oturum açın:' auth no password: Üçüncü taraf kimlik doğrulamasında bir parola gerekli değildir, ancak bazı ek araçlar veya sunucu için yine de bir parola gerekebilir. continue: Kaydol @@ -2838,13 +2860,15 @@ tr: my_dashboard: Gösterge Panelim blocks on me: Engellendiklerim blocks by me: Engellediklerim + create_mute: Bu Kullanıcıyı Sessize Al + destroy_mute: Bu Kullanıcının Sesini Aç edit_profile: Profili Düzenle send message: Mesaj Gönder diary: Günlük edits: Düzenlemeler - traces: Ä°zleri + traces: Ä°zler notes: Harita Notları - remove as friend: Arkadaşlıktan çıkar + remove as friend: Arkadaşlıktan Çıkar add as friend: Arkadaş Olarak Ekle mapper since: 'Haritacılığa başlama tarihi:' uid: 'Kullanıcı kimliği:' @@ -2858,17 +2882,18 @@ tr: role: administrator: Bu kullanıcı, bir yöneticidir. moderator: Bu kullanıcı, bir moderatördür. - importer: Bu kullanıcı bir ithalatçıdır + importer: Bu kullanıcı bir içe aktarıcıdır grant: administrator: Yönetici erişim hakkı moderator: Moderatör erişim izni - importer: Ä°thalatçıya erişim izni ver + importer: İçe aktarım erişim izni ver revoke: administrator: Yönetici erişimini iptal etme moderator: Moderatör erişimini iptal etme - importer: Ä°thalatçı erişimini iptal et + importer: İçe aktarıcı erişimini iptal et block_history: Etkin Engellemeler moderator_history: Verilen Engellemeler + revoke_all_blocks: Tüm engellemeleri iptal et comments: Yorumlar create_block: Bu kullanıcıyı engelle activate_user: Bu Kullanıcıyı Etkinleştir @@ -2879,7 +2904,7 @@ tr: unhide_user: Bu Kullanıcıyı Göster delete_user: Bu Kullanıcıyı Sil confirm: Onayla - report: Bu kullanıcıyı rapor et + report: Bu Kullanıcıyı Bildir go_public: flash success: Tüm düzenlemeleriniz şimdi herkese açık ve siz de düzenleme yetkisine sahipsiniz. @@ -2979,6 +3004,16 @@ tr: confirm: Bu engeli kaldırmak istediğine emin misin? revoke: Ä°ptal! flash: Bu engelleme iptal edildi. + 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. @@ -3012,14 +3047,14 @@ tr: show: title: '%{block_on} kişisi %{block_by} tarafından engellendi' heading_html: '%{block_on} kişisi %{block_by} tarafından engellendi' - created: 'Oluşturuldu:' + created: 'Oluşturulma:' duration: 'Süre:' status: 'Durum:' show: Göster edit: Düzenle revoke: Ä°ptal! confirm: Emin misiniz? - reason: 'Engelleme sebebi:' + reason: 'Engellenme sebebi:' back: Tüm engellemeleri göster revoker: 'Geri alan:' needs_view: Engel kaldırılmadan önce kullanıcının giriş yapması gerekiyor. @@ -3029,19 +3064,43 @@ tr: edit: Düzenle revoke: Ä°ptal! blocks: - display_name: Engellenmiş kullanıcı + display_name: Engellenen Kullanıcı creator_name: Oluşturan - reason: Engelleme sebebi + reason: Engellenme sebebi status: Durum revoker_name: Ä°ptal eden showing_page: '%{page}. sayfa' next: Sonraki » previous: « Önceki + user_mutes: + index: + title: Sessize Alınan Kullanıcılar + my_muted_users: Sessize alınan kullanıcılarım + you_have_muted_n_users: + one: '%{count} kullanıcıyı sessize aldınız' + other: '%{count} kullanıcıyı sessize aldınız' + user_mute_explainer: Sessize alınan kullanıcıların mesajları ayrı bir gelen + kutusuna taşınır ve e-posta bildirimleri almazsınız. + user_mute_admins_and_moderators: Yöneticileri ve moderatörleri sessize alabilirsiniz + ancak mesajları sessize alınmayacaktır. + table: + thead: + muted_user: Sessize Alınan Kullanıcı + actions: Eylemler + tbody: + unmute: Sesi Aç + send_message: Mesaj gönder + create: + notice: '%{name} kullanıcısını sessize aldınız.' + error: '%{name} sessize alınamadı. %{full_message}.' + destroy: + notice: '%{name} kullanıcısının sesini açtınız.' + error: Kullanıcının sesi açılamadı. Lütfen tekrar deneyin. notes: index: title: '%{user} tarafından gönderilen veya yorumlanan notlar' - heading: '%{user} kullanıcıya ait notlar' - subheading_html: '%{user} tarafından %{submitted}} veya %{commented} notlar' + heading: '%{user} Kullanıcısının Notları' + subheading_html: '%{user} tarafından %{submitted} veya %{commented} notlar' subheading_submitted: gönderilen subheading_commented: yorumlanan no_notes: Not yok @@ -3075,6 +3134,7 @@ tr: reactivate: Yeniden etkinleştir comment_and_resolve: Yorum ve Çözüm comment: Yorum + log_in_to_comment: Bu nota yorum yapmak için giriş yapın report_link_html: Bu not, kaldırılması gereken hassas bilgiler içeriyorsa %{link} bağlantısına tıklayınız. other_problems_resolve: Notla ilgili diğer tüm sorunlar için lütfen bir yorum diff --git a/config/locales/tt.yml b/config/locales/tt.yml index b76b45b4a..9b74fac90 100644 --- a/config/locales/tt.yml +++ b/config/locales/tt.yml @@ -832,6 +832,7 @@ tt: other: '%{count} яңа хәбәрегез' old_messages: other: '%{count} иске хәбәрегез' + messages_table: from: 'Кемнән:' subject: Тема date: Вакыт @@ -840,7 +841,7 @@ tt: new: title: Хәбәр җибәрү passwords: - lost_password: + new: email address: 'Электрон почта адресы:' profiles: edit: @@ -862,17 +863,6 @@ tt: too_large: planet: title: OSM планетасы - options: Көйләнмәләр - format: Формат - scale: Масштаб - max: макс. - image_size: Сурәт зурлыгы - zoom: Якынайтырга - add_marker: Харитада маркер куярга - latitude: 'Киңлек:' - longitude: 'Озынлык:' - output: Нәтиҗә - paste_html: Сайт эченә салу өчен HTML-код export_button: Чыгару sidebar: search_results: Эзләү нәтиҗәләре @@ -892,34 +882,24 @@ tt: cycleway: Әйләнаяк юлы rail: Тимер юл subway: Метро - tram: - - Җиңел рельслы т/ю транспорты - - трамвай - cable: - - Канат юлы - apron: - 1: терминал + cable_car: Канат юлы admin: Административ чик forest: Урман wood: Агачлык park: Парк resident: Торак районы - common: - 1: болын industrial: Сәнәгый район heathland: Буш җир - lake: - - Күл - - сусаклагыч + lake: Күл + reservoir: сусаклагыч farm: Ферма cemetery: Зират pitch: Спорт мәйданчыгы centre: Спорт үзәге reserve: Тыюлык military: Хәрби зона - school: - - Мәктәп - - университет + school: Мәктәп + university: университет station: Тимер юл станциясе toilets: Бәдрәф traces: diff --git a/config/locales/uk.yml b/config/locales/uk.yml index e819260b4..7235c55b5 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -44,6 +44,7 @@ # Author: Vlad5250 # Author: Ypryima # Author: Yurkoy +# Author: Ǝlʞıɯ # Author: Ата # Author: Драгун # Author: Пан Хаунд @@ -86,6 +87,9 @@ uk: messages: invalid_email_address: не схоже на коректну адресу електронної пошти email_address_not_routable: недоступний + models: + user_mute: + is_already_muted: вже стишено models: acl: Список контролю доступу changeset: Набір змін @@ -1020,7 +1024,7 @@ uk: track: Путівець traffic_mirror: Дорожнє дзеркало traffic_signals: Світлофор - trailhead: Трейлхед + trailhead: Початок маршруту trunk: Шосе trunk_link: З’їзд з/на шосе turning_circle: Місце для розвороту @@ -1054,7 +1058,7 @@ uk: railway: Історична залізниця roman_road: Римська дорога ruins: Руїни - rune_stone: Рунний камінь + rune_stone: Рунічний камінь stone: Камінь tomb: Гробниця tower: Вежа @@ -1427,7 +1431,7 @@ uk: photo: Фотомагазин seafood: Морепродукти second_hand: Комісійний магазин - sewing: Швейний цех + sewing: Швейне приладдя shoes: Взуття sports: Спортивні товари stationery: Канцтовари @@ -1549,9 +1553,9 @@ uk: many: '%{count} скарг' other: "" no_reports: Скарг немає - report_created_at: Вперше повідомлено %{datetime} - last_resolved_at: В останнє розв'язано %{datetime} - last_updated_at: В останнє оновлено %{datetime}, %{displayname} + report_created_at_html: Вперше повідомлено %{datetime} + last_resolved_at_html: Востаннє розв'язано %{datetime} + last_updated_at_html: В останнє оновлено %{datetime}, %{displayname} resolve: Розв'язати ignore: Ігнорувати reopen: Повторно відкрити @@ -1579,7 +1583,7 @@ uk: issue_comments: create: comment_created: Коментар створено - issue_reassigned: Ваш коментар створено, а питання перепризначено + issue_reassigned: Ваш коментар створено та перепризначено звернення reports: new: title_html: Скарга %{link} @@ -1832,8 +1836,6 @@ uk: messages: inbox: title: Вхідні - my_inbox: Вхідні - my_outbox: Вихідні messages: У вас %{new_messages} і %{old_messages} new_messages: one: '%{count} нове повідомлення' @@ -1845,17 +1847,21 @@ uk: few: '%{count} старих повідомлення' many: '%{count} старих повідомлень' other: "" - from: Від - subject: Тема - date: Дата no_messages_yet_html: У вас ще немає повідомлень. Чому б не поспілкуватись з кимось із %{people_mapping_nearby_link}? people_mapping_nearby: мапери поблизу вас + messages_table: + from: Від + to: Кому + subject: Тема + date: Дата + actions: Дії message_summary: unread_button: Позначити як непрочитане read_button: Позначити як прочитане reply_button: Відповісти destroy_button: Вилучити + unmute_button: Перемістити до "Вхідних". new: title: Надіслати повідомлення send_message_to_html: Надіслати нове повідомлення до %{name} @@ -1870,19 +1876,22 @@ uk: body: Вибачте, але повідомлення з цим ідентифікатором не існує. outbox: title: Вихідні - my_inbox: Вхідні - my_outbox: Вихідні + actions: Дії messages: one: У вас %{count} надіслане повідомлення few: У вас %{count} надісланих повідомлення many: У вас %{count} надісланих повідомлень other: "" - to: Кому - subject: Тема - date: Дата 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}“, але повідомлення, на яке ви хочете відповісти, було надіслане не вам. Будь ласка, увійдіть до відповідного облікового запису, @@ -1898,28 +1907,38 @@ uk: облікового запису, щоб прочитати його. sent_message_summary: destroy_button: Вилучити + heading: + my_inbox: Вхідні + my_outbox: Вихідні + muted_messages: Стишені повідомлення mark: as_read: Повідомлення позначене як прочитане as_unread: Повідомлення позначене як непрочитане + unmute: + notice: Повідомлення переміщено до "Вхідних". + error: Не вдалося перемістити повідомлення до "Вхідних". destroy: destroyed: Повідомлення вилучено passwords: - lost_password: + new: title: Відновлення пароля heading: Забули пароль? email address: 'Адреса ел. пошти:' new password button: Вишліть мені новий пароль help_text: Введіть адресу вашої електронної пошти, яку ви використовували для реєстрації, і ми надішлемо інструкції, як можна відновити ваш пароль. + create: notice email on way: Шкода, що ви втратили пароль :-( але нічого, скоро прийде лист і ви зможете перевстановити свій пароль. notice email cannot find: На жаль, така адреса не зареєстрована. - reset_password: + edit: title: Скидання пароля heading: Скидання пароля для %{user} reset: Скидання пароля - flash changed: Ваш пароль було змінено. flash token bad: Неможливо знайти такий код підтвердження, перевірте посилання. + update: + flash changed: Ваш пароль було змінено. + flash token bad: Неможливо знайти такий токен, перевірте посилання. preferences: show: title: Вподобання @@ -2024,6 +2043,7 @@ uk: image: Зображення alt: Alt текст url: URL + codeblock: Блок коду richtext_field: edit: Редагувати preview: Попередній перегляд @@ -2255,12 +2275,7 @@ uk: функції. export: title: Експорт - area_to_export: Ділянка для експорту manually_select: Виділіть іншу ділянку - format_to_export: Формат експорту - osm_xml_data: Дані OpenStreetMap XML - map_image: Зображення мапи (показує стандартний шар) - embeddable_html: Вбудований HTML licence: Ліцензія licence_details_html: Дані OpenStreetMap ліцензуються на умовах Ліцензії %{odbl_link} (ODbL). @@ -2284,17 +2299,6 @@ uk: other: title: Інші джерела description: Додаткові джерела перераховані у вікі OpenStreetMap - options: Опції - format: 'Формат:' - scale: Масштаб - max: макс. - image_size: 'Розмір зображення:' - zoom: Збільшити - add_marker: Додати маркер на мапу - latitude: 'Шир.:' - longitude: 'Довг.:' - output: Результат - paste_html: HTML-код для вбудовування до сайту export_button: Експортувати fixthemap: title: Повідомити про проблему / Виправити мапу @@ -2393,44 +2397,56 @@ uk: primary: Головна дорога secondary: Другорядна дорога unclassified: Дорога без класифікації + pedestrian: Пішохідна доріжка track: Путівець bridleway: Дорога для їзди кіньми cycleway: Велодоріжка cycleway_national: Національні велошляхи cycleway_regional: Регіональні велошляхи cycleway_local: Місцеві велошляхи + cycleway_mtb: Маршрут для гірських велосипедів footway: Пішохідна доріжка rail: Залізниця + train: Поїзд subway: Лінія метро - tram: - - Швидкісний трамвай - - трамвай - cable: - - Канатна дорога - - крісельний підйомник - runway: - - Злітно-посадкова смуга аеропорту - - руліжна доріжка - apron: - - Перон аеропорту - - термінал + ferry: Паром + light_rail: Швидкісний трамвай + tram: Трамвай + trolleybus: Тролейбус + bus: Автобус + cable_car: Канатна дорога + chair_lift: Крісельний підйомник + runway: Злітно-посадкова смуга аеропорту + taxiway: Руліжна доріжка + apron: Перон аеропорту admin: Адміністративна межа + capital: Столиця + city: Місто + orchard: Сад + vineyard: Виноградник forest: Ліс wood: Дерева + farmland: Поле + grass: Трава + meadow: Левада + bare_rock: Голі скелі + sand: Пісок golf: Поле для гольфу park: Парк + common: Суспільні землі + built_up: Забудована територія resident: Жила зона - common: - - Суспільні землі - - левада - - сад retail: Торговельний район industrial: Промисловий район commercial: Бізнесова зона heathland: Пустище - lake: - - Озеро - - водосховище + scrubland: Чагарник + lake: Озеро + reservoir: Водосховище + intermittent_water: Водойма, що пересихає + glacier: Льодовик + reef: Риф + wetland: Заболочені землі farm: Ферма brownfield: Покинута зона cemetery: Кладовище @@ -2439,19 +2455,20 @@ uk: centre: Спортивний центр reserve: Заповідник military: Військова зона - school: - - Школа - - університет + school: Школа + university: Університет + hospital: Лікарня building: Значна споруда station: Залізнична станція - summit: - - Вершина - - пік + summit: Вершина + peak: Пік tunnel: Тунель (пунктиром) bridge: Міст (жирна лінія) private: Приватний доступ destination: Цільовий доступ construction: Будівництво дороги + bus_stop: Автобусна зупинка + stop: Зупинка bicycle_shop: Веломагазин bicycle_parking: Велопарковка toilets: Туалети @@ -2667,6 +2684,7 @@ uk: oauth1_settings: налаштування OAuth 1 oauth2_applications: застосунки OAuth 2 oauth2_authorizations: авторизації OAuth 2 + muted_users: Стишені учасники oauth: authorize: title: Авторизувати доступ до облікового запису @@ -2705,6 +2723,7 @@ uk: read_gpx: Отримувати приватні GPS-треки write_gpx: Завантажувати GPS-треки write_notes: Змінювати нотатки + write_redactions: Виконувати очищення даних read_email: Отримувати адресу е-пошти skip_authorization: Автоматичне схвалення заявки oauth_clients: @@ -2881,6 +2900,8 @@ uk: my_dashboard: Інфо панель blocks on me: Мої блокування blocks by me: Заблоковано мною + create_mute: Стишити цього учасника + destroy_mute: Зняти стишення з цього учасника edit_profile: Редагувати профіль send message: Надіслати повідомлення diary: Щоденник @@ -3090,6 +3111,32 @@ uk: showing_page: Сторінка %{page} next: Наступна → previous: ← Попередня + user_mutes: + index: + title: Стишені учасники + my_muted_users: Стишені учасники + you_have_muted_n_users: + one: У вас %{count} стишений учасник + few: У вас %{count} стишених учасників + many: У вас %{count} стишених учасників + other: "" + user_mute_explainer: Повідомлення стишених учасників було перемішено в окрему + теку. Ви не будете отримувати сповіщення про них на пошту. + user_mute_admins_and_moderators: Ви можете стишити Адміністраторів та Модераторів, + але повідомлення від них не будуть стишеними. + table: + thead: + muted_user: Стишені учасники + actions: Дії + tbody: + unmute: Розблокувати + send_message: Надіслати повідомлення + create: + notice: Ви стишили %{name}. + error: '%{name} не може бути стишеним. %{full_message}.' + destroy: + notice: Ви розблокували %{name}. + error: Не вдалося розблокувати учасника. Будь ласка, спробуйте ще раз. notes: index: title: Нотатки створені чи прокоментовані %{user} @@ -3126,6 +3173,7 @@ uk: reactivate: Поновити comment_and_resolve: Прокоментувати та Опрацювати comment: Коментар + log_in_to_comment: Увійдіть, щоб прокоментувати цю нотатку report_link_html: Якщо ця нотатка містить конфіденційну інформацію, яку потрібно видалити, ви можете %{link}. other_problems_resolve: Всі інші проблеми з нотаткою вирішуйте самостійно в diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 4271be41c..fa070fb63 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -4,6 +4,7 @@ # Author: A Retired User # Author: Anewplayer # Author: Dinhxuanduyet +# Author: Doraemonluonbentoi # Author: Flyplanevn27 # Author: Ioe2015 # Author: JohnsonLee01 @@ -1321,9 +1322,9 @@ vi: zero: Không có báo cáo one: 1 báo cáo other: '%{count} báo cáo' - report_created_at: Báo cáo lần đầu tiên vào %{datetime} - last_resolved_at: Giải quyết lần cuối cùng vào %{datetime} - last_updated_at: Cập nhật lần cuối cùng vào %{datetime} bởi %{displayname} + report_created_at_html: Báo cáo lần đầu tiên vào %{datetime} + last_resolved_at_html: Giải quyết lần cuối cùng vào %{datetime} + last_updated_at_html: Cập nhật lần cuối cùng vào %{datetime} bởi %{displayname} resolve: Giải quyết ignore: Bỏ qua reopen: Mở lại @@ -1601,16 +1602,16 @@ vi: messages: inbox: title: Hộp thÆ° - my_inbox: Hộp thÆ° đến - my_outbox: Hộp thÆ° gá»­i 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 - 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 message_summary: unread_button: Đánh dấu là chÆ°a đọc read_button: Đánh dấu là đã đọc @@ -1630,12 +1631,7 @@ vi: body: Rất tiếc, không có thÆ° nào với ID đó. outbox: title: Hộp thÆ° đã gá»­i - my_inbox: Hộp thÆ° đến - my_outbox: Hộp thá»­ gá»­i messages: Bạn có %{count} thÆ° đã gá»­i - to: Tới - subject: Tiêu đề - date: Ngày 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 @@ -1654,28 +1650,33 @@ vi: 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 mark: as_read: ThÆ° đã đọc as_unread: ThÆ° chÆ°a đọc destroy: destroyed: Đã xóa thÆ° passwords: - lost_password: + new: title: Quên mất mật khẩu heading: Quên mất Mật khẩu? email address: 'Địa chỉ ThÆ° điện tá»­:' new password button: Đặt lại mật khẩu help_text: Nhập địa chỉ thÆ° điện tá»­ mà bạn đã dùng để mở tài khoản, rồi chúng tôi sẽ gá»­i liên kết cho địa chỉ đó để cho bạn đặt lại mật khẩu. + create: notice email on way: Đáng tiếc là bạn quên nó. :-( May là thÆ° điện tá»­ sắp tới để bạn đặt nó lại. notice email cannot find: Rất tiếc, không tìm thấy địa chỉ thÆ° điện tá»­. - reset_password: + edit: title: Đặt lại mật khẩu heading: Đặt lại Mật khẩu của %{user} reset: Đặt lại Mật khẩu - flash changed: Mật khẩu của bạn đã được thay đổi. flash token bad: Không tìm thấy dấu hiệu đó. Có lẽ kiểm tra URL? + update: + flash changed: Mật khẩu của bạn đã được thay đổi. preferences: show: title: Tùy chỉnh @@ -1894,12 +1895,7 @@ vi: trong HTML. export: title: Xuất - area_to_export: Vùng để Xuất manually_select: Chọn vùng khác thủ công - format_to_export: Định dạng Xuất - osm_xml_data: Dữ liệu OpenStreetMap XML - map_image: Hình Bản đồ (Lớp Chuẩn) - embeddable_html: HTML để Nhúng licence: Giấy phép too_large: advice: 'Nếu việc xuất dữ liệu ở trên bị thất bại, hãy nghÄ© đến việc sá»­ dụng @@ -1921,17 +1917,6 @@ vi: other: title: Nguồn Khác description: Những nguồn khác được liệt kê trên wiki OpenStreetMap - options: Tùy chọn - format: 'Định dạng:' - scale: Tá»· lệ - max: tối đa - image_size: Hình có Kích cỡ - zoom: Thu phóng - add_marker: Đánh dấu vào bản đồ - latitude: 'VÄ© độ:' - longitude: 'Kinh độ:' - output: Đầu ra - paste_html: Dán HTML để nhúng vào trang Web export_button: Xuất fixthemap: title: Báo lỗi / Sá»­a bản đồ @@ -2022,35 +2007,24 @@ vi: footway: Đường đi bộ rail: Đường sắt subway: Đường ngầm - tram: - - Đường sắt nhẹ - - xe điện - cable: - - Đường xe cáp - - ghế cáp treo - runway: - - Đường băng - - đường băng - apron: - - Sân đậu máy bay - - nhà ga hành khách + cable_car: Đường xe cáp + chair_lift: ghế cáp treo + runway: Đường băng + taxiway: đường băng + apron: Sân đậu máy bay admin: Biên giới hành chính forest: Rừng trồng cây wood: Rừng golf: Sân golf park: Công viên + common: Đất công resident: Khu vá»±c nhà ở - common: - - Đất công - - bãi cỏ - - vườn retail: Khu vá»±c buôn bán industrial: Khu vá»±c công nghiệp commercial: Khu vá»±c thÆ°Æ¡ng mại heathland: Vùng cây bụi - lake: - - Hồ - - hồ chứa nước + lake: Hồ + reservoir: hồ chứa nước farm: Ruộng brownfield: Cánh đồng nâu cemetery: NghÄ©a địa @@ -2059,14 +2033,12 @@ vi: centre: Trung tâm thể thao reserve: Khu bảo tồn thiên niên military: Khu vá»±c quân sá»± - school: - - Trường học - - đại học + school: Trường học + university: đại học building: Kiến trúc quan trọng station: Nhà ga - summit: - - Đỉnh núi - - đồi + summit: Đỉnh núi + peak: đồi tunnel: Đường đứt nét = đường hầm bridge: Đường rắn = cầu private: Đường riêng diff --git a/config/locales/yo.yml b/config/locales/yo.yml index 99bb6c490..7edd241cb 100644 --- a/config/locales/yo.yml +++ b/config/locales/yo.yml @@ -44,10 +44,10 @@ yo: show: title: Ka message passwords: - lost_password: + new: title: lost password new password button: Fi ọ̀rọ̀ìpamọ́ tuntun ránsẹ́ sí mi - reset_password: + edit: title: ìtúntò ọ̀rọ̀ìpamọ́ sessions: new: diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index ccd2f0d6a..4f612066c 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -8,12 +8,14 @@ # Author: Amire80 # Author: Anakmalaysia # Author: Angrydog001 +# Author: Anterdc99 # Author: Assoc # Author: Boyuan Yang # Author: C933103 # Author: David S. Hwang # Author: Deathkon # Author: Dimension +# Author: Dream Star.cn # Author: Duolaimi # Author: FakeGreenHand # Author: Fanjiayi @@ -122,6 +124,9 @@ zh-CN: messages: invalid_email_address: 似乎不是有效的电子邮件地址 email_address_not_routable: 不可路由 + models: + user_mute: + is_already_muted: 已弱化 models: acl: 访问控制列表 changeset: 变更集 @@ -334,6 +339,7 @@ zh-CN: retain_notes: 您的地图注记与注记中的评论,如果有,将被保留,但不可见。 retain_changeset_discussions: 您在变更集下的讨论,如果有,将被保留。 retain_email: 您的电子邮件地址将被保留。 + recent_editing_html: 因为您最近有做出编辑,目前无法删除您的账号。%{time} 后才可删除。 confirm_delete: 您确定吗? cancel: 取消 accounts: @@ -1498,9 +1504,9 @@ zh-CN: one: '%{count}个举报' other: '%{count}个举报' no_reports: 没有报告 - report_created_at: 首次报告于%{datetime} - last_resolved_at: 上次解决于%{datetime} - last_updated_at: 上次由%{displayname}于%{datetime}更新 + report_created_at_html: 首次报告于%{datetime} + last_resolved_at_html: 上次解决于%{datetime} + last_updated_at_html: 上次由%{displayname}于%{datetime}更新 resolve: 解决 ignore: 忽略 reopen: 重新开放 @@ -1534,7 +1540,7 @@ zh-CN: title_html: 举报%{link} missing_params: 不能创建新的举报 disclaimer: - intro: 在发送您的举报至网站版主前,请确保: + intro: 在发送您的举报至网站仲裁员前,请确保: not_just_mistake: 您确信这个问题不只是失误 unable_to_fix: 您无法自行修复问题,或通过您的伙伴社群成员帮助下修复 resolve_with_user: 您已尝试与有关用户解决问题 @@ -1642,6 +1648,7 @@ zh-CN: gpx_success: hi: 您好,%{to_user}: loaded: 已成功加载%{count}个可能轨迹点中的%{trace_points}个。 + all_your_traces_html: 您可以在 %{url} 找到所有您成功上传的 GPX 轨迹。 subject: '[OpenStreetMap] GPX 导入成功' signup_confirm: subject: '[OpenStreetMap] 欢迎加入 OpenStreetMap' @@ -1729,21 +1736,23 @@ zh-CN: messages: inbox: title: 收件箱 - my_inbox: 我的收件箱 - my_outbox: 我的发件箱 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: 日期 - no_messages_yet_html: 您还没有消息,何不联系一些%{people_mapping_nearby_link}? - people_mapping_nearby: 在附近绘制地图的人 + actions: 操作 message_summary: unread_button: 标记为未读 read_button: 标记为已读 reply_button: 回复 destroy_button: 删除 + unmute_button: 移至收件箱 new: title: 发消息 send_message_to_html: 发送新信息给%{name} @@ -1757,20 +1766,21 @@ zh-CN: body: 对不起,没有具有该 id 的消息。 outbox: title: 发件箱 - my_inbox: 我的收件箱 - my_outbox: 我的发件箱 + actions: 操作 messages: one: 您有 %{count} 条已发送信息 other: 您有 %{count} 条已发送信息 - to: 收件人 - subject: 标题 - date: 日期 no_sent_messages_html: 您尚未发送信息。何不联系一些%{people_mapping_nearby_link}? people_mapping_nearby: 在附近绘制地图的人 + muted: + title: 已弱化消息 + messages: + one: 1 条弱化消息 + other: 您有 %{count} 条弱化消息 reply: wrong_user: 您已经以 '%{user}' 的身份登录,但是您想要回复的消息并非寄给这个用户。请以正确的用户身份登录以回复这个消息。 show: - title: 阅读信息 + title: 阅读消息 reply_button: 回复 unread_button: 标记为未读 destroy_button: 删除 @@ -1778,24 +1788,34 @@ zh-CN: wrong_user: 您已经以 '%{user}' 的身份登录,但是您想要阅读的消息并非寄给这个用户。请以正确的用户身份登录以阅读这个消息。 sent_message_summary: destroy_button: 删除 + heading: + my_inbox: 我的收件箱 + my_outbox: 我的发件箱 + muted_messages: 已弱化消息 mark: as_read: 标记消息为已读 as_unread: 标记消息为未读 + unmute: + notice: 消息已移至收件箱 + error: 无法将消息移至收件箱。 destroy: destroyed: 消息已删除 passwords: - lost_password: + new: title: 忘记密码 heading: 忘记密码? - email address: 电子邮件地址: + email address: 电子邮件地址 new password button: 重置密码 help_text: 输入您的电子邮件地址来注册,我们会寄出链接给它,这样您就可以用它来重置密码。 + create: notice email on way: 很遗憾您遗失了密码:-(不过一封电子邮件已经发往您的邮箱,您很快就可以重置密码了。 notice email cannot find: 对不起,无法找到邮箱。 - reset_password: + edit: title: 重置密码 heading: 重置%{user}的密码 reset: 重置密码 + flash token bad: 未找到标记,建议检查 URL? + update: flash changed: 您的密码已经更改。 flash token bad: 未找到标记,建议检查 URL? preferences: @@ -1841,8 +1861,8 @@ zh-CN: new: title: 登录 heading: 登录 - email or username: 电子邮件地址或用户名: - password: 密码: + email or username: 电子邮件地址或用户名 + password: 密码 openid_html: '%{logo}OpenID:' remember: 记住我 lost password link: 忘记密码? @@ -1900,6 +1920,7 @@ zh-CN: image: 图像 alt: 替代文本 url: URL + codeblock: 代码块 richtext_field: edit: 编辑 preview: 预览 @@ -1957,8 +1978,8 @@ zh-CN: introduction_1_osm_foundation: OpenStreetMap 基金会 introduction_2_html: 只要你表明来源为OpenStreetMap及其贡献者,你就可以自由地复制、分发、传送和改编我们的数据。如果你想转换或者以我们的数据为基础进行创作,你只能采用相同的许可协议发表你的作品。完整的%{legal_code_link}阐明了你的权利和义务。 introduction_2_legal_code: 法律条款 - introduction_3_html: 我们的文档根据 %{creative_commons_link} 许可 (CC BY-SA 2.0) 获得许可。 - introduction_3_creative_commons: Creative Commons Attribution-ShareAlike 2.0 + introduction_3_html: 我们的文档根据 %{creative_commons_link} 许可协议(CC BY-SA 2.0)获得许可。 + introduction_3_creative_commons: 知识共享署名-相同方式共享 2.0 credit_title_html: 如何表明作者是 OpenStreetMap credit_1_html: 当您使用 OpenStreetMap 的数据,您会被要求遵循两件事: credit_2_1: 通过显示我们的版权声明为 OpenStreetMap 提供署名。 @@ -1996,12 +2017,13 @@ zh-CN: 行政边界合并或开发,由澳大利亚联邦根据 %{cc_licence_link} 许可。 contributors_au_australia: 澳大利亚 contributors_au_geoscape_australia: Geoscape Australia - contributors_au_cc_licence: Creative Commons Attribution 4.0 International - licence (CC BY 4.0) + contributors_au_cc_licence: 知识共享署名-相同方式共享 4.0 国际许可协议(CC BY 4.0) contributors_ca_credit_html: '%{canada}:含有来自GeoBase®ï¼ŒGeoGratis(© 加拿大自然资源部),CanVec(© 加拿大自然资源部)和StatCan(加拿大统计局地理处)的数据。' contributors_ca_canada: 加拿大 - contributors_cz_cc_licence: 知识共享署名-相同方式共享4.0国际(CC BY 4.0) + contributors_cz_credit_html: '%{czechia}:含有来自国家土地测量与地籍管理局依据%{cc_licence_link}许可的数据' + contributors_cz_czechia: 捷克 + contributors_cz_cc_licence: 知识共享署名-相同方式共享 4.0 国际许可协议(CC BY 4.0) contributors_fi_credit_html: |- %{finland}:包含来自芬兰地形数据库的 国家土地调查 @@ -2076,12 +2098,7 @@ zh-CN: no_iframe_support: 您的浏览器不支持 HTML 嵌入式框架,这是此功能所需要的。 export: title: 导出 - area_to_export: 要导出的区域 manually_select: 手动选择不同的区域 - format_to_export: 要导出的格式 - osm_xml_data: OpenStreetMap XML 数据 - map_image: 地图图像 (显示标准图层) - embeddable_html: 可嵌入HTML licence: 许可协议 licence_details_html: OpenStreetMap 数据以 %{odbl_link} (ODbL) 许可。 odbl: 开放数据共享开放数据库许可协议 @@ -2100,17 +2117,6 @@ zh-CN: other: title: 其他来源 description: OpenStreetMap wiki 上列出的其他来源 - options: 选项 - format: 格式 - scale: 比例 - max: 最大 - image_size: 图像尺寸 - zoom: 缩放 - add_marker: 添加标记至地图 - latitude: 纬度: - longitude: 经度: - output: 输出 - paste_html: 粘贴可嵌入网站的 HTML export_button: 导出 fixthemap: title: 报告问题/修正地图 @@ -2195,67 +2201,83 @@ zh-CN: primary: 一级道路 secondary: 二级道路 unclassified: 无等级道路 + pedestrian: 人行道 track: 小路 bridleway: 马道 cycleway: 自行车道 cycleway_national: 国家自行车道 cycleway_regional: 地区自行车道 cycleway_local: 本地自行车道 + cycleway_mtb: 山地自行车路线 footway: 步道 rail: 铁路 + train: 火车 subway: 地铁 - tram: - - 轻轨 - - 电车 - cable: - - 缆车 - - 吊椅缆车 - runway: - - 机场跑道 - - 滑行道 - apron: - - 机场停机坪 - - 航站楼 + ferry: 渡船 + light_rail: 轻轨 + tram: 有轨电车 + trolleybus: 无轨电车 + bus: 公共汽车 + cable_car: 缆车 + chair_lift: 吊椅缆车 + runway: 机场跑道 + taxiway: 滑行道 + apron: 机场停机坪 admin: 行政区边界 + capital: 首都 + city: 城市 + orchard: 果园 + vineyard: 葡萄园 forest: 森林 - wood: 林 + wood: 树林 + farmland: 农田 + grass: 草坪 + meadow: 草甸 + bare_rock: 裸岩 + sand: 沙地 golf: 高尔夫球场 park: 公园 + common: 公地 + built_up: 建成区 resident: 居住区 - common: - - 公地 - - 草甸 - - 花园 retail: 零售区 industrial: 工业区 commercial: 商业区 heathland: 荒原 - lake: - - 湖 - - 水库 + scrubland: 灌木丛林地 + lake: 湖 + reservoir: 水库 + intermittent_water: 间歇性水体 + glacier: 冰川 + reef: 礁 + wetland: 湿地 farm: 农场 brownfield: 棕地 cemetery: 坟场 allotments: 小块园地 pitch: 体育场 centre: 体育馆 + beach: 海滩 reserve: 自然保护区 military: 军事区 - school: - - 学校 - - 大学 + school: 学校 + university: 大学 + hospital: 医院 building: 特殊建筑物 station: 火车站 - summit: - - 山峰 - - 高峰 + summit: 山峰 + peak: 山峰 tunnel: 双虚线=隧道 bridge: 双实线=æ¡¥ - private: 私人 - destination: 目的地进入权 + private: 私人通行 + destination: 目的地通行 construction: 在建道路 + bus_stop: 公共汽车站 + stop: 停车站 bicycle_shop: 自行车店 + bicycle_rental: 自行车租赁 bicycle_parking: 自行车停车场 + bicycle_parking_small: 小型自行车停车场 toilets: 厕所 welcome: title: 欢迎! @@ -2286,6 +2308,7 @@ zh-CN: imports: 导入 automated_edits: 自动化编辑 start_mapping: 开始绘制地图 + continue_authorization: 继续授权 add_a_note: title: 没有时间编辑?添加注记! para_1: 如果您这是想做一些微小改动而没有时间登录来学习如何编辑,那添加注记是非常容易的。 @@ -2418,6 +2441,7 @@ zh-CN: oauth1_settings: OAuth 1设置 oauth2_applications: OAuth 2应用程序 oauth2_authorizations: OAuth 2授权 + muted_users: 已弱化用户 oauth: authorize: title: 授权访问您的账户 @@ -2452,6 +2476,7 @@ zh-CN: read_gpx: 读取私人GPS轨迹 write_gpx: 上传GPS轨迹 write_notes: 修改备注 + write_redactions: 编写地图数据 read_email: 查看用户邮箱地址 skip_authorization: 自动核准应用 oauth_clients: @@ -2600,6 +2625,8 @@ zh-CN: my_dashboard: 我的综合面板 blocks on me: 我的封禁 blocks by me: 被我封禁 + create_mute: 弱化此用户 + destroy_mute: 取消弱化此用户 edit_profile: 编辑个人资料 send message: 发送消息 diary: 日记 @@ -2619,15 +2646,19 @@ zh-CN: spam score: 垃圾邮件评分: role: administrator: 此用户是管理员 - moderator: 此用户是版主 + moderator: 此用户是仲裁员 + importer: 此用户是导入者 grant: administrator: 授予管理员权限 - moderator: 授予管理员权限 + moderator: 授予仲裁员权限 + importer: 授予导入者权限 revoke: administrator: 撤销管理员权限 - moderator: 撤销管理员权限 + moderator: 撤销仲裁员权限 + importer: 撤销导入者权限 block_history: 激活的封禁 moderator_history: 执行封禁者 + revoke_all_blocks: 撤销所有封禁 comments: 评论 create_block: 封禁此用户 activate_user: 启用此用户 @@ -2689,8 +2720,8 @@ zh-CN: fail: 无法吊销用户 '%{name}' 角色 '%{role}'。请检查用户和角色是否都正确。 user_blocks: model: - non_moderator_update: 必须为管理员才能创建或更新一个封禁。 - non_moderator_revoke: 必须为管理员才能撤消块。 + non_moderator_update: 必须为仲裁员才能创建或更新一个封禁。 + non_moderator_revoke: 必须为仲裁员才能撤消封禁。 not_found: sorry: 对不起,未找到 ID 为 %{id} 的用户封禁。 back: 返回索引 @@ -2711,7 +2742,7 @@ zh-CN: create: flash: 已建立对用户 %{name} 的封禁 update: - only_creator_can_edit: 只有执行封禁的管理员能编辑它。 + only_creator_can_edit: 只有执行此封禁的仲裁员才能编辑。 success: 封禁已更新。 index: title: 用户的封禁 @@ -2725,6 +2756,16 @@ zh-CN: confirm: 您确定要撤销该封禁? revoke: 撤销! flash: 该封禁已经被撤销。 + 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: 用户登录时激活。 @@ -2782,6 +2823,28 @@ zh-CN: showing_page: 第 %{page} 页 next: 下一页 » previous: « 上一页 + user_mutes: + index: + title: 已弱化用户 + my_muted_users: 我已弱化的用户 + you_have_muted_n_users: + one: 您已弱化 1 名用户 + other: 您已弱化 %{count} 名用户 + user_mute_explainer: 已弱化用户的消息会被移至单独的收件箱,您不会收到电子邮件通知。 + user_mute_admins_and_moderators: 您可以弱化管理员和仲裁员,但仍会收到他们的消息通知。 + table: + thead: + muted_user: 已弱化用户 + actions: 操作 + tbody: + unmute: 取消弱化 + send_message: 发送消息 + create: + notice: 您已弱化%{name}。 + error: 无法弱化%{name}。%{full_message}。 + destroy: + notice: 您取消弱化了%{name}。 + error: 无法取消弱化用户。请再试一次。 notes: index: title: '%{user} 提交或评论的注记' @@ -2817,6 +2880,7 @@ zh-CN: reactivate: 重启 comment_and_resolve: 评论与解决 comment: 评论 + log_in_to_comment: 登录以评论此注记 report_link_html: 如果此注记包含需要被删除的敏感信息,您可以%{link}。 other_problems_resolve: 对于注记的所有其他问题,请通过评论自行解决。 other_problems_resolved: 对于所有其他问题,解决就足够了。 @@ -2903,6 +2967,7 @@ zh-CN: map_data_zoom_in_tooltip: 放大地图以查看数据 queryfeature_tooltip: 查询特征 queryfeature_disabled_tooltip: 放大以查询特征 + embed_html_disabled: HTML 嵌入不适用于此地图图层 changesets: show: comment: 评论 diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml index 5662aa6f8..9388b967c 100644 --- a/config/locales/zh-HK.yml +++ b/config/locales/zh-HK.yml @@ -1078,16 +1078,17 @@ zh-HK: outbox: title: 寄件匣 passwords: - lost_password: + new: title: 忘記密碼 heading: 忘記密碼? email address: 電郵地址: new password button: 重設密碼 help_text: 輸入您註冊時用的電郵地址,我們會將可用於重設密碼的連結發送至該地址。 - reset_password: + edit: title: 重設密碼 heading: 重設%{user}的密碼 reset: 重設密碼 + update: flash changed: 您的密碼已經變更。 sessions: new: @@ -1105,18 +1106,8 @@ zh-HK: no_iframe_support: 閣下的瀏覽器並未支援此功能所必需的HTML iframes。 export: title: 匯出 - area_to_export: 要匯出的範圍 manually_select: 手動選擇另一範圍 - format_to_export: 匯出格式 - map_image: 地圖影像 (顯示標準圖層) - embeddable_html: 可內嵌的HTML licence: 授權 - options: 選項 - format: 格式 - scale: 比例 - max: 最大 - latitude: 緯度: - longitude: 經度: help: beginners_guide: description: 由社群編修的新手指南。 @@ -1139,14 +1130,8 @@ zh-HK: motorway: 高速公路 rail: 鐵路 subway: 地鐵 - tram: - - 輕便鐵路 - - 電車 - runway: - - 機場跑道 - apron: - - 機場停機坪 - - 客運大樓 + runway: 機場跑道 + apron: 機場停機坪 admin: 行政邊界 forest: 森林 golf: 哥爾夫球場 @@ -1154,18 +1139,16 @@ zh-HK: resident: 住宅區 industrial: 工業區 commercial: 商業區 - lake: - - 湖泊 - - 水庫 + lake: 湖泊 + reservoir: 水庫 brownfield: 棕地 cemetery: 墓地 pitch: 運動場 centre: 運動中心 reserve: 自然保護區 military: 軍事區 - school: - - 學校 - - 大學 + school: 學校 + university: 大學 station: 火車站 bicycle_shop: 單車店 bicycle_parking: 單車停泊處 diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index b1b8cee59..1e0ced92b 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -87,6 +87,9 @@ zh-TW: messages: invalid_email_address: 似乎不是有效的電子郵件信箱地址。 email_address_not_routable: 不可繞送 + models: + user_mute: + is_already_muted: 已忽視 models: acl: 存取控制清單 changeset: 變更集 @@ -921,7 +924,7 @@ zh-TW: motorway_link: 高速公路聯絡道 passing_place: 避車彎 path: 小徑 - pedestrian: 行人路 + pedestrian: 人行道 platform: 月台 primary: 一級道路 primary_link: 一級道路聯絡道 @@ -1466,9 +1469,9 @@ zh-TW: one: '%{count} 份回報' other: '%{count} 份回報' no_reports: 沒有回報 - report_created_at: 首次回報是在 %{datetime} - last_resolved_at: 最後回報是在 %{datetime} - last_updated_at: 最後更新是由 %{displayname} 在 %{datetime} + report_created_at_html: 首次回報是在 %{datetime} + last_resolved_at_html: 最後回報是在 %{datetime} + last_updated_at_html: 最後更新是由 %{displayname} 在 %{datetime} resolve: 解決 ignore: 忽略 reopen: 重新開啟 @@ -1614,6 +1617,7 @@ zh-TW: loaded: one: 成功載入 %{count} 個可能軌跡點中的 %{trace_points} 個。 other: 成功載入 %{count} 個可能軌跡點中的 %{trace_points} 個。 + all_your_traces_html: 您可以在 %{url} 找到所有您上傳成功的 GPX 軌跡。 subject: '[OpenStreetMap] GPX 匯入成功' signup_confirm: subject: '[OpenStreetMap] 歡迎加入 OpenStreetMap' @@ -1693,7 +1697,7 @@ zh-TW: press confirm button: 按下確認按鈕以確認您的新電子郵件地址。 button: 確認 success: 已確認您變更的電子郵件地址! - failure: 電子郵件地址已使用此密鑰確認過。 + failure: 電子郵件地址已使用此權杖確認過。 unknown_token: 確認碼已經過期或不存在。 resend_success_flash: confirmation_sent: 我們已發送新的確認通知到 %{email},一旦您確認您的帳號後,就能取得製圖。 @@ -1701,8 +1705,6 @@ zh-TW: messages: inbox: title: 收件匣 - my_inbox: 我的收件匣 - my_outbox: 我的寄件匣 messages: 您有 %{new_messages} 及 %{old_messages}。 new_messages: one: '%{count} 項新訊息' @@ -1710,16 +1712,20 @@ zh-TW: old_messages: one: '%{count} 項舊訊息' other: '%{count} 項舊訊息' + no_messages_yet_html: 您還沒有訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看? + people_mapping_nearby: 在附近製圖的人 + messages_table: from: 寄件者 + to: 收件者 subject: 主旨 date: 日期 - no_messages_yet_html: 您還沒有訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看? - people_mapping_nearby: 在附近製圖的人 + actions: 操作 message_summary: unread_button: 標記為未讀 read_button: 標記為已讀 reply_button: 回覆 destroy_button: 刪除 + unmute_button: 移至收件匣 new: title: 寄出訊息 send_message_to_html: 寄出新訊息給 %{name} @@ -1733,16 +1739,17 @@ zh-TW: body: 抱歉,並沒有這個 id 的訊息。 outbox: title: 寄件匣 - my_inbox: 我的收件匣 - my_outbox: 我的寄件匣 + actions: 操作 messages: one: 您有 %{count} 項已寄訊息 other: 您有 %{count} 項已寄訊息 - to: 收件者 - subject: 主旨 - date: 日期 no_sent_messages_html: 您還沒有已寄訊息。何不跟一些 %{people_mapping_nearby_link} 接觸看看? people_mapping_nearby: 附近製作地圖的使用者 + muted: + title: 已忽視訊息 + messages: + one: 1 條忽視訊息 + other: 您有 %{count} 條忽視訊息 reply: wrong_user: 您已經以 "%{user}" 的身份登入,但是您想要回覆的訊息並非寄給這個使用者。請以正確的使用者身份登入以回覆這個訊息。 show: @@ -1754,26 +1761,36 @@ zh-TW: wrong_user: 您已經以 "%{user}" 的身份登入,但是您想要閱讀的訊息並非寄給那個使用者。請以正確的使用者身份登入以閱讀它。 sent_message_summary: destroy_button: 刪除 + heading: + my_inbox: 我的收件匣 + my_outbox: 我的寄件匣 + muted_messages: 已忽視訊息 mark: as_read: 訊息標記為已讀 as_unread: 訊息標記為未讀 + unmute: + notice: 訊息已移至收件匣 + error: 無法將訊息移至收件匣。 destroy: destroyed: 訊息已刪除 passwords: - lost_password: + new: title: 遺失密碼 heading: 忘記密碼? email address: 電子郵件地址: new password button: 重設密碼 help_text: 輸入您的電子郵件地址來註冊,我們會將連結送至該地址,而您可以用它來重設密碼。 + create: notice email on way: 很遺憾您忘了它 :-( 不過讓您可以重設它的電子郵件已經寄出,您待會便可重設。 notice email cannot find: 很抱歉,找不到該電子郵件地址。 - reset_password: + edit: title: 重設密碼 heading: 重設 %{user} 的密碼 reset: 重設密碼 + flash token bad: 找不到該權杖,可能要檢查一下 URL? + update: flash changed: 您的密碼已經變更。 - flash token bad: 找不到該密鑰,可能要檢查一下 URL? + flash token bad: 找不到該權杖,可能要檢查一下 URL? preferences: show: title: 我的偏好設定 @@ -1876,6 +1893,7 @@ zh-TW: image: 圖片 alt: 替代文字 url: 網址 + codeblock: 代碼區塊 richtext_field: edit: 編輯 preview: 預覽 @@ -2048,12 +2066,7 @@ zh-TW: no_iframe_support: 您的瀏覽器不支援 HTML 嵌入式框架,這是這項功能所必要的。 export: title: 匯出 - area_to_export: 要匯出的區域 manually_select: 手動選擇不同的區域 - format_to_export: 要匯出的格式 - osm_xml_data: OpenStreetMap XML 資料 - map_image: 地圖影像 (顯示標準圖層) - embeddable_html: 內嵌式 HTML licence: 授權 licence_details_html: 開放街圖資料是以 %{odbl_link} (開放資料庫授權, Open Database License) 來授權 @@ -2073,17 +2086,6 @@ zh-TW: other: title: 其他來源 description: OpenStreetMap wiki 上列出的其他來源 - options: 選項 - format: 格式 - scale: 比例 - max: 最大 - image_size: 圖片大小 - zoom: 縮放 - add_marker: 在地圖加上標記 - latitude: 緯度: - longitude: 經度: - output: 輸出 - paste_html: 貼上 HTML 以於網站內嵌 export_button: 匯出 fixthemap: title: 回報問題/改進地圖 @@ -2169,67 +2171,83 @@ zh-TW: primary: 一級道路 secondary: 二級道路 unclassified: 無編制道路 + pedestrian: 人行道 track: 產業道路 bridleway: 馬道 cycleway: 自行車道 cycleway_national: 國家自行車道 cycleway_regional: 區域自行車道 cycleway_local: 地區自行車道 + cycleway_mtb: 登山車路徑 footway: 步道 rail: 鐵路 + train: 列車 subway: 地下鐵 - tram: - - 輕軌 - - 電車軌道 - cable: - - 大型纜車 - - 升降吊椅 - runway: - - 機場跑道 - - 滑行道 - apron: - - 機場停機坪 - - 航廈 + ferry: 渡輪 + light_rail: 輕軌 + tram: 路面電車 + trolleybus: 無軌電車 + bus: 公車 + cable_car: 大型纜車 + chair_lift: 升降吊椅 + runway: 機場跑道 + taxiway: 滑行道 + apron: 機場停機坪 admin: 行政區邊界 + capital: 首都 + city: 城市 + orchard: 果園 + vineyard: 葡萄園 forest: 森林 - wood: 樹木 + wood: 森林 + farmland: 農地 + grass: 草坪 + meadow: 牧草地 + bare_rock: 裸岩 + sand: 沙地 golf: 高爾夫球場 park: 公園 + common: 共有地 + built_up: 組成面積 resident: 住宅區 - common: - - 共有地 - - 野草地 - - 花園 retail: 商店區 industrial: 工業區 commercial: 商業區 heathland: 石楠荒地 - lake: - - 湖泊 - - 水庫 + scrubland: 灌木叢林地 + lake: 湖泊 + reservoir: 水庫 + intermittent_water: 間歇性水體 + glacier: 冰河 + reef: 礁 + wetland: 濕地 farm: 農田 brownfield: 低污染再利用地 cemetery: 公墓 allotments: 社區農園 pitch: 運動場 centre: 運動中心 + beach: 海灘 reserve: 自然保護區 military: 軍事區 - school: - - 學校 - - 大學 + school: 學校;大學 + university: 大學 + hospital: 醫院 building: 重要建築 station: 鐵路車站 - summit: - - 頂峰 - - 山峰 + summit: 頂峰 + peak: 山峰 tunnel: 虛線邊框 = 隧道 bridge: 黑線邊框 = 橋樑 private: 私人進出 destination: 目的地進出 construction: 建造中道路 + bus_stop: 公車站 + stop: 停車站 bicycle_shop: 自行車店 + bicycle_rental: 自行車出租 bicycle_parking: 自行車停車場 + bicycle_parking_small: 小型自行車停車場 toilets: 廁所 welcome: title: 歡迎! @@ -2401,6 +2419,7 @@ zh-TW: oauth1_settings: OAuth 1 設定 oauth2_applications: OAuth 2 應用程式 oauth2_authorizations: OAuth 2 授權 + muted_users: 已忽視使用者 oauth: authorize: title: 授權使用您的帳號 @@ -2435,6 +2454,7 @@ zh-TW: read_gpx: 讀取私人 GPS 軌跡 write_gpx: 上傳 GPS 軌跡 write_notes: 修改註記 + write_redactions: 編寫地圖資料 read_email: 讀取使用者電子郵件位址 skip_authorization: 自動核准申請 oauth_clients: @@ -2457,7 +2477,7 @@ zh-TW: index: title: 我的 OAuth 詳細資料 my_tokens: 我授權的應用程式 - list_tokens: 下列密鑰已核發給您名下的應用程式: + list_tokens: 下列權杖已核發給您名下的應用程式: application: 應用程式名稱 issued_at: 已發於 revoke: 撤銷! @@ -2584,6 +2604,8 @@ zh-TW: my_dashboard: 我的功能面板 blocks on me: 對我的封鎖 blocks by me: 我所設的封鎖 + create_mute: 忽視這名使用者 + destroy_mute: 取消忽視這名使用者 edit_profile: 編輯個人資料 send message: 傳送訊息 diary: 日記 @@ -2615,6 +2637,7 @@ zh-TW: importer: 撤銷匯入權限 block_history: 已封鎖 moderator_history: 給予封鎖 + revoke_all_blocks: 撤銷所有封鎖 comments: 評論 create_block: 封鎖這位使用者 activate_user: 解除這位使用者的封鎖狀態 @@ -2712,6 +2735,16 @@ zh-TW: confirm: 你確定要撤銷這項封鎖? revoke: 撤銷! flash: 這項封鎖已被撤銷。 + 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: 生效直至這個使用者登入為止。 @@ -2769,6 +2802,28 @@ zh-TW: showing_page: 第 %{page} 頁 next: 下一頁 » previous: « 上一頁 + user_mutes: + index: + title: 已忽視使用者 + my_muted_users: 我忽視的使用者 + you_have_muted_n_users: + one: 您已忽視 1 名使用者 + other: 您已忽視 %{count} 名使用者 + user_mute_explainer: 已忽視使用者的訊息會移至單獨的收件匣中,您將不會收到電子郵件通知。 + user_mute_admins_and_moderators: 您可以忽視管理員和仲裁員,但仍會收到他們的訊息通知。 + table: + thead: + muted_user: 已忽視使用者 + actions: 操作 + tbody: + unmute: 取消忽視 + send_message: 寄送訊息 + create: + notice: 您已忽視%{name}。 + error: 無法忽視%{name}。%{full_message}。 + destroy: + notice: 您取消了忽視%{name}。 + error: 無法忽視使用者。請再試一次。 notes: index: title: 由 %{user} 送出或評論的註記 @@ -2804,6 +2859,7 @@ zh-TW: reactivate: 重新開啟 comment_and_resolve: 評論並解決 comment: 評論 + log_in_to_comment: 登入來評論此註記 report_link_html: 如果此註記含有需要移除的敏感資訊,您可以%{link}。 other_problems_resolve: 對於註記的所有其他問題,您可以依據評論內容來自行處理。 other_problems_resolved: 對於其他類型回報,解決已經足夠了。 diff --git a/config/openlayers.cfg b/config/openlayers.cfg deleted file mode 100644 index 6f6b778a8..000000000 --- a/config/openlayers.cfg +++ /dev/null @@ -1,95 +0,0 @@ -[first] - -[last] - -[include] -OpenLayers/Map.js -OpenLayers/Control/ArgParser.js -OpenLayers/Control/Attribution.js -OpenLayers/Control/DragFeature.js -OpenLayers/Control/DrawFeature.js -OpenLayers/Control/LayerSwitcher.js -OpenLayers/Control/Navigation.js -OpenLayers/Control/PanZoomBar.js -OpenLayers/Control/Zoom.js -OpenLayers/Control/PinchZoom.js -OpenLayers/Control/ScaleLine.js -OpenLayers/Control/SelectFeature.js -OpenLayers/Control/TransformFeature.js -OpenLayers/Layer.js -OpenLayers/Layer/GML.js -OpenLayers/Layer/Markers.js -OpenLayers/Layer/SphericalMercator.js -OpenLayers/Layer/OSM.js -OpenLayers/Layer/Vector.js -OpenLayers/Tile.js -OpenLayers/Tile/Image.js -OpenLayers/Feature/Vector.js -OpenLayers/Strategy/Fixed.js -OpenLayers/Strategy/BBOX.js -OpenLayers/Protocol/HTTP.js -OpenLayers/Format/QueryStringFilter.js -OpenLayers/Format/GeoJSON.js -OpenLayers/Format/OSM.js -OpenLayers/Geometry/Point.js -OpenLayers/Geometry/LinearRing.js -OpenLayers/Handler/Point.js -OpenLayers/Handler/RegularPolygon.js -OpenLayers/Protocol/HTTP.js -OpenLayers/Renderer.js -OpenLayers/Renderer/Canvas.js -OpenLayers/Renderer/SVG.js -OpenLayers/Renderer/VML.js -OpenLayers/Rule.js -OpenLayers/Icon.js -OpenLayers/Marker.js -OpenLayers/Popup/FramedCloud.js -OpenLayers/Projection.js -OpenLayers/Console.js -OpenLayers/Lang.js -OpenLayers/Lang/ar.js -OpenLayers/Lang/be-tarask.js -OpenLayers/Lang/bg.js -OpenLayers/Lang/br.js -OpenLayers/Lang/ca.js -OpenLayers/Lang/cs-CZ.js -OpenLayers/Lang/da-DK.js -OpenLayers/Lang/de.js -OpenLayers/Lang/el.js -OpenLayers/Lang/en-CA.js -OpenLayers/Lang/en.js -OpenLayers/Lang/es.js -OpenLayers/Lang/fi.js -OpenLayers/Lang/fr.js -OpenLayers/Lang/fur.js -OpenLayers/Lang/gl.js -OpenLayers/Lang/gsw.js -OpenLayers/Lang/hr.js -OpenLayers/Lang/hsb.js -OpenLayers/Lang/hu.js -OpenLayers/Lang/ia.js -OpenLayers/Lang/id.js -OpenLayers/Lang/io.js -OpenLayers/Lang/is.js -OpenLayers/Lang/it.js -OpenLayers/Lang/ja.js -OpenLayers/Lang/km.js -OpenLayers/Lang/ksh.js -OpenLayers/Lang/lt.js -OpenLayers/Lang/nb.js -OpenLayers/Lang/nds.js -OpenLayers/Lang/nl.js -OpenLayers/Lang/nn.js -OpenLayers/Lang/oc.js -OpenLayers/Lang/pl.js -OpenLayers/Lang/pt-BR.js -OpenLayers/Lang/pt.js -OpenLayers/Lang/ru.js -OpenLayers/Lang/sk.js -OpenLayers/Lang/sv-SE.js -OpenLayers/Lang/te.js -OpenLayers/Lang/vi.js -OpenLayers/Lang/zh-CN.js -OpenLayers/Lang/zh-TW.js - -[exclude] diff --git a/config/routes.rb b/config/routes.rb index 2b67e360e..09afe8fd9 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -111,10 +111,13 @@ OpenStreetMap::Application.routes.draw do # Data browsing get "/way/:id" => "browse#way", :id => /\d+/, :as => :way get "/way/:id/history" => "browse#way_history", :id => /\d+/, :as => :way_history + resources :old_ways, :path => "/way/:id/history", :id => /\d+/, :version => /\d+/, :param => :version, :only => :show get "/node/:id" => "browse#node", :id => /\d+/, :as => :node get "/node/:id/history" => "browse#node_history", :id => /\d+/, :as => :node_history + resources :old_nodes, :path => "/node/:id/history", :id => /\d+/, :version => /\d+/, :param => :version, :only => :show get "/relation/:id" => "browse#relation", :id => /\d+/, :as => :relation get "/relation/:id/history" => "browse#relation_history", :id => /\d+/, :as => :relation_history + resources :old_relations, :path => "/relation/:id/history", :id => /\d+/, :version => /\d+/, :param => :version, :only => :show get "/changeset/:id" => "browse#changeset", :as => :changeset, :id => /\d+/ get "/changeset/:id/comments/feed" => "changeset_comments#index", :as => :changeset_comments_feed, :id => /\d*/, :defaults => { :format => "rss" } resources :notes, :path => "note", :only => [:show, :new] @@ -282,9 +285,12 @@ OpenStreetMap::Application.routes.draw do # messages resources :messages, :only => [:create, :show, :destroy] do post :mark + patch :unmute + match :reply, :via => [:get, :post] collection do get :inbox + get :muted get :outbox end end @@ -293,6 +299,12 @@ OpenStreetMap::Application.routes.draw do get "/message/new/:display_name" => "messages#new", :as => "new_message" get "/message/read/:message_id", :to => redirect(:path => "/messages/%{message_id}") + # muting users + scope "/user/:display_name" do + resource :user_mute, :only => [:create, :destroy], :path => "mute" + end + resources :user_mutes, :only => [:index] + # oauth admin pages (i.e: for setting up new clients, etc...) scope "/user/:display_name" do resources :oauth_clients @@ -312,6 +324,7 @@ OpenStreetMap::Application.routes.draw do get "/blocks/new/:display_name" => "user_blocks#new", :as => "new_user_block" resources :user_blocks match "/blocks/:id/revoke" => "user_blocks#revoke", :via => [:get, :post], :as => "revoke_user_block" + match "/user/:display_name/blocks/revoke_all" => "user_blocks#revoke_all", :via => [:get, :post], :as => "revoke_all_user_blocks" # issues and reports resources :issues do diff --git a/config/settings/test.yml b/config/settings/test.yml index 0cfa74cd7..fe5aa5d89 100644 --- a/config/settings/test.yml +++ b/config/settings/test.yml @@ -20,8 +20,8 @@ trace_file_storage: "test" trace_image_storage: "test" trace_icon_storage: "test" # Lower some rate limits for testing -max_changeset_comments_per_hour: 30 -moderator_changeset_comments_per_hour: 60 +max_changeset_comments_per_hour: 10 +moderator_changeset_comments_per_hour: 15 # Private key for signing id_tokens doorkeeper_signing_key: | -----BEGIN PRIVATE KEY----- diff --git a/db/migrate/20231010201451_create_user_mutes.rb b/db/migrate/20231010201451_create_user_mutes.rb new file mode 100644 index 000000000..8cb6ff87e --- /dev/null +++ b/db/migrate/20231010201451_create_user_mutes.rb @@ -0,0 +1,15 @@ +class CreateUserMutes < ActiveRecord::Migration[7.0] + def change + create_table :user_mutes do |t| + t.references :owner, :null => false, :index => false + t.references :subject, :null => false, :index => false + + t.timestamps + + t.foreign_key :users, :column => :owner_id + t.foreign_key :users, :column => :subject_id + + t.index [:owner_id, :subject_id], :unique => true + end + end +end diff --git a/db/migrate/20231010203028_add_muted_flag_to_messages.rb b/db/migrate/20231010203028_add_muted_flag_to_messages.rb new file mode 100644 index 000000000..e517aea86 --- /dev/null +++ b/db/migrate/20231010203028_add_muted_flag_to_messages.rb @@ -0,0 +1,5 @@ +class AddMutedFlagToMessages < ActiveRecord::Migration[7.0] + def change + add_column :messages, :muted, :boolean, :default => false, :null => false + end +end diff --git a/db/migrate/20231213182102_add_canonical_user_index.rb b/db/migrate/20231213182102_add_canonical_user_index.rb new file mode 100644 index 000000000..905fb3248 --- /dev/null +++ b/db/migrate/20231213182102_add_canonical_user_index.rb @@ -0,0 +1,7 @@ +class AddCanonicalUserIndex < ActiveRecord::Migration[7.1] + disable_ddl_transaction! + + def change + add_index :users, "LOWER(NORMALIZE(display_name, NFKC))", :name => "users_display_name_canonical_idx", :algorithm => :concurrently + end +end diff --git a/db/migrate/20240117185445_drop_lowercase_user_index.rb b/db/migrate/20240117185445_drop_lowercase_user_index.rb new file mode 100644 index 000000000..82bd5ece7 --- /dev/null +++ b/db/migrate/20240117185445_drop_lowercase_user_index.rb @@ -0,0 +1,5 @@ +class DropLowercaseUserIndex < ActiveRecord::Migration[7.1] + def change + remove_index :users, "LOWER(display_name)", :name => "users_display_name_lower_idx" + end +end diff --git a/db/structure.sql b/db/structure.sql index ba60918f0..4998bc694 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -951,7 +951,8 @@ CREATE TABLE public.messages ( to_user_id bigint NOT NULL, to_user_visible boolean DEFAULT true NOT NULL, from_user_visible boolean DEFAULT true NOT NULL, - body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL + body_format public.format_enum DEFAULT 'markdown'::public.format_enum NOT NULL, + muted boolean DEFAULT false NOT NULL ); @@ -1454,6 +1455,38 @@ CREATE SEQUENCE public.user_blocks_id_seq ALTER SEQUENCE public.user_blocks_id_seq OWNED BY public.user_blocks.id; +-- +-- Name: user_mutes; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.user_mutes ( + id bigint NOT NULL, + owner_id bigint NOT NULL, + subject_id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: user_mutes_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.user_mutes_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: user_mutes_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.user_mutes_id_seq OWNED BY public.user_mutes.id; + + -- -- Name: user_preferences; Type: TABLE; Schema: public; Owner: - -- @@ -1835,6 +1868,13 @@ ALTER TABLE ONLY public.reports ALTER COLUMN id SET DEFAULT nextval('public.repo ALTER TABLE ONLY public.user_blocks ALTER COLUMN id SET DEFAULT nextval('public.user_blocks_id_seq'::regclass); +-- +-- Name: user_mutes id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.user_mutes ALTER COLUMN id SET DEFAULT nextval('public.user_mutes_id_seq'::regclass); + + -- -- Name: user_roles id; Type: DEFAULT; Schema: public; Owner: - -- @@ -2216,6 +2256,14 @@ ALTER TABLE ONLY public.user_blocks ADD CONSTRAINT user_blocks_pkey PRIMARY KEY (id); +-- +-- Name: user_mutes user_mutes_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.user_mutes + ADD CONSTRAINT user_mutes_pkey PRIMARY KEY (id); + + -- -- Name: user_preferences user_preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: - -- @@ -2734,6 +2782,13 @@ CREATE INDEX index_reports_on_user_id ON public.reports USING btree (user_id); CREATE INDEX index_user_blocks_on_user_id ON public.user_blocks USING btree (user_id); +-- +-- Name: index_user_mutes_on_owner_id_and_subject_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_user_mutes_on_owner_id_and_subject_id ON public.user_mutes USING btree (owner_id, subject_id); + + -- -- Name: messages_from_user_id_idx; Type: INDEX; Schema: public; Owner: - -- @@ -2868,17 +2923,17 @@ CREATE UNIQUE INDEX users_auth_idx ON public.users USING btree (auth_provider, a -- --- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: - +-- Name: users_display_name_canonical_idx; Type: INDEX; Schema: public; Owner: - -- -CREATE UNIQUE INDEX users_display_name_idx ON public.users USING btree (display_name); +CREATE INDEX users_display_name_canonical_idx ON public.users USING btree (lower(NORMALIZE(display_name, NFKC))); -- --- Name: users_display_name_lower_idx; Type: INDEX; Schema: public; Owner: - +-- Name: users_display_name_idx; Type: INDEX; Schema: public; Owner: - -- -CREATE INDEX users_display_name_lower_idx ON public.users USING btree (lower((display_name)::text)); +CREATE UNIQUE INDEX users_display_name_idx ON public.users USING btree (display_name); -- @@ -3107,6 +3162,14 @@ ALTER TABLE ONLY public.oauth_access_grants ADD CONSTRAINT fk_rails_330c32d8d9 FOREIGN KEY (resource_owner_id) REFERENCES public.users(id) NOT VALID; +-- +-- Name: user_mutes fk_rails_591dad3359; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.user_mutes + ADD CONSTRAINT fk_rails_591dad3359 FOREIGN KEY (owner_id) REFERENCES public.users(id); + + -- -- Name: oauth_access_tokens fk_rails_732cb83ab7; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -3155,6 +3218,14 @@ ALTER TABLE ONLY public.oauth_applications ADD CONSTRAINT fk_rails_cc886e315a FOREIGN KEY (owner_id) REFERENCES public.users(id) NOT VALID; +-- +-- Name: user_mutes fk_rails_e9dd4fb6c3; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.user_mutes + ADD CONSTRAINT fk_rails_e9dd4fb6c3 FOREIGN KEY (subject_id) REFERENCES public.users(id); + + -- -- Name: oauth_access_tokens fk_rails_ee63f25419; Type: FK CONSTRAINT; Schema: public; Owner: - -- @@ -3510,10 +3581,14 @@ INSERT INTO "schema_migrations" (version) VALUES ('23'), ('22'), ('21'), +('20240117185445'), +('20231213182102'), ('20231206141457'), ('20231117170422'), ('20231101222146'), ('20231029151516'), +('20231010203028'), +('20231010201451'), ('20231010194809'), ('20231007141103'), ('20230830115220'), diff --git a/lib/oauth.rb b/lib/oauth.rb index 0456c0873..88db38eb4 100644 --- a/lib/oauth.rb +++ b/lib/oauth.rb @@ -1,7 +1,8 @@ module Oauth SCOPES = %w[read_prefs write_prefs write_diary write_api read_gpx write_gpx write_notes].freeze PRIVILEGED_SCOPES = %w[read_email skip_authorization].freeze - OAUTH2_SCOPES = %w[openid].freeze + MODERATOR_SCOPES = %w[write_redactions].freeze + OAUTH2_SCOPES = %w[write_redactions openid].freeze class Scope attr_reader :name diff --git a/script/deliver-message b/script/deliver-message index 28d755b24..81de3ef58 100755 --- a/script/deliver-message +++ b/script/deliver-message @@ -33,6 +33,6 @@ mail = Mail.new($stdin.read message = Message.from_mail(mail, from, to) message.save! -UserMailer.message_notification(message).deliver +UserMailer.message_notification(message).deliver if message.notify_recipient? exit 0 diff --git a/test/application_system_test_case.rb b/test/application_system_test_case.rb index f6546a550..b170e74b1 100644 --- a/test/application_system_test_case.rb +++ b/test/application_system_test_case.rb @@ -10,4 +10,21 @@ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase driven_by :selenium, :using => :headless_firefox do |options| options.add_preference("intl.accept_languages", "en") end + + def before_setup + super + osm_website_app = create(:oauth_application, :name => "OpenStreetMap Web Site", :scopes => "write_api write_notes") + Settings.oauth_application = osm_website_app.uid + end + + def after_teardown + Settings.reload! + super + end + + private + + def within_sidebar(&block) + within "#sidebar_content", &block + end end diff --git a/test/controllers/api/notes_controller_test.rb b/test/controllers/api/notes_controller_test.rb index 874ac3ccd..303bcea91 100644 --- a/test/controllers/api/notes_controller_test.rb +++ b/test/controllers/api/notes_controller_test.rb @@ -345,7 +345,7 @@ module Api end assert_response :gone - closed_note_with_comment = create(:note_with_comments, :status => "closed", :closed_at => Time.now.utc) + closed_note_with_comment = create(:note_with_comments, :closed) assert_no_difference "NoteComment.count" do post comment_api_note_path(:id => closed_note_with_comment, :text => "This is an additional comment"), :headers => auth_header @@ -406,14 +406,14 @@ module Api post close_api_note_path(:id => hidden_note_with_comment), :headers => auth_header assert_response :gone - closed_note_with_comment = create(:note_with_comments, :status => "closed", :closed_at => Time.now.utc) + closed_note_with_comment = create(:note_with_comments, :closed) post close_api_note_path(:id => closed_note_with_comment), :headers => auth_header assert_response :conflict end def test_reopen_success - closed_note_with_comment = create(:note_with_comments, :status => "closed", :closed_at => Time.now.utc) + closed_note_with_comment = create(:note_with_comments, :closed) user = create(:user) post reopen_api_note_path(:id => closed_note_with_comment, :text => "This is a reopen comment", :format => "json") @@ -428,7 +428,7 @@ module Api assert_equal "Feature", js["type"] assert_equal closed_note_with_comment.id, js["properties"]["id"] assert_equal "open", js["properties"]["status"] - assert_equal 2, js["properties"]["comments"].count + assert_equal 3, js["properties"]["comments"].count assert_equal "reopened", js["properties"]["comments"].last["action"] assert_equal "This is a reopen comment", js["properties"]["comments"].last["text"] assert_equal user.display_name, js["properties"]["comments"].last["user"] @@ -440,7 +440,7 @@ module Api assert_equal "Feature", js["type"] assert_equal closed_note_with_comment.id, js["properties"]["id"] assert_equal "open", js["properties"]["status"] - assert_equal 2, js["properties"]["comments"].count + assert_equal 3, js["properties"]["comments"].count assert_equal "reopened", js["properties"]["comments"].last["action"] assert_equal "This is a reopen comment", js["properties"]["comments"].last["text"] assert_equal user.display_name, js["properties"]["comments"].last["user"] @@ -752,8 +752,8 @@ module Api end def test_index_closed - create(:note_with_comments, :status => "closed", :closed_at => Time.now.utc - 5.days) - create(:note_with_comments, :status => "closed", :closed_at => Time.now.utc - 100.days) + create(:note_with_comments, :closed, :closed_at => Time.now.utc - 5.days) + create(:note_with_comments, :closed, :closed_at => Time.now.utc - 100.days) create(:note_with_comments, :status => "hidden") create(:note_with_comments) diff --git a/test/controllers/api/old_nodes_controller_test.rb b/test/controllers/api/old_nodes_controller_test.rb index a87f30258..737f11c73 100644 --- a/test/controllers/api/old_nodes_controller_test.rb +++ b/test/controllers/api/old_nodes_controller_test.rb @@ -238,6 +238,43 @@ module Api assert_response :bad_request, "shouldn't be OK to redact current version as moderator." end + def test_redact_node_by_regular_with_read_prefs_scope + auth_header = create_bearer_auth_header(create(:user), %w[read_prefs]) + do_redact_redactable_node(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_node_by_regular_with_write_api_scope + auth_header = create_bearer_auth_header(create(:user), %w[write_api]) + do_redact_redactable_node(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_node_by_regular_with_write_redactions_scope + auth_header = create_bearer_auth_header(create(:user), %w[write_redactions]) + do_redact_redactable_node(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_node_by_moderator_with_read_prefs_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[read_prefs]) + do_redact_redactable_node(auth_header) + assert_response :forbidden, "should need to have write_redactions scope to redact." + end + + def test_redact_node_by_moderator_with_write_api_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[write_api]) + do_redact_redactable_node(auth_header) + assert_response :success, "should be OK to redact old version as moderator with write_api scope." + # assert_response :forbidden, "should need to have write_redactions scope to redact." + end + + def test_redact_node_by_moderator_with_write_redactions_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[write_redactions]) + do_redact_redactable_node(auth_header) + assert_response :success, "should be OK to redact old version as moderator with write_redactions scope." + end + ## # test that redacted nodes aren't visible, regardless of # authorisation except as moderator... @@ -395,6 +432,19 @@ module Api private + def create_bearer_auth_header(user, scopes) + token = create(:oauth_access_token, + :resource_owner_id => user.id, + :scopes => scopes) + bearer_authorization_header(token.token) + end + + def do_redact_redactable_node(headers = {}) + node = create(:node, :with_history, :version => 4) + node_v3 = node.old_nodes.find_by(:version => 3) + do_redact_node(node_v3, create(:redaction), headers) + end + def do_redact_node(node, redaction, headers = {}) get node_version_path(:id => node.node_id, :version => node.version), :headers => headers assert_response :success, "should be able to get version #{node.version} of node #{node.node_id}." diff --git a/test/controllers/api/old_relations_controller_test.rb b/test/controllers/api/old_relations_controller_test.rb index d51665b03..ea26e5cb7 100644 --- a/test/controllers/api/old_relations_controller_test.rb +++ b/test/controllers/api/old_relations_controller_test.rb @@ -77,6 +77,43 @@ module Api assert_response :bad_request, "shouldn't be OK to redact current version as moderator." end + def test_redact_relation_by_regular_with_read_prefs_scope + auth_header = create_bearer_auth_header(create(:user), %w[read_prefs]) + do_redact_redactable_relation(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_relation_by_regular_with_write_api_scope + auth_header = create_bearer_auth_header(create(:user), %w[write_api]) + do_redact_redactable_relation(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_relation_by_regular_with_write_redactions_scope + auth_header = create_bearer_auth_header(create(:user), %w[write_redactions]) + do_redact_redactable_relation(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_relation_by_moderator_with_read_prefs_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[read_prefs]) + do_redact_redactable_relation(auth_header) + assert_response :forbidden, "should need to have write_redactions scope to redact." + end + + def test_redact_relation_by_moderator_with_write_api_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[write_api]) + do_redact_redactable_relation(auth_header) + assert_response :success, "should be OK to redact old version as moderator with write_api scope." + # assert_response :forbidden, "should need to have write_redactions scope to redact." + end + + def test_redact_relation_by_moderator_with_write_redactions_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[write_redactions]) + do_redact_redactable_relation(auth_header) + assert_response :success, "should be OK to redact old version as moderator with write_redactions scope." + end + ## # test that redacted relations aren't visible, regardless of # authorisation except as moderator... @@ -278,6 +315,19 @@ module Api end end + def create_bearer_auth_header(user, scopes) + token = create(:oauth_access_token, + :resource_owner_id => user.id, + :scopes => scopes) + bearer_authorization_header(token.token) + end + + def do_redact_redactable_relation(headers = {}) + relation = create(:relation, :with_history, :version => 4) + relation_v3 = relation.old_relations.find_by(:version => 3) + do_redact_relation(relation_v3, create(:redaction), headers) + end + def do_redact_relation(relation, redaction, headers = {}) get relation_version_path(:id => relation.relation_id, :version => relation.version) assert_response :success, "should be able to get version #{relation.version} of relation #{relation.relation_id}." diff --git a/test/controllers/api/old_ways_controller_test.rb b/test/controllers/api/old_ways_controller_test.rb index 6c4eb16a1..4c225fb33 100644 --- a/test/controllers/api/old_ways_controller_test.rb +++ b/test/controllers/api/old_ways_controller_test.rb @@ -118,6 +118,43 @@ module Api assert_response :bad_request, "shouldn't be OK to redact current version as moderator." end + def test_redact_way_by_regular_with_read_prefs_scope + auth_header = create_bearer_auth_header(create(:user), %w[read_prefs]) + do_redact_redactable_way(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_way_by_regular_with_write_api_scope + auth_header = create_bearer_auth_header(create(:user), %w[write_api]) + do_redact_redactable_way(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_way_by_regular_with_write_redactions_scope + auth_header = create_bearer_auth_header(create(:user), %w[write_redactions]) + do_redact_redactable_way(auth_header) + assert_response :forbidden, "should need to be moderator to redact." + end + + def test_redact_way_by_moderator_with_read_prefs_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[read_prefs]) + do_redact_redactable_way(auth_header) + assert_response :forbidden, "should need to have write_redactions scope to redact." + end + + def test_redact_way_by_moderator_with_write_api_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[write_api]) + do_redact_redactable_way(auth_header) + assert_response :success, "should be OK to redact old version as moderator with write_api scope." + # assert_response :forbidden, "should need to have write_redactions scope to redact." + end + + def test_redact_way_by_moderator_with_write_redactions_scope + auth_header = create_bearer_auth_header(create(:moderator_user), %w[write_redactions]) + do_redact_redactable_way(auth_header) + assert_response :success, "should be OK to redact old version as moderator with write_redactions scope." + end + ## # test that redacted ways aren't visible, regardless of # authorisation except as moderator... @@ -318,6 +355,19 @@ module Api end end + def create_bearer_auth_header(user, scopes) + token = create(:oauth_access_token, + :resource_owner_id => user.id, + :scopes => scopes) + bearer_authorization_header(token.token) + end + + def do_redact_redactable_way(headers = {}) + way = create(:way, :with_history, :version => 4) + way_v3 = way.old_ways.find_by(:version => 3) + do_redact_way(way_v3, create(:redaction), headers) + end + def do_redact_way(way, redaction, headers = {}) get way_version_path(:id => way.way_id, :version => way.version) assert_response :success, "should be able to get version #{way.version} of way #{way.way_id}." diff --git a/test/controllers/browse_controller_test.rb b/test/controllers/browse_controller_test.rb index 674a318ed..7df246c57 100644 --- a/test/controllers/browse_controller_test.rb +++ b/test/controllers/browse_controller_test.rb @@ -39,35 +39,93 @@ class BrowseControllerTest < ActionDispatch::IntegrationTest end def test_read_relation - browse_check :relation_path, create(:relation).id, "browse/feature" + relation = create(:relation) + browse_check :relation_path, relation.id, "browse/feature" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1 + end + assert_select ".secondary-actions a[href='#{api_relation_path relation}']", :count => 1 + assert_select ".secondary-actions a[href='#{relation_history_path relation}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_relation_path relation, 1}']", :count => 0 + end + + def test_multiple_version_relation_links + relation = create(:relation, :with_history, :version => 2) + browse_check :relation_path, relation.id, "browse/feature" + 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 end def test_read_relation_history - browse_check :relation_history_path, create(:relation, :with_history).id, "browse/history" + relation = create(:relation, :with_history) + browse_check :relation_history_path, relation.id, "browse/history" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_relation_path relation, 1}']", :text => "1", :count => 1 + end end def test_read_way - browse_check :way_path, create(:way).id, "browse/feature" + way = create(:way) + browse_check :way_path, way.id, "browse/feature" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1 + end + assert_select ".secondary-actions a[href='#{api_way_path way}']", :count => 1 + assert_select ".secondary-actions a[href='#{way_history_path way}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_way_path way, 1}']", :count => 0 + end + + def test_multiple_version_way_links + way = create(:way, :with_history, :version => 2) + browse_check :way_path, way.id, "browse/feature" + 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 end def test_read_way_history - browse_check :way_history_path, create(:way, :with_history).id, "browse/history" + way = create(:way, :with_history) + browse_check :way_history_path, way.id, "browse/history" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_way_path way, 1}']", :text => "1", :count => 1 + end end def test_read_node node = create(:node) browse_check :node_path, node.id, "browse/feature" - assert_select "a[href='#{api_node_path node}']", :count => 1 + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1 + end + assert_select ".secondary-actions a[href='#{api_node_path node}']", :count => 1 + assert_select ".secondary-actions a[href='#{node_history_path node}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_node_path node, 1}']", :count => 0 + end + + def test_multiple_version_node_links + node = create(:node, :with_history, :version => 2) + browse_check :node_path, node.id, "browse/feature" + 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 end def test_read_deleted_node node = create(:node, :visible => false) browse_check :node_path, node.id, "browse/feature" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1 + end assert_select "a[href='#{api_node_path node}']", :count => 0 end def test_read_node_history - browse_check :node_history_path, create(:node, :with_history).id, "browse/history" + node = create(:node, :with_history) + browse_check :node_history_path, node.id, "browse/history" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_node_path node, 1}']", :text => "1", :count => 1 + end end def test_read_changeset diff --git a/test/controllers/notes_controller_test.rb b/test/controllers/notes_controller_test.rb index 5cffbd702..b2f14a127 100644 --- a/test/controllers/notes_controller_test.rb +++ b/test/controllers/notes_controller_test.rb @@ -144,9 +144,7 @@ class NotesControllerTest < ActionDispatch::IntegrationTest def test_read_closed_note user = create(:user) - closed_note = create(:note_with_comments, :status => "closed", :closed_at => Time.now.utc, :comments_count => 2) do |note| - create(:note_comment, :event => "closed", :note => note, :author => user) - end + closed_note = create(:note_with_comments, :closed, :closed_by => user, :comments_count => 2) browse_check :note_path, closed_note.id, "notes/show" assert_select "div.note-comments ul li", :count => 2 diff --git a/test/controllers/old_nodes_controller_test.rb b/test/controllers/old_nodes_controller_test.rb new file mode 100644 index 000000000..3f2958bd3 --- /dev/null +++ b/test/controllers/old_nodes_controller_test.rb @@ -0,0 +1,72 @@ +require "test_helper" + +class OldNodesControllerTest < ActionDispatch::IntegrationTest + def test_routes + assert_routing( + { :path => "/node/1/history/2", :method => :get }, + { :controller => "old_nodes", :action => "show", :id => "1", :version => "2" } + ) + end + + def test_visible_with_one_version + node = create(:node, :with_history) + get old_node_path(node, 1) + assert_response :success + assert_template "old_nodes/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_node_path node, 1}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{node_version_path node, 1}']", :count => 1 + assert_select ".secondary-actions a[href='#{node_path node}']", :count => 1 + assert_select ".secondary-actions a[href='#{node_history_path node}']", :count => 1 + end + + def test_visible_with_two_versions + node = create(:node, :with_history, :version => 2) + get old_node_path(node, 1) + assert_response :success + assert_template "old_nodes/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_node_path node, 1}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{node_version_path node, 1}']", :count => 1 + assert_select ".secondary-actions a[href='#{node_path node}']", :count => 1 + assert_select ".secondary-actions a[href='#{node_history_path node}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_node_path node, 2}']", :count => 1 + + get old_node_path(node, 2) + assert_response :success + assert_template "old_nodes/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_node_path node, 2}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{node_version_path node, 2}']", :count => 1 + assert_select ".secondary-actions a[href='#{node_path node}']", :count => 1 + 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 + end + + def test_redacted + node = create(:node, :with_history, :deleted, :version => 2) + node_v1 = node.old_nodes.find_by(:version => 1) + node_v1.redact!(create(:redaction)) + get old_node_path(node, 1) + assert_response :success + assert_template "old_nodes/show" + assert_template :layout => "map" + assert_select ".secondary-actions a[href='#{node_path node}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_node_path node, 1}']", :count => 0 + assert_select ".secondary-actions a[href='#{node_version_path node, 1}']", :count => 0 + end + + def test_not_found + get old_node_path(0, 0) + assert_response :not_found + assert_template "old_nodes/not_found" + assert_template :layout => "map" + assert_select "#sidebar_content", /node #0 version 0 could not be found/ + end +end diff --git a/test/controllers/old_relations_controller_test.rb b/test/controllers/old_relations_controller_test.rb new file mode 100644 index 000000000..311e5958a --- /dev/null +++ b/test/controllers/old_relations_controller_test.rb @@ -0,0 +1,81 @@ +require "test_helper" + +class OldRelationsControllerTest < ActionDispatch::IntegrationTest + def test_routes + assert_routing( + { :path => "/relation/1/history/2", :method => :get }, + { :controller => "old_relations", :action => "show", :id => "1", :version => "2" } + ) + end + + def test_visible_with_one_version + relation = create(:relation, :with_history) + get old_relation_path(relation, 1) + assert_response :success + assert_template "old_relations/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_relation_path relation, 1}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{relation_version_path relation, 1}']", :count => 1 + assert_select ".secondary-actions a[href='#{relation_path relation}']", :count => 1 + assert_select ".secondary-actions a[href='#{relation_history_path relation}']", :count => 1 + end + + def test_visible_with_two_versions + relation = create(:relation, :with_history, :version => 2) + get old_relation_path(relation, 1) + assert_response :success + assert_template "old_relations/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_relation_path relation, 1}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{relation_version_path relation, 1}']", :count => 1 + assert_select ".secondary-actions a[href='#{relation_path relation}']", :count => 1 + assert_select ".secondary-actions a[href='#{relation_history_path relation}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_relation_path relation, 2}']", :count => 1 + + get old_relation_path(relation, 2) + assert_response :success + assert_template "old_relations/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_relation_path relation, 2}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{relation_version_path relation, 2}']", :count => 1 + assert_select ".secondary-actions a[href='#{relation_path relation}']", :count => 1 + 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 + end + + def test_visible_with_members + relation = create(:relation, :with_history) + create(:old_relation_member, :old_relation => relation.old_relations.first) + get old_relation_path(relation, 1) + assert_response :success + assert_template "old_relations/show" + assert_template :layout => "map" + end + + def test_redacted + relation = create(:relation, :with_history, :deleted, :version => 2) + relation_v1 = relation.old_relations.find_by(:version => 1) + relation_v1.redact!(create(:redaction)) + get old_relation_path(relation, 1) + assert_response :success + assert_template "old_relations/show" + assert_template :layout => "map" + assert_select ".secondary-actions a[href='#{relation_path relation}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_relation_path relation, 1}']", :count => 0 + assert_select ".secondary-actions a[href='#{relation_version_path relation, 1}']", :count => 0 + end + + def test_not_found + get old_relation_path(0, 0) + assert_response :not_found + assert_template "old_relations/not_found" + assert_template :layout => "map" + assert_select "#sidebar_content", /relation #0 version 0 could not be found/ + end +end diff --git a/test/controllers/old_ways_controller_test.rb b/test/controllers/old_ways_controller_test.rb new file mode 100644 index 000000000..d428605c5 --- /dev/null +++ b/test/controllers/old_ways_controller_test.rb @@ -0,0 +1,86 @@ +require "test_helper" + +class OldWaysControllerTest < ActionDispatch::IntegrationTest + def test_routes + assert_routing( + { :path => "/way/1/history/2", :method => :get }, + { :controller => "old_ways", :action => "show", :id => "1", :version => "2" } + ) + end + + def test_visible_with_one_version + way = create(:way, :with_history) + get old_way_path(way, 1) + assert_response :success + assert_template "old_ways/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_way_path way, 1}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{way_version_path way, 1}']", :count => 1 + assert_select ".secondary-actions a[href='#{way_path way}']", :count => 1 + assert_select ".secondary-actions a[href='#{way_history_path way}']", :count => 1 + end + + def test_visible_with_two_versions + way = create(:way, :with_history, :version => 2) + get old_way_path(way, 1) + assert_response :success + assert_template "old_ways/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_way_path way, 1}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{way_version_path way, 1}']", :count => 1 + assert_select ".secondary-actions a[href='#{way_path way}']", :count => 1 + assert_select ".secondary-actions a[href='#{way_history_path way}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_way_path way, 2}']", :count => 1 + + get old_way_path(way, 2) + assert_response :success + assert_template "old_ways/show" + assert_template :layout => "map" + assert_select "h4", /^Version/ do + assert_select "a[href='#{old_way_path way, 2}']", :count => 0 + end + assert_select ".secondary-actions a[href='#{way_version_path way, 2}']", :count => 1 + assert_select ".secondary-actions a[href='#{way_path way}']", :count => 1 + 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 + end + + def test_visible_with_shared_nodes + node = create(:node, :with_history) + way = create(:way, :with_history) + create(:way_node, :way => way, :node => node) + create(:old_way_node, :old_way => way.old_ways.first, :node => node) + sharing_way = create(:way, :with_history) + create(:way_node, :way => sharing_way, :node => node) + create(:old_way_node, :old_way => sharing_way.old_ways.first, :node => node) + get old_way_path(way, 1) + assert_response :success + assert_template "old_ways/show" + assert_template :layout => "map" + end + + def test_redacted + way = create(:way, :with_history, :deleted, :version => 2) + way_v1 = way.old_ways.find_by(:version => 1) + way_v1.redact!(create(:redaction)) + get old_way_path(way, 1) + assert_response :success + assert_template "old_ways/show" + assert_template :layout => "map" + assert_select ".secondary-actions a[href='#{way_path way}']", :count => 1 + assert_select ".secondary-actions a[href='#{old_way_path way, 1}']", :count => 0 + assert_select ".secondary-actions a[href='#{way_version_path way, 1}']", :count => 0 + end + + def test_not_found + get old_way_path(0, 0) + assert_response :not_found + assert_template "old_ways/not_found" + assert_template :layout => "map" + assert_select "#sidebar_content", /way #0 version 0 could not be found/ + end +end diff --git a/test/controllers/user_blocks_controller_test.rb b/test/controllers/user_blocks_controller_test.rb index 27022c973..0877fa39e 100644 --- a/test/controllers/user_blocks_controller_test.rb +++ b/test/controllers/user_blocks_controller_test.rb @@ -54,6 +54,14 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest { :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 ## @@ -261,6 +269,21 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest assert_select "h1", "The user non_existent_user does not exist" end + ## + # test the duration of a created block + def test_create_duration + target_user = create(:user) + moderator_user = create(:moderator_user) + + session_for(moderator_user) + post user_blocks_path(:display_name => target_user.display_name, + :user_block_period => "336", + :user_block => { :needs_view => false, :reason => "Vandalism" }) + + block = UserBlock.order(:id).last + assert_equal 1209600, block.ends_at - block.created_at + end + ## # test the update action def test_update @@ -371,6 +394,84 @@ class UserBlocksControllerTest < ActionDispatch::IntegrationTest assert_select "p", "Sorry, the user block with ID 99999 could not be found." 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(:display_name => "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_response :redirect + 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 + 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_response :redirect + 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 the blocks_on action def test_blocks_on diff --git a/test/controllers/user_mutes_controller_test.rb b/test/controllers/user_mutes_controller_test.rb new file mode 100644 index 000000000..cc22faaaa --- /dev/null +++ b/test/controllers/user_mutes_controller_test.rb @@ -0,0 +1,60 @@ +require "test_helper" + +class UserMutesControllerTest < ActionDispatch::IntegrationTest + def test_routes + assert_routing( + { :path => "/user/username/mute", :method => :post }, + { :controller => "user_mutes", :action => "create", :display_name => "username" } + ) + assert_routing( + { :path => "/user/username/mute", :method => :delete }, + { :controller => "user_mutes", :action => "destroy", :display_name => "username" } + ) + assert_routing( + { :path => "/user_mutes", :method => :get }, + { :controller => "user_mutes", :action => "index" } + ) + end + + def test_index + user = create(:user) + user.mutes.create(:subject => create(:user)) + session_for(user) + + get user_mutes_path + assert_match "You have muted 1 User", @response.body + end + + def test_create + user = create(:user) + session_for(user) + + assert_equal 0, user.muted_users.count + subject = create(:user, :display_name => "Bob") + post user_mute_path(subject) + assert_match "You muted Bob", flash[:notice] + + assert_equal 1, user.muted_users.count + assert_equal subject, user.muted_users.first + + post user_mute_path(subject) + assert_match "Bob could not be muted. Is already muted", flash[:error] + assert_equal 1, user.muted_users.count + end + + def test_destroy + user = create(:user) + session_for(user) + + subject = create(:user, :display_name => "Bob") + user.mutes.create(:subject => subject) + assert_equal 1, user.muted_users.count + + delete user_mute_path(subject) + assert_match "You unmuted Bob", flash[:notice] + assert_equal 0, user.muted_users.count + + delete user_mute_path(subject) + assert_response :not_found + end +end diff --git a/test/factories/messages.rb b/test/factories/messages.rb index 4f8ee5437..906c4dea9 100644 --- a/test/factories/messages.rb +++ b/test/factories/messages.rb @@ -14,5 +14,9 @@ FactoryBot.define do trait :read do message_read { true } end + + trait :muted do + muted { true } + end end end diff --git a/test/factories/notes.rb b/test/factories/notes.rb index 77b4245aa..ab7d5df56 100644 --- a/test/factories/notes.rb +++ b/test/factories/notes.rb @@ -4,6 +4,19 @@ FactoryBot.define do longitude { 1 * GeoRecord::SCALE } # tile { QuadTile.tile_for_point(1,1) } + trait :closed do + transient do + closed_by { nil } + end + + status { "closed" } + closed_at { Time.now.utc } + + after(:create) do |note, context| + create(:note_comment, :author => context.closed_by, :body => "Closing comment", :event => "closed", :note => note) + end + end + factory :note_with_comments do transient do comments_count { 1 } diff --git a/test/factories/user_mute.rb b/test/factories/user_mute.rb new file mode 100644 index 000000000..4beaf3a23 --- /dev/null +++ b/test/factories/user_mute.rb @@ -0,0 +1,6 @@ +FactoryBot.define do + factory :user_mute do + owner :factory => :user + subject :factory => :user + end +end diff --git a/test/helpers/asset_helper_test.rb b/test/helpers/asset_helper_test.rb index 8a4653b25..c255cc766 100644 --- a/test/helpers/asset_helper_test.rb +++ b/test/helpers/asset_helper_test.rb @@ -2,6 +2,6 @@ require "test_helper" class AssetHelperTest < ActionView::TestCase def test_assets - assert assets("iD").is_a?(Hash) + assert_kind_of Hash, assets("iD") end end diff --git a/test/helpers/browse_tags_helper_test.rb b/test/helpers/browse_tags_helper_test.rb index 76bd04f3b..f47c215c0 100644 --- a/test/helpers/browse_tags_helper_test.rb +++ b/test/helpers/browse_tags_helper_test.rb @@ -22,6 +22,12 @@ class BrowseTagsHelperTest < ActionView::TestCase html = format_value("unknown", "unknown") assert_dom_equal "unknown", html + html = format_value("unknown", "abc;def") + assert_dom_equal "abc;def", html + + html = format_value("unknown", "foo;") + assert_dom_equal "foo;", html + html = format_value("addr:street", "Rue de l'Amigo") assert_dom_equal "Rue de l'Amigo", html @@ -48,7 +54,9 @@ class BrowseTagsHelperTest < ActionView::TestCase assert_dom_equal "File:Test.jpg", html html = format_value("colour", "#f00") - assert_dom_equal %(#f00), html + dom = Rails::Dom::Testing.html_document_fragment.parse html + assert_select dom, "svg>rect>@fill", "#f00" + assert_match(/#f00$/, html) html = format_value("email", "foo@example.com") assert_dom_equal "foo@example.com", html diff --git a/test/helpers/svg_helper_test.rb b/test/helpers/svg_helper_test.rb new file mode 100644 index 000000000..25a9e4568 --- /dev/null +++ b/test/helpers/svg_helper_test.rb @@ -0,0 +1,113 @@ +require "test_helper" + +class SvgHelperTest < ActionView::TestCase + def test_key_fill + svg = key_svg_tag("width" => 60, "height" => 40, "fill" => "green") + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_border + svg = key_svg_tag("width" => 60, "height" => 40, "border" => "red") + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_border_width + svg = key_svg_tag("width" => 60, "height" => 40, "border" => "red", "border-width" => 3) + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_border_with_integer_coords + svg = key_svg_tag("width" => 60, "height" => 40, "border" => "red", "border-width" => 2) + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_border_fractional_width + svg = key_svg_tag("width" => 60, "height" => 40, "border" => "red", "border-width" => 1.5) + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_line + svg = key_svg_tag("width" => 80, "height" => 15, "line" => "blue") + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_line_width + svg = key_svg_tag("width" => 80, "height" => 15, "line" => "blue", "line-width" => 3) + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_line_with_integer_coords + svg = key_svg_tag("width" => 80, "height" => 20, "line" => "blue") + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_casing + svg = key_svg_tag("width" => 80, "height" => 20, "casing" => "yellow") + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_casing_width + svg = key_svg_tag("width" => 80, "height" => 20, "casing" => "yellow", "casing-width" => 5) + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end + + def test_key_casing_with_integer_coords + svg = key_svg_tag("width" => 80, "height" => 20, "casing" => "yellow", "casing-width" => 2) + expected = <<~HTML.gsub(/\n\s*/, "") + + + + HTML + assert_dom_equal expected, svg + end +end diff --git a/test/integration/user_creation_test.rb b/test/integration/user_creation_test.rb index 21e751bca..253f298a5 100644 --- a/test/integration/user_creation_test.rb +++ b/test/integration/user_creation_test.rb @@ -18,149 +18,152 @@ class UserCreationTest < ActionDispatch::IntegrationTest end def test_create_user_form - I18n.with_locale "en" do - I18n.available_locales.each do |locale| - reset! - get "/user/new", :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s } - follow_redirect! - assert_response :success - assert_template "users/new" - end - end + get "/user/new" + follow_redirect! + assert_response :success + assert_template "users/new" end def test_user_create_submit_duplicate_email - I18n.with_locale "en" do - Locale.available.each do |locale| - dup_email = create(:user).email - display_name = "#{locale}_new_tester" - assert_difference("User.count", 0) do - assert_difference("ActionMailer::Base.deliveries.size", 0) do - perform_enqueued_jobs do - post "/user/new", - :params => { :user => { :email => dup_email, - :email_confirmation => dup_email, - :display_name => display_name, - :pass_crypt => "testtest", - :pass_crypt_confirmation => "testtest" } }, - :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s } - end - end + dup_email = create(:user).email + display_name = "new_tester" + assert_difference("User.count", 0) do + assert_difference("ActionMailer::Base.deliveries.size", 0) do + perform_enqueued_jobs do + post "/user/new", + :params => { :user => { :email => dup_email, + :email_confirmation => dup_email, + :display_name => display_name, + :pass_crypt => "testtest", + :pass_crypt_confirmation => "testtest" } } end - assert_response :success - assert_template "users/new" - assert_equal locale.to_s, response.headers["Content-Language"] - assert_select "form" - assert_select "form > div > input.is-invalid#user_email" - assert_no_missing_translations end end + assert_response :success + assert_template "users/new" + assert_select "form" + assert_select "form > div > input.is-invalid#user_email" end def test_user_create_submit_duplicate_username - I18n.with_locale "en" do - I18n.available_locales.each do |locale| - dup_display_name = create(:user).display_name - email = "#{locale}_new_tester" - assert_difference("User.count", 0) do - assert_difference("ActionMailer::Base.deliveries.size", 0) do - perform_enqueued_jobs do - post "/user/new", - :params => { :user => { :email => email, - :email_confirmation => email, - :display_name => dup_display_name, - :pass_crypt => "testtest", - :pass_crypt_confirmation => "testtest" } }, - :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s } - end - end + dup_display_name = create(:user).display_name + email = "new_tester" + assert_difference("User.count", 0) do + assert_difference("ActionMailer::Base.deliveries.size", 0) do + perform_enqueued_jobs do + post "/user/new", + :params => { :user => { :email => email, + :email_confirmation => email, + :display_name => dup_display_name, + :pass_crypt => "testtest", + :pass_crypt_confirmation => "testtest" } } + end + end + end + assert_response :success + assert_template "users/new" + assert_select "form > div > input.is-invalid#user_display_name" + end + + def test_user_create_submit_mismatched_passwords + email = "newtester@osm.org" + display_name = "new_tester" + assert_difference("User.count", 0) do + assert_difference("ActionMailer::Base.deliveries.size", 0) do + perform_enqueued_jobs do + post "/user/new", + :params => { :user => { :email => email, + :email_confirmation => email, + :display_name => display_name, + :pass_crypt => "testtest", + :pass_crypt_confirmation => "blahblah" } } end - assert_response :success - assert_template "users/new" - assert_select "form > div > input.is-invalid#user_display_name" - assert_no_missing_translations end end + assert_response :success + assert_template "users/new" + assert_select "form > div > input.is-invalid#user_pass_crypt_confirmation" end def test_user_create_success - I18n.with_locale "en" do - I18n.available_locales.each do |locale| - new_email = "#{locale}newtester@osm.org" - display_name = "#{locale}_new_tester" - - assert_difference("User.count", 0) do - assert_difference("ActionMailer::Base.deliveries.size", 0) do - perform_enqueued_jobs do - post "/user/new", - :params => { :user => { :email => new_email, - :email_confirmation => new_email, - :display_name => display_name, - :pass_crypt => "testtest", - :pass_crypt_confirmation => "testtest" } } - end - end + new_email = "newtester@osm.org" + display_name = "new_tester" + + assert_difference("User.count", 0) do + assert_difference("ActionMailer::Base.deliveries.size", 0) do + perform_enqueued_jobs do + post "/user/new", + :params => { :user => { :email => new_email, + :email_confirmation => new_email, + :display_name => display_name, + :pass_crypt => "testtest", + :pass_crypt_confirmation => "testtest" } } end + end + end + + assert_redirected_to "/user/terms" - assert_redirected_to "/user/terms" - - assert_difference("User.count") do - assert_difference("ActionMailer::Base.deliveries.size", 1) do - perform_enqueued_jobs do - post "/user/save", - :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s }, - :params => { :read_ct => 1, :read_tou => 1 } - follow_redirect! - end - end + assert_difference("User.count") do + assert_difference("ActionMailer::Base.deliveries.size", 1) do + perform_enqueued_jobs do + post "/user/save", + :params => { :read_ct => 1, :read_tou => 1 } + follow_redirect! end + end + end - # Check the e-mail - register_email = ActionMailer::Base.deliveries.first + assert_response :success + assert_template "confirmations/confirm" - assert_equal register_email.to.first, new_email - # Check that the confirm account url is correct - assert_match(/#{@url}/, register_email.body.to_s) + user = User.find_by(:email => "newtester@osm.org") + assert_not_nil user + assert_not_predicate user, :active? - # Check the page - assert_response :success - assert_template "confirmations/confirm" + register_email = ActionMailer::Base.deliveries.first + assert_equal register_email.to.first, new_email + found_confirmation_url = register_email.parts.first.parts.first.to_s =~ %r{\shttp://test.host(/\S+)\s} + assert found_confirmation_url + confirmation_url = Regexp.last_match(1) + ActionMailer::Base.deliveries.clear - ActionMailer::Base.deliveries.clear - end - end + post confirmation_url + + assert_response :redirect + assert_redirected_to welcome_path + + user.reload + assert_predicate user, :active? + + assert_equal user, User.authenticate(:username => new_email, :password => "testtest") end def test_user_create_no_tou_failure - I18n.with_locale "en" do - I18n.available_locales.each do |locale| - new_email = "#{locale}newtester@osm.org" - display_name = "#{locale}_new_tester" - - assert_difference("User.count", 0) do - assert_difference("ActionMailer::Base.deliveries.size", 0) do - perform_enqueued_jobs do - post "/user/new", - :params => { :user => { :email => new_email, - :email_confirmation => new_email, - :display_name => display_name, - :pass_crypt => "testtest", - :pass_crypt_confirmation => "testtest" } } - end - end - end - - assert_redirected_to "/user/terms" + new_email = "#newtester@osm.org" + display_name = "new_tester" + assert_difference("User.count", 0) do + assert_difference("ActionMailer::Base.deliveries.size", 0) do perform_enqueued_jobs do - post "/user/save", - :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s } - assert_redirected_to "/user/terms" + post "/user/new", + :params => { :user => { :email => new_email, + :email_confirmation => new_email, + :display_name => display_name, + :pass_crypt => "testtest", + :pass_crypt_confirmation => "testtest" } } end - - ActionMailer::Base.deliveries.clear end end + + assert_redirected_to "/user/terms" + + perform_enqueued_jobs do + post "/user/save" + assert_redirected_to "/user/terms" + end + + ActionMailer::Base.deliveries.clear end # Check that the user can successfully recover their password diff --git a/test/lib/bounding_box_test.rb b/test/lib/bounding_box_test.rb index d176e0fa7..9143fcd81 100644 --- a/test/lib/bounding_box_test.rb +++ b/test/lib/bounding_box_test.rb @@ -222,7 +222,7 @@ class BoundingBoxTest < ActiveSupport::TestCase end def test_complete - assert_not @bbox_from_nils.complete?, "should contain a nil" + assert_not_predicate @bbox_from_nils, :complete?, "should contain a nil" assert_predicate @bbox_from_string, :complete?, "should not contain a nil" end diff --git a/test/lib/i18n_test.rb b/test/lib/i18n_test.rb index 8d597fc65..fe94cbdd3 100644 --- a/test/lib/i18n_test.rb +++ b/test/lib/i18n_test.rb @@ -2,7 +2,7 @@ require "test_helper" class I18nTest < ActiveSupport::TestCase I18n.available_locales.each do |locale| - define_method(:"test_#{locale.to_s.underscore}") do + test locale.to_s do without_i18n_exceptions do # plural_keys = plural_keys(locale) @@ -42,7 +42,7 @@ class I18nTest < ActiveSupport::TestCase assert_includes value, :other, "#{key}.other plural key missing" else - assert value.is_a?(String), "#{key} is not a string" + assert_kind_of String, value, "#{key} is not a string" value.scan(/%\{(\w+)\}/) do assert_includes variables, Regexp.last_match(1), "#{key} uses unknown interpolation variable #{Regexp.last_match(1)}" @@ -57,7 +57,7 @@ class I18nTest < ActiveSupport::TestCase Rails.root.glob("config/locales/*.yml").each do |filename| lang = File.basename(filename, ".yml") - define_method(:"test_#{lang}_for_raw_html") do + test "#{lang} for raw html" do yml = YAML.load_file(filename) assert_nothing_raised do check_values_for_raw_html(yml) diff --git a/test/mailers/user_mailer_test.rb b/test/mailers/user_mailer_test.rb index 537bb9d0d..751adcd82 100644 --- a/test/mailers/user_mailer_test.rb +++ b/test/mailers/user_mailer_test.rb @@ -15,7 +15,34 @@ class UserMailerTest < ActionMailer::TestCase end email = UserMailer.gpx_success(trace, 100) - assert_match(/one two three/, email.html_part.body.to_s) + assert_match("one, two, three", email.html_part.body.to_s) + end + + def test_gpx_success_all_traces_link + trace = create(:trace) + email = UserMailer.gpx_success(trace, 100) + body = Rails::Dom::Testing.html_document_fragment.parse(email.html_part.body) + + url = Rails.application.routes.url_helpers.url_for(:controller => "traces", :action => "mine", :host => Settings.server_url, :protocol => Settings.server_protocol) + assert_select body, "a[href='#{url}']" + end + + def test_gpx_success_trace_link + trace = create(:trace) + email = UserMailer.gpx_success(trace, 100) + body = Rails::Dom::Testing.html_document_fragment.parse(email.html_part.body) + + url = Rails.application.routes.url_helpers.show_trace_url(trace.user, trace, :host => Settings.server_url, :protocol => Settings.server_protocol) + assert_select body, "a[href='#{url}']", :text => trace.name + end + + def test_gpx_failure_no_trace_link + trace = create(:trace) + email = UserMailer.gpx_failure(trace, "some error") + body = Rails::Dom::Testing.html_document_fragment.parse(email.html_part.body) + + url = Rails.application.routes.url_helpers.show_trace_url(trace.user, trace, :host => Settings.server_url, :protocol => Settings.server_protocol) + assert_select body, "a[href='#{url}']", :count => 0 end def test_html_encoding diff --git a/test/models/acl_test.rb b/test/models/acl_test.rb index 88d1c0e7d..6bd87729c 100644 --- a/test/models/acl_test.rb +++ b/test/models/acl_test.rb @@ -5,7 +5,7 @@ class AclTest < ActiveSupport::TestCase acl = create(:acl) assert_predicate acl, :valid? acl.k = nil - assert_not acl.valid? + assert_not_predicate acl, :valid? end def test_no_account_creation_by_subnet @@ -27,4 +27,40 @@ class AclTest < ActiveSupport::TestCase create(:acl, :mx => "mail.example.com", :k => "no_account_creation") assert Acl.no_account_creation("192.168.1.1", :mx => "mail.example.com") end + + def test_allow_account_creation_by_subnet + assert_not Acl.allow_account_creation("192.168.1.1") + create(:acl, :address => "192.168.0.0/16", :k => "allow_account_creation") + assert Acl.allow_account_creation("192.168.1.1") + end + + def test_allow_account_creation_by_domain + assert_not Acl.allow_account_creation("192.168.1.1", :domain => "example.com") + assert_not Acl.allow_account_creation("192.168.1.1", :domain => "test.example.com") + create(:acl, :domain => "example.com", :k => "allow_account_creation") + assert Acl.allow_account_creation("192.168.1.1", :domain => "example.com") + assert Acl.allow_account_creation("192.168.1.1", :domain => "test.example.com") + end + + def test_allow_account_creation_by_mx + assert_not Acl.allow_account_creation("192.168.1.1", :mx => "mail.example.com") + create(:acl, :mx => "mail.example.com", :k => "allow_account_creation") + assert Acl.allow_account_creation("192.168.1.1", :mx => "mail.example.com") + end + + def test_no_note_comment_by_domain + assert_not Acl.no_note_comment("192.168.1.1", "example.com") + assert_not Acl.no_note_comment("192.168.1.1", "test.example.com") + create(:acl, :domain => "example.com", :k => "no_note_comment") + assert Acl.no_note_comment("192.168.1.1", "example.com") + assert Acl.no_note_comment("192.168.1.1", "test.example.com") + end + + def test_no_trace_download_by_domain + assert_not Acl.no_trace_download("192.168.1.1", "example.com") + assert_not Acl.no_trace_download("192.168.1.1", "test.example.com") + create(:acl, :domain => "example.com", :k => "no_trace_download") + assert Acl.no_trace_download("192.168.1.1", "example.com") + assert Acl.no_trace_download("192.168.1.1", "test.example.com") + end end diff --git a/test/models/changeset_comment_test.rb b/test/models/changeset_comment_test.rb index 2139c8d39..991bf555d 100644 --- a/test/models/changeset_comment_test.rb +++ b/test/models/changeset_comment_test.rb @@ -6,27 +6,27 @@ class ChangesetCommentTest < ActiveSupport::TestCase comment = create(:changeset_comment) comment.author = nil - assert_not comment.valid? + assert_not_predicate comment, :valid? comment.author_id = 999111 - assert_not comment.valid? + assert_not_predicate comment, :valid? end def test_does_not_accept_invalid_changeset comment = create(:changeset_comment) comment.changeset = nil - assert_not comment.valid? + assert_not_predicate comment, :valid? comment.changeset_id = 999111 - assert_not comment.valid? + assert_not_predicate comment, :valid? end def test_does_not_accept_empty_visible comment = create(:changeset_comment) comment.visible = nil - assert_not comment.valid? + assert_not_predicate comment, :valid? end def test_comments_of_changeset_count @@ -50,7 +50,7 @@ class ChangesetCommentTest < ActiveSupport::TestCase bad.each do |body| changeset_comment = create(:changeset_comment) changeset_comment.body = body - assert_not changeset_comment.valid?, "#{body} is valid when it shouldn't be" + assert_not_predicate changeset_comment, :valid?, "#{body} is valid when it shouldn't be" end end end diff --git a/test/models/changeset_tag_test.rb b/test/models/changeset_tag_test.rb index 5832b8a70..81b280790 100644 --- a/test/models/changeset_tag_test.rb +++ b/test/models/changeset_tag_test.rb @@ -20,21 +20,21 @@ class ChangesetTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:changeset_tag) tag.k = "k" * 256 - assert_not tag.valid?, "Key should be too long" + assert_not_predicate tag, :valid?, "Key should be too long" assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:changeset_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_tag_invalid tag = create(:changeset_tag) tag.changeset = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:changeset], :any? end @@ -42,7 +42,7 @@ class ChangesetTagTest < ActiveSupport::TestCase existing = create(:changeset_tag) tag = build(:changeset_tag, :changeset => existing.changeset, :k => existing.k, :v => existing.v) assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/models/client_application_test.rb b/test/models/client_application_test.rb index c3f1df23c..9dc5ab5fc 100644 --- a/test/models/client_application_test.rb +++ b/test/models/client_application_test.rb @@ -14,7 +14,7 @@ class ClientApplicationTest < ActiveSupport::TestCase bad.each do |url| app = build(:client_application) app.url = url - assert_not app.valid?, "#{url} is valid when it shouldn't be" + assert_not_predicate app, :valid?, "#{url} is valid when it shouldn't be" end end @@ -31,7 +31,7 @@ class ClientApplicationTest < ActiveSupport::TestCase bad.each do |url| app = build(:client_application) app.support_url = url - assert_not app.valid?, "#{url} is valid when it shouldn't be" + assert_not_predicate app, :valid?, "#{url} is valid when it shouldn't be" end end @@ -48,7 +48,7 @@ class ClientApplicationTest < ActiveSupport::TestCase bad.each do |url| app = build(:client_application) app.callback_url = url - assert_not app.valid?, "#{url} is valid when it shouldn't be" + assert_not_predicate app, :valid?, "#{url} is valid when it shouldn't be" end end end diff --git a/test/models/issue_test.rb b/test/models/issue_test.rb index f166282c1..b2a868a93 100644 --- a/test/models/issue_test.rb +++ b/test/models/issue_test.rb @@ -6,7 +6,7 @@ class IssueTest < ActiveSupport::TestCase assert_predicate issue, :valid? issue.assigned_role = "bogus" - assert_not issue.valid? + assert_not_predicate issue, :valid? end def test_reported_user diff --git a/test/models/language_test.rb b/test/models/language_test.rb index 5ba558907..f777d8e19 100644 --- a/test/models/language_test.rb +++ b/test/models/language_test.rb @@ -6,6 +6,11 @@ class LanguageTest < ActiveSupport::TestCase assert_equal "Slovenian (slovenščina)", Language.find("sl").name end + def test_same_native_name + create(:language, :code => "af", :english_name => "Afrikaans", :native_name => "Afrikaans") + assert_equal "Afrikaans", Language.find("af").name + end + def test_load assert_equal 0, Language.count assert_raise ActiveRecord::RecordNotFound do diff --git a/test/models/message_test.rb b/test/models/message_test.rb index 97afad56e..1bc15cba3 100644 --- a/test/models/message_test.rb +++ b/test/models/message_test.rb @@ -5,7 +5,7 @@ class MessageTest < ActiveSupport::TestCase def test_check_empty_message_fails message = build(:message, :title => nil, :body => nil, :sent_on => nil) - assert_not message.valid? + assert_not_predicate message, :valid? assert_predicate message.errors[:title], :any? assert_predicate message.errors[:body], :any? assert_predicate message.errors[:sent_on], :any? @@ -23,7 +23,7 @@ class MessageTest < ActiveSupport::TestCase message = create(:message, :unread) message.sender = nil message.recipient = nil - assert_not message.valid? + assert_not_predicate message, :valid? assert_raise(ActiveRecord::RecordNotFound) { User.find(0) } message.from_user_id = 0 @@ -175,6 +175,26 @@ class MessageTest < ActiveSupport::TestCase assert_equal "text", message.body_format end + def test_notify_recipient + message = create(:message) + assert_not_predicate message, :muted? + assert_predicate message, :notify_recipient? + end + + def test_notify_recipient_for_muted_messages + message = create(:message, :muted) + assert_predicate message, :muted? + assert_not_predicate message, :notify_recipient? + end + + def test_unmuting_a_muted_message + message = create(:message, :muted) + assert_predicate message, :muted? + + message.unmute + assert_not_predicate message, :muted? + end + private def make_message(char, count) diff --git a/test/models/node_tag_test.rb b/test/models/node_tag_test.rb index d927b5fea..5788bcca5 100644 --- a/test/models/node_tag_test.rb +++ b/test/models/node_tag_test.rb @@ -20,21 +20,21 @@ class NodeTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:node_tag) tag.k = "k" * 256 - assert_not tag.valid?, "Key should be too long" + assert_not_predicate tag, :valid?, "Key should be too long" assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:node_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_node_tag_invalid tag = create(:node_tag) tag.node = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:node], :any? end @@ -42,7 +42,7 @@ class NodeTagTest < ActiveSupport::TestCase existing = create(:node_tag) tag = build(:node_tag, :node => existing.node, :k => existing.k, :v => existing.v) assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/models/note_comment_test.rb b/test/models/note_comment_test.rb index f4dd645ee..615586e56 100644 --- a/test/models/note_comment_test.rb +++ b/test/models/note_comment_test.rb @@ -14,7 +14,7 @@ class NoteCommentTest < ActiveSupport::TestCase bad.each do |event| note_comment = create(:note_comment) note_comment.event = event - assert_not note_comment.valid?, "#{event} is valid when it shouldn't be" + assert_not_predicate note_comment, :valid?, "#{event} is valid when it shouldn't be" end end @@ -33,7 +33,7 @@ class NoteCommentTest < ActiveSupport::TestCase bad.each do |body| note_comment = create(:note_comment) note_comment.body = body - assert_not note_comment.valid?, "#{body} is valid when it shouldn't be" + assert_not_predicate note_comment, :valid?, "#{body} is valid when it shouldn't be" end end end diff --git a/test/models/note_test.rb b/test/models/note_test.rb index 8d5a557cd..34b16c19d 100644 --- a/test/models/note_test.rb +++ b/test/models/note_test.rb @@ -14,7 +14,7 @@ class NoteTest < ActiveSupport::TestCase bad.each do |status| note = create(:note) note.status = status - assert_not note.valid?, "#{status} is valid when it shouldn't be" + assert_not_predicate note, :valid?, "#{status} is valid when it shouldn't be" end end @@ -28,7 +28,7 @@ class NoteTest < ActiveSupport::TestCase end def test_reopen - note = create(:note, :status => "closed", :closed_at => Time.now.utc) + note = create(:note, :closed) assert_equal "closed", note.status assert_not_nil note.closed_at note.reopen @@ -38,13 +38,13 @@ class NoteTest < ActiveSupport::TestCase def test_visible? assert_predicate create(:note, :status => "open"), :visible? - assert_predicate create(:note, :status => "closed"), :visible? - assert_not create(:note, :status => "hidden").visible? + assert_predicate create(:note, :closed), :visible? + assert_not_predicate create(:note, :status => "hidden"), :visible? end def test_closed? - assert_predicate create(:note, :status => "closed", :closed_at => Time.now.utc), :closed? - assert_not create(:note, :status => "open", :closed_at => nil).closed? + assert_predicate create(:note, :closed), :closed? + assert_not_predicate create(:note, :status => "open", :closed_at => nil), :closed? end def test_author diff --git a/test/models/oauth_token_test.rb b/test/models/oauth_token_test.rb index 28f2c34a1..73dd6258f 100644 --- a/test/models/oauth_token_test.rb +++ b/test/models/oauth_token_test.rb @@ -5,7 +5,7 @@ class OauthTokenTest < ActiveSupport::TestCase # check that after calling invalidate! on a token, it is invalid. def test_token_invalidation tok = OauthToken.new - assert_not tok.invalidated?, "Token should be created valid." + assert_not_predicate tok, :invalidated?, "Token should be created valid." tok.invalidate! assert_predicate tok, :invalidated?, "Token should now be invalid." end @@ -14,10 +14,10 @@ class OauthTokenTest < ActiveSupport::TestCase # check that an authorized token is authorised and can be invalidated def test_token_authorisation tok = RequestToken.create(:client_application => create(:client_application)) - assert_not tok.authorized?, "Token should be created unauthorised." + assert_not_predicate tok, :authorized?, "Token should be created unauthorised." tok.authorize!(create(:user)) assert_predicate tok, :authorized?, "Token should now be authorised." tok.invalidate! - assert_not tok.authorized?, "Token should now be invalid." + assert_not_predicate tok, :authorized?, "Token should now be invalid." end end diff --git a/test/models/old_node_tag_test.rb b/test/models/old_node_tag_test.rb index 40c91c82d..be7502c34 100644 --- a/test/models/old_node_tag_test.rb +++ b/test/models/old_node_tag_test.rb @@ -20,21 +20,21 @@ class OldNodeTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:old_node_tag) tag.k = "k" * 256 - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:old_node_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_tag_invalid tag = create(:old_node_tag) tag.old_node = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:old_node], :any? end @@ -42,7 +42,7 @@ class OldNodeTagTest < ActiveSupport::TestCase existing = create(:old_node_tag) tag = build(:old_node_tag, :old_node => existing.old_node, :version => existing.version, :k => existing.k, :v => existing.v) assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/models/old_relation_tag_test.rb b/test/models/old_relation_tag_test.rb index d920f91da..d31d0e64e 100644 --- a/test/models/old_relation_tag_test.rb +++ b/test/models/old_relation_tag_test.rb @@ -20,21 +20,21 @@ class OldRelationTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:old_relation_tag) tag.k = "k" * 256 - assert_not tag.valid?, "Key should be too long" + assert_not_predicate tag, :valid?, "Key should be too long" assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:old_relation_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_tag_invalid tag = create(:old_relation_tag) tag.old_relation = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:old_relation], :any? end @@ -42,7 +42,7 @@ class OldRelationTagTest < ActiveSupport::TestCase existing = create(:old_relation_tag) tag = build(:old_relation_tag, :old_relation => existing.old_relation, :version => existing.version, :k => existing.k, :v => existing.v) assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/models/old_way_tag_test.rb b/test/models/old_way_tag_test.rb index 793962438..62211ed24 100644 --- a/test/models/old_way_tag_test.rb +++ b/test/models/old_way_tag_test.rb @@ -20,21 +20,21 @@ class OldWayTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:old_way_tag) tag.k = "k" * 256 - assert_not tag.valid?, "Key should be too long" + assert_not_predicate tag, :valid?, "Key should be too long" assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:old_way_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_tag_invalid tag = create(:old_way_tag) tag.old_way = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:old_way], :any? end @@ -46,7 +46,7 @@ class OldWayTagTest < ActiveSupport::TestCase tag.k = existing.k tag.v = existing.v assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/models/redaction_test.rb b/test/models/redaction_test.rb index 06159cb5d..00133f1f4 100644 --- a/test/models/redaction_test.rb +++ b/test/models/redaction_test.rb @@ -4,7 +4,7 @@ class RedactionTest < ActiveSupport::TestCase def test_cannot_redact_current n = create(:node) r = create(:redaction) - assert_not(n.redacted?, "Expected node to not be redacted already.") + assert_not_predicate(n, :redacted?, "Expected node to not be redacted already.") assert_raise(OSM::APICannotRedactError) do n.redact!(r) end @@ -14,7 +14,7 @@ class RedactionTest < ActiveSupport::TestCase node = create(:node, :with_history) node_v1 = node.old_nodes.find_by(:version => 1) r = create(:redaction) - assert_not(node_v1.redacted?, "Expected node to not be redacted already.") + assert_not_predicate(node_v1, :redacted?, "Expected node to not be redacted already.") assert_raise(OSM::APICannotRedactError) do node_v1.redact!(r) end @@ -26,11 +26,11 @@ class RedactionTest < ActiveSupport::TestCase node_v2 = node.old_nodes.find_by(:version => 2) r = create(:redaction) - assert_not(node_v1.redacted?, "Expected node to not be redacted already.") + assert_not_predicate(node_v1, :redacted?, "Expected node to not be redacted already.") assert_nothing_raised do node_v1.redact!(r) end assert_predicate(node_v1, :redacted?, "Expected node version 1 to be redacted after redact! call.") - assert_not(node_v2.redacted?, "Expected node version 2 to not be redacted after redact! call.") + assert_not_predicate(node_v2, :redacted?, "Expected node version 2 to not be redacted after redact! call.") end end diff --git a/test/models/relation_member_test.rb b/test/models/relation_member_test.rb index a82cea457..7535c342d 100644 --- a/test/models/relation_member_test.rb +++ b/test/models/relation_member_test.rb @@ -9,7 +9,7 @@ class RelationMemberTest < ActiveSupport::TestCase node = create(:node) invalid.each do |r| member = build(:relation_member, :relation => relation, :member => node, :member_role => r) - assert_not member.valid?, "'#{r}' should not be valid" + assert_not_predicate member, :valid?, "'#{r}' should not be valid" assert_predicate member.errors[:member_role], :any? end end @@ -18,7 +18,7 @@ class RelationMemberTest < ActiveSupport::TestCase relation = create(:relation) node = create(:node) member = build(:relation_member, :relation => relation, :member => node, :member_role => "r" * 256) - assert_not member.valid?, "Role should be too long" + assert_not_predicate member, :valid?, "Role should be too long" assert_predicate member.errors[:member_role], :any? end end diff --git a/test/models/relation_tag_test.rb b/test/models/relation_tag_test.rb index 69a491890..2e5e1503c 100644 --- a/test/models/relation_tag_test.rb +++ b/test/models/relation_tag_test.rb @@ -20,21 +20,21 @@ class RelationTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:relation_tag) tag.k = "k" * 256 - assert_not tag.valid?, "Key should be too long" + assert_not_predicate tag, :valid?, "Key should be too long" assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:relation_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_tag_invalid tag = create(:relation_tag) tag.relation = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:relation], :any? end @@ -42,7 +42,7 @@ class RelationTagTest < ActiveSupport::TestCase existing = create(:relation_tag) tag = build(:relation_tag, :relation => existing.relation, :k => existing.k, :v => existing.v) assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/models/report_test.rb b/test/models/report_test.rb index 64ccf501d..7b3b973b0 100644 --- a/test/models/report_test.rb +++ b/test/models/report_test.rb @@ -6,7 +6,7 @@ class ReportTest < ActiveSupport::TestCase assert_predicate report, :valid? report.issue = nil - assert_not report.valid? + assert_not_predicate report, :valid? end def test_user_required @@ -14,7 +14,7 @@ class ReportTest < ActiveSupport::TestCase assert_predicate report, :valid? report.user = nil - assert_not report.valid? + assert_not_predicate report, :valid? end def test_details_required @@ -22,7 +22,7 @@ class ReportTest < ActiveSupport::TestCase assert_predicate report, :valid? report.details = "" - assert_not report.valid? + assert_not_predicate report, :valid? end def test_category_required @@ -30,7 +30,7 @@ class ReportTest < ActiveSupport::TestCase assert_predicate report, :valid? report.category = "" - assert_not report.valid? + assert_not_predicate report, :valid? end def test_details diff --git a/test/models/request_token_test.rb b/test/models/request_token_test.rb index 4f17b7256..65d17d442 100644 --- a/test/models/request_token_test.rb +++ b/test/models/request_token_test.rb @@ -5,6 +5,6 @@ class RequestTokenTest < ActiveSupport::TestCase assert_predicate RequestToken.new, :oob? assert_predicate RequestToken.new(:callback_url => "oob"), :oob? assert_predicate RequestToken.new(:callback_url => "OOB"), :oob? - assert_not RequestToken.new(:callback_url => "http://test.host/").oob? + assert_not_predicate RequestToken.new(:callback_url => "http://test.host/"), :oob? end end diff --git a/test/models/trace_test.rb b/test/models/trace_test.rb index af219db43..1a2376ca8 100644 --- a/test/models/trace_test.rb +++ b/test/models/trace_test.rb @@ -108,26 +108,26 @@ class TraceTest < ActiveSupport::TestCase def test_public? assert_predicate build(:trace, :visibility => "public"), :public? - assert_not build(:trace, :visibility => "private").public? - assert_not build(:trace, :visibility => "trackable").public? + assert_not_predicate build(:trace, :visibility => "private"), :public? + assert_not_predicate build(:trace, :visibility => "trackable"), :public? assert_predicate build(:trace, :visibility => "identifiable"), :public? assert_predicate build(:trace, :deleted, :visibility => "public"), :public? end def test_trackable? - assert_not build(:trace, :visibility => "public").trackable? - assert_not build(:trace, :visibility => "private").trackable? + assert_not_predicate build(:trace, :visibility => "public"), :trackable? + assert_not_predicate build(:trace, :visibility => "private"), :trackable? assert_predicate build(:trace, :visibility => "trackable"), :trackable? assert_predicate build(:trace, :visibility => "identifiable"), :trackable? - assert_not build(:trace, :deleted, :visibility => "public").trackable? + assert_not_predicate build(:trace, :deleted, :visibility => "public"), :trackable? end def test_identifiable? - assert_not build(:trace, :visibility => "public").identifiable? - assert_not build(:trace, :visibility => "private").identifiable? - assert_not build(:trace, :visibility => "trackable").identifiable? + assert_not_predicate build(:trace, :visibility => "public"), :identifiable? + assert_not_predicate build(:trace, :visibility => "private"), :identifiable? + assert_not_predicate build(:trace, :visibility => "trackable"), :identifiable? assert_predicate build(:trace, :visibility => "identifiable"), :identifiable? - assert_not build(:trace, :deleted, :visibility => "public").identifiable? + assert_not_predicate build(:trace, :deleted, :visibility => "public"), :identifiable? end def test_mime_type @@ -208,7 +208,7 @@ class TraceTest < ActiveSupport::TestCase def test_import_creates_icon trace = create(:trace, :inserted => false, :fixture => "a") - assert_not trace.icon.attached? + assert_not_predicate trace.icon, :attached? trace.import @@ -218,7 +218,7 @@ class TraceTest < ActiveSupport::TestCase def test_import_creates_large_picture trace = create(:trace, :inserted => false, :fixture => "a") - assert_not trace.image.attached? + assert_not_predicate trace.image, :attached? trace.import diff --git a/test/models/tracepoint_test.rb b/test/models/tracepoint_test.rb index 115b8ec9b..3d836a2e7 100644 --- a/test/models/tracepoint_test.rb +++ b/test/models/tracepoint_test.rb @@ -5,6 +5,6 @@ class TracepointTest < ActiveSupport::TestCase tracepoint = create(:tracepoint) assert_predicate tracepoint, :valid? tracepoint.timestamp = nil - assert_not tracepoint.valid? + assert_not_predicate tracepoint, :valid? end end diff --git a/test/models/user_mute_test.rb b/test/models/user_mute_test.rb new file mode 100644 index 000000000..ccc68110a --- /dev/null +++ b/test/models/user_mute_test.rb @@ -0,0 +1,24 @@ +require "test_helper" + +class UserMuteTest < ActiveSupport::TestCase + def test_messages_by_muted_users_are_muted + user = create(:user) + muted_user = create(:user) + create(:user_mute, :owner => user, :subject => muted_user) + + message = create(:message, :sender => muted_user, :recipient => user) + assert_predicate message, :muted? + end + + def test_messages_by_admins_or_moderators_are_never_muted + user = create(:user) + + [create(:administrator_user), create(:moderator_user)].each do |admin_or_moderator| + create(:user_mute, :owner => user, :subject => admin_or_moderator) + + message = create(:message, :sender => admin_or_moderator, :recipient => user) + + assert_not_predicate message, :muted? + end + end +end diff --git a/test/models/user_preference_test.rb b/test/models/user_preference_test.rb index 3df38aa6f..ee91777c7 100644 --- a/test/models/user_preference_test.rb +++ b/test/models/user_preference_test.rb @@ -36,7 +36,7 @@ class UserPreferenceTest < ActiveSupport::TestCase up.user = create(:user) up.k = key * i up.v = val * i - assert_not up.valid? + assert_not_predicate up, :valid? assert_raise(ActiveRecord::RecordInvalid) { up.save! } end end diff --git a/test/models/user_test.rb b/test/models/user_test.rb index 5c48bb969..42949504f 100644 --- a/test/models/user_test.rb +++ b/test/models/user_test.rb @@ -10,7 +10,7 @@ class UserTest < ActiveSupport::TestCase :home_lat => nil, :home_lon => nil, :home_zoom => nil) - assert_not user.valid? + assert_not_predicate user, :valid? assert_predicate user.errors[:email], :any? assert_predicate user.errors[:pass_crypt], :any? assert_predicate user.errors[:display_name], :any? @@ -27,10 +27,13 @@ class UserTest < ActiveSupport::TestCase end def test_unique_display_name - existing_user = create(:user) - new_user = build(:user, :display_name => existing_user.display_name) - assert_not new_user.save - assert_includes new_user.errors[:display_name], "has already been taken" + create(:user, :display_name => "H\u{e9}nryIV") + + %W[H\u{e9}nryIV he\u{301}nryiv H\u{c9}nry\u2163 he\u{301}nry\u2173].each do |name| + new_user = build(:user, :display_name => name) + assert_not new_user.save + assert_includes new_user.errors[:display_name], "has already been taken" + end end def test_email_valid @@ -57,11 +60,11 @@ class UserTest < ActiveSupport::TestCase user.display_name = "123" assert_predicate user, :valid?, "should allow 3 char name name" user.display_name = "12" - assert_not user.valid?, "should not allow 2 char name" + assert_not_predicate user, :valid?, "should not allow 2 char name" user.display_name = "" - assert_not user.valid?, "should not allow blank/0 char name" + assert_not_predicate user, :valid?, "should not allow blank/0 char name" user.display_name = nil - assert_not user.valid?, "should not allow nil value" + assert_not_predicate user, :valid?, "should not allow nil value" end def test_display_name_valid @@ -87,10 +90,40 @@ class UserTest < ActiveSupport::TestCase bad.each do |display_name| user = build(:user) user.display_name = display_name - assert_not user.valid?, "#{display_name} is valid when it shouldn't be" + assert_not_predicate user, :valid?, "#{display_name} is valid when it shouldn't be" end end + def test_display_name_user_id_new + existing_user = create(:user) + user = build(:user) + + user.display_name = "user_#{existing_user.id}" + assert_not user.valid?, "user_ name is valid for existing user id when it shouldn't be" + + user.display_name = "user_#{existing_user.id + 1}" + assert_not user.valid?, "user_ name is valid for new user id when it shouldn't be" + end + + def test_display_name_user_id_rename + existing_user = create(:user) + user = create(:user) + + user.display_name = "user_#{existing_user.id}" + assert_not user.valid?, "user_ name is valid for existing user id when it shouldn't be" + + user.display_name = "user_#{user.id}" + assert_predicate user, :valid?, "user_ name is invalid for own id, when it should be" + end + + def test_display_name_user_id_unchanged_is_valid + user = build(:user, :display_name => "user_0") + user.save(:validate => false) + user.reload + + assert_predicate user, :valid?, "user_0 display_name is invalid but it hasn't been changed" + end + def test_friends_with alice = create(:user, :active) bob = create(:user, :active) @@ -217,25 +250,25 @@ class UserTest < ActiveSupport::TestCase assert_predicate build(:user, :pending), :visible? assert_predicate build(:user, :active), :visible? assert_predicate build(:user, :confirmed), :visible? - assert_not build(:user, :suspended).visible? - assert_not build(:user, :deleted).visible? + assert_not_predicate build(:user, :suspended), :visible? + assert_not_predicate build(:user, :deleted), :visible? end def test_active? - assert_not build(:user, :pending).active? + assert_not_predicate build(:user, :pending), :active? assert_predicate build(:user, :active), :active? assert_predicate build(:user, :confirmed), :active? - assert_not build(:user, :suspended).active? - assert_not build(:user, :deleted).active? + assert_not_predicate build(:user, :suspended), :active? + assert_not_predicate build(:user, :deleted), :active? end def test_moderator? - assert_not create(:user).moderator? + assert_not_predicate create(:user), :moderator? assert_predicate create(:moderator_user), :moderator? end def test_administrator? - assert_not create(:user).administrator? + assert_not_predicate create(:user), :administrator? assert_predicate create(:administrator_user), :administrator? end @@ -253,10 +286,10 @@ class UserTest < ActiveSupport::TestCase assert_predicate user.description, :blank? assert_nil user.home_lat assert_nil user.home_lon - assert_not user.avatar.attached? + assert_not_predicate user.avatar, :attached? assert_equal "deleted", user.status - assert_not user.visible? - assert_not user.active? + assert_not_predicate user, :visible? + assert_not_predicate user, :active? end def test_soft_destroy_revokes_oauth1_tokens diff --git a/test/models/way_tag_test.rb b/test/models/way_tag_test.rb index 64aacc63b..3b0d207c9 100644 --- a/test/models/way_tag_test.rb +++ b/test/models/way_tag_test.rb @@ -20,21 +20,21 @@ class WayTagTest < ActiveSupport::TestCase def test_length_key_invalid tag = create(:way_tag) tag.k = "k" * 256 - assert_not tag.valid?, "Key should be too long" + assert_not_predicate tag, :valid?, "Key should be too long" assert_predicate tag.errors[:k], :any? end def test_length_value_invalid tag = create(:way_tag) tag.v = "v" * 256 - assert_not tag.valid?, "Value should be too long" + assert_not_predicate tag, :valid?, "Value should be too long" assert_predicate tag.errors[:v], :any? end def test_orphaned_tag_invalid tag = create(:way_tag) tag.way = nil - assert_not tag.valid?, "Orphaned tag should be invalid" + assert_not_predicate tag, :valid?, "Orphaned tag should be invalid" assert_predicate tag.errors[:way], :any? end @@ -45,7 +45,7 @@ class WayTagTest < ActiveSupport::TestCase tag.k = existing.k tag.v = existing.v assert_predicate tag, :new_record? - assert_not tag.valid? + assert_not_predicate tag, :valid? assert_raise(ActiveRecord::RecordInvalid) { tag.save! } assert_predicate tag, :new_record? end diff --git a/test/system/account_deletion_test.rb b/test/system/account_deletion_test.rb index e6517dccc..ca5ef7fe8 100644 --- a/test/system/account_deletion_test.rb +++ b/test/system/account_deletion_test.rb @@ -9,9 +9,9 @@ class AccountDeletionTest < ApplicationSystemTestCase test "the status is deleted and the personal data removed" do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." accept_confirm do - click_link "Delete Account" + click_on "Delete Account" end assert_current_path root_path @@ -23,9 +23,9 @@ class AccountDeletionTest < ApplicationSystemTestCase test "the user is signed out after deletion" do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." accept_confirm do - click_link "Delete Account" + click_on "Delete Account" end assert_content "Log In" @@ -34,9 +34,9 @@ class AccountDeletionTest < ApplicationSystemTestCase test "the user is shown a confirmation flash message" do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." accept_confirm do - click_link "Delete Account" + click_on "Delete Account" end assert_content "Account Deleted" @@ -47,7 +47,7 @@ class AccountDeletionTest < ApplicationSystemTestCase travel 1.hour do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." assert_no_content "cannot currently be deleted" end @@ -61,7 +61,7 @@ class AccountDeletionTest < ApplicationSystemTestCase travel 1.hour do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." assert_no_content "cannot currently be deleted" end @@ -75,7 +75,7 @@ class AccountDeletionTest < ApplicationSystemTestCase travel 12.hours do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." assert_no_content "cannot currently be deleted" end @@ -89,7 +89,7 @@ class AccountDeletionTest < ApplicationSystemTestCase travel 10.hours do visit edit_account_path - click_link "Delete Account..." + click_on "Delete Account..." assert_content "cannot currently be deleted" assert_content "in about 1 hour" diff --git a/test/system/confirmation_resend_test.rb b/test/system/confirmation_resend_test.rb index f615a6321..31b9ed7bb 100644 --- a/test/system/confirmation_resend_test.rb +++ b/test/system/confirmation_resend_test.rb @@ -5,16 +5,18 @@ class ConfirmationResendSystemTest < ApplicationSystemTestCase @user = build(:user) visit user_new_path - fill_in "Email", :with => @user.email - fill_in "Email Confirmation", :with => @user.email - fill_in "Display Name", :with => @user.display_name - fill_in "Password", :with => "testtest" - fill_in "Confirm Password", :with => "testtest" - click_button "Sign Up" + within ".new_user" do + fill_in "Email", :with => @user.email + fill_in "Email Confirmation", :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 check "I have read and agree to the above contributor terms" check "I have read and agree to the Terms of Use" - click_button "Continue" + click_on "Continue" end test "flash message should not contain raw html" do diff --git a/test/system/diary_entry_test.rb b/test/system/diary_entry_test.rb index 554b89a6d..ba091c538 100644 --- a/test/system/diary_entry_test.rb +++ b/test/system/diary_entry_test.rb @@ -3,6 +3,9 @@ require "application_system_test_case" class DiaryEntrySystemTest < ApplicationSystemTestCase def setup create(:language, :code => "en") + create(:language, :code => "pt", :english_name => "Portuguese", :native_name => "Português") + create(:language, :code => "pt-BR", :english_name => "Brazilian Portuguese", :native_name => "Português do Brasil") + create(:language, :code => "ru", :english_name => "Russian", :native_name => "Русский") @diary_entry = create(:diary_entry) end @@ -10,7 +13,7 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit diary_entries_path - click_link "Send a message to the author" + click_on "Send a message to the author" assert_content "Send a new message" assert_equal "Re: #{@diary_entry.title}", page.find_field("Subject").value @@ -61,4 +64,14 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase assert_content @deleted_comment.body end + + test "should have links to preferred languages" do + sign_in_as(create(:user, :languages => %w[en-US pt-BR])) + visit diary_entries_path + + assert_link "Diary Entries in English", :href => "/diary/en" + assert_link "Diary Entries in Brazilian Portuguese", :href => "/diary/pt-BR" + assert_link "Diary Entries in Portuguese", :href => "/diary/pt" + assert_no_link "Diary Entries in Russian" + end end diff --git a/test/system/issues_test.rb b/test/system/issues_test.rb index a40306e3c..b9b989c07 100644 --- a/test/system/issues_test.rb +++ b/test/system/issues_test.rb @@ -80,21 +80,21 @@ class IssuesTest < ApplicationSystemTestCase # No issues against the user visit issues_path fill_in "search_by_user", :with => good_user.display_name - click_button "Search" + click_on "Search" assert_no_content I18n.t("issues.index.user_not_found") assert_content I18n.t("issues.index.issues_not_found") # User doesn't exist visit issues_path fill_in "search_by_user", :with => "Nonexistent User" - click_button "Search" + click_on "Search" assert_content I18n.t("issues.index.user_not_found") assert_content I18n.t("issues.index.issues_not_found") # Find Issue against bad_user visit issues_path fill_in "search_by_user", :with => bad_user.display_name - click_button "Search" + click_on "Search" assert_no_content I18n.t("issues.index.user_not_found") assert_no_content I18n.t("issues.index.issues_not_found") end @@ -106,7 +106,7 @@ class IssuesTest < ApplicationSystemTestCase visit issue_path(issue) fill_in :issue_comment_body, :with => "test comment" - click_button "Add Comment" + click_on "Add Comment" assert_content I18n.t("issue_comments.create.comment_created") assert_content "test comment" @@ -123,7 +123,7 @@ class IssuesTest < ApplicationSystemTestCase fill_in :issue_comment_body, :with => "reassigning to moderators" check :reassign - click_button "Add Comment" + click_on "Add Comment" assert_content "and the issue was reassigned" assert_current_path issues_path(:status => "open") @@ -140,7 +140,7 @@ class IssuesTest < ApplicationSystemTestCase fill_in :issue_comment_body, :with => "reassigning to moderators" check :reassign - click_button "Add Comment" + click_on "Add Comment" assert_content "and the issue was reassigned" assert_current_path issue_path(issue) diff --git a/test/system/messages_test.rb b/test/system/messages_test.rb new file mode 100644 index 000000000..dea0d2208 --- /dev/null +++ b/test/system/messages_test.rb @@ -0,0 +1,41 @@ +require "application_system_test_case" + +class MessagesTest < ApplicationSystemTestCase + def test_delete_received_message + user = create(:user) + create(:message, :recipient => user) + sign_in_as(user) + + visit inbox_messages_path + assert_text "You have 1 new message and 0 old messages" + + click_on "Delete" + assert_text "You have 0 new messages and 0 old messages" + end + + def test_delete_sent_message + user = create(:user) + create(:message, :sender => user) + sign_in_as(user) + + visit outbox_messages_path + assert_text "You have 1 sent message" + + click_on "Delete" + assert_text "You have 0 sent messages" + end + + def test_delete_muted_message + user = create(:user) + muted_user = create(:user) + create(:user_mute, :owner => user, :subject => muted_user) + create(:message, :sender => muted_user, :recipient => user) + sign_in_as(user) + + visit muted_messages_path + assert_text "1 muted message" + + click_on "Delete" + assert_text "0 muted messages" + end +end diff --git a/test/system/note_comments_test.rb b/test/system/note_comments_test.rb index 23f3fc98e..7c830cc37 100644 --- a/test/system/note_comments_test.rb +++ b/test/system/note_comments_test.rb @@ -1,17 +1,128 @@ require "application_system_test_case" class NoteCommentsTest < ApplicationSystemTestCase - def test_action_text + test "open note has login notice" do note = create(:note_with_comments) - sign_in_as(create(:user)) visit note_path(note) - assert_button "Resolve" - assert_button "Comment", :disabled => true + within_sidebar do + assert_no_button "Resolve" + assert_no_button "Comment" + assert_link "Log in to comment on this note", :href => login_path(:referer => note_path(note)) + end + end + + test "closed note has no login notice" do + note = create(:note_with_comments, :closed) + visit note_path(note) + + within_sidebar do + assert_no_button "Reactivate" + assert_no_link "Log in to comment on this note" + end + end + + def test_add_comment + note = create(:note_with_comments) + user = create(:user) + sign_in_as(user) + visit note_path(note) + + within_sidebar do + assert_no_content "Comment from #{user.display_name}" + assert_no_content "Some newly added note comment" + assert_button "Resolve" + assert_button "Comment", :disabled => true + + fill_in "text", :with => "Some newly added note comment" + + assert_button "Comment & Resolve" + assert_button "Comment", :disabled => false + + click_on "Comment" + + assert_content "Comment from #{user.display_name}" + assert_content "Some newly added note comment" + end + end + + test "can't add a comment when blocked" do + note = create(:note_with_comments) + user = create(:user) + sign_in_as(user) + visit note_path(note) + block = create(:user_block, :user => user) + + within_sidebar do + fill_in "text", :with => "Comment that won't be added while blocked" + + assert_no_text "Comment from #{user.display_name}" + assert_no_text "Comment that won't be added while blocked" + assert_no_text "Your access to the API has been blocked" + assert_button "Comment & Resolve", :disabled => false + assert_button "Comment", :disabled => false + + click_on "Comment" + + assert_no_text "Comment from #{user.display_name}" + assert_no_text "Comment that won't be added while blocked" + assert_text "Your access to the API has been blocked" + assert_button "Comment & Resolve", :disabled => false + assert_button "Comment", :disabled => false + + block.revoke! block.creator + + click_on "Comment" + + assert_text "Comment from #{user.display_name}" + assert_text "Comment that won't be added while blocked" + assert_no_text "Your access to the API has been blocked" + end + end + + test "can't resolve a note when blocked" do + note = create(:note_with_comments) + user = create(:user) + sign_in_as(user) + visit note_path(note) + create(:user_block, :user => user) + + within_sidebar do + assert_text "Unresolved note" + assert_no_text "Resolved note" + assert_no_text "Your access to the API has been blocked" + assert_button "Resolve", :disabled => false + assert_button "Comment", :disabled => true + + click_on "Resolve" + + assert_text "Unresolved note" + assert_no_text "Resolved note" + assert_text "Your access to the API has been blocked" + assert_button "Resolve", :disabled => false + assert_button "Comment", :disabled => true + end + end + + test "can't reactivate a note when blocked" do + note = create(:note_with_comments, :closed) + user = create(:user) + sign_in_as(user) + visit note_path(note) + create(:user_block, :user => user) + + within_sidebar do + assert_no_text "Unresolved note" + assert_text "Resolved note" + assert_no_text "Your access to the API has been blocked" + assert_button "Reactivate", :disabled => false - fill_in "text", :with => "Some text" + click_on "Reactivate" - assert_button "Comment & Resolve" - assert_button "Comment" + assert_no_text "Unresolved note" + assert_text "Resolved note" + assert_text "Your access to the API has been blocked" + assert_button "Reactivate", :disabled => false + end end end diff --git a/test/system/oauth2_test.rb b/test/system/oauth2_test.rb new file mode 100644 index 000000000..0b9213aaa --- /dev/null +++ b/test/system/oauth2_test.rb @@ -0,0 +1,16 @@ +require "application_system_test_case" + +class Oauth2Test < ApplicationSystemTestCase + def test_authorized_applications + sign_in_as(create(:user)) + visit oauth_authorized_applications_path + + assert_text "OpenStreetMap Web Site" + + accept_alert do + click_on "Revoke Access" + end + + assert_text "You have not yet authorized any OAuth 2 applications." + end +end diff --git a/test/system/preferences_test.rb b/test/system/preferences_test.rb index b071b1f73..59a7209f5 100644 --- a/test/system/preferences_test.rb +++ b/test/system/preferences_test.rb @@ -5,7 +5,7 @@ class PreferencesTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit edit_preferences_path - click_button "Update Preferences" + click_on "Update Preferences" assert_content "Preferences updated" end @@ -15,7 +15,7 @@ class PreferencesTest < ApplicationSystemTestCase visit edit_preferences_path fill_in "Preferred Languages", :with => "fr" - click_button "Update Preferences" + click_on "Update Preferences" assert_content "Préférences mises à jour" end diff --git a/test/system/report_diary_comment_test.rb b/test/system/report_diary_comment_test.rb index 15ef1ad3c..3504ab061 100644 --- a/test/system/report_diary_comment_test.rb +++ b/test/system/report_diary_comment_test.rb @@ -19,14 +19,14 @@ class ReportDiaryCommentTest < ApplicationSystemTestCase visit diary_entry_path(@diary_entry.user.display_name, @diary_entry) assert_content @diary_entry.title - click_link I18n.t("diary_entries.diary_comment.report") + click_on I18n.t("diary_entries.diary_comment.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.diary_comment.spam_label") fill_in "report_details", :with => "This comment is spam" assert_difference "Issue.count", 1 do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" diff --git a/test/system/report_diary_entry_test.rb b/test/system/report_diary_entry_test.rb index d4e49b714..dde06cffc 100644 --- a/test/system/report_diary_entry_test.rb +++ b/test/system/report_diary_entry_test.rb @@ -18,14 +18,14 @@ class ReportDiaryEntryTest < ApplicationSystemTestCase visit diary_entry_path(@diary_entry.user.display_name, @diary_entry) assert_content @diary_entry.title - click_link I18n.t("diary_entries.diary_entry.report") + click_on I18n.t("diary_entries.diary_entry.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.diary_entry.spam_label") fill_in "report_details", :with => "This is advertising" assert_difference "Issue.count", 1 do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" @@ -42,18 +42,18 @@ class ReportDiaryEntryTest < ApplicationSystemTestCase visit diary_entry_path(@diary_entry.user.display_name, @diary_entry) assert_content @diary_entry.title - click_link I18n.t("diary_entries.diary_entry.report") + click_on I18n.t("diary_entries.diary_entry.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.diary_entry.spam_label") fill_in "report_details", :with => "This is advertising" assert_no_difference "Issue.count" do - click_button "Create Report" + click_on "Create Report" end issue.reload - assert_not issue.resolved? + assert_not_predicate issue, :resolved? assert_predicate issue, :open? end diff --git a/test/system/report_note_test.rb b/test/system/report_note_test.rb index b7e1bfc9e..79894eb89 100644 --- a/test/system/report_note_test.rb +++ b/test/system/report_note_test.rb @@ -14,14 +14,14 @@ class ReportNoteTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit note_path(note) - click_link I18n.t("notes.show.report") + click_on I18n.t("notes.show.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.note.spam_label") fill_in "report_details", :with => "This is spam" assert_difference "Issue.count", 1 do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" @@ -35,14 +35,14 @@ class ReportNoteTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit note_path(note) - click_link I18n.t("notes.show.report") + click_on I18n.t("notes.show.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.note.spam_label") fill_in "report_details", :with => "This is spam" assert_difference "Issue.count", 1 do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" diff --git a/test/system/report_user_test.rb b/test/system/report_user_test.rb index 9a0abe9ea..7a9e800c8 100644 --- a/test/system/report_user_test.rb +++ b/test/system/report_user_test.rb @@ -14,14 +14,14 @@ class ReportUserTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit user_path(user) - click_link I18n.t("users.show.report") + click_on I18n.t("users.show.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.user.vandal_label") fill_in "report_details", :with => "This user is a vandal" assert_difference "Issue.count", 1 do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" @@ -35,14 +35,14 @@ class ReportUserTest < ApplicationSystemTestCase sign_in_as(create(:user)) visit user_path(user) - click_link I18n.t("users.show.report") + click_on I18n.t("users.show.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.user.vandal_label") fill_in "report_details", :with => "This user is a vandal" assert_difference "Issue.count", 1 do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" @@ -52,14 +52,14 @@ class ReportUserTest < ApplicationSystemTestCase visit user_path(user) - click_link I18n.t("users.show.report") + click_on I18n.t("users.show.report") assert_content "Report" assert_content I18n.t("reports.new.disclaimer.intro") choose I18n.t("reports.new.categories.user.spam_label") fill_in "report_details", :with => "This user is a spammer" assert_no_difference "Issue.count" do - click_button "Create Report" + click_on "Create Report" end assert_content "Your report has been registered successfully" diff --git a/test/system/user_blocks_test.rb b/test/system/user_blocks_test.rb new file mode 100644 index 000000000..f710f74aa --- /dev/null +++ b/test/system/user_blocks_test.rb @@ -0,0 +1,71 @@ +require "application_system_test_case" + +class ReportNoteTest < ApplicationSystemTestCase + test "revoke all link is absent for anonymous users when viewed user has active blocks" do + blocked_user = create(:user) + create(:user_block, :user => blocked_user) + + visit user_path(blocked_user) + assert_no_link "Revoke all blocks" + end + + test "revoke all link is absent for regular users when viewed user has active blocks" do + blocked_user = create(:user) + create(:user_block, :user => blocked_user) + sign_in_as(create(:user)) + + visit user_path(blocked_user) + assert_no_link "Revoke all blocks" + end + + test "revoke all link is absent for moderators when viewed user has no active blocks" do + blocked_user = create(:user) + create(:user_block, :expired, :user => blocked_user) + sign_in_as(create(:moderator_user)) + + visit user_path(blocked_user) + assert_no_link "Revoke all blocks" + end + + test "revoke all page has no controls when viewed user has no active blocks" do + blocked_user = create(:user) + sign_in_as(create(:moderator_user)) + + visit revoke_all_user_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!" + end + + test "revoke all link is present and working for moderators when viewed user has one active block" do + blocked_user = create(:user) + create(:user_block, :user => blocked_user) + sign_in_as(create(:moderator_user)) + + visit user_path(blocked_user) + assert_link "Revoke all blocks" + + click_on "Revoke all blocks" + assert_title "Revoking all blocks on #{blocked_user.display_name}" + assert_text "Revoking all blocks on #{blocked_user.display_name}" + assert_unchecked_field "Are you sure you wish to revoke 1 active block?" + assert_button "Revoke!" + end + + test "revoke all link is present and working for moderators when viewed user has multiple active blocks" do + blocked_user = create(:user) + create(:user_block, :user => blocked_user) + create(:user_block, :user => blocked_user) + create(:user_block, :expired, :user => blocked_user) + sign_in_as(create(:moderator_user)) + + visit user_path(blocked_user) + assert_link "Revoke all blocks" + + click_on "Revoke all blocks" + assert_title "Revoking all blocks on #{blocked_user.display_name}" + assert_text "Revoking all blocks on #{blocked_user.display_name}" + assert_unchecked_field "Are you sure you wish to revoke 2 active blocks?" + assert_button "Revoke!" + end +end diff --git a/test/system/user_logout_test.rb b/test/system/user_logout_test.rb index fc27b7c18..2f5331711 100644 --- a/test/system/user_logout_test.rb +++ b/test/system/user_logout_test.rb @@ -6,8 +6,8 @@ class UserLogoutTest < ApplicationSystemTestCase sign_in_as(user) assert_no_content "Log In" - click_button user.display_name - click_link "Log Out" + click_on user.display_name + click_on "Log Out" assert_content "Log In" end @@ -17,8 +17,8 @@ class UserLogoutTest < ApplicationSystemTestCase visit traces_path assert_no_content "Log In" - click_button user.display_name - click_link "Log Out" + click_on user.display_name + click_on "Log Out" assert_content "Log In" assert_content "Public GPS Traces" end @@ -30,7 +30,7 @@ class UserLogoutTest < ApplicationSystemTestCase visit logout_path assert_content "Logout from OpenStreetMap" - click_button "Logout" + click_on "Logout" assert_content "Log In" end @@ -41,7 +41,7 @@ class UserLogoutTest < ApplicationSystemTestCase visit logout_path(:referer => "/traces") assert_content "Logout from OpenStreetMap" - click_button "Logout" + click_on "Logout" assert_content "Log In" assert_content "Public GPS Traces" end diff --git a/test/system/user_muting_test.rb b/test/system/user_muting_test.rb new file mode 100644 index 000000000..e70005e64 --- /dev/null +++ b/test/system/user_muting_test.rb @@ -0,0 +1,44 @@ +require "application_system_test_case" + +class UserMutingTest < ApplicationSystemTestCase + # NB: loads helpers to verify mailer-related behaviour e.g. via assert_no_emails + include ActionMailer::TestHelper + + test "users can mute and unmute other users" do + user = create(:user) + other_user = create(:user) + sign_in_as(user) + + visit user_path(other_user) + click_on "Mute this User" + assert_content "You muted #{other_user.display_name}" + + visit edit_account_path + assert_content "Muted Users" + click_on "Muted Users" + assert_content "You have muted 1 User" + click_on "Unmute" + + assert_content "You unmuted #{other_user.display_name}" + refute_content "Muted Users" + assert_current_path edit_account_path + end + + test "messages sent by muted users are set `muted` and do not cause notification emails" do + user = create(:user) + muted_user = create(:user) + create(:user_mute, :owner => user, :subject => muted_user) + sign_in_as(muted_user) + + visit new_message_path(user) + fill_in "Subject", :with => "Hey Hey" + fill_in "Body", :with => "some message" + + assert_no_emails do + click_on "Send" + end + + message = Message.find_by(:sender => muted_user, :recipient => user) + assert_predicate message, :muted? + end +end diff --git a/test/system/user_signup_test.rb b/test/system/user_signup_test.rb index 88899d710..e97046800 100644 --- a/test/system/user_signup_test.rb +++ b/test/system/user_signup_test.rb @@ -4,7 +4,7 @@ class UserSignupTest < ApplicationSystemTestCase test "Sign up from login page" do visit login_path - click_link "Register now" + click_on "Register now" assert_content "Confirm Password" end @@ -13,16 +13,19 @@ class UserSignupTest < ApplicationSystemTestCase user = build(:user) visit root_path - click_link "Sign Up" - fill_in "Email", :with => user.email - fill_in "Email Confirmation", :with => user.email - fill_in "Display Name", :with => user.display_name - fill_in "Password", :with => "testtest" - fill_in "Confirm Password", :with => "testtest" - click_button "Sign Up" + click_on "Sign Up" + + within ".new_user" do + fill_in "Email", :with => user.email + fill_in "Email Confirmation", :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 assert_content "Contributor terms" - click_button "Cancel" + click_on "Cancel" assert_current_path "https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined" end diff --git a/test/system/user_status_change_test.rb b/test/system/user_status_change_test.rb index e4cca1eab..30b923732 100644 --- a/test/system/user_status_change_test.rb +++ b/test/system/user_status_change_test.rb @@ -10,7 +10,7 @@ class UserStatusChangeTest < ApplicationSystemTestCase user = create(:user, :suspended) visit user_path(user) accept_confirm do - click_link "Unsuspend" + click_on "Unsuspend" end assert_no_content "Unsuspend" @@ -22,7 +22,7 @@ class UserStatusChangeTest < ApplicationSystemTestCase user = create(:user, :suspended) visit user_path(user) accept_confirm do - click_link "Confirm" + click_on "Confirm" end assert_no_content "Unsuspend" diff --git a/test/system/view_communities_test.rb b/test/system/view_communities_test.rb index 539daaa30..349d0a5bf 100644 --- a/test/system/view_communities_test.rb +++ b/test/system/view_communities_test.rb @@ -13,7 +13,7 @@ class ViewCommunitiesTest < ApplicationSystemTestCase visit edit_preferences_path fill_in "Preferred Languages", :with => "fr" - click_button "Update Preferences" + click_on "Update Preferences" visit "/communities" assert_link "OpenStreetMap États-Unis", :href => "https://www.openstreetmap.us/" diff --git a/test/test_helper.rb b/test/test_helper.rb index 19e1a2784..222e65764 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -243,9 +243,11 @@ module ActiveSupport def sign_in_as(user) visit login_path - fill_in "username", :with => user.email - fill_in "password", :with => "test" - click_button "Login", :match => :first + within "form", :text => "Email Address or Username" do + fill_in "username", :with => user.email + fill_in "password", :with => "test" + click_on "Login" + end end def session_for(user) diff --git a/test/validators/characters_validator_test.rb b/test/validators/characters_validator_test.rb index 341ca4d77..4c8be21e5 100644 --- a/test/validators/characters_validator_test.rb +++ b/test/validators/characters_validator_test.rb @@ -36,7 +36,7 @@ class CharactersValidatorTest < ActiveSupport::TestCase invalid.each do |v| c.chars = v - assert_not c.valid?, "'#{v}' should not be valid" + assert_not_predicate c, :valid?, "'#{v}' should not be valid" end end @@ -60,7 +60,7 @@ class CharactersValidatorTest < ActiveSupport::TestCase invalid.each do |v| c.chars = v - assert_not c.valid?, "'#{v}' should not be valid" + assert_not_predicate c, :valid?, "'#{v}' should not be valid" end end end diff --git a/test/validators/whitespace_validator_test.rb b/test/validators/whitespace_validator_test.rb index 2607d9f23..1cb325df3 100644 --- a/test/validators/whitespace_validator_test.rb +++ b/test/validators/whitespace_validator_test.rb @@ -22,7 +22,7 @@ class WhitespaceValidatorTest < ActiveSupport::TestCase strings.each do |v| validator.string = v - assert_not validator.valid?, "'#{v}' should not be valid" + assert_not_predicate validator, :valid?, "'#{v}' should not be valid" end end @@ -44,7 +44,7 @@ class WhitespaceValidatorTest < ActiveSupport::TestCase strings.each do |v| validator.string = v - assert_not validator.valid?, "'#{v}' should not be valid" + assert_not_predicate validator, :valid?, "'#{v}' should not be valid" end end diff --git a/yarn.lock b/yarn.lock index 2eee9b212..f113d5752 100644 --- a/yarn.lock +++ b/yarn.lock @@ -34,10 +34,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@8.55.0": - version "8.55.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.55.0.tgz#b721d52060f369aa259cf97392403cb9ce892ec6" - integrity sha512-qQfo2mxH5yVom1kacMtZZJFVdW+E70mqHMJvVg6WTLo+VBuQJ4TojZlfWBjK0ve5BdEeNAVxOsl/nvNMpJOaJA== +"@eslint/js@8.56.0": + version "8.56.0" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.56.0.tgz#ef20350fec605a7f7035a01764731b2de0f3782b" + integrity sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A== "@humanwhocodes/config-array@^0.11.13": version "0.11.13" @@ -229,14 +229,14 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4 integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== eslint@^8.0.0: - version "8.55.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.55.0.tgz#078cb7b847d66f2c254ea1794fa395bf8e7e03f8" - integrity sha512-iyUUAM0PCKj5QpwGfmCAG9XXbZCWsqP/eWAWrG/W0umvjuLRBECwSFdt+rCntju0xEH7teIABPwXpahftIaTdA== + version "8.56.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.56.0.tgz#4957ce8da409dc0809f99ab07a1b94832ab74b15" + integrity sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.6.1" "@eslint/eslintrc" "^2.1.4" - "@eslint/js" "8.55.0" + "@eslint/js" "8.56.0" "@humanwhocodes/config-array" "^0.11.13" "@humanwhocodes/module-importer" "^1.0.1" "@nodelib/fs.walk" "^1.2.8" @@ -574,9 +574,9 @@ optionator@^0.9.3: type-check "^0.4.0" osm-community-index@^5.2.0: - version "5.6.0" - resolved "https://registry.yarnpkg.com/osm-community-index/-/osm-community-index-5.6.0.tgz#b2361fce7ded723844b0ed68d47bddfc4a8cb240" - integrity sha512-C5AqEWidBIgKeaJKQwuPWvDqSzm9CpZgDbHDi+k4+ZCHBazRQjnl7TpWVv2/fQWMqsJL3I5qzh19rXBTWMWL1A== + version "5.6.1" + resolved "https://registry.yarnpkg.com/osm-community-index/-/osm-community-index-5.6.1.tgz#5be72c700145e94c57f2006e6f767a0e49d93870" + integrity sha512-eMi5mDwwLkt3tbZtD60+aMj4kIa3smlQanxb3OcvJa2pv6w5uVCLbyCem0j8cTqAO3A+C7HD4T7dFUyt2WCYaQ== dependencies: diacritics "^1.3.0"