gem "quad_tile", "~> 1.0.1"
# Sanitise URIs
+gem "addressable", "~> 2.8"
gem "rack-uri_sanitizer"
# Omniauth for authentication
gem "dalli"
gem "kgio"
-# Load secure_headers for Content-Security-Policy support
-gem "secure_headers"
-
# Load canonical-rails to generate canonical URLs
gem "canonical-rails"
specs:
aasm (5.5.0)
concurrent-ruby (~> 1.0)
- actioncable (7.1.3.3)
- actionpack (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ actioncable (7.1.3.4)
+ actionpack (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
zeitwerk (~> 2.6)
- actionmailbox (7.1.3.3)
- actionpack (= 7.1.3.3)
- activejob (= 7.1.3.3)
- activerecord (= 7.1.3.3)
- activestorage (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ actionmailbox (7.1.3.4)
+ actionpack (= 7.1.3.4)
+ activejob (= 7.1.3.4)
+ activerecord (= 7.1.3.4)
+ activestorage (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
mail (>= 2.7.1)
net-imap
net-pop
net-smtp
- actionmailer (7.1.3.3)
- actionpack (= 7.1.3.3)
- actionview (= 7.1.3.3)
- activejob (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ actionmailer (7.1.3.4)
+ actionpack (= 7.1.3.4)
+ actionview (= 7.1.3.4)
+ activejob (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
mail (~> 2.5, >= 2.5.4)
net-imap
net-pop
net-smtp
rails-dom-testing (~> 2.2)
- actionpack (7.1.3.3)
- actionview (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ actionpack (7.1.3.4)
+ actionview (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
nokogiri (>= 1.8.5)
racc
rack (>= 2.2.4)
rails-html-sanitizer (~> 1.6)
actionpack-page_caching (1.2.4)
actionpack (>= 4.0.0)
- actiontext (7.1.3.3)
- actionpack (= 7.1.3.3)
- activerecord (= 7.1.3.3)
- activestorage (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ actiontext (7.1.3.4)
+ actionpack (= 7.1.3.4)
+ activerecord (= 7.1.3.4)
+ activestorage (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
globalid (>= 0.6.0)
nokogiri (>= 1.8.5)
- actionview (7.1.3.3)
- activesupport (= 7.1.3.3)
+ actionview (7.1.3.4)
+ activesupport (= 7.1.3.4)
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.3.3)
- activesupport (= 7.1.3.3)
+ activejob (7.1.3.4)
+ activesupport (= 7.1.3.4)
globalid (>= 0.3.6)
- activemodel (7.1.3.3)
- activesupport (= 7.1.3.3)
- activerecord (7.1.3.3)
- activemodel (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ activemodel (7.1.3.4)
+ activesupport (= 7.1.3.4)
+ activerecord (7.1.3.4)
+ activemodel (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
timeout (>= 0.4.0)
- activerecord-import (1.6.0)
+ activerecord-import (1.7.0)
activerecord (>= 4.2)
- activestorage (7.1.3.3)
- actionpack (= 7.1.3.3)
- activejob (= 7.1.3.3)
- activerecord (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ activestorage (7.1.3.4)
+ actionpack (= 7.1.3.4)
+ activejob (= 7.1.3.4)
+ activerecord (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
marcel (~> 1.0)
- activesupport (7.1.3.3)
+ activesupport (7.1.3.4)
base64
bigdecimal
concurrent-ruby (~> 1.0, >= 1.0.2)
autoprefixer-rails (10.4.16.0)
execjs (~> 2)
aws-eventstream (1.3.0)
- aws-partitions (1.928.0)
- aws-sdk-core (3.196.0)
+ aws-partitions (1.944.0)
+ aws-sdk-core (3.197.0)
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.81.0)
- aws-sdk-core (~> 3, >= 3.193.0)
+ aws-sdk-kms (1.85.0)
+ aws-sdk-core (~> 3, >= 3.197.0)
aws-sigv4 (~> 1.1)
- aws-sdk-s3 (1.150.0)
- aws-sdk-core (~> 3, >= 3.194.0)
+ aws-sdk-s3 (1.152.3)
+ aws-sdk-core (~> 3, >= 3.197.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.8)
aws-sigv4 (1.8.0)
racc
brotli (0.5.0)
browser (5.3.1)
- builder (3.2.4)
+ builder (3.3.0)
bzip2-ffi (1.1.1)
ffi (~> 1.0)
- cancancan (3.5.0)
+ cancancan (3.6.1)
canonical-rails (0.2.15)
actionview (>= 4.1, <= 7.2)
capybara (3.40.0)
rack-test (>= 0.6.3)
regexp_parser (>= 1.5, < 3.0)
xpath (~> 3.2)
- concurrent-ruby (1.2.3)
- config (5.4.0)
+ concurrent-ruby (1.3.3)
+ config (5.5.1)
deep_merge (~> 1.2, >= 1.2.1)
connection_pool (2.4.1)
crack (1.0.0)
concurrent-ruby (~> 1.0)
dry-core (~> 1.0, < 2)
zeitwerk (~> 2.6)
- dry-schema (1.13.3)
+ dry-schema (1.13.4)
concurrent-ruby (~> 1.0)
dry-configurable (~> 1.0, >= 1.0.1)
dry-core (~> 1.0, < 2)
rainbow
rubocop
smart_properties
- erubi (1.12.0)
+ erubi (1.13.0)
execjs (2.9.1)
exifr (1.4.0)
factory_bot (6.4.6)
factory_bot_rails (6.4.3)
factory_bot (~> 6.4)
railties (>= 5.0.0)
- faraday (2.9.0)
+ faraday (2.9.2)
faraday-net_http (>= 2.0, < 3.2)
faraday-net_http (3.1.0)
net-http
- ffi (1.16.3)
+ ffi (1.17.0)
ffi-compiler (1.3.2)
ffi (>= 1.15.5)
rake
image_size (3.4.0)
in_threads (1.6.0)
io-console (0.7.2)
- irb (1.13.1)
+ irb (1.13.2)
rdoc (>= 4.0.0)
reline (>= 0.4.2)
jbuilder (2.12.0)
railties (>= 4.2.0)
thor (>= 0.14, < 2.0)
json (2.7.2)
- jwt (2.8.1)
+ jwt (2.8.2)
base64
kgio (2.11.4)
kramdown (2.4.0)
marcel (1.0.4)
matrix (0.4.2)
maxminddb (0.1.22)
- mini_magick (4.12.0)
+ mini_magick (4.13.1)
mini_mime (1.1.5)
- mini_portile2 (2.8.6)
+ mini_portile2 (2.8.7)
mini_racer (0.9.0)
libv8-node (~> 18.19.0.0)
- minitest (5.23.0)
+ minitest (5.23.1)
minitest-focus (1.4.0)
minitest (>= 4, < 6)
msgpack (1.7.2)
mutex_m (0.2.0)
net-http (0.4.1)
uri
- net-imap (0.4.11)
+ net-imap (0.4.13)
date
net-protocol
net-pop (0.1.2)
net-smtp (0.5.0)
net-protocol
nio4r (2.7.3)
- nokogiri (1.16.5)
+ nokogiri (1.16.6)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
oauth (0.4.7)
hashie (>= 3.4.6)
rack (>= 1.6.2, < 3)
rack-protection
- omniauth-facebook (9.0.0)
- omniauth-oauth2 (~> 1.2)
+ omniauth-facebook (10.0.0)
+ bigdecimal
+ omniauth-oauth2 (>= 1.2, < 3)
omniauth-github (2.0.1)
omniauth (~> 2.0)
omniauth-oauth2 (~> 1.8)
omniauth-mediawiki (0.0.4)
jwt (~> 2.0)
omniauth-oauth (~> 1.0)
- omniauth-microsoft_graph (2.0.0)
+ omniauth-microsoft_graph (2.0.1)
jwt (~> 2.0)
omniauth (~> 2.0)
omniauth-oauth2 (~> 1.8.0)
actionpack (>= 4.2)
omniauth (~> 2.0)
openstreetmap-deadlock_retry (1.3.1)
- parallel (1.24.0)
- parser (3.3.1.0)
+ parallel (1.25.1)
+ parser (3.3.3.0)
ast (~> 2.4.1)
racc
pg (1.5.6)
progress (3.6.0)
psych (5.1.2)
stringio
- public_suffix (5.0.5)
+ public_suffix (5.1.1)
puma (5.6.8)
nio4r (~> 2.0)
quad_tile (1.0.1)
- racc (1.7.3)
+ racc (1.8.0)
rack (2.2.9)
rack-cors (2.0.2)
rack (>= 2.0.0)
rackup (1.0.0)
rack (< 3)
webrick
- rails (7.1.3.3)
- actioncable (= 7.1.3.3)
- actionmailbox (= 7.1.3.3)
- actionmailer (= 7.1.3.3)
- actionpack (= 7.1.3.3)
- actiontext (= 7.1.3.3)
- actionview (= 7.1.3.3)
- activejob (= 7.1.3.3)
- activemodel (= 7.1.3.3)
- activerecord (= 7.1.3.3)
- activestorage (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ rails (7.1.3.4)
+ actioncable (= 7.1.3.4)
+ actionmailbox (= 7.1.3.4)
+ actionmailer (= 7.1.3.4)
+ actionpack (= 7.1.3.4)
+ actiontext (= 7.1.3.4)
+ actionview (= 7.1.3.4)
+ activejob (= 7.1.3.4)
+ activemodel (= 7.1.3.4)
+ activerecord (= 7.1.3.4)
+ activestorage (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
bundler (>= 1.15.0)
- railties (= 7.1.3.3)
+ railties (= 7.1.3.4)
rails-controller-testing (1.0.5)
actionpack (>= 5.0.1.rc1)
actionview (>= 5.0.1.rc1)
rails_param (1.3.1)
actionpack (>= 3.2.0)
activesupport (>= 3.2.0)
- railties (7.1.3.3)
- actionpack (= 7.1.3.3)
- activesupport (= 7.1.3.3)
+ railties (7.1.3.4)
+ actionpack (= 7.1.3.4)
+ activesupport (= 7.1.3.4)
irb
rackup (>= 1.0.0)
rake (>= 12.2)
rainbow (3.1.1)
rake (13.2.1)
rb-fsevent (0.11.2)
- rb-inotify (0.10.1)
+ rb-inotify (0.11.1)
ffi (~> 1.0)
- rdoc (6.6.3.1)
+ rdoc (6.7.0)
psych (>= 4.0.0)
- regexp_parser (2.9.1)
- reline (0.5.7)
+ regexp_parser (2.9.2)
+ reline (0.5.9)
io-console (~> 0.5)
request_store (1.7.0)
rack (>= 1.4)
- rexml (3.2.6)
+ rexml (3.3.0)
+ strscan
rinku (2.0.6)
rotp (6.3.0)
- rouge (4.2.1)
+ rouge (4.3.0)
rtlcss (0.2.1)
mini_racer (>= 0.6.3)
- rubocop (1.63.5)
+ rubocop (1.64.1)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
parallel (~> 1.10)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.31.3)
parser (>= 3.3.1.0)
- rubocop-capybara (2.20.0)
- rubocop (~> 1.41)
- rubocop-factory_bot (2.25.1)
+ rubocop-capybara (2.21.0)
rubocop (~> 1.41)
+ rubocop-factory_bot (2.26.1)
+ rubocop (~> 1.61)
rubocop-minitest (0.35.0)
rubocop (>= 1.61, < 2.0)
rubocop-ast (>= 1.31.1, < 2.0)
- rubocop-performance (1.21.0)
+ rubocop-performance (1.21.1)
rubocop (>= 1.48.1, < 2.0)
rubocop-ast (>= 1.31.1, < 2.0)
- rubocop-rails (2.24.1)
+ rubocop-rails (2.25.0)
activesupport (>= 4.2.0)
rack (>= 1.1)
rubocop (>= 1.33.0, < 2.0)
ruby-vips (2.2.1)
ffi (~> 1.12)
rubyzip (2.3.2)
- sanitize (6.1.0)
+ sanitize (6.1.1)
crass (~> 1.0.2)
nokogiri (>= 1.12.0)
sass-embedded (1.64.2)
google-protobuf (~> 3.23)
rake (>= 13.0.0)
- secure_headers (6.5.0)
- selenium-webdriver (4.20.1)
+ selenium-webdriver (4.21.1)
base64 (~> 0.2)
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2, < 3.0)
simplecov-html (0.12.3)
simplecov-lcov (0.8.0)
simplecov_json_formatter (0.1.4)
- simpleidn (0.2.2)
- unf (~> 0.1.4)
+ simpleidn (0.2.3)
smart_properties (1.17.0)
snaky_hash (2.0.1)
hashie
sprockets-exporters_pack (0.1.2)
brotli (>= 0.2.0)
sprockets (>= 4.0.0.beta3)
- sprockets-rails (3.4.2)
- actionpack (>= 5.2)
- activesupport (>= 5.2)
+ sprockets-rails (3.5.1)
+ actionpack (>= 6.1)
+ activesupport (>= 6.1)
sprockets (>= 3.0.0)
- stringio (3.1.0)
+ stringio (3.1.1)
strong_migrations (1.8.0)
activerecord (>= 5.2)
+ strscan (3.1.0)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
- terser (1.2.2)
+ terser (1.2.3)
execjs (>= 0.3.0, < 3)
thor (1.3.1)
tilt (2.3.0)
railties (>= 6.0.0)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
- unf (0.1.4)
- unf_ext
- unf_ext (0.0.9.1)
unicode-display_width (2.5.0)
uri (0.13.0)
validates_email_format_of (1.8.2)
simpleidn
vendorer (0.2.0)
version_gem (1.1.4)
- webmock (3.23.0)
+ webmock (3.23.1)
addressable (>= 2.8.0)
crack (>= 0.3.2)
hashdiff (>= 0.4.0, < 2.0.0)
websocket-extensions (0.1.5)
xpath (3.2.0)
nokogiri (~> 1.8)
- zeitwerk (2.6.14)
+ zeitwerk (2.6.16)
PLATFORMS
ruby
actionpack-page_caching (>= 1.2.0)
active_record_union
activerecord-import
+ addressable (~> 2.8)
annotate
argon2
autoprefixer-rails
rubocop-rake
sanitize
sass-embedded (~> 1.64.0)
- secure_headers
selenium-webdriver
simplecov
simplecov-lcov
* Tom Hughes [@tomhughes](https://github.com/tomhughes/)
* Andy Allan [@gravitystorm](https://github.com/gravitystorm/)
+* Anton Khorev [@AntonKhorev](https://github.com/AntonKhorev/)
can [:index, :feed, :show], Changeset
can :index, ChangesetComment
can [:confirm, :confirm_resend, :confirm_email], :confirmation
- can [:index, :rss, :show, :comments], DiaryEntry
+ can [:index, :rss, :show], DiaryEntry
+ can :index, DiaryComment
can [:index], Note
can [:new, :create, :edit, :update], :password
can [:index, :show], Redaction
can [:index, :create, :destroy], UserMute
if user.moderator?
- can [:hide, :unhide, :hidecomment, :unhidecomment], DiaryEntry
+ can [:hide, :unhide], [DiaryEntry, DiaryComment]
can [:index, :show, :resolve, :ignore, :reopen], Issue
can :create, IssueComment
can [:new, :create, :edit, :update, :destroy], Redaction
end
if user.administrator?
- can [:hide, :unhide, :hidecomment, :unhidecomment], DiaryEntry
+ can [:hide, :unhide], [DiaryEntry, DiaryComment]
can [:index, :show, :resolve, :ignore, :reopen], Issue
can :create, IssueComment
can [:set_status, :destroy, :index], User
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-
-<svg
- xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://creativecommons.org/ns#"
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns:svg="http://www.w3.org/2000/svg"
- xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="320"
- height="200"
- id="svg2"
- version="1.1"
- inkscape:version="0.48.4 r9939"
- inkscape:export-filename="./sprite@2x.png"
- inkscape:export-xdpi="180"
- inkscape:export-ydpi="180"
- sodipodi:docname="sprite.svg">
- <defs
- id="defs4">
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4253">
- <path
- style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 445.5,-52.21875 c -8.23506,3.941544 -15.68019,9.273939 -22.0625,15.65625 l 113.125,113.125 C 542.94481,70.18019 548.27721,62.73506 552.21875,54.5 L 445.5,-52.21875 z"
- id="path4255"
- inkscape:connector-curvature="0" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4257">
- <path
- style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 407.78125,-14.5 c -4.39728,9.187219 -7.07096,19.3435 -7.65625,30.0625 l 84.3125,84.3125 c 10.719,-0.58529 20.87528,-3.25897 30.0625,-7.65625 L 407.78125,-14.5 z"
- id="path4259"
- inkscape:connector-curvature="0" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4261">
- <path
- style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 423.4375,-36.5625 c -6.38231,6.382311 -11.71471,13.827444 -15.65625,22.0625 L 514.5,92.21875 c 8.23506,-3.94154 15.68019,-9.27394 22.0625,-15.65625 l -113.125,-113.125 z"
- id="path4263"
- inkscape:connector-curvature="0" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4265">
- <path
- style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="M 400.125,15.5625 C 400.04489,17.02967 400,18.51283 400,20 c 0,22.09139 8.96035,42.08535 23.4375,56.5625 C 437.91465,91.03965 457.90861,100 480,100 c 1.48717,0 2.97033,-0.04489 4.4375,-0.125 L 400.125,15.5625 z"
- id="path4267"
- inkscape:connector-curvature="0" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4280">
- <path
- style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 475.5625,-59.875 c -10.719,0.585293 -20.87528,3.258972 -30.0625,7.65625 L 552.21875,54.5 c 4.39728,-9.18722 7.07096,-19.3435 7.65625,-30.0625 L 475.5625,-59.875 z"
- id="path4282"
- inkscape:connector-curvature="0" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4295">
- <path
- style="color:#000000;fill:#555555;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 480,-60 c -1.48717,0 -2.97033,0.04489 -4.4375,0.125 L 559.875,24.4375 C 559.95511,22.97033 560,21.48717 560,20 560,-2.09139 551.03965,-22.085347 536.5625,-36.5625 522.08535,-51.039653 502.09139,-60 480,-60 z"
- id="path4297"
- inkscape:connector-curvature="0" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath4864">
- <rect
- style="color:#000000;fill:#202020;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="rect4866"
- width="420"
- height="160"
- x="110"
- y="812.36218" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath5076">
- <rect
- y="785.52893"
- x="39.999992"
- height="213.3333"
- width="559.99988"
- id="rect5078"
- style="color:#000000;fill:#202020;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath3009">
- <rect
- y="732.86218"
- x="0"
- height="320"
- width="640"
- id="rect3011"
- style="color:#000000;fill:#222b30;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:11;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- </clipPath>
- <clipPath
- clipPathUnits="userSpaceOnUse"
- id="clipPath5092">
- <rect
- style="color:#000000;fill:#202020;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="rect5094"
- width="420"
- height="160"
- x="30"
- y="852.36218" />
- </clipPath>
- </defs>
- <sodipodi:namedview
- id="base"
- pagecolor="#ffffff"
- bordercolor="#666666"
- borderopacity="1.0"
- inkscape:pageopacity="0.0"
- inkscape:pageshadow="2"
- inkscape:zoom="2.8177596"
- inkscape:cx="119.20742"
- inkscape:cy="107.0188"
- inkscape:document-units="px"
- inkscape:current-layer="svg2"
- showgrid="true"
- showguides="false"
- inkscape:guide-bbox="true"
- showborder="true"
- width="4212.99px"
- inkscape:window-width="1242"
- inkscape:window-height="760"
- inkscape:window-x="51"
- inkscape:window-y="189"
- inkscape:window-maximized="0"
- fit-margin-top="0"
- fit-margin-left="0"
- fit-margin-right="0"
- fit-margin-bottom="0">
- <inkscape:grid
- type="xygrid"
- id="grid2985"
- empspacing="5"
- visible="true"
- enabled="true"
- snapvisiblegridlinesonly="true" />
- </sodipodi:namedview>
- <metadata
- id="metadata7">
- <rdf:RDF>
- <cc:Work
- rdf:about="">
- <dc:format>image/svg+xml</dc:format>
- <dc:type
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
- <dc:title></dc:title>
- </cc:Work>
- </rdf:RDF>
- </metadata>
- <g
- inkscape:groupmode="layer"
- id="layer2"
- inkscape:label="gray"
- style="display:inline"
- transform="translate(0,20)" />
- <g
- inkscape:groupmode="layer"
- id="layer3"
- inkscape:label="sprite"
- style="display:inline"
- transform="translate(0,20)">
- <path
- sodipodi:type="arc"
- style="opacity:0.98000004;color:#000000;fill:#7ec95c;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="path4499"
- sodipodi:cx="220"
- sodipodi:cy="20"
- sodipodi:rx="15"
- sodipodi:ry="15"
- d="m 235,20 c 0,8.284271 -6.71573,15 -15,15 -8.28427,0 -15,-6.715729 -15,-15 0,-8.284271 6.71573,-15 15,-15 8.28427,0 15,6.715729 15,15 z"
- transform="translate(0,-20)" />
- <path
- style="opacity:0.98000004;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="M 215.5,-6 214,-4.5 218.5,0 214,4.5 215.5,6 220,1.5 224.5,6 226,4.5 221.5,0 226,-4.5 224.5,-6 220,-1.5 215.5,-6 z"
- id="path3965"
- inkscape:connector-curvature="0" />
- <path
- style="opacity:0.98000004;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 303,-6 -1,1 0,3 -6,0 -1,1 0,2 1,1 6,0 0,3 1,1 5,-6 z"
- id="path3921"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccccccccccc" />
- <g
- transform="translate(-260,-1042.3622)"
- id="g7110">
- <path
- transform="matrix(0.86666662,0,0,0.86666662,54.000012,588.69555)"
- d="m 270,610 c 0,8.28427 -6.71573,15 -15,15 -8.28427,0 -15,-6.71573 -15,-15 0,-8.28427 6.71573,-15 15,-15 8.28427,0 15,6.71573 15,15 z"
- sodipodi:ry="15"
- sodipodi:rx="15"
- sodipodi:cy="610"
- sodipodi:cx="255"
- id="path15441"
- style="color:#000000;fill:none;stroke:#c0c0c0;stroke-width:4.61538458;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- sodipodi:type="arc" />
- <text
- sodipodi:linespacing="125%"
- id="text15443"
- y="1123.7971"
- x="281.65521"
- style="font-size:18px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-indent:0;text-align:end;text-decoration:none;line-height:125%;letter-spacing:0px;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:end;baseline-shift:baseline;color:#000000;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:#c0c0c0;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Helvetica Neue;-inkscape-font-specification:Helvetica Neue Bold"
- xml:space="preserve"><tspan
- y="1123.7971"
- x="281.65521"
- id="tspan15445"
- sodipodi:role="line">C</tspan></text>
- </g>
- <g
- transform="translate(-260,-1722.3623)"
- id="g7115">
- <path
- sodipodi:type="arc"
- style="color:#000000;fill:none;stroke:#c0c0c0;stroke-width:4.61538458;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="path15563"
- sodipodi:cx="255"
- sodipodi:cy="610"
- sodipodi:rx="15"
- sodipodi:ry="15"
- d="m 270,610 c 0,8.28427 -6.71573,15 -15,15 -8.28427,0 -15,-6.71573 -15,-15 0,-8.28427 6.71573,-15 15,-15 8.28427,0 15,6.71573 15,15 z"
- transform="matrix(0.86666662,0,0,0.86666662,54.000012,1308.6956)" />
- <rect
- ry="2"
- rx="2"
- transform="matrix(0,-1,1,0,0,0)"
- style="color:#000000;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="rect11874-2"
- width="12"
- height="4"
- x="-1843.3622"
- y="273" />
- <rect
- y="1835.3622"
- x="269.00009"
- height="4.0002432"
- width="12"
- id="rect15609"
- style="color:#000000;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- rx="2.0001216"
- ry="2.0001216" />
- </g>
- <g
- transform="translate(-260,-2012.3623)"
- id="g7120">
- <path
- transform="matrix(0.86666662,0,0,0.86666662,54.000012,1638.6956)"
- d="m 270,610 c 0,8.28427 -6.71573,15 -15,15 -8.28427,0 -15,-6.71573 -15,-15 0,-8.28427 6.71573,-15 15,-15 8.28427,0 15,6.71573 15,15 z"
- sodipodi:ry="15"
- sodipodi:rx="15"
- sodipodi:cy="610"
- sodipodi:cx="255"
- id="path15611"
- style="color:#000000;fill:none;stroke:#c55151;stroke-width:4.61538458;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- sodipodi:type="arc" />
- <rect
- y="1725.0107"
- x="-1344.1022"
- height="4"
- width="12"
- id="rect15631"
- style="color:#000000;fill:#c55151;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- transform="matrix(0.70710678,-0.70710678,0.70710678,0.70710678,0,0)"
- rx="2"
- ry="2" />
- <rect
- transform="matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)"
- ry="2.0001216"
- rx="2.0001216"
- style="color:#000000;fill:#c55151;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="rect15633"
- width="12"
- height="4.0002432"
- x="1721.0109"
- y="1336.1022" />
- </g>
- <g
- transform="translate(-260,-772.36218)"
- id="g6944">
- <path
- sodipodi:type="arc"
- style="color:#000000;fill:none;stroke:#c0c0c0;stroke-width:4.61538458;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="path6661"
- sodipodi:cx="255"
- sodipodi:cy="610"
- sodipodi:rx="15"
- sodipodi:ry="15"
- d="m 270,610 c 0,8.28427 -6.71573,15 -15,15 -8.28427,0 -15,-6.71573 -15,-15 0,-8.28427 6.71573,-15 15,-15 8.28427,0 15,6.71573 15,15 z"
- transform="matrix(0.86666662,0,0,0.86666662,54.000012,238.69555)" />
- <path
- sodipodi:nodetypes="csssc"
- inkscape:connector-curvature="0"
- id="path6667"
- d="m 275,774.36218 c 0,0 5,-4.5199 5,-8 0,-3 -2,-5 -5,-5 -3,0 -5,2 -5,5 0,3.4801 5,8 5,8 z"
- style="color:#000000;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- </g>
- <g
- transform="translate(-260,-872.36219)"
- id="g6940">
- <path
- transform="matrix(0.86666662,0,0,0.86666662,54.000012,378.69555)"
- d="m 270,610 c 0,8.28427 -6.71573,15 -15,15 -8.28427,0 -15,-6.71573 -15,-15 0,-8.28427 6.71573,-15 15,-15 8.28427,0 15,6.71573 15,15 z"
- sodipodi:ry="15"
- sodipodi:rx="15"
- sodipodi:cy="610"
- sodipodi:cx="255"
- id="path6737"
- style="color:#000000;fill:none;stroke:#c0c0c0;stroke-width:4.61538458;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- sodipodi:type="arc" />
- <path
- sodipodi:nodetypes="cccccccccc"
- inkscape:connector-curvature="0"
- id="path6753"
- d="m 275,899.36218 -6,6 0,7 4,0 0,-4 4,0 0,4 4,0 0,-7 z"
- style="color:#000000;fill:#c0c0c0;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
- </g>
- <image
- y="-9"
- x="250"
- id="image9767"
- xlink:href="data:image/png;base64,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 "
- height="20"
- width="20" />
- <path
- style="opacity:0.50000000000000000;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 178,-13 0,5.375 1.6563,0.625 1.2812,0 c 0.256,0 0.51,-0.0297 0.75,-0.0937 0.2453,-0.064 0.4762,-0.13926 0.6563,-0.28125 0.5478,-0.43174 0.6562,-1.05881 0.6562,-1.53128 0,-0.45113 -0.1365,-0.74932 -0.3125,-1.00002 -0.1707,-0.256 -0.4291,-0.39865 -0.7813,-0.49995 0.2563,-0.1227 0.4658,-0.27675 0.5938,-0.46875 0.1333,-0.192 0.1875,-0.43075 0.1875,-0.71875 0,-0.2667 -0.034,-0.5062 -0.125,-0.6875 -0.085,-0.1814 -0.215,-0.29955 -0.375,-0.40625 -0.16,-0.112 -0.3699,-0.202 -0.5937,-0.25 -0.2243,-0.048 -0.4504,-0.0625 -0.7188,-0.0625 z m 5.6563,0 2.0937,3.78125 0,2.1875 L 187,-7.5 l 0,-1.6875 2.125,-3.8125 -1.4062,0 -1.3125,2.5625 L 185.0626,-13 z m -4.4063,0.96875 1.3438,0 c 0.1116,0 0.2424,0.0102 0.3437,0.0312 0.1067,0.016 0.2011,0.0457 0.2813,0.0937 0.08,0.048 0.1394,0.1022 0.1874,0.1875 0.049,0.085 0.063,0.21035 0.063,0.34375 0,0.24 -0.075,0.3933 -0.2188,0.5 -0.144,0.1066 -0.3387,0.17777 -0.5625,0.1875 l -1.4375,0 z m 0,2.32924 1.5625,0 c 0.272,0 0.4907,0.059 0.6563,0.1875 0.165,0.1227 0.2187,0.3317 0.2187,0.625 0,0.1494 -0.011,0.44976 -0.062,0.54576 -0.048,0.096 -0.1022,0.16005 -0.1875,0.21875 -0.085,0.053 -0.2005,0.098 -0.3125,0.125 -0.112,0.021 -0.2209,0.0312 -0.3438,0.0312 l -1.5312,0 z M 174.5,-8 168.4062,-5.40625 167,-4 167,9 168.5625,10.5625 174.5,8 l 8,3 7.0938,-2.59375 L 191,7 191,-6 189.4375,-7.5625 182.5,-5 z m -2.3126,5.84375 c 0.4982,0 0.9222,0.076 1.3126,0.25 0.3896,0.174 0.7296,0.41275 1,0.71875 0.2696,0.306 0.4806,0.67975 0.625,1.09375 0.1436,0.408 0.2187,0.8325 0.2187,1.3125 0,0.468 -0.075,0.9045 -0.2187,1.3125 -0.1442,0.402 -0.3552,0.7625 -0.625,1.0625 -0.2704,0.3 -0.6103,0.54475 -1,0.71875 -0.3904,0.168 -0.8144,0.25 -1.3126,0.25 -0.4918,0 -0.9477,-0.082 -1.3437,-0.25 -0.39,-0.174 -0.73,-0.41875 -1,-0.71875 -0.27,-0.3 -0.481,-0.6605 -0.625,-1.0625 C 169.0747,2.12325 169,1.68675 169,1.21875 c 0,-0.48 0.075,-0.9045 0.2187,-1.3125 0.144,-0.414 0.355,-0.78775 0.625,-1.09375 0.27,-0.306 0.61,-0.54475 1,-0.71875 0.396,-0.174 0.8519,-0.25 1.3437,-0.25 z m 6.2189,0 c 0.3358,0 0.6627,0.047 0.9687,0.125 0.312,0.072 0.5725,0.17575 0.8125,0.34375 0.24,0.168 0.4554,0.39225 0.5938,0.65625 0.1438,0.258 0.2187,0.5655 0.2187,0.9375 l -1.375,0 c -0.012,-0.192 -0.053,-0.34275 -0.125,-0.46875 -0.066,-0.126 -0.1669,-0.2405 -0.2813,-0.3125 -0.1139,-0.072 -0.2562,-0.12625 -0.4062,-0.15625 -0.144,-0.03 -0.2946,-0.0312 -0.4688,-0.0312 -0.1139,0 -0.2297,0.0102 -0.3437,0.0312 -0.114,0.024 -0.2165,0.065 -0.3125,0.125 -0.09,0.06 -0.1586,0.12875 -0.2188,0.21875 -0.06,0.09 -0.094,0.20575 -0.094,0.34375 0,0.126 0.014,0.2345 0.062,0.3125 0.048,0.078 0.1435,0.15275 0.2812,0.21875 0.1442,0.066 0.3478,0.1215 0.5938,0.1875 0.252,0.066 0.5666,0.148 0.9688,0.25 0.1196,0.024 0.2896,0.0901 0.5,0.15625 0.2156,0.06 0.4462,0.14325 0.6562,0.28125 0.21,0.138 0.3815,0.3285 0.5312,0.5625 0.1562,0.228 0.2188,0.515 0.2188,0.875 0,0.294 -0.042,0.59175 -0.1562,0.84375 -0.1144,0.252 -0.2722,0.47025 -0.5,0.65625 -0.2223,0.18 -0.5078,0.30425 -0.8438,0.40625 -0.33,0.102 -0.7186,0.15625 -1.1562,0.15625 -0.3544,0 -0.6953,-0.035 -1.0313,-0.125 -0.33,-0.084 -0.617,-0.22025 -0.875,-0.40625 -0.252,-0.186 -0.475,-0.43075 -0.625,-0.71875 -0.15,-0.288 -0.225,-0.63525 -0.2187,-1.03125 l 1.375,0 c 0,0.216 0.047,0.4125 0.125,0.5625 0.078,0.15 0.1865,0.24775 0.3124,0.34375 0.1323,0.09 0.2634,0.17075 0.4376,0.21875 0.1739,0.042 0.3767,0.0625 0.5624,0.0625 0.1262,0 0.2623,-0.0133 0.4063,-0.0312 0.144,-0.024 0.2799,-0.065 0.4063,-0.125 0.1259,-0.06 0.2285,-0.148 0.3124,-0.25 0.084,-0.108 0.125,-0.24425 0.125,-0.40625 0,-0.174 -0.073,-0.29825 -0.1874,-0.40625 -0.1082,-0.108 -0.2574,-0.20925 -0.4376,-0.28125 -0.1798,-0.072 -0.3657,-0.1335 -0.5937,-0.1875 -0.228,-0.054 -0.4535,-0.1215 -0.6875,-0.1875 -0.24,-0.06 -0.4905,-0.1035 -0.7188,-0.1875 -0.2278,-0.09 -0.4137,-0.20575 -0.5937,-0.34375 -0.18,-0.138 -0.3549,-0.32725 -0.4687,-0.53125 -0.1082,-0.21 -0.1563,-0.456 -0.1563,-0.75 0,-0.33 0.081,-0.60375 0.2187,-0.84375 0.1442,-0.246 0.3342,-0.463 0.5626,-0.625 0.2277,-0.162 0.4617,-0.26575 0.75,-0.34375 0.288,-0.078 0.5873,-0.10702 0.875,-0.125 z M 181.9997,-2 l 2,0 1.5157,4.40625 1.5158,-4.40625 2,0 0,6.40625 -1.3437,0 0,-4.53125 -1.6878,4.53125 -1.0938,0 -1.5625,-4.5 -0.031,4.5 -1.3124,0 z m -9.8123,1.03125 c -0.3179,0 -0.5909,0.061 -0.8124,0.1875 -0.2223,0.12 -0.4242,0.29 -0.5626,0.5 -0.1375,0.204 -0.2152,0.4235 -0.2812,0.6875 -0.06,0.264 -0.094,0.5305 -0.094,0.8125 0,0.27 0.034,0.5545 0.094,0.8125 0.066,0.252 0.1436,0.4835 0.2812,0.6875 0.1383,0.204 0.3403,0.34275 0.5626,0.46875 0.2219,0.12 0.4949,0.1875 0.8124,0.1875 0.3182,0 0.5593,-0.067 0.7813,-0.1875 0.222,-0.126 0.4245,-0.26475 0.5625,-0.46875 0.138,-0.204 0.2216,-0.4355 0.2812,-0.6875 0.066,-0.258 0.094,-0.5425 0.094,-0.8125 0,-0.282 -0.027,-0.5485 -0.094,-0.8125 -0.06,-0.264 -0.1432,-0.4835 -0.2812,-0.6875 -0.138,-0.21 -0.3405,-0.38 -0.5625,-0.5 -0.222,-0.126 -0.4629,-0.1875 -0.7813,-0.1875 z"
- id="path3323-5"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccscsscccscccsccccccccccccscccscscccscscccscccccccccccccccscccscccscscscscsccsccccccscccssccccscscccsccscccccscccsccsccscscccscsccccccccccccssccscccscscscccss" />
- <path
- style="opacity:1;color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 74.875,-16 0,10.57817 L 78.66654,-4 80.75,-4 c 0.512,0 1.02,-0.0595 1.5,-0.1875 0.4906,-0.128 0.9523,-0.27852 1.3125,-0.5625 1.0956,-0.86348 1.3125,-2.11756 1.3125,-3.0625 0,-0.90226 -0.273,-1.4986 -0.625,-2 -0.3414,-0.512 -0.8581,-0.7974 -1.5625,-1 0.5126,-0.2454 0.9315,-0.5535 1.1875,-0.9375 0.2666,-0.384 0.375,-0.8615 0.375,-1.4375 0,-0.5334 -0.068,-1.0124 -0.25,-1.375 -0.17,-0.3628 -0.43,-0.5991 -0.75,-0.8125 -0.32,-0.224 -0.7399,-0.404 -1.1875,-0.5 C 81.6139,-15.971 81.1618,-16 80.625,-16 z m 11.3125,0 4.1875,7.5625 0,4.16076 2.5,-0.89286 0,-3.2054 4.25,-7.625 -2.8125,0 -2.625,5.125 L 89,-16 z m -8.8125,1.9375 2.6875,0 c 0.2232,0 0.4849,0.0205 0.6875,0.0625 0.2134,0.032 0.4021,0.0915 0.5625,0.1875 0.16,0.096 0.279,0.2044 0.375,0.375 0.098,0.17 0.125,0.4207 0.125,0.6875 0,0.48 -0.1499,0.7866 -0.4375,1 -0.288,0.2132 -0.6774,0.35554 -1.125,0.375 l -2.875,0 z m 0,4.65625 3.125,0 c 0.544,0 0.9813,0.118 1.3125,0.375 0.33,0.2454 0.4375,0.6634 0.4375,1.25 0,0.2988 -0.023,0.90175 -0.125,1.09375 -0.096,0.192 -0.2044,0.3201 -0.375,0.4375 -0.17,0.106 -0.401,0.196 -0.625,0.25 -0.224,0.042 -0.4417,0.0625 -0.6875,0.0625 l -3.0625,0 z M 68,-6 55.8125,-0.8125 C 54.59258,-0.29327 53,0.30925 53,2 l 0,26 c 0,2.50005 0,4.52175 3.5,3 L 68,26 84,32 98.1875,26.8125 C 99.43265,26.35722 101,25.30925 101,24 l 0,-26 c 0,-3.49995 -0.19997,-4 -3,-3 L 84,0 z M 63.25,5.6875 c 0.9964,0 1.8442,0.152 2.625,0.5 0.7792,0.348 1.4592,0.8255 2,1.4375 0.5392,0.612 0.9612,1.3595 1.25,2.1875 0.2872,0.816 0.4375,1.665 0.4375,2.625 0,0.936 -0.1501,1.809 -0.4375,2.625 -0.2884,0.804 -0.7104,1.525 -1.25,2.125 -0.5408,0.6 -1.2206,1.0895 -2,1.4375 -0.7808,0.336 -1.6286,0.5 -2.625,0.5 -0.9836,0 -1.8955,-0.164 -2.6875,-0.5 -0.78,-0.348 -1.46,-0.8375 -2,-1.4375 -0.54,-0.6 -0.962,-1.321 -1.25,-2.125 -0.288,-0.816 -0.4375,-1.689 -0.4375,-2.625 0,-0.96 0.1501,-1.809 0.4375,-2.625 0.288,-0.828 0.71,-1.5755 1.25,-2.1875 0.54,-0.612 1.22,-1.0895 2,-1.4375 0.792,-0.348 1.7039,-0.5 2.6875,-0.5 z m 12.4375,0 c 0.6716,0 1.3255,0.094 1.9375,0.25 0.624,0.144 1.145,0.3515 1.625,0.6875 0.48,0.336 0.9107,0.7845 1.1875,1.3125 0.2876,0.516 0.4375,1.131 0.4375,1.875 l -2.75,0 C 78.101,9.4285 78.019,9.127 77.875,8.875 77.743,8.623 77.5413,8.394 77.3125,8.25 77.0847,8.106 76.8,7.9975 76.5,7.9375 76.212,7.8775 75.9109,7.875 75.5625,7.875 c -0.2278,0 -0.4595,0.0205 -0.6875,0.0625 -0.228,0.048 -0.433,0.13 -0.625,0.25 -0.18,0.12 -0.3171,0.2575 -0.4375,0.4375 -0.12,0.18 -0.1875,0.4115 -0.1875,0.6875 0,0.252 0.029,0.469 0.125,0.625 0.096,0.156 0.2871,0.3055 0.5625,0.4375 0.2884,0.132 0.6955,0.243 1.1875,0.375 0.504,0.132 1.1331,0.296 1.9375,0.5 0.2392,0.048 0.5792,0.1802 1,0.3125 0.4312,0.12 0.8925,0.2865 1.3125,0.5625 0.42,0.276 0.7631,0.657 1.0625,1.125 0.3124,0.456 0.4375,1.03 0.4375,1.75 0,0.588 -0.0841,1.1835 -0.3125,1.6875 -0.2288,0.504 -0.5444,0.9405 -1,1.3125 -0.4446,0.36 -1.0155,0.6085 -1.6875,0.8125 -0.66,0.204 -1.4373,0.3125 -2.3125,0.3125 -0.7088,0 -1.3905,-0.07 -2.0625,-0.25 -0.66,-0.168 -1.234,-0.4405 -1.75,-0.8125 -0.504,-0.372 -0.95,-0.8615 -1.25,-1.4375 -0.3,-0.576 -0.4501,-1.2705 -0.4375,-2.0625 l 2.75,0 c 0,0.432 0.094,0.825 0.25,1.125 0.156,0.3 0.3732,0.4955 0.625,0.6875 0.2646,0.18 0.5266,0.3415 0.875,0.4375 0.3478,0.084 0.7536,0.125 1.125,0.125 0.2524,0 0.5245,-0.0267 0.8125,-0.0625 0.288,-0.048 0.5597,-0.13 0.8125,-0.25 0.2518,-0.12 0.4572,-0.296 0.625,-0.5 0.168,-0.216 0.25,-0.4885 0.25,-0.8125 0,-0.348 -0.1462,-0.5965 -0.375,-0.8125 -0.2164,-0.216 -0.5146,-0.4185 -0.875,-0.5625 -0.3596,-0.144 -0.7315,-0.267 -1.1875,-0.375 -0.456,-0.108 -0.907,-0.243 -1.375,-0.375 -0.48,-0.12 -0.9809,-0.207 -1.4375,-0.375 -0.4556,-0.18 -0.8275,-0.4115 -1.1875,-0.6875 -0.36,-0.276 -0.7099,-0.6545 -0.9375,-1.0625 -0.2164,-0.42 -0.3125,-0.912 -0.3125,-1.5 0,-0.66 0.1621,-1.2075 0.4375,-1.6875 0.2884,-0.492 0.6682,-0.926 1.125,-1.25 0.4554,-0.324 0.9234,-0.5315 1.5,-0.6875 0.576,-0.156 1.1746,-0.21404 1.75,-0.25 z M 82.875,6 l 4,0 3.03125,8.8125 L 92.9375,6 l 4,0 0,12.8125 -2.6875,0 0,-9.0625 -3.375,9.0625 -2.1875,0 -3.125,-9 -0.0625,9 -2.625,0 z M 63.25,8.0625 c -0.6358,0 -1.182,0.122 -1.625,0.375 -0.4446,0.24 -0.8482,0.58 -1.125,1 -0.275,0.408 -0.4305,0.847 -0.5625,1.375 -0.12,0.528 -0.1875,1.061 -0.1875,1.625 0,0.54 0.0675,1.109 0.1875,1.625 0.132,0.504 0.2873,0.967 0.5625,1.375 0.2766,0.408 0.6804,0.6855 1.125,0.9375 0.4438,0.24 0.99,0.375 1.625,0.375 0.6364,0 1.1185,-0.134 1.5625,-0.375 0.444,-0.252 0.849,-0.5295 1.125,-0.9375 0.276,-0.408 0.4433,-0.871 0.5625,-1.375 0.132,-0.516 0.1875,-1.085 0.1875,-1.625 0,-0.564 -0.0535,-1.097 -0.1875,-1.625 -0.12,-0.528 -0.2865,-0.967 -0.5625,-1.375 -0.276,-0.42 -0.681,-0.76 -1.125,-1 -0.444,-0.252 -0.9257,-0.375 -1.5625,-0.375 z"
- id="path7865"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccsccscccscccsccccccccccccscccscccccscscccsccccsssccssssccscccscccscscscscsccsccccccscccssccccscscccsccsccsccscccsccsccscsccccccccccccccccccscccscccscscscccs" />
- </g>
- <path
- style="color:#000000;fill:#ffffff;fill-opacity:0.75294118;fill-rule:nonzero;stroke:none;stroke-width:2.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- d="m 143,14 -1,1 0,2 -3.5,0 c -2.493,0 -4.5,2.007 -4.5,4.5 0,2.493 2.007,4.5 4.5,4.5 l 3.5,0 c 0,-1.656854 -1.34315,-3 -3,-3 l -0.5,0 c -0.831,0 -1.5,-0.669 -1.5,-1.5 0,-0.831 0.669,-1.5 1.5,-1.5 l 3.5,0 0,2 1,1 4,-4.5 z"
- id="rect3834"
- inkscape:connector-curvature="0"
- sodipodi:nodetypes="cccssscssssccccc" />
- <g
- transform="translate(0.0630273,180.06303)"
- style="display:inline"
- id="g4031"
- inkscape:export-filename="C:\Users\simon\Downloads\sprite.png"
- inkscape:export-xdpi="599.83337"
- inkscape:export-ydpi="599.83337">
- <g
- transform="translate(4.5101293,-0.563766)"
- style="font-size:16px;font-style:normal;font-weight:bold;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#c0c0c0;fill-opacity:1;stroke:#c0c0c0;stroke-width:0.40000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline;font-family:Sans;-inkscape-font-specification:Sans Bold"
- id="g4014">
- <path
- sodipodi:type="arc"
- style="color:#000000;fill:none;stroke:#c0c0c0;stroke-width:4.61538458;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
- id="path3031"
- sodipodi:cx="255"
- sodipodi:cy="610"
- sodipodi:rx="15"
- sodipodi:ry="15"
- d="m 270,610 c 0,8.28427 -6.71573,15 -15,15 -8.28427,0 -15,-6.71573 -15,-15 0,-8.28427 6.71573,-15 15,-15 8.28427,0 15,6.71573 15,15 z"
- transform="matrix(0.86666662,0,0,0.86666662,-165.6154,-533.41911)" />
- </g>
- <path
- d="m 63.142047,-10.043787 -2.148438,0.226562 c -0.02084,-0.385407 -0.13412,-0.679678 -0.339843,-0.882812 -0.205734,-0.203115 -0.49089,-0.304678 -0.855469,-0.304688 -0.338546,1e-5 -0.596358,0.07423 -0.773438,0.222656 -0.177086,0.148447 -0.265628,0.316416 -0.265625,0.503907 -3e-6,0.255217 0.119789,0.500008 0.359375,0.734375 0.161455,0.156258 0.695309,0.526049 1.601563,1.109375 0.906244,0.58334 1.505202,1.000006 1.796875,1.25 0.453117,0.380214 0.777336,0.756515 0.972656,1.128906 0.195305,0.3724 0.292961,0.78516 0.292969,1.238281 -8e-6,0.484378 -0.118498,0.930993 -0.355469,1.339844 -0.236987,0.408856 -0.592455,0.779949 -1.066406,1.113281 0.317701,0.291668 0.55468,0.602865 0.710937,0.933594 0.156243,0.330729 0.234368,0.680989 0.234375,1.050781 -7e-6,0.770832 -0.28907,1.416665 -0.867187,1.9375 -0.578131,0.52083 -1.40886,0.781247 -2.492188,0.78125 -1.04167,-3e-6 -1.875002,-0.257815 -2.5,-0.773437 -0.625001,-0.515627 -0.994792,-1.203127 -1.109375,-2.0625 l 2.140625,-0.257813 c 0.09375,0.468749 0.272133,0.821614 0.535157,1.058594 0.263017,0.236977 0.595048,0.355467 0.996093,0.355469 0.343746,-2e-6 0.617183,-0.08985 0.820313,-0.269532 0.203119,-0.179688 0.304682,-0.397136 0.304687,-0.652343 -5e-6,-0.244793 -0.09636,-0.463542 -0.289062,-0.65625 -0.197922,-0.192709 -0.891932,-0.667969 -2.082031,-1.425782 -1.190107,-0.75781 -1.964845,-1.386716 -2.324219,-1.886718 -0.359376,-0.499997 -0.539063,-1.059892 -0.539063,-1.679688 0,-0.510411 0.117187,-0.984369 0.351563,-1.421875 0.234374,-0.437493 0.598957,-0.796868 1.09375,-1.078125 -0.260418,-0.281242 -0.457033,-0.5677 -0.589844,-0.859375 -0.132813,-0.291658 -0.19922,-0.588533 -0.199219,-0.890625 -10e-7,-0.703115 0.274739,-1.298167 0.824219,-1.785156 0.549477,-0.486968 1.321612,-0.730457 2.316406,-0.730469 1.020829,1.2e-5 1.824213,0.243501 2.410157,0.730469 0.58593,0.486989 0.930982,1.121103 1.035156,1.902344 z m -1.960938,6.726562 c 0.229161,-0.208331 0.399734,-0.407549 0.511719,-0.597656 0.111973,-0.190101 0.167963,-0.373695 0.167969,-0.550781 -6e-6,-0.171872 -0.0599,-0.348955 -0.179688,-0.53125 -0.119797,-0.182288 -0.447922,-0.468746 -0.984375,-0.859375 l -2.132812,-1.546875 c -0.177086,0.104173 -0.333336,0.25261 -0.46875,0.445312 -0.135419,0.192714 -0.203127,0.398443 -0.203125,0.617188 -2e-6,0.526046 0.35156,1.026046 1.054687,1.5 z"
- style="font-size:16px;font-style:normal;font-weight:bold;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#c0c0c0;fill-opacity:1;stroke:#c0c0c0;stroke-width:0.30000001;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;font-family:Sans;-inkscape-font-specification:Sans Bold"
- id="path4012"
- inkscape:connector-curvature="0" />
- </g>
-</svg>
--- /dev/null
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px">
+ <path fill="#9E9E9E" d="M44,27l-1-9l-2.9,1.9c-2.7-1.7-6.1-2.9-9.9-3.5c0,0-1.9-0.4-4.4-0.4s-4.8,0.3-4.8,0.3C11.3,17.5,4,23,4,29.6C4,36.4,11.5,42,23,43v-3.9c-7.9-1.1-12.9-4.8-12.9-9.5c0-4.4,4.6-8.1,10.9-9.3c0,0,4.9-1.1,9.2,0.2c2.1,0.5,4,1.2,5.6,2.2L32,25L44,27z"/>
+ <path d="M23 8L23 43 29 40 29 5z"/>
+ <path fill="#FF9800" d="M23 8L23 43 29 40 29 5z"/>
+</svg>
-<svg xmlns="http://www.w3.org/2000/svg" width="520" height="20">
- <style><![CDATA[.C{fill-opacity:.51}.D{stroke-width:2}]]></style>
- <path d="M9 6.969V17h2V6.969z"/>
- <path d="M15 6.985L10 2 5 7zm72.125-2.001V5H86v7.006L82 12l5 5 5-4.984-4-.006V6.984h7V17h2V5h-.469v-.016h-9.406zM28 3.988l2.814 2.82-4.777 4.746v.043H26V17h2v-4.576l4.229-4.201L35 11V4l-7-.012zM53 4l.006 3.984H47v2V17h2V9.984h4.01L53.016 14 58 9l-5-5zm14.025.41L67.004 17h2V9.447l3.686 3.871-2.683 2.695 6.99.055.011-7.085-2.855 2.921zM170 3l-4 5h3v5h2V8h3zm19 3.969V17h2V6.969z"/>
- <path d="M195 6.985L190 2l-5 5zm-83-2.997l-2.814 2.82 4.777 4.746v.043H114V17h-2v-4.576l-4.229-4.201L105 11V4l7-.012zM128 4l-.006 3.984H134v2V17h-2V9.985h-4.01L127.984 14 123 9l5-5zm25.986.41l.022 12.59h-2V9.447l-3.686 3.871 2.683 2.695-6.99.055-.011-7.085 2.855 2.921z"/>
- <circle r="3" cy="12" cx="208" fill="none" stroke="#000" class="D"/>
- <path d="M209 3.988l2.814 2.82-1.766 1.754a4.03 4.03 0 0 1 1.418 1.41l1.762-1.75L216 11V4l-7-.012zm-2 11.855V17h2v-1.131c-.309.077-.627.131-.959.131-.362 0-.707-.065-1.041-.156z"/>
- <circle cx="228" cy="12" r="3" fill="none" stroke="#000" class="D"/>
- <path d="M229 3.988l2.814 2.82-1.766 1.754a4.03 4.03 0 0 1 1.418 1.41l1.762-1.75L236 11V4l-7-.012zm-2 11.855V17h2v-1.131c-.309.077-.627.131-.959.131-.362 0-.707-.065-1.041-.156z"/>
- <circle r="3" cy="12" cx="248" fill="none" stroke="#000" class="D"/>
- <path d="M249 3.988l2.814 2.82-1.766 1.754a4.03 4.03 0 0 1 1.418 1.41l1.762-1.75L256 11V4l-7-.012zm-2 11.855V17h2v-1.131c-.309.077-.627.131-.959.131a3.94 3.94 0 0 1-1.041-.156zm22-8.874V17h2V6.969z"/>
- <path d="M275 6.985L270 2l-5 5zM290 3a2 2 0 1 0 0 4 2 2 0 1 0 0-4zm0 4l-4 5h3v5h2v-5h3l-4-5zm14.011-.02v7.976h2V6.98z"/>
- <path d="M308.006 6.985L305.011 4 302 7.012zm4.005 5.047V2h2v10.031z"/>
- <path d="M318.011 12.016l-5 4.984-5-5z"/>
- <path d="M336 12.02v-7.976h-2v7.976z"/>
- <path d="M332.005 12.015l2.995 2.985 3.011-3.012z m-4.005-5.047v10.031h-2v-10.031z"/>
- <path d="M322 6.984l5-4.984 5 5z"/>
- <path d="M349 3v1h-3v5.227l-2.045.773L347 13v.904l1.611 1.426 1.889-1.672 1.891 1.672L354 13.906V13l3.045-2.955L355 9.262V4h-3V3h-3zm-2 2h7v3.877l-3.514-1.346L347 8.85V5zm-.279 9.992l-2.221 1.967.662.748 1.559-1.379 1.89 1.672 1.889-1.672L352.391 18l1.889-1.672 1.559 1.379.662-.748-2.221-1.967-1.889 1.674-1.891-1.674-1.889 1.674-1.891-1.674zM370 3.988l2.814 2.82-4.777 4.746v.043H368V17h2v-4.576l4.229-4.201L377 11V4l-7-.012z"/>
- <path d="M365.186 6.809l4.777 4.746v.043H370V17h-2v-4.576l-4.229-4.201z" class="C"/>
- <path d="M390 3.989l-2.814 2.82 4.777 4.746v0.043H392v5.402h-2v-4.576l-4.229-4.201-2.771 2.777v-7l7-0.012z"/>
- <path d="M394.814 6.809l-4.777 4.746v0.043H390v5.402h2v-4.576l4.229-4.201z" class="C"/>
- <path d="M407.029 3.988v5.402h.037v.043l1.951 1.938v5.639l2.816-2.82 2.727 2.797 1.445-1.383-2.768-2.838.019-.021 2.76-2.746-5.529.01-1.459-1.443V3.988h-2z"/>
- <path d="M404.214 14.18l4.777-4.746V9.39h.037V3.988h-2v4.576l-4.229 4.201z" class="C"/>
- <path d="M432.989 3.988v5.402h-0.037v0.043l-1.951 1.938v5.639l-2.816-2.82-2.727 2.797-1.445-1.383 2.768-2.838-0.019-0.021-2.76-2.746 5.529 0.01 1.459-1.443v-4.576h2z"/>
- <path d="M435.804 14.18l-4.777-4.746v-0.043h-0.037v-5.402h2v4.576l4.229 4.201z" class="C"/>
- <path d="M448 9v8h2V9zm5.016 4L458 8l-5-5z"/>
- <path d="M454 6.985h-6v2h6z"/>
- <path d="M450.016 6.985h-7.963v2h7.963z" class="C"/>
- <path d="M472.053 9v8h-2V9zm-5.016 4l-4.984-5 5-5z"/>
- <path d="M466.053 6.985h6v2h-6z"/>
- <path d="M470.037 6.985H478v2h-7.963z" class="C"/>
- <path d="M490 3.988l2.814 2.82-4.777 4.746v.043H488V17h2v-4.576l4.229-4.201L497 11V4l-7-.012z"/>
- <path d="M490 6v11h-2V6z" class="C"/>
- <path d="M490 3.988l2.814 2.82-4.777 4.746v.043H488V17h2v-4.576l4.229-4.201L497 11V4l-7-.012zm20 0l-2.814 2.82 4.777 4.746v.043H512V17h-2v-4.576l-4.229-4.201L503 11V4l7-.012z"/>
- <path d="M510 6v11h2V6z" class="C"/>
- <path d="M510 3.988l-2.814 2.82 4.777 4.746v.043H512V17h-2v-4.576l-4.229-4.201L503 11V4l7-.012z"/>
+<svg xmlns="http://www.w3.org/2000/svg" width="520" height="20"
+ fill="none" stroke="#000" stroke-width="2">
+ <!-- 0: straight / continue -->
+ <path d="M10 17 v-13 m2.5 2 l-2.5 -2.5 -2.5 2.5 z"/>
+ <!-- 1: turn slight right / stay right -->
+ <path d="M27 17 v-3 q0 -2 2 -4 l5 -5 m0 0 h-3 l3 3 z"/>
+ <!-- 2: turn right -->
+ <path d="M48 17 v-5 q0 -3 3 -3 h4 m-2 2.5 l2.5 -2.5 -2.5 -2.5 z"/>
+ <!-- 3: turn sharp right-->
+ <path d="M68 17 v-7 q0 -6 6 0 l2 2 m0 0 v-3 l-3 3 z"/>
+ <!-- 4: u-turn -->
+ <path d="M96 17 v-7 a4.5 4.5 0 0 0 -9 0 v5 m-2.5 -2 l2.5 2.5 2.5 -2.5 z"/>
+ <!-- 5: turn slight left / stay left -->
+ <path d="M113 17 v-3 q0 -2 -2 -4 l-5 -5 m0 0 h3 l-3 3 z"/>
+ <!-- 6: turn left -->
+ <path d="M133 17 v-5 q0 -3 -3 -3 h-4 m2 2.5 l-2.5 -2.5 2.5 -2.5 z"/>
+ <!-- 7: turn sharp left-->
+ <path d="M153 17 v-7 q0 -6 -6 0 l-2 2 m0 0 v-3 l3 3 z"/>
+ <!-- 8: start -->
+ <path d="M170 16 a1 1 0 1 0 0 -2 1 1 0 1 0 0 2 m0 -4 v-8 m2.5 2 l-2.5 -2.5 -2.5 2.5 z"/>
+ <!-- 10: roundabout -->
+ <path d="M208 17 v-3 a 3 3 0 1 0 0 -6 3 3 0 1 0 0 6 m2 -4 l5 -5 m0 0 h-3 l3 3 z"/>
+ <!-- 14: destination -->
+ <path d="M290 5 a1 1 0 1 0 0 -2 1 1 0 1 0 0 2 m0 12 v-8 m2.5 2 l-2.5 -2.5 -2.5 2.5 z"/>
+ <!-- 17: ferry -->
+ <g stroke-width="1">
+ <path d="M350.5 8 l-6 2 l2.5 2 v1.5 a2.828 2.828 0 0 1 1.5 1 a2.828 2.828 0 0 1 4 0 a2.828 2.828 0 0 1 1.5 -1 v-1.5 l2.5 -2 z" fill="#000"/>
+ <path d="M346.5 9.5 v-5 h8 v5 m-5.5 -6 h3"/>
+ <path d="M345.5 16.5 a1.414 2.828 0 0 1 2 0 a1.414 2.828 0 0 0 2 0 a1.414 2.828 0 0 1 2 0 a1.414 2.828 0 0 0 2 0 a1.414 2.828 0 0 1 2 0"/>
+ </g>
+ <!-- 18: fork right -->
+ <path d="M369 14 q0 -2 -2 -4 l-3 -3" opacity=".5"/>
+ <path d="M369 17 v-3 q0 -2 2 -4 l5 -5 m0 0 h-3 l3 3 z"/>
+ <!-- 19: fork left -->
+ <path d="M391 14 q0 -2 2 -4 l3 -3" opacity=".5"/>
+ <path d="M391 17 v-3 q0 -2 -2 -4 l-5 -5 m0 0 h3 l-3 3 z"/>
+ <!-- 20: merge left -->
+ <path d="M408 7 q0 2 -2 4 l-3 3" opacity=".5"/>
+ <path d="M408 4 v3 q0 2 2 4 l5 5 m-5 -5 h3 l-3 3 z"/>
+ <!-- 21: merge right-->
+ <path d="M432 7 q0 2 2 4 l3 3" opacity=".5"/>
+ <path d="M432 4 v3 q0 2 -2 4 l-5 5 m5 -5 h-3 l3 3 z"/>
+ <!-- 22: end of road right-->
+ <path d="M442 9 h10" opacity=".5"/>
+ <path d="M449 17 v-5 q0 -3 3 -3 h4 m-2 2.5 l2.5 -2.5 -2.5 -2.5 z"/>
+ <!-- 23: end of road left-->
+ <path d="M478 9 h-10" opacity=".5"/>
+ <path d="M471 17 v-5 q0 -3 -3 -3 h-4 m2 2.5 l-2.5 -2.5 2.5 -2.5 z"/>
+ <!-- 24: off ramp / exit right -->
+ <path d="M489 14 v-8" opacity=".5"/>
+ <path d="M489 17 v-3 q0 -2 2 -4 l5 -5 m0 0 h-3 l3 3 z"/>
+ <!-- 25: off ramp / exit left -->
+ <path d="M511 14 v-8" opacity=".5"/>
+ <path d="M511 17 v-3 q0 -2 -2 -4 l-5 -5 m0 0 h3 l-3 3 z"/>
</svg>
+++ /dev/null
-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1000" height="500">
- <g transform="translate(0 -552.362)">
- <g fill="#70cd8f">
- <path d="M-153 412.862v-2l10-4h2v2l-4 10h-2v-6z" filter="url(#filter6591-2)"/>
- <use xlink:href="#B"/>
- </g>
- <use xlink:href="#B" x="100" fill="#cd7070"/>
- <path d="M135 582.362h-2l-3 3v2l15 15-15 15v2l3 3h2l15-15 15 15h2l3-3v-2l-15-15 15-15v-2l-3-3h-2l-15 15zm130 20c0 8.284-6.716 15-15 15s-15-6.716-15-15 6.716-15 15-15 15 6.716 15 15z" fill="#fff"/>
- <g fill="#7092ff">
- <path d="M519.728 582.914l19.834-15.219L580 617.362l-19.834 15.219z" opacity=".5"/>
- <path d="M510.597 571.013l19.834-15.219 6.088 7.934-19.834 15.219zm52.613 65.535l19.834-15.219 1.198 17.988-3.967 3.044z"/>
- </g>
- <use xlink:href="#B" x="600" fill="#fff"/>
- <path d="M425 639.362l-20-20v-29l20-20h68l2 2v65l-2 2zm-45.698-82a15.7 15.7 0 0 0-15.698 15.698c0 1.581.284 3.074.719 4.513l-39.113 39.113c-1.44-.435-2.932-.719-4.513-.719A15.7 15.7 0 0 0 305 631.665a15.7 15.7 0 0 0 15.698 15.698 15.7 15.7 0 0 0 15.698-15.698c0-1.581-.284-3.074-.719-4.513l39.113-39.113c1.44.435 2.932.719 4.513.719A15.7 15.7 0 0 0 395 573.06a15.7 15.7 0 0 0-15.698-15.698zm0 9.419a6.28 6.28 0 0 1 6.279 6.279 6.28 6.28 0 0 1-6.279 6.279 6.28 6.28 0 0 1-6.279-6.279 6.28 6.28 0 0 1 6.279-6.279zm-58.605 58.605a6.28 6.28 0 0 1 6.279 6.279 6.28 6.28 0 0 1-6.279 6.279 6.28 6.28 0 0 1-6.279-6.279 6.28 6.28 0 0 1 6.279-6.279zM250 557.362c-20.71 0-37.5 16.789-37.5 37.5s37.5 52.5 37.5 52.5 37.5-31.789 37.5-52.5-16.789-37.5-37.5-37.5zm1.172 22.5c8.285 0 15 6.716 15 15s-6.716 15-15 15-15-6.716-15-15 6.716-15 15-15z" fill="#7092ff"/>
- <path d="M31 598.362h-2l-3 3v2l14 14 5 5 5-5 25-25v-2l-3-3h-2l-25 25z" fill="#fff"/>
- <path d="M337 631.362c0 8.837-7.163 16-16 16s-16-7.163-16-16 7.163-16 16-16 16 7.163 16 16z" fill="#7092ff"/>
- <path d="M328 631.362a7 7 0 1 1-14 0 7 7 0 1 1 14 0z" fill="#fff"/>
- <use xlink:href="#B" x="600" fill="#7092ff"/>
- <g fill="#fff">
- <path d="M644.42 607.312q0-3 1.26-5.04 1.26-2.04 4.32-4.26 2.7-1.92 3.84-3.3 1.2-1.44 1.2-3.36 0-1.92-1.44-2.88-1.38-1.02-3.9-1.02-2.52 0-4.98.78-2.46.78-5.04 2.1l-3.18-6.42q2.94-1.62 6.36-2.64 3.42-1.02 7.5-1.02 6.24 0 9.66 3 3.48 3 3.48 7.62 0 2.46-.78 4.26-.78 1.8-2.34 3.36-1.56 1.5-3.9 3.24-1.74 1.26-2.7 2.16-.96.9-1.32 1.74-.3.84-.3 2.1v1.74h-7.74zm-.96 12.18q0-2.76 1.5-3.84 1.5-1.14 3.66-1.14 2.1 0 3.6 1.14 1.5 1.08 1.5 3.84 0 2.64-1.5 3.84-1.5 1.14-3.6 1.14-2.16 0-3.66-1.14-1.5-1.2-1.5-3.84z"/>
- <rect width="10" height="15" x="415" y="597.362" rx="3" ry="2.25"/>
- </g>
- <use xlink:href="#B" x="700" fill="#7092ff"/>
- <path d="M741.072 601.642q0-2.4 1.152-3.84 1.152-1.488 2.64-2.208-1.728-.96-2.688-2.256-.96-1.344-.96-3.264 0-2.88 2.448-4.512 2.448-1.68 7.008-1.68 2.688 0 4.56.48 1.872.432 3.648 1.152l-1.296 3.216q-1.632-.672-3.264-1.104-1.632-.48-3.936-.48-2.88 0-4.08.768-1.152.72-1.152 2.064 0 1.344 1.344 2.304 1.344.912 4.992 2.256 3.696 1.344 5.76 3.072 2.064 1.728 2.064 4.608 0 2.448-1.104 4.032-1.104 1.536-2.496 2.352 1.68.912 2.592 2.208.96 1.248.96 3.072 0 3.312-2.784 5.136-2.736 1.824-7.68 1.824-2.64 0-4.608-.384-1.968-.432-3.504-1.2v-3.6q1.536.72 3.792 1.344 2.256.624 4.512.624 3.552 0 4.896-1.008 1.344-1.056 1.344-2.4 0-.912-.48-1.584-.432-.672-1.776-1.392-1.296-.768-3.936-1.728-2.496-.96-4.32-1.968-1.776-1.008-2.736-2.4-.912-1.392-.912-3.504zm3.6-.48q0 1.776 1.488 3.024 1.536 1.2 5.376 2.64l1.056.384q1.104-.672 2.064-1.68 1.008-1.056 1.008-2.688 0-1.2-.672-2.16-.624-.96-2.256-1.824-1.632-.912-4.608-1.824-1.344.336-2.4 1.44-1.056 1.104-1.056 2.688z" fill="#fff" stroke="#fff"/>
- </g>
- <defs>
- <path id="B" d="M95 602.362c0 24.853-20.147 45-45 45s-45-20.147-45-45 20.147-45 45-45 45 20.147 45 45z"/>
- </defs>
-</svg>
$("body").removeClass("compact-nav");
$("header").removeClass("text-nowrap");
+ $("header nav.secondary > ul").removeClass("flex-nowrap");
updateHeader();
.click(cancel))),
$("<p class='alert alert-warning'>")
.text(I18n.t("browse.start_rjs.feature_warning", { num_features: count, max_features: limit })),
- $("<input type='submit' class='btn btn-primary'>")
+ $("<input type='submit' class='btn btn-primary d-block mx-auto'>")
.val(I18n.t("browse.start_rjs.load_data"))
.click(add)));
}
//= require qs/dist/qs
OSM.Directions = function (map) {
- var awaitingGeocode; // true if the user has requested a route, but we're waiting on a geocode result
var awaitingRoute; // true if we've asked the engine for a route and are waiting to hear back
var chosenEngine;
weight: 12
});
+ var endpointDragCallback = function (dragging) {
+ if (map.hasLayer(polyline)) {
+ getRoute(false, !dragging);
+ }
+ };
+ var endpointGeocodeCallback = function () {
+ getRoute(true, true);
+ };
+
var endpoints = [
- Endpoint($("input[name='route_from']"), OSM.MARKER_GREEN),
- Endpoint($("input[name='route_to']"), OSM.MARKER_RED)
+ Endpoint($("input[name='route_from']"), OSM.MARKER_GREEN, endpointDragCallback, endpointGeocodeCallback),
+ Endpoint($("input[name='route_to']"), OSM.MARKER_RED, endpointDragCallback, endpointGeocodeCallback)
];
var expiry = new Date();
select.append("<option value='" + i + "'>" + I18n.t("javascripts.directions.engines." + engine.id) + "</option>");
});
- function Endpoint(input, iconUrl) {
+ function Endpoint(input, iconUrl, dragCallback, geocodeCallback) {
var endpoint = {};
endpoint.marker = L.marker([0, 0], {
if (dragging && !chosenEngine.draggable) return;
if (dragging && awaitingRoute) return;
endpoint.setLatLng(e.target.getLatLng());
- if (map.hasLayer(polyline)) {
- getRoute(false, !dragging);
- }
+ dragCallback(dragging);
});
input.on("keydown", function () {
- input.removeClass("error");
+ input.removeClass("is-invalid");
});
input.on("change", function (e) {
- awaitingGeocode = true;
-
// make text the same in both text boxes
var value = e.target.value;
endpoint.setValue(value);
endpoint.setValue = function (value, latlng) {
endpoint.value = value;
delete endpoint.latlng;
- input.removeClass("error");
+ input.removeClass("is-invalid");
input.val(value);
if (latlng) {
endpoint.awaitingGeocode = false;
endpoint.hasGeocode = true;
if (json.length === 0) {
- input.addClass("error");
+ input.addClass("is-invalid");
alert(I18n.t("javascripts.directions.errors.no_place", { place: endpoint.value }));
return;
}
input.val(json[0].display_name);
- if (awaitingGeocode) {
- awaitingGeocode = false;
- getRoute(true, true);
- }
+ geocodeCallback();
});
};
var endpoint = endpoints[ep_i];
if (!endpoint.hasGeocode && !endpoint.awaitingGeocode) {
endpoint.getGeocode();
- awaitingGeocode = true;
}
}
if (endpoints[0].awaitingGeocode || endpoints[1].awaitingGeocode) {
- awaitingGeocode = true;
return;
}
var row = $("<tr class='turn'/>");
row.append("<td class='border-0'><div class='direction i" + direction + "'/></td> ");
row.append("<td>" + instruction);
- row.append("<td class='distance text-muted text-end'>" + dist);
+ row.append("<td class='distance text-body-secondary text-end'>" + dist);
row.on("click", function () {
popup
getRoute(true, true);
});
- $(".routing_marker").on("dragstart", function (e) {
+ $(".routing_marker_column img").on("dragstart", function (e) {
var dt = e.originalEvent.dataTransfer;
dt.effectAllowed = "move";
var dragData = { type: $(this).data("type") };
5, // kStayLeft = 24;
20, // kMerge = 25;
10, // kRoundaboutEnter = 26;
- 11, // kRoundaboutExit = 27;
+ 10, // kRoundaboutExit = 27;
17, // kFerryEnter = 28;
0, // kFerryExit = 29;
null, // kTransit = 30;
"3": 3, // sharp right
"4": 14, // finish reached
"5": 14, // via reached
- "6": 10 // roundabout
+ "6": 10, // roundabout
+ "-7": 19, // keep left
+ "7": 18, // keep right
+ "-98": 4, // unknown direction u-turn
+ "-8": 4, // left u-turn
+ "8": 4 // right u-turn
};
return {
};
function initialize(path, id, callback) {
- content.find("input[type=submit]").on("click", function (e) {
+ content.find("button[type=submit]").on("click", function (e) {
e.preventDefault();
var data = $(e.target).data();
var form = e.target.form;
- $(form).find("input[type=submit]").prop("disabled", true);
+ $(form).find("button[type=submit]").prop("disabled", true);
$.ajax({
url: data.url,
}
function updateButtons(form) {
- $(form).find("input[type=submit]").prop("disabled", false);
+ $(form).find("button[type=submit]").prop("disabled", false);
if ($(form.text).val() === "") {
- $(form.close).val($(form.close).data("defaultActionText"));
+ $(form.close).text($(form.close).data("defaultActionText"));
$(form.comment).prop("disabled", true);
} else {
- $(form.close).val($(form.close).data("commentActionText"));
+ $(form.close).text($(form.close).data("commentActionText"));
$(form.comment).prop("disabled", false);
}
}
}
});
- $(".search_form a.button.switch_link").on("click", function (e) {
+ $(".search_form a.btn.switch_link").on("click", function (e) {
e.preventDefault();
- var query = $(e.target).parent().parent().find("input[name=query]").val();
+ var query = $(this).closest("form").find("input[name=query]").val();
if (query) {
OSM.router.route("/directions?from=" + encodeURIComponent(query) + OSM.formatHash(map));
} else {
$("<p>")
.text(I18n.t("javascripts.map.layers.overlays"))
- .attr("class", "text-muted")
+ .attr("class", "text-body-secondary small mb-2")
.appendTo(overlaySection);
var overlays = $("<ul class='list-unstyled form-check'>")
.on("click", select))
.append(
$("<p>")
- .attr("class", "text-muted")
+ .attr("class", "text-body-secondary")
.text(I18n.t("javascripts.share.paste_html")));
// Geo URI
$("<div>")
.attr("id", "export-warning")
- .attr("class", "text-muted")
+ .attr("class", "text-body-secondary")
.text(I18n.t("javascripts.share.only_standard_layer"))
.appendTo($imageSection);
};
$("<p>")
- .attr("class", "text-muted")
+ .attr("class", "text-body-secondary")
.html(I18n.t("javascripts.share.image_dimensions", args))
.appendTo($form);
$(".richtext_dopreview").click(function (event) {
var editor = $(this).parents(".richtext_container").find("textarea");
var preview = $(this).parents(".richtext_container").find(".richtext_preview");
- var width = editor.outerWidth() - preview.outerWidth() + preview.width();
var minHeight = editor.outerHeight() - preview.outerHeight() + preview.height();
if (preview.contents().length === 0) {
}
editor.hide();
- preview.width(width);
preview.css("min-height", minHeight + "px");
preview.show();
text-decoration: underline dotted;
}
-#container { position: relative; }
-
/* Rules for icons */
.icon {
/* Utility for de-emphasizing content */
-.text-muted a {
+.text-body-secondary a {
color: $blue;
}
position: relative;
font-size: 14px;
- h1, nav, nav > ul, nav > ul > li {
- display: inline-block;
- }
-
> * {
- height: 100%;
padding: $lineheight * 0.5;
}
- img.logo {
- margin-top: -2px;
- }
-
h1 {
+ height: $headerHeight;
font-size: 18px;
- line-height: 1.2;
- padding-top: 15px;
}
.btn {
nav.primary {
margin-right: auto;
}
+
+ .username {
+ max-width: 12em;
+ }
}
nav.primary {
nav.secondary {
.nav-link {
- padding: 0.2rem;
+ padding: 0.3rem;
}
}
min-height: $headerHeight;
&.closed nav {
- display: none;
+ display: none !important;
}
.search_forms {
}
nav.secondary {
+ flex-direction: column;
+
.user-menu, .login-menu {
width: 100%;
}
}
.overlay-layers {
- p {
- font-size: 13px;
- margin-bottom: 8px;
- }
li.disabled { color: $darkgrey; }
}
}
.donate-attr { color: darken($green, 10%) !important; }
-/* Rules for the sidebar */
-
-#browse_status {
- input {
- display: block;
- margin-left: auto;
- margin-right: auto;
- }
-}
-
/* Temporary label size override until we remove site-wide font customisation */
form {
cursor: pointer;
}
-.routing_marker { width: 15px; cursor: move; }
+.routing_marker_column {
+ width: 15px;
-.browse_status {
- display: none;
+ img {
+ cursor: move;
+ }
}
/* Rules for the history sidebar */
}
}
- .note-description {
- overflow: hidden;
- margin: 0 0 10px 10px;
- }
-
.query-results {
display: none;
}
}
-/* Bootstrap buttons don't have any vertical margin, so
- they touch when adjacent buttons wrap onto a new line
- e.g. wide form buttons on a narrow sidebar */
-
-.btn-wrapper {
- > .btn {
- margin-bottom: $spacer * 0.25;
- }
-}
-
/* Force LTR/RTL alignment for placeholder text */
.form-control::placeholder {
}
}
-/* Rules for the "Welcome" page */
-.site-welcome, .site-fixthemap {
- .sprite {
- background-image: image-url("welcome-sprite.svg");
- background-size: 500px 250px;
- display: block;
- }
-
- .sprite.small {
- width: 50px;
- height: 50px;
- }
-
- .sprite.x {
- /*rtl:ignore*/ background-position: -50px 0;
- }
-
- .sprite.term {
- margin-right: 10px;
- vertical-align: middle;
- display: inline-block;
- }
-
- .sprite.node {
- /*rtl:ignore*/ background-position: -100px 0;
- }
-
- .sprite.way {
- /*rtl:ignore*/ background-position: -150px 0;
- }
-
- .sprite.tag {
- /*rtl:ignore*/ background-position: -200px 0;
- }
-
- .sprite.editor {
- /*rtl:ignore*/ background-position: -250px 0;
- }
-
- .sprite.question {
- /*rtl:ignore*/ background-position: -300px 0;
- }
-
- .sprite.rules {
- /*rtl:ignore*/ background-position: -350px 0;
- }
-}
+/* Rules for the "About" page */
.site-about #content {
.content-inner {
margin-left: -1em;
}
}
-
- .icon {
- width: 30px;
- height: 30px;
- background: 40px 40px image-url('about/sprite.png') no-repeat;
-
- &.local {
- /*rtl:ignore*/
- background-position: 0px 0px;
- }
- &.community {
- /*rtl:ignore*/
- background-position: 0px -40px;
- }
- &.open {
- /*rtl:ignore*/
- background-position: 0px -80px;
- }
- &.partners {
- /*rtl:ignore*/
- background-position: 0px -120px;
- }
- &.infringement {
- /*rtl:ignore*/
- background-position: 0px -160px;
- }
- &.legal {
- /*rtl:ignore*/
- background-position: -45px -160px;
- }
- }
}
.auth-container {
before_action :check_database_readable
before_action :check_database_writable, :only => [:update]
- before_action :allow_thirdparty_images, :only => [:edit, :update]
+
+ allow_thirdparty_images :only => [:edit, :update]
+ allow_social_login :only => [:edit, :update]
def edit
@tokens = current_user.oauth_tokens.authorized
- append_content_security_policy_directives(
- :form_action => %w[accounts.google.com *.facebook.com login.microsoftonline.com github.com meta.wikimedia.org]
- )
-
if errors = session.delete(:user_errors)
errors.each do |attribute, error|
current_user.errors.add(attribute, error)
def update
@tokens = current_user.oauth_tokens.authorized
- append_content_security_policy_directives(
- :form_action => %w[accounts.google.com *.facebook.com login.microsoftonline.com github.com meta.wikimedia.org]
- )
-
user_params = params.require(:user).permit(:display_name, :new_email, :pass_crypt, :pass_crypt_confirmation, :auth_provider)
if params[:user][:auth_provider].blank? ||
module Api
class CapabilitiesController < ApiController
+ skip_before_action :check_api_readable
+
authorize_resource :class => false
before_action :set_request_formats
module Api
class ChangesetCommentsController < ApiController
before_action :check_api_writable
- before_action :check_api_readable, :except => [:create]
before_action :authorize
authorize_resource
##
# Check if the current user has exceed the rate limit for comments
def rate_limit_exceeded?
- recent_comments = current_user.changeset_comments.where("created_at >= ?", Time.now.utc - 1.hour).count
+ recent_comments = current_user.changeset_comments.where(:created_at => Time.now.utc - 1.hour..).count
recent_comments >= current_user.max_changeset_comments_per_hour
end
module Api
class ChangesetsController < ApiController
before_action :check_api_writable, :only => [:create, :update, :upload, :subscribe, :unsubscribe]
- before_action :check_api_readable, :except => [:index, :create, :update, :upload, :download, :subscribe, :unsubscribe]
before_action :setup_user_auth, :only => [:show]
before_action :authorize, :only => [:create, :update, :upload, :close, :subscribe, :unsubscribe]
changesets.where("closed_at >= ? and created_at <= ?", from, to)
else
# if there is no comma, assume its a lower limit on time
- changesets.where("closed_at >= ?", Time.parse(time).utc)
+ changesets.where(:closed_at => Time.parse(time).utc..)
end
# stupid Time seems to throw both of these for bad parsing, so
# we have to catch both and ensure the correct code path is taken.
module Api
class MapController < ApiController
- before_action :check_api_readable
-
authorize_resource :class => false
around_action :api_call_handle_error, :api_call_timeout
module Api
class NodesController < ApiController
before_action :check_api_writable, :only => [:create, :update, :delete]
- before_action :check_api_readable, :except => [:create, :update, :delete]
before_action :authorize, :only => [:create, :update, :delete]
authorize_resource
module Api
class NotesController < ApiController
- before_action :check_api_readable
before_action :check_api_writable, :only => [:create, :comment, :close, :reopen, :destroy]
before_action :setup_user_auth, :only => [:create, :show]
before_action :authorize, :only => [:close, :reopen, :destroy, :comment]
# nodes, ways and relations are basically identical.
module Api
class OldElementsController < ApiController
- before_action :check_api_readable
before_action :check_api_writable, :only => [:redact]
before_action :setup_user_auth, :only => [:history, :show]
before_action :authorize, :only => [:redact]
module Api
class PermissionsController < ApiController
- before_action :check_api_readable
-
authorize_resource :class => false
before_action :setup_user_auth
module Api
class RelationsController < ApiController
before_action :check_api_writable, :only => [:create, :update, :delete]
- before_action :check_api_readable, :except => [:create, :update, :delete]
before_action :authorize, :only => [:create, :update, :delete]
authorize_resource
module Api
class TracepointsController < ApiController
- before_action :check_api_readable
-
authorize_resource
around_action :api_call_handle_error, :api_call_timeout
module Api
class TracesController < ApiController
- before_action :check_database_readable, :except => [:show, :data]
- before_action :check_database_writable, :only => [:create, :update, :destroy]
+ before_action :check_api_writable, :only => [:create, :update, :destroy]
before_action :set_locale
before_action :authorize
authorize_resource
- before_action :check_api_readable, :only => [:show, :data]
- before_action :check_api_writable, :only => [:create, :update, :destroy]
before_action :offline_error, :only => [:create, :destroy, :data]
around_action :api_call_handle_error
module Api
class UserBlocksController < ApiController
- before_action :check_api_readable
-
authorize_resource
around_action :api_call_handle_error, :api_call_timeout
# Update and read user preferences, which are arbitrary key/val pairs
module Api
class UserPreferencesController < ApiController
+ before_action :check_api_writable, :only => [:update_all, :update, :destroy]
before_action :authorize
authorize_resource
module Api
class UsersController < ApiController
- before_action :check_api_readable
before_action :disable_terms_redirect, :only => [:details]
before_action :setup_user_auth, :only => [:show, :index]
before_action :authorize, :only => [:details, :gpx_files]
module Api
class VersionsController < ApiController
+ skip_before_action :check_api_readable
authorize_resource :class => false
before_action :set_request_formats
module Api
class WaysController < ApiController
before_action :check_api_writable, :only => [:create, :update, :delete]
- before_action :check_api_readable, :except => [:create, :update, :delete]
before_action :authorize, :only => [:create, :update, :delete]
authorize_resource
class ApiController < ApplicationController
skip_before_action :verify_authenticity_token
+ before_action :check_api_readable
+
private
##
rescue_from RailsParam::InvalidParameterError, :with => :invalid_parameter
before_action :fetch_body
- around_action :better_errors_allow_inline, :if => proc { Rails.env.development? }
attr_accessor :current_user, :oauth_token
helper_method :current_user
helper_method :oauth_token
+ def self.allow_thirdparty_images(**options)
+ content_security_policy(options) do |policy|
+ policy.img_src("*")
+ end
+ end
+
+ def self.allow_social_login(**options)
+ content_security_policy(options) do |policy|
+ policy.form_action(*policy.form_action, "accounts.google.com", "*.facebook.com", "login.microsoftonline.com", "github.com", "meta.wikimedia.org")
+ end
+ end
+
+ def self.allow_all_form_action(**options)
+ content_security_policy(options) do |policy|
+ policy.form_action(nil)
+ end
+ end
+
private
def authorize_web
end
def map_layout
- append_content_security_policy_directives(
- :child_src => %w[http://127.0.0.1:8111 https://127.0.0.1:8112],
- :frame_src => %w[http://127.0.0.1:8111 https://127.0.0.1:8112],
- :connect_src => [Settings.nominatim_url, Settings.overpass_url, Settings.fossgis_osrm_url, Settings.graphhopper_url, Settings.fossgis_valhalla_url],
- :form_action => %w[render.openstreetmap.org],
- :style_src => %w['unsafe-inline']
- )
+ policy = request.content_security_policy.clone
+
+ policy.child_src(*policy.child_src, "http://127.0.0.1:8111", "https://127.0.0.1:8112")
+ policy.frame_src(*policy.frame_src, "http://127.0.0.1:8111", "https://127.0.0.1:8112")
+ policy.connect_src(*policy.connect_src, Settings.nominatim_url, Settings.overpass_url, Settings.fossgis_osrm_url, Settings.graphhopper_url, Settings.fossgis_valhalla_url)
+ policy.form_action(*policy.form_action, "render.openstreetmap.org")
+ policy.style_src(*policy.style_src, :unsafe_inline)
+
+ request.content_security_policy = policy
case Settings.status
when "database_offline", "api_offline"
request.xhr? ? "xhr" : "map"
end
- def allow_thirdparty_images
- append_content_security_policy_directives(:img_src => %w[*])
- end
-
def preferred_editor
if params[:editor]
params[:editor]
end
end
- def better_errors_allow_inline
- yield
- rescue StandardError
- append_content_security_policy_directives(
- :script_src => %w['unsafe-inline'],
- :style_src => %w['unsafe-inline']
- )
-
- raise
- end
-
def current_ability
Ability.new(current_user)
end
changesets = changesets.where(:user => current_user.nearby)
end
- changesets = changesets.where("changesets.id <= ?", @params[:max_id]) if @params[:max_id]
+ changesets = changesets.where(:changesets => { :id => ..@params[:max_id] }) if @params[:max_id]
@changesets = changesets.order("changesets.id DESC").limit(20).preload(:user, :changeset_tags, :comments)
if @changeset.user.active? && @changeset.user.data_public?
changesets = conditions_nonempty(@changeset.user.changesets)
@next_by_user = changesets.where("id > ?", @changeset.id).reorder(:id => :asc).first
- @prev_by_user = changesets.where("id < ?", @changeset.id).reorder(:id => :desc).first
+ @prev_by_user = changesets.where(:id => ...@changeset.id).reorder(:id => :desc).first
end
render :layout => map_layout
rescue ActiveRecord::RecordNotFound
session[:fingerprint] = user.fingerprint
session_expires_after 28.days if session[:remember_me]
- target = referer || session[:referer] || url_for(:controller => :site, :action => :index)
+ target = referer || url_for(:controller => :site, :action => :index)
# The user is logged in, so decide where to send them:
#
end
session.delete(:remember_me)
- session.delete(:referer)
end
##
# process a failed login
- def failed_login(message, username = nil)
+ def failed_login(message, username, referer = nil)
flash[:error] = message
- redirect_to :controller => "sessions", :action => "new", :referer => session[:referer],
+ redirect_to :controller => "sessions", :action => "new", :referer => referer,
:username => username, :remember_me => session[:remember_me]
session.delete(:remember_me)
- session.delete(:referer)
end
##
#
- def unconfirmed_login(user)
+ def unconfirmed_login(user, referer = nil)
session[:pending_user] = user.id
redirect_to :controller => "confirmations", :action => "confirm",
- :display_name => user.display_name, :referer => session[:referer]
+ :display_name => user.display_name, :referer => referer
session.delete(:remember_me)
- session.delete(:referer)
end
##
--- /dev/null
+class DiaryCommentsController < ApplicationController
+ include UserMethods
+ include PaginationMethods
+
+ layout "site"
+
+ before_action :authorize_web
+ before_action :set_locale
+ before_action :check_database_readable
+
+ authorize_resource
+
+ before_action :lookup_user, :only => :index
+ before_action :check_database_writable, :only => [:hide, :unhide]
+
+ allow_thirdparty_images :only => :index
+
+ def index
+ @title = t ".title", :user => @user.display_name
+
+ comments = DiaryComment.where(:user => @user)
+ comments = comments.visible unless can? :unhide, DiaryComment
+
+ @params = params.permit(:display_name, :before, :after)
+
+ @comments, @newer_comments_id, @older_comments_id = get_page_items(comments, :includes => [:user])
+ end
+
+ def hide
+ comment = DiaryComment.find(params[:comment])
+ comment.update(:visible => false)
+ redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry)
+ end
+
+ def unhide
+ comment = DiaryComment.find(params[:comment])
+ comment.update(:visible => true)
+ redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry)
+ end
+end
authorize_resource
- before_action :lookup_user, :only => [:show, :comments]
- before_action :check_database_writable, :only => [:new, :create, :edit, :update, :comment, :hide, :hidecomment, :subscribe, :unsubscribe]
- before_action :allow_thirdparty_images, :only => [:new, :create, :edit, :update, :index, :show, :comments]
+ before_action :lookup_user, :only => :show
+ before_action :check_database_writable, :only => [:new, :create, :edit, :update, :comment, :hide, :unhide, :subscribe, :unsubscribe]
+
+ allow_thirdparty_images :only => [:new, :create, :edit, :update, :index, :show]
def index
if params[:display_name]
@entry = entries.find_by(:id => params[:id])
if @entry
@title = t ".title", :user => params[:display_name], :title => @entry.title
- @comments = can?(:unhidecomment, DiaryEntry) ? @entry.comments : @entry.visible_comments
+ @og_image = @entry.body.image
+ @comments = can?(:unhide, DiaryComment) ? @entry.comments : @entry.visible_comments
else
@title = t "diary_entries.no_such_entry.title", :id => params[:id]
render :action => "no_such_entry", :status => :not_found
redirect_to :action => "index", :display_name => entry.user.display_name
end
- def hidecomment
- comment = DiaryComment.find(params[:comment])
- comment.update(:visible => false)
- redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry)
- end
-
- def unhidecomment
- comment = DiaryComment.find(params[:comment])
- comment.update(:visible => true)
- redirect_to diary_entry_path(comment.diary_entry.user, comment.diary_entry)
- end
-
- def comments
- @title = t ".title", :user => @user.display_name
-
- comments = DiaryComment.where(:user => @user)
- comments = comments.visible unless can? :unhidecomment, DiaryEntry
-
- @params = params.permit(:display_name, :before, :after)
-
- @comments, @newer_comments_id, @older_comments_id = get_page_items(comments, :includes => [:user])
- end
-
private
##
before_action :update_totp, :only => [:finish]
authorize_resource :class => false
+ content_security_policy(:only => :embed) do |policy|
+ policy.frame_ancestors("*")
+ end
+
caches_page :embed
# When the user clicks 'Export' we redirect to a URL which generates the export download
end
end
- def embed
- append_content_security_policy_directives(
- :frame_ancestors => %w[*]
- )
- end
+ def embed; end
end
friendship.befriendee = @friend
if current_user.friends_with?(@friend)
flash[:warning] = t ".already_a_friend", :name => @friend.display_name
- elsif current_user.friendships.where("created_at >= ?", Time.now.utc - 1.hour).count >= current_user.max_friends_per_hour
+ elsif current_user.friendships.where(:created_at => Time.now.utc - 1.hour..).count >= current_user.max_friends_per_hour
flash.now[:error] = t ".limit_exceeded"
elsif friendship.save
flash[:notice] = t ".success", :name => @friend.display_name
before_action :lookup_user, :only => [:new, :create]
before_action :check_database_readable
before_action :check_database_writable, :only => [:new, :create, :reply, :mark, :destroy]
- before_action :allow_thirdparty_images, :only => [:new, :create, :show]
+
+ allow_thirdparty_images :only => [:new, :create, :show]
# Show a message
def show
@message.sender = current_user
@message.sent_on = Time.now.utc
- if current_user.sent_messages.where("sent_on >= ?", Time.now.utc - 1.hour).count >= current_user.max_messages_per_hour
+ if current_user.sent_messages.where(:sent_on => Time.now.utc - 1.hour..).count >= current_user.max_messages_per_hour
flash.now[:error] = t ".limit_exceeded"
render :action => "new"
elsif @message.save
prepend_before_action :authorize_web
before_action :set_locale
- before_action :allow_all_form_action, :only => [:new]
- authorize_resource :class => false
-
- private
+ allow_all_form_action :only => :new
- def allow_all_form_action
- override_content_security_policy_directives(:form_action => []) if Settings.csp_enforce || Settings.key?(:csp_report_url)
- end
+ authorize_resource :class => false
end
layout "site"
+ allow_all_form_action :only => :oauth1_authorize
+
def revoke
@token = current_user.oauth_tokens.find_by :token => params[:token]
if @token
end
def oauth1_authorize
- override_content_security_policy_directives(:form_action => []) if Settings.csp_enforce || Settings.key?(:csp_report_url)
-
if @token.invalidated?
@message = t "oauth.authorize_failure.invalid"
render :action => "authorize_failure"
authorize_resource :class => false
- def new
- override_content_security_policy_directives(:form_action => []) if Settings.csp_enforce || Settings.key?(:csp_report_url)
+ allow_all_form_action :only => :new
- session[:referer] = safe_referer(params[:referer]) if params[:referer]
+ def new
+ referer = safe_referer(params[:referer]) if params[:referer]
- parse_oauth_referer session[:referer]
+ parse_oauth_referer referer
end
def create
session[:remember_me] ||= params[:remember_me]
- session[:referer] = safe_referer(params[:referer]) if params[:referer]
- password_authentication(params[:username].strip, params[:password])
+
+ referer = safe_referer(params[:referer]) if params[:referer]
+
+ password_authentication(params[:username].strip, params[:password], referer)
end
def destroy
##
# handle password authentication
- def password_authentication(username, password)
+ def password_authentication(username, password, referer = nil)
if (user = User.authenticate(:username => username, :password => password))
- successful_login(user)
+ successful_login(user, referer)
elsif (user = User.authenticate(:username => username, :password => password, :pending => true))
- unconfirmed_login(user)
+ unconfirmed_login(user, referer)
elsif User.authenticate(:username => username, :password => password, :suspended => true)
- failed_login({ :partial => "sessions/suspended_flash" }, username)
+ failed_login({ :partial => "sessions/suspended_flash" }, username, referer)
else
- failed_login t("sessions.new.auth failure"), username
+ failed_login(t("sessions.new.auth failure"), username, referer)
end
end
end
authorize_resource :class => false
+ content_security_policy(:only => :edit) do |policy|
+ policy.frame_src(*policy.frame_src, :blob)
+ end
+
+ content_security_policy(:only => :id) do |policy|
+ policy.connect_src("*")
+ policy.img_src(*policy.img_src, "*", :blob)
+ policy.script_src(*policy.script_src, :unsafe_eval)
+ policy.style_src(*policy.style_src, :unsafe_inline)
+ end
+
def index
session[:location] ||= OSM.ip_location(request.env["REMOTE_ADDR"]) unless Settings.status == "database_readonly" || Settings.status == "database_offline"
end
require_user
end
- if %w[id].include?(editor)
- append_content_security_policy_directives(
- :frame_src => %w[blob:]
- )
- end
-
begin
if params[:node]
bbox = Node.visible.find(params[:node]).bbox.to_unscaled
end
def copyright
+ @title = t ".title"
@locale = params[:copyright_locale] || I18n.locale
end
end
def id
- append_content_security_policy_directives(
- :connect_src => %w[*],
- :img_src => %w[* blob:],
- :script_src => %w[dev.virtualearth.net 'unsafe-eval'],
- :style_src => %w['unsafe-inline']
- )
-
render :layout => false
end
before_action :check_database_writable, :only => [:new, :go_public]
before_action :require_cookies, :only => [:new]
before_action :lookup_user_by_name, :only => [:set_status, :destroy]
- before_action :allow_thirdparty_images, :only => [:show]
+
+ allow_thirdparty_images :only => :show
+ allow_social_login :only => :new
##
# display a list of users matching specified criteria
def new
@title = t ".title"
- @referer = if params[:referer]
- safe_referer(params[:referer])
- else
- session[:referer]
- end
+ @referer = safe_referer(params[:referer])
parse_oauth_referer @referer
- append_content_security_policy_directives(
- :form_action => %w[accounts.google.com *.facebook.com login.microsoftonline.com github.com meta.wikimedia.org]
- )
-
if current_user
# The user is logged in already, so don't show them the signup
# page, instead send them to the home page
self.current_user = User.new(user_params)
if check_signup_allowed(current_user.email)
- session[:referer] = safe_referer(params[:referer]) if params[:referer]
-
- Rails.logger.info "create: #{session[:referer]}"
-
if current_user.auth_uid.present?
# We are creating an account with external authentication and
# no password was specified so create a random one
if current_user.invalid?
# Something is wrong with a new user, so rerender the form
render :action => "new"
- elsif current_user.auth_provider.present?
- # Verify external authenticator before moving on
- 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.slice("email", "display_name", "pass_crypt", "pass_crypt_confirmation")
- save_new_user params[:email_hmac]
+ save_new_user params[:email_hmac], params[:referer]
end
end
end
##
# omniauth success callback
def auth_success
+ referer = request.env["omniauth.params"]["referer"]
auth_info = request.env["omniauth.auth"]
provider = auth_info[:provider]
session[:user_errors] = current_user.errors.as_json
redirect_to edit_account_path
- elsif session[:new_user]
- session[:new_user]["auth_provider"] = provider
- session[:new_user]["auth_uid"] = uid
-
- email_hmac = UsersController.message_hmac(email) if email_verified && email
- save_new_user email_hmac
else
user = User.find_by(:auth_provider => provider, :auth_uid => uid)
if user
case user.status
when "pending"
- unconfirmed_login(user)
+ unconfirmed_login(user, referer)
when "active", "confirmed"
- successful_login(user, request.env["omniauth.params"]["referer"])
+ successful_login(user, referer)
when "suspended"
- failed_login({ :partial => "sessions/suspended_flash" })
+ failed_login({ :partial => "sessions/suspended_flash" }, user.display_name, referer)
else
- failed_login t("sessions.new.auth failure")
+ failed_login(t("sessions.new.auth failure"), user.display_name, referer)
end
else
email_hmac = UsersController.message_hmac(email) if email_verified && email
redirect_to :action => "new", :nickname => name, :email => email, :email_hmac => email_hmac,
- :auth_provider => provider, :auth_uid => uid
+ :auth_provider => provider, :auth_uid => uid, :referer => referer
end
end
end
private
- def save_new_user(email_hmac)
- new_user = session.delete(:new_user)
- self.current_user = User.new(new_user)
+ def save_new_user(email_hmac, referer = nil)
if check_signup_allowed(current_user.email)
current_user.data_public = true
current_user.description = "" if current_user.description.nil?
flash[:matomo_goal] = Settings.matomo["goals"]["signup"] if defined?(Settings.matomo)
- referer = welcome_path(welcome_options)
+ referer = welcome_path(welcome_options(referer))
if current_user.status == "active"
- session[:referer] = referer
- successful_login(current_user)
+ successful_login(current_user, referer)
else
session[:pending_user] = current_user.id
UserMailer.signup_confirm(current_user, current_user.generate_token_for(:new_user), referer).deliver_later
end
end
- def welcome_options
- uri = URI(session[:referer]) if session[:referer].present?
+ def welcome_options(referer = nil)
+ uri = URI(referer) if referer.present?
return { "oauth_return_url" => uri&.to_s } if uri&.path == oauth_authorization_path
case key
when "wikipedia", /^(#{SECONDARY_WIKI_PREFIXES}):wikipedia/o
- # This regex should match Wikipedia language codes, everything
- # from de to zh-classical
- lang = if value =~ /^([a-z-]{2,12}):(.+)$/i
- # Value is <lang>:<title> so split it up
- # Note that value is always left as-is, see: https://trac.openstreetmap.org/ticket/4315
- Regexp.last_match(1)
- else
- # Value is <title> so default to English Wikipedia
- "en"
- end
+ lang = "en"
when /^wikipedia:(\S+)$/
- # Language is in the key, so assume value is the title
lang = Regexp.last_match(1)
else
- # Not a wikipedia key!
return nil
end
- if value =~ /^([^#]*)#(.*)/
- # Contains a reference to a section of the wikipedia article
- # Must break it up to correctly build the url
- value = Regexp.last_match(1)
- section = "##{Regexp.last_match(2)}"
- encoded_section = "##{CGI.escape(Regexp.last_match(2).gsub(/ +/, '_'))}"
+ # This regex should match Wikipedia language codes, everything
+ # from de to zh-classical
+ if value =~ /^([a-z-]{2,12}):(.+)$/i
+ lang = Regexp.last_match(1)
+ title_section = Regexp.last_match(2)
else
- section = ""
- encoded_section = ""
+ title_section = value
end
- {
- :url => "https://#{lang}.wikipedia.org/wiki/#{value}?uselang=#{I18n.locale}#{encoded_section}",
- :title => value + section
- }
+ title, section = title_section.split("#", 2)
+ url = "https://#{lang}.wikipedia.org/wiki/#{wiki_encode(title)}?uselang=#{I18n.locale}"
+ url += "##{wiki_encode(section)}" if section
+
+ { :url => url, :title => value }
+ end
+
+ def wiki_encode(s)
+ u s.tr(" ", "_")
end
def wikidata_links(key, value)
module OpenGraphHelper
- def opengraph_tags(title = nil)
+ require "addressable/uri"
+
+ def opengraph_tags(title = nil, og_image = nil)
tags = {
"og:site_name" => t("layouts.project_name.title"),
- "og:title" => [title, t("layouts.project_name.title")].compact.join(" | "),
+ "og:title" => title || t("layouts.project_name.title"),
"og:type" => "website",
- "og:image" => image_url("osm_logo_256.png", :protocol => "http"),
- "og:image:secure_url" => image_url("osm_logo_256.png", :protocol => "https"),
+ "og:image" => og_image_url(og_image),
"og:url" => url_for(:only_path => false),
"og:description" => t("layouts.intro_text")
}
tag.meta(:property => property, :content => content)
end, "\n")
end
+
+ private
+
+ def og_image_url(og_image)
+ begin
+ return Addressable::URI.join(root_url, og_image).normalize if og_image
+ rescue Addressable::URI::InvalidURIError
+ # return default image
+ end
+ image_url("osm_logo_256.png")
+ end
end
# External authentication support
def openid_logo
- image_tag "openid_small.png", :alt => t("application.auth_providers.openid_logo_alt"), :class => "align-text-bottom"
+ image_tag "openid.svg", :size => "24", :alt => t("application.auth_providers.openid_logo_alt"), :class => "align-text-bottom"
end
def auth_button(name, provider, options = {})
:size => "24") + t("application.auth_providers.#{name}.title"),
auth_path(options.merge(:provider => provider)),
:method => :post,
- :class => "auth_button fs-6 border rounded text-muted text-decoration-none py-2 px-4 d-flex justify-content-center align-items-center",
+ :class => "auth_button fs-6 border rounded text-body-secondary text-decoration-none py-2 px-4 d-flex justify-content-center align-items-center",
:title => t("application.auth_providers.#{name}.title")
)
end
def update_bbox!(bbox_update)
bbox.expand!(bbox_update)
+ raise OSM::APISizeLimitExceeded if bbox.linear_size > size_limit
+
# update active record. rails 2.1's dirty handling should take care of
# whether this object needs saving or not.
self.min_lon, self.min_lat, self.max_lon, self.max_lat = @bbox.to_a.collect(&:round) if bbox.complete?
def subscribed?(user)
subscribers.exists?(user.id)
end
+
+ def size_limit
+ @size_limit ||= ActiveRecord::Base.connection.select_value(
+ "SELECT api_size_limit($1)", "api_size_limit", [user_id]
+ )
+ end
end
#
class DiaryComment < ApplicationRecord
- belongs_to :user
+ belongs_to :user, :counter_cache => true
belongs_to :diary_entry
scope :visible, -> { where(:visible => true) }
after_save :spam_check
def body
- RichText.new(self[:body_format], self[:body])
+ @body ||= RichText.new(self[:body_format], self[:body])
end
private
scope :visible_to, ->(user) { where(:assigned_role => user.roles.map(&:role)) }
def read_reports
- resolved_at.present? ? reports.where("updated_at < ?", resolved_at) : nil
+ resolved_at.present? ? reports.where(:updated_at => ...resolved_at) : nil
end
def unread_reports
- resolved_at.present? ? reports.where("updated_at >= ?", resolved_at) : reports
+ resolved_at.present? ? reports.where(:updated_at => resolved_at..) : reports
end
include AASM
class NoteComment < ApplicationRecord
belongs_to :note, :touch => true
- belongs_to :author, :class_name => "User", :optional => true
+ belongs_to :author, :class_name => "User", :optional => true, :counter_cache => true
validates :id, :uniqueness => true, :presence => { :on => :update },
:numericality => { :on => :update, :only_integer => true }
:content_type => content_type(attachable.path),
:identify => false)
else
- super(attachable)
+ super
end
end
#
# Table name: users
#
-# email :string not null
-# id :bigint(8) not null, primary key
-# pass_crypt :string not null
-# creation_time :datetime not null
-# display_name :string default(""), not null
-# data_public :boolean default(FALSE), not null
-# description :text default(""), not null
-# home_lat :float
-# home_lon :float
-# home_zoom :integer default(3)
-# pass_salt :string
-# email_valid :boolean default(FALSE), not null
-# new_email :string
-# creation_ip :string
-# languages :string
-# status :enum default("pending"), not null
-# terms_agreed :datetime
-# consider_pd :boolean default(FALSE), not null
-# auth_uid :string
-# preferred_editor :string
-# terms_seen :boolean default(FALSE), not null
-# description_format :enum default("markdown"), not null
-# changesets_count :integer default(0), not null
-# traces_count :integer default(0), not null
-# diary_entries_count :integer default(0), not null
-# image_use_gravatar :boolean default(FALSE), not null
-# auth_provider :string
-# home_tile :bigint(8)
-# tou_agreed :datetime
+# email :string not null
+# id :bigint(8) not null, primary key
+# pass_crypt :string not null
+# creation_time :datetime not null
+# display_name :string default(""), not null
+# data_public :boolean default(FALSE), not null
+# description :text default(""), not null
+# home_lat :float
+# home_lon :float
+# home_zoom :integer default(3)
+# pass_salt :string
+# email_valid :boolean default(FALSE), not null
+# new_email :string
+# creation_ip :string
+# languages :string
+# status :enum default("pending"), not null
+# terms_agreed :datetime
+# consider_pd :boolean default(FALSE), not null
+# auth_uid :string
+# preferred_editor :string
+# terms_seen :boolean default(FALSE), not null
+# description_format :enum default("markdown"), not null
+# changesets_count :integer default(0), not null
+# traces_count :integer default(0), not null
+# diary_entries_count :integer default(0), not null
+# image_use_gravatar :boolean default(FALSE), not null
+# auth_provider :string
+# home_tile :bigint(8)
+# tou_agreed :datetime
+# diary_comments_count :integer default(0)
+# note_comments_count :integer default(0)
#
# Indexes
#
def max_messages_per_hour
account_age_in_seconds = Time.now.utc - created_at
account_age_in_hours = account_age_in_seconds / 3600
- recent_messages = messages.where("sent_on >= ?", Time.now.utc - 3600).count
+ recent_messages = messages.where(:sent_on => Time.now.utc - 3600..).count
max_messages = account_age_in_hours.ceil + recent_messages - (active_reports * 10)
max_messages.clamp(0, Settings.max_messages_per_hour)
end
def max_friends_per_hour
account_age_in_seconds = Time.now.utc - created_at
account_age_in_hours = account_age_in_seconds / 3600
- recent_friends = Friendship.where(:befriendee => self).where("created_at >= ?", Time.now.utc - 3600).count
+ recent_friends = Friendship.where(:befriendee => self).where(:created_at => Time.now.utc - 3600..).count
max_friends = account_age_in_hours.ceil + recent_friends - (active_reports * 10)
max_friends.clamp(0, Settings.max_friends_per_hour)
end
<%= f.select(:auth_provider, Auth.providers, :hide_label => true, :wrapper => { :class => "col-auto mb-0" }) %>
<%= f.text_field(:auth_uid, :hide_label => true, :wrapper => { :class => "col mb-0" }) %>
</div>
- <small class="form-text text-muted">(<a href="<%= t ".openid.link" %>" target="_new"><%= t ".openid.link text" %></a>)</small>
+ <small class="form-text text-body-secondary">(<a href="<%= t ".openid.link" %>" target="_new"><%= t ".openid.link text" %></a>)</small>
</fieldset>
<div class="mb-3">
<label class="form-label"><%= t ".public editing.heading" %></label>
- <span class="form-text text-muted">
+ <span class="form-text text-body-secondary">
<% if current_user.data_public? %>
<%= t ".public editing.enabled" %>
(<a href="<%= t ".public editing.enabled link" %>" target="_new"><%= t ".public editing.enabled link text" %></a>)
<div class="mb-3">
<label class="form-label"><%= t ".contributor terms.heading" %></label>
- <span class="form-text text-muted">
+ <span class="form-text text-body-secondary">
<% if current_user.terms_agreed? %>
<%= t ".contributor terms.agreed" %>
(<a href="<%= t ".contributor terms.link" %>" target="_new"><%= t ".contributor terms.link text" %></a>)
</span>
</div>
- <div class="row justify-content-between">
- <div class="col-auto btn-wrapper">
+ <div class="row justify-content-between g-1">
+ <div class="col-auto">
<%= f.primary t(".save changes button") %>
</div>
- <div class="col-auto btn-wrapper">
+ <div class="col-auto">
<%= link_to t(".delete_account"), account_deletion_path, :class => "btn btn-outline-danger" %>
</div>
</div>
<div>
- <div class="list-inline justify-content-center d-flex align-items-center flex-wrap mb-3 gap-3" id="login_auth_buttons">
+ <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-100 mb-3" id="login_auth_buttons">
+ <% prefered_auth_button_available = false %>
<% %w[google facebook microsoft github wikipedia].each do |provider| %>
<% if Settings.key?("#{provider}_auth_id".to_sym) -%>
<% if @preferred_auth_provider == provider %>
- <div class="mx-2"><%= auth_button_preferred provider, provider %></div>
+ <% prefered_auth_button_available = true %>
<% end %>
<% end -%>
<% end -%>
- <div class="justify-content-center d-flex gap-1">
- <div>
- <%= link_to image_tag("openid.png",
- :alt => t("application.auth_providers.openid.title"),
- :size => "24"),
- "#",
- :id => "openid_open_url",
- :title => t("application.auth_providers.openid.title"),
- :class => "p-2 d-block" %>
+ <% if prefered_auth_button_available %>
+ <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-50">
+ <% %w[google facebook microsoft github wikipedia].each do |provider| %>
+ <% if Settings.key?("#{provider}_auth_id".to_sym) -%>
+ <% if @preferred_auth_provider == provider %>
+ <%= auth_button_preferred provider, provider %>
+ <% end %>
+ <% end -%>
+ <% end -%>
</div>
+ <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-50">
+ <% else %>
+ <div class="list-inline justify-content-center d-flex align-items-center flex-wrap w-100">
+ <% end %>
+
+ <%= link_to image_tag("openid.png",
+ :alt => t("application.auth_providers.openid.title"),
+ :size => "24"),
+ "#",
+ :id => "openid_open_url",
+ :title => t("application.auth_providers.openid.title"),
+ :class => "p-2 d-block" %>
<% %w[google facebook microsoft github wikipedia].each do |provider| %>
<% unless @preferred_auth_provider == provider %>
<% if Settings.key?("#{provider}_auth_id".to_sym) -%>
- <div><%= auth_button provider, provider %></div>
+ <%= auth_button provider, provider %>
<% end -%>
<% end %>
<% end -%>
<label for="openid_url" class="form-label"><%= t ".openid_html", :logo => openid_logo %></label>
<%= hidden_field_tag("referer", params[:referer], :autocomplete => "off") %>
<%= text_field_tag("openid_url", "", :tabindex => 20, :autocomplete => "on", :class => "openid_url form-control") %>
- <span class="form-text text-muted">(<a href="<%= t "accounts.edit.openid.link" %>" target="_new"><%= t "accounts.edit.openid.link text" %></a>)</span>
+ <span class="form-text text-body-secondary">(<a href="<%= t "accounts.edit.openid.link" %>" target="_new"><%= t "accounts.edit.openid.link text" %></a>)</span>
</div>
<%= submit_tag t(".openid_login_button"), :tabindex => 21, :id => "openid_login_button", :class => "btn btn-primary" %>
:id => node.redaction.id), node.redaction) %>
</div>
<% else %>
- <%= tag.div :class => ["browse-section", "browse-node", { "text-muted" => node.redacted? }] do %>
+ <%= tag.div :class => ["browse-section", "browse-node", { "text-body-secondary" => node.redacted? }] do %>
<%= render :partial => "browse/common_details", :object => node %>
<% unless node.ways.empty? and node.containing_relation_members.empty? %>
:id => relation.redaction.id), relation.redaction) %>
</div>
<% else %>
- <%= tag.div :class => ["browse-section", "browse-relation", { "text-muted" => relation.redacted? }] do %>
+ <%= tag.div :class => ["browse-section", "browse-relation", { "text-body-secondary" => relation.redacted? }] do %>
<%= render :partial => "browse/common_details", :object => relation %>
<% unless relation.containing_relation_members.empty? %>
:id => way.redaction.id), way.redaction) %>
</div>
<% else %>
- <%= tag.div :class => ["browse-section", "browse-way", { "text-muted" => way.redacted? }] do %>
+ <%= tag.div :class => ["browse-section", "browse-way", { "text-body-secondary" => way.redacted? }] do %>
<%= render :partial => "browse/common_details", :object => way %>
<% unless way.containing_relation_members.empty? %>
</div>
</div>
- <small class='text-muted'>
+ <small class='text-body-secondary'>
<%= t(".created_by_html", :link_user => link_to(changeset.user.display_name, changeset.user), :created => l(changeset.created_at, :format => :blog)) %>
</small>
</div>
<% if current_user %>
<div class="col-auto">
<% if @changeset.subscribers.exists?(current_user.id) %>
- <button class="btn btn-sm btn-primary" name="unsubscribe" data-method="POST" data-url="<%= api_changeset_unsubscribe_url(@changeset) %>"><%= t("javascripts.changesets.show.unsubscribe") %></button>
+ <%= tag.button t(".unsubscribe"),
+ :class => "btn btn-sm btn-primary",
+ :name => "unsubscribe",
+ :data => { :method => "POST",
+ :url => api_changeset_unsubscribe_url(@changeset) } %>
<% else %>
- <button class="btn btn-sm btn-primary" name="subscribe" data-method="POST" data-url="<%= api_changeset_subscribe_url(@changeset) %>"><%= t("javascripts.changesets.show.subscribe") %></button>
+ <%= tag.button t(".subscribe"),
+ :class => "btn btn-sm btn-primary",
+ :name => "subscribe",
+ :data => { :method => "POST",
+ :url => api_changeset_subscribe_url(@changeset) } %>
<% end %>
</div>
<% end %>
<% @comments.each do |comment| %>
<% next unless comment.visible || current_user&.moderator? %>
<li id="c<%= comment.id %>">
- <small class='text-muted'>
+ <small class='text-body-secondary'>
<%= t comment.visible ? ".comment_by_html" : ".hidden_comment_by_html",
:time_ago => friendly_date_ago(comment.created_at),
:user => link_to(comment.author.display_name, comment.author) %>
<% if current_user&.moderator? %>
—
- <%= tag.button t("javascripts.changesets.show.#{comment.visible ? 'hide' : 'unhide'}_comment"),
+ <%= tag.button t(".#{comment.visible ? 'hide' : 'unhide'}_comment"),
:class => "btn btn-sm small btn-link link-secondary p-0 align-baseline",
:data => { :method => "POST",
:url => comment.visible ? changeset_comment_hide_url(comment) : changeset_comment_unhide_url(comment) } %>
<div id="comment-error" class="alert alert-danger p-2 mb-3" hidden>
</div>
<div>
- <button name="comment" data-method="POST" data-url="<%= changeset_comment_url(@changeset) %>" disabled class="btn btn-sm btn-primary"><%= t("javascripts.changesets.show.comment") %></button>
+ <%= tag.button t(".comment"),
+ :class => "btn btn-primary",
+ :name => "comment",
+ :disabled => true,
+ :data => { :method => "POST",
+ :url => changeset_comment_url(@changeset) } %>
</div>
</form>
<% else %>
<% else %>
<h1>
<%= t ".introduction_1" %>
- <span class="text-muted">
+ <span class="text-body-secondary">
<%= t ".introduction_2" %>
</span>
</h1>
- <p class='text-muted'>
+ <p class='text-body-secondary'>
<%= t ".resend_html",
:reconfirm_link => link_to(t(".click_here"), url_for(:action => "confirm_resend")) %>
</p>
<%= user_thumbnail contact %>
</div>
<div class="col">
- <p class='text-muted mb-0'>
+ <p class='text-body-secondary mb-0'>
<%= link_to contact.display_name, contact %>
<% if @user.home_location? and contact.home_location? %>
<% distance = @user.distance(contact) %>
</p>
<nav class='secondary-actions'>
- <ul class='clearfix text-muted'>
+ <ul class='clearfix text-body-secondary'>
<li><%= link_to t("users.show.send message"), new_message_path(contact) %></li>
<li>
<% if current_user.friends_with?(contact) %>
</thead>
<% @comments.each do |comment| -%>
<tr>
- <td width="25%" class="<%= "text-muted" unless comment.visible? %>"><%= link_to comment.diary_entry.title, diary_entry_path(comment.diary_entry.user, comment.diary_entry) %></td>
- <td width="25%" class="<%= "text-muted" unless comment.visible? %>">
+ <td width="25%" class="<%= "text-body-secondary" unless comment.visible? %>"><%= link_to comment.diary_entry.title, diary_entry_path(comment.diary_entry.user, comment.diary_entry) %></td>
+ <td width="25%" class="<%= "text-body-secondary" unless comment.visible? %>">
<%= friendly_date_ago(comment.created_at) %>
</td>
- <td width="50%" class="richtext text-break<%= " text-muted" unless comment.visible? %>"><%= comment.body.to_html %></td>
+ <td width="50%" class="richtext text-break<%= " text-body-secondary" unless comment.visible? %>"><%= comment.body.to_html %></td>
</tr>
<% end -%>
</table>
<%= render "shared/pagination",
- :newer_key => "diary_entries.comments.newer_comments",
- :older_key => "diary_entries.comments.older_comments",
+ :newer_key => "diary_comments.index.newer_comments",
+ :older_key => "diary_comments.index.older_comments",
:newer_id => @newer_comments_id,
:older_id => @older_comments_id %>
<% end -%>
-<div class="row diary-comment border-bottom py-3<%= " text-muted bg-danger bg-opacity-10" unless diary_comment.visible? %>">
+<div class="row diary-comment border-bottom py-3<%= " text-body-secondary bg-danger bg-opacity-10" unless diary_comment.visible? %>">
<div class="col-auto pe-0 text-center">
<%= user_thumbnail diary_comment.user %>
</div>
<div class="col">
- <p class="text-muted m-0" id="comment<%= diary_comment.id %>"><%= t(".comment_from_html", :link_user => (link_to diary_comment.user.display_name, diary_comment.user), :comment_created_at => link_to(l(diary_comment.created_at, :format => :friendly), :anchor => "comment#{diary_comment.id}")) %>
+ <p class="text-body-secondary m-0" id="comment<%= diary_comment.id %>"><%= t(".comment_from_html", :link_user => (link_to diary_comment.user.display_name, diary_comment.user), :comment_created_at => link_to(l(diary_comment.created_at, :format => :friendly), :anchor => "comment#{diary_comment.id}")) %>
<% if current_user and diary_comment.user.id != current_user.id %>
| <%= report_link(t(".report"), diary_comment) %>
<% end %>
</p>
<div class="richtext text-break"><%= diary_comment.body.to_html %></div>
- <% if can? :hidecomment, DiaryEntry %>
+ <% if can? :hide, DiaryComment %>
<span>
<% if diary_comment.visible? %>
<%= link_to t(".hide_link"), hide_diary_comment_path(diary_comment.diary_entry.user, diary_comment.diary_entry, diary_comment), :method => :post, :data => { :confirm => t(".confirm") } %>
-<article class='diary_post border-top border-secondary-subtle py-3<%= " text-muted px-3 bg-danger bg-opacity-10" unless diary_entry.visible %> user_<%= diary_entry.user.id %>'>
+<article class='diary_post border-top border-secondary-subtle py-3<%= " text-body-secondary px-3 bg-danger bg-opacity-10" unless diary_entry.visible %> user_<%= diary_entry.user.id %>'>
<%= render :partial => "diary_entry_heading", :object => diary_entry, :as => "diary_entry" %>
<div class="richtext text-break" xml:lang="<%= diary_entry.language_code %>" lang="<%= diary_entry.language_code %>">
</div>
<% end %>
- <small class='text-muted'>
+ <small class='text-body-secondary'>
<%= t("diary_entries.diary_entry.posted_by_html", :link_user => (link_to diary_entry.user.display_name, diary_entry.user), :created => l(diary_entry.created_at, :format => :blog), :language_link => (link_to diary_entry.language.name, :controller => "diary_entries", :action => "index", :display_name => nil, :language => diary_entry.language_code)) %>
<% if (l(diary_entry.updated_at, :format => :blog) != l(diary_entry.created_at, :format => :blog)) %>
<%= t("diary_entries.diary_entry.updated_at_html", :updated => l(diary_entry.updated_at, :format => :blog)) %>
<% if current_user %>
<div class="col-auto">
<% if @entry.subscribers.exists?(current_user.id) %>
- <%= link_to t("javascripts.changesets.show.unsubscribe"), diary_entry_unsubscribe_path(@entry.user, @entry), :method => :post, :class => "btn btn-sm btn-primary" %>
+ <%= link_to t(".unsubscribe"), diary_entry_unsubscribe_path(@entry.user, @entry), :method => :post, :class => "btn btn-sm btn-primary" %>
<% else %>
- <%= link_to t("javascripts.changesets.show.subscribe"), diary_entry_subscribe_path(@entry.user, @entry.id), :method => :post, :class => "btn btn-sm btn-primary" %>
+ <%= link_to t(".subscribe"), diary_entry_subscribe_path(@entry.user, @entry.id), :method => :post, :class => "btn btn-sm btn-primary" %>
<% end %>
</div>
<% end %>
<%= link_to user_thumbnail(comment.user), comment.user %>
</div>
<div class="col">
- <p class="text-muted">
+ <p class="text-body-secondary">
<%= t ".comment_from_html", :user_link => link_to(comment.user.display_name, comment.user),
:comment_created_at => tag.time(l(comment.created_at.to_datetime, :format => :friendly),
:datetime => comment.created_at.xmlschema) %>
<%= link_to user_thumbnail(report.user), report.user %>
</div>
<div class="col">
- <p class="text-muted">
+ <p class="text-body-secondary">
<%= t ".reported_by_html", :category => report.category,
:user => link_to(report.user.display_name, report.user),
:updated_at => tag.time(l(report.updated_at.to_datetime, :format => :friendly),
<% content_for :heading do %>
<h1><%= t ".title", :status => @issue.status.humanize, :issue_id => @issue.id %></h1>
<p><%= @issue.reportable.model_name.human %> : <%= link_to reportable_title(@issue.reportable), reportable_url(@issue.reportable) %></p>
-<p class="text-muted">
+<p class="text-body-secondary">
<small>
<%= @issue.assigned_role %>
<% if @issue.reports.count > 0 %>
<h3><%= t ".reports_of_this_issue" %></h3>
<% if @read_reports.present? %>
- <div class="bg-body-tertiary text-muted">
+ <div class="bg-body-tertiary text-body-secondary">
<h4><%= t ".read_reports" %></h4>
<%= render "reports", :reports => @read_reports %>
</div>
<%= yield :head %>
<%= yield :auto_discovery_link_tag %>
<%= csrf_meta_tag %>
- <meta name="csp-nonce" content="<%= content_security_policy_style_nonce %>" />
+ <%= csp_meta_tag %>
<title><%= "#{@title} | " if @title %><%= t "layouts.project_name.title" %></title>
<% end %>
<header class="d-flex bg-body text-nowrap closed z-3">
- <h1 class="m-0 fw-semibold">
- <a href="<%= root_path %>" class="text-body-emphasis text-decoration-none geolink">
- <%= image_tag "osm_logo.png", :srcset => image_path("osm_logo.svg"), :alt => t("layouts.logo.alt_text"), :width => 30, :height => 30, :class => "logo" %>
+ <h1 class="d-flex m-0 fw-semibold">
+ <a href="<%= root_path %>" class="icon-link gap-1 text-body-emphasis text-decoration-none geolink">
+ <%= image_tag "osm_logo.png", :srcset => image_path("osm_logo.svg"), :alt => t("layouts.logo.alt_text"), :size => 30 %>
<%= t "layouts.project_name.h1" %>
</a>
</h1>
<%= link_to t("layouts.export"), export_path, :class => "btn btn-outline-primary geolink", :id => "export_tab" %>
</div>
</nav>
- <nav class='secondary'>
- <ul class='mx-1 px-0'>
+ <nav class='secondary d-flex gap-2 align-items-center'>
+ <ul class='nav flex-nowrap'>
<% if Settings.status != "database_offline" && can?(:index, Issue) %>
<li class="compact-hide nav-item">
<%= link_to issues_path(:status => "open"), :class => header_nav_link_class(issues_path) do %>
</ul>
<% if current_user && current_user.id %>
<div class='d-inline-flex dropdown user-menu logged-in'>
- <button class='dropdown-toggle btn btn-outline-secondary border-secondary-subtle bg-body text-secondary px-2 py-1 flex-grow-1' type='button' data-bs-toggle='dropdown'>
+ <button class='d-flex gap-1 align-items-center justify-content-center dropdown-toggle btn btn-outline-secondary border-secondary-subtle bg-body text-secondary px-2 py-1 flex-grow-1' type='button' data-bs-toggle='dropdown'>
<%= user_thumbnail_tiny(current_user, :width => 25, :height => 25, :class => "user_thumbnail_tiny rounded-1 bg-body") %>
- <%= render :partial => "layouts/inbox" %>
- <span class="user-button">
- <span class='username'>
- <%= current_user.display_name %>
- </span>
+ <% if current_user.new_messages.size > 0 %>
+ <span class="badge count-number position-static m-1"><%= current_user.new_messages.size %></span>
+ <% end %>
+ <span class='username align-middle text-truncate'>
+ <%= current_user.display_name %>
</span>
</button>
<div class='dropdown-menu dropdown-menu-end'>
<%= link_to t("layouts.logout"), logout_path(:referer => request.fullpath), :method => "post", :class => "geolink dropdown-item" %>
</div>
</div>
- <% elsif (controller_name != "users" and controller_name != "sessions") || action_name != "new" %>
+ <% else %>
<div class="d-inline-flex btn-group login-menu" role="">
<%= link_to t("layouts.log_in"), login_path(:referer => request.fullpath), :class => "geolink btn btn-outline-secondary" %>
<%= link_to t("layouts.sign_up"), user_new_path, :class => "btn btn-outline-secondary" %>
+++ /dev/null
-<% if current_user.new_messages.size > 0 %>
-<span id="inboxanchor" class="badge count-number m-1"><%= current_user.new_messages.size %></span>
-<% end %>
<% end -%>
<%= tag.link :rel => "search", :type => "application/opensearchdescription+xml", :title => "OpenStreetMap Search", :href => asset_path("osm.xml") %>
<%= tag.meta :name => "description", :content => "OpenStreetMap is the free wiki world map." %>
-<%= opengraph_tags(@title) %>
+<%= opengraph_tags(@title, @og_image) %>
<% if flash[:matomo_goal] -%>
<%= tag.meta :name => "matomo-goal", :content => flash[:matomo_goal] %>
<% end -%>
<div class="row gx-2 mx-0">
<div class="col">
<div class="input-group flex-nowrap">
- <%= text_field_tag "query", params[:query], :placeholder => t("site.search.search"), :autofocus => autofocus, :autocomplete => "on", :class => "form-control form-control-sm z-0", :dir => "auto" %>
+ <%= text_field_tag "query", params[:query], :placeholder => t("site.search.search"), :autofocus => autofocus, :autocomplete => "on", :class => "form-control z-0 py-1 px-2", :dir => "auto" %>
<div class="input-group-text border-start-0 p-0 position-relative">
- <%= button_tag t("site.search.where_am_i"), :type => "button", :class => "describe_location position-absolute end-0 me-1 btn btn-sm btn-outline-primary border-0 bg-transparent text-primary link-body-emphasis link-opacity-100-hover", :title => t("site.search.where_am_i_title") %>
+ <%= button_tag t("site.search.where_am_i"), :type => "button", :class => "describe_location position-absolute end-0 top-0 bottom-0 m-1 btn btn-outline-primary border-0 p-1 bg-transparent text-primary link-body-emphasis link-opacity-100-hover", :title => t("site.search.where_am_i_title") %>
</div>
- <%= submit_tag t("site.search.submit_text"), :class => "btn btn-sm btn-primary", :data => { :disable_with => false } %>
+ <%= button_tag :class => "btn btn-primary p-1", :title => t("site.search.submit_text") do %>
+ <svg width="24" height="20">
+ <circle cx="13" cy="7" r="6.5" fill="#fff8" stroke="#fff" />
+ <path d="M9.75 12.629 A6.5 6.5 0 0 1 7.371 10.25" fill="none" stroke="#fff" stroke-width="1.5" />
+ <line x1="1" y1="19" x2="1.5" y2="18.5" stroke="#fff8" stroke-width="2" />
+ <line x1="1.5" y1="18.5" x2="6" y2="14" stroke="#fff" stroke-width="2.5" />
+ <line x1="6" y1="14" x2="6.5" y2="13.5" stroke="#fff8" stroke-width="2" />
+ <line x1="6.5" y1="13.5" x2="8.5" y2="11.5" stroke="#fff" stroke-width="1.5" />
+ </svg>
+ <% end %>
</div>
</div>
<div class="col-auto">
- <%= link_to image_tag("directions.png", :width => "20", :height => "20", :class => "align-bottom"), directions_path, :class => "btn btn-sm btn-primary switch_link", :title => t("site.search.get_directions_title") %>
+ <%= link_to directions_path, :class => "btn btn-primary p-1 switch_link", :title => t("site.search.get_directions_title") do %>
+ <svg width="28" height="24" viewBox="0 -2 28 24" class="align-bottom">
+ <path d="M11.5 9.5 v-3h3v-1l-5 -5l-5 5v1h3v6" fill="none" stroke="#fff8" />
+ <path d="M7.5 19.5h4v-5a1 1 0 0 1 1 -1h5v3h1l5 -5l-5 -5h-1v3h-6a4 4 0 0 0 -4 4z" fill="#fff8" stroke="#fff" />
+ </svg>
+ <% end %>
</div>
</div>
</form>
- <form method="GET" action="<%= directions_path %>" class="directions_form bg-body-secondary pb-3">
+ <form method="GET" action="<%= directions_path %>" class="directions_form bg-body-secondary pb-2">
<div class="d-flex flex-row-reverse px-3 py-3"><button type="button" class="btn-close" aria-label="<%= t("javascripts.close") %>"></button></div>
- <div class="row gx-2 m-1">
- <div class="col-1">
- <%= image_tag "marker-green.png", :class => "routing_marker mx-auto d-block", :data => { :type => "from" }, :draggable => "true" %>
- </div>
- <div class="col">
- <%= text_field_tag "route_from", params[:from], :placeholder => t("site.search.from"), :autocomplete => "on", :class => "form-control form-control-sm", :dir => "auto" %>
- </div>
- </div>
- <div class="row gx-2 m-1">
- <div class="col-1">
- <%= image_tag "marker-red.png", :class => "routing_marker mx-auto d-block", :data => { :type => "to" }, :draggable => "true" %>
- </div>
- <div class="col">
- <%= text_field_tag "route_to", params[:to], :placeholder => t("site.search.to"), :autocomplete => "on", :class => "form-control form-control-sm", :dir => "auto" %>
+ <div class="d-flex flex-column mx-2 gap-1">
+ <div class="d-flex gap-2 align-items-center">
+ <div class="routing_marker_column flex-shrink-0">
+ <%= image_tag "marker-green.png", :class => "img-fluid", :data => { :type => "from" }, :draggable => "true" %>
+ </div>
+ <%= text_field_tag "route_from", params[:from], :placeholder => t("site.search.from"), :autocomplete => "on", :class => "form-control py-1 px-2", :dir => "auto" %>
</div>
- </div>
- <div class="row gx-2 m-1">
- <div class="col offset-1">
- <select class="routing_engines form-select form-select-sm" name="routing_engines"></select>
+ <div class="d-flex gap-2 align-items-center">
+ <div class="routing_marker_column flex-shrink-0">
+ <%= image_tag "marker-red.png", :class => "img-fluid", :data => { :type => "to" }, :draggable => "true" %>
+ </div>
+ <%= text_field_tag "route_to", params[:to], :placeholder => t("site.search.to"), :autocomplete => "on", :class => "form-control py-1 px-2", :dir => "auto" %>
</div>
- <div class="col-auto">
- <%= submit_tag t("site.search.submit_text"), :class => "routing_go btn btn-sm btn-primary", :data => { :disable_with => false } %>
+ <div class="d-flex gap-2 align-items-center">
+ <div class="routing_marker_column flex-shrink-0"></div>
+ <select class="routing_engines form-select py-1 px-2" name="routing_engines"></select>
+ <%= submit_tag t("site.search.submit_text"), :class => "routing_go btn btn-primary py-1 px-2", :data => { :disable_with => false } %>
</div>
- </div>
- <div class="row gx-2 m-1">
- <div class="col offset-1">
- <button class="btn btn-sm btn-link reverse_directions"><%= t("site.search.reverse_directions_text") %></button>
+ <div class="d-flex gap-2 align-items-center">
+ <div class="routing_marker_column flex-shrink-0"></div>
+ <button class="btn btn-link py-1 px-2 reverse_directions"><%= t("site.search.reverse_directions_text") %></button>
</div>
</div>
<div class="mb-3">
<textarea class="form-control" name="text" cols="40" rows="10" maxlength="2000" placeholder="<%= t(".advice") %>"></textarea>
</div>
- <div class="btn-wrapper">
+ <div>
<input type="submit" name="add" value="<%= t(".add") %>" disabled="1" class="btn btn-primary">
</div>
</form>
<div>
<h4><%= t(".description") %></h4>
- <div class="note-description">
+ <div class="overflow-hidden ms-2">
<%= h(@note_comments.first.body.to_html) %>
</div>
<ul class="list-unstyled">
<% @note_comments.drop(1).each do |comment| %>
<li id="c<%= comment.id %>">
- <small class='text-muted'><%= note_event(comment.event, comment.created_at, comment.author) %></small>
+ <small class='text-body-secondary'><%= note_event(comment.event, comment.created_at, comment.author) %></small>
<div class="mx-2">
<%= comment.body.to_html %>
</div>
</div>
<div id="comment-error" class="alert alert-danger p-2 mb-3" hidden>
</div>
- <div class="btn-wrapper">
+ <div class="d-flex flex-wrap gap-1">
<% if current_user.moderator? -%>
- <%= submit_tag t(".hide"), :name => "hide", :class => "btn btn-light",
+ <%= button_tag t(".hide"), :name => "hide", :class => "btn btn-light",
:data => { :method => "DELETE",
:url => api_note_url(@note, "json") } %>
<% end -%>
- <%= submit_tag t(".resolve"), :name => "close", :class => "btn btn-primary",
+ <%= button_tag t(".resolve"), :name => "close", :class => "btn btn-primary",
:data => { :method => "POST",
:url => close_api_note_url(@note, "json"),
:default_action_text => t(".resolve"),
:comment_action_text => t(".comment_and_resolve") } %>
- <%= submit_tag t(".comment"), :name => "comment", :class => "btn btn-primary", :disabled => true,
+ <%= button_tag t(".comment"), :name => "comment", :class => "btn btn-primary", :disabled => true,
:data => { :method => "POST",
:url => comment_api_note_url(@note, "json") } %>
</div>
<input type="hidden" name="text" value="" autocomplete="off">
<div id="comment-error" class="alert alert-danger p-2 mb-3" hidden>
</div>
- <div class="btn-wrapper">
+ <div class="d-flex flex-wrap gap-1">
<% if @note.status != "hidden" and current_user and current_user.moderator? -%>
- <input type="submit" name="hide" value="<%= t(".hide") %>" class="btn btn-light" data-method="DELETE" data-url="<%= api_note_url(@note, "json") %>">
+ <%= button_tag t(".hide"), :name => "hide", :class => "btn btn-light",
+ :data => { :method => "DELETE",
+ :url => api_note_url(@note, "json") } %>
<% end -%>
<% if current_user -%>
- <input type="submit" name="reopen" value="<%= t(".reactivate") %>" class="btn btn-primary" data-method="POST" data-url="<%= reopen_api_note_url(@note, "json") %>">
+ <%= button_tag t(".reactivate"), :name => "reopen", :class => "btn btn-primary",
+ :data => { :method => "POST",
+ :url => reopen_api_note_url(@note, "json") } %>
<% end -%>
</div>
</form>
<% if current_user && current_user != @note.author %>
<p>
- <small class="text-muted">
+ <small class="text-body-secondary">
<%= t ".report_link_html", :link => report_link(t(".report"), @note) %>
<% if @note.status == "open" %>
<%= t ".other_problems_resolve", :link => report_link(t(".report"), @note) %>
<% end %>
<% if @note.freshly_closed? %>
- <small class="text-muted">
+ <small class="text-body-secondary">
<%= t ".disappear_date_html", :disappear_in => friendly_date(@note.freshly_closed_until) %>
</small>
<% end %>
<ul class="list-unstyled mb-0">
<li><%= link_to application.name, oauth_application_path(application) %></li>
<% application.redirect_uri.split.each do |uri| -%>
- <li class="text-muted"><%= uri %></li>
+ <li class="text-body-secondary"><%= uri %></li>
<% end -%>
</ul>
</td>
<td class="align-middle">
<ul class="list-unstyled mb-0">
<% application.scopes.each do |scope| -%>
- <li><%= authorization_scope(scope) %> <code class="text-muted">(<%= scope %>)</code></li>
+ <li><%= authorization_scope(scope) %> <code class="text-body-secondary">(<%= scope %>)</code></li>
<% end -%>
</ul>
</td>
<td>
<ul class="list-unstyled mb-0">
<% @application.scopes.each do |scope| -%>
- <li><%= t "oauth.scopes.#{scope}" %> <code class="text-muted">(<%= scope %>)</code></li>
+ <li><%= t "oauth.scopes.#{scope}" %> <code class="text-body-secondary">(<%= scope %>)</code></li>
<% end -%>
</ul>
</td>
<fieldset>
<legend><%= t ".home location" -%></legend>
- <p id="home_message" class="text-muted m-0<% if current_user.home_location? %> invisible<% end %>"><%= t ".no home location" %></p>
+ <p id="home_message" class="text-body-secondary m-0<% if current_user.home_location? %> invisible<% end %>"><%= t ".no home location" %></p>
<div class="row">
<%= f.text_field :home_lat, :wrapper_class => "col-sm-4 d-flex flex-column", :class => "mt-auto", :id => "home_lat" %>
<%= f.text_field :home_lon, :wrapper_class => "col-sm-4 d-flex flex-column", :class => "mt-auto", :id => "home_lon" %>
<% content_for :heading do %>
<% if @client_app_name %>
- <p class="text-center text-muted fs-6 py-2 mb-0 bg-body"><%= t(".login_to_authorize_html", :client_app_name => @client_app_name) %></p>
+ <p class="text-center text-body-secondary fs-6 py-2 mb-0 bg-body"><%= t(".login_to_authorize_html", :client_app_name => @client_app_name) %></p>
<% end %>
<div class="header-illustration new-user-main auth-container mx-auto">
- <ul class="nav nav-tabs position-absolute bottom-0 px-3 fs-6 w-100">
+ <ul class="nav nav-tabs position-absolute bottom-0 fs-6 w-100">
<li class="nav-item">
<%= link_to t("sessions.new.tab_title"), "#", :class => "nav-link active" %>
</li>
<li class="nav-item">
- <%= link_to t("users.new.tab_title"), url_for(:action => :new, :controller => :users), :class => "nav-link" %>
+ <%= link_to t("users.new.tab_title"), url_for(:action => :new, :controller => :users, :referer => params[:referer]), :class => "nav-link" %>
</li>
</ul>
</div>
<div id="login_login" class="auth-container mx-auto my-0">
<% if @preferred_auth_provider %>
<%= render :partial => "auth_providers" %>
- <div class="d-flex justify-content-center align-items-center">
+ <div class="d-flex justify-content-center align-items-center mb-2">
<div class="border-bottom border-1 flex-grow-1"></div>
<div class="text-secondary mx-3"><%= t ".or" %></div>
<div class="border-bottom border-1 flex-grow-1"></div>
<%= bootstrap_form_tag(:action => "login", :html => { :id => "login_form" }) do |f| %>
<%= hidden_field_tag("referer", h(params[:referer]), :autocomplete => "off") %>
- <%= f.text_field :username, :label => t(".email or username"), :tabindex => 1, :value => params[:username] %>
+ <%= f.text_field :username, :label => t(".email or username"), :autofocus => true, :tabindex => 1, :value => params[:username] %>
<div class="row">
<div class="col">
- <%= f.label :password, :class => "form-label" %>
+ <%= f.label :password, t(".password"), :class => "form-label" %>
</div>
<div class="col text-end">
<small><%= link_to(t(".lost password link"), user_forgot_password_path) %></small>
</div>
</div>
- <input class="form-control mb-3" type="password" name="password" id="password" tabindex="2" value="" autocomplete="off" />
+ <input class="form-control mb-3" type="password" name="password" id="password" tabindex="2" value="" autocomplete="on" />
<%= f.form_group do %>
<%= f.check_box :remember_me, { :label => t(".remember"), :tabindex => 3, :checked => (params[:remember_me] == "yes") }, "yes" %>
+++ /dev/null
-<%= tag.section :id => local_assigns[:id] do %>
- <div class='d-flex align-items-center gap-2 mb-2'>
- <div class='flex-shrink-0 icon <%= icon %>'></div>
- <h2 class='flex-grow-1 mb-0'><%= t "site.about.#{title}_title" %></h2>
- </div>
- <%= yield %>
-<% end %>
- <h2><%= t ".title" %></h2>
- <div class='clearfix'>
- <span class='sprite small term question float-start'></span>
+<h2><%= t ".title" %></h2>
+<div class='d-flex align-items-center gap-2'>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='flex-shrink-0 align-self-start'>
+ <circle cx="50" cy="50" r="45" fill="#7092ff" />
+ <path d="M44.42 54.95q0-3 1.26-5.04 1.26-2.04 4.32-4.26 2.7-1.92 3.84-3.3 1.2-1.44 1.2-3.36 0-1.92-1.44-2.88-1.38-1.02-3.9-1.02-2.52 0-4.98.78-2.46.78-5.04 2.1l-3.18-6.42q2.94-1.62 6.36-2.64 3.42-1.02 7.5-1.02 6.24 0 9.66 3 3.48 3 3.48 7.62 0 2.46-.78 4.26-.78 1.8-2.34 3.36-1.56 1.5-3.9 3.24-1.74 1.26-2.7 2.16-.96.9-1.32 1.74-.3.84-.3 2.1v1.74h-7.74zm-.96 12.18q0-2.76 1.5-3.84 1.5-1.14 3.66-1.14 2.1 0 3.6 1.14 1.5 1.08 1.5 3.84 0 2.64-1.5 3.84-1.5 1.14-3.6 1.14-2.16 0-3.66-1.14-1.5-1.2-1.5-3.84z" fill="#fff" />
+ </svg>
<p><%= t ".paragraph_1_html", :help_link => link_to(t(".get_help_here"), help_path),
:welcome_mat_link => link_to(t(".welcome_mat"), t(".welcome_mat_url")) %></p>
- </div>
+</div>
<div class='bg-body px-5 py-4'>
<p class="lead"><%= t ".lede_text" %></p>
- <%= render :layout => "about_section", :locals => { :icon => "local", :title => "local_knowledge" } do %>
+ <section>
+ <div class="d-flex align-items-center gap-2 mb-2">
+ <svg width="30" height="30" class="flex-shrink-0">
+ <circle cx="15" cy="15" r="13" fill="none" stroke="#c0c0c0" stroke-width="4" />
+ <path d="m 15,22 c 0,0 5,-4.5199 5,-8 0,-3 -2,-5 -5,-5 -3,0 -5,2 -5,5 0,3.4801 5,8 5,8 z" fill="#c0c0c0" />
+ </svg>
+ <h2 class="flex-grow-1 mb-0"><%= t "site.about.local_knowledge_title" %></h2>
+ </div>
<p><%= t "site.about.local_knowledge_html" %></p>
- <% end %>
+ </section>
- <%= render :layout => "about_section", :locals => { :icon => "community", :title => "community_driven" } do %>
+ <section>
+ <div class="d-flex align-items-center gap-2 mb-2">
+ <svg width="30" height="30" class="flex-shrink-0">
+ <circle cx="15" cy="15" r="13" fill="none" stroke="#c0c0c0" stroke-width="4" />
+ <path d="m 15,7 -6,6 0,7 4,0 0,-4 4,0 0,4 4,0 0,-7 z" fill="#c0c0c0" />
+ </svg>
+ <h2 class="flex-grow-1 mb-0"><%= t "site.about.community_driven_title" %></h2>
+ </div>
<p>
<%= t "site.about.community_driven_1_html", :osm_blog_link => link_to(t("site.about.community_driven_osm_blog"),
t("site.about.community_driven_osm_blog_url")),
:osm_foundation_link => link_to(t("site.about.community_driven_osm_foundation"),
t("site.about.community_driven_osm_foundation_url")) %>
</p>
- <% end %>
+ </section>
- <%= render :layout => "about_section", :locals => { :id => "open-data", :icon => "open", :title => "open_data" } do %>
+ <section id="open-data">
+ <div class="d-flex align-items-center gap-2 mb-2">
+ <svg width="30" height="30" class="flex-shrink-0">
+ <circle cx="15" cy="15" r="13" fill="none" stroke="#c0c0c0" stroke-width="4" />
+ <path d="M20.196 18 a6 6 0 1 1 0 -6" fill="none" stroke="#c0c0c0" stroke-width="3" />
+ </svg>
+ <h2 class="flex-grow-1 mb-0"><%= t "site.about.open_data_title" %></h2>
+ </div>
<p>
<%= t "site.about.open_data_1_html", :open_data => tag.i(t("site.about.open_data_open_data")),
:copyright_license_link => link_to(t("site.about.open_data_copyright_license"),
copyright_path) %></p>
- <% end %>
+ </section>
- <%= render :layout => "about_section", :locals => { :id => "legal", :icon => "legal", :title => "legal" } do %>
+ <section id="legal">
+ <div class="d-flex align-items-center gap-2 mb-2">
+ <svg width="30" height="30" class="flex-shrink-0">
+ <circle cx="15" cy="15" r="13" fill="none" stroke="#c0c0c0" stroke-width="4" />
+ <g fill="none" stroke="#c0c0c0" stroke-width="1.125" stroke-linecap="round">
+ <path transform="translate(15 15) scale(2.2 1.75) rotate(45)"
+ d="M.5 1 a1 1 0 0 0 0 -2 h-2.5 a1 1 0 0 1 0 -2 h.5" />
+ <path transform="translate(15 15) scale(-2.2 -1.75) rotate(45)"
+ d="M.5 1 a1 1 0 0 0 0 -2 h-2.5 a1 1 0 0 1 0 -2 h.5" />
+ </g>
+ </svg>
+ <h2 class="flex-grow-1 mb-0"><%= t "site.about.legal_title" %></h2>
+ </div>
<p>
<%= t "site.about.legal_1_1_html", :openstreetmap_foundation_link => link_to(t("site.about.legal_1_1_openstreetmap_foundation"),
t("site.about.legal_1_1_openstreetmap_foundation_url")),
<%= t "site.about.legal_2_2_html", :registered_trademarks_link => link_to(t("site.about.legal_2_2_registered_trademarks"),
t("site.about.legal_2_2_registered_trademarks_url")) %>
</p>
- <% end %>
+ </section>
- <%= render :layout => "about_section", :locals => { :id => "partners", :icon => "partners", :title => "partners" } do %>
+ <section id="partners">
+ <div class="d-flex align-items-center gap-2 mb-2">
+ <svg width="30" height="30" class="flex-shrink-0">
+ <circle cx="15" cy="15" r="13" fill="none" stroke="#c0c0c0" stroke-width="4" />
+ <g stroke="#c0c0c0" stroke-width="4" stroke-linecap="round">
+ <line x1="11" y1="15" x2="19" y2="15" />
+ <line x1="15" y1="11" x2="15" y2="19" />
+ </g>
+ </svg>
+ <h2 class="flex-grow-1 mb-0"><%= t "site.about.partners_title" %></h2>
+ </div>
<p><%= t "layouts.hosting_partners_2024_html", :fastly => link_to(t("layouts.partners_fastly"), "https://www.fastly.com/"),
:corpmembers => link_to(t("layouts.partners_corpmembers"), "https://osmfoundation.org/wiki/Corporate_Members"),
:partners => link_to(t("layouts.partners_partners"), "https://hardware.openstreetmap.org/thanks/") %>
</p>
- <% end %>
+ </section>
</div>
<% end %>
<% end %>
<% I18n.with_locale @locale do %>
<%= tag.h1 :lang => @locale, :dir => t("html.dir") do %>
- <%= t ".legal_babble.title_html" %>
+ <%= t ".title" %>
<% end %>
<% end %>
<% end %>
<div class='row'>
<div class='col-sm'>
- <h5><%= t ".how_to_help.join_the_community.title" %></h5>
+ <h3 class='fs-5'><%= t ".how_to_help.join_the_community.title" %></h3>
<p><%= t ".how_to_help.join_the_community.explanation_html" %></p>
<p class='text-center'>
<a class="btn btn-primary" href="<%= user_new_path %>"><%= t("layouts.start_mapping") %></a>
</p>
</div>
<div class='col-sm'>
- <h5><%= t "site.welcome.add_a_note.title" %></h5>
+ <h3 class='fs-5'><%= t "site.welcome.add_a_note.title" %></h3>
<p><%= t "site.welcome.add_a_note.para_1" %></p>
<p><%= t ".how_to_help.add_a_note.instructions_1_html", :note_icon => tag.a(:class => "icon note bg-dark rounded-1") %></p>
</div>
<div class='row'>
<div class='col-sm'>
- <div>
- <span class='sprite small check mx-auto'></span>
- </div>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='d-block mx-auto'>
+ <circle cx="50" cy="50" r="45" fill="#70cd8f" />
+ <path d="M31 46h-2l-3 3v2l14 14 5 5 5-5 25-25v-2l-3-3h-2l-25 25z" fill="#fff" />
+ </svg>
<p><%= t ".whats_on_the_map.on_the_map_html", :real_and_current => tag.em(t(".whats_on_the_map.real_and_current")) %></p>
</div>
<div class='col-sm'>
- <div>
- <span class='sprite small x mx-auto'></span>
- </div>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='d-block mx-auto'>
+ <circle cx="50" cy="50" r="45" fill="#cd7070" />
+ <path d="M35 30h-2l-3 3v2l15 15-15 15v2l3 3h2l15-15 15 15h2l3-3v-2l-15-15 15-15v-2l-3-3h-2l-15 15z" fill="#fff" />
+ </svg>
<p><%= t ".whats_on_the_map.off_the_map_html", :doesnt => tag.em(t(".whats_on_the_map.doesnt")) %></p>
</div>
</div>
<p><%= t ".basic_terms.paragraph_1" %></p>
-<div>
- <div class='align-middle mb-2'>
- <span class='sprite small term editor'></span>
+<ul class='list-unstyled'>
+ <li class='d-flex align-items-center gap-2 mb-2'>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='flex-shrink-0 align-self-start'>
+ <path d="M19.728 30.552l19.834-15.219L80 65l-19.834 15.219z" fill="#7092ff" opacity=".5" />
+ <path d="M10.597 18.651l19.834-15.219 6.088 7.934-19.834 15.219zm52.613 65.535l19.834-15.219 1.198 17.988-3.967 3.044z" fill="#7092ff" />
+ </svg>
<span><%= t ".basic_terms.an_editor_html", :editor => tag.strong(t(".basic_terms.editor")) %></span>
- </div>
- <div class='align-middle mb-2'>
- <span class='sprite small term node'></span>
+ </li>
+ <li class='d-flex align-items-center gap-2 mb-2'>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='flex-shrink-0 align-self-start'>
+ <path d="M50 5c-20.71 0-37.5 16.789-37.5 37.5s37.5 52.5 37.5 52.5 37.5-31.789 37.5-52.5-16.789-37.5-37.5-37.5z" fill="#7092ff" />
+ <circle cx="50" cy="42.5" r="15" fill="#fff" />
+ </svg>
<span><%= t ".basic_terms.a_node_html", :node => tag.strong(t(".basic_terms.node")) %></span>
- </div>
- <div class='align-middle mb-2'>
- <span class='sprite small term way'></span>
+ </li>
+ <li class='d-flex align-items-center gap-2 mb-2'>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='flex-shrink-0 align-self-start'>
+ <line x1="20" y1="80" x2="80" y2="20" stroke="#7092ff" stroke-width="15" />
+ <circle cx="20" cy="80" r="15" fill="#7092ff" />
+ <circle cx="80" cy="20" r="15" fill="#7092ff" />
+ <circle cx="20" cy="80" r="7" fill="#fff" />
+ <circle cx="80" cy="20" r="7" fill="#fff" />
+ </svg>
<span><%= t ".basic_terms.a_way_html", :way => tag.strong(t(".basic_terms.way")) %></span>
- </div>
- <div class='align-middle mb-2'>
- <span class='sprite small term tag'></span>
+ </li>
+ <li class='d-flex align-items-center gap-2 mb-2'>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='flex-shrink-0 align-self-start'>
+ <path d="M25 87l-20-20v-29l20-20h68l2 2v65l-2 2z" fill="#7092ff" />
+ <rect width="10" height="15" x="15" y="45" rx="3" ry="2.25" fill="#fff" />
+ </svg>
<span><%= t ".basic_terms.a_tag_html", :tag => tag.strong(t(".basic_terms.tag")) %></span>
- </div>
-</div>
+ </li>
+</ul>
-<div class='clearfix'>
- <h2><%= t ".rules.title" %></h2>
- <span class='sprite small term rules float-start'></span>
+<h2><%= t ".rules.title" %></h2>
+<div class='d-flex align-items-center gap-2'>
+ <svg width='50' height='50' viewBox='0 0 100 100' class='flex-shrink-0 align-self-start'>
+ <circle cx="50" cy="50" r="45" fill="#7092ff" />
+ <path d="M41.072 49.28q0-2.4 1.152-3.84 1.152-1.488 2.64-2.208-1.728-.96-2.688-2.256-.96-1.344-.96-3.264 0-2.88 2.448-4.512 2.448-1.68 7.008-1.68 2.688 0 4.56.48 1.872.432 3.648 1.152l-1.296 3.216q-1.632-.672-3.264-1.104-1.632-.48-3.936-.48-2.88 0-4.08.768-1.152.72-1.152 2.064 0 1.344 1.344 2.304 1.344.912 4.992 2.256 3.696 1.344 5.76 3.072 2.064 1.728 2.064 4.608 0 2.448-1.104 4.032-1.104 1.536-2.496 2.352 1.68.912 2.592 2.208.96 1.248.96 3.072 0 3.312-2.784 5.136-2.736 1.824-7.68 1.824-2.64 0-4.608-.384-1.968-.432-3.504-1.2v-3.6q1.536.72 3.792 1.344 2.256.624 4.512.624 3.552 0 4.896-1.008 1.344-1.056 1.344-2.4 0-.912-.48-1.584-.432-.672-1.776-1.392-1.296-.768-3.936-1.728-2.496-.96-4.32-1.968-1.776-1.008-2.736-2.4-.912-1.392-.912-3.504zm3.6-.48q0 1.776 1.488 3.024 1.536 1.2 5.376 2.64l1.056.384q1.104-.672 2.064-1.68 1.008-1.056 1.008-2.688 0-1.2-.672-2.16-.624-.96-2.256-1.824-1.632-.912-4.608-1.824-1.344.336-2.4 1.44-1.056 1.104-1.056 2.688z" fill="#fff" stroke="#fff" />
+ </svg>
<p><%= t ".rules.para_1_html", :imports_link => link_to(t(".rules.imports"), t(".rules.imports_url")),
:automated_edits_link => link_to(t(".rules.automated_edits"), t(".rules.automated_edits_url")) %></p>
</div>
-<div class='clearfix'>
- <%= render "any_questions" %>
-</div>
+<%= render "any_questions" %>
-<div class='clearfix text-center'>
- <p class="display-5">
+<div class='text-center mb-3'>
<% if params[:oauth_return_url] %>
<a class="btn btn-primary" href="<%= params[:oauth_return_url] %>"><%= t ".continue_authorization" %></a>
<% else %>
- <a class="button btn btn-primary start-mapping" href="<%= edit_path %>"><%= t ".start_mapping" %></a>
+ <a class="btn btn-primary start-mapping" href="<%= edit_path %>"><%= t ".start_mapping" %></a>
<% end %>
- </p>
</div>
<div class='alert alert-primary'>
<span class="badge bg-<%= badge_class %> text-white"><%= t(".#{trace.visibility}") %></span>
</li>
</ul>
- <p class="text-muted mb-0">
+ <p class="text-body-secondary mb-0">
<% if trace.tags.empty? %>
<%= t ".details_without_tags_html", :time_ago => friendly_date_ago(trace.timestamp),
:user => link_to(trace.user.display_name, trace.user) %>
<% content_for :heading do %>
<% if @client_app_name %>
- <p class="text-center text-muted fs-6 py-2 mb-0 bg-body"><%= t(".signup_to_authorize_html", :client_app_name => @client_app_name) %></p>
+ <p class="text-center text-body-secondary fs-6 py-2 mb-0 bg-body"><%= t(".signup_to_authorize_html", :client_app_name => @client_app_name) %></p>
<% end %>
<div class="header-illustration new-user-main auth-container mx-auto">
- <ul class="nav nav-tabs position-absolute bottom-0 px-3 fs-6 w-100">
+ <ul class="nav nav-tabs position-absolute bottom-0 fs-6 w-100">
<li class="nav-item">
- <%= link_to t("sessions.new.tab_title"), url_for(:action => :new, :controller => :sessions), :class => "nav-link" %>
+ <%= link_to t("sessions.new.tab_title"), url_for(:action => :new, :controller => :sessions, :referer => @referer), :class => "nav-link" %>
</li>
<li class="nav-item">
<%= link_to t("users.new.tab_title"), "#", :class => "nav-link active" %>
<div class="auth-container mx-auto my-0">
<% if current_user.auth_uid.nil? %>
- <div class="text-muted fs-6">
+ <div class="text-body-secondary fs-6">
<p><strong><%= t ".about.header" %></strong> <%= t ".about.paragraph_1" %></p>
<p><%= t ".about.paragraph_2" %></p>
</div>
<% unless @preferred_auth_provider.nil? %>
<%= render :partial => "auth_providers" %>
- <div class="d-flex justify-content-center align-items-center">
+ <div class="d-flex justify-content-center align-items-center mb-2">
<div class="border-bottom border-1 flex-grow-1"></div>
<div class="text-secondary mx-3"><%= t ".or" %></div>
<div class="border-bottom border-1 flex-grow-1"></div>
t(".privacy_policy_url"),
:title => t(".privacy_policy_title"),
:target => :new)),
+ :autofocus => true,
:tabindex => 1 %>
<% else %>
<%= f.hidden_field :email %>
</div>
<% end %>
- <p class="mb-3 text-muted fs-6"><%= t(".by_signing_up_html",
- :tou_link => link_to(t("layouts.tou"),
- "https://wiki.osmfoundation.org/wiki/Terms_of_Use",
- :target => :new),
- :privacy_policy_link => link_to(t(".privacy_policy"),
- t(".privacy_policy_url"),
- :title => t(".privacy_policy_title"),
- :target => :new),
- :contributor_terms_link => link_to(t(".contributor_terms"),
- t(".contributor_terms_url"),
- :target => :new)) %></p>
+ <p class="mb-3 text-body-secondary fs-6"><%= t(".by_signing_up_html",
+ :tou_link => link_to(t("layouts.tou"),
+ "https://wiki.osmfoundation.org/wiki/Terms_of_Use",
+ :target => :new),
+ :privacy_policy_link => link_to(t(".privacy_policy"),
+ t(".privacy_policy_url"),
+ :title => t(".privacy_policy_title"),
+ :target => :new),
+ :contributor_terms_link => link_to(t(".contributor_terms"),
+ t(".contributor_terms_url"),
+ :target => :new)) %></p>
<%= f.form_group do %>
<%= f.check_box :consider_pd,
:tabindex => 5,
<span class='badge count-number'><%= number_with_delimiter(current_user.changesets.size) %></span>
</li>
<li>
- <%= link_to t(".my notes"), user_notes_path(@user) %>
+ <%= link_to t(".my notes"), user_notes_path(current_user) %>
+ <span class='badge count-number'><%= number_with_delimiter(current_user.note_comments.size) %></span>
</li>
<li>
<%= link_to t(".my traces"), :controller => "traces", :action => "mine" %>
</li>
<li>
<%= link_to t(".my comments"), diary_comments_path(current_user) %>
+ <span class='badge count-number'><%= number_with_delimiter(current_user.diary_comments.size) %></span>
</li>
<li>
<%= link_to t(".my settings"), edit_account_path %>
</li>
<li>
<%= link_to t(".notes"), user_notes_path(@user) %>
+ <span class='badge count-number'><%= number_with_delimiter(@user.note_comments.size) %></span>
</li>
<li>
<%= link_to t(".traces"), :controller => "traces", :action => "index", :display_name => @user.display_name %>
</li>
<li>
<%= link_to t(".comments"), diary_comments_path(@user) %>
+ <span class='badge count-number'><%= number_with_delimiter(@user.diary_comments.size) %></span>
</li>
<li>
<% if current_user and current_user.friends_with?(@user) %>
</nav>
<% end %>
- <div class='text-muted'>
+ <div class='text-body-secondary'>
<small>
<dl class="list-inline">
<dt class="list-inline-item m-0"><%= t ".mapper since" %></dt>
<dd class="list-inline-item"><%= l @user.created_at.to_date, :format => :long %></dd>
+ <dt class="list-inline-item m-0"><%= t ".last map edit" %></dt>
+ <dd class="list-inline-item"><%= l @user.changesets.first&.created_at&.to_date, :format => :long, :default => t(".no activity yet") %></dd>
<% unless @user.terms_agreed %>
<dt class="list-inline-item m-0"><%= t ".ct status" %></dt>
<dd class="list-inline-item">
<% end %>
<% if current_user and current_user.administrator? -%>
- <div class='text-muted'>
+ <div class='text-body-secondary'>
<small>
<dl class="list-inline">
<dt class="list-inline-item m-0"><%= t ".email address" %></dt>
<%= form_tag({ :action => "save" }) do %>
<!-- legale is <%= @legale %> -->
- <p class="text-muted"><%= t ".read and accept with tou" %></p>
+ <p class="text-body-secondary"><%= t ".read and accept with tou" %></p>
<h4>
<%= t ".heading_ct" %>
</h4>
- <p class="text-muted"><%= t ".contributor_terms_explain" %></p>
+ <p class="text-body-secondary"><%= t ".contributor_terms_explain" %></p>
<label class="form-label">
<%= t ".legale_select" %>
</label>
</div>
<div>
- <p id="contributorGuidance" class="text-muted">
+ <p id="contributorGuidance" class="text-body-secondary">
<%= t ".guidance_info_html",
:readable_summary_link => link_to(t(".readable_summary"),
"https://www.osmfoundation.org/wiki/License/Contributor_Terms_Summary"),
<h4>
<%= t "layouts.tou" %>
</h4>
- <p class="text-muted"><%= t ".tou_explain_html", :tou_link => link_to(t("layouts.tou"), "https://wiki.osmfoundation.org/wiki/Terms_of_Use", :target => :new) %></p>
+ <p class="text-body-secondary"><%= t ".tou_explain_html", :tou_link => link_to(t("layouts.tou"), "https://wiki.osmfoundation.org/wiki/Terms_of_Use", :target => :new) %></p>
<div class="mb-3">
<div class="form-check">
- [banners/donate_2023_1@2x.jpg, 2x]
dark: true
enddate: 2023-dec-31
-sotmeu_2023:
- id: sotmeu_2023
- alt: State of the Map Europe 2023
- link: https://stateofthemap.eu/
- img: banners/StateoftheMapEurope_2023.png
- startdate: 2023-oct-05
- enddate: 2023-nov-05
+sotmeu_2024:
+ id: sotmeu_2024
+ alt: State of the Map Europe 2024
+ link: https://tobilet.pl/state-of-the-map-europe-2024.html
+ img: banners/StateoftheMapEurope_2024.png
+ enddate: 2024-jul-18
sotmasia_2023:
id: sotmasia_2023
alt: State of the Map Asia x Foss4G Thailand 2023
if e.is_a?(Timeout::Error) || e.is_a?(OSM::APITimeoutError)
e
else
- super(e, sql)
+ super
end
end
end
# See the Securing Rails Applications Guide for more information:
# https://guides.rubyonrails.org/security.html#content-security-policy-header
-# Rails.application.configure do
-# config.content_security_policy do |policy|
-# policy.default_src :self, :https
-# policy.font_src :self, :https, :data
-# policy.img_src :self, :https, :data
-# policy.object_src :none
-# policy.script_src :self, :https
-# policy.style_src :self, :https
-# # Specify URI for violation reports
-# # policy.report_uri "/csp-violation-report-endpoint"
-# end
-#
-# # Generate session nonces for permitted importmap, inline scripts, and inline styles.
-# config.content_security_policy_nonce_generator = ->(request) { request.session.id.to_s }
-# config.content_security_policy_nonce_directives = %w(script-src style-src)
-#
-# # Report violations without enforcing the policy.
-# # config.content_security_policy_report_only = true
-# end
+Rails.application.configure do
+ connect_src = [:self]
+ img_src = [:self, :data, "www.gravatar.com", "*.wp.com", "tile.openstreetmap.org", "gps.tile.openstreetmap.org", "*.tile.thunderforest.com", "tile.tracestrack.com", "*.openstreetmap.fr"]
+ script_src = [:self]
+
+ connect_src << Settings.matomo["location"] if defined?(Settings.matomo)
+ img_src << Settings.matomo["location"] if defined?(Settings.matomo)
+ script_src << Settings.matomo["location"] if defined?(Settings.matomo)
+
+ img_src << Settings.avatar_storage_url if Settings.key?(:avatar_storage_url)
+ img_src << Settings.trace_image_storage_url if Settings.key?(:trace_image_storage_url)
+
+ config.content_security_policy do |policy|
+ policy.default_src :self
+ policy.child_src(:self)
+ policy.connect_src(*connect_src)
+ policy.font_src(:none)
+ policy.form_action(:self)
+ policy.frame_ancestors(:self)
+ policy.frame_src(:self)
+ policy.img_src(*img_src)
+ policy.manifest_src(:self)
+ policy.media_src(:none)
+ policy.object_src(:self)
+ policy.plugin_types
+ policy.script_src(*script_src)
+ policy.style_src(:self)
+ policy.worker_src(:none)
+ policy.manifest_src(:self)
+ policy.report_uri(Settings.csp_report_url) if Settings.key?(:csp_report_url)
+ end
+
+ # Generate session nonces for permitted importmap and inline scripts
+ config.content_security_policy_nonce_generator = ->(_request) { SecureRandom.base64(24) }
+ config.content_security_policy_nonce_directives = %w[style-src]
+
+ # Report violations without enforcing the policy.
+ config.content_security_policy_report_only = true unless Settings.csp_enforce
+end
module OpenStreetMap
class Cors < Rack::Cors
def call(env)
- status, headers, body = super(env)
+ status, headers, body = super
headers["Cache-Control"] = "no-cache" if headers["Access-Control-Allow-Origin"]
[status, headers, body]
end
def store_translations(locale, data, options = {})
locale = ::I18n::Locale::Tag::Rfc4646.tag(locale).to_s
- super(locale, data, options)
+ super
end
end
def perform(mailer, mail_method, delivery_method, *args, **kwargs)
kwargs = args.pop if kwargs.empty? && args.last.is_a?(Hash)
- super(mailer, mail_method, delivery_method, *args, **kwargs)
+ super
end
end
end
status = options.delete(:status) || :ok
head status, options
else
- super(options)
+ super
end
end
end
end
- super(controller)
+ super
end
end
end
module Router
module ForceEncoding
def normalize_path(path)
- super(path).force_encoding("UTF-8")
+ super.force_encoding("UTF-8")
end
end
end
class RtlcssSCSSProcessor < SassC::Rails::ScssTemplate
def self.call(input)
- output = super(input)
+ output = super
data = Rtlcss.flip_css(output[:data])
output.delete(:map)
output.merge(:data => data)
+++ /dev/null
-csp_policy = {
- :preserve_schemes => true,
- :default_src => %w['self'],
- :child_src => %w['self'],
- :connect_src => %w['self'],
- :font_src => %w['none'],
- :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 tile.tracestrack.com *.openstreetmap.fr],
- :manifest_src => %w['self'],
- :media_src => %w['none'],
- :object_src => %w['self'],
- :plugin_types => %w[],
- :script_src => %w['self'],
- :style_src => %w['self'],
- :worker_src => %w['none'],
- :report_uri => []
-}
-
-csp_policy[:connect_src] << Settings.matomo["location"] if defined?(Settings.matomo)
-csp_policy[:img_src] << Settings.matomo["location"] if defined?(Settings.matomo)
-csp_policy[:script_src] << Settings.matomo["location"] if defined?(Settings.matomo)
-
-csp_policy[:img_src] << Settings.avatar_storage_url if Settings.key?(:avatar_storage_url)
-csp_policy[:img_src] << Settings.trace_image_storage_url if Settings.key?(:trace_image_storage_url)
-
-csp_policy[:report_uri] << Settings.csp_report_url if Settings.key?(:csp_report_url)
-
-cookie_policy = {
- :httponly => { :only => %w[_osm_session _osm_totp_token] }
-}
-
-SecureHeaders::Configuration.default do |config|
- config.hsts = SecureHeaders::OPT_OUT
- config.referrer_policy = "strict-origin-when-cross-origin"
-
- if Settings.csp_enforce
- config.csp = csp_policy
- config.csp_report_only = SecureHeaders::OPT_OUT
- elsif Settings.key?(:csp_report_url)
- config.csp = SecureHeaders::OPT_OUT
- config.csp_report_only = csp_policy
- else
- config.csp = SecureHeaders::OPT_OUT
- config.csp_report_only = SecureHeaders::OPT_OUT
- end
-
- config.cookies = cookie_policy
-end
# Be sure to restart your server when you modify this file.
if Settings.key?(:memcache_servers)
- Rails.application.config.session_store :mem_cache_store, :memcache_server => Settings.memcache_servers, :namespace => "rails:session", :key => "_osm_session"
+ Rails.application.config.session_store :mem_cache_store, :memcache_server => Settings.memcache_servers, :namespace => "rails:session", :key => "_osm_session", :same_site => :lax
else
- Rails.application.config.session_store :cache_store, :key => "_osm_session", :cache => ActiveSupport::Cache::MemoryStore.new
+ Rails.application.config.session_store :cache_store, :key => "_osm_session", :cache => ActiveSupport::Cache::MemoryStore.new, :same_site => :lax
end
join_discussion: Meld aan en gesels saam
still_open: Wysigingstel is steeds oop - bespreking sal oopmaak sodra die wysigingstel
gesluit is.
+ subscribe: Skryf in
+ unsubscribe: Kanselleer subskripsie
+ hide_comment: versteek
+ unhide_comment: bring weer aan die lig
+ comment: Reageer
changesetxml: Wysigingstel XML
osmchangexml: osmWysiging XML
paging_nav:
all:
title: OpenStreetMap-dagboekinskrywings
description: Onlangse dagboekinskrywings van OpenStreetMap-gebruikers
- comments:
+ diary_comments:
+ index:
no_comments: Geen dagboekkommentaar
post: Inskrywing
when: Wanneer
credit_title_html: Hoe om na OpenStreetMap te verwys
contributors_title_html: Ons bydraers
infringement_title_html: Kopieregoortreding
- index:
- permalink: Perma-skakel
- shortlink: Kortskakel
- createnote: Voeg 'n nota by
edit:
user_page_link: gebruikersbladsy
anon_edits_link_text: Lees waarom dit so is.
map_data_zoom_in_tooltip: Zoem in om kaartdata te sien
queryfeature_tooltip: Soek bakens op
queryfeature_disabled_tooltip: Zoem in om bakens te zoek
- changesets:
- show:
- comment: Reageer
- subscribe: Skryf in
- unsubscribe: Kanselleer subskripsie
- hide_comment: versteek
- unhide_comment: bring weer aan die lig
directions:
engines:
fossgis_osrm_car: Kar (OSRM)
all:
title: hyra OpenStreetMap ditar
description: Shënimet mat fundit të ditarit nga anëtarët e OpenStreetMap
- comments:
+ diary_comments:
+ index:
comment: Koment
friendships:
make_friend:
js_1: Ju jeni duke përdorur ndonjë shfletues që nuk e përkrah JavaScript, ose
i keni çativizuar JavaScript.
js_2: OpenStreetMap përdor Java skriptet për planet e saj të rrëshqitshëm.
- permalink: Permalink
- shortlink: Shortlink
edit:
not_public: Ju nuk keni vendosur redaktimet e juaj të jetë publike.
not_public_description_html: Ju nuk mund të redaktoni hartën e nëse ju një gjë
join_discussion: ادخل للاشتراك في المناقشة
still_open: ما زالت مجموعة التغييرات مفتوحة - سيتم فتح المناقشة بمجرد إغلاق
مجموعة التغييرات.
+ subscribe: اشترك
+ unsubscribe: إلغاء الاشتراك
comment_by_html: تعليق من %{user}%{time_ago}
hidden_comment_by_html: تعليق مخفي من%{time_ago} %{user}
+ hide_comment: إخفاء
+ unhide_comment: أظهر
+ comment: التعليق
changesetxml: حزمة التغييرات XML
osmchangexml: osmChange XML
paging_nav:
all:
title: مدخلات اليومية في خريطة الشارع المفتوحة
description: المدخلات الحديثة في يومية مستخدمي خريطة الشارع المفتوحة
- comments:
+ subscribe:
+ heading: اشترك في مناقشة مدونة الدخول التالية؟
+ button: الاشتراك في المناقشة
+ unsubscribe:
+ heading: إلغاء الاشتراك في مناقشة إدخال اليوميات التالية؟
+ button: إلغاء الاشتراك من المناقشة
+ diary_comments:
+ index:
title: تمت إضافة تعليقات اليوميات بواسطة %{user}
heading: تعليقات يوميات %{user}
subheading_html: تمت إضافة تعليقات اليوميات بواسطة %{user}
comment: التعليق
newer_comments: التعليقات الأحدث
older_comments: التعليقات الأقدم
- subscribe:
- heading: اشترك في مناقشة مدونة الدخول التالية؟
- button: الاشتراك في المناقشة
- unsubscribe:
- heading: إلغاء الاشتراك في مناقشة إدخال اليوميات التالية؟
- button: إلغاء الاشتراك من المناقشة
doorkeeper:
errors:
messages:
index:
js_1: إما أنك تستخدم متصفحا لا يدعم جافا سكريبت، أو أنك عطلت استعمال جافا سكريبت.
js_2: خريطة الشارع المفتوحة تستخدم جافا سكريبت لخريطتها المنزلقة.
- permalink: وصلة دائمة
- shortlink: وصلة قصيرة
- createnote: أضف ملاحظة
license:
copyright: حقوق طبع ونشر ومساهمو خريطة الشارع المفتوحة، تحت رخصة مفتوحة
remote_failed: فشل التعديل - تأكد من تحميل JOSM أو Merkaartor وتمكين خيار التحكم
map_data_zoom_in_tooltip: تكبير الخريطة لرؤية بيانات الخريطة
queryfeature_tooltip: ميزات الاستعلام
queryfeature_disabled_tooltip: ميزات تكبير الاستعلام
- changesets:
- show:
- comment: التعليق
- subscribe: اشترك
- unsubscribe: إلغاء الاشتراك
- hide_comment: إخفاء
- unhide_comment: أظهر
edit_help: انقل الخريطة وكبر الموقع الذي تريد تحريره، ثم اضغط هنا.
directions:
ascend: رفع
index:
js_1: أنت إما تستخدم متصفح لا يدعم جافا سكريبت، أو أنك عطلت استعمال جافا سكريبت.
js_2: خريطه الشارع المفتوحه تستخدم جافا سكريبت لخريطتها المنزلقه.
- permalink: وصله دائمة
- shortlink: وصله قصيرة
edit:
not_public: لم تقم بتعيين تعديلاتك لتظهر بشكل علنى.
not_public_description_html: أنت لم تعد قادر على تعديل الخريطه إلا إذا قمت بذلك.
join_discussion: Anicia sesión pa xunite al alderique
still_open: El conxuntu de cambios inda ta abiertu; l'alderique abriráse en
zarrando'l conxuntu de cambios.
+ subscribe: Suscribite
+ unsubscribe: Date de baxa
+ hide_comment: anubrir
+ unhide_comment: amosar
+ comment: Comentar
changesetxml: Conxuntu de cambeos XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Entraes nel diariu d'OpenStreetMap
description: Entraes recién nel diariu d'usuarios d'OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Publicar
when: Cuándo
comment: Comentariu
js_1: O tas usando un restolador ensin sofitu pa JavaScript, o tienes JavaScript
desactiváu.
js_2: OpenStreetMap usa JavaScript pal so mapa eslizante.
- permalink: Enllaz permanente
- shortlink: Enllaz curtiu
- createnote: Amestar una nota
license:
copyright: Copyright OpenStreetMap y collaboradores, baxo una llicencia abierta
remote_failed: Falló la edición - asegúrate de tener cargáu JOSM o Merkaartor
map_data_zoom_in_tooltip: Averar pa ver los datos del mapa
queryfeature_tooltip: Consultar entidaes
queryfeature_disabled_tooltip: Averar pa consultar entidaes
- changesets:
- show:
- comment: Comentar
- subscribe: Suscribite
- unsubscribe: Date de baxa
- hide_comment: anubrir
- unhide_comment: amosar
edit_help: Mueve'l mapa y amplía al llugar que quies editar, llueu calca equí.
directions:
ascend: Ascender
all:
title: OpenStreetMap gündəlik yazısı
description: OpenStreetMap istifadəçilərinin axırıncı gündəlik yazıları
- comments:
+ diary_comments:
+ index:
post: Post
when: Nə vaxt
comment: Şərh
more_title_html: Daha ətraflı öyrən
contributors_title_html: Kimlər bizim layihəyə töhfə verir
infringement_title_html: Müəllif hüquqlarının pozulması
- index:
- shortlink: Qısa keçid
edit:
user_page_link: istifadəçi səhifəsi
export:
all:
title: OpenStreetMap көндәлек яҙмаһы
description: OpenStreetMap ҡулланысыларының һуңғы көндәлек яҙмалары
- comments:
+ diary_comments:
+ index:
no_comments: Көндәлектә комментарийҙар юҡ
post: Post
when: Ҡасан
all:
title: Запісы ў дзёньніку OpenStreetMap
description: Апошнія запісы ў дзёньніку карыстальнікаў OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Запіс
friendships:
make_friend:
index:
js_1: Вы карыстаецеся браўзэрам, які не падтрымлівае ці мае забаронены JavaScript.
js_2: OpenStreetMap выкарыстоўвае JavaScript для паказу мапы.
- permalink: Сталая спасылка
- shortlink: Кароткая спасылка
remote_failed: Памылка рэдагаваньня. Упэўніцеся, што JOSM ці Merkaartor загружаныя
і дазволеная магчымасьць аддаленага кіраваньня
edit:
# Exported from translatewiki.net
# Export driver: phpyaml
# Author: Alex73
+# Author: Andoti
# Author: Artsiom91
# Author: Chadyka
# Author: Goshaproject
# Author: Unomano
# Author: ZlyiLev
# Author: Zmicier21
+# Author: Zmickli21
# Author: Дзяніс Тутэйшы
# Author: Тест
# Author: Чаховіч Уладзіслаў
---
be:
+ html:
+ dir: ltr
time:
formats:
friendly: '%e %B %Y у %H:%M'
+ blog: '%e %B %Y'
+ count:
+ at_least_pattern: '%{count}+'
helpers:
file:
prompt: Абраць файл
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: Пакет правак
datetime:
distance_in_words_ago:
about_x_hours:
- one: прыкладна 1 гадзіну таму
+ one: прыкладна %{count} гадзіну таму
few: прыкладна %{count} гадзіны таму
many: прыкладна %{count} гадзін таму
other: прыкладна %{count} гадзін(ы) таму
about_x_months:
- one: прыкладна 1 месяц таму
+ one: прыкладна %{count} месяц таму
few: прыкладна %{count} месяцы таму
many: прыкладна %{count} месяцаў таму
other: прыкладна %{count} месяцы(аў) таму
about_x_years:
- one: прыкладна 1 год таму
+ one: прыкладна %{count} год таму
few: прыкладна %{count} гады таму
many: прыкладна %{count} гадоў таму
other: прыкладна %{count} гады(оў) таму
almost_x_years:
- one: амаль 1 год таму
+ one: амаль %{count} год таму
few: амаль %{count} гады таму
many: амаль %{count} гадоў таму
other: амаль %{count} гады(оў) таму
half_a_minute: паўхвіліны таму
less_than_x_seconds:
- one: менш за секунду таму
+ one: менш за %{count} секунду таму
few: менш за %{count} секунды таму
many: менш за %{count} секунд таму
other: менш за %{count} секунд(ы) таму
less_than_x_minutes:
- one: менш за хвіліну таму
+ one: менш за %{count} хвіліну таму
few: менш за %{count} хвіліны таму
many: менш за %{count} хвілін таму
other: менш за %{count} хвілін(ы) таму
over_x_years:
- one: больш за год таму
+ one: больш за %{count} год таму
few: больш за %{count} гады таму
many: больш за %{count} гадоў таму
other: больш за %{count} гады(оў) таму
x_seconds:
- one: 1 секунду таму
+ one: '%{count} секунду таму'
few: '%{count} секунды таму'
many: '%{count} секунд таму'
other: '%{count} секунд(ы) таму'
x_minutes:
- one: 1 хвіліну таму
+ one: '%{count} хвіліну таму'
few: '%{count} хвіліны таму'
many: '%{count} хвілін таму'
other: '%{count} хвілін(ы) таму'
x_days:
- one: 1 дзень таму
+ one: '%{count} дзень таму'
few: '%{count} дні таму'
many: '%{count} дзён таму'
other: '%{count} дзён таму'
x_months:
- one: 1 месяц таму
+ one: '%{count} месяц таму'
few: '%{count} месяцы таму'
many: '%{count} месяцаў таму'
other: '%{count} месяцы(аў) таму'
x_years:
- one: 1 год таму
+ one: '%{count} год таму'
few: '%{count} гады таму'
many: '%{count} гадоў таму'
other: '%{count} гады(оў) таму'
+ printable_name:
+ with_name_html: '%{name} (%{id})'
+ current_and_old_links_html: '%{current_link}, %{old_link}'
editor:
default: Тыповы (зараз %{name})
id:
description: iD (браўзэрны рэдактар)
remote:
name: Вонкавы рэдактар
- description: вонкавага Ñ\80Ñ\8dдакÑ\82аÑ\80а (JOSM або Merkaartor)
+ description: Ð\94Ñ\8bÑ\81Ñ\82анÑ\86Ñ\8bйнае кÑ\96Ñ\80аванне (JOSM, Potlatch, Merkaartor)
auth:
providers:
none: Няма
google: Google
facebook: Facebook
+ microsoft: Microsoft
github: GitHub
wikipedia: Вікіпедыя
api:
reopened_at_by_html: Пераадкрыта %{when} удзельнікам %{user}
rss:
title: Заўвагі OpenStreetMap
+ description_all: Спіс створаных, пракаментаваных або закрытых нататак
description_area: Спіс заўваг створаных, пракаментаваных ці вырашаных у вашым
рэгіёне [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})]
description_item: RSS-стужка заўваг %{id}
current email address: Бягучы адрас электроннай пошты
external auth: Знешняя Аўтэнтыфікацыя
openid:
+ link: http://wiki.openstreetmap.org/wiki/OpenID
link text: што гэта?
public editing:
heading: Агульнае рэдагаванне
enabled: Уключана. Вы - не ананімны і можаце рэдагаваць дадзеныя.
+ enabled link: http://wiki.openstreetmap.org/wiki/Disabling_anonymous_edits
enabled link text: што гэта?
disabled: Адключана. Вы не можаце больш рэдагаваць, але ўсе ранейшыя змены
ананімныя.
каб разгледзець і прыняць новыя ўмовы ўдзелу.
agreed_with_pd: Вы таксама заявілі, што лічыце, што змены павінны знаходзіцца
ў агульнай уласнасці.
+ link: https://www.osmfoundation.org/wiki/License/Contributor_Terms
link text: што гэта?
save changes button: Запісаць змены
delete_account: Выдаліць уліковы запіс...
go_public:
heading: Публічнае рэдагаванне
+ currently_not_public: " \nУ дадзены момант вашыя праўкі ананімныя, і людзі не
+ могуць адпраўляць вам паведамленні або бачыць вашае месцазнаходжанне. Каб
+ паказаць тое, што вы рэдагавалі, і дазволіць людзям звязацца з вамі праз вэб-сайт,
+ націсніце кнопку ніжэй."
+ only_public_can_edit: Пасля пераходу на API 0.6 толькі публічныя карыстальнікі
+ могуць рэдагаваць даныя мапы.
+ find_out_why_html: (%{link}).
+ find_out_why: даведацца, чаму
+ find_out_why_url: https://wiki.openstreetmap.org/wiki/Anonymous_edits
+ email_not_revealed: Ваш адрас электроннай пошты не будзе раскрыты, калі стане
+ публічным.
+ not_reversible: Гэта дзеянне нельга адмяніць, і ўсе новыя карыстальнікі цяпер
+ агульнадаступныя па змаўчанні.
make_edits_public_button: Зрабіць усе мае змены публічнымі
update:
success_confirm_needed: Звесткі аб карыстальніку паспяхова абноўленыя. Праверце
anonymous: ананімны
no_comment: (без каментароў)
part_of: Частка
+ part_of_relations:
+ one: '%{count} адносіны'
+ few: '%{count} адносін '
+ many: '%{count} адносін'
+ other: '%{count} адносін'
+ part_of_ways:
+ one: '%{count} шлях'
+ few: '%{count} шляхі'
+ many: '%{count} шляхоў'
+ other: '%{count} шляхі(-оў)'
download_xml: Спампаваць XML
view_history: Прагляд гісторыі
view_unredacted_history: Прагляд неадрэдагаванай гісторыі
view_redacted_data: Прагляд адрэдагаваных даных
view_redaction_message: Прагляд паведамлення аб рэдагаванні
location: 'Месца:'
+ common_details:
+ coordinates_html: '%{latitude}; %{longitude}'
node:
title_html: 'Пункт: %{name}'
history_title_html: 'Гісторыя пункта: %{name}'
title_html: 'Лінія: %{name}'
history_title_html: 'Гісторыя лініі: %{name}'
nodes: Пункты
+ nodes_count:
+ one: '%{count} пункт'
+ few: '%{count} пункты'
+ many: '%{count} пунктаў'
+ other: '%{count} пункты(-аў)'
also_part_of_html:
one: частка лініі %{related_ways}
other: частка ліній %{related_ways}
title_html: 'Дачыненне: %{name}'
history_title_html: 'Гісторыя дачынення: %{name}'
members: Удзельнікі
+ members_count:
+ one: |-
+ …
+ %{count} чалец
+ few: '%{count} чальцы'
+ many: '%{count} чальцоў'
+ other: '%{count} чальцы(-оў)'
relation_member:
+ entry_html: '%{type} %{name}'
entry_role_html: '%{type} %{name} як %{role}'
type:
node: Пункт
introduction: Націсніце на карце, каб атрымаць звесткі пра аб’екты паблізу.
nearby: Аб’екты паблізу
enclosing: Навакольныя аб'екты
+ old_nodes:
+ not_found:
+ sorry: На жаль, пункт №%{id} версіі %{version} не знойдзены.
+ old_ways:
+ not_found:
+ sorry: На жаль, шлях №%{id} версіі %{version} не знойдзены.
+ old_relations:
+ not_found:
+ sorry: На жаль, адносіны №%{id} версіі %{version} не знойдзены.
changesets:
changeset_paging_nav:
showing_page: Старонка %{page}
button: Адпісацца ад абмеркавання
heading:
title: Набор змен %{id}
+ created_by_html: Створана %{link_user} %{created}.
+ no_such_entry:
+ title: Няма такіх змяненняў
+ heading: 'Няма запісу з нумарам: %{id}'
+ body: На жаль, няма змяненняў з нумарам %{id}. Калі ласка, праверце, ці карэктна
+ уведзены нумар, або магчыма вам далі няслушную спасылку.
show:
title: 'Набор змен: %{id}'
created: 'Створана: %{when}'
+ closed: 'Закрыта: %{when}'
+ created_ago_html: Створана %{time_ago}
+ closed_ago_html: Закрыта %{time_ago}
+ created_ago_by_html: Створана %{time_ago} удзельнікам %{user}
+ closed_ago_by_html: Закрыта %{time_ago} карыстальнікам %{user}
discussion: Абмеркаванне
join_discussion: Увайдзіце ў сістэму, каб далучыцца да абмеркавання
still_open: Пакет правак яшчэ адкрыты. Абмеркаванне стане даступным, як толькі
пакет правак закрыецца.
+ subscribe: Падпісацца
+ unsubscribe: Адпісацца
+ comment_by_html: Пракаментавана карыстальнікам %{user} %{time_ago} таму
+ hidden_comment_by_html: Схаваны каментар ад %{user} %{time_ago} таму
+ hide_comment: схаваць
+ unhide_comment: паказаць
+ comment: Каментаваць
changesetxml: XML пакета правак
osmchangexml: osmChange XML
paging_nav:
friend: Сябар
show:
title: Мая панэль
+ no_home_location_html: '%{edit_profile_link} і ўсталюйце вашае месцазнаходжанне,
+ каб бачыць карыстальнікаў паблізу.'
edit_your_profile: Адрэдагуйце свой профіль
my friends: Мае сябры
no friends: Вы пакуль не дадалі нікога ў сябры.
title: Новы запіс дзённіку
form:
location: Месца
- use_map_link: каÑ\80Ñ\8bÑ\81Ñ\82аÑ\86Ñ\86а каÑ\80Ñ\82ай
+ use_map_link: Ð\9aаÑ\80Ñ\8bÑ\81Ñ\82аÑ\86Ñ\86а мапай
index:
title: Дзённікі карыстальнікаў
title_friends: Дзённікі сяброў
title: Дзённік карыстальніка %{user} | %{title}
user_title: Дзённік карыстальніка %{user}
discussion: Абмеркаванне
+ subscribe: Падпісацца
+ unsubscribe: Адпісацца
leave_a_comment: Пакінуць каментар
login_to_leave_a_comment_html: '%{login_link} каб пакінуць каментар'
login: Увайсці
body: Прабачце, не існуе запісу ў дзённіку ці каментара з нумарам %{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: Адказаць на гэты запіс
comment_count:
- one: 1 каментар
- zero: Каментароў няма
- other: 'Каментароў: %{count}'
+ one: '%{count} каментар'
+ few: '%{count} каментары'
+ many: '%{count} каментароў'
+ other: '%{count} каментары(-оў)'
no_comments: Няма каментароў
edit_link: Правіць гэты запіс
hide_link: Схаваць гэты запіс
location: 'Месца:'
view: Прагляд
edit: Правіць
+ coordinates: '%{latitude}; %{longitude}'
feed:
user:
title: Запісы ў дзённіку OpenStreetMap карыстальніка %{user}
all:
title: Дзеннікавыя запісы OpenStreetMap
description: Свежыя дзеннікавыя запісы карыстальнікаў OpenStreetMap
- comments:
+ subscribe:
+ heading: Падпісацца на абмеркаванне наступнага запісу ў дзённіку?
+ button: Падпісацца на абмеркаванне
+ unsubscribe:
+ heading: Адпісацца ад абмеркавання наступнага запісу ў дзённіку?
+ button: Адпісацца ад абмеркавання
+ diary_comments:
+ index:
+ title: Каментары да запісаў у дзённіку, дадазеныя карыстальнікам %{user}
+ heading: Каментары да запісаў у дзённіку карыстальніка %{user}
+ subheading_html: Каментары да запісаў у дзённіку, дадазеныя карыстальнікам %{user}
no_comments: Няма каментароў у дзённіку
post: Апублікаваць
when: Калі
comment: Каментар
newer_comments: Навейшыя каментары
older_comments: Старэйшыя каментары
+ doorkeeper:
+ errors:
+ messages:
+ account_selection_required: Сервер аўтарызацыі патрабуе выбару ўліковага запісу
+ канчатковага карыстальніка
+ consent_required: Сервер аўтарызацыі патрабуе згоды канчатковага карыстальніка
+ interaction_required: Сервер аўтарызацыі патрабуе ўзаемадзеяння з канчатковым
+ карыстальнікам
+ login_required: Сервер аўтарызацыі патрабуе аўтэнтыфікацыі канчатковага карыстальніка
+ flash:
+ applications:
+ create:
+ notice: Прыкладанне зарэгістраванае.
+ openid_connect:
+ errors:
+ messages:
+ auth_time_from_resource_owner_not_configured: Памылка праз адсутнасць канфігурацыі
+ з Doorkeeper::OpenidConnect.configure.auth_time_from_resource_owner.
+ reauthenticate_resource_owner_not_configured: Памылка праз адсутнасць канфігурацыі
+ з Doorkeeper::OpenidConnect.configure.reauthenticate_resource_owner.
+ resource_owner_from_access_token_not_configured: Памылка праз адсутнасць
+ канфігурацыі з Doorkeeper::OpenidConnect.configure.resource_owner_from_access_token.
+ select_account_for_resource_owner_not_configured: Памылка праз адсутнасць
+ канфігурацыі з Doorkeeper::OpenidConnect.configure.select_account_for_resource_owner.
+ subject_not_configured: Збой генерацыі ID Token з-за адсутнасці канфігурацыі
+ Doorkeeper::OpenidConnect.configure.subject.
+ scopes:
+ address: Праглядзіце свой фізічны адрас
+ email: Увядзіце ваш адрас электроннай пошты
+ openid: Аўтэнтыфікуйце свой уліковы запіс
+ phone: Праглядзець ваш нумар тэлефона
+ profile: Праглядзець інфармацыю вашага профілю
+ errors:
+ contact:
+ contact_url: https://wiki.openstreetmap.org/wiki/Contact
+ contact_url_title: Тлумачэнне розных каналаў сувязі
+ contact: звяртацца
+ contact_the_community_html: Не саромейцеся %{contact_link} да супольнасці OpenStreetMap,
+ калі вы знайшлі непрацуючую спасылку / памылку. Запішыце дакладны URL вашага
+ запыту.
+ bad_request:
+ title: Памылковы запыт
+ description: Запытаная вамі аперацыя на серверы OpenStreetMap несапраўдная
+ (HTTP 400)
+ forbidden:
+ title: Доступ забаронены
+ description: Запытаная вамі аперацыя на серверы OpenStreetMap даступная толькі
+ адміністратарам (HTTP 403)
+ internal_server_error:
+ title: Памылка праграмы
+ description: Сервер OpenStreetMap сутыкнуўся з нечаканай сітуацыяй, якая перашкодзіла
+ яму выканаць запыт (HTTP 500)
+ not_found:
+ title: Файл не знойдзены
+ description: Не ўдалося знайсці файл/тэчку/аперацыю API з такім імем на серверы
+ OpenStreetMap (HTTP 404)
friendships:
make_friend:
heading: Пасябраваць з %{user}?
success: '%{name} пасябраваў з вамі.'
failed: Прабачце, немагчыма пасябраваць з %{name}.
already_a_friend: Вы ўжо сябруеце з %{name}.
+ limit_exceeded: Апошнім часам вы пасябравалі з вялікай колькасцю карыстальнікаў.
+ Калі ласка, пачакайце пэўны час, перш чым спрабаваць пасябравацца зноўку.
remove_friend:
heading: Перастаць сябраваць з %{user}?
button: Выдаліць з сяброў
success: '%{name} выдалены са спіса сяброў.'
not_a_friend: '%{name} не з’яўляецца вашым сябрам.'
geocoder:
+ search:
+ title:
+ results_from_html: Вынікі з %{results_link}
+ latlon: Унутраны
+ latlon_url: https://openstreetmap.org/
+ osm_nominatim: OpenStreetMap Nominatim
+ osm_nominatim_url: https://nominatim.openstreetmap.org/
+ osm_nominatim_reverse: OpenStreetMap Nominatim
+ osm_nominatim_reverse_url: https://nominatim.openstreetmap.org/
search_osm_nominatim:
+ prefix_format: '%{name}'
prefix:
aerialway:
cable_car: Лінная дарога
chair_lift: Крэсельны пад'ёмнік
drag_lift: Бугельны пад'ёмнік
gondola: Лінная дарога
+ magic_carpet: Пад’ёмнік дываноў
platter: Бугельны пад'ёмнік
pylon: Апора
station: Станцыя канатнай дарогі
t-bar: Т-вобразны пад'ёмнік
+ "yes": Канатка
aeroway:
aerodrome: Аэрадром
airstrip: Узлётна-пасадачная паласа
- apron: Перон
- gate: Вароты
+ apron: Перон аэрадрома
+ gate: Выхад на пасадку
hangar: Ангар
helipad: Верталётная пляцоўка
holding_position: Месца чакання
+ navigationaid: Авіяцыйная навігацыйная сістэма
parking_position: Месца паркоўкі
runway: Узлётна-пасадачная паласа
+ taxilane: Паласа для таксі
taxiway: Рулёжныя дарожкі
- terminal: Тэрмінал
+ terminal: Тэрмінал аэрапорта
+ windsock: Ветрапаказальнік
amenity:
+ animal_boarding: Інтэрнат для жывёл
animal_shelter: Прытулак для жывёл
arts_centre: Цэнтр мастацтваў
atm: Банкамат
bench: Лаўка
bicycle_parking: Веласіпедная паркоўка
bicycle_rental: Пракат ровараў
+ bicycle_repair_station: Рамонтная станцыя для ровараў
biergarten: Рэстаранны падворак
+ blood_bank: Банк крыві
boat_rental: Пракат лодак
brothel: Бардэль
bureau_de_change: Абмен валют
clock: Гадзіннік
college: Каледж
community_centre: Грамадскі цэнтр
+ conference_centre: Канферэнц-цэнтр
courthouse: Суд
crematorium: Крэматорый
dentist: Стаматолагія
drinking_water: Пітная вада
driving_school: Аўташкола
embassy: Амбасада
+ events_venue: Месца правядзення мерапрыемстваў
fast_food: Фаст-Фуд
ferry_terminal: Паромны тэрмінал
fire_station: Пажарная станцыя
food_court: Фуд-Корт
fountain: Фантан
- fuel: АЗС
+ fuel: Аўтазапраўка
gambling: Азартныя гульні
grave_yard: Могілкі
grit_bin: Кантэйнер з дарожным пасыпаннем
hospital: Бальніца
hunting_stand: Паляўнічая вежа
ice_cream: Марозіва
+ internet_cafe: Інтэрнэт-кафэ
kindergarten: Дзіцячы садок
+ language_school: Моўная школа
library: Бібліятэка
+ loading_dock: Загрузны док
+ love_hotel: Гатэль кахання
marketplace: Рыначная плошча
+ mobile_money_agent: Мабільны грашовы агент
monastery: Кляштар
+ money_transfer: Перавод грошай
motorcycle_parking: Паркоўка для матацыклаў
+ music_school: Музычная школа
nightclub: Начны клуб
nursing_home: Прыватная лякарня
parking: Паркоўка
parking_entrance: Заезд на паркоўку
parking_space: Паркоўка
+ payment_terminal: Плацежны тэрмінал
pharmacy: Аптэка
place_of_worship: Культавы будынак
police: Паліцыя
post_office: Паштовае аддзяленне
prison: Турма
pub: Паб
+ public_bath: Лазня
+ public_bookcase: Кніжны абмен
public_building: Грамадскі будынак
+ ranger_station: Станцыя рэйнджараў
recycling: Пункт перапрацоўкі
restaurant: Рэстаран
+ sanitary_dump_station: Санітарнае сметнішча
school: Школа
shelter: Укрыццё
shower: Душ
theatre: Тэатр
toilets: Прыбіральні
townhall: Ратуша
+ training: Навучальны цэнтр
university: Універсітэт
+ vehicle_inspection: Станцыя тэхагляду
vending_machine: Гандлёвы аўтамат
veterinary: Ветэрынарная хірургія
village_hall: Вясковая зала
waste_basket: Кош для смецця
waste_disposal: Смеццевы бак
+ waste_dump_site: Нелегальная звалка
+ watering_place: Вадапой для жывёл
water_point: Вада
+ weighbridge: Грузавыя вагі
+ "yes": Зручнасць
boundary:
+ aboriginal_lands: Тэрыторыі тубыльцаў
administrative: Адміністрацыйная мяжа
census: Межы перапісу
national_park: Нацыянальны парк
+ political: Электаральная мяжа
protected_area: Абаронены раён
+ "yes": Мяжа
bridge:
aqueduct: Акведук
boardwalk: Тратуар
viaduct: Віядук
"yes": Мост
building:
+ apartment: Кватэра
+ apartments: Кватэры
+ barn: Свіран
+ bungalow: Бунгала
+ cabin: Хаціна
+ chapel: Капліца
+ church: Будынак царквы
+ civic: Грамадзянскі будынак
+ college: Будынак каледжа
+ commercial: Камерцыйны будынак
+ construction: Будынак будуецца
+ detached: Хата
+ dormitory: Інтэрнат
+ duplex: Падзеленая хата
+ farm: Фермерская хата
+ farm_auxiliary: Фермерская прыбудова
+ garage: Гараж
+ garages: Гаражы
+ greenhouse: Шклярніца
+ hangar: Ангар
+ hospital: Будынак бальніцы
+ hotel: Будынак гасцініцы
+ house: Дом
+ houseboat: Плывучы дом
+ hut: Хата
+ industrial: Прамысловы будынак
+ kindergarten: Дзіцячы сад
+ manufacture: Вытворчы будынак
+ office: Офисны будынак
+ public: Грамадскі будынак
+ residential: Жылы будынак
+ retail: Гандлёвы будынак
+ roof: Дах
+ ruins: Рэшткі будынку
+ school: Школа
+ semidetached_house: Двухкватэрная хата
+ service: Службовы будынак
+ shed: Адрына
+ stable: Стайня
+ static_caravan: Мабільны дом
+ temple: Храм
+ terrace: Тэраса
+ train_station: Чыгуначны вакзал
+ university: Универсітэт
+ warehouse: Склад
"yes": Будынак
+ club:
+ scout: База скаўтаў
+ sport: Спартыўны клуб
+ "yes": Клуб
craft:
+ beekeeper: Пчальнік
+ blacksmith: Кузня
brewery: Бровар
carpenter: Цясляр
+ caterer: Пастаўшчык правізіі
+ confectionery: Цукерня
+ dressmaker: Атэлье
electrician: Электрык
+ electronics_repair: Рамонт электронікі
gardener: Садоўнік
+ glaziery: Гута
+ handicraft: Майстэрня
+ hvac: Тэхнічнае памяшканне
+ metal_construction: Майстэрня металаканструкцый
painter: Мастак
photographer: Фатограф
plumber: Сантэхнік
+ roofer: Майстэрня страхара
+ sawmill: Тартак
shoemaker: Шавец
+ stonemason: Мулярня
tailor: Кравец
+ window_construction: Аконная майстэрня
+ winery: Вінакурня
"yes": Майстэрня
emergency:
+ access_point: Пункт доступу
ambulance_station: Станцыя хуткай медыцынскай дапамогі
assembly_point: Месца збору
defibrillator: Дэфібрылятар
+ fire_extinguisher: Вогнетушыльнік
+ fire_water_pond: Пажарны вадаём
landing_site: Месца аварыйнай пасадкі
+ life_ring: Ратавальны круг
phone: Тэлефон экстранай сувязі
+ siren: Аварыйная сірэна
+ suction_point: Пункт рэанімічнай аспірацыі
water_tank: Пажарны вадаём/рэзервуар
highway:
abandoned: Занядбаная дарога
bus_stop: Аўтобусны прыпынак
construction: Будаўніцтва дарогі
corridor: Праход цераз будынак
+ crossing: Пераход
cycleway: Веласіпедная дарожка
elevator: Ліфт
emergency_access_point: Пункт хуткай дапамогі
+ emergency_bay: Аварыйны прыпынак
footway: Сцяжынка
ford: Брод
give_way: Знак "Саступі дарогу"
tertiary: Троесная дарога
tertiary_link: Трэцясная дарога
track: Каляя
+ traffic_mirror: Люстэрка дарожнага руху
traffic_signals: Святлафор
+ trailhead: Пачатак сцежкі
trunk: Шаша
trunk_link: Магістраль
+ turning_circle: Разваротны круг
turning_loop: Разваротнае кальцо
unclassified: Некласіфікаваная дарога
"yes": Дарога
historic:
+ aircraft: Гістарычны самалёт
archaeological_site: Археалагічныя раскопы
+ bomb_crater: Гістарычны кратар ад бомбы
battlefield: Поле бою
boundary_stone: Пагранічны камень
building: Гістарычны будынак
bunker: Бункер
+ cannon: Гістарычная гармата
castle: Замак
+ charcoal_pile: Гістарычная куча драўнянага вугалю
church: Царква
city_gate: Гарадская брама
citywalls: Гарадскія сцены
fort: Форт
heritage: Культурная спадчына
+ hollow_way: Нізінная сцежка
house: Дом
manor: Сядзіба
memorial: Мемарыял
+ milestone: Гістарычная вяха
mine: Шахта
mine_shaft: Шахтавы стаўбур
monument: Помнік
+ railway: Гістарычная чыгунка
roman_road: Рымская дарога
ruins: Руіны
+ rune_stone: Рунічны камень
stone: Камень
tomb: Магіла
tower: Вежа
+ wayside_chapel: Прыдарожная капліца
wayside_cross: Прыдарожны крыж
wayside_shrine: Прыдарожная каплічка
wreck: Месца аварыі
"yes": Перакрыжаванне
landuse:
allotments: Сады-агароды
+ aquaculture: Аквакультура
basin: Вадаём
brownfield: Ачышчанае месца для забудовы
cemetery: Могілкі
commercial: Камерцыйная зона
conservation: Запаведнік
- construction: Ð\91Ñ\83даÑ\9eнÑ\96Ñ\86Ñ\82ва
+ construction: Ð\91Ñ\83даÑ\9eнÑ\96Ñ\87аÑ\8f Ñ\82Ñ\8dÑ\80Ñ\8bÑ\82оÑ\80Ñ\8bÑ\8f
farmland: Сельскагаспадарчыя землі
farmyard: Двор фермы
forest: Лес
military: Ваенная зона
mine: Шахта
orchard: Фруктовы сад
+ plant_nursery: Расаднік
quarry: Кар'ер
railway: Чыгунка
recreation_ground: Пляцоўка для гульняў
+ religious: Рэлігійная тэрыторыя
reservoir: Вадасховішча
reservoir_watershed: Водападзел вадасховішча
residential: Жылы раён
- retail: РознÑ\96Ñ\87нÑ\8b гандалÑ\8c
+ retail: Ð\93андлÑ\91ваÑ\8f Ñ\82Ñ\8dÑ\80Ñ\8bÑ\82оÑ\80Ñ\8bÑ\8f
village_green: Вясковая паляна
vineyard: Вінаграднік
"yes": Землекарыстанне
leisure:
+ adult_gaming_centre: Гульнявы цэнтр для дарослых
+ amusement_arcade: Забаўляльная аркада
+ bandstand: Эстрада
beach_resort: Пляжны курорт
bird_hide: Засада
+ bleachers: Трыбуны
+ bowling_alley: Боўлінг
common: Агульная зямля
+ dance: Танцавальная зала
dog_park: Пляцоўка для сабак
firepit: Кастрышча
fishing: Раён рыбалоўства
fitness_station: Спартыўная пляцоўка
garden: Сад
golf_course: Поле для гольфа
- horse_riding: Ð\92еÑ\80Ñ\85аваÑ\8f Ñ\8fзда
+ horse_riding: ЦÑ\8dнÑ\82Ñ\80 коннай Ñ\8fздÑ\8b
ice_rink: Каток
marina: Гавань для катэраў
miniature_golf: Міні-Гольф
nature_reserve: Запаведнік
+ outdoor_seating: Месцы для сядзення на вольным паветры
park: Парк
+ picnic_table: Стол для пікніка
pitch: Спартыўная пляцоўка
playground: Дзіцячая пляцоўка
recreation_ground: Зона адпачынку
"yes": Забавы
man_made:
adit: Штольня
+ advertising: Рэклама
+ antenna: Антэна
+ avalanche_protection: Абарона ад лавін
beacon: Бакен
+ beam: Бэлька
beehive: Борць
breakwater: Хвалярэз
bridge: Мост
bunker_silo: Бункер
+ cairn: Керн
chimney: Комін
+ clearcut: Лесапавал
+ communications_tower: Вежа сувязі
crane: Кран
+ cross: Крыж
dolphin: Прычальная тумба
dyke: Прыбярэжны насып
embankment: Насып
groyne: Буна
kiln: Печ
lighthouse: Маяк
+ manhole: Люк
mast: Мачта
mine: Шахта
mineshaft: Шахтавы стаўбур
petroleum_well: Свідравіна
pier: Пірс
pipeline: Трубаправод
+ pumping_station: Помпавая станцыя
+ reservoir_covered: Крытае вадасховішча
silo: Сілас
+ snow_cannon: Снежная гармата
+ snow_fence: Снегаахоўная загарода
storage_tank: Крыты рэзервуар
+ street_cabinet: Вулічная шафа
surveillance: Камера назірання
+ telescope: Тэлескоп
tower: Вежа
+ utility_pole: Электрычны слуп
wastewater_plant: Станцыя ачысткі сцёкавых вод
watermill: Вадзяны млын
+ water_tap: Водаправодны кран
water_tower: Ваданапорная вежа
water_well: Студня
water_works: Водазабор
airfield: Ваенны аэрадром
barracks: Казармы
bunker: Бункер
+ checkpoint: Кантрольна-прапускны пункт
+ trench: Траншэя
"yes": Ваенны
mountain_pass:
"yes": Перавал
natural:
+ atoll: Атол
+ bare_rock: Голая скала
bay: Заліў
beach: Пляж
cape: Мыс
cave_entrance: Уваход у пячору
cliff: Мяжа скалы
+ coastline: Узбярэжжа
crater: Кратэр
dune: Дзюна
fell: Неапрацаваная зямля
grassland: Луг
heath: Здароўе
hill: Пагорак
+ hot_spring: Гарачая крыніца
island: Востраў
+ isthmus: Перашыек
land: Зямля
marsh: Марш
moor: Швартоўка
mud: Бруд
peak: Пік
+ peninsula: Паўвостраў
point: Кропка
reef: Рыф
ridge: Хрыбет
sand: Пясок
scree: Абсып
scrub: Кустарнік
+ shingle: Галька
spring: Крыніца
stone: Камень
strait: Праліў
tree: Дрэва
+ tree_row: Рад дрэў
+ tundra: Тундра
valley: Даліна
volcano: Вулкан
water: Вада
wetland: Забалочаны ўчастак
wood: Пушча
+ "yes": Прыродны аб’ект
office:
accountant: Бухгалтар
administrative: Aдміністрацыя
+ advertising_agency: Рэкламнае агенцтва
architect: Архітэктар
association: Асацыяцыя
company: Кампанія
+ diplomatic: Дыпламатычная ўстанова
educational_institution: Адукацыйная ўстанова
employment_agency: Агенцтва занятасці
+ energy_supplier: Офіс пастаўшчыка энергіі
estate_agent: Агент па нерухомасці
+ financial: Фінансавая ўстанова
government: Дзяржаўная ўстанова
insurance: Страхавая кантора
it: IT-офіс
lawyer: Юрыст
+ logistics: Лагістычная ўстанова
+ newspaper: Рэдакцыя газеты
ngo: Офіс НДА
+ notary: Натарыус
+ religion: Рэлігійная ўстанова
+ research: Навукова-даследніцкая ўстанова
+ tax_advisor: Падатковая інспекцыя
telecommunication: Аддзяленне сувязі
travel_agent: Турыстычнае агенцтва
"yes": Офіс
place:
allotments: Сады-агароды
+ archipelago: Архіпелаг
city: Горад
city_block: Гарадскі квартал
country: Краіна
locality: Мясцовасць
municipality: Муніцыпалітэт
neighbourhood: Наваколле
+ plot: Дзялянка
postcode: Паштовы індэкс
quarter: Раён горада
region: Рэгіен
"yes": Месца
railway:
abandoned: Закінутая чыгунка
+ buffer_stop: Буферны прыпынак
construction: Будаўніцтва чыгункі
disused: Закінутая чыгунка
funicular: Фунікулер
platform: Чыгуначная платформа
preserved: Закансерваваная чыгунка
proposed: Праектуемая чыгунка
+ rail: Калея
spur: Чыгуначнае разгалінаванне
station: Чыгуначны вакзал
stop: Чыгуначны прыпынак
switch: Чыгуначная стрэлка
tram: Трамвай
tram_stop: Трамвайны прыпынак
+ turntable: Чыгуначны паваротны круг
yard: Сартавальная станцыя
shop:
+ agrarian: Аграрная крама
alcohol: Алкагольная крама
antiques: Антыкварыят
+ appliance: Крама побытавай тэхнікі
art: Арт-Крама
+ baby_goods: Дзіцячыя тавары
+ bag: Крама сумак
bakery: Пякарня
+ bathroom_furnishing: Мэбля для ваннай
beauty: Салон прыгажосці
+ bed: Пасцельныя рэчы
beverages: Крама напояў
bicycle: Крама ровараў
bookmaker: Букмекер
car_repair: Рамонт аўтамабіляў
carpet: Крама дываноў
charity: Дабрачынная крама
+ cheese: Сырная крама
chemist: Аптэкар
+ chocolate: Шакалад
clothes: Крама вопраткі
+ coffee: Кававая крама
computer: Крама кампутарнай тэхнікі
confectionery: Кандытарская крама
convenience: Крама крокавай даступнасці
copyshop: Капіравальны цэнтр
cosmetics: Крама касметыкі
+ craft: Крама тавараў для рукадзелля
+ curtain: Крама фіранак
+ dairy: Малочная крама
deli: Гастраном
department_store: Універмаг
discount: Крама тавараў са зніжкай
- doityourself: Ð\9aÑ\80ама бÑ\83даÑ\9eнÑ\96Ñ\87Ñ\8bÑ\85 маÑ\82Ñ\8dÑ\80'ялаў
+ doityourself: Ð\9aÑ\80ама маÑ\82Ñ\8dÑ\80Ñ\8bялаў
dry_cleaning: Хімчыстка
+ e-cigarette: Крама электронных цыгарэт
electronics: Крама электронікі
+ erotic: Крама эратычных тавараў
estate_agent: Агент па нерухомасці
+ fabric: Крама тканін
farm: Фермерская крама
fashion: Крама моднай вопраткі
+ fishing: Крама тавараў для рыбалкі
florist: Фларыст
food: Прадуктовая крама
+ frame: Крама рамак
funeral_directors: Рытуальныя паслугі
furniture: Мэбля
garden_centre: Садовы цэнтр
+ gas: Крама газавага абсталявання
general: Універсам
gift: Крама падарункаў
greengrocer: Садавіна, гародніна
grocery: Бакалея
hairdresser: Цырульнік
hardware: Гаспадарчая крама
- hifi: Аўдыётэхніка
+ health_food: Крама здаровага харчавання
+ hearing_aids: Слыхавыя апараты
+ herbalist: Крама зёлак
+ hifi: Крама аўдыя/відэатэхнікі
houseware: Крама посуду
+ ice_cream: Крама марозіва
interior_decoration: Афармленне інтэр'еру
jewelry: Ювелірная крама
kiosk: Кіёск
kitchen: Крама кухань
laundry: Пральня
+ locksmith: Выраб ключоў
lottery: Латарэя
mall: Гандлёвы цэнтр
massage: Паведамленне
+ medical_supply: Крама медыцынскіх тавараў
mobile_phone: Салон мабільнай сувязі
+ money_lender: Пазычальнік грошай
motorcycle: Крама матацыклаў
+ motorcycle_repair: Рамонт матацыклаў
music: Музычная крама
+ musical_instrument: Музычныя інструменты
newsagent: Газетны кіёск
+ nutrition_supplements: Харчовыя дабаўкі
optician: Оптыка
organic: Арганічныя прадукты
outdoor: Турыстычная крама
paint: Крама мастака
+ pastry: Кандытарская
pawnbroker: Ламбард
+ perfumery: Крама парфумы
pet: Заалагічная крама
+ pet_grooming: Стрыжка гадаванцаў
photo: Фота майстэрня
seafood: Морапрадукты
second_hand: Крама патрыманых рэчаў
+ sewing: Швейны цэх
shoes: Абутковая крама
sports: Спартыўная крама
stationery: Крама канцылярскіх тавараў
+ storage_rental: Арэнда склада
supermarket: Супермаркет
tailor: Кравец
+ tattoo: Тату салон
+ tea: Чайная крама
ticket: Каса
tobacco: Тытунёвая крама
toys: Крама цацак
vacant: Пустуючая крама
variety_store: Крама адной цаны
video: Відэа крама
+ video_games: Крама відэагульняў
+ wholesale: Аптовая крама
wine: Алкагольная крама
"yes": Крама
tourism:
artwork: Інсталяцыя
attraction: Цікавосць
bed_and_breakfast: Ложак і сняданак
- cabin: Хаціна
+ cabin: Турысцкая халупіна
+ camp_pitch: Лагерная пляцоўка
camp_site: Турбаза
caravan_site: Пляцоўка для аўтадамоў
chalet: Шале
picnic_site: Месца для пікніка
theme_park: Тэматычны парк
viewpoint: Аглядальная пляцоўка
+ wilderness_hut: Хаціна
zoo: Заапарк
tunnel:
building_passage: Праезд цераз будынак
"yes": Водны маршрут
admin_levels:
level2: Мяжа краіны
+ level3: Мяжа рэгіёна
level4: Мяжа сталіцы і абласцей
level5: Мяжа рэгіёна
level6: Мяжа райцэнтра і раёна
+ level7: Мяжа муніцыпалітэта
level8: Мяжа горада
level9: Мяжа раёну н/п
level10: Мяжа прыгараду
+ level11: Мяжа суседства
types:
cities: Гарады
towns: Мястэчкі
status: Статус
reports: Скаргі
last_updated: Апошняе змяненне
+ last_updated_time_ago_user_html: '%{time_ago} %{user}'
link_to_reports: Глядзець скаргі
reports_count:
- one: 1 Скарга
- other: '%{count} Скаргі'
+ one: '%{count} скарга'
+ few: '%{count} скаргі'
+ many: '%{count} скаргаў'
+ other: '%{count} скаргі(-аў)'
reported_item: Скарга
states:
ignored: Праігнаравана
show:
title: '%{status} Праблема #%{issue_id}'
reports:
- zero: Няма паведамленняў
- one: 1 паведамленне
- other: '%{count} паведамленняў'
+ one: '%{count} скарга'
+ few: '%{count} скаргі'
+ many: '%{count} скаргаў'
+ other: '%{count} скаргі(-аў)'
+ no_reports: Няма скаргаў
report_created_at_html: Упершыню паведамлена %{datetime}
last_resolved_at_html: Апошні раз вырашана %{datetime}
last_updated_at_html: Апошняе абнаўленне %{datetime} карыстальнікам %{displayname}
issue_comments:
create:
comment_created: Ваш каментар быў паспяхова створаны
+ issue_reassigned: Ваш каментар быў створаны, і праблема была пераадрасаваная.
reports:
new:
title_html: Скарга %{link}
intro_2_create_account: Стварыць уліковы запіс удзельніка
hosting_partners_2024_html: Хостынг падтрымліваюць %{fastly}, %{corpmembers} і
іншыя %{partners}.
+ partners_fastly: Fastly
+ partners_corpmembers: Карпаратыўныя члены OSMF
partners_partners: партнёры
tou: Умовы карыстання
osm_offline: База дадзеных OpenStreetMap зараз па-за сецівам, таму што праходзіць
gpx_failure:
hi: Прывітанне, %{to_user},
failed_to_import: 'збой імпарту. Адбылася памылка:'
+ more_info_html: Больш інфармацыі пра памылкі імпарту GPX і пра тое, як іх пазбегнуць,
+ можна знайсці на %{url}.
subject: '[OpenStreetMap] Збой імпарту GPX'
gpx_success:
+ hi: Прывітанне %{to_user},
+ loaded:
+ one: паспяхова загружаны %{trace_points} пункт з %{count} імаверных.
+ few: паспяхова загружаныя %{trace_points} пункты з %{count} імаверных.
+ many: паспяхова загружаных %{trace_points} пунктаў з %{count} імаверных.
+ other: ""
+ all_your_traces_html: Усе паспяхова спампаваныя трэкі GPX можна знайсці ў %{url}
subject: '[OpenStreetMap] Паспяховы імпарт GPX'
signup_confirm:
subject: '[OpenStreetMap] Сардэчна запрашаем у OpenStreetMap'
click_the_link: Калі гэта вы, калі ласка, перайдзіце па спасылцы, паказанай
ніжэй, каб змяніць ваш пароль.
note_comment_notification:
+ description: Нататка OpenStreetMap №%{id}
anonymous: Ананімны карыстальнік
greeting: Прывітанне,
commented:
быць вам цікава'
your_note: '%{commenter} пракаментаваў адну з вашых заўваг на карце, каля
%{place}.'
+ your_note_html: '%{commenter} пакінуў каментар да адной з вашых нататак каля
+ %{place}.'
commented_note: '%{commenter} пракаменаваў заўвагу на карце, якую вы таксама
каментавалі. Заўвага каля %{place}.'
+ commented_note_html: '%{commenter} пакінуў каментар да адной з нататак, якую
+ вы таксама каментавалі. Нататка знаходзіцца каля %{place}.'
closed:
subject_own: '[OpenStreetMap] %{commenter} вырашыў адну з вашых заўваг'
subject_other: '[OpenStreetMap] %{commenter} вырашыў заўвагу, што можа быць
вам цікава'
your_note: '%{commenter} вырашыў адну з вашых заўваг на карце, каля %{place}.'
+ your_note_html: '%{commenter} закрыў адну з вашых нататак на мапе побач з
+ %{place}.'
commented_note: '%{commenter} вырашыў заўвагу на карце, што вы каментавалі.
Заўвага каля %{place}.'
+ commented_note_html: '%{commenter} закрыў адну з пракаментаваных вамі нататак
+ побач з %{place}.'
reopened:
subject_own: '[OpenStreetMap] %{commenter} пераадчыніў адну з вашых заўваг'
subject_other: '[OpenStreetMap] %{commenter} пераадчыніў заўвагу, што можа
быць вам цікава'
your_note: '%{commenter} пераадчыніў адну з вашых заўваг на карце, каля %{place}.'
+ your_note_html: '%{commenter} адкрыў ізноў адну з вашых нататак на мапе побач
+ з %{place}.'
commented_note: '%{commenter} пераадчыніў заўвагу на карце, якую вы каментавалі.
Заўвага каля %{place}.'
- details: Больш падрабязна пра ўвагу можна прачытаць на %{url}.
+ commented_note_html: '%{commenter} адкрыў ізноў адну з вамі пракаментаваных
+ нататак побач з %{place}.'
+ details: Адказаць або здаведацца больш пра нататку праз %{url}.
+ details_html: Адказаць або здаведацца больш пра нататку праз %{url}
changeset_comment_notification:
+ description: Набор зменаў OpenStreetMap №%{id}
hi: Прывітанне, %{to_user},
greeting: Прывітанне,
commented:
зменаў'
your_changeset: '%{commenter} пакінуў каментарый на адзін з вашых набораў
змен, створаных %{time}'
+ your_changeset_html: '%{commenter} пакінуў каментар а %{time} да аднаго з
+ вашых набораў зменаў'
commented_changeset: '%{commenter}% у %{time} пакінуў каментарый да набору
змен ад %{changeset_author}, за якім вы назіраеце'
+ commented_changeset_html: '%{commenter} пакінуў каментар а %{time} на адзін
+ з набораў зменаў, за якім вы сачыце, які створаны %{changeset_author}'
partial_changeset_with_comment: з каментаром '%{changeset_comment}'
+ partial_changeset_with_comment_html: з каментаром "%{changeset_comment}"
partial_changeset_without_comment: без каментароў
- details: Дадатковыя звесткі аб наборы зьменаў можна знайсці ў %{url}.
- unsubscribe: Каб адпісацца ад абнаўленняў гэтага пакета правак наведайце %{url}
- і націсніце кнопку "Адпісацца".
+ details: Адказаць або здаведацца больш пра набор зменаў праз %{url}.
+ details_html: Адказаць або здаведацца больш пра набор зменаў праз %{url}.
+ unsubscribe: Вы можаце адпісацца ад атрымання апавяшчэнняў пра абнаўленні гэтага
+ набору зменаў праз %{url}.
+ unsubscribe_html: Вы можаце адпісацца ад атрымання апавяшчэнняў пра абнаўленні
+ гэтага набору зменаў праз %{url}.
confirmations:
confirm:
heading: Праверце вашу электронную пошту!
success: Уліковы запіс пацверджаны, дзякуй за рэгістрацыю!
already active: Гэты ўліковы запіс ужо пацверджаны.
unknown token: Тэрмін дзеяння кода пацвярджэння ўжо прайшоў ці ён не існуе.
+ resend_html: Калі вам патрэбна атрымаць паўторна электронны ліст пацвярджэння,
+ перайдзіце праз %{reconfirm_link}.
+ click_here: націсніце тут
confirm_resend:
failure: Карыстальнік %{name} не знойдзены.
confirm_email:
success: Змена вамі адраса электроннай пошты пацверджана!
failure: Паштовы адрас ужо быў пацверджаны гэтым токенам.
unknown_token: Тэрмін дзеяння кода пацвярджэння ўжо прайшоў ці ён не існуе.
+ resend_success_flash:
+ confirmation_sent: Мы адправілі вам электронны ліст пацвярджэння на электронную
+ пошту %{email}. Вам трэба як мага хутчэй спраўдзіць ваш уліковы запіс, каб
+ мець магчымасць правіць мапу.
+ whitelist: Калі вы карыстаецеся сістэмай абароны ад спаму, якая дасылае запыты
+ на пацвярджэнне, калі ласка, унясіце %{sender} у белы спіс, паколькі мы не
+ можам адказаць на аніякія запыты на пацвярджэнне.
messages:
inbox:
title: Уваходныя
to: Каму
subject: Тэма
date: Дата
+ actions: Дзеянні
message_summary:
unread_button: Адзначыць як нечытанае
read_button: Адзначыць як прачытанае
reply_button: Адказаць
destroy_button: Выдаліць
+ unmute_button: Перамясціць у папку "Уваходныя"
new:
title: Даслаць паведамленне
send_message_to_html: Даслаць новае паведамленне %{name}
body: Шкада, паведамлення з гэтым ідэнтыфікатарам няма.
outbox:
title: Зыходныя
+ actions: Дзеянні
messages:
one: Вы адаслалі %{count} паведамленне
other: Вы адаслалі %{count} паведамленняў
no_sent_messages_html: У вас пакуль няма дасланых паведамленняў. Чаму б не зкаардынавацца
з %{people_mapping_nearby_link}?
people_mapping_nearby: людзьмі, што жывуць непадалёку
+ muted:
+ title: Прыглушаныя паведамленні
+ messages:
+ one: '%{count} прыглушанае паведамленне'
+ few: '%{count} прыглушаных паведамлення'
+ many: '%{count} прыглушаных паведамленняў'
+ other: '%{count} прыглушанных паведамлення(-яў)'
reply:
- wrong_user: Вы ўвайшлі ў сістэму як `%{user}', але паведамленне, на якое Вы
+ wrong_user: Вы ўвайшлі ў сістэму як "%{user}", але паведамленне, на якое вы
жадаеце адказаць, не было дасланае гэтаму карыстальніку. Калі ласка, увайдзіце
- Ñ\8fк каÑ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96к, адпаведна запÑ\8bÑ\82Ñ\83, каб адказаць.
+ Ñ\9e Ñ\81Ñ\96Ñ\81Ñ\82Ñ\8dмÑ\83 Ñ\8fк пÑ\80аÑ\9eдзÑ\96вÑ\8b каÑ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96к , каб адказаць.
show:
title: Прачытаць паведамленне
reply_button: Адказаць
unread_button: Адзначыць, як непрачытанае
destroy_button: Выдаліць
back: Назад
- wrong_user: Вы ўвайшлі ў сістэму як `%{user}', але паведамленне, якое Вы жадаеце
- пÑ\80аÑ\87Ñ\8bÑ\82аÑ\86Ñ\8c, бÑ\8bло даÑ\81ланае не гÑ\8dÑ\82Ñ\8bм Ñ\86Ñ\96 гÑ\8dÑ\82амÑ\83 каÑ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96кÑ\83. Ð\9aалÑ\96 лаÑ\81ка, Ñ\83вайдзÑ\96Ñ\86е
- Ñ\8fк каÑ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96к, адпаведна запÑ\8bÑ\82Ñ\83, каб пÑ\80аÑ\87Ñ\8bÑ\82аÑ\86Ñ\8c.
+ wrong_user: Вы ўвайшлі ў сістэму пад імем "%{user}", але паведамленне, якое
+ вÑ\8b жадаеÑ\86е пÑ\80аÑ\87Ñ\8bÑ\82аÑ\86Ñ\8c, не бÑ\8bло адпÑ\80аÑ\9eленае гÑ\8dÑ\82Ñ\8bм каÑ\80Ñ\8bÑ\81Ñ\82алÑ\8cнÑ\96кам. Ð\9aалÑ\96 лаÑ\81ка,
+ Ñ\83вайдзÑ\96Ñ\86е Ñ\9e Ñ\81Ñ\96Ñ\81Ñ\82Ñ\8dмÑ\83 пад пÑ\80авÑ\96лÑ\8cнÑ\8bм Ñ\96мем, каб пÑ\80аÑ\87Ñ\8bÑ\82аÑ\86Ñ\8c Ñ\8fго.
sent_message_summary:
destroy_button: Выдаліць
heading:
my_inbox: Мае уваходныя
+ my_outbox: Мае выходныя
+ muted_messages: Прыглушаныя паведамленні
mark:
as_read: Паведамленне адмечана прачытаным
as_unread: Паведамленне адмечана нечытаным
+ unmute:
+ notice: Паведамленне было перамешчана ў папку "Уваходныя".
+ error: Паведамленне не можа быць перамешчана ў папку "Уваходныя".
destroy:
destroyed: Паведамленне выдалена
passwords:
new:
title: згублены пароль
heading: Забылі пароль?
- email address: 'Паштовы адрас:'
+ email address: Адрас электроннай пошты
new password button: Выслаць мне новы пароль
help_text: Увядзіце адрас электроннай пошты, які Вы выкарыстоўвалі пры рэгістрацыі,
і мы вышлем Вам спасылку, якую Вы зможаце выкарыстаць для змены паролю.
+ create:
+ send_paranoid_instructions: Калі ваш адрас электроннай пошты ёсць у нашай базе
+ даных, вы атрымаеце спасылку для аднаўлення пароля на свой адрас электроннай
+ пошты праз некалькі хвілін.
edit:
title: скінуць пароль
heading: Скінуць пароль для %{user}
flash token bad: Не знайшоў такі токен, можа, праверце URL?
update:
flash changed: Ваш пароль быў зменены.
+ flash token bad: Не знайшоў такі токен, мабыць, праверце URL?
+ preferences:
+ show:
+ title: Параметры
+ preferred_editor: Пераважны рэдактар
+ preferred_languages: Пераважныя мовы
+ edit_preferences: Змяніць параметры
+ edit:
+ title: Змяніць параметры
+ save: Абнавіць параметры
+ cancel: Скасаваць
+ update:
+ failure: Немагчыма абнавіць параметры.
+ update_success_flash:
+ message: Параметры абноўленыя.
profiles:
edit:
+ title: Рэдагаваць профіль
+ save: Абнавіць профіль
+ cancel: Скасаваць
image: Выява
gravatar:
gravatar: Выкарыстоўваць Gravatar
+ what_is_gravatar: Што такое Gravatar?
disabled: Граватар быў адключаны.
enabled: Паказ вашага Граватара быў уключаны.
new image: Дадаць выяву
delete image: Выдаліць бягучую выяву
replace image: Замяніць бягучую выяву
image size hint: (найлепей пасуюць квадратныя выявы памерам 100×100)
- home location: 'Ваша месцазнаходжанне:'
+ home location: Маё месцазнаходжанне
no home location: Вы не выбралі вашае асноўнае месцазнаходжанне.
update home location on click: Абнавіць каардэнаты, калі я пстрыкну па карце?
+ show: Паказаць
+ delete: Выдаліць
+ undelete: Адмяніць выдаленне
+ update:
+ success: Профіль абноўлены.
+ failure: Немагчыма абнавіць профіль.
sessions:
new:
title: Уваход
tab_title: Уваход
+ login_to_authorize_html: Увайдзіце ў сістэму OpenStreetMap, каб мець доступ
+ да %{client_app_name}.
email or username: Электронны адрас або Імя карыстальніка
password: Пароль
remember: Памятаць мяне
lost password link: Згубілі пароль?
login_button: Увайсці
register now: Зарэгістравацца зараз
- with external: 'У якасці альтэрнатывы выкарыстайце для ўваходу старонні сервіс:'
+ with external: або ўвайдзіце ў сістэму з дапамогай трэцяй асобы
+ or: або
auth failure: Прабачце, немагчыма увайсці з такім адрасам і паролем.
destroy:
title: Выйсці
heading: Выйсці з OpenStreetMap
logout_button: Выйсці
+ suspended_flash:
+ suspended: На жаль, ваш уліковы запіс быў прыпынены з-за падазронай актыўнасці.
+ contact_support_html: Калі ласка, звяжыцеся з %{support_link}, калі хочаце абмеркаваць
+ гэта.
+ support: падтрымка
shared:
markdown_help:
+ heading_html: Разабрана з %{kramdown_link}
+ headings: Загалоўкі
+ heading: Загаловак
subheading: Падзагаловак
+ unordered: Неўпарадкаваны спіс
+ ordered: Упарадкаваны спіс
+ first: Першы пункт
+ second: Другі пункт
link: Спасылка
text: Тэкст
image: Выява
+ alt: Альтэрнатыўны тэкст
+ url: URL
+ codeblock: Блок коду
richtext_field:
edit: Правіць
+ preview: Перадпаказ
site:
about:
next: Далей
+ heading_html: '%{copyright}OpenStreetMap %{br} удзельнікаў'
used_by_html: '%{name} забяспечвае картаграфічнымі данымі тысячы сайтаў, мабільных
праграм і прылад'
lede_text: OpenStreetMap створаны супольнасцю картографаў, якія дадаюць і падтрымліваюць
палявыя карты для праверкі таго, што дадзеныя OSM з'яўляюцца дакладнымі і
актуальнымі.
community_driven_title: Развіваецца супольнасцю
+ community_driven_1_html: |-
+ Супольнасць OpenStreetMap разнастайная, зацятая і расце штодзень.
+ Сярод нашых удзельнікаў ёсць картографы-энтузіясты, адмыслоўцы па ГІС, інжынеры, якія працуюць з сістэмамі OSM, гуманітарныя працаўнікі, якія робяць рэдагаванні мапы ў раёнах, якія пацярпелі ад стыхійных бедстваў, і шмат іншых.
+ Каб здаведацца больш пра супольнасць, наведайце %{osm_blog_link}, %{user_diaries_link}, %{community_blogs_link} і вэб-сайт %{osm_foundation_link}.
+ community_driven_osm_blog: Блог OpenStreetMap
+ community_driven_user_diaries: дзённікі карыстальнікаў
+ community_driven_community_blogs: блогі супольнасці
+ community_driven_osm_foundation: Фонд OSM
open_data_title: Адкрытыя даныя
+ open_data_1_html: |-
+ OpenStreetMap — гэта %{open_data}: вы можаце выкарыстоўваць іх для любых мэтаў
+ патуль, пакуль вы пазначаеце OpenStreetMap і ягоных удзельнікаў. Калі вы зменіце або дададзіце даныя пэўным чынам, вы можаце пашыраць вынік толькі
+ па той жа ліцэнзіі. Падрабязней %{copyright_license_link}.
+ open_data_open_data: адкрытыя даныя
+ open_data_copyright_license: Аўтарскія правы і ліцэнзія
legal_title: Прававыя пытанні
partners_title: Партнёры
copyright:
index:
js_1: Вы карыстаецеся вандроўнікам без падтрымкі JavaScript.
js_2: OpenStreetMap выкарыстоўвае JavaScript для адлюстравання карты на сайце.
- permalink: Спасылка сюды
- shortlink: Кароткая
- createnote: Дадаць заўвагу
license:
copyright: Аўтарскія правы належаць OpenStreetMap і яго ўдзельнікам на ўмовах
адкрытай ліцэнзіі.
map_data_zoom_in_tooltip: Павялічце, каб убачыць картаграфічныя даныя
queryfeature_tooltip: Пошук аб’ектаў
queryfeature_disabled_tooltip: Наблізіцеся для пошуку аб'ектаў
- changesets:
- show:
- comment: Каментаваць
- subscribe: Падпісацца
- unsubscribe: Адпісацца
- hide_comment: схаваць
- unhide_comment: паказаць
edit_help: Перамясціце карту і наблізце месца, якое вы хочаце рэдагаваць, затым
націсніце тут.
directions:
opened_at_by_html: Създадена %{when} от %{user}
commented_at_html: Обновена %{when}
commented_at_by_html: Обновена %{when} от %{user}
- closed_at_html: РеÑ\88ена %{when}
- closed_at_by_html: РеÑ\88ена %{when} от %{user}
+ closed_at_html: Ð\97аÑ\82воÑ\80ена %{when}
+ closed_at_by_html: Ð\97аÑ\82воÑ\80ена %{when} от %{user}
reopened_at_html: Повторно отворена %{when}
reopened_at_by_html: Повторно отворена %{when} от %{user}
rss:
join_discussion: Впишете се, за да се присъедините към обсъждането
still_open: Списъкът с промени не е завършен - обсъждането ще започне след неговото
завършване.
+ subscribe: Абониране
+ unsubscribe: Отписване
+ hide_comment: скриване
+ unhide_comment: показване
+ comment: Коментиране
changesetxml: XML на списъка с промени
osmchangexml: osmChange XML
paging_nav:
%{language_name}
all:
title: Записи в дневника на OpenStreetMap
- comments:
+ diary_comments:
+ index:
no_comments: Няма коментари в дневника
post: Публикация
when: Кога
states:
ignored: Пренебрегнат
open: Отворен
- resolved: РеÑ\88ени
+ resolved: Ð\97аÑ\82воÑ\80ени
show:
title: '%{status} Проблем #%{issue_id}'
reports:
one: '%{count} доклад'
other: '%{count} доклада'
report_created_at_html: Първоначално докладван на %{datetime}
- last_resolved_at_html: Последно решена на %{datetime}
+ last_resolved_at_html: Последно затворена на %{datetime}
last_updated_at_html: Последно актуализиран на %{datetime} от %{displayname}
- resolve: РеÑ\88аване
+ resolve: Ð\97аÑ\82ваÑ\80Ñ\8fне
ignore: Пропусни
reopen: Отново отвори
reports_of_this_issue: Сигнали за този Проблем
subject_other: '[OpenStreetMap] %{commenter} коментира бележка, от която се
интересувате'
closed:
- subject_own: '[OpenStreetMap] %{commenter} е решил една от бележките ви'
- subject_other: '[OpenStreetMap] %{commenter} разреши бележка, която ви интересува'
- your_note: '%{commenter} е решил една от бележките ви към картата в близост
+ subject_own: '[OpenStreetMap] %{commenter} е затворил една от бележките ви'
+ subject_other: '[OpenStreetMap] %{commenter} затвори бележка, която ви интересува'
+ your_note: '%{commenter} е затворил една от бележките ви към картата в близост
до %{place}.'
- your_note_html: '%{commenter} разреши една от вашите бележки на картата близо
+ your_note_html: '%{commenter} затворил една от вашите бележки на картата близо
до %{place}.'
reopened:
subject_own: '[OpenStreetMap] %{commenter} повторно е отворил една от бележките
more_title_html: Открийте повече
contributors_title_html: Нашите сътрудници
infringement_title_html: Нарушаване на авторските права
+ infringement_1_html: Напомняме на сътрудниците на OSM никога да не добавят
+ данни от източници, защитени с авторски права (например Google Maps или
+ печатни карти), без изрично разрешение от притежателите на авторските права.
+ infringement_2_1_html: Ако смятате, че материал, защитен с авторско право,
+ е добавен по неправомерен начин в базата данни на OpenStreetMap или в този
+ сайт, моля, обърнете се към нашата %{takedown_procedure_link} или подайте
+ сигнал директно чрез нашата %{online_filing_page_link}.
+ infringement_2_1_takedown_procedure: процедура за сваляне
+ infringement_2_1_online_filing_page: онлайн страница за подаване на документи
+ trademarks_title: Търговски марки
+ trademarks_1_1_html: |-
+ OpenStreetMap, логото с лупата и State of the Map са регистрирани търговски марки на
+ OpenStreetMap Foundation. Ако имате въпроси относно използването на марките, моля вижте нашата
+ %{trademark_policy_link}.
+ trademarks_1_1_trademark_policy: политика за търговски марки
index:
js_2: OpenStreetMap използва JavaScript за своята статична карта.
- permalink: Постоянна връзка
- shortlink: Къса връзка
- createnote: Добавяне на бележка
edit:
not_public: Не сте посочили вашите редакции да бъдат публични.
user_page_link: Потребителска страница
title: Бележка № %{id}
description: Описание
open_title: Нерешена бележка № %{note_name}
- closed_title: РеÑ\88ена бележка № %{note_name}
+ closed_title: Ð\97аÑ\82воÑ\80ена бележка № %{note_name}
hidden_title: Скрита бележка № %{note_name}
event_opened_by_html: Създадена от %{user} %{time_ago}
report: докладване
anonymous_warning: Бележката е от анонимен потребител и съдържа твърдения, които
трябва да бъдат проверени.
hide: Скриване
- resolve: РеÑ\88аване
+ resolve: Ð\97аÑ\82ваÑ\80Ñ\8fне
reactivate: Повторно отваряне
- comment_and_resolve: Коментиране и решаване
+ comment_and_resolve: Коментиране и затваряне
comment: Коментиране
report_link_html: Ако тази бележка съдържа поверителна информация, която трябва
да бъде премахната, можете да я %{link}.
- other_problems_resolve: За всички други проблеми с бележката, моля, разрешете
- ги с коментар.
+ other_problems_resolve: За всички други проблеми с бележката, моля, затворете
+ я с коментар.
new:
title: Нова бележка
intro: Забелязали сте грешка или нещо липсващо? Уведомете другите картографи,
map_data_zoom_in_tooltip: Увеличете за подробности
queryfeature_tooltip: Търсене на обекти
queryfeature_disabled_tooltip: Увеличете за търсене на обекти
- changesets:
- show:
- comment: Коментиране
- subscribe: Абониране
- unsubscribe: Отписване
- hide_comment: скриване
- unhide_comment: показване
directions:
ascend: Изкачване
engines:
# Author: R4356th
# Author: R4bb1
# Author: Rasal Lia
+# Author: RiazACU
# Author: Sayma Jahan
# Author: Tahmid
# Author: Tauhid16
join_discussion: আলোচনায় যোগ দিতে প্রবেশ করুন
still_open: চেঞ্জসেট এখনও খোলা - চেঞ্জসেট বন্ধ হয়ে গেলে আলোচনা খোলা হবে।
hidden_comment_by_html: '%{user} %{time_ago} মন্তব্যটি লুকিয়েছেন'
+ comment: মন্তব্য
changesetxml: পরিবর্তনধার্য এক্সএমএল
osmchangexml: osmChange এক্সএমএল
paging_nav:
all:
title: ওপেনস্ট্রিটম্যাপ দিনলিপির ভুক্তি
description: ওপেনস্ট্রিটম্যাপ ব্যবহারকারীগণ কর্তৃক সাম্প্রতিক দিনলিপির ভুক্তি
- comments:
+ subscribe:
+ button: আলোচনায় সাবস্ক্রাইব করুন
+ diary_comments:
+ index:
title: '%{user}-এর কৃত দিনলিপি ভুক্তি'
heading: '%{user}-এর দিনলিপি মন্তব্য'
subheading_html: '%{user}-এর করা দিনলিপি মন্তব্য'
comment: মন্তব্য
newer_comments: নতুনতর মন্তব্য
older_comments: পুরাতন মন্তব্য
- subscribe:
- button: আলোচনায় সাবস্ক্রাইব করুন
doorkeeper:
flash:
applications:
index:
js_1: আপনি এমন একটি ব্রাউজার ব্যবহার করছেন যা জাভাস্ক্রিপ্ট সমর্থন করে না অথবা
আপনি জাভাস্ক্রিপ্ট অক্ষম করেছেন।
- permalink: স্থায়ী সংযোগ
- shortlink: সংক্ষিপ্ত সংযোগ
- createnote: একটি দ্রষ্টব্য যোগ করুন
edit:
user_page_link: ব্যবহারকারীর পাতা
export:
site:
edit_tooltip: মানচিত্রটি সম্পাদনা করুন
embed_html_disabled: এই মানচিত্রের স্তরের জন্য এইচটিএমএল এম্বেডিং উপলব্ধ নয়।
- changesets:
- show:
- comment: মন্তব্য
directions:
engines:
graphhopper_car: গাড়ি (GraphHopper)
join_discussion: Kevreit evit mont er gaozeadenn
still_open: Hollad cheñchamantoù digor - an diviz a zigoro ur wech ma vo serret
an hollad cheñchamantoù.
+ subscribe: Koumanantiñ
+ unsubscribe: Digoumanantiñ
comment_by_html: Kemennadenn skrivet gant %{user} %{time_ago}
hidden_comment_by_html: Kemennadenn kuzhet gant %{user} %{time_ago}
+ hide_comment: kuzhat
+ unhide_comment: diskouez
+ comment: Embann
changesetxml: Hollad cheñchamantoù XML
osmchangexml: Cheñchoùosm XML
paging_nav:
all:
title: Enmontoù en deizlevr OpenStreetMap
description: Enmontoù nevez en deizlevr gant implijerien OpenStreetMap
- comments:
+ subscribe:
+ button: Koumanantiñ ouzh ar gaozeadenn
+ unsubscribe:
+ button: Digoumanantiñ diouzh ar gaozeadenn
+ diary_comments:
+ index:
title: Kemennadennoù skrivet en deizlevr gant %{user}
heading: Kemennadennoù-deizlevr %{user}
subheading_html: Kemennadennoù skrivet en deizlevr gant %{user}
comment: Evezhiadenn
newer_comments: Evezhiadennoù nevesañ
older_comments: Evezhiadennoù koshañ
- subscribe:
- button: Koumanantiñ ouzh ar gaozeadenn
- unsubscribe:
- button: Digoumanantiñ diouzh ar gaozeadenn
doorkeeper:
flash:
applications:
errors:
contact:
contact: darempred
+ bad_request:
+ title: Reked fall
forbidden:
title: Difennet
internal_server_error:
lost password link: Ankouaet ho ker-tremen ganeoc'h ?
login_button: Kevreañ
register now: En em enskrivañ bremañ
- with external: 'Mod all, implijit un tredeour evit kevreañ :'
+ with external: 'pe kevreit gant un tredeour:'
+ or: pe
auth failure: Ho tigarez, met n'eus ket bet gallet hoc'h anavezout gant an titouroù
pourchaset.
destroy:
js_1: Pe emaoc'h oc'h implijout ur merdeer ha ne skor ket JavaScript, pe hoc'h
eus diweredekaet JavaScript.
js_2: OpenStreetMap a implij JavaScript evit e gartenn risklus.
- permalink: Peurliamm
- shortlink: Liamm berr
- createnote: Ouzhpennañ un notenn
license:
copyright: Gwir-eilañ gant OpenStreetMap hag ar genlabourerien, dindan un
aotre-implijout digor
close: Serriñ
search:
search: Klask
- get_directions: Kaout an tuioù
+ get_directions: Kaout an durc'hadurioù
get_directions_title: Kavit an hentoù etre an daou boent
from: Eus
to: Da
identifiable: ANAVEZADUS
private: PREVEZ
trackable: HEULIADUS
+ details_with_tags_html: '%{time_ago} gant %{user} e-barzh %{tags}'
details_without_tags_html: '%{time_ago} gant %{user}'
index:
public_traces: Roudoù GPS foran
muted_users: Implijerien kuzhet
auth_providers:
openid_logo_alt: Kevreañ gant un OpenID
+ openid_login_button: Kenderc'hel
openid:
title: Kevreañ gant OpenID
alt: Kevreañ gant un URL OpenID
users:
new:
title: Kevreañ
+ tab_title: En em enskrivañ
no_auto_account_create: Siwazh n'omp ket evit krouiñ ur gont evidoc'h ent emgefreek.
please_contact_support_html: Kit e darempred gant ar %{support_link}, mar plij,
evit ma krouo ur gont evidoc'h - klask a raimp plediñ gant ho koulenn kerkent
ha ma vo tu.
support: skor
about:
- header: Digoust hag aozadus
+ header: Digoust hag aozadus.
paragraph_1: E-skoaz ar c'hartennoù all eo savet OpenStreetMap penn-da-benn
gant tud eveldoc'h ha tu zo da bep hini reizhañ, hizivaat, pellgargañ hag
implijout e gartennoù.
- paragraph_2: Lakait hoc'h anv ha stagit da gemer perzh. Kaset a vo ur postel
- deoc'h a-benn kadarnaat ho kont.
+ paragraph_2: Lakait hoc'h anv ha stagit da gemer perzh.
+ welcome: Degemer mat en OpenStreetMap
display name description: Emañ hoc'h anv implijer a-wel d'an holl. Se a c'hallit
cheñch diwezhatoc'h en ho penndibaboù.
+ tou: Termenoù implijout
+ contributor_terms: reolennoù ar genlabourerien
external auth: 'Dilesadur trede :'
continue: En em enskrivañ
terms accepted: Trugarez deoc'h evit bezañ asantet da ziferadennoù nevez ar
email_help_html: Ho chomlec'h ne vo ket hewel d'an holl, sellit ouzh %{privacy_policy_link}
evit gouzout hiroc'h.
privacy_policy: reolennoù prevezded
- use external auth: 'Mod all, implijit un tredeour evit kevreañ :'
+ consider_pd: domani foran
+ or: pe
+ use external auth: 'pe kevreit gant un tredeour:'
terms:
title: Termenoù
heading: Termenoù
reactivate: Adweredekaat
comment_and_resolve: Addisplegañ & Diskoulmañ
comment: Evezhiadenn
+ log_in_to_comment: Kevreit evit skrivañ war an notenn-mañ
other_problems_resolved: Evit an holl gudennoù all ez eo a-walc'h d'o diskoulmañ.
new:
title: Notenn nevez
intro: Gwelet ho peus ur fazi pe un dra a vank ? Roit an dra-se da c'houzout
d'ar gartennaouerien all evit ma vo renket. Lakait ar merker el lec'h mat
ha skrivit un notenn da zisplegañ ar gudenn.
+ anonymous_warning_log_in: kevreañ
+ anonymous_warning_sign_up: en em enskrivañ
advice: Foran eo ho notenn ha ne c'hall ket bezañ implijet evit hizivaat ar
gartenn. Setu perak eo arabat ebarzhiñ titouroù personel pe titouroù o tont
eus kartennoù gwarezet na endalc'hioù rolloù.
standard: Standard
cycle_map: Kelc'hiad kartenn
transport_map: Kartenn treuzdougen
+ tracestracktop_topo: Tracestrack Topo
hot: Denegour
layers:
header: Gwiskadoù kartenn
map_data_zoom_in_tooltip: Zoumiñ evit gwelet roadennoù ar gartenn
queryfeature_tooltip: Arc'hweladurioù enklask
queryfeature_disabled_tooltip: Zoumañ evit an arc'hweladurioù enklask
- changesets:
- show:
- comment: Embann
- subscribe: Koumanantiñ
- unsubscribe: Digoumanantiñ
- hide_comment: kuzhat
- unhide_comment: diskouez
edit_help: Dilec'hiit ar gartenn ha zoumit war ul lec'h a fell deoc'h aozañ, ha
neuze klikit amañ.
directions:
fossgis_valhalla_car: Karr (Valhalla)
fossgis_valhalla_foot: War droad (Valhalla)
descend: Diskenn
- directions: Tuioù
+ directions: Durc'hadurioù
distance: Hed
distance_m: '%{distance}m'
distance_km: '%{distance}km'
all:
title: Unosi u OpenStreetMap dnevniku
description: Nedavni unosi u dnevnik OpenStreetMap korisnika
- comments:
+ diary_comments:
+ index:
post: Post
when: Kada
comment: Komentar
js_1: Koristite internet preglednik koji ne podržava JavaScript, ili ste onemogućili
JavaScript.
js_2: OpenStreetMap koristi JavaScript za slippy kartu.
- permalink: Trajni link
- shortlink: Kratki link
- createnote: Dodaj bilješku
license:
copyright: Autorska prava OpenStreetMap i doprinosioci, pod otvorenom dozvolom
remote_failed: Uređivanje nije uspjelo - provjerite da li je JOSM ili Merkaartor
join_discussion: Inicieu una sessió per a unir-vos al debat
still_open: Conjunt de canvis encara obert - el debat començarà quan es tanqui
el conjunt de canvis.
+ subscribe: Subscriure's
+ unsubscribe: Dona de baixa
comment_by_html: Comentari de %{user} %{time_ago}
hidden_comment_by_html: Comentari ocult de %{user} %{time_ago}
+ hide_comment: ocultar
+ unhide_comment: mostrar
+ comment: Comenta
changesetxml: XML del conjunt de canvis
osmchangexml: XML en format osmChange
paging_nav:
all:
title: Entrades de diari d'OpenStreetMap
description: Entrades de diari recents dels usuaris d'OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Comentaris del diari afegits per %{user}
heading: Comentaris del diari de %{user}
subheading_html: Comentaris del diari afegits per %{user}
js_1: O bé esteu utilitzant un navegador no compatible amb JavaScript o bé teniu
JavaScript deshabilitat.
js_2: L'OpenStreetMap utilitza JavaScript per al mapa lliscant.
- permalink: Enllaç permanent
- shortlink: Enllaç curt
- createnote: Afegeix una nota
license:
copyright: Copyright d'OpenStreetMap i els seus col·laboradors sota llicència
oberta
queryfeature_disabled_tooltip: Apropeu-vos per a consultar característiques
embed_html_disabled: La incrustació d'HTML no està disponible per a aquesta
capa de mapa
- changesets:
- show:
- comment: Comenta
- subscribe: Subscriure's
- unsubscribe: Dona de baixa
- hide_comment: ocultar
- unhide_comment: mostrar
edit_help: Moveu el mapa i feu zoom sobre una ubicació que vulgueu editar, i a
continuació, feu clic aquí.
directions:
# Export driver: phpyaml
# Author: McDutchie
# Author: Sasan700
+# Author: Исмаил Садуев
# Author: Умар
---
ce:
update: Хийцам Ӏалашбе
trace:
create: Сервер тӀейаккха
- update: Ӏалашбе хийцамаш
+ update: Хийцамаш дӀаӀалашбе
user_block:
create: Кхолла блок
update: Карлайаккха блок
way_tag: Сизан тег
attributes:
diary_comment:
- body: Ð\99оза
+ body: ТекÑ\81Ñ\82
diary_entry:
user: Декъашхо
title: Тема
message:
sender: Баийтинарг
title: Тема
- body: Ð\99оза
+ body: ТекÑ\81Ñ\82
recipient: Кхаьчнарг
user:
email: Электронан пошт
title: OpenStreetMap билгалонаш
entry:
comment: Коммент
- full: Ð\94Ñ\83Ñ\8cззина йоза
+ full: Ð\99Ñ\83Ñ\8cззина Ñ\82екÑ\81Ñ\82
accounts:
edit:
current email address: 'Карара электронан поштан адрес:'
title: 'Нисдарш: %{id}'
discussion: Дийцар
join_discussion: Дийцарехь дакъалаца системин чугӀо
+ hide_comment: къайлайаккха
+ unhide_comment: гайта
+ comment: Коммент
changesetxml: Нисдарийн XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Дневникан дӀайаздарш OpenStreetMap
description: OpenStreetMap декъашхойн тӀаьххьарлера дӀайаздарш
- comments:
+ diary_comments:
+ index:
post: Хаам
when: Маца
comment: Коммент
revoker: 'БлокдӀайаьккхинарг:'
block:
show: Гайта
- edit: Ð\9dиÑ\81йе
+ edit: Ð\9dиÑ\81йан
revoke: ДӀайаккхаблок!
blocks:
display_name: Блоктоьхна декъашхо
site:
edit_tooltip: Нисде карта
edit_disabled_tooltip: Хийцамашбан гергадаладе карта
- changesets:
- show:
- comment: Коммент
- hide_comment: къайлайаккха
- unhide_comment: гайта
directions:
ascend: Хьала
engines:
join_discussion: Chcete-li diskutovat, přihlaste se
still_open: Sada změn je stále otevřená – diskuse se zpřístupní, jakmile bude
sada změn uzavřena.
+ subscribe: Odebírat
+ unsubscribe: Zrušit odebírání
comment_by_html: Komentář od uživatele %{user} %{time_ago}
hidden_comment_by_html: Skrytý komentář od uživatele %{user} %{time_ago}
+ hide_comment: skrýt
+ unhide_comment: odkrýt
+ comment: Okomentovat
changesetxml: Sada změn XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Deníkové záznamy OpenStreetMap
description: Nedávné záznamy v denících uživatelů OpenStreetMap
- comments:
+ subscribe:
+ heading: Přihlásit se k odběru následující diskuse k deníkovému záznamu?
+ button: Odebírat diskusi
+ unsubscribe:
+ heading: Odhlásit odběr následující diskuse k deníkovému záznamu?
+ button: Zrušit odběr diskuse
+ diary_comments:
+ index:
title: Komentáře k deníkům přidané uživatelem %{user}
heading: Deníkové komentáře uživatele %{user}
subheading_html: Komentáře k deníkům přidané uživatelem %{user}
comment: Komentář
newer_comments: Novější komentáře
older_comments: Starší komentáře
- subscribe:
- heading: Přihlásit se k odběru následující diskuse k deníkovému záznamu?
- button: Odebírat diskusi
- unsubscribe:
- heading: Odhlásit odběr následující diskuse k deníkovému záznamu?
- button: Zrušit odběr diskuse
doorkeeper:
errors:
messages:
js_1: Buď používáte prohlížeč bez podpory JavaScriptu, nebo máte JavaScript
zakázaný.
js_2: OpenStreetMap používá pro svou interaktivní mapu JavaScript.
- permalink: Trvalý odkaz
- shortlink: Krátký odkaz
- createnote: Přidat poznámku
license:
copyright: Copyright OpenStreetMap a přispěvatelé, pod svobodnou licencí
remote_failed: Editace se nezdařila – ujistěte se, že JOSM nebo Merkaartor běží
continue: Zaregistrovat se
terms accepted: Děkujeme za odsouhlasení nových podmínek pro přispěvatele!
email_help_html: Vaše adresa se nezobrazuje veřejně, více informací získáte
- v našich %{privacy_policy_link}.
- privacy_policy: pravidlech ochrany osobních údajů
+ na stránce s našimi %{privacy_policy_link}.
+ privacy_policy: pravidly ochrany osobních údajů
privacy_policy_title: Pravidla ochrany osobních údajů OSMF, včetně části o e-mailových
adresách
consider_pd_html: Své příspěvky považuji za %{consider_pd_link}.
queryfeature_tooltip: Průzkum prvků
queryfeature_disabled_tooltip: Pro průzkum prvků přejděte na větší měřítko
embed_html_disabled: HTML vkládání není pro tuto mapovou vrstvu k dispozici
- changesets:
- show:
- comment: Okomentovat
- subscribe: Odebírat
- unsubscribe: Zrušit odebírání
- hide_comment: skrýt
- unhide_comment: odkrýt
edit_help: Posuňte si mapu a zvětšete si místo, které chcete editovat, a klikněte
zde.
directions:
deleted_ago_by_html: Wedi dileu %{time_ago} gan %{user}
edited_ago_by_html: Golygwyd %{time_ago} gan %{user}
version: Fersiwn
+ redacted_version: Fersiwn Wedi'i Gorchuddio
in_changeset: Grŵp newid
anonymous: dienw
no_comment: (dim sylw)
other: '%{count} llwybr'
download_xml: Lawrlwytho XML
view_history: Gweld hanes
+ view_unredacted_history: Gweld Hanes Heb Ei Orchuddio
view_details: Gweld manylion
+ view_redacted_data: Gweld Data Wedi'i Gorchuddio
+ view_redaction_message: Gweld Neges Orchuddio
location: Lleoliadː
node:
title_html: 'Nod: %{name}'
join_discussion: Mewngofnodwch i ymuno â'r sgwrs
still_open: Mae'r grŵp newid dal ar agor - bydd trafodaeth yn agor pan fydd
y grŵp newid wedi cau.
+ subscribe: Tanysgrifio
+ unsubscribe: Dad-danysgrifio
comment_by_html: Sylw gan %{user} %{time_ago}
hidden_comment_by_html: Sylw cudd gan %{user} %{time_ago}
+ hide_comment: cuddio
+ unhide_comment: datguddio
+ comment: Sylw
changesetxml: XML grŵp newid
osmchangexml: XML osmChange
paging_nav:
title: Dyddiadur %{user} | %{title}
user_title: Dyddiadur %{user}
discussion: Sgwrs
+ subscribe: Tanysgrifio
+ unsubscribe: Dad-danysgrifio
leave_a_comment: Sylw
login_to_leave_a_comment_html: '%{login_link} i adael sylw'
login: Mewngofnodi
all:
title: Cofnodion dyddiadur OpenStreetMap
description: Cofnodion dyddiadur diweddar gan ddefnyddwyr OpenStreetMap
- comments:
+ subscribe:
+ button: Tanysgrifio i drafodaeth
+ unsubscribe:
+ heading: Dad-danysgrifio o'r drafodaeth cofnod dyddiadur ganlynol?
+ button: Dad-danysgrifio o'r drafodaeth
+ diary_comments:
+ index:
title: Sylwadau Dyddiadur wedi'u hychwanegu gan %{user}
heading: Sylwadau Dyddiadur %{user}
subheading_html: Sylwadau Dyddiadur wedi'u hychwanegu gan %{user}
comment: Sylw
newer_comments: Sylwadau Diweddarach
older_comments: Sylwadau Hŷn
- subscribe:
- button: Tanysgrifio i drafodaeth
- unsubscribe:
- heading: Dad-danysgrifio o'r drafodaeth cofnod dyddiadur ganlynol?
- button: Dad-danysgrifio o'r drafodaeth
doorkeeper:
flash:
applications:
contact_the_community_html: '%{contact_link} â''r gymuned OpenStreetMap os ydych
chi wedi dod o hyd i nam neu ddolen sydd wedi torri. Nodwch yr URL cywir o''ch
cais.'
+ bad_request:
+ title: Cais Drwg
forbidden:
title: Gwaharddedig
internal_server_error:
roof: To
ruins: Adeilad Adfeiliedig
school: Adeilad Ysgol
+ semidetached_house: Tŷ Pâr
service: Adeilad Gwasanaeth
shed: Sied
stable: Stabl
photographer: Ffotograffydd
plumber: Plymar
roofer: Towr
+ sawmill: Melin Lifio
shoemaker: Crydd
+ stonemason: Saer Maen
tailor: Teiliwr
+ window_construction: Gwydrwr
winery: Gwindy
"yes": Siop Grefft
emergency:
assembly_point: Man Ymgynull
defibrillator: Diffibriliwr
fire_extinguisher: Diffoddwr Tân
+ fire_water_pond: Pwll Dŵr Tân
landing_site: Man Glanio Argyfwng
phone: Ffôn Argyfwng
water_tank: Tanc Dŵr Argyfwng
grocery: Siop y Groser
hairdresser: Siop Drin Gwallt
hardware: Siop Nwyddau Metel
+ herbalist: Herbwr
hifi: Siop Hi-Fi
houseware: Siop Offer Tŷ
ice_cream: Siop Hufen Iâ
massage: Tylino
mobile_phone: Siop Ffonau Symudol
motorcycle: Siop Beiciau Modur
+ motorcycle_repair: Siop Atgyweirio Beiciau Modur
music: Siop Gerddoriaeth
+ musical_instrument: Offerynau Cerddorol
newsagent: Siop Bapurau
optician: Optegydd
organic: Siop Fwyd Organig
sydd ar gael i'w ddefnyddio am ddim a dan drwydded rydd.
intro_2_create_account: Creu cyfrif defnyddiwr
partners_fastly: Fastly
+ partners_corpmembers: Aelodau corfforaethol OSMF
partners_partners: phartneriaid
tou: Telerau Gwasanaeth
osm_offline: Mae cronfa ddata OpenStreetMap all-lein ar hyn o bryd er mwyn gwaith
more: Mwy
user_mailer:
diary_comment_notification:
+ description: 'Cofnod Dyddiadur OpenStreetMap #%{id}'
subject: '[OpenStreetMap] Gwnaeth %{user} sylw ar gofnod dyddiadur'
hi: Helo %{to_user},
+ footer_unsubscribe: Gallwch chi ddad-danysgrifio o'r drafodaeth yn %{unsubscribeurl}
+ footer_unsubscribe_html: Gallwch chi ddad-danysgrifio o'r drafodaeth yn %{unsubscribeurl}
message_notification:
subject: '[OpenStreetMap] %{message_title}'
hi: Helo %{to_user},
click_the_link: Os mai chi yw hwn, cliciwch ar y ddolen isod i ailosod eich
cyfrinair.
note_comment_notification:
+ description: 'Nodyn OpenStreetMap #%{id}'
anonymous: Defnyddiwr dienw
greeting: Helo,
commented:
ddiddordeb ynddo'
your_note: Ailysgogodd %{commenter} un o'ch nodiadau map ger %{place}.
your_note_html: Ailysgogodd %{commenter} un o'ch nodiadau map ger %{place}.
- details: Ceir rhagor o fanylion am y nodyn ar %{url}.
- details_html: Ceir rhagor o fanylion am y nodyn ar %{url}.
+ details: 'Ateb neu ddysgu mwy am y nodyn: %{url}.'
+ details_html: 'Ateb neu ddysgu mwy am y nodyn: %{url}.'
changeset_comment_notification:
description: 'Grŵp newid OpenStreetMap #%{id}'
hi: Helo %{to_user},
partial_changeset_with_comment: gyda sylw '%{changeset_comment}'
partial_changeset_with_comment_html: gyda sylw '%{changeset_comment}'
partial_changeset_without_comment: dim sylw
- details: Ceir rhagor o fanylion am y grŵp newid ar %{url}.
- details_html: Ceir rhagor o fanylion am y grŵp newid ar %{url}.
+ details: 'Ateb neu ddysgu mwy am y grŵp newid: %{url}.'
+ details_html: 'Ateb neu ddysgu mwy am y grŵp newid: %{url}.'
confirmations:
confirm:
heading: Gwiriwch eich e-byst!
new:
title: Mewngofnodi
tab_title: Mewngofnodi
+ login_to_authorize_html: Mewngofnodwch i OpenStreetMap i gael mynediad i %{client_app_name}.
email or username: Cyfeiriad E-Bost neu Enw Defnyddiwr
password: Cyfrinair
remember: Cofiwch fi
lost password link: Wedi anghofio eich cyfrinair?
login_button: Mewngofnodi
register now: Cofrestru nawr
- with external: 'Fel arall, defnyddiwch drydydd parti i fewngofnodi:'
+ with external: neu fewngofnodi gyda thrydydd parti
+ or: neu
auth failure: Mae'n ddrwg gennym, ni ellir mewngofnodi gyda'r manylion hynny.
destroy:
title: Allgofnodi
contributors_fr_credit_html: '%{france}: Cynhwysir data gan Direction Générale
des Impôts.'
contributors_fr_france: Ffrainc
+ contributors_hr_croatia: Croatia
contributors_nl_credit_html: '%{netherlands}: Cynhwysir data © AND, 2007
(%{and_link})'
contributors_nl_netherlands: Iseldiroedd
trademarks_1_1_trademark_policy: Polisi Nod Masnach
index:
js_2: Mae OpenStreetMap yn defnyddio JavaScript ar gyfer ei fap llithrig.
- permalink: Dolen barhaol
- shortlink: Dolen fer
- createnote: Ychwanegu nodyn
license:
copyright: Hawlfraint OpenStreetMap a chyfranwyr, dan drwydded agored
edit:
identifiable: CANFYDDADWY
private: PREIFAT
trackable: OLRHAINADWY
+ details_with_tags_html: '%{time_ago} gan %{user} yn %{tags}'
+ details_without_tags_html: '%{time_ago} gan %{user}'
index:
public_traces: Arllwybrau GPS Cyhoeddus
my_gps_traces: Fy Arllwybrau GPS
description:
description_without_count: Ffeil GPX gan %{user}
application:
+ basic_auth_disabled: 'Mae Dilysiad Sylfaenol HTTP wedi''i analluogi: %{link}'
+ oauth_10a_disabled: 'Analluogir OAuth 1.0 a 1.0a: %{link}'
require_admin:
not_an_admin: Mae rhaid ichi fod yn weinyddwr i gyflawni'r weithred honno.
settings_menu:
muted_users: Defnyddwyr ag Anwybyddwyd
auth_providers:
openid_logo_alt: Mewngofnodi gydag OpenID
+ openid_login_button: Parhau
openid:
title: Mewngofnodi ag OpenID
alt: Mewngofnodi ag URL OpenID
title: Mewngofnodi â Facebook
alt: Mewngofnodi â Chyfrif Facebook
microsoft:
- title: Mewngofnodi gyda Microsoft
- alt: Mewngofnodi gyda Chyfrif Microsoft
+ title: Mewngofnodi â Microsoft
+ alt: Mewngofnodi â Chyfrif Microsoft
github:
title: Mewngofnodi â GitHub
alt: Mewngofnodi â Chyfrif GitHub
users:
new:
title: Cofrestru
+ tab_title: Cofrestru
+ signup_to_authorize_html: Cofrestrwch gydag OpenStreetMap i gael mynediad at
+ %{client_app_name}.
support: cymorth
about:
- header: Rhydd ac agored
+ header: Rhydd a golygadwy.
+ paragraph_2: Cofrestrwch i ddechrau cyfrannu.
+ welcome: Croeso i OpenStreetMap
display name description: Eich enw defnyddiwr cyhoeddus. Gallwch newid hyn yn
nes ymlaen yn eich dewisiadau.
+ tou: telerau defnydd
+ contributor_terms: thelerau cyfranwyr
external auth: 'Dilysu Trydydd Parti:'
continue: Cofrestru
terms accepted: Diolch am dderbyn telerau newydd cyfranwyr!
privacy_policy: polisi preifatrwydd
- use external auth: Fel arall, defnyddiwch drydydd parti i fewngofnodi
+ consider_pd: parth cyhoeddus
+ or: neu
+ use external auth: neu gofrestru gyda thrydydd parti
terms:
title: Telerau
heading: Telerau
remove as friend: Dad-ffrindio
add as friend: Ychwanegu ffrind
mapper since: 'Yn mapio ers:'
+ last map edit: 'Golygiad map diwethaf:'
uid: 'ID Defnyddiwr:'
ct status: 'Telerau cyfrannwr:'
ct undecided: Heb Benderfynu
unknown_error: Methodd y dilysu
user_role:
grant:
+ title: Cadarnhau rhoi rôl
+ heading: Cadarnhau rhoi rôl
confirm: Cadarnhau
revoke:
+ title: Cadarnhau dirymu rôl
+ heading: Cadarnhau dirymu rôl
confirm: Cadarnhau
user_blocks:
not_found:
revoke:
revoke: Dad-flocio!
revoke_all:
+ empty: Nid oes gan %{name} flociau gweithredol.
active_blocks:
zero: '%{count} blociau cyfredol.'
one: '%{count} %{count} bloc cyfredol.'
revoke: Dad-flocio!
helper:
time_future_html: Yn dod i ben mewn %{time}.
+ until_login: Gweithredol hyd nes bod y defnyddiwr yn mewngofnodi.
time_past_html: Wedi dod i ben %{time} yn ôl.
block_duration:
hours:
title: Blociau gan %{name}
heading_html: Rhestr Blociau gan %{name}
show:
+ heading_html: '%{block_on} a flociwyd gan %{block_by}'
created: 'Crëwyd:'
duration: 'Cyfnod:'
status: 'Statws:'
reason: Rheswm dros flocio
status: Statws
revoker_name: Dirymwyd gan
+ older: Blociau Hŷn
+ newer: Blociau Diweddarach
+ navigation:
+ all_blocks: Pob Bloc
+ blocks_on_me: Blociau arnaf i
+ blocks_on_user: Blociau ar %{user}
+ blocks_by_me: Blociau gennyf i
+ blocks_by_user: Blociau gan %{user}
+ block: 'Bloc #%{id}'
user_mutes:
index:
title: Defnyddwyr ag Anwybyddwyd
index:
title: Nodiadau ag agorwyd neu y gwnaed sylw arnynt gan %{user}
heading: Nodiadau %{user}
- subheading_html: Nodiadau ag %{submitted} neu y %{commented} arnynt gan %{user}
- subheading_submitted: cyflwynwyd
- subheading_commented: rhoddwyd sylw
+ subheading_html: Nodiadau %{submitted} neu %{commented} arnynt gan %{user}
+ subheading_submitted: a gyflwynwyd
+ subheading_commented: y gwnaed sylw
no_notes: Dim nodiadau
id: Id
creator: Crëwr
description: Disgrifiad
- created_at: Crëwyd am
+ created_at: Crëwyd
last_changed: Newidiwyd ddiwethaf
show:
title: 'Nodyn: %{id}'
intro: Ydych chi wedi sylwi ar gamgymeriad neu rywbeth sydd ar goll? Rhowch
wybod i fapwyr eraill fel y gallwn ei ddatrys. Symudwch y marciwr i'r safle
cywir ac ysgrifennwch nodyn i esbonio'r broblem.
+ anonymous_warning_html: Nid ydych chi wedi mewngofnodi. %{log_in} neu %{sign_up}
+ os ydych chi eisiau derbyn diweddariadau am eich nodyn.
+ anonymous_warning_log_in: Mewngofnodwch
+ anonymous_warning_sign_up: gofrestrwch
advice: Mae eich nodyn yn gyhoeddus a gellid ei ddefnyddio i ddiweddaru'r map,
felly peidiwch ag ysgrifennu gwybodaeth bersonol, na gwybodaeth o fapiau hawlfreintiedig
neu gyfeiriaduron.
map_data_zoom_in_tooltip: Chwyddwch mewn i weld data'r map
queryfeature_tooltip: Manylion nodweddion
queryfeature_disabled_tooltip: Chwyddwch i mewn i gael manylion nodweddion
- changesets:
- show:
- comment: Sylw
- subscribe: Tanysgrifio
- unsubscribe: Dad-danysgrifio
- hide_comment: cuddio
- unhide_comment: datguddio
directions:
ascend: Esgyn
engines:
offramp_right: Cymerwch y ramp ar y dde
offramp_right_with_exit: Cymerwch allanfa %{exit} ar y dde
offramp_right_with_exit_name: Cymerwch allanfa %{exit} ar y dde i %{name}
+ offramp_right_with_name: Cymerwch y ramp ar y dde i %{name}
+ offramp_right_with_directions: Cymerwch y ramp ar y dde tuag at %{directions}
+ offramp_right_with_name_directions: Cymerwch y ramp ar y dde i %{name}, tuag
+ at %{directions}
+ onramp_right_without_exit: Trowch i'r dde ar y ramp i %{name}
+ onramp_right_with_directions: Trowch i'r dde ar y ramp tuag at %{directions}
merge_right_without_exit: Cyfunwch i'r dde ar %{name}
turn_right_without_exit: Trowch i'r dde ar %{name}
sharp_right_without_exit: Siarp i'r dde ar %{name}
join_discussion: Log på for at deltage i diskussionen
still_open: Ændringssæt er stadig åben - diskussion vil åbne når ændringssættet
lukkes.
+ subscribe: Abonnér
+ unsubscribe: Afmeld
comment_by_html: Kommentar fra %{user} %{time_ago}
hidden_comment_by_html: Skjult kommentar fra %{user} %{time_ago}
+ hide_comment: skjul
+ unhide_comment: fjern skjul
+ comment: Kommenter
changesetxml: XML for ændringssæt
osmchangexml: XML for osmChange
paging_nav:
all:
title: OpenStreetMap-blogindlæg
description: Seneste blogindlæg fra brugere af OpenStreetMap
- comments:
+ subscribe:
+ button: Abonner på diskussion
+ unsubscribe:
+ heading: Vil du afmelde følgende dagbogsindlægsdiskussion?
+ diary_comments:
+ index:
title: Kommentarer til blogindlæg tilføjet af %{user}
heading: '%{user}s kommentarer til blogindlæg'
subheading_html: Kommentarer til blogindlæg tilføjet af %{user}
comment: Kommentar
newer_comments: Nyere kommentarer
older_comments: Ældre kommentarer
- subscribe:
- button: Abonner på diskussion
- unsubscribe:
- heading: Vil du afmelde følgende dagbogsindlægsdiskussion?
doorkeeper:
errors:
messages:
js_1: Du bruger enten en browser som ikke understøtter Javascript, eller du
har deaktiveret Javascript.
js_2: OpenStreetMap bruger JavaScript til det interaktive kort.
- permalink: Permalink
- shortlink: Kort link
- createnote: Tilføj en bemærkning
license:
copyright: Ophavsret tilhører OpenStreetMap og bidragsydere, under en åben
licens
queryfeature_tooltip: Find kortobjekter
queryfeature_disabled_tooltip: Zoom ind for at finde kortobjekter
embed_html_disabled: HTML-indlejring er ikke tilgængelig for dette kortlag
- changesets:
- show:
- comment: Kommenter
- subscribe: Abonnér
- unsubscribe: Afmeld
- hide_comment: skjul
- unhide_comment: fjern skjul
edit_help: Flyt kortet og zoom ind på et sted, du vil redigere, og klik så her.
directions:
ascend: Stigning
# Author: MarkusHD
# Author: McDutchie
# Author: Mcandri13
+# Author: Mcliquid
# Author: Metalhead64
# Author: Michi
# Author: Milet
join_discussion: Anmelden, um mitzudiskutieren
still_open: Der Änderungssatz ist noch offen. Die Diskussion wird eröffnet,
sobald der Änderungssatz geschlossen ist.
+ subscribe: Abonnieren
+ unsubscribe: Abbestellen
comment_by_html: Kommentar von %{user} %{time_ago}
hidden_comment_by_html: Versteckter Kommentar von %{user} %{time_ago}
+ hide_comment: verstecken
+ unhide_comment: einblenden
+ comment: Kommentieren
changesetxml: Änderungssatz-XML
osmchangexml: osmChange-XML
paging_nav:
title: Blog von %{user} | %{title}
user_title: Blog von %{user}
discussion: Diskussion
+ subscribe: Abonnieren
+ unsubscribe: Abbestellen
leave_a_comment: Schreibe einen Kommentar
login_to_leave_a_comment_html: '%{login_link}, um einen Kommentar zu schreiben'
login: Anmelden
all:
title: OpenStreetMap Blogbeiträge
description: Neueste Blogeinträge von OpenStreetMap-Nutzern
- comments:
+ subscribe:
+ heading: Folgende Tagebucheintragsdiskussion abonnieren?
+ button: Diskussion abonnieren
+ unsubscribe:
+ heading: Von der folgenden Tagebucheintragsdiskussion abmelden?
+ button: Von der Diskussion abmelden
+ diary_comments:
+ index:
title: Tagebuch-Kommentare hinzugefügt von %{user}
heading: '%{user}s Tagebuch-Kommentare'
subheading_html: Tagebuch-Kommentare hinzugefügt von %{user}
comment: Kommentar
newer_comments: Neuere Kommentare
older_comments: Ältere Kommentare
- subscribe:
- heading: Folgende Tagebucheintragsdiskussion abonnieren?
- button: Diskussion abonnieren
- unsubscribe:
- heading: Von der folgenden Tagebucheintragsdiskussion abmelden?
- button: Von der Diskussion abmelden
doorkeeper:
errors:
messages:
contact_the_community_html: Bitte nimm %{contact_link} mit der OpenStreetMap-Community
auf, wenn du einen defekten Link / Fehler gefunden hast. Notiere dir die genaue
URL deiner Anfrage.
+ bad_request:
+ title: Ungültige Anfrage
+ description: Die angeforderte Operation auf dem OpenStreetMap-Server ist ungültig
+ (HTTP 400).
forbidden:
title: Verboten
description: Die von dir angeforderte Aktion auf dem OpenStreetMap-Server ist
den du kommentiert hattest, reaktivert.'
commented_note_html: '%{commenter} hat einen Hinweis in der Nähe von %{place},
den du kommentiert hattest, reaktivert.'
- details: Weitere Details über den Hinweis findest du unter %{url}.
- details_html: Weitere Details über den Hinweis findest du unter %{url}.
+ details: Antworte oder erfahre mehr über die Notiz unter %{url}.
+ details_html: Antworte oder erfahre mehr über die Notiz unter %{url}.
changeset_comment_notification:
description: 'OpenStreetMap-Änderungssatz #%{id}'
hi: Hallo %{to_user},
partial_changeset_with_comment: mit der Bemerkung „%{changeset_comment}“
partial_changeset_with_comment_html: mit der Bemerkung „%{changeset_comment}“
partial_changeset_without_comment: ohne Kommentar
- details: Weitere Details über den Änderungssatz können gefunden werden unter
- %{url}.
- details_html: Weitere Details über den Änderungssatz findest Du unter %{url}.
+ details: Antworte oder erfahre mehr über den Änderungssatz unter %{url}.
+ details_html: Antworte oder erfahre mehr über den Änderungssatz unter %{url}.
unsubscribe: Du kannst dich auf %{url} von den Benachrichtigungen dieses Änderungssatzes
abmelden.
unsubscribe_html: Du kannst dich auf %{url} von den Benachrichtigungen dieses
new:
title: Anmelden
tab_title: Anmelden
+ login_to_authorize_html: Melde dich bei OpenStreetMap an, um auf %{client_app_name}
+ zuzugreifen.
email or username: E-Mail-Adresse oder Benutzername
password: Passwort
remember: Anmeldedaten merken
index:
js_1: Dein Browser unterstützt kein JavaScript oder du hast es deaktiviert.
js_2: OpenStreetMap nutzt JavaScript für die Kartendarstellung.
- permalink: Permanentlink
- shortlink: Shortlink
- createnote: Hinweis geben/Fehler melden
license:
copyright: Copyright OpenStreetMap und Mitwirkende, unter einer offenen Lizenz
remote_failed: Der Aufruf des Editors ist fehlgeschlagen. Stelle sicher, dass
other: GPX-Datei mit %{count} Punkten von %{user}
description_without_count: GPX-Datei von %{user}
application:
+ basic_auth_disabled: 'Die HTTP-Basisauthentifizierung ist deaktiviert: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 und 1.0a sind deaktiviert: %{link}'
+ auth_disabled_link: https://wiki.openstreetmap.org/wiki/DE:2024_authentication_update
permission_denied: Du hast keine Berechtigung, um auf diese Aktion zuzugreifen.
require_cookies:
cookies_needed: Es scheint als hättest du Cookies ausgeschaltet. Bitte aktiviere
write_redactions: Kartendaten redigieren
read_email: Lesen der Benutzer-E-Mail-Adresse
skip_authorization: Antrag automatisch genehmigen
+ for_roles:
+ moderator: Diese Berechtigung gilt nur für Aktionen, die nur Moderatoren zur
+ Verfügung stehen.
oauth_clients:
new:
title: Eine neue Anwendung registrieren
erstellen zu lassen - wir werden die Anfrage möglichst schnell bearbeiten.
support: Support
about:
- header: Frei und editierbar
+ header: Frei und editierbar.
paragraph_1: Im Gegensatz zu anderen Karten wird OpenStreetMap vollständig
von Leuten wie dir erstellt und kann von jedem kostenlos repariert, aktualisiert,
heruntergeladen und verwendet werden.
- paragraph_2: Melde dich an, um mit der Mitarbeit zu beginnen. Wir senden dir
- eine E-Mail zur Bestätigung deines Kontos.
+ paragraph_2: Registriere dich, um mit deinem Beitrag zu beginnen.
welcome: Willkommen bei OpenStreetMap
+ duplicate_social_email: Wenn du bereits ein OpenStreetMap-Konto hast und einen
+ Identitätsanbieter eines Drittanbieters verwenden möchtest, melde dich bitte
+ mit deinem Passwort an und ändere die Einstellungen deines Kontos.
display name description: Dein öffentlich angezeigter Benutzername. Er kann
später in den Einstellungen geändert werden.
by_signing_up_html: Mit Ihrer Anmeldung stimmen Sie unseren %{tou_link}, %{privacy_policy_link}
und %{contributor_terms_link} zu.
tou: Nutzungsbedingungen
+ contributor_terms: Bedingungen für Mitwirkende
external auth: 'Drittparteiauthentifikation:'
continue: Registrieren
terms accepted: Vielen Dank, dass du den neuen Bedingungen für Mitwirkende zugestimmt
privacy_policy: Datenschutzrichtlinie
privacy_policy_title: OSMF-Datenschutzrichtlinie einschließlich Abschnitt zu
E-Mail-Adressen
+ consider_pd_html: Ich betrachte meine Beiträge als %{consider_pd_link}.
+ consider_pd: gemeinfrei
or: oder
use external auth: oder melde dich über einen Drittanbieter an
terms:
remove as friend: Freund entfernen
add as friend: Freund hinzufügen
mapper since: 'Mapper seit:'
+ last map edit: 'Letzte Kartenbearbeitung:'
+ no activity yet: Noch keine Aktivität
uid: 'Benutzer-ID:'
ct status: 'Bedingungen für Mitwirkende:'
ct undecided: Unentschlossen
intro: Fehlt etwas oder hast du einen Fehler gefunden? Bitte verschiebe den
Marker auf die exakte Position und gib genaue Hinweise/Informationen an bzw.
beschreibe den Fehler in der Karte möglichst präzise.
+ anonymous_warning_html: Du bist nicht eingeloggt. Bitte %{log_in} oder %{sign_up},
+ wenn du Updates für deine Notiz erhalten möchtest.
+ anonymous_warning_log_in: Anmelden
+ anonymous_warning_sign_up: Registrieren
advice: Deine Meldung ist öffentlich und kann zur Aktualisierung der Karte verwendet
werden. Gib deshalb keine persönlichen oder urheberrechtlich geschützten Informationen
von anderen Karten oder Verzeichnislisten an.
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
- subscribe: Abonnieren
- unsubscribe: Abbestellen
- hide_comment: verstecken
- unhide_comment: einblenden
edit_help: Wähle eine höhere Zoomstufe und verschiebe die Karte an einen Ort,
den du bearbeiten möchtest, und klicke hier.
directions:
new_email: E-postay adresiyo neweh
active: Aktiv
display_name: Nameyo ke Aseno
- description: Şınasiya weci
+ description: Şınasiya Profili
home_lat: 'Verıniye:'
home_lon: Derganiye
languages: Zıwanê tercihi
closed_ago_by_html: Be hetên %{user} ra %{time_ago} kefılia
discussion: Werênayış
join_discussion: Dekewtena vatenayışi rê qeyd bê
+ subscribe: Abone be
+ unsubscribe: Aboneyiye ra veciye
+ hide_comment: bınımne
+ unhide_comment: menımne
+ comment: Mışewre
changesetxml: Vurnayışê peyênê XML
osmchangexml: OsmVurnayışê XML
paging_nav:
location: 'Lokasyon:'
view: Bıvêne
edit: Bıvurne
- comments:
+ diary_comments:
+ index:
post: Rışte
when: Key
comment: Mışewre
copyright:
native:
title: Heqa na pele de
- index:
- permalink: Gıreyo daimi
edit:
user_page_link: pela karberi
export:
transport_map: Xeritay Resnayışi
site:
edit_tooltip: Xeriti timar ke
- changesets:
- show:
- comment: Mışewre
- subscribe: Abone be
- unsubscribe: Aboneyiye ra veciye
- hide_comment: bınımne
- unhide_comment: menımne
directions:
engines:
fossgis_osrm_bike: Bisiklet (OSRM)
belongs_to: Awtor
show:
title: 'Sajźba změnow: %{id}'
+ comment: Reagěrowaś
changesetxml: Sajźbu změnow XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Zapiski dnjownika OpenStreetMap
description: Nejnowše zapiski dnjownika wót wužywarjow OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Powěsć
when: Cas
comment: Komentar
js_1: Pak wužywaš wobglědowak, kótaryž njepódpěra JavaScript, pak sy znjemóžnił
JavaScript.
js_2: OpenStreetMap wužywa JavaScript za suwatu kórtu.
- permalink: Trajny wótkaz
- shortlink: Krotki wótkaz
- createnote: Pokaz pśidaś
license:
copyright: Copyright OpenStreetMap a sobustatkujuce, pód wótewrjoneju licencu
remote_failed: Wobźěłowanje njejo se raźiło - pśeznań se, lěc JOSM jo zacytany
createnote_disabled_tooltip: Powětšyś, aby kórśe pokazku pśidało
map_notes_zoom_in_tooltip: Powětš kórtu, aby pokazki wiźeł
map_data_zoom_in_tooltip: Powětš kórtu, aby daty wiźeł
- changesets:
- show:
- comment: Reagěrowaś
edit_help: Pśesuń kórtu do městna, kótarež coš wobźěłaś, powětš tam a klikni pótom
how.
directions:
# Author: AProdromou
# Author: Aitolos
# Author: Alexstam
+# Author: AntonyFragakis
# Author: Auslaender
# Author: Babispan
# Author: Consta
trace:
tagstring: διαχωρισμένο με κόμμα
user_block:
- reason: Η αιτία αποκλεισμού του χρήστη. Παρακαλώ να είστε όσο το δυνατόν πιο
- ήÏ\81εμοÏ\82/-η και λογικÏ\8cÏ\82/-ή, δίνονÏ\84αÏ\82 Ï\8cÏ\83εÏ\82 Ï\80εÏ\81ιÏ\83Ï\83Ï\8cÏ\84εÏ\81εÏ\82 λεÏ\80Ï\84ομÎÏ\81ειεÏ\82 μÏ\80οÏ\81είÏ\84ε
- για Ï\84ην καÏ\84άÏ\83Ï\84αÏ\83η και Ï\83κεÏ\80Ï\84Ï\8cμενοÏ\82/-η Ï\8cÏ\84ι Ï\84ο μήνÏ\85μα θα είναι δημÏ\8cÏ\83ια οÏ\81αÏ\84Ï\8c.
- Λάβετε υπόψη σας ότι δεν κατανοούν όλοι οι χρήστες την ορολογία της κοινότητας,
+ reason: Η αιτία φραγής του χρήστη. Παρακαλώ να είστε όσο το δυνατόν πιο ήρεμος/-η
+ και λογικÏ\8cÏ\82/-ή, δίνονÏ\84αÏ\82 Ï\8cÏ\83εÏ\82 Ï\80εÏ\81ιÏ\83Ï\83Ï\8cÏ\84εÏ\81εÏ\82 λεÏ\80Ï\84ομÎÏ\81ειεÏ\82 μÏ\80οÏ\81είÏ\84ε για Ï\84ην
+ καÏ\84άÏ\83Ï\84αÏ\83η και Ï\83κεÏ\80Ï\84Ï\8cμενοÏ\82/-η Ï\8cÏ\84ι Ï\84ο μήνÏ\85μα θα είναι δημÏ\8cÏ\83ια οÏ\81αÏ\84Ï\8c. Î\9bάβεÏ\84ε
+ υπόψη σας ότι δεν κατανοούν όλοι οι χρήστες την ορολογία της κοινότητας,
γι' αυτό προσπαθήστε να χρησιμοποιήσετε απλούς και κατανοητούς όρους.
needs_view: Πρέπει ο χρήστης να συνδεθεί προτού εκκαθαριστεί αυτή η φραγή;
user:
deleted_ago_by_html: Διαγράφηκε %{time_ago} από %{user}
edited_ago_by_html: Επεξεργάστηκε %{time_ago} από %{user}
version: Έκδοση
+ redacted_version: Επανεξεργασμένη έκδοση
in_changeset: Ομάδα αλλαγών
anonymous: ανώνυμος
no_comment: (χωρίς σχόλιο)
other: '%{count} διαδρομές'
download_xml: Λήψη XML
view_history: Προβολή ιστορικού
+ view_unredacted_history: Προβολή μη τροποποιημένου ιστορικού
view_details: Προβολή λεπτομερειών
+ view_redacted_data: Προβολή αναδιατυπωμένων δεδομένων
+ view_redaction_message: Προβολή μηνύματος διόρθωσης
location: 'Τοποθεσία:'
node:
title_html: 'Κόμβος: %{name}'
join_discussion: Συνδεθείτε για συμμετοχή στη συζήτηση
still_open: Η ομάδα αλλαγών παραμένει σε εκκρεμότητα - η συζήτηση θα ανοίξει
μόλις ολοκληρωθεί η ομάδα αλλαγών.
+ subscribe: Εγγραφείτε ως συνδρομητής
+ unsubscribe: Κατάργηση εγγραφής
comment_by_html: Σχόλιο από %{user} %{time_ago}
hidden_comment_by_html: Κρυφό σχόλιο από %{user} %{time_ago}
+ hide_comment: απόκρυψη
+ unhide_comment: επανεμφάνιση
+ comment: Σχολιάζω
changesetxml: Ομάδας αλλαγών XML
osmchangexml: osmChange XML
paging_nav:
title: Ημερολόγιο του χρήστη %{user} | %{title}
user_title: Ημερολόγιο του χρήστη %{user}
discussion: Συζήτηση
+ subscribe: Εγγραφή
+ unsubscribe: Απεγγραφή
leave_a_comment: Αφήστε σχόλιο
login_to_leave_a_comment_html: '%{login_link} για να αφήσετε ένα σχόλιο'
login: Συνδεθείτε
all:
title: Καταχωρήσεις ημερολογίου OpenStreetMap
description: Πρόσφατες καταχωρήσεις ημερολογίου από χρήστες του OpenStreetMap
- comments:
+ subscribe:
+ heading: Εγγραφή στην ακόλουθη συζήτηση καταχώρισης ημερολογίου;
+ button: Εγγραφείτε στη συζήτηση
+ unsubscribe:
+ heading: Απεγγραφή από την ακόλουθη συζήτηση καταχώρισης ημερολογίου;
+ button: Απεγγραφή από τη συζήτηση
+ diary_comments:
+ index:
title: Σχόλια ημερολογίου που προστέθηκαν από τον χρήστη %{user}
heading: Σχόλια Ημερολογίου %{user}
subheading_html: Σχόλια ημερολογίου που προστέθηκαν από τον χρήστη %{user}
comment: Σχόλιο
newer_comments: Νεότερα σχόλια
older_comments: Παλαιότερα σχόλια
- subscribe:
- heading: Εγγραφή στην ακόλουθη συζήτηση καταχώρισης ημερολογίου;
- button: Εγγραφείτε στη συζήτηση
- unsubscribe:
- heading: Απεγγραφή από την ακόλουθη συζήτηση καταχώρισης ημερολογίου;
- button: Απεγγραφή από τη συζήτηση
doorkeeper:
errors:
messages:
errors:
contact:
contact_url_title: Επεξήγηση διαφόρων καναλιών επικοινωνίας
- contact: εÏ\80ικοινÏ\89νία
+ contact: εÏ\80ικοινÏ\89νήÏ\83εÏ\84ε
contact_the_community_html: Μη διστάσετε να %{contact_link} με την κοινότητα
του OpenStreetMap εάν έχετε βρει έναν κατεστραμμένο σύνδεσμο / σφάλμα. Σημειώστε
την ακριβή διεύθυνση URL του αιτήματός σας.
bad_request:
title: Κακό αίτημα
+ description: Η λειτουργία που αιτηθήκατε στον διακομιστή OpenStreetMap δεν είναι
+ έγκυρη (HTTP 400)
forbidden:
title: Απαγορευμένο
description: Η λειτουργία που ζητήσατε στο διακομιστή OpenStreetMap είναι διαθέσιμη
boardwalk: Πεζοδρόμιο
suspension: Κρεμαστή γέφυρα
swing: Αιωρούμενη γέφυρα
- viaduct: Î\9aοιλαδογέφυρα
+ viaduct: Î\9fδογέφυρα
"yes": Γέφυρα
building:
apartment: Διαμέρισμα
Η σημείωση είναι κοντά σε %{place}.
commented_note_html: ο χρήστης %{commenter} έχει επαναενεργοποιήσει μία σημείωση
στον χάρτη την οποία έχετε σχολιάσει. Η σημείωση είναι κοντά στο %{place}.
- details: Περισσότερες λεπτομέρειες σχετικά με τη σημείωση μπορούν να βρεθούν
- στο %{url}.
- details_html: Περισσότερες λεπτομέρειες σχετικά με τη σημείωση μπορούν να βρεθούν
- στο %{url}.
+ details: Απαντήστε ή μάθετε περισσότερα για τη σημείωση στο %{url}.
+ details_html: Απαντήστε ή μάθετε περισσότερα για τη σημείωση στο %{url}.
changeset_comment_notification:
description: 'OpenStreetMap Ομάδα Αλλαγών #%{id}'
hi: Γεια σας, %{to_user},
partial_changeset_with_comment: με το σχόλιο «%{changeset_comment}»
partial_changeset_with_comment_html: με σχόλιο '%{changeset_comment}'
partial_changeset_without_comment: χωρίς σχόλιο
- details: Περισσότερες λεπτομέρειες για την ομάδα αλλαγών μπορούν να βρεθούν
- στο %{url}.
- details_html: Περισσότερες λεπτομέρειες για την ομάδα αλλαγών μπορούν να βρεθούν
- στο %{url}.
+ details: Απαντήστε ή μάθετε περισσότερα σχετικά με το σύνολο αλλαγών στο %{url}.
+ details_html: Απαντήστε ή μάθετε περισσότερα για την ομάδα αλλαγών στο %{url}.
unsubscribe: Μπορείτε να απεγγραφείτε από τις ενημερώσεις αυτής της ομάδας αλλαγών
στο %{url}.
unsubscribe_html: Μπορείτε να απεγγραφείτε από τις ενημερώσεις σε αυτή την ομάδα
new:
title: Σύνδεση
tab_title: Σύνδεση
+ login_to_authorize_html: Συνδεθείτε στο OpenStreetMap για πρόσβαση στο %{client_app_name}.
email or username: Διεύθυνση Ηλ. Ταχυδρομείου ή Όνομα Χρήστη
password: Συνθηματικό
remember: Να με θυμάσαι
js_1: Είτε χρησιμοποιείτε πρόγραμμα περιήγησης που δεν υποστηρίζει JavaScript
ή έχετε απενεργοποιήσει την JavaScript.
js_2: Το OpenStreetMap χρησιμοποιεί JavaScript για το ολισθαίνοντα χάρτη του.
- permalink: Μόνιμος σύνδεσμος
- shortlink: Σύντομος σύνδεσμος
- createnote: Προσθήκη σημείωσης
license:
copyright: Πνευματικά δικαιώματα του OpenStreetMap και των συντακτών του,
υπό ελεύθερη άδεια
other: αρχείο GPX με %{count} σημεία από %{user}
description_without_count: Αρχείο GPX από τον χρήστη %{user}
application:
- auth_disabled_link: https://wiki.openstreetmap.org/wiki/2024_authentication_update
+ basic_auth_disabled: 'Ο Βασικός Έλεγχος Ταυτότητας HTTP είναι απενεργοποιημένος:
+ %{link}'
+ oauth_10a_disabled: 'Τα OAuth 1.0 και 1.0a είναι απενεργοποιημένα: %{link}'
permission_denied: Δεν έχετε τα απαραίτητα δικαιώματα για πρόσβαση σε αυτήν την
ενέργεια
require_cookies:
display name description: Το δημόσια εμφανιζόμενο όνομα χρήστη. Μπορείτε να
το αλλάξετε αργότερα από τις προτιμήσεις.
tou: όροι χρήσης
+ contributor_terms: όρους συνεισφοράς
external auth: 'Έλεγχος ταυτότητας από τρίτο μέρος:'
continue: Εγγραφή
terms accepted: Ευχαριστούμε για την αποδοχή των νέων όρων συνεισφοράς!
privacy_policy: πολιτική απορρήτου
privacy_policy_title: Πολιτική απορρήτου OSMF, συμπεριλαμβανομένης της ενότητας
για τις διευθύνσεις ηλεκτρονικού ταχυδρομείου
+ consider_pd_html: Θεωρώ τις συνεισφορές μου να είναι στο %{consider_pd_link}.
+ consider_pd: κοινό κτήμα
or: ή
use external auth: ή συνδεθείτε μέσω τρίτης υπηρεσίας
terms:
remove as friend: Αφαίρεση Φίλου
add as friend: Προσθήκη Φίλου
mapper since: 'Χαρτογράφος από:'
+ last map edit: 'Τελευταία επεξεργασία χάρτη:'
+ no activity yet: Καμία δραστηριότητα ακόμη
uid: 'Id χρήστη:'
ct status: 'Όροι συνεισφοράς:'
ct undecided: Αναποφάσιστος
reason: Αιτία φραγής
status: Κατάσταση
revoker_name: Ανακλήθηκε από
+ older: Παλαιότερες φραγές
+ newer: Νεότερες φραγές
+ navigation:
+ all_blocks: Όλες οι φραγές
+ blocks_on_me: Φραγές σε μένα
+ blocks_on_user: Φραγές σε %{user}
+ blocks_by_me: Φραγές από μένα
+ blocks_by_user: Φραγές από %{user}
+ block: 'Φραγή #%{id}'
user_mutes:
index:
title: Χρήστες σε Σίγαση
intro: Εντοπίσατε λάθος ή κάτι που λείπει; Πείτε το στους άλλους χαρτογράφους
ώστε να λυθεί το πρόβλημα. Μετακινείστε το δείκτη στη σωστή θέση και γράψτε
μια περιγραφή του προβλήματος ως εξήγηση.
+ anonymous_warning_html: Δεν έχετε συνδεθεί. Παρακαλούμε κάντε %{log_in} ή %{sign_up}
+ αν θέλετε να λαμβάνετε ενημερώσεις για την σημείωσή σας.
+ anonymous_warning_log_in: σύνδεση
+ anonymous_warning_sign_up: εγγραφή
advice: Η σημείωση σας είναι δημόσια και μπορεί να χρησιμοποιηθεί για την ενημέρωση
του χάρτη, γι'αυτό μην προστέθετε προσωπικές πληροφορίες, ή πληροφορίες από
χάρτες που καλύπτονται από πνευματικά δικαιώματα ή καταχωρήσεις καταλόγου.
για διάφορα χαρακτηριστικά
embed_html_disabled: Η ενσωμάτωση HTML δεν είναι διαθέσιμη γι' αυτό το στρώμα
χάρτη
- changesets:
- show:
- comment: Σχολιάζω
- subscribe: Εγγραφείτε ως συνδρομητής
- unsubscribe: Κατάργηση εγγραφής
- hide_comment: απόκρυψη
- unhide_comment: επανεμφάνιση
edit_help: Μετακινήστε το χάρτη και να κάνετε ζουμ σε μια τοποθεσία που θέλετε
να επεξεργαστείτε, στη συνέχεια, κάντε κλικ εδώ.
directions:
join_discussion: Log in to join the discussion
still_open: Changeset still open - discussion will open once the changeset is
closed.
+ subscribe: Subscribe
+ unsubscribe: Unsubscribe
+ hide_comment: hide
+ unhide_comment: unhide
+ comment: Comment
changesetxml: Changeset XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap diary entries
description: Recent diary entries from users of OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Post
when: When
comment: Comment
index:
js_1: You are either using a browser that does not support JavaScript, or you
have disabled JavaScript.
- permalink: Permalink
- shortlink: Shortlink
- createnote: Add a note
license:
copyright: Copyright OpenStreetMap and contributors, under an open licence
remote_failed: Editing failed - make sure JOSM or Merkaartor is loaded and that
map_data_zoom_in_tooltip: Zoom in to see map data
queryfeature_tooltip: Query features
queryfeature_disabled_tooltip: Zoom in to query features
- changesets:
- show:
- comment: Comment
- subscribe: Subscribe
- unsubscribe: Unsubscribe
- hide_comment: hide
- unhide_comment: unhide
edit_help: Move the map and zoom in on a location you want to edit, then click
here.
directions:
discussion: Discussion
join_discussion: "Log in to join the discussion"
still_open: "Changeset still open - discussion will open once the changeset is closed."
+ subscribe: "Subscribe"
+ unsubscribe: "Unsubscribe"
comment_by_html: "Comment from %{user} %{time_ago}"
hidden_comment_by_html: "Hidden comment from %{user} %{time_ago}"
+ hide_comment: "hide"
+ unhide_comment: "unhide"
+ comment: "Comment"
changesetxml: "Changeset XML"
osmchangexml: "osmChange XML"
paging_nav:
title: "%{user}'s Diary | %{title}"
user_title: "%{user}'s Diary"
discussion: "Discussion"
+ subscribe: "Subscribe"
+ unsubscribe: "Unsubscribe"
leave_a_comment: "Leave a comment"
login_to_leave_a_comment_html: "%{login_link} to leave a comment"
login: "Log in"
all:
title: "OpenStreetMap diary entries"
description: "Recent diary entries from users of OpenStreetMap"
- comments:
+ subscribe:
+ heading: Subscribe to the following diary entry discussion?
+ button: Subscribe to discussion
+ unsubscribe:
+ heading: Unsubscribe from the following diary entry discussion?
+ button: Unsubscribe from discussion
+ diary_comments:
+ index:
title: "Diary Comments added by %{user}"
heading: "%{user}'s Diary Comments"
subheading_html: "Diary Comments added by %{user}"
comment: Comment
newer_comments: "Newer Comments"
older_comments: "Older Comments"
- subscribe:
- heading: Subscribe to the following diary entry discussion?
- button: Subscribe to discussion
- unsubscribe:
- heading: Unsubscribe from the following diary entry discussion?
- button: Unsubscribe from discussion
doorkeeper:
errors:
messages:
your_note_html: "%{commenter} has reactivated one of your map notes near %{place}."
commented_note: "%{commenter} has reactivated a map note you have commented on. The note is near %{place}."
commented_note_html: "%{commenter} has reactivated a map note you have commented on. The note is near %{place}."
- details: "More details about the note can be found at %{url}."
- details_html: "More details about the note can be found at %{url}."
+ details: "Reply or learn more about the note at %{url}."
+ details_html: "Reply or learn more about the note at %{url}."
changeset_comment_notification:
description: "OpenStreetMap Changeset #%{id}"
hi: "Hi %{to_user},"
partial_changeset_with_comment: "with comment '%{changeset_comment}'"
partial_changeset_with_comment_html: "with comment '%{changeset_comment}'"
partial_changeset_without_comment: "without comment"
- details: "More details about the changeset can be found at %{url}."
- details_html: "More details about the changeset can be found at %{url}."
+ details: "Reply or learn more about the changeset at %{url}."
+ details_html: "Reply or learn more about the changeset at %{url}."
unsubscribe: "You can unsubscribe from updates to this changeset at %{url}."
unsubscribe_html: "You can unsubscribe from updates to this changeset at %{url}."
confirmations:
legal_2_2_registered_trademarks_url: https://wiki.osmfoundation.org/wiki/Trademark_Policy
partners_title: Partners
copyright:
+ title: Copyright and License
foreign:
title: About this translation
html: In the event of a conflict between this translated page and %{english_original_link}, the English page shall take precedence
native_link: THIS_LANGUAGE_NAME_HERE version
mapping_link: start mapping
legal_babble:
- title_html: Copyright and License
introduction_1_html: |
OpenStreetMap%{registered_trademark_link} is %{open_data}, licensed under the
%{odc_odbl_link} (ODbL) by the %{osm_foundation_link} (OSMF).
index:
js_1: "You are either using a browser that does not support JavaScript, or you have disabled JavaScript."
js_2: "OpenStreetMap uses JavaScript for its slippy map."
- permalink: Permalink
- shortlink: Shortlink
- createnote: Add a note
license:
copyright: "Copyright OpenStreetMap and contributors, under an open license"
license_url: "https://openstreetmap.org/copyright"
remove as friend: Unfriend
add as friend: Add Friend
mapper since: "Mapper since:"
+ last map edit: "Last map edit:"
+ no activity yet: "No activity yet"
uid: "User id:"
ct status: "Contributor terms:"
ct undecided: Undecided
queryfeature_tooltip: Query features
queryfeature_disabled_tooltip: Zoom in to query features
embed_html_disabled: HTML embedding is not available for this map layer
- changesets:
- show:
- comment: "Comment"
- subscribe: "Subscribe"
- unsubscribe: "Unsubscribe"
- hide_comment: "hide"
- unhide_comment: "unhide"
edit_help: Move the map and zoom in on a location you want to edit, then click here.
directions:
ascend: "Ascend"
join_discussion: Ensalutu por aliĝi al la diskuto
still_open: Ŝanĝaro plue malfermita - diskuto estos malfermita ekde kiam la
ŝanĝaro estos fermita.
+ subscribe: Observi
+ unsubscribe: Malobservi
comment_by_html: Komento de %{time_ago} de %{user}
hidden_comment_by_html: Kaŝita komento de %{time_ago} de %{user}
+ hide_comment: kaŝi
+ unhide_comment: malkaŝi
+ comment: Komenti
changesetxml: Ŝanĝaro XML
osmchangexml: osmŜanĝo XML
paging_nav:
title: Taglibro de %{user} | %{title}
user_title: Taglibro de %{user}
discussion: Diskuto
+ subscribe: Observi
+ unsubscribe: Malobservi
leave_a_comment: Komenti
login_to_leave_a_comment_html: '%{login_link} por aldoni komenton'
login: Ensaluti
all:
title: OpenStreetMap taglibraj afiŝoj
description: Lastaj taglibraj afiŝoj de OpenStreetMap-uzantoj
- comments:
+ subscribe:
+ heading: Ĉu aboni diskuton pri tiu ĉi taglibra afiŝo?
+ button: Aboni diskuton
+ unsubscribe:
+ heading: Ĉu malaboni diskuton pri tiu ĉi taglibra afiŝo?
+ button: Malaboni diskuton
+ diary_comments:
+ index:
title: Komentoj de %{user} sub taglibraj afiŝoj
heading: Komentoj de %{user}
subheading_html: Komentoj de %{user} sub taglibraj afiŝoj
comment: Komento
newer_comments: Pli novaj komentoj
older_comments: Pli malnovaj komentoj
- subscribe:
- heading: Ĉu aboni diskuton pri tiu ĉi taglibra afiŝo?
- button: Aboni diskuton
- unsubscribe:
- heading: Ĉu malaboni diskuton pri tiu ĉi taglibra afiŝo?
- button: Malaboni diskuton
doorkeeper:
errors:
messages:
La rimarko troviĝis ĉe %{place}.'
commented_note_html: '%{commenter} remalfermis rimarkon sur la mapo pri kiu
vi interesiĝis. La rimarko troviĝis ĉe %{place}.'
- details: Pli da detaloj pri la rimarko, vi povas trovi je %{url}.
- details_html: Pli da detaloj pri la noto troveblas ĉe %{url}.
+ details: Vi povas respondi aŭ sciiĝi pli pri la rimarko ĉe %{url}.
+ details_html: Vi povas respondi aŭ sciiĝi pli pri la rimarko ĉe %{url}.
changeset_comment_notification:
description: 'OpenStreetMap: ŝanĝaro %{id}'
hi: Saluton %{to_user},
partial_changeset_with_comment: kun komento '%{changeset_comment}'
partial_changeset_with_comment_html: kun komento '%{changeset_comment}'
partial_changeset_without_comment: sen komento
- details: Pli da detaloj pri la ŝanĝaro povas esti trovita ĉe %{url}.
- details_html: Pli da detaloj pri la ŝanĝaro povas esti trovita ĉe %{url}.
+ details: Vi povas respondi aŭ sciiĝi pli pri la ŝanĝaro ĉe %{url}.
+ details_html: Vi povas respondi aŭ sciiĝi pli pri la ŝanĝaro ĉe %{url}.
unsubscribe: Vi povas malaboni ĝisdatigojn pri tiu ĉi ŝanĝaro ĉe %{url}.
unsubscribe_html: Vi povas malaboni ĝisdatigojn pri tiu ĉi ŝanĝaro ĉe %{url}.
confirmations:
passwords:
new:
title: Perdita pasvorto
- heading: Forgesis vian pasvorton ?
+ heading: Ĉu vi forgesis pasvorton?
email address: Retpoŝta adreso
new password button: Nuligi pasvorton
help_text: Entajpu la retpoŝtan adreson kiun vi uzis por ensaluto, ni sendos
lost password link: Ĉu vi forgesis vian pasvorton?
login_button: Ensaluti
register now: Registriĝi
- with external: aŭ ensalutu uzante eksteran liveranton
+ with external: 'ensaluti per ekstera liveranto:'
or: aŭ
auth failure: Bedaŭrinde ne povas ensaluti kun ĉi tiuj informoj.
destroy:
index:
js_1: Vi aŭ uzas foliumilon, kiu ne subtenas Ĝavoskripton, aŭ vi havas ĝin malaktivan.
js_2: OpensStreetMap uzas Ĝavoskripton por montri ŝoveblan mapon.
- permalink: Konstanta ligilo
- shortlink: Mallonga ligilo
- createnote: Aldoni rimarkon
license:
copyright: Aŭtorrajtoj al OpenStreetMap kaj kontribuintoj, laŭ malferma permesilo
remote_failed: Redaktado malsukcesis - certigu ĉu JOSM aŭ Merkaartor estas startigita
consider_pd_html: Mi konsideras ke miaj kontribuoj estu eldonitaj en la %{consider_pd_link}.
consider_pd: publika havaĵo
or: aŭ
- use external auth: aŭ registriĝu uzante eksteran liveranton
+ use external auth: 'registriĝi per ekstera liveranto:'
terms:
title: Kondiĉoj
heading: Kondiĉoj
remove as friend: Eksamikigi
add as friend: Aldoni kiel amikon
mapper since: 'Mapigisto ekde:'
+ last map edit: 'Antaŭa map-redakto:'
+ no activity yet: ankoraŭ neniu agado
uid: 'Identigilo de uzanto:'
ct status: 'Interkonsento pri kontribuado:'
ct undecided: ne decidita
queryfeature_tooltip: Montri informojn pri objekto
queryfeature_disabled_tooltip: Pligrandigu por montri informojn pri objektoj
embed_html_disabled: HTML-enigo ne haveblas por ĉi tiu mapo-tavolo
- changesets:
- show:
- comment: Komenti
- subscribe: Observi
- unsubscribe: Malobservi
- hide_comment: kaŝi
- unhide_comment: malkaŝi
edit_help: Movu la mapon kaj pligrandigu al loko kiun vi volas redakti, kaj poste
alklaku tie ĉi.
directions:
# Author: DannyS712
# Author: DarkGames26
# Author: Dcapillae
+# Author: Descubriunaisla
# Author: Destinid10 2
# Author: Dgstranz
# Author: Egofer
join_discussion: Inicia sesión para unirte a la discusión
still_open: El conjunto de cambios sigue abierto - la discusión se abrirá una
vez se cierre el conjunto de cambios.
+ subscribe: Suscribirse
+ unsubscribe: Desuscribirse
comment_by_html: Comentario de %{user} %{time_ago}
hidden_comment_by_html: Comentario ocultado por %{user} %{time_ago}
+ hide_comment: ocultar
+ unhide_comment: mostrar
+ comment: Comentar
changesetxml: XML del conjunto de cambios
osmchangexml: XML en formato osmChange
paging_nav:
title: Diario de %{user} | %{title}
user_title: Diario de %{user}
discussion: Discusión
+ subscribe: Suscribirse
+ unsubscribe: Desuscríbete
leave_a_comment: Dejar un comentario
login_to_leave_a_comment_html: '%{login_link} para dejar un comentario'
login: Iniciar sesión
all:
title: Entradas en el diario de OpenStreetMap
description: Entradas recientes en los diarios de los usuarios de OpenStreetMap
- comments:
+ subscribe:
+ heading: ¿Deseas suscribirte a la siguiente discusión sobre la entrada al diario?
+ button: Suscribirse a la discusión
+ unsubscribe:
+ heading: ¿Deseas desuscribirte de la siguiente discusión de entrada de diario?
+ button: Desuscribirse de la discusión
+ diary_comments:
+ index:
title: Comentarios de diario añadidos por %{user}
heading: Comentarios del diario de %{user}
subheading_html: Comentarios del diario añadidos por %{user}
comment: Comentario
newer_comments: Comentarios más recientes
older_comments: Comentarios más antiguos
- subscribe:
- heading: ¿Deseas suscribirte a la siguiente discusión sobre la entrada al diario?
- button: Suscribirse a la discusión
- unsubscribe:
- heading: ¿Deseas desuscribirte de la siguiente discusión de entrada de diario?
- button: Desuscribirse de la discusión
doorkeeper:
errors:
messages:
contact_the_community_html: Siéntete libre de %{contact_link} con la comunidad
de OpenStreetMap si has encontrado un enlace roto o un error. Toma nota de
la URL exacta de tu solicitud.
+ bad_request:
+ title: Mala solicitud
+ description: La operación que solicitaste en el servidor de OpenStreetMap no
+ es valida (HTTP 400)
forbidden:
title: Prohibido
description: La operación que se solicitó al servidor de OpenStreetMap solo
La nota está cerca de %{place}.'
commented_note_html: '%{commenter} ha reactivado un nota del mapa en la que
has comentado. La nota está cerca de %{place}.'
- details: Más detalles acerca de la nota pueden encontrarse en %{url}.
+ details: Responde o conoce más acerca de la nota en %{url}.
details_html: Puedes encontrar más detalles acerca de la nota en %{url}.
changeset_comment_notification:
description: 'Conjunto de cambios de OpenStreetMap #%{id}'
partial_changeset_with_comment: con el comentario '%{changeset_comment}'
partial_changeset_with_comment_html: con el comentario '%{changeset_comment}'
partial_changeset_without_comment: sin comentarios
- details: Puedes encontrar más detalles sobre el conjunto de cambios en %{url}.
- details_html: Puedes encontrar más detalles sobre el conjunto de cambios en
- %{url}.
+ details: Responde o conoce más sobre el conjunto de cambios en %{url}.
+ details_html: Responde o conoce más sobre el conjunto de cambios en %{url}.
unsubscribe: Puedes desinscrirte de las actualizaciones de este conjunto de
cambios en %{url}.
unsubscribe_html: Puedes desinscrirte de las actualizaciones de este conjunto
index:
js_1: Estás usando un navegador que no soporta o tiene desactivado JavaScript
js_2: OpenStreetMap utiliza JavaScript para mostrar su mapa deslizable.
- permalink: Enlace permanente
- shortlink: Enlace corto
- createnote: Añadir una nota
license:
copyright: Derechos de autor de OpenStreetMap y colaboradores, bajo una licencia
abierta
other: Archivo GPX con %{count} puntos de %{user}
description_without_count: Archivo GPX de %{user}
application:
+ basic_auth_disabled: 'La autenticación básica de HTTPS está desactivada: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 y 1.0a están desactivados: %{link}'
permission_denied: No tienes permisos para realizar esa acción
require_cookies:
cookies_needed: Parece que tienes las cookies deshabilitadas. Habilita las cookies
remove as friend: Eliminar como amigo
add as friend: Añadir como amigo
mapper since: 'Mapeando desde:'
+ last map edit: Última edición del mapa
+ no activity yet: Sin actividad todavía
uid: 'Identificación de usuario:'
ct status: 'Términos de Colaborador:'
ct undecided: Indeciso
intro: ¿Detectaste un error o falta algo? Informa a otros mapeadores para que
podamos corregirlo. Mueve el marcador a la posición correcta y escribe una
nota para explicar el problema.
+ anonymous_warning_html: No has iniciado sesión. Por favor %{log_in} o %{sign_up}
+ si tu quieres recibir actualizaciones de tu nota.
+ anonymous_warning_log_in: inicia sesión
+ anonymous_warning_sign_up: crea una cuenta
advice: Tu nota será pública y podría utilizarse para actualizar el mapa, así
que no des información personal ni datos provenientes de mapas o catálogos
protegidos por derechos de autor.
queryfeature_disabled_tooltip: Acercar para consultar elementos
embed_html_disabled: La incrustación de HTML no está disponible para esta capa
de mapa
- changesets:
- show:
- comment: Comentar
- subscribe: Suscribirse
- unsubscribe: Cancelar suscripción
- hide_comment: ocultar
- unhide_comment: mostrar
edit_help: Mueve el mapa el mapa y acerca a una ubicación que desees editar, luego
haz clic aquí.
directions:
diary_entry:
user: Kasutaja
title: Teema
- body: Päevikusissekanne
+ body: Kehatekst
latitude: Laius
longitude: Pikkus
language_code: Keel
join_discussion: Logi sisse, kui soovid arutelus osaleda
still_open: Muudatuskogum on veel avatud. Arutelu avaneb siis, kui muudatuskogum
on suletud.
+ subscribe: Telli
+ unsubscribe: Lõpeta tellimus
comment_by_html: Kommentaar kasutajalt %{user} %{time_ago}
hidden_comment_by_html: Peidetud kommentaar kasutajalt %{user} %{time_ago}
+ hide_comment: peida
+ unhide_comment: nähtavale
+ comment: Kommenteeri
changesetxml: Muudatuskogumi XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMapi päevikusissekanded
description: Hiljutised OpenStreetMapi kasutajate päevikusissekanded
- comments:
+ subscribe:
+ heading: Kas soovid selle päeviku sissekande arutelu tellida?
+ button: Telli arutelu
+ unsubscribe:
+ heading: Kas soovid selle päeviku sissekande arutelu tellimusest loobuda?
+ button: Loobu arutelu jälgimisest
+ diary_comments:
+ index:
title: Kasutaja %{user} lisatud päeviku kommentaarid
heading: Kasutaja %{user} päeviku kommentaarid
subheading_html: Päeviku kommentaarid, mille on lisanud kasutaja %{user}
comment: Kommentaar
newer_comments: Uuemad kommentaarid
older_comments: Vanemad kommentaarid
- subscribe:
- heading: Kas soovid selle päeviku sissekande arutelu tellida?
- button: Telli arutelu
- unsubscribe:
- heading: Kas soovid selle päeviku sissekande arutelu tellimusest loobuda?
- button: Loobu arutelu jälgimisest
doorkeeper:
flash:
applications:
Märkus on koha %{place} lähedal.'
commented_note_html: '%{commenter} on taasaktiveerinud märkuse, mida oled
kommenteerinud. Märkus on koha %{place} lähedal.'
- details: Üksikasjad märkuse kohta leiad aadressilt %{url}.
- details_html: Üksikasjad märkuse kohta leiad aadressilt %{url}.
+ details: Vasta või loe veel märkuse kohta aadressil %{url}.
+ details_html: Vasta või loe veel märkuse kohta aadressil %{url}.
changeset_comment_notification:
description: 'OpenStreetMapi muudatuskogum #%{id}'
hi: Tere, %{to_user}
partial_changeset_with_comment: kommentaariga '%{changeset_comment}'.
partial_changeset_with_comment_html: kommentaariga '%{changeset_comment}'.
partial_changeset_without_comment: ilma kommentaarita.
- details: Üksikasjad muudatuskogumi kohta leiad aadressilt %{url}.
- details_html: Üksikasjad muudatuskogumi kohta leiad aadressilt %{url}.
+ details: Vasta või loe muudatuskogumi kohta veel aadressil %{url}.
+ details_html: Vasta või loe muudatuskogumi kohta veel aadressil %{url}.
unsubscribe: Saad muudatuskogumi uuendusteadetest ära ütelda aadressil %{url}.
unsubscribe_html: Saad muudatuskogumi uuendusteadetest ära ütelda aadressil
%{url}.
lost password link: Kas unustasid parooli?
login_button: Logi sisse
register now: Registreeru nüüd
- with external: 'Teise võimalusena võid sisse logida kolmanda osapoole kaudu:'
+ with external: või logi sisse kolmanda osapoole kaudu
auth failure: Kahjuks ei õnnestu nende andmetega sisse logida.
destroy:
title: Logi välja
js_1: Kasutad kas brauserit, mis ei toeta JavaScripti, või oled JavaScripti
keelanud.
js_2: OpenStreetMap kasutab JavaScripti kaartide laadimiseks.
- permalink: Püsilink
- shortlink: Lühilink
- createnote: Lisa märkus
license:
copyright: Autoriõigused OpenStreetMap ja kaasautorid avatud litsentsi alusel
remote_failed: Redigeerimise ebaõnnestus - veendu, et JOSM või Merkaartor töötab
title: Minu volitatud rakendused
application: Rakendus
permissions: Õigused
+ last_authorized: Viimati volitatud
no_applications_html: Sa pole volitanud veel ühtegi %{oauth2} rakendust.
application:
revoke: Eemalda juurdepääs
users:
new:
title: Registreerumine
+ tab_title: Registreeru
no_auto_account_create: Kahjuks ei ole meil võimalik luua hetkel sinu jaoks
automaatselt kontot.
please_contact_support_html: Palun võta ühendust %{support_link}, et kasutajakonto
luua. Üritame tegeleda selle taotlusega nii kiiresti kui võimalik.
support: toega
about:
- header: Vaba ja muudetav
+ header: Vaba ja muudetav.
paragraph_1: Erinevalt teistest kaartidest on kogu OpenStreetMapi loonud sinusugused
inimesed ja igaüks võib seda parandada, täiendada, alla laadida ja kasutada.
- paragraph_2: Registreeru, et alustada kaardi täiendamist. Saadame sulle e-kirja,
- et saaksid kinnitada enda kasutajakonto.
+ paragraph_2: Registreeru, et alustada kaardi täiendamist.
display name description: Avalikult kuvatud kasutajanimi. Seda saate muuta hiljem
eelistustes.
+ by_signing_up_html: Registreerudes nõustud meie %{tou_link}, %{privacy_policy_link}
+ ja %{contributor_terms_link}.
+ tou: kasutustingimustega
+ contributor_terms: kaastöötingimustega
external auth: 'Kolmanda osapoole autentimine:'
continue: Registreeru
terms accepted: Täname, et nõustusid uute kaastöötingimustega!
- email_help_html: Sinu aadressi ei kuvata avalikult, loe täpsemalt meie %{privacy_policy_link}.
- privacy_policy: andmekaitsereeglitest
+ email_help_html: Sinu aadressi ei kuvata avalikult, tutvu meie %{privacy_policy_link}.
+ privacy_policy: andmekaitsereeglitega
privacy_policy_title: OSMF-i andmekaitsereeglid, milles on alaosa e-posti aadresside
kohta
- use external auth: Teise võimalusena võid sisse logida kolmanda osapoole kaudu
+ consider_pd_html: Pean enda kaastööd %{consider_pd_link} kuuluvaks.
+ consider_pd: avalikku omandisse
+ use external auth: või registreeru kolmanda osapoole kaudu
terms:
title: Tingimused
heading: Tingimused
andis.
success: Blokeering uuendatud.
index:
- title: Kasutaja blokeeringud
- heading: Kasutaja blokeeringute loetelu
+ title: Kasutajate blokeeringud
+ heading: Kasutajate blokeeringute loetelu
empty: Ühtegi blokeeringut pole veel antud.
revoke:
title: Kasutaja %{block_on} blokeeringu eemaldamine
intro: Kas märkasid viga või midagi, mis vajab täiendamist? Anna sellest teistele
kaardistajatele teada, et nad saaksid seda parandada. Lohista marker õigele
kohale ja kirjuta märkus, et probleemi selgitada.
+ anonymous_warning_html: Sa pole sisse logitud. Palun %{log_in} või %{sign_up},
+ kui soovid saada enda märkuse kohta uuendusi.
+ anonymous_warning_log_in: logi sisse
+ anonymous_warning_sign_up: registreeru
advice: Märkus on avalik ja seda võidakse kasutada kaardi uuendamiseks. Seega
palun ära kirjuta siia isiklikku teavet ega teavet autoriõigustega kaitstud
kaartidelt ega kataloogiloenditest.
queryfeature_tooltip: Mis siin on?
queryfeature_disabled_tooltip: Suurenda, et objektide kohta päring teha
embed_html_disabled: Selle kaardikihi jaoks pole HTML-i lõimimine saadaval
- changesets:
- show:
- comment: Kommenteeri
- subscribe: Telli
- unsubscribe: Lõpeta tellimus
- hide_comment: peida
- unhide_comment: nähtavale
edit_help: Nihuta kaarti ja suumi sisse asukohta mida soovid redigeerida ja seejärel
kliki siia.
directions:
continue_without_exit: 'Liigu edasi teele: %{name}'
slight_right_without_exit: 'Pööra kergelt paremal pool asuvale teele: %{name}'
offramp_right: Sõida paremal asuvale kaldteele
- offramp_right_with_exit: Lahku teelt paremal asuva ärapöörde %{exit} kaudu
- offramp_right_with_exit_name: 'Lahku teelt paremal asuva ärapöörde %{exit}
- kaudu sõites teele: %{name}'
- offramp_right_with_exit_directions: 'Lahku teelt paremal asuva ärapöörde %{exit}
- kaudu võttes suunaks: %{directions}'
- offramp_right_with_exit_name_directions: 'Lahku teelt paremal asuva ärapöörde
- %{exit} kaudu sõites teele: %{name} suunaga %{directions} poole'
+ offramp_right_with_exit: Lahku teelt %{exit}. väljumise kaudu paremal
+ offramp_right_with_exit_name: 'Lahku paremalt %{exit}. väljumise kaudu sõites
+ teele: %{name}'
+ offramp_right_with_exit_directions: Lahku paremalt %{exit}. väljumise kaudu,
+ sõites tee %{directions} suunas
+ offramp_right_with_exit_name_directions: Lahku paremalt %{exit}. väljumise
+ kaudu sõites teele %{name} tee %{directions} suunas
offramp_right_with_name: 'Pööra paremal asuvalt kaldteelt teele: %{name}'
- offramp_right_with_directions: Pööra paremal asuvale kaldteele suunaga %{directions}
- poole
+ offramp_right_with_directions: Pööra paremal asuvale kaldteele, liikudes tee
+ %{directions} suunas
offramp_right_with_name_directions: 'Pööra paremal asuvale kaldteele: uus
tee on %{name} ja suunaks %{directions}'
onramp_right_without_exit: 'Pööra paremale ja sõida kaldteed mööda teele:
%{name}'
- onramp_right_with_directions: Pööra paremale ja sõida kaldteelt %{directions}
+ onramp_right_with_directions: Pööra paremale ja sõida kaldteelt tee %{directions}
suunas
- onramp_right_with_name_directions: Pööra paremal asuvale kaldteele %{name}
- poole, suunaks %{directions}
+ onramp_right_with_name_directions: Pööra paremal asuvalt kaldteelt teele %{name},
+ sõites tee %{directions} suunas
onramp_right_without_directions: Sõida paremal asuvale kaldteele
onramp_right: Sõida paremal asuvale kaldteele
endofroad_right_without_exit: 'Tee lõpus pööra paremale teele: %{name}'
sharp_left_without_exit: 'Pööra järsult vasakul pool asuvale teele: %{name}'
turn_left_without_exit: 'Pööra vasakul pool asuvale teele: %{name}'
offramp_left: Sõida vasakul asuvale kaldteele
- offramp_left_with_exit: Lahku teelt vasakul asuva ärapöörde %{exit} kaudu
- offramp_left_with_exit_name: 'Lahku teelt vasakul asuva ärapöörde %{exit}
- kaudu sõites teele: %{name}'
- offramp_left_with_exit_directions: 'Lahku teelt vasakul asuva ärapöörde %{exit}
- kaudu võttes suunaks: %{directions}'
- offramp_left_with_exit_name_directions: 'Lahku teelt vasakul asuva ärapöörde
- %{exit} kaudu sõites teele: %{name} suunaga %{directions} poole'
+ offramp_left_with_exit: Lahku vasakult %{exit}. väljumise kaudu
+ offramp_left_with_exit_name: 'Lahku vasakult %{exit}. väljumise kaudu sõites
+ teele: %{name}'
+ offramp_left_with_exit_directions: Lahku vasakult %{exit}. väljumise kaudu,
+ sõites tee %{directions} suunas
+ offramp_left_with_exit_name_directions: Lahku vasakult %{exit}. väljumise
+ kaudu sõites teele %{name} tee %{directions} suunas
offramp_left_with_name: 'Pööra vasakul asuvalt kaldteelt teele: %{name}'
- offramp_left_with_directions: Pööra vasakul asuvale kaldteele suunaga %{directions}
- poole
+ offramp_left_with_directions: Pööra vasakul asuvale kaldteele, liikudes tee
+ %{directions} suunas
offramp_left_with_name_directions: 'Pööra vasakul asuvale kaldteele: uus tee
on %{name} ja suunaks %{directions}'
onramp_left_without_exit: 'Pööra vasakule ja sõida kaldteed mööda teele: %{name}'
- onramp_left_with_directions: Pööra vasakule ja sõida kaldteelt %{directions}
+ onramp_left_with_directions: Pööra vasakule ja sõida kaldteelt tee %{directions}
suunas
onramp_left_with_name_directions: 'Pööra vaskul asuvale kaldteele: uus tee
on %{name} ja suunaks %{directions}'
slight_left_without_exit: 'Pööra kergelt vasakule teele: %{name}'
via_point_without_exit: (teekonnapunkti kaudu)
follow_without_exit: 'Sõida edasi mööda teed: %{name}'
- roundabout_without_exit: 'Pööra ringteelt järgnevale teele: %{name}'
+ roundabout_without_exit: 'Pööra ringteelt järgmisele teele: %{name}'
leave_roundabout_without_exit: Pööra ära ringteelt - %{name}
stay_roundabout_without_exit: Jätka sõitmist ringteel - %{name}
start_without_exit: 'Alusta teelt: %{name}'
join_discussion: Hasi saioa eztabaidan parte hartzeko
still_open: Aldaketak oraindik zabalik - eztabaida aldaketak itxi ondoren irekiko
da.
+ subscribe: Harpidetu
+ unsubscribe: Harpidetza kendu
comment_by_html: '%{user} -ren iruzkina orain dela %{time_ago}'
hidden_comment_by_html: '%{user} -ren ezkutuko iruzkina %{time_ago} tik'
+ hide_comment: ezkutatu
+ unhide_comment: erakutsi
+ comment: Iruzkina
changesetxml: Aldaketaren XML kodea
osmchangexml: osmChange XML kodea
paging_nav:
all:
title: OpenStreetMap eguneroko sarrerak
description: OpenStreetMap erabiltzaileek azkenaldian egindako eguneroko sarrerak
- comments:
+ diary_comments:
+ index:
title: '%{user} erabiltzaileak gehitutako egunkariko iruzkinak'
heading: '%{user} erabiltzailearen egunkariko iruzkinak'
subheading_html: '%{user} erabiltzaileak gehitutako egunkariko iruzkinak'
js_1: Javascript onartzen ez duen arakatzailea erabiltzen ari zara edo JavaScript
desgaitu duzu.
js_2: OpenStreetMap-ek Javascript erabiltzen du bere mapa irriztagarrirako.
- permalink: Esteka iraunkorra
- shortlink: Esteka laburra
- createnote: Gehitu oharra
license:
copyright: OpenStreetMap eta laguntzaileen Copyright-a erabili, lizentzia
irekiaren babespean
map_data_zoom_in_tooltip: Handiagotu mapa datuak ikusteko
queryfeature_tooltip: Eskaera ezaugarriak
queryfeature_disabled_tooltip: Handiagotu ezaugarriak eskatzeko
- changesets:
- show:
- comment: Iruzkina
- subscribe: Harpidetu
- unsubscribe: Harpidetza kendu
- hide_comment: ezkutatu
- unhide_comment: erakutsi
edit_help: Mugitu mapa eta zooma editatu nahi duzun kokaleku batean erabili, gero
klik hemen egin.
directions:
# Author: Danialbehzadi
# Author: Darafsh
# Author: Dr jackie
+# Author: Ebrahim
# Author: Ebraminio
# Author: FarsiNevis
# Author: Fatemi127
discussion: بحث
join_discussion: وارد شوید تا به بحث بپیوندید
still_open: بستهٔ تغییر هنوز باز است - امکان بحث پس از بستن آن باز میشود.
+ subscribe: اشتراک
+ unsubscribe: لغو اشتراک
comment_by_html: نظر از %{user} %{time_ago}
hidden_comment_by_html: نظر پنهان؛ نوشتهٔ %{user} %{time_ago}
+ hide_comment: نهفتن
+ unhide_comment: نمایش
+ comment: نظر
changesetxml: Changeset XML
osmchangexml: osmChange XML
paging_nav:
all:
title: روزنوشتهای OpenStreetMap
description: روزنوشتهای اخیر از کاربران OpenStreetMap
- comments:
+ subscribe:
+ button: اشتراک در بحث
+ unsubscribe:
+ button: لغو اشتراک در بحث
+ diary_comments:
+ index:
title: نظراتی که %{user} به روزنوشتها داده است
heading: نظرات %{user} به روزنوشتها
subheading_html: نظراتی که %{user} به روزنوشتها داده است
comment: نظر
newer_comments: نظرات جدیدتر
older_comments: نظرات قدیمیتر
- subscribe:
- button: اشتراک در بحث
- unsubscribe:
- button: لغو اشتراک در بحث
doorkeeper:
flash:
applications:
js_1: شما در حال استفاده از مرورگری هستید که جاوااسکریپت را پشتیبانی نمیکند،
یا جاوااسکریپت را غیرفعال کردهاید.
js_2: OpenStreetMap برای نقشهٔ لغزان از جاوااسکریپت استفاده میکند.
- permalink: پیوند پایدار
- shortlink: پیوند کوتاه
- createnote: افزودن یادداشت
license:
copyright: حق نشر OpenStreetMap و مشارکتکنندگان، تحت یک پروانهٔ آزاد
remote_failed: ویرایش انجام نشد - مطمئن شوید JOSM یا Merkaartor باز و گزینهٔ
map_data_zoom_in_tooltip: برای دیدن دادهٔ نقشه بزرگنمایی کنید
queryfeature_tooltip: پرسوجوی عارضهها
queryfeature_disabled_tooltip: برای پرسوجوی عارضهها بزرگنمایی کنید
- changesets:
- show:
- comment: نظر
- subscribe: اشتراک
- unsubscribe: لغو اشتراک
- hide_comment: نهفتن
- unhide_comment: نمایش
edit_help: نقشه را جابهجا کنید و روی مکانی که میخواهید ویرایش نمایید بزرگنمایی
کنید. سپس اینجا کلیک کنید.
directions:
join_discussion: Kirjaudu sisään osallistuaksesi keskusteluun
still_open: Muutoskokoelma on edelleen avoimena - keskustelu avataan heti kun
muutoskokoelma on suljettu.
+ subscribe: Tilaa
+ unsubscribe: Lopeta tilaus
comment_by_html: Kommentti käyttäjältä %{user}, %{time_ago}
hidden_comment_by_html: Piilotettu kommentti käyttäjältä %{user} %{time_ago}
+ hide_comment: piilota
+ unhide_comment: näytä
+ comment: Kommentoi
changesetxml: Muutoskokoelman XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap-päiväkirjamerkinnät
description: Tuoreimmat OpenStreetMapin käyttäjien päiväkirjamerkinnät
- comments:
+ diary_comments:
+ index:
title: Käyttäjän %{user} lisäämät päiväkirjamerkinnät
heading: Päiväkirjamerkinnät käyttäjältä %{user}
subheading_html: Käyttäjän %{user} lisäämät päiväkirjamerkinnät
index:
js_1: Selain ei tue JavaScriptiä tai sen suorittaminen on estetty.
js_2: OpenStreetMap tarvitsee JavaScriptin liikuteltavaan karttaan.
- permalink: Ikilinkki
- shortlink: Lyhytosoite
- createnote: Ilmoita karttavirheestä
license:
copyright: 'Tekijänoikeus: OpenStreetMapin tekijät, avoimella lisenssillä'
remote_failed: Muokkaus epäonnistui - varmista, että JOSM tai Merkaartor on
users:
new:
title: Rekisteröidy
+ tab_title: Rekisteröidy
no_auto_account_create: Automaattinen käyttäjätunnuksen luonti ei ole juuri
nyt käytössä.
support: tuki
about:
header: Muokkaa vapaasti
+ paragraph_1: Toisin kuin muut karttapalvelut, OpenStreetMap on täysin tavallisten
+ ihmisten luoma. Kuka tahansa voi korjata, päivittää, ladata ja käyttää sitä
+ ilmaiseksi.
+ paragraph_2: Osallistu projektiin luomalla käyttäjätunnus.
display name description: Julkisesti näkyvä käyttäjänimi. Tätä voi myöhemmin
muuttaa asetuksista.
+ by_signing_up_html: Rekisteröitymällä hyväksyt %{tou_link}, %{privacy_policy_link}
+ ja %{contributor_terms_link}.
external auth: 'Kolmannen osapuolen todennus:'
continue: Rekisteröidy
terms accepted: Kiitos uusien osallistujaehtojen hyväksymisestä!
+ email_help_html: Osoitetta ei näytetä julkisesti, lisätietoja on sivulla %{privacy_policy_link}.
privacy_policy: tietosuojakäytäntö
+ consider_pd_html: Pidän tuotoksiani %{consider_pd_link}.
use external auth: Kirjaudu toisen palvelun tunnuksilla
terms:
title: Ehdot
intro: Huomasitko virheen tai puuttuvan kohteen? Ilmoita siitä muille kartoittajille,
jolloin virhe voidaan korjata. Siirrä merkkipiste oikeaan kohtaan ja kirjoita
selite ongelmasta.
+ anonymous_warning_sign_up: rekisteröidy
advice: Merkintä näkyy julkisesti kaikille, älä kirjoita henkilökohtaisia tietoja.
Aineistoa kehitetään palautteen perusteella, minkä takia älä käytä lähteenä
muita karttoja tai hakemistoja.
map_data_zoom_in_tooltip: Näytä kartta-aineisto lähentämällä karttaa
queryfeature_tooltip: Karttakohdeluettelo
queryfeature_disabled_tooltip: Näytä ominaisuusluettelo suurentamalla karttaa
- changesets:
- show:
- comment: Kommentoi
- subscribe: Tilaa
- unsubscribe: Lopeta tilaus
- hide_comment: piilota
- unhide_comment: näytä
edit_help: Siirrä ja lähennä kartta muokattavaan paikkaan ja napsauta sitten tästä.
directions:
ascend: Nousu
join_discussion: Lokkaa sisäle, jos halvaat osallistua keskusteluun
still_open: Muutoskokoelma on edelleen avoimena - keskustelu avathaan heti kun
muutoskokoelma on suljettu.
+ comment: Kommentoi
changesetxml: Muutoskokoelman XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap-päiväkirjamerkinnät
description: Verekset OpenStreetMapin käyttäjitten päiväkirjamerkinnät
- comments:
+ diary_comments:
+ index:
post: Kommentti
when: Taatumi
comment: Kommentti
title: Nimeämisesimerkki
more_title_html: Lisätietoja
contributors_title_html: Meän tekijät
- index:
- permalink: Ikunen länkki
- shortlink: Lyhylänkki
edit:
user_page_link: käyttäjätieot
export:
site:
edit_tooltip: Mookkaa karttaa
edit_disabled_tooltip: Lähennä karttaa mookataksesi
- changesets:
- show:
- comment: Kommentoi
directions:
instructions:
unnamed: nimetön tie
# Author: GeorgeKaplan
# Author: Gileri
# Author: Gomoko
+# Author: Graineahumus
# Author: Gravitystorm
# Author: Guilhelma
# Author: Hashar
# Author: Orikrin1998
# Author: Otourly
# Author: Oupsa
+# Author: Overflorian
# Author: Peter17
# Author: Phoenamandre
# Author: Pipo
view_unredacted_history: Voir l'historique non censuré
view_details: Afficher les détails
view_redacted_data: Afficher les données censurées
+ view_redaction_message: Afficher le message de rédaction
location: 'Emplacement :'
common_details:
coordinates_html: '%{latitude} ; %{longitude}'
closed: Fermé
belongs_to: Auteur
subscribe:
+ heading: S'abonner à la discussion sur l'ensemble de modifications suivante ?
button: S'abonner à la discussion
unsubscribe:
heading: Se désabonner de la discussion du groupe de modifications suivant ?
title: Groupe de modifications %{id}
created_by_html: Créé par %{link_user} le %{created}.
no_such_entry:
+ title: Aucun ensemble de modifications de ce type
heading: 'Aucune entrée avec l’identifiant : %{id}'
body: Désolé, il n’y a aucun groupe de modifications avec l'identifiant %{id}.
Veuillez vérifier l'orthographe ou la validité du lien sur lequel vous avez
join_discussion: Se connecter pour rejoindre la discussion
still_open: Ensemble de modifications toujours ouvert – la discussion s’ouvrira
une fois que l’ensemble de modifications sera fermé.
+ subscribe: S’abonner
+ unsubscribe: Se désabonner
comment_by_html: Commentaire de %{user} %{time_ago}
hidden_comment_by_html: Commentaire caché de %{user} %{time_ago}
+ hide_comment: masquer
+ unhide_comment: démasquer
+ comment: Commenter
changesetxml: XML du groupe de modifications
osmchangexml: XML osmChange
paging_nav:
title: Carnet de %{user} | %{title}
user_title: Carnet de %{user}
discussion: Discussion
+ subscribe: S’abonner
+ unsubscribe: Se désabonner
leave_a_comment: Laisser un commentaire
login_to_leave_a_comment_html: '%{login_link} pour laisser un commentaire'
login: Se connecter
all:
title: Entrées des journaux OpenStreetMap
description: Entrées récentes des journaux d’utilisateurs de OpenStreetMap
- comments:
+ subscribe:
+ heading: S'abonner à la discussion suivante sur les entrées de journal ?
+ button: S'abonner à la discussion
+ unsubscribe:
+ heading: Se désinscrire de la discussion suivante sur les entrées du journal ?
+ button: Se désinscrire de la discussion
+ diary_comments:
+ index:
title: Commentaires de journal ajoutés par %{user}
heading: Commentaires de journal de %{user}
subheading_html: Commentaires de journal ajoutés par %{user}
comment: Commentaire
newer_comments: Commentaires plus récents
older_comments: Commentaires plus anciens
- subscribe:
- button: S'abonner à la discussion
- unsubscribe:
- button: Se désinscrire de la discussion
doorkeeper:
errors:
messages:
contact_the_community_html: N’hésitez pas à %{contact_link} la communauté OpenStreetMap
si vous avez trouvé un lien cassé ou une anomalie. Notez l’URL exacte de votre
demande.
+ bad_request:
+ title: Mauvaise requête
+ description: L'opération que vous avez demandée sur le serveur OpenStreetMap
+ n'est pas valide (HTTP 400)
forbidden:
title: Interdit
description: L’opération que vous avez demandée sur le serveur OpenStreetMap
hosting_partners_2024_html: L’hébergement est pris en charge par %{fastly}, %{corpmembers},
et d’autres %{partners}.
partners_fastly: Fastly
+ partners_corpmembers: Membres d'entreprise de l'OSMF
partners_partners: partenaires
tou: Conditions d’utilisation
osm_offline: La base de données OpenStreetMap est actuellement hors ligne ; une
more: Plus
user_mailer:
diary_comment_notification:
+ description: 'Entrée du journal OpenStreetMap #%{id}'
subject: '[OpenStreetMap] %{user} a publié un commentaire sur un article de
journal'
hi: Bonjour %{to_user},
La note se trouve près de %{place}.'
commented_note_html: '%{commenter} a réactivé une note de carte que vous avez
commentée. La note est près de %{place}.'
- details: Plus de détails concernant la note se trouvent à %{url}.
- details_html: Plus de détails concernant la note se trouvent à %{url}.
+ details: Répondez ou apprenez-en plus sur la note sur %{url}.
+ details_html: Répondez ou en savoir plus sur la note sur %{url}.
changeset_comment_notification:
description: 'Groupe de modifications OpenStreetMap #%{id}'
hi: Bonjour %{to_user},
partial_changeset_with_comment: avec le commentaire « %{changeset_comment} »
partial_changeset_with_comment_html: avec le commentaire « %{changeset_comment} »
partial_changeset_without_comment: sans commentaire
- details: Plus de détails sur l’ensemble de modifications à %{url}.
- details_html: Vous pouvez trouver plus de détails sur l’ensemble de modifications
- sur %{url}.
+ details: Répondez ou en savoir plus sur l'ensemble de changements sur %{url}.
+ details_html: Répondre ou en savoir plus sur l'ensemble de changements sur %{url}.
unsubscribe: Vous pouvez vous désabonner des mises à jour de cet ensemble de
modifications depuis %{url}.
unsubscribe_html: Vous pouvez vous désabonner des mises à jour de cet ensemble
unread_button: Marque comme non lu
destroy_button: Supprimer
back: Retour
- wrong_user: Vous êtes identifié comme « %{user} » mais le message que vous essayez
- de lire n’a pas été envoyé par cet utilisateur, ni ne lui a été destiné. Veuillez
- vous connecter avec l’identifiant correct pour pouvoir le lire.
+ wrong_user: Vous êtes identifié comme « %{user} » mais le message que vous avez
+ demandé de lire n’a pas été envoyé par cet utilisateur, ni ne lui a été destiné.
+ Veuillez vous connecter avec le bon identifiant pour pouvoir le lire.
sent_message_summary:
destroy_button: Supprimer
heading:
new:
title: Se connecter
tab_title: Se connecter
+ login_to_authorize_html: Connectez-vous à OpenStreetMap pour accéder à %{client_app_name}.
email or username: 'Adresse de courriel ou nom d’utilisateur :'
password: 'Mot de passe :'
remember: Se souvenir de moi
générale des finances publiques (anciennement la Direction générale des
impôts).'
contributors_fr_france: France
+ contributors_hr_credit_html: |-
+ %{croatia} : contient des données de %{dgu_link} et %{open_data_portal}
+ (informations publiques de Croatie).
contributors_hr_croatia: Croatie
+ contributors_hr_dgu: Administration géodésique de l'État de Croatie
+ contributors_hr_open_data_portal: Portail national des données ouvertes
contributors_nl_credit_html: '%{netherlands} : contient des données © AND,
2007 (%{and_link})'
contributors_nl_netherlands: Pays-Bas
js_1: JavaScript n’est pas pris en charge par le navigateur que vous utilisez,
ou bien vous l’avez désactivé.
js_2: OpenStreetMap utilise Javascript pour ses cartes glissantes.
- permalink: Lien permanent
- shortlink: Lien court
- createnote: Ajouter une note
license:
copyright: Copyright OpenStreetMap et ses contributeurs, sous une licence
ouverte
identifiable: IDENTIFIABLE
private: PRIVÉE
trackable: PISTABLE
+ details_with_tags_html: '%{time_ago} par %{user} dans %{tags}'
+ details_without_tags_html: '%{time_ago} par %{user}'
index:
public_traces: Traces GPS publiques
my_gps_traces: Mes traces GPS
other: Fichier GPX avec %{count} points de %{user}
description_without_count: Fichier GPX de %{user}
application:
+ basic_auth_disabled: 'L''authentification HTTP de base est désactivée : %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 et 1.0a sont désactivés : %{link}'
permission_denied: Vous n’avez pas le droit d’accéder à cette action
require_cookies:
cookies_needed: Il semble que les témoins (cookies) soient désactivés dans votre
muted_users: Utilisateurs silencieux
auth_providers:
openid_logo_alt: Se connecter avec OpenID
+ openid_login_button: Continuer
openid:
title: Connexion avec OpenID
alt: Se connecter avec une URL OpenID
google:
- title: Connexion avec Google
+ title: Se connecter avec Google
alt: Se connecter avec un OpenID de Google
facebook:
- title: Connexion avec Facebook
+ title: Se connecter avec Facebook
alt: Se connecter avec un compte de Facebook
microsoft:
- title: Connexion avec Microsoft
+ title: Se connecter avec Microsoft
alt: Se connecter avec un compte Microsoft
github:
- title: Connexion avec GitHub
- alt: Se connecter avec un compte de GitHub
+ title: Se connecter avec GitHub
+ alt: Se connecter avec un compte GitHub
wikipedia:
- title: Connexion avec Wikipédia
- alt: Se connecter avec un compte de Wikipédia
+ title: Se connecter avec Wikipédia
+ alt: Se connecter avec un compte Wikipédia
wordpress:
- title: Connexion avec Wordpress
+ title: Se connecter avec Wordpress
alt: Se connecter avec un OpenID de Wordpress
aol:
- title: Connexion avec AOL
- alt: Se connecter avec un OpenID d’AOL
+ title: Se connecter avec AOL
+ alt: Se connecter avec un OpenID AOL
oauth:
authorize:
title: Autoriser l’accès à votre compte
write_redactions: Caviarder les données cartographiques
read_email: Lire l’adresse courriel de l’utilisateur
skip_authorization: Demande d’approbation automatique
+ for_roles:
+ moderator: Cette autorisation concerne les actions disponibles uniquement pour
+ les modérateurs
oauth_clients:
new:
title: Inscrire une nouvelle application
users:
new:
title: S’inscrire
+ tab_title: Créer un compte
+ signup_to_authorize_html: Se connecter à OpenStreetMap pour accéder à %{client_app_name}.
no_auto_account_create: Malheureusement, nous ne sommes actuellement pas en
mesure de vous créer un compte automatiquement.
please_contact_support_html: Veuillez contacter %{support_link} pour organiser
paragraph_1: Contrairement à d’autres cartes, OpenStreetMap est entièrement
créé par des personnes comme vous et il permet à quiconque de librement
la réparer, la mettre à jour, la télécharger et l’utiliser.
- paragraph_2: Inscrivez-vous pour commencer à contribuer. Nous vous enverrons
- un courriel pour confirmer votre compte.
+ paragraph_2: Se connecter pour commencer à contribuer.
+ welcome: Bienvenue dans OpenStreetMap
+ duplicate_social_email: Si vous possédez déjà un compte OpenStreetMap et souhaitez
+ utiliser un fournisseur d'identité tiers, veuillez vous connecter en utilisant
+ votre mot de passe et modifier les paramètres de votre compte.
display name description: Votre nom d’utilisateur affiché publiquement. Vous
pouvez changer ceci ultérieurement dans les préférences.
+ by_signing_up_html: En vous inscrivant, vous acceptez nos %{tou_link}, %{privacy_policy_link}
+ et %{contributor_terms_link}.
+ tou: conditions d'utilisation
+ contributor_terms: Conditions de contribution
external auth: 'Authentification tierce :'
continue: S’inscrire
terms accepted: Merci d’avoir accepté les nouveaux termes du contributeur !
privacy_policy: politique de confidentialité
privacy_policy_title: Politique de confidentialité de l’OSMF, qui comprend une
section sur les adresses de courriel
- use external auth: Vous pouvez également utiliser un service tiers pour vous
- connecter.
+ consider_pd_html: Je considère que mes contributions se situent dans le %{consider_pd_link}.
+ consider_pd: domaine public
+ or: ou
+ use external auth: ou vous pouvez vous connecter avec un service tiers.
terms:
title: Conditions
heading: Conditions
remove as friend: Supprimer en tant qu’ami
add as friend: Ajouter en tant qu’ami
mapper since: 'Cartographe depuis :'
+ last map edit: 'Dernière modification de la carte :'
+ no activity yet: Pas encore d'activité
uid: 'Identifiant utilisateur :'
ct status: 'Conditions de contribution :'
ct undecided: Indécis
heading: Utilisateurs
older: Utilisateurs plus anciens
newer: Utilisateurs plus récents
+ found_users:
+ one: '%{count} utilisateur trouvé'
+ other: '%{count} utilisateurs trouvés'
summary_html: '%{name} créé depuis %{ip_address} le %{date}'
summary_no_ip_html: '%{name} créé le %{date}'
confirm: Confirmer les utilisateurs sélectionnés
heading: Votre identifiant n’est pas encore associé à un compte OpenStreetMap.
option_1: Si vous êtes nouveau sur OpenStreetMap, veuillez créer un nouveau
compte à l’aide du formulaire ci-dessous.
- option_2: Si vous avez déjà un compte, vous pouvez vous connecter avec en utilisant
- votre nom d’utilisateur et votre mot de passe, puis associer le compte avec
- votre ID dans vos préférences utilisateur.
+ option_2: Si vous avez déjà un compte, vous pouvez vous y connecter avec en
+ utilisant votre nom d’utilisateur et votre mot de passe, puis associer le
+ compte avec votre ID dans vos préférences utilisateur.
user_role:
filter:
not_a_role: La chaîne « %{role} » n’est pas un rôle valide.
reason: Motif du blocage
status: État
revoker_name: Révoqué par
+ older: Blocs plus anciens
+ newer: Blocs plus récents
navigation:
all_blocks: Tous les blocages
blocks_on_me: Blocages me concernant
intro: Vous avez repéré une erreur ou un manque ? Faites-le savoir aux autres
cartographes afin qu’ils puissent y remédier. Déplacez le marqueur à la position
exacte et écrivez une note pour expliquer le problème.
+ anonymous_warning_html: Vous n'êtes pas connecté. Veuillez %{log_in} ou %{sign_up}
+ si vous souhaitez recevoir des mises à jour pour votre note.
+ anonymous_warning_log_in: se connecter
+ anonymous_warning_sign_up: créer un compte
advice: Votre note est publique et peut être utilisée pour mettre à jour la
carte, aussi n’entrez aucune information personnelle, ni aucune information
venant de cartes protégées, ni aucune entrée de répertoire ou d’annuaire.
queryfeature_disabled_tooltip: Zoomer plus pour rechercher des objets
embed_html_disabled: L’intégration de HTML n’est pas disponible pour cette couche
de carte
- changesets:
- show:
- comment: Commenter
- subscribe: S’abonner
- unsubscribe: Se désabonner
- hide_comment: masquer
- unhide_comment: démasquer
edit_help: Déplacez la carte et zoomez sur un emplacement que vous voulez modifier,
puis cliquez dessus.
directions:
closed_ago_by_html: Sierât di %{user} %{time_ago}
discussion: Discussion
join_discussion: Jentre par partecipâ ae discussion
+ subscribe: Notiti
+ unsubscribe: Disnotiti
comment_by_html: Comentât di %{user} %{time_ago}
hidden_comment_by_html: Coment platât di %{user} %{time_ago}
+ hide_comment: plate
+ unhide_comment: mostre
+ comment: Coment
changesetxml: Grup di cambiaments XML
osmchangexml: XML in formât osmChange
paging_nav:
all:
title: Vôs dai diaris di OpenStreetMap
description: Lis ultimis vôs dai diaris dai utents di OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Coments ai diaris zontâts par %{user}
heading: Coments ai diaris di %{user}
subheading_html: Coments ai diaris zontâts di %{user}
js_1: Tu stâs doprant un sgarfadôr che nol supuarte JavaScript o ben JavaScript
al è stât disativât.
js_2: OpenStreetMap al dopre JavaScript par mostrâ la sô mape.
- permalink: Leam permanent
- shortlink: Leam curt
- createnote: Zonte une note
license:
copyright: Copyright di OpenStreetMap e dai siei colaboradôrs, sot di une
licence vierte
map_data_zoom_in_tooltip: Aumente il zoom par viodi i dâts de mape
queryfeature_tooltip: Domande ce ch'al è intun lûc
queryfeature_disabled_tooltip: Aumente il zoom par domandâ ce ch'al è
- changesets:
- show:
- comment: Coment
- subscribe: Notiti
- unsubscribe: Disnotiti
- hide_comment: plate
- unhide_comment: mostre
edit_help: Môf la mape e aumente il zoom tal lûc che tu vuelis cambiâ, po frache
culì
directions:
join_discussion: Meld jo oan en oerlis mei
still_open: Wizigingsset net ree - it oerlis iepenet sa gau't de wizigingsset
ôfdien is.
+ subscribe: Folgje
+ unsubscribe: Net folgje
+ hide_comment: ferbergje
+ unhide_comment: werompleatse
+ comment: Reägearje
changesetxml: Wizigingsset-XML
osmchangexml: osmWizigings-XML
paging_nav:
all:
title: OpenStreetMap Deiboekstikken
description: Nije deiboekstikken fan meidoggers oan OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Troch %{user} taheakke deiboekreäksjes
heading: Deiboekreäksjes fan %{user}
subheading_html: Troch %{user} taheakke deiboekreäksjes
js_1: Jo brûke ôf in webblêder dy't gjin JavaScript stipet, ôf jo hawwe JavaScript
útskeakele.
js_2: OpenStreetMap brûkt JavaScript foar de ferskobere kaart.
- permalink: Fêste kepp.
- shortlink: Lytse kepp.
- createnote: Notysje taheakje
license:
copyright: Auteursrjochten OpenStreetMap en bydragers, ûnder in iepen lisinsje
remote_failed: Bewurkjen mislearre - soargje dat JOSM of Merkaartor laden is,
map_data_zoom_in_tooltip: Sûm yn om kaartdata sjen te kinnen
queryfeature_tooltip: Skaaimerken opfreegje
queryfeature_disabled_tooltip: Sûm yn om skaaimerken opfreegje te kinnen
- changesets:
- show:
- comment: Reägearje
- subscribe: Folgje
- unsubscribe: Net folgje
- hide_comment: ferbergje
- unhide_comment: werompleatse
edit_help: Sko de kaart en sûm yn op 'e lokaasje dy't jo bewurkje wolle, klik
dan hjir.
directions:
title: 'Tacar athruithe: %{id}'
discussion: Plé
join_discussion: Logáil isteach chun páirt a ghlacadh sa phlé
+ subscribe: Liostáil
+ unsubscribe: Díliostáil
+ hide_comment: folaigh
+ unhide_comment: dífholaigh
+ comment: Freagair
changesetxml: XML an Tacair athruithe
osmchangexml: XML osmChange
paging_nav:
all:
title: Iontrálacha dialainne OpenStreetMap
description: Iontrálacha dialainne le déanaí ó úsáideoirí OpenStreetMap
- comments:
+ diary_comments:
+ index:
no_comments: Níl aon nóta tráchta dialainne ann
post: Postáil
when: Cá huair
díchumasaithe agat.
js_2: Baineann OpenStreetMap úsáid as JavaScript dá léarscáil 'slippy' (léarscáil
ghréasáin bunaithe ar thíleanna).
- permalink: Buan-nasc
- shortlink: Nasc gearr
- createnote: Cuir nóta leis
license:
copyright: Cóipcheart OpenStreetMap agus rannchuiditheoirí, faoi cheadúnas
oscailte
map_data_zoom_in_tooltip: Zúmáil isteach chun sonraí na léarscáile a fheiceáil
queryfeature_tooltip: Gnéithe a fhiosrú
queryfeature_disabled_tooltip: Zúmáil isteach chun gnéithe a fhiosrú
- changesets:
- show:
- comment: Freagair
- subscribe: Liostáil
- unsubscribe: Díliostáil
- hide_comment: folaigh
- unhide_comment: dífholaigh
edit_help: Bog an léarscáil agus zúmáil isteach ar áit is mian leat a chur in
eagar, ansin cliceáil anseo.
directions:
join_discussion: Konèkté-w pou jwenn bokantaj-la
comment_by_html: Komantasyon a %{user} %{time_ago}
hidden_comment_by_html: Komantasyon ou dévwè a %{user} %{time_ago}
+ comment: Komantasyon
changesetxml: Niméwo Chanjeman XML
osmchangexml: osmChanjeman XML
dashboards:
confirm: Konfirmé
location:
view: Vwè
- comments:
+ diary_comments:
+ index:
comment: Komantasyon
newer_comments: Sé komantasyon pli nèf la
older_comments: Pli vyé komantasyon
js_1: Ou ka sèvi èvè on navigatè ki pa ka sipòté Javascript ouben Javascript
éten.
js_2: OpenStreetMap ka sèvi èvè Javascript pou kat glisad.
- permalink: Permalink
edit:
not_public: Ou pé pa réglé édision aw pou yo piblik.
not_public_description_html: Pou modifié kat la fok édision aw piblik. Ou pé
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)
title: 'Seata atharraichean: %{id}'
discussion: Deasbaireachd
join_discussion: Clàraich a-steach gus pàirt a ghabhail san deasbaireachd
+ subscribe: Fo-sgrìobh
+ unsubscribe: Cuir crìoch air an fh-sgrìobhadh
+ hide_comment: falaich
+ unhide_comment: neo-fhalaich
+ comment: Thoir beachd
changesetxml: XML le seata atharraichean
osmchangexml: XML osmChange
paging_nav:
title: Clàran san leabhar-latha OpenStreetMap
description: Clàran leabhair-latha le cleachdaichean OpenStreetMap o chionn
goirid
- comments:
+ diary_comments:
+ index:
post: Post
when: Àm
comment: Beachd
js_1: Tha thu a' chleachdadh brabhsair nach cuir taic ri JavaScript no chuir
thu JavaScript à comas.
js_2: Cleachdaidh OpenStreetMap JavaScript gus am mapa a shealltainn.
- permalink: Ceangal buan
- shortlink: Ceangal goirid
- createnote: cuir nòta ris
license:
copyright: Còir-lethbhreac OpenStreetMap agus na co-thabhartaichean aige fo
cheadachas fosgailte
map_data_zoom_in_tooltip: Sùm a-steach gus dàta a' mhapa a shealltainn
queryfeature_tooltip: Lorg airson feartan sònraichte
queryfeature_disabled_tooltip: Sùm an-steach gus lorg airson feartan sònraichte
- changesets:
- show:
- comment: Thoir beachd
- subscribe: Fo-sgrìobh
- unsubscribe: Cuir crìoch air an fh-sgrìobhadh
- hide_comment: falaich
- unhide_comment: neo-fhalaich
edit_help: Gluais am mapa agus sùm a-steach air ionad a tha thu airson deasachadh.
Briog an-seo an uairsin.
directions:
join_discussion: Inicia a sesión para unirte á parola
still_open: O conxunto de modificacións segue aberto. Abrirase a parola cando
o conxunto de modificacións estea pechado.
+ subscribe: Subscribirse
+ unsubscribe: Cancelar a subscrición
comment_by_html: Comentario de %{user} %{time_ago}
hidden_comment_by_html: Comentario de %{user} agochado %{time_ago}
+ hide_comment: agochar
+ unhide_comment: amosar
+ comment: Comentar
changesetxml: XML do conxunto de modificacións
osmchangexml: XML de osmChange
paging_nav:
title: Diario de %{user} | %{title}
user_title: Diario de %{user}
discussion: Conversa
+ subscribe: Subscribirse
+ unsubscribe: Cancelar a subscrición
leave_a_comment: Deixar un comentario
login_to_leave_a_comment_html: '%{login_link} para deixar un comentario'
login: Inicia sesión
all:
title: Entradas no diario do OpenStreetMap
description: Entradas de diario recentes dos usuarios do OpenStreetMap
- comments:
+ subscribe:
+ heading: Queres subscribirte á seguinte conversa sobre a entrada no diario?
+ button: Subscribirse á conversa
+ unsubscribe:
+ heading: Queres cancelar a subscrición á seguinte conversa sobre a entrada no
+ diario?
+ button: Cancelar a subscrición á conversa
+ diary_comments:
+ index:
title: Comentarios do diario engadidos por %{user}
heading: Comentarios do diario de %{user}
subheading_html: Comentarios do diario engadidos por %{user}
comment: Comentario
newer_comments: Comentarios máis recentes
older_comments: Comentarios máis vellos
- subscribe:
- heading: Queres subscribirte á seguinte conversa sobre a entrada no diario?
- button: Subscribirse á conversa
- unsubscribe:
- heading: Queres cancelar a subscrición á seguinte conversa sobre a entrada no
- diario?
- button: Cancelar a subscrición á conversa
doorkeeper:
errors:
messages:
contact_the_community_html: Non dubides en %{contact_link} coa comunidade do
OpenStreetMap se atopaches un erro ou unha ligazón rota. Anota o enderezo
URL exacto da túa solicitude.
+ bad_request:
+ title: Solicitude incorrecta
+ description: A operación que solicitaches no servidor do OpenStreetMap non é
+ válida (HTTP 400)
forbidden:
title: Prohibido
description: A operación que solicitaches no servidor do OpenStreetMap só está
A nota está preto de %{place}.'
commented_note_html: '%{commenter} reactivou unha das notas do mapa nas que
comentaches. A nota está preto de %{place}.'
- details: Pode atopar máis detalles da nota en %{url}.
- details_html: Podes atopar máis detalles da nota en %{url}.
+ details: Responde ou descubre máis detalles da nota en %{url}.
+ details_html: Responde ou descubre máis detalles da nota en %{url}.
changeset_comment_notification:
description: Conxunto de modificacións do OpenStreetMap n.º %{id}
hi: 'Ola, %{to_user}:'
partial_changeset_with_comment: co comentario '%{changeset_comment}'
partial_changeset_with_comment_html: con comentario '%{changeset_comment}'
partial_changeset_without_comment: sen comentarios
- details: Pódense atopar máis detalles acerca do conxunto de modificacións en
+ details: Responde ou descubre máis detalles do conxunto de modificacións en
%{url}.
- details_html: Pódense atopar máis detalles sobre o conxunto de modificacións
+ details_html: Responde ou descubre máis detalles do conxunto de modificacións
en %{url}.
unsubscribe: Podes cancelar a subscrición ás actualizacións deste conxunto de
modificacións en %{url}.
index:
js_1: Estás a usar un navegador que non soporta o JavaScript ou telo desactivado.
js_2: O OpenStreetMap emprega JavaScript para o seu mapa estático e dinámico.
- permalink: Ligazón permanente
- shortlink: Atallo
- createnote: Engadir unha nota
license:
copyright: Dereitos de autoría do OpenStreetMap e os seus colaboradores, baixo
unha licenza aberta
other: Ficheiro GPX con %{count} puntos de %{user}
description_without_count: Ficheiro GPX de %{user}
application:
+ basic_auth_disabled: 'A autenticación básica HTTP está desactivada: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 e 1.0a están desactivados: %{link}'
permission_denied: Non ten permisos para acceder a esa acción
require_cookies:
cookies_needed: Semella que ten as cookies do navegador desactivadas. Actíveas
remove as friend: Eliminar coma amizade
add as friend: Engadir coma amizade
mapper since: 'Cartógrafo dende:'
+ last map edit: 'Última edición do mapa:'
+ no activity yet: Aínda non hai actividade
uid: 'Identificador de usuario:'
ct status: 'Termos do colaborador:'
ct undecided: Indeciso
queryfeature_disabled_tooltip: Achegar para consultar os elementos
embed_html_disabled: A incorporación de HTML non está dispoñible para esta capa
de mapa
- changesets:
- show:
- comment: Comentar
- subscribe: Subscribirse
- unsubscribe: Cancelar a subscrición
- hide_comment: agochar
- unhide_comment: amosar
edit_help: Desplaza o mapa e achégao na localización que queiras editar; logo,
preme aquí.
directions:
discussion: דיון
join_discussion: נא להיכנס לחשבון כדי להצטרף לדיון
still_open: ערכת השינויים עדיין פתוחה – הדיון ייפתח אחרי שערכת השיניים תיסגר.
+ subscribe: מינוי
+ unsubscribe: ביטול מינוי
comment_by_html: הערה מאת %{user} %{time_ago}
hidden_comment_by_html: הערה מוסתרת מאת %{user} %{time_ago}
+ hide_comment: הסתרה
+ unhide_comment: ביטול הסתרה
+ comment: להגיב
changesetxml: XML של ערכת השינויים
osmchangexml: osmChange XML
paging_nav:
title: היומן של%{user} ‏ | %{title}
user_title: היומן של %{user}
discussion: דיון
+ subscribe: מינוי
+ unsubscribe: ביטול מינוי
leave_a_comment: הוספת תגובה
login_to_leave_a_comment_html: נא %{login_link} כדי להשאיר תגובה
login: להיכנס
all:
title: רשומות ביומן של OpenStreetMap
description: רשומות יומן אחרונות ממשתמשי OpenStreetMap
- comments:
+ subscribe:
+ heading: לעשות מינוי לדיון ברשומת היומן הבאה?
+ button: מינוי לדיון
+ unsubscribe:
+ heading: לבטל את המינוי לדיון ברשומת היומן הבאה?
+ button: ביטול המינוי לדיון
+ diary_comments:
+ index:
title: הערות יומן שנוספו על־ידי %{user}
heading: הערות ביומן של %{user}
subheading_html: הערות יומן שנוספו על־ידי %{user}
comment: תגובה
newer_comments: הערות חדשות
older_comments: הערות ישנות
- subscribe:
- heading: לעשות מינוי לדיון ברשומת היומן הבאה?
- button: מינוי לדיון
- unsubscribe:
- heading: לבטל את המינוי לדיון ברשומת היומן הבאה?
- button: ביטול המינוי לדיון
doorkeeper:
errors:
messages:
contact: ליצור קשר
contact_the_community_html: אפשר %{contact_link} עם קהילת OpenStreetMap אם מצאת
קישור פגום / תקלה. יש לתעד את הכתובת המדויקת של הבקשה שלך.
+ bad_request:
+ title: בקשה מקולקלת
+ description: הפעולה שביקשת בשרת OpenStreetMap אינה תקינה (HTTP 400)
forbidden:
title: אסור
description: הפעולה שביקשת לבצע מול שרת OpenStreetMap זמינה למנהלים בלבד (HTTP
היא ליד %{place}.
commented_note_html: '%{commenter} הפעיל מחדש הערת מפה שהגבת עליה. הערה נמצאת
ליד %{place}'
- details: ×\90פשר ×\9c×\9eצ×\95×\90 פר×\98×\99×\9d × ×\95ספ×\99×\9d ×¢×\9c ×\94×\94ערה בכתובת %{url}
- details_html: ×\90פשר ×\9c×\9eצ×\95×\90 פר×\98×\99×\9d × ×\95ספ×\99×\9d ×¢×\9c ×\94×\94ער×\94 ×\91×\9bת×\95×\91ת %{url}.
+ details: ×\90פשר ×\9c×\94×\92×\99×\91 ×\9c×\94ער×\94 ×\90×\95 ×\9cק×\91×\9c ×\9e×\99×\93×¢ × ×\95סף ×¢×\9c×\99ה בכתובת %{url}
+ details_html: ×\90פשר ×\9c×\94×\92×\99×\91 ×\9c×\94ער×\94 ×\90×\95 ×\9cק×\91×\9c ×\9e×\99×\93×¢ × ×\95סף ×¢×\9c×\99×\94 ×\91×\9bת×\95×\91ת %{url}
changeset_comment_notification:
description: ערכת שינויים של OpenStreetMap מס׳ %{id}
hi: שלום %{to_user},
partial_changeset_with_comment: עם ההערה '%{changeset_comment}'
partial_changeset_with_comment_html: עם ההערה '%{changeset_comment}'
partial_changeset_without_comment: ללא הערה
- details: פר×\98×\99×\9d × ×\95ספ×\99×\9d ×¢×\9c ער×\9bת ×\94ש×\99× ×\95×\99×\99×\9d ×\90פשר ×\9c×\9eצ×\95×\90 בכתובת %{url}
- details_html: פר×\98×\99×\9d × ×\95ספ×\99×\9d ×¢×\9c ער×\9bת ×\94ש×\99× ×\95×\99×\99×\9d ×\90פשר ×\9c×\9eצ×\95×\90 בכתובת %{url}
+ details: ×\90פשר ×\9c×\94×\92×\99×\91 ×\9cער×\9bת ×\94ש×\99× ×\95×\99×\99×\9d ×\90×\95 ×\9cק×\91×\9c ×\9e×\99×\93×¢ × ×\95סף ×¢×\9c×\99×\94 בכתובת %{url}
+ details_html: ×\90פשר ×\9c×\94×\92×\99×\91 ×\9cער×\9bת ×\94ש×\99× ×\95×\99×\99×\9d ×\90×\95 ×\9cק×\91×\9c ×\9e×\99×\93×¢ × ×\95סף ×¢×\9c×\99×\94 בכתובת %{url}
unsubscribe: באפשרותך לבטל את המינוי לעדכונים מערכת השינויים הזאת בכתובת %{url}.
unsubscribe_html: באפשרותך לבטל את המינוי לעדכונים מערכת השינויים הזאת בכתובת
%{url}.
index:
js_1: הדפדפן שבו אתה משתמש אינו תומך ב־JavaScript, או שכיבית את השימוש ב־JavaScript.
js_2: אתר OpenStreetMap משתמש ב־JavaScript למפה המחליקה.
- permalink: קישור קבוע
- shortlink: קישור מקוצר
- createnote: הוספת הערה
license:
copyright: 'זכויות היוצרים: מיזם OpenStreetMap ותורמיו, בכפוף לרישיון פתוח'
remote_failed: העריכה נכשלה – נא לוודא כי JOSM או Merkaartor נטענו ושאפשרות
other: קובץ GPS עם %{count} נקודות מאת %{user}
description_without_count: קובץ GPS מאת %{user}
application:
+ basic_auth_disabled: 'אימות בסיסי ב־HTTP כבוי: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 ו־1.0a כבויים: %{link}'
permission_denied: אין לך הרשאה לגשת לפעולה הזאת
require_cookies:
cookies_needed: נראה שהעוגיות כבויות אצלך – נא להפעיל עוגיות בדפדפן שלך כדי
remove as friend: הסרה מרשימת חברים
add as friend: הוספה כחבר
mapper since: 'ממפה מאז:'
+ last map edit: 'עריכת מפה אחרונה:'
+ no activity yet: עדיין אין פעילות
uid: 'מזהה משתמש:'
ct status: 'תנאי תרומה:'
ct undecided: עוד אין החלטה
title: הערה חדשה
intro: יש פה טעות או שחסר משהו? אנו מבקשים ממך לספר את זה לממפים אחרים. לשם
כך צריך להזיז את הסמן למקום הנכון ולכתוב הערה שמסבירה את הבעיה.
+ anonymous_warning_html: לא נכנסת לחשבון. נא %{log_in} או %{sign_up} אם ברצונך
+ לקבל עדכונים על ההערה שלך.
+ anonymous_warning_log_in: להיכנס לחשבון
+ anonymous_warning_sign_up: להירשם
advice: /start
add: הוספת הערה
javascripts:
queryfeature_tooltip: שאילתת ישויות
queryfeature_disabled_tooltip: התקרבות כדי להריץ שאילתת ישויות
embed_html_disabled: הטבעת HTML אינה זמינה בשכבת המפה הזאת
- changesets:
- show:
- comment: להגיב
- subscribe: מינוי
- unsubscribe: ביטול מינוי
- hide_comment: הסתרה
- unhide_comment: ביטול הסתרה
edit_help: יש להזיז את המפה ולהתמקד על מיקום שברצונך לערוך ואז ללחוץ כאן.
directions:
ascend: מעלה
join_discussion: चर्चा में भाग लेने के लिए लॉग इन करें
still_open: चेंजसेट अभी भी खुला - चेंजसेट के एक बार बंद होने के पश्चात चर्चा
होगी।
+ comment: जवाब देना
changesetxml: Changeset XML
osmchangexml: osmChange XML
paging_nav:
all:
title: ओपनस्ट्रीटमैप डायरी एंट्री
description: ओपनस्ट्रीटमैप के सदस्यों से नई डायरी एंट्रियाँ
- comments:
+ diary_comments:
+ index:
post: पोस्ट
when: कब
comment: टिप्पणी
javascripts:
site:
createnote_disabled_tooltip: नोट जोड़ने के लिए जूम इन करें
- changesets:
- show:
- comment: जवाब देना
directions:
directions: रास्ता
distance: दूरी
title: 'Set promjena: %{id}'
discussion: Razgovor
join_discussion: Prijavi se za uključivanje u raspravu
+ subscribe: Pretplati se
+ unsubscribe: Otkaži pretplatu
+ hide_comment: sakrij
+ unhide_comment: vrati sakriveno
+ comment: Komentiraj
changesetxml: XLM Set promjena
osmchangexml: osmChange XML
paging_nav:
all:
title: Zapisi u OpenStreetMap dnevniku
description: Nedavni zapisi u dnevnik korisnika OpenStreetMapa
- comments:
+ diary_comments:
+ index:
post: Pošalji
when: Kada
comment: Komentar
js_1: Koristite preglednik koji ne podržava JavaScript ili Vam je JavaScript
isključen.
js_2: OpenStreetMap koristi JavaScript za slippy kartu.
- permalink: Permalink
- shortlink: Kratki link
- createnote: Dodaj bilješku
license:
copyright: Autorska prava pripadaju OpenStreetMap-u i doprinositeljima, pod
otvorenom licencijom
map_data_zoom_in_tooltip: Približi da vidiš podatke karte
queryfeature_tooltip: Provjeri elemente karte
queryfeature_disabled_tooltip: Približi za provjeru elemenata
- changesets:
- show:
- comment: Komentiraj
- subscribe: Pretplati se
- unsubscribe: Otkaži pretplatu
- hide_comment: sakrij
- unhide_comment: vrati sakriveno
edit_help: Pomakni kartu i približi dio koji želiš urediti, zatim klikni ovdje.
directions:
engines:
join_discussion: Přizjew so, zo by móhł(a) sobu diskutować
still_open: Sadźba změnow je hišće wočinjena. Diskusija so wočinja, ručež je
sadźba změnow začinjena.
+ subscribe: Abonować
+ unsubscribe: Wotskazać
comment_by_html: Komentar wot %{user} %{time_ago}
hidden_comment_by_html: Schowany komentar wot %{user} %{time_ago}
+ hide_comment: schować
+ unhide_comment: pokazać
+ comment: Komentar
changesetxml: Sadźba změnow XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap dźenikowe zapiski
description: Najnowše dźenikowe zapiski wužiwarjow OpenStreetMap
- comments:
+ subscribe:
+ button: Diskusiju abonować
+ unsubscribe:
+ button: Diskusiju wotskazać
+ diary_comments:
+ index:
title: Dźenikowe komentary přidate wot wužiwarja %{user}
heading: Dźenikowe komentary wot wužiwarja %{user}
subheading_html: Dźenikowe komentary přidate wot wužiwarja %{user}
comment: Komentar
newer_comments: Nowše komentary
older_comments: Starše komentary
- subscribe:
- button: Diskusiju abonować
- unsubscribe:
- button: Diskusiju wotskazać
doorkeeper:
flash:
applications:
js_1: Pak wužiwaš wobhladowak, kotryž JavaScript njepodpěruje, pak sy JavaScript
znjemóžnił.
js_2: OpenStreetMap JavaScript za slippy map wužiwa.
- permalink: Trajny wotkaz
- shortlink: Krótki wotkaz
- createnote: Pokazku přidać
license:
copyright: Copyright OpenStreetMap a sobuskutkowarjo, pod wotewrjenej licencu
remote_failed: Wobdźěłowanje je so njeporadźiło - zawěsć, zo JOSM abo Merkaartor
map_data_zoom_in_tooltip: Powjetš kartu, zo by daty widźał
queryfeature_tooltip: Funkcije naprašować
queryfeature_disabled_tooltip: Za naprašowanje funkcijow powjetšić
- changesets:
- show:
- comment: Komentar
- subscribe: Abonować
- unsubscribe: Wotskazać
- hide_comment: schować
- unhide_comment: pokazać
edit_help: Přesuń kartu do městna, kotrež chceš wobdźěłać, powjetš tam a klikń
potom tu.
directions:
join_discussion: Jelentkezz be, hogy bekapcsolódhass a megbeszélésbe
still_open: A módosításcsomag még nyitva van – a megbeszélés akkor nyílik meg,
ha a módosításcsomag lezárul.
+ subscribe: Feliratkozás
+ unsubscribe: Leiratkozás
comment_by_html: Hozzászólt %{user} %{time_ago}
hidden_comment_by_html: Rejtett hozzászólás %{user} felhasználótól %{time_ago}
+ hide_comment: elrejt
+ unhide_comment: megjelenít
+ comment: Hozzászólás
changesetxml: Módosításcsomag adatai (XML)
osmchangexml: Módosításcsomag tartalma (osmChange XML)
paging_nav:
all:
title: OpenStreetMap naplóbejegyzések
description: Legutóbbi naplóbejegyzések az OpenStreetMap felhasználóitól
- comments:
+ subscribe:
+ heading: Feliratkozol a következő naplóbejegyzés-megbeszélésre?
+ button: Feliratkozás a megbeszélésre
+ unsubscribe:
+ heading: Leiratkozol a következő naplóbejegyzés-megbeszélésről?
+ button: Leiratkozás a megbeszélésről
+ diary_comments:
+ index:
title: '%{user} naplóhozzászólásai'
heading: '%{user} naplóhozzászólásai'
subheading_html: '%{user} naplóhozzászólásai'
comment: Hozzászólás
newer_comments: Újabb hozzászólások
older_comments: Régebbi hozzászólások
- subscribe:
- heading: Feliratkozol a következő naplóbejegyzés-megbeszélésre?
- button: Feliratkozás a megbeszélésre
- unsubscribe:
- heading: Leiratkozol a következő naplóbejegyzés-megbeszélésről?
- button: Leiratkozás a megbeszélésről
doorkeeper:
errors:
messages:
js_1: Vagy egy olyan böngészőt használsz, amely nem támogatja a JavaScriptet,
vagy letiltottad a JavaScriptet.
js_2: Az OpenStreetMap JavaScriptet használ a slippy maphoz.
- permalink: Permalink
- shortlink: Shortlink
- createnote: Új jegyzet
license:
copyright: Copyright OpenStreetMap és közreműködői, egy nyílt licenc alatt
remote_failed: A szerkesztés nem sikerült. Győződj meg róla, hogy a JOSM vagy
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
- subscribe: Feliratkozás
- unsubscribe: Leiratkozás
- hide_comment: elrejt
- unhide_comment: megjelenít
edit_help: Mozgasd a térképet, nagyíts ott ahol módosítani szeretnéd, majd kattints
ide.
directions:
delete_introduction: 'Tu pote deler tu conto OpenStreetMap con le button sequente.
Nota ben que:'
delete_profile: Tu information de profilo, includente tu avatar, description
- e domicilio, essera removite.
+ e loco de residentia, essera removite.
delete_display_name: Tu nomine a monstrar essera removite e potera esser reusate
per altere contos.
retain_caveats: 'Nonobstante, alcun informationes sur te essera retenite sur
join_discussion: Aperi session pro unir te al discussion
still_open: Le gruppo de modificationes es ancora aperte. Le discussion se aperira
quando le gruppo de modificationes essera claudite.
+ subscribe: Subscriber
+ unsubscribe: Cancellar subscription
comment_by_html: Commento de %{user} %{time_ago}
hidden_comment_by_html: Commento celate de %{user} %{time_ago}
+ hide_comment: celar
+ unhide_comment: revelar
+ comment: Commento
changesetxml: XML del gruppo de modificationes
osmchangexml: XML osmChange
paging_nav:
friend: Amico
show:
title: Mi pannello
- no_home_location_html: '%{edit_profile_link} e defini tu loco de domicilio pro
- vider le usatores a proximitate.'
+ no_home_location_html: '%{edit_profile_link} e defini tu loco de residentia
+ pro vider le usatores a proximitate.'
edit_your_profile: Modifica tu profilo
my friends: Mi amicos
no friends: Tu non ha ancora addite alcun amico.
title: Diario de %{user} | %{title}
user_title: Diario de %{user}
discussion: Discussion
+ subscribe: Abonar me
+ unsubscribe: Disabonar me
leave_a_comment: Lassar un commento
login_to_leave_a_comment_html: '%{login_link} pro lassar un commento'
login: Aperir session
all:
title: Entratas de diario de OpenStreetMap
description: Entratas recente de diario de usatores de OpenStreetMap
- comments:
+ subscribe:
+ heading: Abonar te al sequente discussion de entrata de diario?
+ button: Abonar te al discussion
+ unsubscribe:
+ heading: Disabonar te del sequente discussion de entrata de diario?
+ button: Disabonar te del discussion
+ diary_comments:
+ index:
title: Commentos de diario addite per %{user}
heading: Commento de diario de %{user}
subheading_html: Commentos de diario addite per %{user}
comment: Commento
newer_comments: Commentos plus recente
older_comments: Commentos plus ancian
- subscribe:
- heading: Abonar te al sequente discussion de entrata de diario?
- button: Abonar te al discussion
- unsubscribe:
- heading: Disabonar te del sequente discussion de entrata de diario?
- button: Disabonar te del discussion
doorkeeper:
errors:
messages:
contact_the_community_html: Sia libere de %{contact_link} le communitate de
OpenStreetMap si tu ha trovate un ligamine rupte o qualcunque anomalia. Nota
le URL exacte de tu requesta.
+ bad_request:
+ title: Mal requesta
+ description: Le operation que tu ha requestate sur le servitor de OpenStreetMap
+ non es valide (HTTP 400)
forbidden:
title: Prohibite
description: Le operation que tu ha requestate sur le servitor de OpenStreetMap
layouts:
logo:
alt_text: Logo de OpenStreetMap
- home: Vader al position de initio
+ home: Vader al loco de residentia
logout: Clauder session
log_in: Aperir session
sign_up: Crear conto
Le nota es in le vicinitate de %{place}.'
commented_note_html: '%{commenter} ha reactivate un nota de carta que tu ha
commentate. Le nota es in le vicinitate de %{place}.'
- details: Plus detalios sur le nota pote esser trovate a %{url}.
- details_html: Plus detalios sur le nota pote esser trovate a %{url}.
+ details: Responde o discoperi plus sur le nota a %{url}.
+ details_html: Responde o discoperi plus sur le nota a %{url}.
changeset_comment_notification:
description: 'Gruppo de modificationes OpenStreetMap #%{id}'
hi: Salute %{to_user},
partial_changeset_with_comment: con commento '%{changeset_comment}'
partial_changeset_with_comment_html: con commento '%{changeset_comment}'
partial_changeset_without_comment: sin commento
- details: Plus detalios sur le gruppo de modificationes pote esser trovate a
- %{url}.
- details_html: Plus detalios sur le gruppo de modificationes pote esser trovate
- a %{url}.
+ details: Responde o discoperi plus sur le gruppo de modificationes a %{url}.
+ details_html: Responde o discoperi plus sur le gruppo de modificationes a %{url}.
unsubscribe: Tu pote disabonar te del actualisationes de iste gruppo de modificationes
sur %{url}.
unsubscribe_html: Tu pote disabonar te del actualisationes de iste gruppo de
delete image: Remover le imagine actual
replace image: Reimplaciar le imagine actual
image size hint: (imagines quadrate de al minus 100×100 functiona melio)
- home location: Position de origine
- no home location: Tu non ha entrate tu position de origine.
- update home location on click: Actualisar le position de origine quando io clicca
+ home location: Loco de residentia
+ no home location: Tu non ha definite tu loco de residentia.
+ update home location on click: Actualisar le loco de residentia quando io clicca
sur le carta?
show: Monstrar
delete: Deler
js_1: O tu usa un navigator que non supporta JavaScript, o tu ha disactivate
JavaScript.
js_2: OpenStreetMap usa JavaScript pro su carta glissante.
- permalink: Permaligamine
- shortlink: Ligamine curte
- createnote: Adder un nota
license:
copyright: Copyright OpenStreetMap e contributores, sub licentia aperte
remote_failed: Modification fallite - assecura te que JOSM o Merkaartor es cargate
other: File GPX con %{count} punctos de %{user}
description_without_count: File GPX de %{user}
application:
+ basic_auth_disabled: 'Le authentication HTTP basic es disactivate: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 e 1.0a es disactivate: %{link}'
permission_denied: Tu non ha le permission de acceder a iste action
require_cookies:
cookies_needed: Tu pare haber disactivate le cookies. Per favor activa le cookies
remove as friend: Remover amico
add as friend: Adder amico
mapper since: 'Cartographo depost:'
+ last map edit: 'Ultime modification del carta:'
+ no activity yet: Necun activitate ancora
uid: 'ID de usator:'
ct status: 'Conditiones de contributor:'
ct undecided: Indecise
intro: Tu ha trovate un error? Qualcosa manca? Face lo saper al altere cartographos
a fin que nos pote corriger lo. Displacia le marcator al position correcte
e scribe un nota pro explicar le problema.
+ anonymous_warning_html: Tu non ha aperite session. Per favor %{log_in} o %{sign_up}
+ si tu vole reciper actualisationes pro tu nota.
+ anonymous_warning_log_in: aperi session
+ anonymous_warning_sign_up: crea un conto
advice: Tu nota es public e pote esser usate pro actualisar le carta. Dunque,
non insere alcun information personal, ni datos ab cartas o catalogos protegite
per derectos de autor.
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
- subscribe: Subscriber
- unsubscribe: Cancellar subscription
- hide_comment: celar
- unhide_comment: revelar
edit_help: Displacia le carta e face zoom avante in un loco que tu vole modificar,
postea clicca hic.
directions:
join_discussion: Masuk untuk bergabung diskusi
still_open: Set perubahan masih terbuka - diskusi akan dibuka ketika set perubahan
telah ditutup.
+ subscribe: Berlangganan
+ unsubscribe: Berhenti berlangganan
comment_by_html: Komentar dari %{user} %{time_ago}
hidden_comment_by_html: Komentar tersembunyi dari %{user} %{time_ago}
+ hide_comment: sembunyikan
+ unhide_comment: Jangan sembunyikan
+ comment: Komentar
changesetxml: Set Perubahan XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Entri catatan harian OpenStreetMap
description: Entri catatan harian terbaru dari pengguna OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Komentar Buku Harian ditambahkan oleh %{user}
heading: Komentar Buku Harian %{user}
subheading_html: Komentar Buku Harian yang ditambahkan oleh %{user}
js_1: Anda menggunakan browser yang tidak mendukung JavaScript, atau Anda telah
menonaktifkan JavaScript.
js_2: OpenStreetMap menggunakan JavaScript untuk slippy map nya.
- permalink: Permalink
- shortlink: Shortlink
- createnote: Tambahkan catatan
license:
copyright: Hak cipta dan kontributor OpenStreetMap, di bawah lisensi terbuka
remote_failed: Gagal melakukan edit - pastikan JOSM atau Merkaartor telah termuat
queryfeature_tooltip: Fitur kueri
queryfeature_disabled_tooltip: Perbesar ke fitur kueri
embed_html_disabled: Penyematan HTML tidak tersedia untuk lapisan peta ini
- changesets:
- show:
- comment: Komentar
- subscribe: Berlangganan
- unsubscribe: Berhenti berlangganan
- hide_comment: sembunyikan
- unhide_comment: Jangan sembunyikan
edit_help: Memindahkan peta dan memperbesar lokasi yang ingin Anda sunting, kemudian
klik di sini.
directions:
join_discussion: Skráðu þig inn til að taka þátt í umræðunni
still_open: Breytingasett er enn opið - Umræða mun opnast þegar breytingasettinu
hefur verið lokað.
+ subscribe: Gerast áskrifandi
+ unsubscribe: Hætta í áskrift
comment_by_html: Umsögn frá %{user} %{time_ago}
hidden_comment_by_html: Falin umsögn frá %{user} %{time_ago}
+ hide_comment: fela
+ unhide_comment: hætta að fela
+ comment: Athugasemd
changesetxml: XML breytingasetts
osmchangexml: XML osmChange
paging_nav:
all:
title: OpenStreetMap bloggfærslur
description: Nýjustu bloggfærslur frá notendum OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Dagbók Athugasemdir bætt við af %{user}
heading: Athugasemdir dagbókar %{user}
subheading_html: Dagbóka Athugasemdir bætt við af %{user}
js_1: Þú ert annaðhvort að nota vafra sem styður ekki JavaScript eða hefur slökkt
á JavaScript stuðning.
js_2: OpenStreetMap notar JavaScript til að útfæra gagnvirk kort.
- permalink: Varanlegur tengill
- shortlink: Varanlegur smátengill
- createnote: Bæta við minnispunkti
license:
copyright: Höfundarréttur OpenStreetMap og þátttakendur, með opnu notkunarleyfi
remote_failed: Breytingar mistókust - gakktu úr skugga um að JOSM eða Merkaartor
map_data_zoom_in_tooltip: Renndu að til að skoða gögn kortsins
queryfeature_tooltip: Rannsaka fitjur
queryfeature_disabled_tooltip: Renndu að til að rannsaka fitjur
- changesets:
- show:
- comment: Athugasemd
- subscribe: Gerast áskrifandi
- unsubscribe: Hætta í áskrift
- hide_comment: fela
- unhide_comment: hætta að fela
edit_help: Færðu kortið og stilltu aðdrátt inn á staðinn sem þú vilt breyta, smelltu
síðan hér.
directions:
join_discussion: Accedi per unirti alla discussione
still_open: Il gruppo di modifiche è ancora aperto - le discussioni saranno
disponibili quando verrà chiuso.
+ subscribe: Iscriviti
+ unsubscribe: Annulla iscrizione
comment_by_html: Commento da %{user} %{time_ago}
hidden_comment_by_html: Commento nascosto da %{user} %{time_ago}
+ hide_comment: nascondi
+ unhide_comment: Rendi visibile
+ comment: Commenta
changesetxml: Gruppo di modifiche XML
osmchangexml: XML in formato osmChange
paging_nav:
title: Diario di %{user} | %{title}
user_title: Diario di %{user}
discussion: Discussione
+ subscribe: Iscriviti
+ unsubscribe: Annulla iscrizione
leave_a_comment: Lascia un commento
login_to_leave_a_comment_html: '%{login_link} per lasciare un commento'
login: Entra
all:
title: Voci del diario di OpenStreetMap
description: Voci del diario recenti degli utenti di OpenStreetMap
- comments:
+ subscribe:
+ heading: Vuoi iscriverti alla seguente discussione sul diario?
+ button: Iscriviti alla discussione
+ unsubscribe:
+ heading: Annullare l'iscrizione alla seguente discussione sul diario?
+ button: Annulla l'iscrizione alla discussione
+ diary_comments:
+ index:
title: Commenti del diario aggiunti da %{user}
heading: I commenti del diario di %{user}
subheading_html: Commenti del diario aggiunti da %{user}
comment: Commento
newer_comments: Commenti più recenti
older_comments: Commenti più vecchi
- subscribe:
- heading: Vuoi iscriverti alla seguente discussione sul diario?
- button: Iscriviti alla discussione
- unsubscribe:
- heading: Annullare l'iscrizione alla seguente discussione sul diario?
- button: Annulla l'iscrizione alla discussione
doorkeeper:
errors:
messages:
contact_the_community_html: Se hai trovato un link non funzionante o un bug,
sentiti libero di %{contact_link} la comunità OpenStreetMap. Prendi nota dell'indirizzo
URL esatto della tua richiesta.
+ bad_request:
+ title: Richiesta errata
+ description: L'operazione richiesta al server OpenStreetMap non è valida (HTTP
+ 400)
forbidden:
title: Vietato
description: L'operazione che hai richiesto sul server OpenStreetMap è disponibile
La nota si trova vicino a %{place}.'
commented_note_html: '%{commenter} ha riattivato una nota che avevi commentato.
La nota si trova vicino a %{place}.'
- details: Ulteriori dettagli sulla nota possono essere trovati su %{url}.
- details_html: Ulteriori dettagli sulla nota possono essere trovati su %{url}.
+ details: Rispondi o scopri di più sulla nota su %{url}.
+ details_html: Rispondi o scopri di più sulla nota su %{url}.
changeset_comment_notification:
description: 'Gruppo di modifiche OpenStreetMap #%{id}'
hi: Ciao %{to_user},
partial_changeset_with_comment: con il commento '%{changeset_comment}'
partial_changeset_with_comment_html: con il commento '%{changeset_comment}'
partial_changeset_without_comment: senza commento
- details: Ulteriori dettagli sul gruppo di modifiche possono essere trovati su
- %{url}.
- details_html: Ulteriori dettagli sul gruppo di modifiche possono essere trovati
- su %{url}.
+ details: Rispondi o scopri di più sul gruppo di modifiche su %{url}.
+ details_html: Rispondi o scopri di più sul gruppo di modifiche su %{url}.
unsubscribe: Puoi annullare l'iscrizione agli aggiornamenti di questo insieme
di modifiche su %{url}.
unsubscribe_html: Puoi annullare l'iscrizione agli aggiornamenti di questo insieme
new:
title: Entra
tab_title: Entra
+ login_to_authorize_html: Accedi a OpenStreetMap per accedere a %{client_app_name}.
email or username: Indirizzo e-mail o nome utente
password: Password
remember: Ricordati di me
js_1: Si sta utilizzando un browser che non supporta JavaScript, oppure è stato
disabilitato JavaScript.
js_2: OpenStreetMap utilizza JavaScript per le sua mappa.
- permalink: Link permanente
- shortlink: Link breve
- createnote: Aggiungi una nota
license:
copyright: Copyright OpenStreetMap e collaboratori, sotto una licenza aperta
remote_failed: Modifica non riuscita - assicurarsi che JOSM o Merkaartor sia
other: File GPX con %{count} punti da %{user}
description_without_count: File GPX da %{user}
application:
+ basic_auth_disabled: 'L''autenticazione di base HTTP è disabilitata: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 e 1.0a sono disabilitati: %{link}'
permission_denied: Non disponi dei permessi necessari per eseguire questa azione
require_cookies:
cookies_needed: Pare che tu abbia i cookie non abilitati - abilita i cookie
new:
title: Registrati
tab_title: Registrati
+ signup_to_authorize_html: Registrati su OpenStreetMap per accedere a %{client_app_name}.
no_auto_account_create: Sfortunatamente in questo momento non è possibile creare
automaticamente per te un profilo.
please_contact_support_html: Contatta %{support_link} per organizzare la creazione
scaricarla o usarla.
paragraph_2: Registrati per iniziare a contribuire.
welcome: Benvenuti in OpenStreetMap
+ duplicate_social_email: Se hai già un account OpenStreetMap e desideri utilizzare
+ un provider d'identità di terze parti, accedi utilizzando la tua password
+ e modifica le impostazioni del tuo account.
display name description: Il proprio nome utente visualizzato pubblicamente.
Può essere modificato più tardi nelle preferenze.
+ by_signing_up_html: Registrandoti, accetti i nostri %{tou_link}, %{privacy_policy_link}
+ e %{contributor_terms_link}.
tou: condizioni d'uso
contributor_terms: regole per contribuire
external auth: 'Autenticazione tramite terze parti:'
privacy_policy: normativa sulla privacy
privacy_policy_title: Informativa sulla privacy di OSM Foundation compresa la
sezione sugli indirizzi e-mail
+ consider_pd_html: Considero i miei contributi in %{consider_pd_link}.
consider_pd: pubblico dominio
or: o
use external auth: o registrati tramite terze parti
remove as friend: Rimuovi amico
add as friend: Aggiungi amico
mapper since: 'Mappatore dal:'
+ last map edit: 'Ultima modifica della mappa:'
+ no activity yet: Non ci sono ancora attività
uid: 'ID utente:'
ct status: 'Termini di collaborazione:'
ct undecided: Indeciso
intro: Ti sei accorto di un errore o di qualcosa che manca? Fallo sapere agli
altri mappatori così possono correggerlo. Sposta il puntatore nella posizione
esatta e inserisci una nota per spiegare il problema.
+ anonymous_warning_html: Non hai effettuato l'accesso. %{log_in} oppure %{sign_up}
+ se desideri ricevere aggiornamenti sulla tua nota.
anonymous_warning_log_in: entra
anonymous_warning_sign_up: registrati
advice: La tua nota è pubblica e potrebbe essere utilizzata per aggiornare la
queryfeature_disabled_tooltip: Ingrandisci per ricercare elementi
embed_html_disabled: L'incorporamento HTML non è disponibile per questo livello
mappa
- changesets:
- show:
- comment: Commenta
- subscribe: Iscriviti
- unsubscribe: Annulla iscrizione
- hide_comment: nascondi
- unhide_comment: Rendi visibile
edit_help: Sposta la mappa e usa lo zoom sulla posizione che vuoi modificare,
quindi clicca qui.
directions:
discussion: 議論
join_discussion: 議論に参加するにはログインしてください
still_open: 変更セットが開いたままです - 議論を行うには変更セットを閉じる必要があります。
+ subscribe: 購読
+ unsubscribe: 購読停止
+ hide_comment: 非表示
+ unhide_comment: 非表示を解除
+ comment: コメント
changesetxml: 変更セット XML
osmchangexml: OSM 差分 XML
paging_nav:
all:
title: OpenStreetMap 利用者の日記エントリ
description: OpenStreetMap 利用者による最近の日記エントリ
- comments:
+ diary_comments:
+ index:
title: '%{user}が追加した日記コメント'
heading: '%{user}の日記コメント'
subheading_html: '%{user}が追加した日記コメント'
index:
js_1: JavaScript に対応していないブラウザーを使用しているか、JavaScript を無効にしているかのどちらかです。
js_2: OpenStreetMap は地図の表示に JavaScript を使用します。
- permalink: 固定リンク
- shortlink: 短縮リンク
- createnote: メモを追加
license:
copyright: オープンライセンスによるOpenStreetMapおよび協力者の著作権を保護する
remote_failed: 編集に失敗しました - JOSM または Merkaartor を起動し、リモート制御オプションが有効になっていることを確認してください
support: サポート
about:
header: フリー、編集可能
+ paragraph_1: 他の地図とは異なり、OpenStreetMapは完全に皆さんのような人によって作成されおり、誰でも自由に修正・更新・ダウンロード・利用ができます。
+ paragraph_2: 投稿を通じて貢献するには、登録が必要です。
+ welcome: OpenStreetMap へようこそ。
+ duplicate_social_email: すでに OpenStreetMap アカウントをお持ちで第三者認証プロバイダーを使用したい場合は、パスワードを使用してログインしたうえでアカウントの設定を変更してください。
display name description: あなたの公開利用者名です。あとで個人設定で変更できます。
+ by_signing_up_html: 登録することで %{tou_link}、 %{privacy_policy_link}と %{contributor_terms_link}に同意したことになります。
+ tou: 利用規約
+ contributor_terms: 協力者規約
external auth: 'サードパーティ認証:'
continue: 利用者登録
terms accepted: 新しい協力者規約を承諾していただき、ありがとうございます!
+ email_help_html: あなたのアドレスは公開されません。詳細については、%{privacy_policy_link} をご覧ください。
privacy_policy: プライバシー・ポリシー
+ privacy_policy_title: OSMFのプライバシーポリシー(電子メールアドレスに関するセクションを含む)
+ consider_pd_html: 私の貢献は %{consider_pd_link} にあるとみなします。
consider_pd: パブリックドメイン
- use external auth: サードパーティのアカウントでもログインできます
+ or: または
+ use external auth: サードパーティのアカウントでもログインできます。
terms:
title: 規約
heading: 規約
read_tou: 私は利用規約を読み終え、これに同意します
consider_pd: 上記に加え、私の投稿をパブリック ドメインとします
consider_pd_why: これは何ですか?
+ guidance_info_html: 'これらの用語を理解するのに役立つ情報: %{readable_summary_link} といくつかの %{informal_translations_link}'
readable_summary: 人間が読める要約
informal_translations: 非公式の翻訳
continue: 続行
remove as friend: 友達を解除
add as friend: 友達として追加
mapper since: 'マッパー歴:'
+ last map edit: '地図の最後の編集:'
+ no activity yet: 活動がありません
uid: '利用者id:'
ct status: '協力者規約:'
ct undecided: 未決定
grant:
administrator: 管理者権限を許可
moderator: モデレーター権限を許可
+ importer: importerアクセス権を付与する
revoke:
administrator: 管理者権限を剥奪
moderator: モデレーター権限を剥奪
queryfeature_tooltip: 地物を検索
queryfeature_disabled_tooltip: 検索した地物にズーム
embed_html_disabled: このマップレイヤーではHTML埋め込みは利用できません
- changesets:
- show:
- comment: コメント
- subscribe: 購読
- unsubscribe: 購読停止
- hide_comment: 非表示
- unhide_comment: 非表示を解除
edit_help: 編集したい位置に移動してズームインしてから、ここをクリックしてください。
directions:
ascend: 上り坂
location: 'მდებარეობა:'
view: იხილეთ
edit: რედაქტირება
- comments:
+ diary_comments:
+ index:
post: პოსტი
when: როდის
comment: კომენტარი
mapping_link: კარტოგრაფირების დაწყება
legal_babble:
title_html: საავტორო უფლებები და ლიცენზია
- index:
- permalink: მუდმივი ბმული
- shortlink: მოკლე ბმული
- createnote: შენიშვნის დამატება
edit:
user_page_link: მომხმარებლის გვერდი
export:
join_discussion: Qqen akken ad tedduḍ ar usqerdec
still_open: Tagrumma isenfilen zgan ldin - asqerdec ad yili mara isenfilen meṛṛa
ttwamedlen.
+ subscribe: Jerred
+ unsubscribe: Ffeɣ seg ujerred
+ hide_comment: ffer
+ unhide_comment: sken
+ comment: Awennit
changesetxml: XML n ugraw n ibeddilen
osmchangexml: XML osmChange
paging_nav:
all:
title: Imagraden n iɣmisen OpenStreetMap
description: Imagraden inegguran n iɣmisen n iseqdacen OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Amagrad
when: Melmi
comment: Awennit
title: Amedya n uttekki
more_title_html: Akken ad tafeḍ ugar n telɣut
contributors_title_html: Iwiziwen-nneɣ
- index:
- permalink: Aseɣwen yezgan
- shortlink: Aseɣwen awezlan
- createnote: Rnu tazmilt
edit:
user_page_link: asebter n useqdac
export:
edit_tooltip: Ẓreg takarḍa
createnote_tooltip: Rnu tazmilt ar tkarḍa
queryfeature_tooltip: isitar ɣef tmahilin
- changesets:
- show:
- comment: Awennit
- subscribe: Jerred
- unsubscribe: Ffeɣ seg ujerred
- hide_comment: ffer
- unhide_comment: sken
directions:
engines:
fossgis_osrm_car: S tkeṛṛust (OSRM)
show:
title: 'Өңдеме дестесі: %{id}'
discussion: Талқылау
+ subscribe: Жазылу
+ hide_comment: жасыру
+ unhide_comment: көрсету
changesetxml: Өңдеме дестесінің XML-і
osmchangexml: osmChange XML
paging_nav:
confirm: Құптау
location:
edit: Өңдеу
- comments:
+ subscribe:
+ button: Талқыға жазылу
+ diary_comments:
+ index:
when: Қашан
comment: Пікір
newer_comments: Жаңалау пікірлер
older_comments: Ескілеу пікірлер
- subscribe:
- button: Талқыға жазылу
doorkeeper:
flash:
applications:
contributors_es_spain: Испания
contributors_za_south_africa: Оңтүстік Африка
contributors_gb_united_kingdom: Ұлыбритания
- index:
- permalink: Тұрақты сілтеме
- shortlink: Қысқа сілтеме
- createnote: Ескертпе қосу
edit:
user_page_link: қолданушы беті
export:
queryfeature_tooltip: Маңайдағы нысандар
queryfeature_disabled_tooltip: Маңайдағы нысандарды көру үшін картаны үлкейтіп
жіберіңіз
- changesets:
- show:
- subscribe: Жазылу
- hide_comment: жасыру
- unhide_comment: көрсету
directions:
engines:
fossgis_osrm_bike: Велосипед (OSRM)
description: ಓಪನ್ಸ್ಟ್ರೀಟ್ಮ್ಯಾಪ್ ನಲ್ಲಿ %{user} ಅವರ ಇತ್ತೀಚಿನ ದಿನಚರಿ ದಾಖಲಾತಿಗಳು
language:
title: '%{language_name} ಭಾಷೆಯಲ್ಲಿ ಓಪನ್ಸ್ಟ್ರೀಟ್ಮ್ಯಾಪ್ನ ದಿನಚರಿ ದಾಖಲಾತಿಗಳು'
- comments:
+ diary_comments:
+ index:
post: ಪೋಸ್ಟ್ ಮಾಡಿ
when: ಯಾವಾಗ
comment: ಟಿಪ್ಪಣಿ
messages:
invalid_email_address: 유효한 이메일 주소로 보이지 않음
email_address_not_routable: 라우팅할 수 없음
+ models:
+ user_mute:
+ is_already_muted: 님은 이미 음소거되어 있습니다
models:
acl: 접근 제어 목록
changeset: 바뀜집합
introduction: 근처의 지물을 찾으려면 지도에서 클릭하세요.
nearby: 근처 지물
enclosing: 근접 지역 내 지물
+ old_nodes:
+ not_found:
+ sorry: '죄송합니다. 버전 %{version}의 노드 #%{id}를 찾을 수 없습니다.'
+ old_ways:
+ not_found:
+ sorry: '죄송합니다. 버전 %{version}의 경로 #%{id}를 찾을 수 없습니다.'
+ old_relations:
+ not_found:
+ sorry: '죄송합니다. 버전 %{version}의 관계 #%{id}를 찾을 수 없습니다.'
changesets:
changeset_paging_nav:
showing_page: '%{page}쪽'
discussion: 토론
join_discussion: 토론에 참여하려면 로그인하세요
still_open: 바뀜집합이 아직 열려 있습니다 - 토론은 바뀜집합이 닫히면 시작됩니다.
+ subscribe: 구독
+ unsubscribe: 구독 해지
comment_by_html: '%{time_ago} %{user}님의 의견'
hidden_comment_by_html: '%{time_ago} %{user}님의 비밀 의견'
+ hide_comment: 숨기기
+ unhide_comment: 숨기기 취소
+ comment: 의견
changesetxml: 바뀜집합 XML
osmchangexml: osmChange XML
paging_nav:
all:
title: 오픈스트리트맵 일기 항목
description: 오픈스트리트맵 사용자의 최근 일기 항목
- comments:
+ subscribe:
+ heading: 다음 일기 항목 토론에 구독하시겠습니까?
+ button: 토론 구독
+ unsubscribe:
+ button: 토론 구독 취소
+ diary_comments:
+ index:
title: '%{user}님이 추가한 일기 댓글'
heading: '%{user}의 일기 댓글'
subheading_html: '%{user}님이 추가한 일기 댓글'
comment: 의견
newer_comments: 새 의견
older_comments: 이전 의견
- subscribe:
- heading: 다음 일기 항목 토론에 구독하시겠습니까?
- button: 토론 구독
- unsubscribe:
- button: 토론 구독 취소
doorkeeper:
flash:
applications:
contact: 여러 연락 수단
contact_the_community_html: 끊어진 링크나 버그를 발견했다면 언제든지 오픈스트리트맵 커뮤니티에 %{contact_link}으로
알려주십시오. 요청의 정확한 URL을 기록해 두십시오.
+ bad_request:
+ title: 잘못된 요청
forbidden:
title: 접근 거부됨
description: 오픈스트리트맵 서버에 요청한 이 작업은 관리자만 사용할 수 있습니다(HTTP 403).
lost password link: 비밀번호를 잊으셨나요?
login_button: 로그인
register now: 지금 등록하세요
- with external: '다른 제3자 로그인 방식 사용하기:'
+ with external: 혹은 제3자 방식으로 로그인하기
+ or: 혹은
auth failure: 죄송합니다, 입력한 정보로 로그인할 수 없습니다.
destroy:
title: 로그아웃
index:
js_1: 자바스크립트를 지원하지 않는 브라우저를 사용 중이거나, 자바스크립트가 활성화되어 있지 않습니다.
js_2: 오픈스트리트맵은 매끄러운 지도를 위해 자바스크립트를 사용합니다.
- permalink: 고유링크
- shortlink: 짧은링크
- createnote: 참고 추가
license:
copyright: 저작권 오픈스트리트맵 및 기여자, 오픈 라이선스로 배포
remote_failed: 편집을 실패했습니다 - JOSM이나 Merkaartor를 불러왔고 원격 제어 설정이 활성화되어 있는지 확인하세요
lake: 호수
reservoir: 저수지
glacier: 빙하
+ reef: 암초
wetland: 습지
farm: 농장
brownfield: 재개발지역
imports: 들여오기
automated_edits: 자동화 편집
start_mapping: 매핑 시작하기
+ continue_authorization: 승인 계속하기
add_a_note:
title: 편집할 짬을 내기가 어려우신가요? 손쉽게 '노트'(참고)를 덧붙이세요!
para_1: 가입한 다음 편집 방법을 배울 시간이 없거나 자잘한 사항만 고치고 싶은 경우, '노트'(참고)를 덧붙여서 알려주면 쉽습니다.
identifiable: 식별 가능
private: 비공개
trackable: 추적 가능
+ details_without_tags_html: '%{time_ago} %{user}님'
index:
public_traces: 공개 GPS 궤적
my_gps_traces: 내 GPS 궤적
users:
new:
title: 가입하기
+ tab_title: 가입하기
no_auto_account_create: 불행하게도 현재로서는 자동으로 계정을 만들 수 없습니다.
please_contact_support_html: 계정 생성 준비를 위해 %{support_link}(으)로 문의해 주세요. 요청 처리가
최대한 빨리 이뤄질 수 있도록 노력하겠습니다.
header: 자유롭게 편집 가능
paragraph_1: 다른 지도와 달리 오픈스트리트맵은 전부 여러분과 같은 사람들이 제작했으며 누구나 자유롭게 수정, 업데이트, 다운로드,
사용을 할 수 있습니다.
- paragraph_2: 기여를 시작하려면 가입하세요. 당신의 계정 확인을 위해 이메일을 보내드리겠습니다.
+ paragraph_2: 회원 가입으로 기여를 시작해 봅시다.
+ welcome: 오픈스트리트맵에 오신 것을 환영합니다
display name description: 공개적으로 표시되는 사용자 이름입니다. 나중에 환경 설정에서 바꿀 수 있습니다.
+ tou: 이용 약관
+ contributor_terms: 기여자 약관
external auth: '제3자 인증:'
continue: 가입하기
terms accepted: 새 기여자 약관에 동의해 주셔서 감사합니다!
email_help_html: 당신의 주소는 공개적으로 노출되지 않습니다. 자세한 내용은 %{privacy_policy_link}를 참조하세요.
privacy_policy: 개인정보처리방침
privacy_policy_title: 이메일 주소 섹션을 포함한 OSMF 개인 정보 보호 정책
+ consider_pd: 퍼블릭 도메인
+ or: 혹은
use external auth: 다른 제3자 로그인 방식 사용하기
terms:
title: 약관
my_dashboard: 내 대시보드
blocks on me: 나를 차단
blocks by me: 나한테 차단
+ create_mute: 이 사용자 음소거하기
+ destroy_mute: 이 사용자를 음소거 해제
edit_profile: 프로필 수정
send message: 메시지 보내기
diary: 일기
flash: 이 차단을 해제했습니다.
revoke_all:
revoke: 해제!
+ flash: 모든 차단 내역이 비활성화되었습니다.
helper:
time_future_html: '%{time}에 끝납니다.'
until_login: 사용자가 로그인할 때까지 활성합니다.
reason: 차단 이유
status: 상태
revoker_name: 해제자
+ older: 옛 차단내역
+ newer: 최근 차단내역
navigation:
all_blocks: 모든 차단
+ blocks_on_me: 나의 차단내역
+ blocks_on_user: '%{user}님의 차단내역'
+ blocks_by_me: 내가 차단한 내역
+ blocks_by_user: '%{user}님이 차단한 내역'
block: '#%{id} 차단'
user_mutes:
index:
thead:
actions: 동작
tbody:
+ unmute: 음소거 해제
send_message: 메시지 보내기
+ create:
+ notice: '%{name}님을 음소거했습니다.'
+ error: '%{name}님을 음소거할 수 없습니다. %{full_message}.'
+ destroy:
+ notice: '%{name}님의 음소거를 해제했습니다.'
+ error: 유저의 음소거를 해제할 수 없습니다. 다시 시도해 주세요.
notes:
index:
title: '%{user} 님이 제출했거나 덧글을 남긴 참고'
title: 새로운 참고
intro: 실수했거나 없는 무언가를 발견했나요? 다른 매퍼에게 알려주어 고칠 수 있게 해주세요. 마커를 올바른 위치로 이동하고, 참고를
남겨 문제를 설명해주세요.
+ anonymous_warning_log_in: 로그인
+ anonymous_warning_sign_up: 가입하기
advice: 노트는 공개되어 지도 업데이트에 쓰일 수 있으므로 개인정보 또는 저작권이 있는 지도나 디렉터리 리스팅의 정보를 입력하지 마십시오.
add: 참고 추가
javascripts:
queryfeature_tooltip: 지물 정보
queryfeature_disabled_tooltip: 지물 정보를 확인하려면 확대
embed_html_disabled: 이 지도 레이어에는 HTML 임베딩을 사용할 수 없습니다.
- changesets:
- show:
- comment: 의견
- subscribe: 구독
- unsubscribe: 구독 해지
- hide_comment: 숨기기
- unhide_comment: 숨기기 취소
edit_help: 편집하려는 위치에 지도를 이동하고 확대한 다음, 여기를 클릭하세요.
directions:
ascend: 올라가기
join_discussion: Ji bo ku beșdarî guftûgoyan bibî têkeve
still_open: Qeyda guhartinan hê jî vekirî ye - wê gotûbêj piştî ku qeyda guhartinan
hate girtin vebibe.
+ subscribe: Bibe abone
+ unsubscribe: Ji abonetiyê derkeve
comment_by_html: Şîroveya ji %{user} %{time_ago}
hidden_comment_by_html: Şîroveya veşartî ji %{user} %{time_ago}
+ hide_comment: veşêre
+ unhide_comment: neveşêre
+ comment: Şîrove
changesetxml: Desteya guhartinan a XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Nivîsên rojane yên OpenStreetMapê
description: Nivîsên rojane yên bikarhênerên OpenStreetMapê
- comments:
+ diary_comments:
+ index:
title: Şîroveyên Rojnivîskê ji aliyê %{user} ve hatiye kirin
heading: Şîroveyên Rojnivîskê yên %{user}
subheading_html: Şîroveyên Rojnivîskê ji aliyê %{user} ve hatiye tevlîkirin
hatiye neçalakkirin.
js_2: OpenStreetMap ji bo nîşandana nexşeya xwe ya şemetok JavaScriptê bi kar
tîne.
- permalink: Lînka daîmî
- shortlink: Lînka kurt
- createnote: Notek binivîse
license:
copyright: Mafê daneriyê ya OpenStreetMapê û beşdarên me, di bin lîsansa vekirî
de ne
map_data_zoom_in_tooltip: Ji bo ku daneyên nexşeyê bibînî nêzîk bike
queryfeature_tooltip: Taybetmendiyan nîşan bide
queryfeature_disabled_tooltip: Ji bo ku taybetmendiyan bibînî nêzîk bike
- changesets:
- show:
- comment: Şîrove
- subscribe: Bibe abone
- unsubscribe: Ji abonetiyê derkeve
- hide_comment: veşêre
- unhide_comment: neveşêre
edit_help: Nexşeyê bide hereketkirin û li cihê ku tu dixwazî biguherînî nêzîk
bike, piştre jî bitikîne ser vir.
directions:
join_discussion: Loggt Iech an, fir bei der Diskussioun matzemaachen
still_open: Den Ännerungssaz ass nach op. 'Diskussioun gëtt opgemaach, esoubal
wéi den Ännerungssaz zou ass.
+ subscribe: Abonéieren
+ unsubscribe: Ofbestellen
+ hide_comment: verstoppen
+ unhide_comment: nees weisen
+ comment: Kommentéieren
changesetxml: XML mam Set vun Ännerungen
osmchangexml: osmChange XML
paging_nav:
title: Blog vun %{user} | %{title}
user_title: Blog vun %{user}
discussion: Diskussioun
+ subscribe: Abonéieren
+ unsubscribe: Ofbestellen
leave_a_comment: Eng Bemierkung maachen
login_to_leave_a_comment_html: '%{login_link} fir eng Bemierkung ze schreiwen'
login: Aloggen
all:
title: OpenStreetMap Blogbäiträg
description: Neiest Bloganträg vun OpenStreetMap-Benotzer
- comments:
+ diary_comments:
+ index:
title: Tagebuch Kommentarer bäigefüügt vum %{user}
heading: '%{user}''s Tagebuch Kommentarer'
subheading_html: Tagebuch Kommentarer bäigefüügt vum %{user}
subject: '[OpenStreetMap] GPX-Import erfollegräich'
signup_confirm:
subject: '[OpenStreetMap] Wëllkomm bei OpenStreetMap'
- greeting: Bonjour !
+ greeting: Moien!
created: Iergendeen (hoffentlech du) huet grad bei %{site_url} e Benotzerkont
erstallt
confirm: Ier mir eppes ënnerhuelen, brauche mir eng Bestätegung, datt dës Ufro
js_1: Dir hutt entweder e Browser dee JavaScript net ënnerstëtzt oder Dir hutt
JavaScript desaktivéiert.
js_2: OpenStreetMap benotzt JavaScript fir d'Kaartenduerstellung
- permalink: Permanentlink
- shortlink: Kuerze Link
- createnote: Eng Notiz derbäisetzen
license:
copyright: Copyright OpenStreetMap a Matwierkend, ënner enger oppener Lizenz
edit:
description_without_count: GPX-Fichier vum %{user}
application:
oauth_10a_disabled: 'OAuth 1.0 an 1.0a sinn desaktivéiert: %{link}'
- auth_disabled_link: https://wiki.openstreetmap.org/wiki/2024_authentication_update
settings_menu:
account_settings: Astellunge vum Benotzerkont
oauth1_settings: OAuth 1-Astellungen
notes: Notizen op der Kaart
remove as friend: Frënd ewechhuelen
add as friend: Frënd derbäisetzen
+ no activity yet: Nach keng Aktivitéit
email address: 'E-Mail-Adress:'
status: 'Status:'
role:
map_data_zoom_in_tooltip: Vergréisser d'Kaart, fir 'Donnéeën ze gesinn
queryfeature_tooltip: Objetsoffro
queryfeature_disabled_tooltip: Fir Objetsoffro vergréisseren
- changesets:
- show:
- comment: Kommentéieren
- subscribe: Abonéieren
- unsubscribe: Ofbestellen
- hide_comment: verstoppen
- unhide_comment: nees weisen
edit_help: Vergréisser a verschib d'Kaart un en Uert, deens du beaarbechte wëlls,
a klick hei
directions:
join_discussion: Prisijunkite norėdami dalyvauti aptarime
still_open: Pakeitimas vis dar atidarytas - diskusija prasidės tik uždarius
pakeitimą.
+ subscribe: Užsisakyti
+ unsubscribe: Atsisakyti
comment_by_html: Komentaras nuo %{user} %{time_ago}
hidden_comment_by_html: Paslėptas komentaras nuo %{user} %{time_ago}
+ hide_comment: slėpti
+ unhide_comment: neslėpti
+ comment: Komentuoti
changesetxml: Pakeitimo XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap dienoraščio įrašai
description: Paskutiniai OpenStreetMap naudotojų dienoraščių įrašai
- comments:
+ diary_comments:
+ index:
title: Dienoraščio komentarus pridėjo %{user}
heading: Naudotojo %{user} dienoraščio komentarai
subheading_html: Dienoraščio komentarus pridėjo %{user}
js_1: Jūs arba naudojate naršyklę, nepalaikančią JavaScript, arba išjungėte
JavaScript palaikymą.
js_2: OpenStreetMap naudoja JavaScript savo 'slidžiam' žemėlapiui
- permalink: Nuoroda į šią vietą
- shortlink: Trumpoji nuoroda
- createnote: Pridėti pastabą
license:
copyright: Teisės priklauso OpenStreetMap ir prie projekto prisidėjusiems,
pagal atvirą licenciją.
map_data_zoom_in_tooltip: Padidinkite, norėdami matyti žemėlapio duomenis
queryfeature_tooltip: Ieškoti objektų
queryfeature_disabled_tooltip: Padidinkite, norėdami ieškoti objektų
- changesets:
- show:
- comment: Komentuoti
- subscribe: Užsisakyti
- unsubscribe: Atsisakyti
- hide_comment: slėpti
- unhide_comment: neslėpti
edit_help: Pastumkite žemėlapį ir padidinkite vietą, kurią norite keisti, tada
spauskite čia.
directions:
closed_ago_html: Slēgts %{time_ago}
discussion: Diskusija
join_discussion: Ieejiet sistēmā lai pievienotos diskusijai
+ subscribe: Abonēt
+ unsubscribe: Atteikties no abonējuma
+ hide_comment: paslēpt
+ unhide_comment: parādīt
+ comment: Komentēt
changesetxml: Izmaiņu kopas XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap dienasgrāmatu ieraksti
description: Pēdējie dienasgrāmatu ieraksti no OpenStreetMap lietotājiem
- comments:
+ diary_comments:
+ index:
post: Publicēt
when: Kad
comment: Komentārs
js_1: Vai nu jūs lietojat pārlūkprogrammu, kas neatbalsta JavaScript, vai arī
jūsu pārlūkprogrammā JavaScript ir atslēgts.
js_2: OpenStreetMap kartes rādīšanai lieto JavaScript.
- permalink: Pastāvīgā saite
- shortlink: Īsā saite
- createnote: Pievienot piezīmi
license:
copyright: Autortiesības OpenStreetMap un tā veidotāji, zem atvērtas licences
remote_failed: Rediģēšana neizdevās - pārbaudi, ka JOSM vai Merkaartor ir ieslēgts
map_data_zoom_in_tooltip: Pietuvināt, lai redzētu kartes datus
queryfeature_tooltip: Vaicājuma funkcijas
queryfeature_disabled_tooltip: Tuvināt pie kārtas funkcijām
- changesets:
- show:
- comment: Komentēt
- subscribe: Abonēt
- unsubscribe: Atteikties no abonējuma
- hide_comment: paslēpt
- unhide_comment: parādīt
edit_help: Pārvieto karti un pietuvini vietai, kuru vēlies labot, tad spied šeit.
directions:
ascend: Kāpums
join_discussion: Најавете се за да се приклучите во разговорот
still_open: Измените сè уште се отворени — разговорот ќе се отвори штом ќе се
затворат измените.
+ subscribe: Претплати се
+ unsubscribe: Отпиши ме
comment_by_html: Коментар од %{user} %{time_ago}
hidden_comment_by_html: Скриен коментар од %{user} %{time_ago}
+ hide_comment: скриј
+ unhide_comment: откриј
+ comment: Коментирај
changesetxml: XML за измените
osmchangexml: osmChange XML
paging_nav:
title: Дневникот на %{user} | %{title}
user_title: Дневникот на %{user}
discussion: Разговор
+ subscribe: Претплати се
+ unsubscribe: Отпиши ме
leave_a_comment: Напиши коментар
login_to_leave_a_comment_html: '%{login_link} за да оставите коментар'
login: Најава
all:
title: Дневнички ставки
description: Скорешни дневнички ставки од корисници на OpenStreetMap
- comments:
+ subscribe:
+ heading: Да ве претплатам на разговорот во следната дневничка ставка?
+ button: Претплати се на разговорот
+ unsubscribe:
+ heading: Да ве отпишам од претплатата на разговорот во следната дневничка ставка?
+ button: Отпиши се од разговорот
+ diary_comments:
+ index:
title: Дневнички коментари додадени од %{user}
heading: Дневнички коментари на %{user}
subheading_html: Дневнички коментари додадени од %{user}
comment: Коментар
newer_comments: Понови коментари
older_comments: Постари коментари
- subscribe:
- heading: Да ве претплатам на разговорот во следната дневничка ставка?
- button: Претплати се на разговорот
- unsubscribe:
- heading: Да ве отпишам од претплатата на разговорот во следната дневничка ставка?
- button: Отпиши се од разговорот
doorkeeper:
errors:
messages:
Белешката се наоѓа близу %{place}.'
commented_note_html: '%{commenter} реши картографска белешка на која имате
коментирано. Белешката се наоѓа близу %{place}.'
- details: Ð\9fоподÑ\80обно за белешката на %{url}.
- details_html: Ð\9fоподÑ\80обно за белешката на %{url}.
+ details: Ð\9eдговоÑ\80еÑ\82е или дознаÑ\98Ñ\82е повеÑ\9cе за белешката на %{url}.
+ details_html: Ð\9eдговоÑ\80еÑ\82е или дознаÑ\98Ñ\82е повеÑ\9cе за белешката на %{url}.
changeset_comment_notification:
description: Измени бр. %{id} во OpenStreetMap
hi: Здраво %{to_user},
partial_changeset_with_comment: со коментарот „%{changeset_comment}“
partial_changeset_with_comment_html: со коментарот „%{changeset_comment}“
partial_changeset_without_comment: без коментар
- details: Ð\9fоподÑ\80обно за промената на %{url}.
- details_html: Ð\9fоподÑ\80обно за промената на %{url}.
+ details: Ð\9eдговоÑ\80еÑ\82е или дознаÑ\98Ñ\82е повеÑ\9cе за промената на %{url}.
+ details_html: Ð\9eдговоÑ\80еÑ\82е или дознаÑ\98Ñ\82е повеÑ\9cе за промената на %{url}.
unsubscribe: Можете да се отпишете од подновите за овие измени на %{url}.
unsubscribe_html: Можете да се отпишете од подновите за овие измени на %{url}.
confirmations:
js_1: Или користите прелистувач кој не поддржува JavaScript, или пак сте го
оневозможиле тој програм.
js_2: OpenStreetMap користи JavaScript за нејзината лизгава карта.
- permalink: Постојана врска
- shortlink: Кратка врска
- createnote: Додај белешка
license:
copyright: Авторски права OpenStreetMap и учесниците, под отворена лиценца
remote_failed: Уредувањето не успеа - проверете дали е вчитан JOSM или Merkaartor
application:
basic_auth_disabled: 'Оневозможена е основната заверка со HTTP: %{link}'
oauth_10a_disabled: 'OAuth 1.0 и 1.0a се оневозможени: %{link}'
- auth_disabled_link: https://wiki.openstreetmap.org/wiki/2024_authentication_update
permission_denied: Немате дозвола за ова дејство
require_cookies:
cookies_needed: Изгледа сте оневозможиле колачиња - дозволете колачиња во прелистувачот
remove as friend: Отстрани од пријатели
add as friend: Додај во пријатели
mapper since: 'Картограф од:'
+ last map edit: 'Последно уредување на картата:'
+ no activity yet: Сè уште нема активности
uid: 'Корисничка назнака:'
ct status: 'Услови за учество:'
ct undecided: Неодлучено
queryfeature_tooltip: Пребарување на елементи
queryfeature_disabled_tooltip: Зголеми на пребарувањето на елементи
embed_html_disabled: Вградувањето на HTML не е достапно за овој слој на картата
- changesets:
- show:
- comment: Коментирај
- subscribe: Претплати се
- unsubscribe: Отпиши ме
- hide_comment: скриј
- unhide_comment: откриј
edit_help: Поместете ја картата и приближете во местото што сакате да го уредите,
па стиснете тука.
directions:
confirm: Конфирмаре
location:
edit: Редактаре
- comments:
+ diary_comments:
+ index:
post: Месаж
when: Кынд
comment: Коментариу
show:
title: 'बदलसंच: %{id}'
join_discussion: चर्चेत सहभागी होण्यासाठी सनोंद प्रवेश करा
+ comment: टिप्पणी
changesetxml: बदलसंच XML
osmchangexml: osmChange XML
paging_nav:
all:
title: ओपनस्ट्रीटमॅप अनुदिनीतील नोंदी
description: ओपनस्ट्रीटमॅप सदस्यांकडून अलीकडील अनुदिनी-नोंदी
- comments:
+ diary_comments:
+ index:
post: पाठवा
when: कधी
comment: टिप्पणी
js_1: आपण जावास्क्रीप्ट चालवू न शकणारा न्याहाळक वापरत आहात, किंवा जावास्क्रीप्ट
निष्क्रिय आहे.
js_2: ओपनस्ट्रीटमॅप सरकत्या नकाशासाठी जावास्क्रीप्टचा वापर करते.
- permalink: शाश्वत दुवा
- shortlink: लघुदुवा
- createnote: टीप जोडा
license:
copyright: प्रताधिकार ओपनस्ट्रीटमॅप आणि योगदाते, खुल्या परवान्यांतर्गत
remote_failed: संपादन अयशस्वी - JOSM किंवा Merkaartor चालू केले आहे आणि रिमोट
createnote_disabled_tooltip: नकाशावर टीप जोडण्यासाठी झूम करा
queryfeature_tooltip: वस्तूंची विचारणा
queryfeature_disabled_tooltip: वस्तूंची विचारणा करण्यासाठी झूम करा
- changesets:
- show:
- comment: टिप्पणी
directions:
instructions:
offramp_right_with_exit: उजवीकडील %{exit}ने बाहेर पडा
title: 'Set Ubah: %{id}'
discussion: Perbincangan
join_discussion: Daftar masuk untuk perbincangan
+ subscribe: Langgan
+ unsubscribe: Berhenti melanggan
+ hide_comment: sorokkan
+ unhide_comment: Dedahkan
+ comment: Komen
changesetxml: XML Set Ubah
osmchangexml: XML osmChange
paging_nav:
all:
title: Catatan diari OpenStreetMap
description: Catatan-catatan diari terbaru oleh pengguna OpenStreetMap
- comments:
+ diary_comments:
+ index:
no_comments: Tiada ulasan diari
post: Muat Naik
when: Bila
url: URL
richtext_field:
edit: Sunting
- preview: Pralihat
+ preview: Pratayang
site:
about:
next: Berikutnya
js_1: Anda sedang menggunakan pelayar web yang tidak menyokong JavaScript, ataupun
anda tidak menghidupkan JavaScript.
js_2: OpenStreetMap menggunakan JavaScript untuk peta licinnya.
- permalink: Pautan Kekal
- shortlink: Pautan Ringkas
- createnote: Tambah nota
license:
copyright: Hak cipta OpenStreetMap dan para penyumbang di bawah lesen terbuka
remote_failed: Penyuntingan gagal - pastikan JOSM atau Merkaartor dimuatkan
createnote_disabled_tooltip: Zum dekat untuk meletakkan nota pada peta
map_notes_zoom_in_tooltip: Zum dekat untuk membaca nota peta
map_data_zoom_in_tooltip: Zum dekat untuk membaca data peta
- changesets:
- show:
- comment: Komen
- subscribe: Langgan
- unsubscribe: Berhenti melanggan
- hide_comment: sorokkan
- unhide_comment: Dedahkan
edit_help: Alihkan peta dan zum dekat pada lokasi yang ingin anda sunting, kemudian
klik di sini.
directions:
show:
discussion: ဆွေးနွေးချက်
join_discussion: ဆွေးနွေးရန် လော့အင်ဝင်ပါ
+ hide_comment: ဝှက်
+ unhide_comment: မဝှက်တော့ရန်
changeset_comments:
comment:
commented_at_by_html: '%{user} က %{when} အကြာက မွမ်းမံခဲ့သည်'
location: 'တည်နေရာ:'
view: ကြည့်ရန်
edit: ပြင်ဆင်ရန်
- comments:
+ diary_comments:
+ index:
comment: မှတ်ချက်
newer_comments: ပိုသစ်သော မှတ်ချက်များ
older_comments: ပိုဟောင်းသော မှတ်ချက်များ
legal_babble:
title_html: မူပိုင်ခွင့်နှင့် လိုင်စင်
contributors_title_html: မိမိတို့၏ ပံ့ပို့ပေးသူများ
- index:
- permalink: ပုံသေလိပ်စာ
edit:
user_page_link: အသုံးပြုသူ စာမျက်နှာ
export:
image: ရုပ်ပုံ
long_link: လင့်
download: ဒေါင်းလုဒ်
- changesets:
- show:
- hide_comment: ဝှက်
- unhide_comment: မဝှက်တော့ရန်
directions:
distance: အကွာအဝေး
time: အချိန်
# Messages for Norwegian Bokmål (norsk bokmål)
# Exported from translatewiki.net
# Export driver: phpyaml
+# Author: 6400
# Author: Abbe98
# Author: Citadell
# Author: Danieldegroot2
# Author: SuperPotato
# Author: The real emj
# Author: Yupik
-# Author: 6400
---
nb:
time:
join_discussion: Logg inn for å delta i diskusjonen
still_open: Endringssettet er fortsatt åpent – diskusjonen åpner når endringssettet
er lukket.
+ subscribe: Abonner
+ unsubscribe: Avslutt abonnement
+ hide_comment: skjul
+ unhide_comment: vis
+ comment: Kommenter
changesetxml: XML for endringssett
osmchangexml: osmChange-XML
paging_nav:
all:
title: Innlegg i OpenStreetMap-dagboka
description: Nye innlegg i dagbøkene til OpenStreetMap-brukere
- comments:
+ diary_comments:
+ index:
post: Artikkel
when: Når
comment: Kommentar
js_1: Du har en nettleser som ikke støtter JavaScript eller så har du slått
av JavaScript.
js_2: OpenStreetMap bruker JavaScript på kartsidene.
- permalink: Permanent lenke
- shortlink: Kort lenke
- createnote: Legg til en merknad
license:
copyright: Rettighetshaver OpenStreetMap og bidragsytere, under en åpen lisens
remote_failed: Klarte ikke redigere - forsikre deg at JOSM eller Merkaartor
map_data_zoom_in_tooltip: Forstørr utvalg for å se kartdata
queryfeature_tooltip: Se over elementer
queryfeature_disabled_tooltip: Forstørr utvalg for å se over elementer
- changesets:
- show:
- comment: Kommenter
- subscribe: Abonner
- unsubscribe: Avslutt abonnement
- hide_comment: skjul
- unhide_comment: vis
edit_help: Flytt kartet og forstørr utvalg til et sted du vil redigere, og klikk
så her.
directions:
copyright:
native:
title: Över disse Siet
- index:
- permalink: Permalink
- shortlink: Kortlink
edit:
user_page_link: Brukersied
export:
# Author: Bada Kaji
# Author: Danieldegroot2
# Author: Drjpoudel
+# Author: Gravitystorm
# Author: Haribanshi
# Author: Krish Dulal
# Author: Nirajan pant
# Author: हिमाल सुबेदी
---
ne:
+ html:
+ dir: ltr
time:
formats:
friendly: '%e %B %Y मा %H:%M'
+ count:
+ at_least_pattern: '%{count}+'
helpers:
file:
prompt: फाइल छान्नुहोस्
oauth2_application:
create: दर्ता गर्नुहाेस्
update: अद्यावधिक गर्नुहोस्
+ redaction:
+ create: डेटा हटाउनुहोस्
+ update: डेटा हटाउने सङ्ग्रह गर्नुहोस्
trace:
- create: अपलोड गर्ने
- update: परिवर्तनहरू संग्रह गर्ने
+ create: अपलोड गर्नुहोस्
+ update: परिवर्तनहरू संग्रह गर्नुहोस्
+ user_block:
+ create: ब्लक सिर्जना गर्नुहोस्
+ update: ब्लक अद्यावधिक गर्नुहाेस्
activerecord:
+ errors:
+ messages:
+ invalid_email_address: इमेल मान्य देखिँदैन
+ email_address_not_routable: राउटेबल छैन
+ models:
+ user_mute:
+ is_already_muted: पहिले नै म्युट गरिएको छ
models:
acl: अनुमति नियन्त्रण सूची
changeset: परिवर्तनहरू सूची
diary_comment: डायरी टिप्पणी
diary_entry: डायरी प्रविष्टी
friend: साथी
+ issue: इस्यु
language: भाषा
message: सन्देश
node: नोड
relation: रिलेशन
relation_member: रिलेशन सदस्य
relation_tag: सम्बन्ध चिनो
+ report: रिपोर्ट गर्नुहोस्
session: सत्र
trace: ट्रेस
tracepoint: ट्रेस बिन्दु
way_node: बाटो नोड
way_tag: मार्ग चिनो
attributes:
+ client_application:
+ name: नाम (आवश्यक)
+ url: मुख्य एप्लिकेसन युआरएल (आवश्यक)
+ callback_url: कलब्याक युआरएल
+ support_url: सहायता युआरएल
+ allow_read_prefs: उनीहरूको प्रयोगकर्ता अभिरुचीहरू पढ्नुहोस्
+ allow_write_prefs: उनीहरूको प्रयोगकर्ता अभिरुचीहरू परिमार्जन गर्नुहोस्
+ allow_write_diary: डायरी प्रविष्टी गर्नुहोस्, टिप्पणीहरू र साथी बनाउनुहोस्
+ allow_write_api: नक्सा परिमार्जन गर्नुहोस्
+ allow_read_gpx: उनीहरूको निजी जिपिएस ट्रेसहरू पढ्नुहोस्
+ allow_write_gpx: जिपिएस ट्रेसहरू अपलोड गर्नुहोस्
+ allow_write_notes: टिपोटहरू परिमार्जन गर्नुहोस्
diary_comment:
body: बडी
diary_entry:
user: प्रयोगकर्ता
title: विषय
+ body: बडी
latitude: अक्षांश
longitude: देशान्तर
language_code: भाषा
+ doorkeeper/application:
+ name: नाम
+ redirect_uri: रिडाइरेक्ट युआरआइहरू
+ confidential: गोप्य एप्लिकेसन?
+ scopes: अनुमतिहरू
friend:
user: प्रयोगकर्ता
friend: साथी
trace:
user: प्रयोगकर्ता
visible: देखिने
- name: नाम
+ name: फाà¤\87ल नाम
size: आकार
latitude: अक्षांश
longitude: देशान्तर
public: सार्वजनिक
description: वर्णन
- gpx_file: 'जिपिएक्स फाइल उर्ध्वभरण गर्नुहाेस्:'
- visibility: 'दृश्यक्षमता:'
- tagstring: ट्यागहरूः
+ gpx_file: GPX फाइल अपलोड गर्नुहोस्
+ visibility: प्रदर्शन
+ tagstring: ट्यागहरू
message:
sender: पठाउने
title: विषय
body: बडी
recipient: प्रापक
redaction:
+ title: शीर्षक
description: वर्णन
+ report:
+ category: तपाईँको रिपोर्टको कारण छान्नुहोस्
+ details: कृपया समस्या बारे केही थप विवरणहरू प्रदान गर्नुहोस् (आवश्यक)।
user:
+ auth_provider: प्रमाणीकरण प्रदायक
+ auth_uid: प्रमाणीकरण युआइडी
email: इमेल
+ new_email: नयाँ इमेल ठेगाना
active: सक्रिय
display_name: देखाउने नाम
- description: वर्णन
- home_lat: 'देशान्तर:'
- home_lon: 'अक्षांश:'
- languages: भाषाहरू
+ description: प्रोफाइल विवरण
+ home_lat: अक्षांश
+ home_lon: देशान्तर
+ languages: रुचाइएका भाषाहरू
+ preferred_editor: रुचाइएको सम्पादक
pass_crypt: पासवर्ड
+ pass_crypt_confirmation: पासवर्ड निश्चित गर्नुहोस्
help:
+ doorkeeper/application:
+ redirect_uri: प्रति युआरआई एउटा पङ्क्ति प्रयोग गर्नुहोस्
trace:
tagstring: अल्पविरामले छुट्याएको
+ user:
+ new_email: (सार्वजनिक रूपमा कहिल्यै देखाइएको छैन)
+ datetime:
+ distance_in_words_ago:
+ about_x_hours:
+ one: लगभग %{count} घण्टा अघि
+ other: लगभग %{count} घण्टा अघि
+ about_x_months:
+ one: लगभग %{count} महिना अघि
+ other: लगभग %{count} महिना अघि
+ about_x_years:
+ one: लगभग %{count} घण्टा अघि
+ other: लगभग %{count} घण्टा अघि
+ almost_x_years:
+ one: लगभग %{count} वर्ष पहिले
+ other: लगभग %{count} वर्ष पहिले
+ half_a_minute: आधा मिनेट अघि
+ less_than_x_seconds:
+ one: '%{count} सेकेन्ड भन्दा कम'
+ other: '%{count} सेकेन्ड अघि'
+ less_than_x_minutes:
+ one: '%{count} मिनेट भन्दा कम'
+ other: '%{count} मिनेट अघि'
+ over_x_years:
+ one: लगभग %{count} वर्ष पहिले
+ other: लगभग %{count} वर्ष पहिले
+ x_seconds:
+ one: '%{count} सेकेन्ड अघि'
+ other: '%{count} सेकेन्ड अघि'
+ x_minutes:
+ one: '%{count} मिनेट पहिले'
+ other: '%{count} मिनेट पहिले'
+ x_days:
+ one: '%{count} दिन अघि'
+ other: '%{count} दिन अघि'
+ x_months:
+ one: '%{count} महिना अघि'
+ other: '%{count} महिना अघि'
+ x_years:
+ one: लगभग %{count} वर्ष पहिले
+ other: लगभग %{count} वर्ष पहिले
editor:
default: पूर्वस्थापित(अहिलेको %{name})
id:
description: iD (ब्राउजर सम्पादक)
remote:
name: रिमोट कन्ट्रोल
- description: रिमोट कन्ट्रोल (JOSM वा Merkaartor)
+ description: रिमोट कन्ट्रोल (JOSM, Potlatch, Merkaartor)
+ auth:
+ providers:
+ none: कुनै पनि होइन
+ google: गुगल
+ facebook: फेसबुक
+ github: गिटहब
+ wikipedia: विकिपिडिया
api:
notes:
+ comment:
+ commented_at_by_html: '%{user} द्वारा %{when} पहिले अद्यावधिक गरिएको'
+ rss:
+ title: ओपनस्ट्रिटम्याप टिप्पणीहरू
entry:
comment: टिप्पणी
+ full: पूर्ण टिप्पणी
+ account:
+ deletions:
+ show:
+ title: मेरो खाता मेटाउनुहोस्
+ delete_account: खाता मेटाउनुहोस्
+ confirm_delete: निश्चित हुनुहुन्छ ?
+ cancel: रद्द गर्नुहोस्
accounts:
edit:
- my settings: मेरो अनुकुलताहरु
+ title: खाता सम्पादन गर्नुहोस्
+ my settings: मेरो सेटिङहरू
+ current email address: हालको इमेल ठेगाना
+ external auth: वाह्य अथेन्टिकेसन
openid:
+ link: https://wiki.openstreetmap.org/wiki/OpenID
link text: यो के हो ?
public editing:
heading: सार्वजनिक सम्पादन
+ enabled: सक्रिय। Not anonymous and can edit data.
enabled link text: यो के हो ?
disabled link text: म किन सम्पादन गर्न सक्दिन?
contributor terms:
+ heading: योगदानकर्ता सर्तहरू
+ agreed: तपाईँले नयाँ योगदानकर्ता सर्तहरू स्वीकार गर्नुभएको छ।
+ not yet agreed: तपाईँले नयाँ योगदानकर्ता सर्तहरू स्वीकार गर्नुभएको छैन।
link text: यो के हो ?
save changes button: परिवर्तनहरू संग्रह गर्नुहोस्
go_public:
- heading: 'सार्वजनिक सम्पादन:'
+ heading: सार्वजनिक सम्पादन
update:
success_confirm_needed: प्रयोगकर्ताको जानकारीहरू सफलतापूर्वक अध्यावधिक गरियो।
Check your email for a note to confirm your new email address.
feature_warning: '%{num_features}वटा सुविधाहरु लोड हुँदै छन्, जसले गर्दा तपाईंको
ब्राउजर सुस्त वा अनुत्तरदायी बनाउन सक्छ । तपाईं साँच्चै यो जानकारी हेर्न चाहनुहुन्छ
?'
- load_data: डेटा लोडगर्ने
+ load_data: डेटा लोड गर्नुहोस्
loading: खुल्दै छ…
tag_details:
tags: ट्यागहरू
title: परिवर्नहरू
title_user: '%{user}द्वरा गरिएका परिवर्तनहरू'
title_friend: तपाईको मित्रहरूद्वारा गरिएका परिवर्तनहरू
- title_nearby: तपाà¤\88à¤\82 नजिक हुनुभएका प्रयोगकर्ताहरूद्वारा गरिएका परिवर्तनहरू
+ title_nearby: तपाà¤\88à¤\81à¤\95à¥\8b नजिक हुनुभएका प्रयोगकर्ताहरूद्वारा गरिएका परिवर्तनहरू
empty: कुनै पनि परिवर्तनहरू भेटिएनन्।
empty_area: यो क्षेत्रमा कुनै परिवर्तनहरू छैनन्।
empty_user: यस प्रयोगकर्ताद्वारा कुनै परिवर्तनहरू गरिएका छैनन्।
created: सृजना गरिएको
closed: समापन भएको
belongs_to: रचयिता
+ heading:
+ title: 'परिवर्तनहरू: %{id}'
+ no_such_entry:
+ heading: '%{id} आइडी भएको कुनै अभिलेख भेटिएन'
show:
title: 'परिवर्तनहरू: %{id}'
discussion: छलफल
join_discussion: छलफलमा भाग लिन लग इन गर्नुहोस्
+ subscribe: सदस्यता लिनुहोस्
+ unsubscribe: सदस्यता खारेज गर्नुहोस्
+ hide_comment: लुकाउ
+ comment: टिप्पणी
changesetxml: चेन्जसेट XML
osmchangexml: osmChange XML
paging_nav:
relations: सम्बन्धहरू (%{count})
relations_paginated: सम्बन्धहरू (जम्मा %{count} मध्येबाट %{x}-%{y})
timeout:
- sorry: माफ à¤\97रà¥\8dनà¥\81हà¥\8bला, तपाà¤\88à¤\82ले खोज्नुभएको परिवर्तनहरूको सूची प्राप्त गर्न निकै
+ sorry: माफ à¤\97रà¥\8dनà¥\81हà¥\8bला, तपाà¤\88à¤\81ले खोज्नुभएको परिवर्तनहरूको सूची प्राप्त गर्न निकै
समय लाग्यो ।
changeset_comments:
comment:
- comment: ' %{author}द्वारा #%{changeset_id}मा नयाँ टिप्पणी'
- commented_at_by_html: ' %{user} द्वारा %{when} पहिले अद्यावधिक गरिएको'
+ comment: '%{author}द्वारा #%{changeset_id}मा नयाँ टिप्पणी'
+ commented_at_by_html: '%{user} द्वारा %{when} पहिले अद्यावधिक गरिएको'
+ comments:
+ comment: '%{author}द्वारा #%{changeset_id}मा नयाँ टिप्पणी'
index:
title_all: OpenStreetMap परिवर्वतन सूची छलफल
title_particular: 'OpenStreetMap परिवर्तन सूची #%{changeset_id} छलफल'
friend: साथी
show:
my friends: मेरा साथीहरू
- no friends: तपाईं कुनै साथीहरूलाई जोड्नु भएको छैन
+ no friends: तपाईँ कुनै साथीहरूलाई थप्नु भएको छैन
+ nearby users: अन्य नजिकका प्रयोगकर्ताहरू
diary_entries:
new:
title: नयाँ दैनिकी प्रविष्टी
form:
- location: 'स्थान:'
- use_map_link: नक्सा प्रयोगर्ने
+ location: स्थान
+ use_map_link: नक्सा प्रयोग गर्ने
index:
title: प्रयोगकर्ताका डायरीहरू
title_friends: साथीहरूका डायरीहरू
user_title: '%{user}को डायरी'
in_language_title: '%{language} भाषामा भएका दैनिकीहरू'
new: नयाँ दैनिकी
- new_title: तपाईंको डायरीमा नयाँ दैनिकी सिर्जना गर्नुहोस्
+ new_title: तपाईँको डायरीमा नयाँ दैनिकी सिर्जना गर्नुहोस्
+ my_diary: मेरो डायरी
no_entries: कुनै पनि अभिलेखहरू भेटिएनन्
recent_entries: हालैका दैनिकीहरू
older_entries: पुराना अभिलेखहरू
newer_entries: नयाँ अभिलेखहरू
edit:
- title: दà¥\88निà¤\95à¥\80 पà¥\8dरविषà¥\8dठà¥\80 समà¥\8dपादन à¤\97रà¥\8dनà¥\87
- marker_text: दà¥\88निà¤\95ी प्रविष्ठी स्थान
+ title: डायरà¥\80 पà¥\8dरविषà¥\8dठà¥\80 समà¥\8dपादन à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d
+ marker_text: डायरी प्रविष्ठी स्थान
show:
title: '%{user}को डायरी | %{title}'
user_title: '%{user}को डायरी'
+ discussion: छलफल
+ subscribe: सदस्यता लिनुहोस्
+ unsubscribe: सदस्यता खारेज गर्नुहोस्
leave_a_comment: टिप्पणी छोड्ने
login_to_leave_a_comment_html: '%{login_link} टिप्पणी छोड्नलाई'
login: प्रवेश
posted_by_html: '%{link_user}द्वारा %{created}मा %{language_link}भाषामा पोस्ट
गरिएको'
comment_link: यस प्रविष्टीमा टिप्पणी गर्ने
- reply_link: यà¥\8b पà¥\8dरविषà¥\8dà¤\9fà¥\80मा à¤\9cवाफ लà¥\87à¤\96à¥\8dनà¥\87
+ reply_link: लà¥\87à¤\96à¤\95लाà¤\88 सनà¥\8dदà¥\87श पठाà¤\89नà¥\81हà¥\8bसà¥\8d
comment_count:
zero: कुनै टिप्पणीहरू छैनन्
one: '%{count} टिप्पणी'
edit_link: यो प्रविष्टी सम्पादन गर्ने
hide_link: यो प्रविष्टी लुकाउने
confirm: निश्चित गर्नुहोस्
- report: यà¥\8b पà¥\8dरविषà¥\8dà¤\9fà¥\80à¤\95à¥\8b à¤\89à¤\9cà¥\81रà¥\80 à¤\97रà¥\8dनà¥\87
+ report: यà¥\8b पà¥\8dरविषà¥\8dà¤\9fà¥\80à¤\95à¥\8b à¤\89à¤\9cà¥\81रà¥\80 à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d
diary_comment:
comment_from_html: '%{link_user}द्वारा %{comment_created_at}मा गरिएको टिप्पणी'
hide_link: यो टिप्पणी लुकाउनुहोस्
confirm: निश्चित गर्नुहोस्
location:
location: 'स्थान:'
- view: अवलोकन गर्ने
- edit: सम्पादन
+ view: अवलोकन गर्नुहोस्
+ edit: सम्पादन गर्नुहोस्
+ coordinates: '%{latitude}; %{longitude}'
feed:
user:
- title: '%{user}को लागि ओपनस्ट्रीटम्याप दैनिकी'
- description: '%{user}को लागि हालैका ओपनस्ट्रीटम्याप दैनिकीहरू'
+ title: '%{user}को लागि OpenStreetMap डायरी'
+ description: '%{user}को लागि हालैका OpenStreetMap डायरी'
language:
title: '%{language_name} भाषामा OpenStreetMap दैनिकी'
- description: '%{language_name} भाषामा ओपनस्ट्रीटम्याप प्रयोगकर्ताहरूका हालैका
- दà¥\88निà¤\95ी'
+ description: '%{language_name} भाषामा OpenStreetMap प्रयोगकर्ताहरूका हालैका
+ डायरी'
all:
- title: ओपनस्ट्रीटम्याप दैनिकीहरू
- description: ओपनस्ट्रीटम्याप प्रयोगकर्ताहरूका हालैका दैनिकीहरू
- comments:
+ title: OpenStreetMap डायरी प्रविष्टीहरू
+ description: OpenStreetMap प्रयोगकर्ताहरूका हालैका डायरी प्रविष्टीहरू
+ diary_comments:
+ index:
post: पोष्ट
when: कहिले
comment: टिप्पणी
newer_comments: नयाँ टिप्पणीहरू
older_comments: पूरानो टिप्पणीहरू
+ errors:
+ forbidden:
+ title: निषेध गरिएको
+ internal_server_error:
+ title: अनुप्रयोगसम्बन्धी त्रुटि
+ not_found:
+ title: फाइल फेला परेन
friendships:
make_friend:
button: साथीको रूपमा थप्नुहोस्
- success: '%{name} à¤\85ब तपाà¤\88à¤\82à¤\95à¥\8b मितà¥\8dर हुनुभएको छ!'
+ success: '%{name} à¤\85ब तपाà¤\88à¤\81à¤\95à¥\8b साथà¥\80 हुनुभएको छ!'
failed: माफ गर्नुहोला, %{name}लाई मित्रको रुपमा थप्न सकिएन।
- already_a_friend: '%{name} सँग तपाईंले पहिले नै मित्रता गरिसक्नु भएको छ ।'
+ already_a_friend: '%{name} सँग तपाईँले पहिले साथी हुनुहुन्छ।'
+ limit_exceeded: तपाईँले हालसालै थुप्रै प्रयोगकर्ताहरूलाई साथी बनाउनु भएको छ।
+ Please wait a while before trying to friend any more.
remove_friend:
button: साथीबाट हटाउने
geocoder:
+ search:
+ title:
+ latlon: आन्तरिक
search_osm_nominatim:
prefix:
aerialway:
chair_lift: कुर्सी लिफ्ट
drag_lift: तान्ने लिफ्ट
gondola: गोन्डोला लिफ्ट
+ pylon: पाइलन
station: हवाई मार्ग स्टेशन
+ t-bar: टि-बार लिफ्ट
+ "yes": हवाई मार्ग
aeroway:
aerodrome: हवाईड्रोम
+ airstrip: हवाई यात्रा
apron: तटबन्द
- gate: ढà¥\8bà¤\95ा
+ gate: विमानसà¥\8dथलà¤\95à¥\8b à¤\97à¥\87à¤\9f
hangar: ह्याङ्गर
helipad: हेलिकप्टर बस्ने ठाउँ
+ navigationaid: उड्डयन पथप्रदर्शन सहायता
+ parking_position: पार्किङ स्थिति
runway: रनवे
+ taxilane: ट्याक्सिलेन
taxiway: ट्याक्सीको बाटो
- terminal: टर्मिनल
+ terminal: एयरपोर्ट टर्मिनल
+ windsock: विन्डसक
amenity:
+ animal_boarding: पशु बोर्डिङ
animal_shelter: पशु आश्रय
arts_centre: कला केन्द्र
atm: एटिएम् मेसिन
bench: मेच
bicycle_parking: साइकिल पार्किङ्
bicycle_rental: साइकिल भाडामा
+ bicycle_repair_station: साइकल मर्मत स्टेसन
biergarten: बियर पिउने ठाउँ
+ blood_bank: रक्त बैंक
boat_rental: ढुङ्गा भाडा सेवा
brothel: वेश्यालय
bureau_de_change: परिवर्तन व्यूरो
clock: घन्टाघर
college: कलेज
community_centre: सामुदायिक केन्द्र
+ conference_centre: सम्मेलन केन्द्र
courthouse: अदालत
crematorium: श्मशान
dentist: दाँतको डाक्टर
drinking_water: पिउने पानी
driving_school: ड्राइभिङ स्कूल
embassy: दूतावास
+ events_venue: कार्यक्रम स्थल
fast_food: चमेना गृह
ferry_terminal: फेरी टर्मिनल
fire_station: अग्नि नियन्त्रण स्टेसन्
hospital: अस्पताल
hunting_stand: शिकार क्षेत्र
ice_cream: बरफ
+ internet_cafe: इन्टरनेट क्याफे
kindergarten: बाल आश्रम
+ language_school: भाषा विद्यालय
library: पुस्तकालय
marketplace: बजार क्षेत्र
monastery: चैत्य
+ money_transfer: पैसा पठाउने
motorcycle_parking: मोटर साइकल पार्किङ
+ music_school: सङ्गीत विद्यालय
nightclub: रात्री क्लब
nursing_home: नर्सिङ होम
parking: पार्किङ
parking_entrance: पार्किङ प्रवेश
+ parking_space: पार्किङ स्पेस
pharmacy: औषधी पसल
place_of_worship: पूजा गर्ने स्थान
police: प्रहरी
viaduct: भियाडक्ट
"yes": पुल
building:
+ garages: ग्यारेजहरू
+ hangar: ह्याङ्गर
+ house: घर
+ public: सार्वजनिक भवन
"yes": भवन
craft:
brewery: ब्रुएरी
"yes": ऐतिहासिक स्थल
landuse:
basin: बेसिन
+ cemetery: अन्त्यष्टी स्थल
commercial: व्यवसायिक क्षेत्र
conservation: संरक्षण
construction: निर्माण
administrative: प्रबन्धकीय स्थल
architect: आर्किटेक्ट
company: कम्पनी
+ estate_agent: घरजग्गा एजेन्ट
government: सरकारी कार्यालय
insurance: बीमा कार्यालय
it: आइटी कार्यालय
railway:
abandoned: परित्यक्त रेलमार्ग
junction: रेलमार्ग जङ्सन
+ subway: सबवे
shop:
bakery: बेकरी
beauty: सौन्दर्य पसल
sports: खेलकुद सामग्री पसल
tailor: सुचीकार
toys: खेलौना पसल
+ travel_agency: ट्राभल एजेन्सी
video: भिडियो पसल
"yes": पसल
tourism:
"yes": जलमार्ग
admin_levels:
level2: राष्ट्रिय सीमा
+ level3: क्षेत्र सीमा
level4: राज्य सीमा
level5: क्षेत्र सीमा
level6: इलाका सीमा
reports:
new:
categories:
+ diary_entry:
+ other_label: अन्य
+ diary_comment:
+ other_label: अन्य
+ user:
+ other_label: अन्य
note:
other_label: अन्य
layouts:
+ project_name:
+ title: OpenStreetMap
+ h1: OpenStreetMap
logo:
alt_text: OpenStreetMap लोगो
logout: निर्गमन
log_in: प्रवेश गर्नुहोस्
sign_up: खाता खाेल्नुहाेस्
start_mapping: म्यापिङ गर्न सुरु गर्नुहोस्
- edit: सम्पादन
+ edit: सम्पादन गर्नुहोस्
history: इतिहास
export: निर्यात गर्नुहोस्
data: डेटा
friendship_notification:
hi: नमस्ते %{to_user},
subject: '[OpenStreetMap] %{user} ले तपाईँलाई मित्रको रूपमा थप्नु भयो'
+ gpx_failure:
+ hi: नमस्ते %{to_user},
+ gpx_success:
+ hi: नमस्ते %{to_user},
signup_confirm:
greeting: नमस्ते!
email_confirm:
title: पासवर्ड बिर्सियो
heading: पासवर्ड बिर्सिनुभयो ?
email address: 'इमेल ठेगाना:'
- new password button: पà¥\8dरवà¥\87स शबà¥\8dद परिवरà¥\8dतन à¤\97रà¥\8dनà¥\87
+ new password button: पासवरà¥\8dड परिवरà¥\8dतन à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d
edit:
- title: पà¥\8dरवà¥\87स शबà¥\8dद परिवरà¥\8dतन à¤\97रà¥\8dनà¥\87
- heading: '%{user}à¤\95à¥\8b लाà¤\97ि पà¥\8dरवà¥\87स शबà¥\8dद परिवरà¥\8dतन à¤\97रà¥\8dनà¥\87'
- reset: नयाà¤\81 पà¥\8dरवà¥\87शशवà¥\8dद
+ title: पासवरà¥\8dड परिवरà¥\8dतन à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d
+ heading: '%{user}à¤\95à¥\8b लाà¤\97ि पासवरà¥\8dड परिवरà¥\8dतन à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d'
+ reset: पासवरà¥\8dड रिसà¥\87à¤\9f à¤\97रà¥\8dनà¥\81हà¥\8bसà¥\8d
update:
- flash changed: तपाईंको प्रवेश शब्द परिवर्तन गरिएको छ।
+ flash changed: तपाईँको पासवर्ड परिवर्तन गरिएको छ।
+ preferences:
+ edit:
+ cancel: रद्द गर्नुहोस्
profiles:
edit:
- image: 'चित्र:'
+ cancel: रद्द गर्नुहोस्
+ image: तस्विर
home location: 'गृह स्थान:'
- no home location: तपाईंले आफ्नो गृहस्थान प्रविष्ठ गर्नुभएको छैन।
+ no home location: तपाईँले आफ्नो गृहस्थान प्रविष्ठ गर्नुभएको छैन।
+ show: देखाउनुहोस्
+ delete: हटाउनुहोस्
sessions:
new:
title: प्रवेश
tab_title: प्रवेश
- password: 'पासवर्ड:'
+ password: पासवर्ड
login_button: प्रवेश
destroy:
title: लगआउट
logout_button: निर्गमन
+ shared:
+ markdown_help:
+ link: कडी
+ image: तस्विर
+ richtext_field:
+ edit: सम्पादन गर्नुहोस्
site:
about:
next: अर्को
legal_babble:
more_title_html: थप जान्नको लागि
contributors_title_html: हाम्रा योगदान कर्ताहरू
- index:
- permalink: स्थायी लिङ्क
- shortlink: छोटो लिङ्क
- createnote: एक टिप्पणी थप्नुहोस्
+ contributors_fr_france: फ्रान्स
edit:
user_page_link: प्रयोगकर्ता पृष्ठ
export:
subway: सबवे
cable_car: केबल कार
chair_lift: कुर्सी लिफ्ट
+ taxiway: ट्याक्सीको बाटो
+ city: शहर
+ vineyard: अङ्गुर-बगैँचा
forest: वन
wood: कुञ्ज
+ farmland: खेतीयोग्य जमिन
+ grass: घाँस
+ meadow: घाँसेमैदान
+ sand: बालुवा
golf: गल्फ कोर्स
park: उद्यान
resident: आवासीय क्षेत्र
lake: ताल
- reservoir: मुहान
+ reservoir: जलाशय
+ glacier: हिमनदी
+ wetland: सिमसार
farm: खेती
cemetery: अन्त्यष्टी स्थल
+ beach: समुद्र किनारा
school: विद्यालय
university: विश्वविद्यालय
+ hospital: अस्पताल
summit: शिखर
peak: शिखर
bicycle_shop: साइकल पसल
bicycle_parking: साकल पार्किङ
toilets: शौचालय
welcome:
- title: स्वागतम्!
+ title: स्वागत!
whats_on_the_map:
title: म्यापमा के छ
+ basic_terms:
+ node: नोड
+ way: बाटो
rules:
title: नियमहरू !
+ start_mapping: म्यापिङ गर्न सुरु गर्नुहोस्
traces:
new:
+ upload_trace: GPS Trace अपलोड गर्ने
visibility_help: यसको मतलाब के हो ?
help: सहायता
create:
upload_trace: GPS Trace अपलोड गर्ने
edit:
+ cancel: रद्द गर्नुहोस्
title: ट्रेस सम्पादन गर्दै %{name}
heading: ट्रेस सम्पादन गर्दै %{name}
visibility_help: यसको मतलब के हो ?
uploaded: 'अपलोड गरिएको:'
points: 'विन्दुहरू:'
start_coordinates: 'सुरूको निर्देशङ्क:'
+ coordinates_html: '%{latitude}; %{longitude}'
map: नक्सा
edit: सम्पादन
owner: 'मालिक:'
public: सार्वजनिक
private: निजी
index:
- public_traces: सारवजनिक GPS ट्रेसहरु
- public_traces_from: '%{user}बाट सार्वकनिक GPS ट्रेसहरु'
+ public_traces: सार्वजनिक GPS ट्रेसहरू
+ my_gps_traces: मेरो जिपिएस ट्रेसहरू
+ public_traces_from: '%{user}बाट सार्वजनिक GPS ट्रेसहरू'
tagged_with: ' %{tags}हरूद्वारा ट्याग गरिएको'
+ my_traces: मेरा ट्रेसहरू
destroy:
scheduled_for_deletion: मेट्नको लागि तालिकावद्ध गरिएको ट्रेस
make_public:
show:
confirm: निश्चित हुनुहुन्छ ?
oauth2_applications:
+ index:
+ name: नाम
+ permissions: अनुमतिहरू
+ application:
+ edit: सम्पादन गर्नुहोस्
+ delete: हटाउनुहोस्
show:
+ edit: सम्पादन गर्नुहोस्
delete: मेट्ने
+ permissions: अनुमतिहरू
+ redirect_uris: रिडाइरेक्ट युआरआइहरू
+ oauth2_authorized_applications:
+ index:
+ permissions: अनुमतिहरू
users:
new:
title: खाता खाेल्नुहाेस्
my comments: मेरा टिप्पणीहरू
edits: सम्पादनहरू
traces: ट्रेसहरू
+ notes: म्याप टिप्पणीहरू
+ remove as friend: साथीबाट हटाउने
add as friend: साथी जोड्नुहोस्
status: 'स्थिति:'
role:
comments: टिप्पणी
confirm: निश्चित गर्नुहोस्
go_public:
- flash success: तपाà¤\88à¤\82à¤\95ा सबà¥\88 समà¥\8dपादनहरà¥\82 सारà¥\8dवाà¤\9cनिà¤\95 à¤\9bनà¥\8d , तपाà¤\88à¤\82 अब सम्पादन लायक
+ flash success: तपाà¤\88à¤\81à¤\95ा सबà¥\88 समà¥\8dपादनहरà¥\82 सारà¥\8dवाà¤\9cनिà¤\95 à¤\9bनà¥\8d , तपाà¤\88à¤\81 अब सम्पादन लायक
हुनु भयो ।
index:
title: प्रयोगकर्ताहरू
revoke:
title: भूमिका फिर्ता निश्चित गर्ने
heading: भूमिका फिर्ता निश्चित गर्ने
- are_you_sure: तपाà¤\88à¤\82 भूमिका `%{role}' , `%{name} प्रोगकर्ताबाट फिर्ता लिने कुरामा
+ are_you_sure: तपाà¤\88à¤\81 भूमिका `%{role}' , `%{name} प्रोगकर्ताबाट फिर्ता लिने कुरामा
निश्चित हुनुहुन्छ'?
confirm: निश्चित गर्नुहोस्
fail: भूमिका `%{role}' ,`%{name}'बाट फिर्ता लिन सकिएन । प्रोगकर्ता नाम र भूमिका
user_blocks:
show:
created: सृजना गरिएको
- status: वस्तुस्थिति
+ status: 'स्थिति:'
show: देखाउनुहोस्
- edit: सम्पादन
+ edit: सम्पादन गर्नुहोस्
confirm: निश्चित हुनुहुन्छ ?
block:
show: देखाउनुहोस्
- edit: सम्पादन
+ edit: सम्पादन गर्नुहोस्
blocks:
creator_name: सर्जक
status: वस्तुस्थिति
+ user_mutes:
+ index:
+ table:
+ tbody:
+ send_message: सान्देस पठाउ
notes:
index:
id: आईडी
share:
title: आदान-प्रदान गर्नुहोस्
cancel: रद्द गर्नुहोस्
- image: à¤\9bवि
+ image: तसà¥\8dविर
long_link: कडी
embed: एचटीएमएल
format: 'ढाँचा:'
layers:
header: म्याप लेयरहरू
notes: म्याप टिप्पणीहरू
- changesets:
- show:
- comment: टिप्पणी
- subscribe: सदस्यता लिनुहोस्
- unsubscribe: सदस्यता खारेज गर्नुहोस्
- hide_comment: लुकाउ
+ gps: सार्वजनिक GPS ट्रेसहरू
+ make_a_donation: दान गर्नुहोस्
directions:
instructions:
exit_counts:
# Author: Sven L
# Author: Tjcool007
# Author: Trijnstel
+# Author: Vistaus
# Author: Xbaked potatox
---
nl:
join_discussion: Meld u aan om mee te praten
still_open: Wijzigingenset is nog open – overleg gaat open zodra de wijzigingenset
wordt afgesloten.
+ subscribe: Abonneren
+ unsubscribe: Uitschrijven
comment_by_html: Reactie van %{user}, %{time_ago}
hidden_comment_by_html: Verborgen reactie van %{user}, %{time_ago}
+ hide_comment: verbergen
+ unhide_comment: zichtbaar maken
+ comment: Reageren
changesetxml: Wijzigingenset-XML
osmchangexml: osmChange-XML
paging_nav:
title: Dagboek van %{user} | %{title}
user_title: Dagboek van %{user}
discussion: Overleg
+ subscribe: Abonneren
+ unsubscribe: Deabonneren
leave_a_comment: Een reactie achterlaten
login_to_leave_a_comment_html: U moet moet zich %{login_link} om te kunnen reageren
login: Aanmelden
all:
title: OpenStreetMap-dagboekberichten
description: Recente dagboekberichten van OpenStreetMap-gebruikers
- comments:
+ subscribe:
+ heading: Abonneren op de volgende dagboekaantekeningendiscussie?
+ button: Op discussie abonneren
+ unsubscribe:
+ heading: Afmelden voor de volgende dagboekaantekeningendiscussie?
+ button: Van discussie afmelden
+ diary_comments:
+ index:
title: Dagboekreacties toegevoegd door %{user}
heading: Dagboekreacties van %{user}
subheading_html: Dagboekreacties toegevoegd door %{user}
comment: Reactie
newer_comments: Nieuwere reacties
older_comments: Oudere reacties
- subscribe:
- heading: Abonneren op de volgende dagboekaantekeningendiscussie?
- button: Op discussie abonneren
- unsubscribe:
- heading: Afmelden voor de volgende dagboekaantekeningendiscussie?
- button: Van discussie afmelden
doorkeeper:
errors:
messages:
contact_the_community_html: Aarzel niet om %{contact_link} op te nemen met de
OpenStreetMap-community als u een niet werkende link of een bug hebt gevonden.
Noteer de exacte URL van uw verzoek.
+ bad_request:
+ title: Onjuiste aanvraag
+ description: De bewerking die u op de OpenStreetMap-server hebt aangevraagd
+ is ongeldig (HTTP 400)
forbidden:
title: Verboden
description: De door u gevraagde bewerking op de OpenStreetMap-server is alleen
commented_note_html: '%{commenter} heeft een kaartopmerking waarop u hebt
gereageerd opnieuw geactiveerd. De opmerking is gemaakt in de buurt van
%{place}.'
- details: Meer details over de opmerking zijn te vinden op %{url}.
- details_html: Meer details over de opmerking zijn te vinden op %{url}.
+ details: Reageer of lees meer over de opmerking op %{url}.
+ details_html: Reageer of lees meer over de opmerking op %{url}.
changeset_comment_notification:
description: 'OpenStreetMap-wijzigingenreeks #%{id}'
hi: Hoi %{to_user},
partial_changeset_with_comment: met reactie "%{changeset_comment}"
partial_changeset_with_comment_html: met commentaar "%{changeset_comment}"
partial_changeset_without_comment: zonder reactie
- details: Meer details over de wijzigingenset kunt u vinden op %{url}.
- details_html: Meer details over de wijzigingenset kunt u vinden op %{url}.
+ details: Reageer of lees meer over de wijzigingenset op %{url}.
+ details_html: Reageer of lees meer over de wijzigingenset op %{url}.
unsubscribe: U kunt afmelden voor updates van deze wijzigingensetop %{url}.
unsubscribe_html: U kunt u afmelden voor updates van deze wijzigingenset op
%{url}.
new:
title: Aanmelden
tab_title: Aanmelden
+ login_to_authorize_html: Meld u aan bij OpenStreetMap om toegang te krijgen
+ tot %{client_app_name}.
email or username: 'E-mailadres of gebruikersnaam:'
password: 'Wachtwoord:'
remember: Aanmeldgegevens onthouden
login_button: Aanmelden
register now: Nu inschrijven
with external: of meld u aan via een derde
+ or: of
auth failure: Met deze gegevens kunt u helaas niet aanmelden.
destroy:
title: Afmelden
js_1: U gebruikt een browser die JavaScript niet ondersteunt, of u hebt JavaScript
uitgeschakeld.
js_2: OpenStreetMap gebruikt JavaScript voor de slippykaart.
- permalink: Permanente koppeling
- shortlink: Korte koppeling
- createnote: Opmerking toevoegen
license:
copyright: Copyright OpenStreetMap en bijdragers, onder een open licentie
remote_failed: Bewerken is mislukt. Zorg dat JOSM of Merkaartor is geladen en
other: GPX-bestand met %{count} punten van %{user}
description_without_count: GPX-bestand van %{user}
application:
+ basic_auth_disabled: 'HTTP-basisauthenticatie is uitgeschakeld: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 en 1.0a zijn uitgeschakeld: %{link}'
permission_denied: U hebt geen toestemming om toegang te krijgen tot die handeling
require_cookies:
cookies_needed: U hebt cookies waarschijnlijk uitgeschakeld in uw browser. Schakel
muted_users: Gedempte gebruikers
auth_providers:
openid_logo_alt: Aanmelden met een OpenID
+ openid_login_button: Doorgaan
openid:
title: Aanmelden met OpenID
alt: Aanmelden met een OpenID URL
write_redactions: Kaartgegevens redigeren
read_email: E-mailadres lezen
skip_authorization: Toepassing automatisch goedkeuren
+ for_roles:
+ moderator: Deze toestemming geldt alleen voor acties die alleen toegankelijk
+ zijn voor moderators
oauth_clients:
new:
title: Nieuwe toepassing registreren
users:
new:
title: Registreren
+ tab_title: Registreren
+ signup_to_authorize_html: Registreer u bij OpenStreetMap om toegang te krijgen
+ tot %{client_app_name}.
no_auto_account_create: Helaas is het momenteel niet mogelijk om automatisch
een account voor u aan te maken.
please_contact_support_html: Neem contact op met de %{support_link} om een account
gemaakt door mensen zoals u, en is het voor iedereen gratis te verbeteren,
bij te werken, te downloaden en te gebruiken.
paragraph_2: Schrijf u in om te beginnen met bijdragen.
+ welcome: Welkom bij OpenStreetMap
+ duplicate_social_email: Als u al een OpenStreetMap-account heeft en een identiteitsprovider
+ van derden wilt gebruiken, log dan in met uw wachtwoord en wijzig de instellingen
+ van uw account.
display name description: Uw openbare gebruikersnaam. U kunt deze later in uw
voorkeuren wijzigen.
+ by_signing_up_html: Door u aan te melden, gaat u akkoord met onze %{tou_link},
+ %{privacy_policy_link} en %{contributor_terms_link}.
+ tou: gebruiksvoorwaarden
+ contributor_terms: bijdragevoorwaarden
external auth: 'Authenticatie van derden:'
continue: Registreren
terms accepted: Dank u wel voor het aanvaarden van de nieuwe bijdragersovereenkomst!
voor meer informatie.
privacy_policy: privacybeleid
privacy_policy_title: OSMF-privacybeleid, met een kopje over e-mailadressen
+ consider_pd_html: Ik beschouw mijn bijdragen als onderdeel van het %{consider_pd_link}.
+ consider_pd: publiek domein
+ or: of
use external auth: of schrijf u in via een derde partij
terms:
title: Voorwaarden
remove as friend: Vriend verwijderen
add as friend: Vriend toevoegen
mapper since: 'Mapper sinds:'
+ last map edit: 'Recentste bewerking:'
+ no activity yet: Nog geen activiteit
uid: 'Gebruikers-ID:'
ct status: 'Voorwaarden voor bijdragen:'
ct undecided: Onbeslist
intro: Een fout gezien of ontbreekt er iets? Laat het andere mappers weten zodat
wij het kunnen oplossen. Verplaats de markering naar de correcte positie en
beschrijf het probleem.
+ anonymous_warning_html: U bent niet aangemeld. Als u updates van uw aantekening
+ wilt ontvangen, kunt u %{log_in} of %{sign_up}.
+ anonymous_warning_log_in: aanmelden
+ anonymous_warning_sign_up: registreren
advice: Deze opmerking is openbaar en kan gebruikt worden om de kaart bij te
werken. Vul hier dus geen persoonlijke informatie in, en ook geen informatie
uit kaarten of telefoonboeken waar auteursrechtelijke bescherming op rust.
queryfeature_disabled_tooltip: Inzoomen om objecten op te vragen
embed_html_disabled: Het inbedden van HTML-code is voor deze kaartlaag niet
mogelijk
- changesets:
- show:
- comment: Reageren
- subscribe: Abonneren
- unsubscribe: Uitschrijven
- hide_comment: verbergen
- unhide_comment: zichtbaar maken
edit_help: Verplaats de kaart en zoom in op een plaats die u wilt bewerken. Klik
daarna hier.
directions:
# Messages for Norwegian Nynorsk (norsk nynorsk)
# Exported from translatewiki.net
# Export driver: phpyaml
+# Author: 6400
# Author: Abaksle
# Author: Amire80
# Author: Bjorni
# Author: Pyscowicz
# Author: Ranveig
# Author: Ruila
-# Author: 6400
---
nn:
time:
join_discussion: Logg inn for å vere med i diskusjonen
still_open: Endringssettet er framleis ope – det vert opna for diskusjon når
endringssettet vert lukka.
+ subscribe: Abonnér
+ unsubscribe: Avslutt abonnement
comment_by_html: Kommentar frå %{user} %{time_ago}
hidden_comment_by_html: Skylt kommentar frå %{user} %{time_ago}
+ hide_comment: gøym
+ unhide_comment: vis
+ comment: Kommenter
changesetxml: XML for endringssett
osmchangexml: osmChange XML
paging_nav:
all:
title: Oppføringar OpenStreetMap-dagboka
description: Nylege oppføringar i dagbøkene til OpenStreetMap-brukarar
- comments:
+ diary_comments:
+ index:
title: Kommentarar i dagboka frå %{user}
heading: '%{user} sine kommentarar til dagboksoppføringar'
subheading_html: Kommentarar i dagboka frå %{user}
js_1: Du har ein nettleser som ikkje støttar JavaScript eller så har du slått
av JavaScript.
js_2: OpenStreetMap brukar JavaScript på kartsidene.
- permalink: Permanent lenkje
- shortlink: Kort lenkje
- createnote: Legg til ein notis
license:
copyright: Kopibeskytta OpenStreetMap og bidragsytarar, under ein open lisens
remote_failed: Klarte ikkje redigere - forsikre deg at JOSM eller Merkaartor
map_data_zoom_in_tooltip: Zoom inn for å sjå kartdata
queryfeature_tooltip: Finn objekt
queryfeature_disabled_tooltip: Forstørra for å finna objekt
- changesets:
- show:
- comment: Kommenter
- subscribe: Abonnér
- unsubscribe: Avslutt abonnement
- hide_comment: gøym
- unhide_comment: vis
directions:
ascend: Stigande
engines:
join_discussion: ߌ ߜߊ߲߬ߞߎ߲߫ ߞߊ߬ ߕߘߍ߬ ߡߙߌߣߊ߲߫ ߦߌߘߊ ߘߐ߫
still_open: ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲߬ ߠߊߞߊ߬ߝߏ߬ߣߍ߲ ߠߎ߬ ߟߊߞߊ߬ߣߍ߲߫ ߦߋ߫ ߡߎߣߎ߲߬ - ߘߊߘߐߖߊߥߏ
ߘߌ߫ ߘߊߦߟߍ߬ ߣߌ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲߬ ߠߊߞߊ߬ߝߏ߬ߣߍ߲ ߠߎ߬ ߕߎ߯ ߘߊ߫ ߕߎ߬ߡߊ ߡߍ߲ ߠߊ߫.
+ subscribe: ߊ߬ ߡߊߝߘߎ߫
+ unsubscribe: ߊ߬ ߡߊߝߘߎߣߍ߲ ߓߐ߫
comment_by_html: ߞߊ߲߬ߞߎߡߊ ߞߊ߬ ߝߘߊ߫ %{user} ߟߊ߫ %{time_ago} ߡߊ߬
hidden_comment_by_html: ߞߊ߲߬ߞߎߡߊ ߥߣߊ߬ߙߌ߬ߣߍ߲߬ ߦߋ߫ %{user} ߡߊ߬ %{time_ago} ߟߊ߫
+ hide_comment: ߊ߬ ߢߡߊߘߏ߲߰
+ unhide_comment: ߊ߬ ߟߊ߲ߞߣߍߡߦߊ߫
+ comment: ߡߙߌߣߊ߲
changesetxml: XML ߟߊ߬ߘߏ߲߬ߠߌ߲ ߡߊߝߊ߬ߟߋ߲߫
osmchangexml: ߏ.ߛ.ߡ ߡߝߊ߬ߟߋ߲߬ߠߌ߲ XML
paging_nav:
all:
title: ߏߔߌ߲ߛߕߑߙߌߕߑߡߊߔ ߕߋ߬ߟߋ߲ ߟߊ߬ߘߏ߲߬ߠߌ߲ ߠߎ߬
description: ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ ߟߊ߫ ߕߋ߬ߟߋ߲ ߟߊ߬ߘߏ߲߬ߠߌ߲ ߏߔߌ߲ߛߕߑߙߌߕߑߡߊߔ ߞߊ߲߬
- comments:
+ diary_comments:
+ index:
title: ߕߋ߬ߟߋ߲ ߡߙߌߣߊ߲߲߫ ߝߙߊ߬ߣߍ߲ %{user} ߓߟߏ߫
heading: '%{user} ߟߊ߫ ߕߋ߬ߟߋ߲ ߡߙߌߣߊ߲߲ ߠߎ߬'
subheading_html: ߕߋ߬ߟߋ߲ ߡߙߌߣߊ߲߲ ߝߙߊ߬ߣߍ߲ %{user} ߓߟߏ߫
more_title_html: ߛߌߦߊߡߊ߲߫ ߜߘߍ߫ ߟߎ߫ ߢߌߣߌ߲ ߦߴߌ ߘߐ߫
contributors_title_html: ߊ߲ ߠߊ߫ ߓߟߏߡߊߜߍ߲ ߠߎ߬
index:
- permalink: ߛߘߌ߬ߜߋ߲߬ ߓߟߏߕߍ߰ߓߊߟߌ
- shortlink: ߛߘߌ߬ߜߋ߲߬ ߛߎߘߎ߲
- createnote: ߦߟߌߣߐ ߘߏ߫ ߝߙߊ߬
license:
copyright: ߓߊߦߟߍߡߊ߲ ߤߊߞߍ ߏߔߌ߲ߛߑߕߙߌߕߑߡߊߔ ߣߌ߫ ߓߟߏߓߌߟߊߢߐ߲߯ߞߊ߲ߠߊ ߟߎ߬߸ ߕߦߊ߫ ߘߊߦߟߍ߬ߣߍ߲
ߞߘߐ߫
map_data_zoom_in_tooltip: ߊ߬ ߡߊߛߊ߬ߡߊ߲߫ ߞߊ߬ ߔߊ߬ߔߘߊ ߟߐ߲ߕߊ ߦߋ߫
queryfeature_tooltip: ߟߊ߬ߓߊ߰ߙߊ߬ߟߌ ߟߎ߬ ߡߊߢߌ߬ߣߌ߲߬ߞߊ߫
queryfeature_disabled_tooltip: ߊ߬ ߡߊߛߊ߬ߡߊ߲߫ ߞߊ߬ ߟߊ߬ߓߊ߰ߙߊ߬ߟߌ ߘߏ߫ ߟߎ߫ ߡߊߢߌ߬ߣߌ߲߬ߞߊ߫
- changesets:
- show:
- comment: ߡߙߌߣߊ߲
- subscribe: ߊ߬ ߡߊߝߘߎ߫
- unsubscribe: ߊ߬ ߡߊߝߘߎߣߍ߲ ߓߐ߫
- hide_comment: ߊ߬ ߢߡߊߘߏ߲߰
- unhide_comment: ߊ߬ ߟߊ߲ߞߣߍߡߦߊ߫
directions:
engines:
fossgis_osrm_bike: ߣߍ߰ߛߏ (OSRM)
join_discussion: Se connectar per rejónher la discussion
still_open: Ensemble de modificacions totjorn dobèrt — la discussion se dobrirà
un còp que l’ensemble de modificacions serà plegat.
+ subscribe: S'inscriure
+ unsubscribe: Se desabonar
+ hide_comment: amagar
+ unhide_comment: desamagar
+ comment: Comentari
changesetxml: Grop de modificacions XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Entradas de jornau d'OpenStreetMap
description: Entradas recentas de jornau deis utilizaires d'OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Comentaris ajustats au jornau per %{user}
heading: Comentaris dau jornau de %{user}
subheading_html: Comentaris dau jornau ajustats per %{user}
js_1: JavaScript es pas pres en carga pel navigador qu'utilizatz, o alara l’avètz
desactivat.
js_2: OpenStreetMap utiliza Javascript per sas mapas lisantas.
- permalink: Ligam permanent
- shortlink: Ligam cort
- createnote: Apondre una nòta
license:
copyright: Copyright OpenStreetMap e sos contributors, jos una licéncia dobèrta
remote_failed: L'edicion a mancat. Asseguratz-vos que lo JOSM o lo Merkaartor
map_data_zoom_in_tooltip: Zoomatz per veire las donadas sus la mapa
queryfeature_tooltip: Requèsta suls objèctes
queryfeature_disabled_tooltip: Zoomar mai per recercar d'objèctes
- changesets:
- show:
- comment: Comentari
- subscribe: S'inscriure
- unsubscribe: Se desabonar
- hide_comment: amagar
- unhide_comment: desamagar
edit_help: Movètz la mapa e fasètz zoom sus una posicion que volètz editar, e
de contunh, fasètz clic aicí.
directions:
# Author: Aalam
# Author: Babanwalia
# Author: Bgo eiu
+# Author: Cabal
# Author: Jimidar
# Author: Kuldeepburjbhalaike
# Author: Satnam S Virdi
helpers:
submit:
diary_comment:
- create: ਸਾà¨\82à¨à©\8b
+ create: à¨\9fਿੱਪਣà©\80
diary_entry:
- create: à¨\9bਾਪੋ
+ create: ਸਾà¨\82à¨ੋ
update: ਅੱਪਡੇਟ ਕਰੋ
issue_comment:
create: ਟਿੱਪਣੀ ਕਰੋ
relation: ਸਬੰਧ
relation_member: ਸਬੰਧ ਮੈਂਬਰ
relation_tag: ਸਬੰਧ ਟੈਗ
- report: ਰਿਪà©\8bਰà¨\9f à¨\95ਰà©\8b
+ report: à¨\87ਤਲਾਹ ਦਿà¨\93
session: ਸੈਸ਼ਨ
trace: ਟਰੇਸ
tracepoint: ਟਰੇਸ ਪੁਆਇੰਟ
way_tag: ਰਾਹ ਟੈਗ
attributes:
client_application:
+ name: ਨਾਮ (ਲੋੜੀਂਦਾ)
+ url: ਮੁੱਢਲਾ Application URL (ਲੋੜੀਂਦਾ ਹੈ)
support_url: ਮਦਦ URL
+ allow_read_prefs: ਉਹਨਾਂ ਦੀਆਂ ਵਰਤੋਂਕਾਰ ਤਰਜੀਹਾਂ ਨੂੰ ਪੜ੍ਹੋ
+ allow_write_prefs: ਉਹਨਾਂ ਦੀਆਂ ਵਰਤੋਂਕਾਰ ਤਰਜੀਹਾਂ ਨੂੰ ਸੋਧੋ
+ allow_write_api: ਨਕਸ਼ੇ ਨੂੰ ਸੋਧੋ
diary_comment:
body: ਮੁੱਖ ਭਾਗ
diary_entry:
language_code: ਬੋਲੀ
doorkeeper/application:
name: ਨਾਂ
+ scopes: ਇਜਾਜ਼ਤਾਂ
friend:
user: ਵਰਤੋਂਕਾਰ
friend: ਦੋਸਤ
trace:
user: ਵਰਤੋਂਕਾਰ
- visible: ਵਿਖਣਯੋਗ
+ visible: ਵਿਖਣ-ਯੋਗ
name: ਨਾਂ
size: ਅਕਾਰ
latitude: ਅਕਸ਼ਾਂਸ਼
body: ਮੁੱਖ ਭਾਗ
recipient: ਪ੍ਰਾਪਤਕਰਤਾ
redaction:
+ title: ਸਿਰਲੇਖ
description: ਵੇਰਵਾ
+ report:
+ category: ਆਪਣੀ ਇਤਲਾਹ ਦਾ ਕਾਰਨ ਚੁਣੋ
+ details: ਕਿਰਪਾ ਕਰਕੇ ਸਮੱਸਿਆ ਬਾਰੇ ਕੁਝ ਹੋਰ ਵੇਰਵੇ ਪ੍ਰਦਾਨ ਕਰੋ (ਲੋੜੀਂਦਾ)
user:
email: ਈਮੇਲ
- new_email: 'ਨਵਾਂ ਈ-ਮੇਲ ਪਤਾ:'
+ new_email: 'ਨਵਾਂ ਈਮੇਲ ਪਤਾ:'
active: ਸਰਗਰਮ
display_name: ਵਿਖਾਉਣ ਨਾਂ
description: ਵੇਰਵਾ
home_lat: ਅਕਸ਼ਾਂਸ਼
home_lon: 'ਰੇਖਾਂਸ਼:'
- languages: ਬੋਲੀਆਂ
+ languages: ਤਰਜੀਹੀ ਬੋਲੀਆਂ
+ preferred_editor: ਤਰਜੀਹੀ ਸੰਪਾਦਕ
pass_crypt: ਪਛਾਣ-ਸ਼ਬਦ
+ help:
+ user:
+ new_email: (ਜਨਤਕ ਤੌਰ 'ਤੇ ਕਦੇ ਨਹੀਂ ਪ੍ਰਦਰਸ਼ਿਤ)
datetime:
distance_in_words_ago:
+ about_x_hours:
+ one: ਲਗਭਗ %{count} ਘੰਟਾ ਪਹਿਲਾਂ
+ other: ਲਗਭਗ %{count} ਘੰਟੇ ਪਹਿਲਾਂ
+ about_x_months:
+ one: about %{count} ਮਹੀਨਾ ਪਹਿਲਾਂ
+ other: ਲਗਭਗ %{count} ਮਹੀਨੇ ਪਹਿਲਾਂ
+ about_x_years:
+ one: about %{count} ਸਾਲ ਪਹਿਲਾਂ
+ other: ਲਗਭਗ %{count} ਸਾਲ ਪਹਿਲਾਂ
+ almost_x_years:
+ one: ਲਗਭਗ %{count} ਸਾਲ ਪਹਿਲਾਂ
+ other: ਲਗਭਗ %{count} ਸਾਲ ਪਹਿਲਾਂ
half_a_minute: ਅੱਧਾ ਮਿੰਟ ਪਹਿਲਾਂ
+ less_than_x_seconds:
+ one: '%{count} ਸਕਿੰਟ ਤੋਂ ਘੱਟ'
+ other: '%{count} ਸਕਿੰਟ ਪਹਿਲਾਂ'
+ less_than_x_minutes:
+ one: '%{count} ਮਿੰਟ ਤੋਂ ਘੱਟ ਪਹਿਲਾਂ'
+ other: '%{count} ਮਿੰਟ ਪਹਿਲਾਂ'
+ over_x_years:
+ one: ਲਗਭਗ %{count} ਸਾਲ ਪਹਿਲਾਂ
+ other: ਲਗਭਗ %{count} ਸਾਲ ਪਹਿਲਾਂ
+ x_seconds:
+ one: '%{count} ਸਕਿੰਟ ਪਹਿਲਾਂ'
+ other: '%{count} ਸਕਿੰਟ ਪਹਿਲਾਂ'
+ x_minutes:
+ one: '%{count} ਮਿੰਟ ਪਹਿਲਾਂ'
+ other: '%{count} ਮਿੰਟ ਪਹਿਲਾਂ'
+ x_days:
+ one: '%{count} ਦਿਨ ਪਹਿਲਾਂ'
+ other: '%{count} ਦਿਨ ਪਹਿਲਾਂ'
+ x_months:
+ one: '%{count} ਮਹੀਨਾ ਪਹਿਲਾਂ'
+ other: '%{count} ਮਹੀਨੇ ਪਹਿਲਾਂ'
+ x_years:
+ one: '%{count} ਸਾਲ ਪਹਿਲਾਂ'
+ other: '%{count} ਸਾਲ ਪਹਿਲਾਂ'
editor:
default: ਮੂਲ (ਮੌਜੂਦਾ %{name})
id:
none: ਕੋਈ ਨਹੀਂ
google: ਗੂਗਲ
facebook: ਫੇਸਬੁੱਕ
- microsoft: ਵਿੰਡà©\8bà¨\9c਼ ਲਾà¨\88ਵ
+ microsoft: ਮਾà¨\88à¨\95à©\8dਰà©\8bਸਾਫà¨\9f
github: ਗਿੱਟਹੱਬ
wikipedia: ਵਿਕੀਪੀਡੀਆ
api:
notes:
+ comment:
+ opened_at_html: '%{when} ਬਣਾਇਆ ਗਿਆ'
+ opened_at_by_html: '%{when} ਨੂੰ %{user} ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ'
+ closed_at_html: '%{when} ਹੱਲ ਕੀਤਾ'
+ closed_at_by_html: '%{when} ਨੂੰ %{user} ਦੁਆਰਾ ਹੱਲ ਕੀਤਾ ਗਿਆ'
+ reopened_at_html: '%{when} ਮੁੜ ਸਰਗਰਮ ਕੀਤਾ'
+ reopened_at_by_html: '%{when} ਨੂੰ %{user} ਦੁਆਰਾ ਮੁੜ ਸਰਗਰਮ ਕੀਤਾ'
entry:
- comment: ਟਿੱਪਣੀ ਕਰੋ
+ comment: ਟਿੱਪਣੀ
full: ਪੂਰੀ ਟਿੱਪਣੀ
+ account:
+ deletions:
+ show:
+ title: ਮੇਰਾ ਖਾਤਾ ਮਿਟਾਓ
+ warning: ਚੇਤਾਵਨੀ! ਖਾਤਾ ਮਿਟਾਉਣ ਦੀ ਪ੍ਰਕਿਰਿਆ ਅੰਤਿਮ ਹੈ, ਅਤੇ ਇਸਨੂੰ ਵਾਪਸ ਨਹੀਂ ਕੀਤਾ
+ ਜਾ ਸਕਦਾ ਹੈ।
+ delete_account: ਖਾਤਾ ਮਿਟਾਓ
+ delete_introduction: 'ਤੁਸੀਂ ਹੇਠਾਂ ਦਿੱਤੇ ਬਟਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਆਪਣੇ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ
+ ਖਾਤੇ ਨੂੰ ਮਿਟਾ ਸਕਦੇ ਹੋ। ਕਿਰਪਾ ਕਰਕੇ ਹੇਠ ਦਿੱਤੇ ਵੇਰਵਿਆਂ ਵੱਲ ਧਿਆਨ ਦਿਓ:'
+ delete_profile: ਤੁਹਾਡੇ ਪ੍ਰੋਫਾਈਲ ਦੀ ਜਾਣਕਾਰੀ, ਜਿਸ ਵਿੱਚ ਤੁਹਾਡਾ ਅਵਤਾਰ, ਵੇਰਵਾ ਅਤੇ
+ ਘਰ ਦੇ ਟਿਕਾਣੇ ਸ਼ਾਮਲ ਹੈ, ਨੂੰ ਮਿਦਾ ਦਿੱਤਾ ਜਾਵੇਗਾ।
+ retain_caveats: 'ਹਾਲਾਂਕਿ, ਤੁਹਾਡੇ ਬਾਰੇ ਕੁਝ ਜਾਣਕਾਰੀ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ''ਤੇ ਬਰਕਰਾਰ
+ ਰੱਖੀ ਜਾਵੇਗੀ, ਭਾਵੇਂ ਤੁਹਾਡਾ ਖਾਤਾ ਮਿਟਾ ਦਿੱਤਾ ਗਿਆ ਹੋਵੇ:'
+ retain_edits: ਨਕਸ਼ੇ ਦੇ ਭੰਡਾਰ ਵਿੱਚ ਤੁਹਾਡੇ ਸੰਪਾਦਨ, ਜੇ ਕੋਈ ਹਨ, ਨੂੰ ਬਰਕਰਾਰ ਰੱਖਿਆ
+ ਜਾਵੇਗਾ।
+ retain_email: ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਬਰਕਰਾਰ ਰੱਖਿਆ ਜਾਵੇਗਾ।
+ recent_editing_html: ਜਿਵੇਂ ਕਿ ਤੁਸੀਂ ਹਾਲ ਹੀ ਵਿੱਚ ਸੰਪਾਦਿਤ ਕੀਤਾ ਹੈ ਤੁਹਾਡੇ ਖਾਤੇ
+ ਨੂੰ ਵਰਤਮਾਨ ਵਿੱਚ ਮਿਟਾਇਆ ਨਹੀਂ ਜਾ ਸਕਦਾ ਹੈ। %{time} ਵਿੱਚ ਮਿਟਾਉਣਾ ਸੰਭਵ ਹੋਵੇਗਾ।
+ confirm_delete: ਕੀ ਤੁਹਾਨੂੰ ਯਕੀਨ ਹੈ?
+ cancel: ਰੱਦ ਕਰੋ
accounts:
edit:
title: ਖਾਤਾ ਸੋਧੋ
enabled link text: ਇਹ ਕੀ ਹੈ?
disabled link text: ਮੈਂ ਸੋਧ ਕਿਉਂ ਨਹੀਂ ਕਰ ਸਕਦਾ?
contributor terms:
- heading: 'ਯੋਗਦਾਨੀ ਦੀਆਂ ਸ਼ਰਤਾਂ:'
+ heading: 'ਯੋਗਦਾਨ ਦੀਆਂ ਸ਼ਰਤਾਂ:'
agreed: ਤੁਸੀਂ ਯੋਗਦਾਨੀ ਦੀਆਂ ਨਵੀਆਂ ਸ਼ਰਤਾਂ ਨਾਲ਼ ਸਹਿਮਤੀ ਜਤਾਈ ਹੈ।
not yet agreed: ਤੁਸੀਂ ਯੋਗਦਾਨੀ ਦੀਆਂ ਨਵੀਆਂ ਸ਼ਰਤਾਂ ਨਾਲ਼ ਸਹਿਮਤੀ ਨਹੀਂ ਜਤਾਈ।
link text: ਇਹ ਕੀ ਹੈ?
save changes button: ਤਬਦੀਲੀਆਂ ਸਾਂਭੋ
+ delete_account: ਖਾਤਾ ਮਿਟਾਓ
go_public:
+ heading: ਜਨਤਕ ਸੁਧਾਈ
+ currently_not_public: ਵਰਤਮਾਨ ਵਿੱਚ ਤੁਹਾਡੇ ਸੰਪਾਦਨ ਅਗਿਆਤ ਹਨ ਅਤੇ ਲੋਕ ਤੁਹਾਨੂੰ ਸੁਨੇਹੇ
+ ਨਹੀਂ ਭੇਜ ਸਕਦੇ ਜਾਂ ਤੁਹਾਡਾ ਟਿਕਾਣਾ ਨਹੀਂ ਦੇਖ ਸਕਦੇ। ਇਹ ਦਿਖਾਉਣ ਲਈ ਕਿ ਤੁਸੀਂ ਕੀ ਸੰਪਾਦਿਤ
+ ਕੀਤਾ ਹੈ ਅਤੇ ਲੋਕਾਂ ਨੂੰ ਵੈੱਬਸਾਈਟ ਰਾਹੀਂ ਤੁਹਾਡੇ ਨਾਲ ਸੰਪਰਕ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੱਤੀ
+ ਹੈ, ਹੇਠਾਂ ਦਿੱਤੇ ਬਟਨ 'ਤੇ ਕਲਿੱਕ ਕਰੋ।
+ find_out_why: ਪਤਾ ਕਰੋ ਕਿਉਂ
+ email_not_revealed: ਤੁਹਾਡਾ ਈਮੇਲ ਪਤਾ ਜਨਤਕ ਹੋਣ ਨਾਲ ਪ੍ਰਗਟ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ।
+ not_reversible: ਇਸ ਕਾਰਵਾਈ ਨੂੰ ਵਾਪਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਅਤੇ ਸਾਰੇ ਨਵੇਂ ਵਰਤੋਂਕਾਰ
+ ਹੁਣ ਮੂਲ ਰੂਪ ਵਿੱਚ ਜਨਤਕ ਹਨ।
make_edits_public_button: ਮੇਰੀਆਂ ਸਾਰੀਆਂ ਸੋਧਾਂ ਜਨਤਕ ਕਰੋ
+ destroy:
+ success: ਖਾਤਾ ਮਿਟਾ ਦਿੱਤਾ ਗਿਆ ਹੈ।
browse:
+ deleted_ago_by_html: '%{time_ago} ਨੂੰ %{user} ਦੁਆਰਾ ਮਿਟਾਇਆ ਗਿਆ'
+ edited_ago_by_html: '%{time_ago} ਨੂੰ %{user} ਦੁਆਰਾ ਸੋਧਿਆ ਗਿਆ'
version: ਵਰਜਨ
in_changeset: ਤਬਦੀਲੀਆਂ
anonymous: ਬੇਪਛਾਣ
no_comment: (ਕੋਈ ਟਿੱਪਣੀ ਨਹੀਂ)
part_of: ਦਾ ਹਿੱਸਾ
+ part_of_relations:
+ one: '%{count} ਸਬੰਧ'
+ other: '%{count} ਸਬੰਧ'
download_xml: XML ਲਾਹੋ
view_history: ਅਤੀਤ ਵੇਖੋ
view_details: ਵੇਰਵੇ ਵੇਖੋ
- location: 'ਸਥਿਤà©\80:'
+ location: 'à¨\9fਿà¨\95ਾਣਾ:'
relation:
members: ਜੀਅ
relation_member:
node: ਨੋਡ
way: ਰਾਹ
relation: ਸਬੰਧ
+ containing_relation:
+ entry_html: ਸਬੰਧ %{relation_name}
+ entry_role_html: ਸਬੰਧ %{relation_name} (%{relation_role} ਵਜੋਂ)
not_found:
+ title: ਨਹੀਂ ਲੱਭਿਆ
+ sorry: 'ਮਾਫ਼ ਕਰਨਾ, %{type} #%{id} ਲੱਭਿਆ ਨਹੀਂ ਜਾ ਸਕਿਆ।'
type:
node: ਨੋਡ
way: ਰਾਹ
way: ਰਾਹ
relation: ਸਬੰਧ
start_rjs:
- load_data: ਡਾà¨\9fਾ ਲà©\8bਡ à¨\95ਰੋ
- loading: ਲà©\8bਡ ਹà©\8b ਰਿਹਾ ਹà©\88â\80¦
+ load_data: ਡà©\87à¨\9fਾ ਲੱਦੋ
+ loading: ਲੱਦ ਰਿਹਾ ਹà©\88...
tag_details:
tags: ਟੈਗ
wikipedia_link: '%{page} ਲੇਖ ਵਿਕਿਪੀਡਿਆ ਉੱਤੇ'
telephone_link: '%{phone_number} ਨੂੰ ਫੋਨ ਕਰੋ'
+ colour_preview: ਰੰਗ %{colour_value} ਝਲਕ
+ email_link: ਈਮੇਲ %{email}
+ query:
+ title: ਪੁੱਛਗਿੱਛ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
+ introduction: ਨੇੜਲੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਲੱਭਣ ਲਈ ਨਕਸ਼ੇ ਉੱਤੇ ਕਲਿੱਕ ਕਰੋ।
+ nearby: ਨੇੜਲੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
+ enclosing: ਨੱਥੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ
changesets:
changeset_paging_nav:
- showing_page: ਵਰà¨\95ਾ %{page}
+ showing_page: ਸਫ਼ਾ %{page}
next: ਅਗਲਾ »
previous: « ਪਿਛਲਾ
changeset:
id: ਸ਼ਨਾਖ਼ਤ
user: ਵਰਤੋਂਕਾਰ
comment: ਟਿੱਪਣੀ
- area: à¨\87ਲਾà¨\95ਾ
+ area: à¨\96à©\87ਤਰ
index:
title: ਤਬਦੀਲੀਆਂ
- load_more: ਹà©\8bਰ ਲà©\8bਡ à¨\95ਰੋ
+ load_more: ਹà©\8bਰ ਪà©\9cà©\8dਹੋ
feed:
title: ਤਬਦੀਲੀ ਲੜੀ %{id}
title_comment: ਤਬਦੀਲੀ ਲੜੀ %{id} - %{comment}
belongs_to: ਲੇਖਕ
show:
title: 'ਤਬਦੀਲੀ ਲੜੀ: %{id}'
- discussion: ਚਰਚਾ
+ created: 'ਬਣਾਇਆ ਗਿਆ: %{when}'
+ closed: 'ਬੰਦ ਕੀਤਾ: %{when}'
+ created_ago_html: '%{time_ago} ਬਣਾਇਆ ਗਿਆ'
+ closed_ago_html: '%{time_ago} ਬੰਦ ਕੀਤਾ'
+ created_ago_by_html: '%{time_ago} ਨੂੰ %{user} ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ'
+ closed_ago_by_html: '%{time_ago} ਨੂੰ %{user} ਦੁਆਰਾ ਬੰਦ ਕੀਤਾ ਗਿਆ'
+ discussion: ਗੱਲ-ਬਾਤ
+ join_discussion: ਗੱਲਬਾਤ ਵਿੱਚ ਸ਼ਾਮਲ ਹੋਣ ਲਈ ਦਾਖ਼ਲ ਹੋਵੋ
+ comment_by_html: '%{user} %{time_ago} ਤੋਂ ਟਿੱਪਣੀ'
+ hidden_comment_by_html: '%{user} %{time_ago} ਤੋਂ ਲੁਕਵੀਂ ਟਿੱਪਣੀ'
changesetxml: ਤਬਦੀਲੀ ਲੜੀ XML
dashboards:
contact:
km away: '%{count}ਕਿ.ਮੀ. ਪਰ੍ਹਾਂ'
m away: '%{count}ਮੀਟਰ ਪਰ੍ਹਾਂ'
- latest_edit_html: 'à¨\86à¨\96਼ਰà©\80 ਸà©\8bਧ %{ago}:'
+ latest_edit_html: 'ਤਾà¨\9c਼à©\87 ਸà©\8bਧ (%{ago}):'
popup:
your location: ਤੁਹਾਡੀ ਸਥਿਤੀ
friend: ਦੋਸਤ
show:
+ my friends: ਮੇਰੇ ਦੋਸਤ
no friends: ਤੁਸੀਂ ਅਜੇ ਕੋਈ ਮਿੱਤਰ ਨਹੀਂ ਜੋੜਿਆ।
nearby users: ਨੇੜੇ-ਤੇੜੇ ਦੇ ਹੋਰ ਵਰਤੋਂਕਾਰ
diary_entries:
form:
- location: 'ਸਥਿਤੀ:'
+ location: ਟਿਕਾਣਾ
use_map_link: ਨਕਸ਼ਾ ਵਰਤੋ
show:
+ discussion: ਗੱਲ-ਬਾਤ
leave_a_comment: ਕੋਈ ਟਿੱਪਣੀ ਛੱਡੋ
login_to_leave_a_comment_html: ਟਿੱਪਣੀ ਛੱਡਣ ਵਾਸਤੇ %{login_link}
login: ਦਾਖ਼ਲ ਹੋਵੋ
diary_entry:
comment_link: ਇਸ ਇੰਦਰਾਜ 'ਤੇ ਟਿੱਪਣੀ ਕਰੋ
reply_link: ਇਸ ਇੰਦਰਾਜ ਦਾ ਜੁਆਬ ਦਿਉ
+ no_comments: ਕੋਈ ਟਿੱਪਣੀਆਂ ਨਹੀਂ
edit_link: ਇਹ ਇੰਦਰਾਜ ਸੋਧੋ
hide_link: ਇਹ ਇੰਦਰਾਜ ਲੁਕਾਉ
confirm: ਤਸਦੀਕ ਕਰੋ
hide_link: ਇਹ ਟਿੱਪਣੀ ਲੁਕਾਉ
confirm: ਤਸਦੀਕ ਕਰੋ
location:
- location: 'ਸਥਿਤà©\80:'
+ location: 'à¨\9fਿà¨\95ਾਣਾ:'
view: ਵੇਖੋ
edit: ਸੋਧੋ
- comments:
+ diary_comments:
+ index:
post: ਡਾਕ
when: ਕਦੋਂ
comment: ਟਿੱਪਣੀ
- newer_comments: ਹà©\8bਰ ਨਵà©\80à¨\86à¨\82 à¨\9fਿੱਪਣà©\80à¨\86à¨\82
- older_comments: ਹà©\8bਰ ਪà©\81ਰਾਣà©\80à¨\86à¨\82 à¨\9fਿੱਪਣà©\80à¨\86à¨\82
+ newer_comments: ਨਵੀਆਂ ਟਿੱਪਣੀਆਂ
+ older_comments: ਪੁਰਾਣੀਆਂ ਟਿੱਪਣੀਆਂ
friendships:
make_friend:
heading: '%{user} ਨਾਲ਼ ਯਾਰੀ ਪਾਉਣੀ ਹੈ?'
aeroway:
aerodrome: ਏਰੋਡਰੋਮ
apron: ਐਪਰਨ
- gate: ਦਰਵਾਜ਼ਾ
+ gate: ਹਵਾà¨\88 à¨\85ੱਡà©\87 ਦਾ ਦਰਵਾà¨\9c਼ਾ
helipad: ਹੈਲੀਪੈਡ
runway: ਉਡਾਣ-ਪੱਟੀ
taxiway: ਟੈਕਸੀਵੇਅ
waste_basket: ਕੂੜਾਦਾਨ
waste_disposal: ਕੂੜੇਦਾਨ
boundary:
- administrative: ਪà©\8dਰਸ਼ਾਸਕੀ ਸਰਹੱਦ
+ administrative: ਪà©\8dਰਬੰਧਕੀ ਸਰਹੱਦ
census: ਮਰਦਮਸ਼ੁਮਾਰੀ ਸਰਹੱਦ
national_park: ਕੌਮੀ ਬਾਗ਼
protected_area: ਸੁਰੱਖਿਅਤ ਖੇਤਰ
recreation_ground: ਮਨੋਰੰਜਨ ਮੈਦਾਨ
reservoir: ਸਰੋਵਰ
residential: ਰਿਹਾਇਸ਼ੀ ਇਲਾਕਾ
- retail: ਪਰਚੂਨ
+ retail: ਪਰਚੂਨ ਖੇਤਰ
village_green: ਸ਼ਾਮਲਾਤ
vineyard: ਅੰਗੂਰਾਂ ਦਾ ਬਾਗ਼
leisure:
more_results: ਹੋਰ ਨਤੀਜੇ
layouts:
logo:
- alt_text: à¨\93ਪਨਸà¨\9fਰà©\80à¨\9fਮà©\88ਪ ਲà©\8bà¨\97à©\8b
+ alt_text: à¨\96à©\81ੱਲà©\8dਹਾ-à¨\97ਲà©\80-ਨà¨\95ਸ਼ਾ ਮਾਰà¨\95ਾ
home: ਘਰੇਲੂ ਟਿਕਾਣੇ 'ਤੇ ਜਾਉ
logout: ਵਿਦਾਈ ਲਉ
log_in: ਦਾਖ਼ਲ ਹੋਵੋ
sign_up: ਭਰਤੀ ਹੋਵੋ
start_mapping: ਨਕਸ਼ਾਬੰਦੀ ਸ਼ੁਰੂ ਕਰੋ
edit: ਸੋਧੋ
- history: à¨\85ਤà©\80ਤ
+ history: ਪà©\81ਰਾਣਾ
export: ਬਰਾਮਦ
data: ਸਮੱਗਰੀ
export_data: ਸਮੱਗਰੀ ਬਰਾਮਦ ਕਰੋ
edit_with: '%{editor} ਨਾਲ ਸੋਧੋ'
+ intro_header: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ਉੱਤੇ ਜੀ ਆਇਆਂ ਨੂੰ
intro_2_create_account: ਇੱਕ ਵਰਤੋਂਕਾਰ ਖਾਤਾ ਬਣਾਉ
partners_partners: ਜੋੜੀਦਾਰ
help: ਮਦਦ
learn_more: ਹੋਰ ਜਾਣੋ
more: ਹੋਰ
user_mailer:
+ message_notification:
+ subject: '[ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ] %{message_title}'
+ header: '%{from_user} ਨੇ ਤੁਹਾਨੂੰ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ਰਾਹੀਂ %{subject}: ਵਿਸ਼ੇ ਨਾਲ
+ ਸੁਨੇਹਾ ਭੇਜਿਆ ਹੈ।'
+ header_html: '%{from_user} ਨੇ ਤੁਹਾਨੂੰ %{subject} ਵਿਸ਼ੇ ਦੇ ਨਾਲ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ
+ ਰਾਹੀਂ ਇੱਕ ਸੁਨੇਹਾ ਭੇਜਿਆ ਹੈ:'
+ friendship_notification:
+ subject: '[ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ] %{user} ਨੇ ਤੁਹਾਨੂੰ ਇੱਕ ਦੋਸਤ ਵਜੋਂ ਸ਼ਾਮਲ ਕੀਤਾ ਹੈ'
+ had_added_you: '%{user} ਨੇ ਤੁਹਾਨੂੰ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ''ਤੇ ਇੱਕ ਦੋਸਤ ਵਜੋਂ ਸ਼ਾਮਲ
+ ਕੀਤਾ ਹੈ।'
+ gpx_failure:
+ subject: '[ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ] GPX ਦਰਾਮਦ ਅਸਫਲਤਾ'
+ gpx_success:
+ subject: '[ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ] GPX ਦਰਾਮਦ ਸਫਲਤਾ'
signup_confirm:
+ subject: '[ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ] ਉੱਤੇ ਜੀ ਆਈਆਂ ਨੂੰ'
greeting: ਸਤਿ ਸ੍ਰੀ ਅਕਾਲ ਜੀ!
email_confirm:
+ subject: '[ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ] ਆਪਣੇ ਈਮੇਲ ਪਤੇ ਦੀ ਤਸਦੀਕ ਕਰੋ'
greeting: ਸਤਿ ਸ੍ਰੀ ਅਕਾਲ,
lost_password:
greeting: ਸਤਿ ਸ੍ਰੀ ਅਕਾਲ,
failure: ਵਰਤੋਂਕਾਰ %{name} ਨਹੀਂ ਲੱਭਿਆ।
confirm_email:
heading: ਈਮੇਲ ਪਤੇ ਦੀ ਤਬਦੀਲੀ ਤਸਦੀਕ ਕਰਾਉ
+ press confirm button: ਆਪਣੇ ਨਵੇਂ ਈਮੇਲ ਪਤੇ ਦੀ ਤਸਦੀਕ ਕਰਨ ਲਈ ਹੇਠਾਂ ਦਿੱਤੇ ਤਸਦੀਕੀ
+ ਬਟਨ ਨੂੰ ਦਬਾਓ।
button: ਤਸਦੀਕ ਕਰੋ
messages:
inbox:
date: ਮਿਤੀ
message_summary:
reply_button: ਜੁਆਬ
- destroy_button: ਮਿà¨\9fਾà¨\89
+ destroy_button: ਮਿà¨\9fਾà¨\93
new:
title: ਸੁਨੇਹਾ ਘੱਲੋ
create:
unread_button: ਅਣ-ਪੜ੍ਹਿਆ ਨਿਸ਼ਾਨ ਲਾਉ
back: ਪਿੱਛੇ
sent_message_summary:
- destroy_button: ਮਿà¨\9fਾà¨\89
+ destroy_button: ਮਿà¨\9fਾà¨\93
heading:
my_inbox: ਮੇਰਾ ਇਨਬਾਕਸ
destroy:
new:
title: ਪਛਾਣ ਸ਼ਬਦ ਗੁੰਮ ਗਿਆ
heading: ਪਛਾਣ ਸ਼ਬਦ ਭੁੱਲ ਗਿਆ?
- email address: 'ਈਮੇਲ ਪਤਾ:'
+ email address: ਈਮੇਲ ਪਤਾ
new password button: ਪਛਾਣ ਸ਼ਬਦ ਮੁੜ-ਸੈੱਟ ਕਰੋ
edit:
title: ਪਛਾਣ ਸ਼ਬਦ ਮੁੜ-ਸੈੱਟ ਕਰੋ
keep image: ਮੌਜੂਦਾ ਤਸਵੀਰ ਰੱਖੋ
delete image: ਮੌਜੂਦਾ ਤਸਵੀਰ ਹਟਾਉ
replace image: ਮੌਜੂਦਾ ਤਸਵੀਰ ਵਟਾਉ
- home location: 'ਘਰ ਦੀ ਸਥਿਤੀ:'
+ home location: ਘਰ ਦਾ ਟਿਕਾਣਾ
no home location: ਤੁਸੀਂ ਆਪਣੇ ਘਰ ਦੀ ਸਥਿਤੀ ਨਹੀਂ ਦੱਸੀ ਹੈ।
sessions:
new:
login_button: ਦਾਖ਼ਲ ਹੋਵੋ
register now: ਹੁਣੇ ਰਜਿਸਟਰ ਕਰੋ
destroy:
- title: ਲà©\8cà¨\97à¨\86à¨\8aà¨\9f
- heading: à¨\93ਪਨ ਸà¨\9fਰà©\80à¨\9f ਮà©\88ਪ ਤà©\8bà¨\82 ਲà©\8cà¨\97à¨\86à¨\8aà¨\9f à¨\95ਰà©\8b
- logout_button: ਲà©\8cà¨\97à¨\86à¨\8aà¨\9f
+ title: ਬਾਹਰ à¨\86à¨\89
+ heading: à¨\96à©\81ੱਲà©\8dਹਾ-à¨\97ਲà©\80-ਨà¨\95ਸ਼ਾ ਤà©\8bà¨\82 ਬਾਹਰ à¨\86à¨\93
+ logout_button: ਬਾਹਰ à¨\86à¨\89
site:
about:
next: ਅੱਗੇ
+ heading_html: '%{copyright}ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ %{br} ਯੋਗਦਾਨੀ'
local_knowledge_title: ਸਥਾਨੀ ਗਿਆਨ
open_data_title: ਓਪਨ ਡਾਟਾ
legal_title: ਕਾਨੂੰਨੀ
mapping_link: ਨਕਸ਼ਾਬੰਦੀ ਸ਼ੁਰੂ ਕਰੋ
legal_babble:
title_html: ਨਕਲ-ਹੱਕ ਤੇ ਲਾਇਸੰਸ
+ introduction_1_osm_foundation: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ਸੰਸਥਾ
+ credit_title_html: ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ਨੂੰ ਕਿਵੇਂ ਸੇਹਰਾ ਦੇਣਾ ਹੈ
+ credit_1_html: 'ਜਿੱਥੇ ਤੁਸੀਂ ਖੁੱਲ੍ਹਾ-ਗਲੀ-ਨਕਸ਼ਾ ਡੇਟਾ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ, ਤੁਹਾਨੂੰ
+ ਹੇਠ ਲਿਖੀਆਂ ਦੋ ਚੀਜ਼ਾਂ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ:'
more_title_html: ਹੋਰ ਜਾਣਕਾਰੀ ਲੱਭਣ ਵਾਸਤੇ
contributors_title_html: ਸਾਡੇ ਯੋਗਦਾਨੀ
- index:
- permalink: ਪੱਕੀ ਕੜੀ
- shortlink: ਛੋਟੀ ਕੜੀ
- createnote: ਟਿੱਪਣੀ ਜੋੜੋ
edit:
user_page_link: ਵਰਤੋਂਕਾਰ ਵਰਕਾ
anon_edits_link_text: ਪਤਾ ਕਰੋ ਕਿ ਮਾਮਲਾ ਇਸ ਤਰ੍ਹਾਂ ਕਿਉਂ ਹੈ।
export:
title: ਬਰਾਮਦ
manually_select: ਆਪਣੇ ਆਪ ਇੱਕ ਵੱਖਰਾ ਖੇਤਰ ਚੁਣੋ
- licence: ਲਾà¨\87ਸੰਸ
+ licence: ਲਸੰਸ
too_large:
other:
title: ਹੋਰ ਸਰੋਤ
how_to_help:
title: ਮਦਦ ਕਿਵੇਂ ਕਰਨੀ ਹੈ
join_the_community:
- title: ਭਾਈਚਾਰੇ ਨਾਲ਼ ਜੁੜੋ
+ title: ਭਾਈਚਾਰੇ ਨਾਲ ਜੁੜੋ
other_concerns:
title: ਹੋਰ ਫ਼ਿਕਰ
help:
get_directions: ਦਿਸ਼ਾਵਾਂ ਪ੍ਰਾਪਤ ਕਰੋ
from: ਵੱਲੋਂ
to: ਵੱਲ
- where_am_i: ਮà©\88à¨\82 à¨\95ਿੱਥà©\87 ਹਾà¨\82?
+ where_am_i: à¨\87ਹ à¨\95ਿੱਥà©\87 ਹà©\88?
submit_text: ਜਾਉ
key:
table:
runway: ਹਵਾਈ ਅੱਡੇ ਦੀ ਉਡਾਣ ਪੱਟੀ
taxiway: ਟੈਕਸੀਵੇਅ
apron: ਹਵਾਈ ਅੱਡੇ ਦਾ ਐਪਰਨ
- admin: ਪà©\8dਰਸ਼ਾਸਕੀ ਸਰਹੱਦ
+ admin: ਪà©\8dਰਬੰਧਕੀ ਸਰਹੱਦ
forest: ਜੰਗਲ
- wood: à¨\9cà©°à¨\97ਲ
+ wood: ਲੱà¨\95à©\9c
golf: ਗੋਲਫ਼ ਮੈਦਾਨ
park: ਪਾਰਕ
common: ਸ਼ਾਮਲਾਟ
header: ਮੁਫ਼ਤ ਅਤੇ ਸੋਧਣਯੋਗ
continue: ਭਰਤੀ ਹੋਵੋ
terms:
- title: ਯà©\8bà¨\97ਦਾਨà©\80 ਦà©\80à¨\86à¨\82 ਸ਼ਰਤਾà¨\82
- heading: ਯà©\8bà¨\97ਦਾਨà©\80 ਦà©\80à¨\86à¨\82 ਸ਼ਰਤਾà¨\82
+ title: ਸ਼ਰਤਾਂ
+ heading: ਸ਼ਰਤਾਂ
consider_pd_why: ਇਹ ਕੀ ਹੈ?
+ informal_translations: ਗ਼ੈਰ-ਰਸਮੀ ਤਰਜਮਾ
decline: ਮਨਜ਼ੂਰ ਨਹੀਂ
legale_select: 'ਆਪਣੀ ਰਿਹਾਇਸ਼ ਦਾ ਦੇਸ਼ ਚੁਣੋ:'
legale_names:
created from: 'ਕਿੱਥੋਂ ਉਸਾਰਿਆ:'
status: 'ਦਰਜਾ:'
role:
- administrator: à¨\87ਹ ਵਰਤà©\8bà¨\82à¨\95ਾਰ à¨\87ੱà¨\95 ਪà©\8dਰਸ਼ਾਸਕ ਹੈ।
+ administrator: à¨\87ਹ ਵਰਤà©\8bà¨\82à¨\95ਾਰ à¨\87ੱà¨\95 ਪà©\8dਰਬੰਧਕ ਹੈ।
moderator: ਇਹ ਵਰਤੋਂਕਾਰ ਇੱਕ ਵਿਚੋਲਾ ਹੈ।
grant:
- administrator: ਪà©\8dਰਸ਼ਾਸà¨\95à©\80 ਹੱà¨\95 ਦਿà¨\89
+ administrator: ਪà©\8dਰਬੰਧà¨\95à©\80 ਹੱà¨\95 ਦਿà¨\93
moderator: ਵਿਚੋਲਗੀ ਦੇ ਹੱਕ ਦਿਉ
comments: ਟਿੱਪਣੀਆਂ
create_block: ਇਸ ਵਰਤੋਂਕਾਰ 'ਤੇ ਰੋਕ ਲਾਉ
helper:
block_duration:
hours:
- one: ੧ ਘੰਟਾ
+ one: '%{count} ਘੰਟਾ'
other: '%{count} ਘੰਟੇ'
show:
status: ਹਾਲਾਤ
entry_role_html: Relacja %{relation_name} (jako %{relation_role})
not_found:
title: Nie znaleziono
- sorry: 'Niestety, nie odnaleziono %{type} #%{id}.'
+ sorry: 'Nie odnaleziono %{type} #%{id}.'
type:
node: węzła
way: linii
introduction: Kliknij na mapie, by wyszukać pobliskie obiekty.
nearby: Obiekty w pobliżu
enclosing: Większe, otaczające obiekty
+ old_nodes:
+ not_found:
+ sorry: 'Nie odnaleziono węzła #%{id} w wersji %{version}.'
+ old_ways:
+ not_found:
+ sorry: 'Nie odnaleziono linii #%{id} w wersji %{version}.'
+ old_relations:
+ not_found:
+ sorry: 'Nie odnaleziono relacji #%{id} w wersji %{version}.'
changesets:
changeset_paging_nav:
showing_page: Strona %{page}
join_discussion: Zaloguj się, aby dołączyć do dyskusji
still_open: Zestaw zmian jest wciąż otwarty – dyskusja będzie możliwa, gdy zostanie
on zamknięty.
+ subscribe: Obserwuj
+ unsubscribe: Nie obserwuj
comment_by_html: Komentarz od %{user} %{time_ago}
hidden_comment_by_html: Ukryty komentarz od użytkownika %{user} %{time_ago}
+ hide_comment: ukryj
+ unhide_comment: pokaż
+ comment: Komentarz
changesetxml: XML w formacie zestawu zmian
osmchangexml: XML w formacie osmChange
paging_nav:
all:
title: Wpisy dzienników OpenStreetMap
description: Ostatnie wpisy dzienników od użytkowników OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Komentarze do dzienników dodane przez %{user}
heading: Komentarze do dzienników użytkownika %{user}
subheading_html: Komentarze do dzienników dodane przez %{user}
search:
title:
results_from_html: Wyniki z %{results_link}
- latlon: Wewnętrzny
+ latlon: Internal
osm_nominatim: Nominatim
osm_nominatim_reverse: Nominatim
search_osm_nominatim:
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:
+ send_paranoid_instructions: Jeśli twój adres e-mail istnieje w naszej bazie
+ danych, otrzymasz link do odzyskania hasła na swój adres e-mail w ciągu kilku
+ minut.
edit:
title: Wyczyść hasło
heading: Czyszczenie hasła użytkownika %{user}
flash token bad: Nie znaleziono tokenu, sprawdź URL
update:
flash changed: Hasło zostało zmienione.
+ flash token bad: Nie znalaziono tego tokena. Sprawdź adres URL.
preferences:
show:
title: Preferencje
support: supportem
shared:
markdown_help:
- heading_html: Przeanalizowano za pomocą %{kramdown_link}
+ heading_html: Składnia %{kramdown_link}
+ kramdown_url: https://kramdown.gettalong.org/quickref.html
+ kramdown: kramdown
headings: Nagłówki
heading: Nagłówki
subheading: Podtytuł
contributors_fr_credit_html: '%{france}: Zawiera dane uzyskane z Direction
Générale des Impôts.'
contributors_fr_france: Francja
+ contributors_hr_credit_html: |-
+ %{croatia}: Zawiera dane z %{dgu_link} i %{open_data_portal}
+ (informacje publiczne Chorwacji).
+ contributors_hr_croatia: Chorwacja
+ contributors_hr_dgu: Państwowej Administracji Geodezyjnej Chorwacji (Državna
+ geodetska uprava)
+ contributors_hr_open_data_portal: Krajowego portalu otwartych danych (Portal
+ otvorenih podataka)
contributors_nl_credit_html: '%{netherlands}: Zawiera dane © AND, 2007
(%{and_link})'
contributors_nl_netherlands: Holandia
contributors_nz_new_zealand: Nowa Zelandia
contributors_nz_linz_data_service: LINZ Data Service
contributors_nz_cc_by: CC BY 4.0
+ contributors_rs_credit_html: |-
+ %{serbia}: Zawiera dane z %{rgz_link} i %{open_data_portal}
+ (informacje publiczne Serbii), 2018.
contributors_rs_serbia: Serbia
- contributors_rs_open_data_portal: Krajowy Portal Otwartych Danych
+ contributors_rs_rgz: Serbskiego Urzędu Geodezyjnego
+ contributors_rs_open_data_portal: Krajowego portalu otwartych danych
contributors_si_credit_html: '%{slovenia}: Zawiera dane %{gu_link} oraz %{mkgp_link}
(informacja publiczna Słowenii).'
contributors_si_slovenia: Słowenia
contributors_gb_united_kingdom: Wielka Brytania
contributors_2_html: Szczegóły tych i innych źródeł, które zostały wykorzystane,
aby udoskonalić OpenStreetMap, są dostępne na stronie %{contributors_page_link}.
- contributors_2_contributors_page: Contributors (en)
+ contributors_2_contributors_page: Contributors
contributors_footer_2_html: Włączenie danych do OpenStreetMap nie musi oznaczać,
że udostępniający je podmiot popiera OpenStreetMap, udziela jakiejkolwiek
gwarancji lub ponosi jakąkolwiek odpowiedzialność.
js_1: Twoja przeglądarka internetowa nie obsługuje JavaScriptu bądź też masz
wyłączoną jego obsługę.
js_2: OpenStreetMap używa JavaScriptu do wyświetlania tej mapy.
- permalink: Permalink
- shortlink: Skrócony link
- createnote: Dodaj uwagę
license:
copyright: Prawa autorskie należą do OpenStreetMap i jego autorów na warunkach
otwartej licencji
farmland: Grunty rolne
grass: Trawnik
meadow: Łąka
+ bare_rock: Odkryte skały
sand: Piaski
golf: Pole golfowe
park: Park
scrubland: Zarośla
lake: Jezioro
reservoir: Zbiornik
+ intermittent_water: Okresowy ciek
glacier: Lodowiec
reef: Rafa
wetland: Mokradła
oauth2_authorizations: Autoryzacje OAuth 2
auth_providers:
openid_logo_alt: Zaloguj się przez OpenID
+ openid_login_button: Kontynuuj
openid:
title: Zaloguj się przez OpenID
alt: Zaloguj się za pomocą adresu URL OpenID
users:
new:
title: Zarejestruj się
+ tab_title: Rejestracja
no_auto_account_create: Niestety nie możemy aktualnie stworzyć ci konta automatycznie.
please_contact_support_html: Skontaktuj się z %{support_link} w celu umówienia
się na założenie konta – postaramy się rozpatrzyć prośbę jak najszybciej.
privacy_policy_title: Polityka prywatności OSMF, w tym sekcja dotycząca adresów
e-mail
or: lub
- use external auth: Alternatywnie, zaloguj się przez...
+ use external auth: 'Alternatywnie, zarejestruj się przez:'
terms:
title: Warunki
heading: Warunki
remove as friend: usuń ze znajomych
add as friend: dodaj do znajomych
mapper since: 'Mapuje od:'
+ last map edit: 'Ostatnia edycja mapy:'
+ no activity yet: —
uid: 'Identyfikator użytkownika:'
ct status: 'Warunki uczestnictwa:'
ct undecided: niezdecydowane
role:
administrator: Ten użytkownik jest administratorem
moderator: Ten użytkownik jest moderatorem
+ importer: Ten użytkownik jest importerem
grant:
administrator: Przyznaj dostęp administratora
moderator: Przyznaj dostęp moderatora
+ importer: Przyznaj rolę importera
revoke:
administrator: Cofnij dostęp administratora
moderator: Cofnij dostęp moderatora
+ importer: Odwołaj rolę importera
block_history: aktywne blokady
moderator_history: nałożone blokady
+ revoke_all_blocks: Odwołaj wszystkie blokady
comments: komentarze
create_block: Zablokuj tego użytkownika
activate_user: Aktywuj tego użytkownika
confirm: Czy na pewno chcesz odwołać tę blokadę?
revoke: Odwołaj!
flash: Blokada została odwołana.
+ revoke_all:
+ title: Odwoływanie wszystkich blokad nałożonych na użytkownika %{block_on}
+ heading_html: Odwoływanie wszystkich blokad nałożonych na użytkownika %{block_on}
+ empty: Użytkownik %{name} nie ma aktywnych blokad.
+ confirm: Jesteś pewny, że chcesz odwołać %{active_blocks}?
+ active_blocks:
+ one: '%{count} aktywna blokada'
+ few: '%{count} aktywne blokady'
+ many: '%{count} aktywnych blokad'
+ other: ""
+ revoke: Odwołaj!
+ flash: Wszystkie aktywne blokady zostały odwołane.
helper:
time_future_html: Blokada wygasa za %{time}.
until_login: Aktywna do momentu zalogowania się użytkownika.
blocks_on:
title: Blokady na użytkownika %{name}
heading_html: Lista blokad na użytkownika %{name}
- empty: '%{name} nie był jeszcze zablokowany.'
+ empty: Użytkownik %{name} nie był jeszcze zablokowany.
blocks_by:
title: Blokady nałożone przez %{name}
heading_html: Lista blokad nałożonych przez %{name}
reason: Powód blokady
status: Status
revoker_name: Odwołana przez
+ older: Starsze blokady
+ newer: Nowsze blokady
+ navigation:
+ all_blocks: Wszystkie blokady
+ blocks_on_me: Blokady nałożone na mnie
+ blocks_on_user: Blokady na %{user}
+ blocks_by_me: Blokady nałożone przeze mnie
+ blocks_by_user: Blokady nałożone przez %{user}
+ block: Blokada nr %{id}
user_mutes:
index:
+ user_mute_explainer: Wiadomości od wyciszonych użytkowników są przenoszone do
+ osobnej skrzynki odbiorczej, a ty nie otrzymasz powiadomień e-mailem.
+ user_mute_admins_and_moderators: Możesz wyciszyć administratorów i moderatorów,
+ jednak ich wiadomości nie będą wyciszone.
table:
tbody:
unmute: Wyłącz wyciszenie
send_message: Wyślij wiadomość
create:
- notice: Wyciszyłeś %{name}.
+ notice: Wyciszyłeś użytkownika %{name}.
+ error: Nie udało się wyciszyć użytkownika %{name}. %{full_message}
+ destroy:
+ notice: Odciszyłeś użytkownika %{name}.
+ error: Nie udało się odciszyć użytkownika. Spróbuj ponownie.
notes:
index:
title: Uwagi użytkownika %{user}
intro: Zauważyłeś błąd lub brak czegoś? Daj znać innym mapującym, aby mogli
to poprawić. Przesuń znacznik do właściwej pozycji i wpisz notatkę opisującą
problem.
+ anonymous_warning_html: Nie jesteś zalogowany. %{log_in} lub %{sign_up}, jeśli
+ chcesz otrzymywać aktualizacje tej uwagi.
+ anonymous_warning_log_in: Zaloguj się
+ anonymous_warning_sign_up: zarejestruj
advice: Twoja uwaga jest publiczna i może zostać użyta do zaktualizowania mapy,
nie podawaj tu więc informacji osobistych oraz informacji z map i źródeł chronionych
prawami autorskimi.
osm_france: OpenStreetMap France
thunderforest_credit: Kafelki dzięki uprzejmości %{thunderforest_link}
andy_allan: Andy'ego Allana
+ tracestrack_credit: Kafelki dzięki uprzejmości %{tracestrack_link}
hotosm_credit: 'Styl kafelków: %{hotosm_link}. Hosting: %{osm_france_link}'
hotosm_name: Humanitarian OpenStreetMap Team
site:
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
- subscribe: Obserwuj
- unsubscribe: Nie obserwuj
- hide_comment: ukryj
- unhide_comment: pokaż
edit_help: Proszę przesunąć mapę i przybliżyć modyfikowane położenie, a następnie
kliknąć tutaj.
directions:
title: 'تبدیلیاں: %{id}'
discussion: گل بات
join_discussion: ایہہ گل بات جوڑن لئی تسیں لوگاین کر سکدیو
+ hide_comment: لُکاؤ
+ unhide_comment: نہیں لُکاؤ
+ comment: ٹپݨی کرو
changesetxml: تبدیلیاں لئی سروت دی فائل
osmchangexml: تبدیلیاں لئی سروت دی فائل فارماٹ
paging_nav:
all:
title: نقشے بارے وچ روزنامچے دے لیکھ
description: حالیہ نقشے بارے وچ روزنامچے دے لیکھ
- comments:
+ diary_comments:
+ index:
title: ایہہ روزنامچے وچ «%{user}» دیاں ٹپݨیاں پائیاں
heading: روزنامچے وچ «%{user}» دیاں ٹپݨیاں
subheading_html: ایہہ روزنامچے وچ «%{user}» دیاں ٹپݨیاں پائیاں
index:
js_1: تہاڈے براؤزر جاواسکرپٹ نہیں ورتیئے، یا تسیں جاواسکرپٹ بند کیتے سی۔
js_2: ایس ویبسائیٹ دا نقشہ جاواسکرپٹ ورتدا۔
- permalink: پکی کڑی
- shortlink: چھوٹی کڑی
- createnote: نوٹ پایو
license:
copyright: اوپن سٹریٹ میپ تے لیکھک لئی آزاد لائیسنس نال ویب سائیٹ چھپیا سی۔
remote_failed: سودھ کر نہیں سکدے۔ خبرے جو اَیپ چالو تے ریموٹ کنٹرول چالو وکھیو۔
map_data_zoom_in_tooltip: ڈیٹے دکھݨ لئی وڈا کریو
queryfeature_tooltip: نقشاں لئی پرشن
queryfeature_disabled_tooltip: نقش دے پرشن لئی وڈا کریو
- changesets:
- show:
- comment: ٹپݨی کرو
- hide_comment: لُکاؤ
- unhide_comment: نہیں لُکاؤ
directions:
engines:
fossgis_osrm_bike: سائیکل (او ایس آر ایم)
location: 'ځای:'
view: کتل
edit: سمول
- comments:
+ diary_comments:
+ index:
when: کله
comment: تبصره
friendships:
destroy:
success: Conta apagada.
browse:
- deleted_ago_by_html: Eliminado há %{time_ago} por %{user}
- edited_ago_by_html: Editado há %{time_ago} por %{user}
+ deleted_ago_by_html: Eliminado %{time_ago} por %{user}
+ edited_ago_by_html: Editado %{time_ago} por %{user}
version: Versão
redacted_version: Versão reduzida
in_changeset: Conjunto de alterações
title: 'Conjunto de alterações: %{id}'
created: 'Criado: %{when}'
closed: 'Fechado: %{when}'
- created_ago_html: Criado há %{time_ago}
- closed_ago_html: Fechado há %{time_ago}
- created_ago_by_html: Criado há %{time_ago} por %{user}
- closed_ago_by_html: Fechado há %{time_ago} por %{user}
+ created_ago_html: Criado %{time_ago}
+ closed_ago_html: Fechado %{time_ago}
+ created_ago_by_html: Criado %{time_ago} por %{user}
+ closed_ago_by_html: Fechado %{time_ago} por %{user}
discussion: Discussão
join_discussion: Inicia sessão para te juntares à discussão
still_open: O conjunto de alterações continua aberto. A discussão será iniciada
assim que o conjunto de alterações for fechado.
- comment_by_html: Comentário de %{user} há %{time_ago}
- hidden_comment_by_html: Comentário ocultado por %{user} há %{time_ago}
+ subscribe: Subscrever
+ unsubscribe: Anular subscrição
+ comment_by_html: Comentário de %{user} %{time_ago}
+ hidden_comment_by_html: Comentário ocultado por %{user} %{time_ago}
+ hide_comment: ocultar
+ unhide_comment: desocultar
+ comment: Comentar
changesetxml: XML do conjunto de alterações
osmchangexml: XML no formato osmChange
paging_nav:
title: Diário de %{user} | %{title}
user_title: Diário de %{user}
discussion: Discussão
+ subscribe: Subscrever
+ unsubscribe: Cancelar subscrição
leave_a_comment: Deixar um comentário
login_to_leave_a_comment_html: '%{login_link} para deixar um comentário'
login: Iniciar sessão
all:
title: Publicações no diário de mapeadores do OpenStreetMap
description: Publicações recentes no diário OpenStreetMap
- comments:
+ subscribe:
+ heading: Pretendes acompanhar a seguinte discussão sobre a entrada no diário?
+ button: Acompanhar discussão
+ unsubscribe:
+ heading: Pretendes deixar de acompanhar a seguinte discussão sobre a entrada
+ no diário?
+ button: Deixar de acompanhar a discussão
+ diary_comments:
+ index:
title: Comentários no Diário feitos por %{user}
heading: Comentários no Diário de %{user}
subheading_html: Comentários no Diário feitos por %{user}
comment: Comentário
newer_comments: Comentários mais recentes
older_comments: Comentários mais antigos
- subscribe:
- heading: Pretendes acompanhar a seguinte discussão sobre a entrada no diário?
- button: Acompanhar discussão
- unsubscribe:
- heading: Pretendes deixar de acompanhar a seguinte discussão sobre a entrada
- no diário?
- button: Deixar de acompanhar a discussão
doorkeeper:
errors:
messages:
contact_the_community_html: Fique à vontade para %{contact_link} a comunidade
OpenStreetMap caso tenha encontrado uma ligação inativa ou um erro. Deixe
uma nota da URL exata da sua solicitação.
+ bad_request:
+ title: Pedido inválido
+ description: A operação solicitada no servidor OpenStreetMap não é válida (HTTP
+ 400)
forbidden:
title: Proibido
description: A operação solicitada no servidor do OpenStreetMap só está disponível
perto de %{place}.'
commented_note_html: '%{commenter} reabriu uma nota comentada por ti. A nota
fica perto de %{place}.'
- details: Podes ver mais detalhes sobre a nota em %{url}.
- details_html: Podes ver mais detalhes sobre a nota em %{url}.
+ details: Responde ou descobre mais sobre a nota em %{url}.
+ details_html: Responde ou descobre mais sobre a nota em %{url}.
changeset_comment_notification:
description: Conjunto de alterações n.º %{id}
hi: Olá, %{to_user}.
partial_changeset_with_comment: com o comentário '%{changeset_comment}'
partial_changeset_with_comment_html: com o comentário '%{changeset_comment}'
partial_changeset_without_comment: sem comentários
- details: Podes encontrar mais informações sobre o conjunto de alterações em
- %{url}.
- details_html: Podes encontrar mais informações sobre o conjunto de alterações
- em %{url}.
+ details: Responde ou descobre mais sobre o conjunto de alterações em %{url}.
+ details_html: Responde ou descobre mais sobre o conjunto de alterações em %{url}.
unsubscribe: Podes deixar de acompanhar as atualizações deste conjunto de alterações
em %{url}.
unsubscribe_html: Podes deixar de acompanhar as atualizações deste conjunto
new:
title: Entrar
tab_title: Iniciar sessão
+ login_to_authorize_html: Inicia sessão no OpenStreetMap para acederes a %{client_app_name}.
email or username: 'E-mail ou Nome de utilizador:'
password: Palavra-passe
remember: Ficar autenticado entre sessões
lost password link: Perdeste a tua palavra-passe?
login_button: Iniciar sessão
register now: Regista-te agora
- with external: 'Em alternativa, usa um serviço externo para iniciares sessão:'
+ with external: ou inicia sessão com uma aplicação de terceiros
+ or: ou
auth failure: Lamentamos, mas não foi possível iniciar sessão com os dados fornecidos.
destroy:
title: Sair
contributors_fr_credit_html: '%{france}: contém dados provenientes da Direção
Geral de Impostos.'
contributors_fr_france: França
+ contributors_hr_credit_html: |-
+ %{croatia}: Contém dados de %{dgu_link} e %{open_data_portal}
+ (informação pública da Croácia).
+ contributors_hr_croatia: Croácia
+ contributors_hr_dgu: Administração Geodésica Estatal da Croácia
+ contributors_hr_open_data_portal: Portal Nacional de Dados Abertos
contributors_nl_credit_html: '%{netherlands}: Contém © e dados, 2007
(%{and_link})'
contributors_nl_netherlands: Países Baixos
js_1: Está a usar um navegador de Internet que não suporta JavaScript ou tem
o JavaScript desativado.
js_2: É necessário ter o JavaScript ativado para visualizar mapas no OpenStreetMap.
- permalink: Ligação permanente
- shortlink: Atalho
- createnote: Adicionar nota
license:
copyright: Direitos de autor do OpenStreetMap e seus contribuidores, sob uma
licença aberta
other: Ficheiro GPX com %{count} pontos de %{user}
description_without_count: Ficheiro GPX de %{user}
application:
+ basic_auth_disabled: 'A Autenticação Básica HTTP está desativada: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 e 1.0a estão desativados: %{link}'
permission_denied: Não tens permissões para realizar essa operação
require_cookies:
cookies_needed: Parece que tens os "cookies" desativados - por favor, ativa-os
muted_users: Utilizadores Silenciados
auth_providers:
openid_logo_alt: Iniciar sessão com um OpenID
+ openid_login_button: Continuar
openid:
title: Iniciar sessão com OpenID
alt: Iniciar sessão com um URL do OpenID
write_redactions: Rever dados do mapa
read_email: Ler e-mail de utilizador
skip_authorization: Aprovar a aplicação automaticamente
+ for_roles:
+ moderator: Esta permissão é para ações disponíveis apenas para moderadores
oauth_clients:
new:
title: Registar uma nova aplicação
users:
new:
title: Criar conta
+ tab_title: Registar
+ signup_to_authorize_html: Inicia sessão no OpenStreetMap para acederes a %{client_app_name}.
no_auto_account_create: Infelizmente, e de momento, não é possível criar uma
conta automaticamente.
please_contact_support_html: Por favor, contacta %{support_link} para pedir
a criação de uma conta - tentaremos tratar do pedido o mais rapidamente possível.
support: apoio
about:
- header: Livre e editável
+ header: Gratuito e editável.
paragraph_1: Ao contrário de outros mapas, o OpenStreetMap é completamente
criado por pessoas como tu, e qualquer pessoa o pode corrigir, transferir
e usar de forma gratuita.
- paragraph_2: Regista-te para começares a contribuir. Iremos enviar um e-mail
- para confirmar a tua conta.
+ paragraph_2: Regista-te para começares a contribuir.
+ welcome: Bem-vind@ ao OpenStreetMap
+ duplicate_social_email: Se já tens uma conta OpenStreetMap e desejas utilizar
+ um provedor de identidade externo, inicia sessão com a tua palavra-passe e
+ modifica as definições da tua conta.
display name description: O nome de utilizador ficará visível publicamente.
Poderás alterar o nome posteriormente nas configurações do teu perfil.
+ by_signing_up_html: Ao registares-te, aceitas os nossos %{tou_link}, %{privacy_policy_link}
+ e %{contributor_terms_link}.
+ tou: Termos de Utilização
+ contributor_terms: Termos de Contribuidor
external auth: 'Autenticação por terceiros:'
continue: Criar conta
terms accepted: Obrigado por aceitares os novos termos de contribuidor!
privacy_policy: política de privacidade
privacy_policy_title: Política de privacidade da OSMF incluindo secção sobre
endereços de correio eletrónico
- use external auth: Em alternativa, usa um serviço externo para iniciares sessão
+ consider_pd_html: Considero que as minhas contribuições estão no %{consider_pd_link}.
+ consider_pd: domínio público
+ or: ou
+ use external auth: ou regista-te com um serviço externo
terms:
title: Termos
heading: Termos
remove as friend: Remover amigo
add as friend: Adicionar aos amigos
mapper since: 'A mapear desde:'
+ last map edit: 'Última edição do mapa:'
+ no activity yet: Ainda sem atividade
uid: 'Id de utilizador:'
ct status: 'Termos do Contribuidor:'
ct undecided: Por decidir
revoker_name: Revogado por
older: Blocos mais antigos
newer: Blocos mais recentes
+ navigation:
+ all_blocks: Todos os bloqueios
+ blocks_on_me: Quem me bloqueou
+ blocks_on_user: Bloqueios a %{user}
+ blocks_by_me: Os meus bloqueios
+ blocks_by_user: Bloqueios de %{user}
+ block: 'Bloqueio #%{id}'
user_mutes:
index:
title: Utilizadores Silenciados
open_title: Nota não resolvida n.º %{note_name}
closed_title: Nota resolvida n.º %{note_name}
hidden_title: Nota oculta n.º %{note_name}
- event_opened_by_html: Criada por %{user} há %{time_ago}
- event_opened_by_anonymous_html: Criada por anónimo há %{time_ago}
- event_commented_by_html: Comentada por %{user} há %{time_ago}
- event_commented_by_anonymous_html: Comentada por anónimo há %{time_ago}
- event_closed_by_html: Resolvida por %{user} há %{time_ago}
- event_closed_by_anonymous_html: Resolvida por anónimo há %{time_ago}
- event_reopened_by_html: Reativada por %{user} há %{time_ago}
- event_reopened_by_anonymous_html: Reativada por anónimo há %{time_ago}
- event_hidden_by_html: Escondida por %{user} há %{time_ago}
+ event_opened_by_html: Criada por %{user} %{time_ago}
+ event_opened_by_anonymous_html: Criada por anónimo %{time_ago}
+ event_commented_by_html: Comentada por %{user} %{time_ago}
+ event_commented_by_anonymous_html: Comentada por anónimo %{time_ago}
+ event_closed_by_html: Resolvida por %{user} %{time_ago}
+ event_closed_by_anonymous_html: Resolvida por anónimo %{time_ago}
+ event_reopened_by_html: Reativada por %{user} %{time_ago}
+ event_reopened_by_anonymous_html: Reativada por anónimo %{time_ago}
+ event_hidden_by_html: Escondida por %{user} %{time_ago}
report: denunciar esta nota
anonymous_warning: Esta nota inclui comentários de utilizadores anónimos que
devem ser confirmados por fonte independente.
o mais pormenorizada possível sobre o que pretendes ver alterado no mapa,
para que outros mapeadores te possam ajudar. Posiciona o marcador no local
correto e escreve uma nota que explique o problema.
+ anonymous_warning_html: Não tens sessão iniciada. Por favor, %{log_in} ou %{sign_up}
+ se quiseres receber atualizações sobre a tua nota.
+ anonymous_warning_log_in: inicia sessão
+ anonymous_warning_sign_up: regista-te
advice: 'Lembra-te: a tua nota é pública e poderá ser usada para atualizar o
mapa, portanto, não introduzas informações pessoais, dados de mapas ou catálogos
protegidos por direitos de autor.'
queryfeature_disabled_tooltip: Amplia para consultares elementos
embed_html_disabled: A incorporação de HTML não está disponível para esta camada
do mapa
- changesets:
- show:
- comment: Comentar
- subscribe: Subscrever
- unsubscribe: Anular subscrição
- hide_comment: ocultar
- unhide_comment: desocultar
edit_help: Move o mapa, amplia-o no local que pretendes editar e clica aqui.
directions:
ascend: Ascenção
join_discussion: Entrar para participar da discussão
still_open: O conjunto de alterações continua em aberto - A discussão será iniciada
assim que for fechado o conjunto de alterações.
+ subscribe: Inscrever
+ unsubscribe: Cancelar inscrição
comment_by_html: Comentário de %{user} há %{time_ago}
hidden_comment_by_html: Comentário ocultado por %{user} há %{time_ago}
+ hide_comment: esconder
+ unhide_comment: exibir
+ comment: Comentar
changesetxml: XML do conjunto de alterações
osmchangexml: XML osmChange
paging_nav:
all:
title: Publicações no diário do OpenStreetMap
description: Publicações no diário recentes de usuários do OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Comentários no diário feitos por %{user}
heading: Comentários no diário de %{user}
subheading_html: Comentários no diário feitos por %{user}
js_1: Você está usando um navegador sem suporte a JavaScript, ou está com o
JavaScript desativado.
js_2: O OpenStreetMap usa JavaScript para a navegação dos mapas.
- permalink: Link permanente
- shortlink: Link Curto
- createnote: Incluir uma nota
license:
copyright: Direitos autorais do OpenStreetMap e contribuidores sob uma licença
aberta
queryfeature_disabled_tooltip: Aproxime para consultar elementos
embed_html_disabled: A incorporação de HTML não está disponível para esta camada
do mapa
- changesets:
- show:
- comment: Comentar
- subscribe: Inscrever
- unsubscribe: Cancelar inscrição
- hide_comment: esconder
- unhide_comment: exibir
edit_help: Mover o mapa e ampliar uma localização que pretende editar e clique
aqui.
directions:
join_discussion: Conectați-vă pentru a vă alătura discuției
still_open: Setul de schimbări este deschis - discuția se va deschide atunci
când setul de schimbări este închis.
+ subscribe: Abonare
+ unsubscribe: Dezabonare
comment_by_html: Comentariu de la %{user} %{time_ago}
hidden_comment_by_html: Comentariu ascuns de la %{user} %{time_ago}
+ hide_comment: ascunde
+ unhide_comment: arată
+ comment: Comentariu
changesetxml: Set de modificări XML
osmchangexml: XML osmChange
paging_nav:
all:
title: Înregistrări în jurnalul OpenStreetMap
description: Înregistrări recente în jurnale de la utilizatorii OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Comentarii din jurnal adăugate de %{user}
heading: Comentariile la jurnal a lui %{user}
subheading_html: Comentarii din jurnal adăugate de %{user}
js_1: Utilizați fie un browser care nu acceptă JavaScript, fie aveți JavaScript
dezactivat.
js_2: OpenStreetMap folosește JavaScript pentru hărțile goale.
- permalink: Legătură permanentă
- shortlink: Legătură scurtată
- createnote: Adaugă o notă
license:
copyright: Drepturi de autor OpenStreetMap și contribuitori, sub licență deschisă
remote_failed: Editarea a eșuat - asigurați-vă că JOSM sau Merkaartor este încărcat
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
- subscribe: Abonare
- unsubscribe: Dezabonare
- hide_comment: ascunde
- unhide_comment: arată
edit_help: Deplasați harta și măriți o locație pe care doriți să o editați, apoi
faceți click aici.
directions:
join_discussion: Войдите в систему, чтобы присоединиться к обсуждению
still_open: Пакет правок ещё открыт. Обсуждение будет доступно, как только пакет
правок будет закрыт.
+ subscribe: Подписаться
+ unsubscribe: Отписаться
comment_by_html: Комментарий от %{user} %{time_ago}
hidden_comment_by_html: Скрытый комментарий от %{user} %{time_ago}
+ hide_comment: скрыть
+ unhide_comment: показать
+ comment: Комментировать
changesetxml: XML пакета правок
osmchangexml: osmChange XML
paging_nav:
title: Дневник пользователя %{user} | %{title}
user_title: Дневник пользователя %{user}
discussion: Обсуждение
+ subscribe: Подписаться
+ unsubscribe: Отписаться
leave_a_comment: Оставить комментарий
login_to_leave_a_comment_html: '%{login_link}, чтобы оставить комментарий'
login: Войти
all:
title: Записи в дневнике OpenStreetMap
description: Последние записи в дневнике от пользователей OpenStreetMap
- comments:
+ subscribe:
+ heading: Подписаться на обсуждение следующей записи в дневнике?
+ button: Подписаться на обсуждение
+ unsubscribe:
+ heading: Отписаться от обсуждения следующей записи в дневнике?
+ button: Отписаться от обсуждения
+ diary_comments:
+ index:
title: Комментарии к записям в дневнике, добавленные пользователем %{user}
heading: Комментарии к записям в дневнике пользователя %{user}
subheading_html: Комментарии к записям в дневнике, добавленные пользователем
comment: Комментарий
newer_comments: Более новые комментарии
older_comments: Более старые комментарии
- subscribe:
- heading: Подписаться на обсуждение следующей записи в дневнике?
- button: Подписаться на обсуждение
- unsubscribe:
- heading: Отписаться от обсуждения следующей записи в дневнике?
- button: Отписаться от обсуждения
doorkeeper:
errors:
messages:
заметок недалеко от %{place}.'
commented_note_html: '%{commenter} открыл заново одну из вами прокомментированных
заметок недалеко от %{place}.'
- details: Ð\9fодÑ\80обнее о заметке %{url}.
- details_html: 'Ð\9fодÑ\80обнее о заметке: %{url}.'
+ details: Ð\9eÑ\82веÑ\82иÑ\82Ñ\8c или Ñ\83знаÑ\82Ñ\8c болÑ\8cÑ\88е о заметке %{url}.
+ details_html: 'Ð\9eÑ\82веÑ\82иÑ\82Ñ\8c или Ñ\83знаÑ\82Ñ\8c болÑ\8cÑ\88е о заметке: %{url}.'
changeset_comment_notification:
hi: Здравствуйте, %{to_user},
greeting: Здравствуйте,
partial_changeset_with_comment: с комментарием '%{changeset_comment}'
partial_changeset_with_comment_html: с комментарием '%{changeset_comment}'
partial_changeset_without_comment: без комментария
- details: Дополнительные сведения о пакете правок можно найти на %{url}.
- details_html: Ð\94ополниÑ\82елÑ\8cнÑ\8bе Ñ\81ведениÑ\8f о пакеÑ\82е пÑ\80авок можно найÑ\82и на %{url}.
+ details: 'Ответить или узнать больше о пакете правок: %{url}.'
+ details_html: Ð\9eÑ\82веÑ\82иÑ\82Ñ\8c или Ñ\83знаÑ\82Ñ\8c болÑ\8cÑ\88е о пакеÑ\82е пÑ\80авок можно на %{url}.
unsubscribe: Чтобы отказаться от новых сообщений для этого пакета правок, перейдите
по ссылке %{url} и нажмите кнопку "Отписаться".
unsubscribe_html: Чтобы отказаться от подписки на обновления этого набора изменений,
index:
js_1: Вы используете браузер, в котором не поддерживается или отключён JavaScript.
js_2: OpenStreetMap использует JavaScript для отображения карт.
- permalink: Постоянная ссылка
- shortlink: Короткая ссылка
- createnote: Добавить заметку
license:
copyright: Авторские права принадлежат OpenStreetMap и его участникам на условиях
открытой лицензии
queryfeature_tooltip: Что здесь?
queryfeature_disabled_tooltip: Приблизьте карту для информации об объектах
embed_html_disabled: Встраивание HTML недоступно для этого слоя карты
- changesets:
- show:
- comment: Комментировать
- subscribe: Подписаться
- unsubscribe: Отписаться
- hide_comment: скрыть
- unhide_comment: показать
edit_help: Передвиньте карту и увеличьте место, которые вы хотите править, затем
кликните здесь.
directions:
belongs_to: ᱚᱱᱚᱞᱤᱭᱟᱹ
show:
discussion: ᱜᱟᱞᱢᱟᱨᱟᱣ
+ hide_comment: ᱫᱟᱱᱟᱝ
+ comment: ᱚᱠᱛᱟ
paging_nav:
nodes: (%{count}) ᱜᱟᱸᱴᱷᱠᱚ
ways: (%{count}) ᱦᱚᱨᱠᱚ
location: 'ᱡᱟᱭᱜᱟ:'
view: ᱧᱮᱞ ᱢᱮ
edit: ᱥᱟᱯᱲᱟᱣ
- comments:
+ diary_comments:
+ index:
when: ᱛᱤᱥ
comment: ᱚᱠᱛᱟ
newer_comments: ᱱᱟᱶᱟᱱᱟ ᱚᱠᱛᱟᱠᱚ
copyright:
native:
mapping_link: ᱱᱚᱠᱥᱟ ᱛᱮᱭᱟᱨ ᱮᱦᱚᱵ ᱢᱮ
- index:
- createnote: ᱠᱷᱟᱴᱚ ᱚᱞ ᱥᱮᱞᱮᱫ ᱢᱮ
edit:
user_page_link: ᱵᱮᱵᱦᱟᱨᱤᱭᱟᱜ ᱥᱟᱦᱴᱟ
export:
edit_tooltip: ᱱᱟᱠᱥᱟ ᱥᱟᱯᱲᱟᱣ ᱢᱮ
edit_disabled_tooltip: ᱱᱚᱠᱥᱟ ᱥᱟᱯᱲᱟᱣ ᱞᱟᱹᱜᱤᱫᱛᱮ ᱵᱷᱤᱛᱨᱤ ᱥᱮᱫ ᱡᱩᱢ ᱢᱮ
createnote_tooltip: ᱱᱚᱠᱥᱟ ᱨᱮ ᱠᱷᱟᱴᱟᱹ ᱚᱞ ᱥᱮᱞᱮᱫ ᱢᱮ
- changesets:
- show:
- comment: ᱚᱠᱛᱟ
- hide_comment: ᱫᱟᱱᱟᱝ
directions:
engines:
fossgis_osrm_bike: ᱵᱟᱭᱥᱟᱭᱠᱤᱞ (OSRM)
join_discussion: Intra pro t'aunire a s'arresonu
still_open: Annantu de modìficas galu abertu - s'arresonu s'at a abèrrere cando
s'annantu de modìficas s'at a serrare.
+ subscribe: Sutaiscrie·ti
+ unsubscribe: Annulla s'iscritzione
comment_by_html: Cummentu de %{user} %{time_ago}
hidden_comment_by_html: Cummentu cuadu de %{user} %{time_ago}
+ hide_comment: cua
+ unhide_comment: ammustra
+ comment: Cummentu
changesetxml: XML de s'annantu de modìficas
osmchangexml: XML in formadu osmChange
paging_nav:
all:
title: Intradas de diàriu de OpenStreetMap
description: Intradas de diàriu reghentes de sos utentes de OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Cummentos de su diàriu annantos dae %{user}
heading: Cummentos de su diàriu de %{user}
subheading_html: Cummentos de su diàriu annantos dae %{user}
js_1: Ses impreende unu navigadore chi non tenet su suportu pro JavaScript o
as inabilitadu JavaScript.
js_2: OpenStreetMap impreat JavaScript pro sa mapa dinàmica sua.
- permalink: Ligàmene permanente
- shortlink: Ligàmene curtzu
- createnote: Annanghe una nota
license:
copyright: Deretu de autore de OpenStreetMap e de sos collaboradores suos
suta de una litzèntzia aberta
map_data_zoom_in_tooltip: Ismànnia pro bìdere sos datos de sa mapa
queryfeature_tooltip: Chirca de elementos
queryfeature_disabled_tooltip: Ismànnia pro chircare elementos
- changesets:
- show:
- comment: Cummentu
- subscribe: Sutaiscrie·ti
- unsubscribe: Annulla s'iscritzione
- hide_comment: cua
- unhide_comment: ammustra
edit_help: Move sa mapa, ismànnia in una positzione chi boles modificare e a pustis
incarca inoghe
directions:
title: 'Gruppu di canciamenti: %{id}'
discussion: Discussioni
join_discussion: Pi participari ntâ discussioni trasi
+ subscribe: Abbònati
+ unsubscribe: Annulla l’abbunamentu
+ hide_comment: ammuccia
+ unhide_comment: Ammustra
+ comment: Cummenta
changesetxml: XML dû gruppu di canciamenti
osmchangexml: XML osmChange
paging_nav:
all:
title: Vuci dû diariu d'OpenStreetMap
description: Vuci ricenti dû diariu di l'utenti d'OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Missaggiu
when: Quannu
comment: Cummentu
js_1: O stai adupirannu nu browser chi nun supporta lu JavaScript, o puru hai
lu JavaScript disattivatu.
js_2: OpenStreetMap adòpira lu JavaScript pâ sò cartina scurritura.
- permalink: Culligamentu pirmanenti
- shortlink: Culligamentu accurzatu
- createnote: Agghiunci na nota
license:
copyright: Copyright OpenStreetMap e li sò cuntribbutura, sutta a na licenza
graputa
map_data_zoom_in_tooltip: Zumma pi putiri a vìdiri li dati dâ cartina
queryfeature_tooltip: Arricerca elimenti
queryfeature_disabled_tooltip: Zumma pi putiri circari l'elimenti
- changesets:
- show:
- comment: Cummenta
- subscribe: Abbònati
- unsubscribe: Annulla l’abbunamentu
- hide_comment: ammuccia
- unhide_comment: Ammustra
edit_help: Sposta la cartina e zumma ntôn postu chi voi canciari, e appoi clicca
ccà.
directions:
all:
title: OpenStreetMap diary entries
description: Recent diary entries frae uisers o OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Post
when: When
comment: Comment
js_1: Ili koristite internet preglednik koji ne podržava JavaScript, ili ste
onemogućili taj program.
js_2: OpenStreetMap koristi JavaScript za slippy kartu.
- permalink: Trajni link
- shortlink: Kratki link
- createnote: Dodaj bilješku
license:
copyright: Autorska prava pripadaju OpenStreetMap-u i doprinositeljima, pod
otvorenom licencom
invalid_email_address: nevyzerá ako platná e-mailová adresa
email_address_not_routable: nie je routovateľná
display_name_is_user_n: nemôže byť user_n, pokiaľ n nie je vaše ID používateľa
+ models:
+ user_mute:
+ is_already_muted: je už stlmený/á.
models:
acl: Zoznam prístupových práv
changeset: Sada zmien
reopened_at_by_html: Opätovne aktivované %{when} používateľom %{user}
rss:
title: Poznámky OpenStreetMap
+ description_all: Zoznam nahlásených, komentovaných alebo uzavretých poznámok
description_area: Zoznam poznámok nahlásených, komentovaných alebo uzavretých
vo vašej oblasti [(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})]
description_item: RSS kanál k poznámke %{id}
retain_notes: Vaše mapové poznámky a komentáre budú zachované, ale skryté.
retain_changeset_discussions: Vaše prípadné diskusie k sadám zmien budú zachované.
retain_email: Vaša emailová adresa bude uchovaná.
+ recent_editing_html: Keďže ste nedávno upravovali, váš účet momentálne nie
+ je možné odstrániť. Odstránenie bude možné o %{time}.
confirm_delete: Ste si istý/á?
cancel: Zrušiť
accounts:
delete_account: Odstrániť účet...
go_public:
heading: Verejné úpravy
+ currently_not_public: V súčasnosti sú vaše úpravy anonymné a ľudia vám nemôžu
+ posielať správy ani vidieť vašu polohu. Ak chcete zobraziť, čo ste upravili
+ a umožniť ľuďom kontaktovať vás prostredníctvom webovej lokality, kliknite
+ na tlačidlo nižšie.
+ only_public_can_edit: Od prechodu na API 0.6 môžu mapové údaje upravovať iba
+ verejní používatelia.
find_out_why: zistite prečo
+ email_not_revealed: Vaša e-mailová adresa nebude zverejnená.
+ not_reversible: Túto akciu nie je možné vrátiť späť a všetci noví používatelia
+ sú teraz v predvolenom nastavení verejní.
make_edits_public_button: Zverejniť všetky moje úpravy
update:
success_confirm_needed: Používateľské údaje boli úspešne aktualizované. Skontrolujte
deleted_ago_by_html: Odstránené %{time_ago} používateľom %{user}
edited_ago_by_html: Upravené %{time_ago} používateľom %{user}
version: Verzia
+ redacted_version: Upravená verzia
in_changeset: Sada zmien
anonymous: anonym
no_comment: (bez komentára)
other: '%{count} ciest'
download_xml: Stiahnuť XML
view_history: Zobraziť históriu
+ view_unredacted_history: Zobraziť neredigovanú históriu
view_details: Zobraziť detaily
+ view_redacted_data: Zobraziť upravené údaje
+ view_redaction_message: Zobraziť správu o úprave
location: 'Poloha:'
node:
title_html: 'Uzol: %{name}'
join_discussion: Zapojte sa do diskusie
still_open: Sada zmien stále otvorená - diskusia bude otvorená, keď bude sada
zmien uzatvorená.
+ subscribe: Odoberať
+ unsubscribe: Zrušiť odoberanie
comment_by_html: Komentár od používateľa %{user} %{time_ago}
hidden_comment_by_html: Skrytý komentár od používateľa %{user} %{time_ago}
+ hide_comment: skryť
+ unhide_comment: zobraziť
+ comment: Okomentovať
changesetxml: XML sady zmien
osmchangexml: osmChange XML
paging_nav:
all:
title: Záznamy denníka OpenStreetMap
description: Nedávne položky denníkov používateľov OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Komentáre k denníkom pridané používateľom %{user}
heading: Komentáre v denníku používateľa %{user}
subheading_html: Komentáre v denníku pridané používateľom %{user}
see_their_profile_html: Jeho/jej profil si môžete pozrieť na %{userurl}.
befriend_them: Môžete ich tiež pridať ako priateľov na %{befriendurl}.
befriend_them_html: Môžete ho/ju tiež pridať ako priateľov na %{befriendurl}.
+ gpx_description:
+ description_with_tags_html: 'Vyzerá, že váš GPX súbor %{trace_name} s popisom
+ %{trace_description} a nasledujúcimi značkami: %{tags}'
+ description_with_no_tags_html: Vyzerá, že váš súbor GPX %{trace_name} s popisom
+ %{trace_description} a bez značiek
gpx_failure:
hi: Ahoj %{to_user},
failed_to_import: 'sa nepodarilo naimportovať. Chybové hlásenie:'
+ more_info_html: Viac informácií o zlyhaniach importu GPX a o tom, ako sa im
+ vyhnúť, nájdete na %{url}.
subject: '[OpenStreetMap] Neúspešný import GPX'
gpx_success:
hi: Ahoj %{to_user},
+ loaded:
+ one: sa úspešne načítal s %{trace_points} z možného %{count} bodu.
+ few: sa úspešne načítal s %{trace_points} z možných %{count} bodov.
+ many: sa úspešne načítal s %{trace_points} z možných %{count} bodov.
+ other: sa úspešne načítal s %{trace_points} z možných %{count} bodov.
+ all_your_traces_html: Všetky vami úspešne nahrané GPX stopy nájdete na %{url}.
subject: '[OpenStreetMap] GPX import úspešný'
signup_confirm:
subject: '[OpenStreetMap] Vitajte v OpenStreetMap'
subject_own: '[OpenStreetMap] %{commenter} pridal komentár k vašej poznámke'
subject_other: '[OpenStreetMap] %{commenter} pridal komentár k poznámke, o
ktorú sa zaujímate'
- your_note: '%{commenter} zanechal komentár k vašej poznámke na mape blízko
+ your_note: '%{commenter} zanechal(a) komentár k vašej poznámke na mape blízko
%{place}.'
- your_note_html: '%{commenter} zanechal komentár k vašej poznámke na mape blízko
- %{place}.'
- commented_note: '%{commenter} zanechal komentár k poznámke, ktorú ste komentovali.
+ your_note_html: '%{commenter} zanechal(a) komentár k vašej poznámke na mape
+ blízko %{place}.'
+ commented_note: '%{commenter} zanechal(a) komentár k poznámke, ktorú ste komentovali.
Poznámka je blízko %{place}.'
- commented_note_html: '%{commenter} zanechal komentár k poznámke, ktorú ste
- komentovali. Poznámka je blízko %{place}.'
+ commented_note_html: '%{commenter} zanechal(a) komentár k poznámke, ktorú
+ ste komentovali. Poznámka je blízko %{place}.'
closed:
subject_own: '[OpenStreetMap] %{commenter} vyriešil vašu poznámku'
subject_other: '[OpenStreetMap] %{commenter} vyriešil poznámku, o ktorú sa
subject_own: '[OpenStreetMap] %{commenter} pridal komentár k vašej sade zmien'
subject_other: '[OpenStreetMap] %{commenter} pridal komentár k sade zmien,
o ktorú sa zaujímate'
- your_changeset: '%{commenter} zanechal komentár o %{time} k vašej sade zmien'
- your_changeset_html: '%{commenter} zanechal komentár o %{time} k vašej sade
- zmien,'
- commented_changeset: '%{commenter} zanechal komentár o %{time} k vami sledovanej
+ your_changeset: '%{commenter} zanechal(a) komentár o %{time} k vašej sade
+ zmien'
+ your_changeset_html: '%{commenter} zanechal(a) komentár o %{time} k vašej
+ sade zmien,'
+ commented_changeset: '%{commenter} zanechal(a) komentár o %{time} k vami sledovanej
sade zmien, ktorú vytvoril %{changeset_author}'
- commented_changeset_html: '%{commenter} zanechal komentár o %{time} k vami
+ commented_changeset_html: '%{commenter} zanechal(a) komentár o %{time} k vami
sledovanej sade zmien, ktorú vytvoril %{changeset_author}'
partial_changeset_with_comment: s popisom '%{changeset_comment}'
partial_changeset_with_comment_html: s popisom '%{changeset_comment}'
no_sent_messages_html: Nemáte odoslané správy. Prečo ste sa nespojili s niekým
z %{people_mapping_nearby_link}?
people_mapping_nearby: blízko mapujúci ľudia
+ muted:
+ title: Stlmené správy
reply:
wrong_user: Ste prihlásený ako „%{user}“, ale správa, na ktorú chcete odpovedať,
nebola odoslaná tomuto používateľovi. Ak na ňu chcete odpovedať, prihláste
heading:
my_inbox: Doručená pošta
my_outbox: Odoslané
+ muted_messages: Stlmené správy
mark:
as_read: Správa označená ako prečítaná
as_unread: Správa označená ako neprečítaná
index:
js_1: Používate prehliadač bez podpory JavaScriptu, alebo máte JavaScript vypnutý.
js_2: OpenStreetMap používa pre interaktívnu mapu JavaScript.
- permalink: Trvalý odkaz
- shortlink: Krátky odkaz
- createnote: Pridať poznámku
license:
copyright: Chránené autorskými právami OpenStreetMap a prispievateľov pod
slobodnou licenciou
oauth1_settings: Nastavenia OAuth 1
oauth2_applications: Aplikácie OAuth 2
oauth2_authorizations: Autorizácie OAuth 2
+ muted_users: Stlmení používatelia
auth_providers:
openid_logo_alt: Prihlásenie pomocou OpenID
openid:
alt: Prihlásenie sa pomocou AOL OpenID
oauth:
authorize:
+ title: Povoľte prístup k vášmu účtu
request_access_html: Aplikácia %{app_name} požaduje prístup k vášmu kontu (%{user}).
Vyberte si, či si želáte, aby mala aplikácia nasledujúce oprávnenie. Môžete
zvoliť ľubovoľný počet oprávnení.
allow_write_notes: meniť poznámky.
grant_access: Udeliť prístup
authorize_success:
+ title: Požiadavka na autorizáciu povolená
allowed_html: Udelili ste aplikácii %{app_name} prístup k vášmu účtu.
verification: Váš overovací kód je %{code}.
authorize_failure:
+ title: Požiadavka na autorizáciu zlyhala
denied: Odopreli ste aplikácii %{app_name} prístup k vášmu účtu.
+ invalid: Autorizačný token je neplatný.
revoke:
flash: Prístup pre aplikáciu %{application} bol odvolaný.
permissions:
oauth2_authorizations:
new:
introduction: Povoliť %{application} prístup k vášmu účtu s nasledovnými oprávneniami?
+ authorize: Autorizovať
show:
title: Autorizačný kód
oauth2_authorized_applications:
title: Moje autorizované aplikácie
application: Aplikácia
permissions: Oprávnenia
+ last_authorized: Posledná autorizácia
no_applications_html: Zatiaľ ste nepovolili žiadne %{oauth2} aplikácie.
application:
revoke: Odobrať prístup
remove as friend: Odstrániť z priateľov
add as friend: Pridať priateľa
mapper since: 'Mapuje od:'
+ last map edit: 'Posledná úprava mapy:'
ct status: 'Podmienky prispievania:'
ct undecided: Nerozhodnuté
ct declined: Odmietnuté
reason: Dôvod pre blokovanie
status: Stav
revoker_name: Zrušil
+ user_mutes:
+ index:
+ title: Stlmení používatelia
+ my_muted_users: Mnou stlmení používatelia
+ table:
+ thead:
+ muted_user: Stlmený používateľ
+ create:
+ notice: Stlmili ste používateľa %{name}.
+ error: Používateľa %{name} nebolo možné stlmiť. %{full_message}.
notes:
index:
title: Poznámky vytvorené alebo komentované používateľom %{user}
map_data_zoom_in_tooltip: Priblížením zobrazíte údaje mapy
queryfeature_tooltip: Prieskum prvkov
queryfeature_disabled_tooltip: Pre prieskum prvkov priblížte
- changesets:
- show:
- comment: Okomentovať
- subscribe: Odoberať
- unsubscribe: Zrušiť odoberanie
- hide_comment: skryť
- unhide_comment: zobraziť
edit_help: Posuňte mapu a priblížte ju na miesto, ktoré chcete upraviť, potom
kliknite sem.
directions:
created_ago_html: '%{time_ago} خلقیا'
closed_ago_html: '%{time_ago} بند تھیا'
discussion: بحث مباحثہ
+ subscribe: سبسکرائب کرو
+ unsubscribe: اݨ سبسکرائب کرو
+ hide_comment: لُکاؤ
+ unhide_comment: ݙکھاؤ
+ comment: تبصرہ
paging_nav:
nodes: نوݙاں(%{count})
ways: رستے(%{count})
newer_entries: نویاں انٹریاں
show:
user_title: '%{user} دی ڈائری'
+ subscribe: سبسکرائب کرو
leave_a_comment: رائے ݙیوو
login: لاگ ان تھیوو
diary_entry:
location: 'محل وقوع:'
view: ݙکھالے
edit: لکھو
- comments:
+ diary_comments:
+ index:
post: پوسٹ
when: کڈݨ
comment: رائے
contributors_za_south_africa: جنوبی افریقہ
trademarks_title: ٹریڈ مارک
trademarks_1_1_trademark_policy: ٹریڈمارک پالیسی
- index:
- permalink: پکا لنک
- shortlink: مختصر لنک
- createnote: نوٹ شامل کرو
export:
title: ٻاہر بھیڄو
licence: لائیسنس
embed: ایچ ٹی ایم ایل
format: فارمیٹ
scale: 'پیمانہ:'
- changesets:
- show:
- comment: تبصرہ
- subscribe: سبسکرائب کرو
- unsubscribe: اݨ سبسکرائب کرو
- hide_comment: لُکاؤ
- unhide_comment: ݙکھاؤ
directions:
engines:
fossgis_valhalla_bicycle: سائیکل (ول ہلا)
# Author: Mtej
# Author: Peter Klofutar
# Author: Pickle12
+# Author: Pipi Ferry
# Author: Ruila
# Author: Skalcaa
# Author: Stefanb
in povezavo, ki ste jo kliknili.
show:
title: 'Nabor sprememb: %{id}'
+ created: 'Ustvarjeno: %{when}'
+ closed: 'Zaprto: %{when}'
created_ago_html: Ustvaril_a %{time_ago}
closed_ago_html: Zaprto %{time_ago}
created_ago_by_html: Ustvaril %{user} %{time_ago}
join_discussion: Prijavite se za pridružitev pogovoru
still_open: Nabor sprememb je še vedno odprt – pogovor se bo začel, ko bo nabor
sprememb zaprt.
+ subscribe: Naroči me
+ unsubscribe: Odnaroči
comment_by_html: Komentar %{user} %{time_ago}
hidden_comment_by_html: Skrit komentar %{user} %{time_ago}
+ hide_comment: skrij
+ unhide_comment: razkrij
+ comment: Komentiraj
changesetxml: Nabor sprememb XML
osmchangexml: osmChange XML
paging_nav:
show:
title: Dnevnik uporabnika %{user} | %{title}
user_title: Dnevnik uporabnika %{user}
+ discussion: Pogovor
leave_a_comment: Napiši komentar
login_to_leave_a_comment_html: '%{login_link} za vpis komentarja'
login: Prijava
all:
title: Dnevniški zapisi OpenStreetMap
description: Nedavni dnevniški zapisi uporabnikov OpenStreetmap
- comments:
+ diary_comments:
+ index:
title: Dnevniški komentarji, ki jih je dodal_a %{user}
heading: Dnevniški komentarji %{user}
subheading_html: Dnevniški komentarji, ki jih je dodal_a %{user}
fountain: Vodomet
fuel: Polnilna postaja
gambling: Igre na srečo
- grave_yard: Pokopališče
+ grave_yard: Pokopališče v bližini cerkve
grit_bin: Posoda za pesek
hospital: Bolnišnica
hunting_stand: Lovska preža
post_office: Pošta
prison: Zapor
pub: Pivnica
- public_bath: Kopališče
+ public_bath: Javno kopališče
public_bookcase: Javna knjižna omara
- public_building: Javne stavba
+ public_building: Javna stavba
ranger_station: Gozdarska postaja
recycling: Reciklirna točka
restaurant: Restavracija
"yes": Meja
bridge:
aqueduct: Akvadukt
- boardwalk: Sprehajališče
+ boardwalk: Sprehajališče iz desk
suspension: Viseči most
swing: Vrteči most
viaduct: Viadukt
barn: Skedenj
bungalow: Bungalov
cabin: Brunarica
- chapel: Kapelica
+ chapel: Kapela
church: Cerkveno poslopje
civic: Občinska stavba
college: VIsokošolska stavba
detached: Osamljena hiša
dormitory: Študentski dom
duplex: Dvostanovanjska hiša
- farm: Kmetija
+ farm: Hiša kmetije
farm_auxiliary: Pomožna kmetijska stavba
garage: Garaža
garages: Garaže
hospital: Poslopje bolnišnice
hotel: Poslopje hotela
house: Hiša
- houseboat: Bivalni čoln
+ houseboat: Bivalni čoln - Hiša-čoln
hut: Koča
industrial: Industrijski objekt
kindergarten: Poslopje vrtca
semidetached_house: Dvojček
service: Servisna stavba
shed: Lopa
- stable: Hlev
+ stable: Hlev za konje
static_caravan: Stanovanjska prikolica
temple: Tempelj
- terrace: Terasa
+ terrace: Vrstne hiše
train_station: Poslopje železniške postaje
university: Univerza
warehouse: Skladišče
stop: Stop znak
street_lamp: Ulična svetilka
tertiary: Lokalna cesta
- tertiary_link: Terciarna cesta
+ tertiary_link: Priključek na lokalno cesto
track: Kolovoz
traffic_mirror: Prometno ogledalo
traffic_signals: Prometna signalizacija
trunk_link: Priključek na hitro cesto
turning_circle: Obračališče
turning_loop: Obračališče
- unclassified: Neopredeljena cesta
+ unclassified: Neopredeljena cesta - Neklasificirana cesta
"yes": Cesta
historic:
aircraft: Zgodovinsko letalo
tomb: Grobnica
tower: Stolp
wayside_chapel: Obcestna kapelica
- wayside_cross: Križ
+ wayside_cross: Obpotni križ
wayside_shrine: Kapelica
wreck: Razbitina
"yes": Zgodovinski kraj
allotments: Vrtički
aquaculture: Akvakultura
basin: Čistilni bazen
- brownfield: Gradbišče
- cemetery: Pokopališče
+ brownfield: Opuščeno območje, kjer so bile stavbe
+ cemetery: Pokopališče, ki ni ob cerkvi
commercial: Poslovna cona
conservation: Zaščiteno območje
construction: Gradbišče
farmland: Kmetijsko zemljišče
- farmyard: Kmetija
+ farmyard: Dvorišče kmetije
forest: Gozd
garages: Garaže
grass: Trata
crane: Žerjav
cross: Križ
dolphin: Privez
- dyke: Nasip
+ dyke: Protipoplavni nasip
embankment: Nasip
flagpole: Zastavni drog
- gasometer: Plinometer
+ gasometer: Rezervoar za plin
groyne: Valobran
kiln: Peč
lighthouse: Svetilnik
manhole: Vhodna odprtina
- mast: Steber
+ mast: Jambor
mine: Rudnik
mineshaft: Rudniški jašek
monitoring_station: Opazovalna postaja
surveillance: Nadzor
telescope: Teleskop
tower: Stolp
- utility_pole: Drog
+ utility_pole: Drog za infrastrukturo
wastewater_plant: Čistilna naprava
watermill: Vodno kolo
water_tap: Vodna pipa
funicular: Žična vzpenjača
halt: Železniško postajališče
junction: Križišče železnic
- level_crossing: Prehod
+ level_crossing: Nivojski prehod
light_rail: Mestna železnica
miniature: Miniaturna železnica
monorail: Monorail
erotic: Erotična trgovina
estate_agent: Nepremičninska agencija
fabric: Prodajalna blaga
- farm: Kmečka trgovina
+ farm: Kmetijska trgovina
fashion: Modna trgovina
fishing: Prodajalna ribiške opreme
florist: Cvetličarna
wine: Vinoteka
"yes": Trgovina
tourism:
- alpine_hut: Koča
+ alpine_hut: Alpska koča
apartment: Počitniški apartma
artwork: Umetnina
attraction: Zanimivost
cabin: Turistično prenočišče
camp_pitch: Prostor za kampiranje
camp_site: Kamp
- caravan_site: Kamp
+ caravan_site: Kamp - Prostor za avtodome/bivalne prikolice
chalet: Počitniška hišica
gallery: Galerija
guest_house: Penzion
stream: Potok
wadi: Vadi
waterfall: Slap
- weir: Zapornica
+ weir: Nizek jez
"yes": Vodotok
admin_levels:
level2: Državna meja
%{france}: Vsebuje podatke iz
Direction Générale des Impôts.
contributors_fr_france: Francija
+ contributors_hr_credit_html: |-
+ %{croatia}: Vsebuje podatke iz %{dgu_link} in %{open_data_portal}
+ (javne informacije Hrvaške).
+ contributors_hr_croatia: Hrvaška
contributors_nl_credit_html: '%{netherlands}: Vsebuje podatke © IN, 2007 (%{and_link})'
contributors_nl_netherlands: Nizozemska
contributors_nz_credit_html: |-
js_1: Bodisi uporabljate brskalnik, ki ne podpira Javascripta, ali pa je izvajanje
Javascripta onemogočeno.
js_2: OpenStreetMap za prikaz zemljevida uporablja Javascript.
- permalink: Trajna povezava
- shortlink: Kratka povezava
- createnote: Dodajte opombo
license:
copyright: Avtorske pravice OpenStreetMap in sodelavci, pod odprto licenco
remote_failed: Urejanje ni uspelo - poskrbite da je JOSM ali Merkaartor naložen
intro: Ste opazili napako ali pomanjkljivost? Obvestite druge kartografe o tem,
da lahko to popravimo. Premaknite označevalec na pravo mesto in vpišite opombo,
v kateri pojasnite težavo.
+ anonymous_warning_log_in: Prijavite se
+ anonymous_warning_sign_up: Registrirajte se
advice: Vaša opomba je javna in se lahko uporabi za posodobitev zemljevida.
Ne vnašajte osebnih podatkov ali podatkov iz avtorsko varovanih zemljevidov
ali imenikov.
queryfeature_tooltip: Preveri značilnosti
queryfeature_disabled_tooltip: Približajte za preverjanje značilnosti
embed_html_disabled: Za ta sloj zemljevida vdelava HTML ni na voljo
- changesets:
- show:
- comment: Komentiraj
- subscribe: Naroči me
- unsubscribe: Odnaroči
- hide_comment: skrij
- unhide_comment: razkrij
edit_help: Premaknite zemljevid in približajte lokacijo, ki jo želite urediti,
nato pa kliknite tukaj.
directions:
all:
title: Shënimet e ditarit të OpenStreetMap
description: Shënimet e fundit në ditar nga përdoruesit e OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: Posto
when: Kur
comment: Koment
all:
title: Unosi u dnevniku Openstritmapa
description: Skorašnji unosi u dnevniku od korisnika Openstritmapa
- comments:
+ diary_comments:
+ index:
post: Postavi
when: Kada
comment: Komentar
index:
js_1: Koristite pregledač koji ne podržava javaskript ili ste ga onemogućili.
js_2: Openstritmap koristi javaskript za prikazivanje mapa.
- permalink: Trajna veza
- shortlink: Kratka veza
remote_failed: Uređivanje nije uspelo. Proverite da li je JOSM ili Merkaartor
učitan i da je mogućnost daljinskog upravljanja omogućena
edit:
closed_ago_by_html: Затворио(ла) %{user} %{time_ago}
discussion: Дискусија
join_discussion: Пријавите се да бисте се придружили дискусији
+ subscribe: Пријави ме
+ unsubscribe: Одјави ме
comment_by_html: '%{user} коментарисао(ла) пре %{time_ago}'
hidden_comment_by_html: Сакривени коментар корисника %{user} %{time_ago}
+ hide_comment: сакриј
+ unhide_comment: прикажи
+ comment: Коментариши
changesetxml: XML скуп промена
osmchangexml: osmChange XML
paging_nav:
all:
title: Уноси у дневнику OpenStreetMap-а
description: Недавни уноси у дневнику корисника OpenStreetMap-а
- comments:
+ subscribe:
+ button: Прати дискусију
+ unsubscribe:
+ button: Прекини праћење дискусије
+ diary_comments:
+ index:
post: Објава
when: Када
comment: Коментар
newer_comments: Новији коментари
older_comments: Старији коментари
- subscribe:
- button: Прати дискусију
- unsubscribe:
- button: Прекини праћење дискусије
doorkeeper:
scopes:
address: Види своју физичку адресу
места %{place}.'
commented_note: '%{commenter} је реактивирао белешку мапе коју сте коментарисали.
Белешка је у близини места %{place}.'
- details: Ð\92иÑ\88е инÑ\84оÑ\80маÑ\86иÑ\98а о белеÑ\88Ñ\86и може да Ñ\81е пÑ\80онаÑ\92е на %{url}.
+ details: Ð\9eдговоÑ\80иÑ\82е или Ñ\81азнаÑ\98Ñ\82е виÑ\88е о белеÑ\88Ñ\86и на %{url}.
changeset_comment_notification:
hi: Поздрав, %{to_user},
greeting: Поздрав,
мапе који надгледате и који је направио %{changeset_author}'
partial_changeset_with_comment: са коментаром „%{changeset_comment}”
partial_changeset_without_comment: без коментара
- details: Ð\92иÑ\88е инÑ\84оÑ\80маÑ\86иÑ\98а о Ñ\87еÑ\98нÑ\9fÑ\81еÑ\82овима може да Ñ\81е пÑ\80онаÑ\92е на %{url}.
+ details: Ð\9eдговоÑ\80иÑ\82е или Ñ\81азнаÑ\98Ñ\82е виÑ\88е о Ñ\81еÑ\82овима пÑ\80омена на %{url}.
unsubscribe: Можете одјавити обавештења овог скупа измена на %{url}.
confirmations:
confirm:
index:
js_1: Користите прегледач који не подржава јаваскрипт или сте га онемогућили.
js_2: OpenStreetMap користи јаваскрипт за приказивање мапа.
- permalink: Трајна веза
- shortlink: Кратка веза
- createnote: Додај белешку
license:
copyright: Ауторска права Опенстритмап и доприносиоци, под отвореном лиценцом
remote_failed: Уређивање није успело. Проверите да ли је JOSM или Merkaartor
map_data_zoom_in_tooltip: Увећај да видиш податке са карте
queryfeature_tooltip: Информације о објектима
queryfeature_disabled_tooltip: Зумирај на информације о објектима
- changesets:
- show:
- comment: Коментариши
- subscribe: Пријави ме
- unsubscribe: Одјави ме
- hide_comment: сакриј
- unhide_comment: прикажи
edit_help: Помери карту и увећај на место које хоћеш да уредиш, затим кликни овде.
directions:
ascend: Растуће
deleted_ago_by_html: Raderades %{time_ago} av %{user}
edited_ago_by_html: Redigerades %{time_ago} av %{user}
version: Version
+ redacted_version: Redigerad version
in_changeset: Ändringsuppsättning
anonymous: anonym
no_comment: (inga kommentarer)
other: '%{count} sträckor'
download_xml: Ladda ner XML
view_history: Visa historik
+ view_unredacted_history: Visa oredigerad historik
view_details: Visa detaljer
+ view_redacted_data: Visa redigerad data
+ view_redaction_message: Visa redigeringsmeddelande
location: 'Plats:'
node:
title_html: 'Nod: %{name}'
created: Skapad
closed: Stängd
belongs_to: Författare
+ subscribe:
+ heading: Prenumerera på följande diskussion om ändringsuppsättning?
+ button: Prenumerera på diskussion
+ unsubscribe:
+ heading: Avsluta prenumeration på följande diskussion om ändringsuppsättning?
+ button: Sluta prenumerera på diskussion
+ heading:
+ title: Ändringsuppsättning %{id}
+ created_by_html: Skapades av %{link_user} %{created}.
+ no_such_entry:
+ title: Ingen sådan ändringsuppsättning
+ heading: 'Inget inlägg med ID: %{id}'
+ body: Det finns tyvärr ingen ändringsuppsättning med ID:t %{id}. Kontrollera
+ stavningen eller så kanske du tryckt på fel länk.
show:
title: 'Ändringsuppsättning: %{id}'
+ created: 'Skapades: %{when}'
+ closed: 'Stängdes: %{when}'
created_ago_html: Skapades %{time_ago}
closed_ago_html: Stängdes %{time_ago}
created_ago_by_html: Skapades %{time_ago} av %{user}
join_discussion: Logga in för att delta i diskussionen
still_open: Ändringsuppsättningen är fortfarande öppen - diskussionen kommer
att öppnas när ändringsuppsättning har stängts.
+ subscribe: Prenumerera
+ unsubscribe: Avsluta prenumeration
comment_by_html: Kommenterades från %{user} %{time_ago}
hidden_comment_by_html: Dold kommentar från %{user} %{time_ago}
+ hide_comment: dölj
+ unhide_comment: Sluta dölja
+ comment: Kommentera
changesetxml: XML för ändringsuppsättning
osmchangexml: osmChange XML
paging_nav:
show:
title: '%{user}s dagbok | %{title}'
user_title: '%{user}s dagbok'
+ discussion: Diskussion
leave_a_comment: Lämna en kommentar
login_to_leave_a_comment_html: '%{login_link} för att lämna en kommentar'
login: Logga in
all:
title: OpenStreetMap-dagboksinlägg
description: Senaste dagboksinlägg från användare av OpenStreetMap
- comments:
+ subscribe:
+ heading: Prenumerera på följande diskussion om dagboksinlägg?
+ button: Prenumerera på diskussion
+ unsubscribe:
+ heading: Avsluta prenumeration på följande diskussion om dagboksinlägg?
+ button: Avsluta prenumeration på diskussion
+ diary_comments:
+ index:
title: Dagbokskommentarer tillagda av %{user}
heading: '%{user}s dagbokskommentarer'
subheading_html: Dagbokskommentarer tillagda av %{user}
contact: kontakta
contact_the_community_html: Gå gärna till %{contact_link} OpenStreetMap-gemenskapen
om du har hittat en trasig länk/bugg. Anteckna din förfrågas exakta webbadress.
+ bad_request:
+ title: Felaktig förfrågan
+ description: Operationen du begärde från OpenStreetMaps server är inte giltig
+ (HTTP 400)
forbidden:
title: Förbjudet
description: Åtgärden du begärde på OpenStreetMap-servern är endast tillgänglig
och fri att använda under en öppen licens.
intro_2_create_account: Skapa ett användarkonto
partners_fastly: Fastly
+ partners_corpmembers: OSMF-företagsmedlemmar
partners_partners: partners
tou: Användarvillkor
osm_offline: OpenStreetMap-databasen är inte tillgänglig just nu, då nödvändigt
more: Mer
user_mailer:
diary_comment_notification:
+ description: 'OpenStreetMap dagboksinlägg #%{id}'
subject: '[OpenStreetMap] %{user} kommenterade på ett dagboksinlägg'
hi: Hej %{to_user},
header: '%{from_user} har kommenterat dagboksinlägget på OpenStreetMap med rubriken
%{commenturl} eller skicka ett meddelande till författaren på %{replyurl}
footer_html: Du kan också läsa kommentaren på %{readurl} och du kan kommentera
på %{commenturl} eller skicka ett meddelande till författaren på %{replyurl}
+ footer_unsubscribe: Du kan avsluta prenumerationen från diskussionen på %{unsubscribeurl}
+ footer_unsubscribe_html: Du kan avsluta prenumerationen från diskussionen på
+ %{unsubscribeurl}
message_notification:
subject: '[OpenStreetMap] %{message_title}'
hi: Hej %{to_user},
click_the_link: Om det är du, klicka på länken nedan för att återställa ditt
lösenord.
note_comment_notification:
+ description: 'OpenStreetMap not #%{id}'
anonymous: En anonym användare
greeting: Hej,
commented:
på. Anteckningen är nära %{place}.'
commented_note_html: '%{commenter} har återaktiverat en kartanteckning du
har kommenterat på. Anteckningen är nära %{place}.'
- details: Fler detaljer om anteckningen finns på %{url}.
- details_html: Fler detaljer om anteckningen finns på %{url}.
+ details: Svara eller ta reda på mer anteckningen på %{url}.
+ details_html: Svara eller ta reda på mer om anteckningen på %{url}.
changeset_comment_notification:
+ description: 'OpenStreetMap ändringsuppsättning #%{id}'
hi: Hej %{to_user},
greeting: Hej,
commented:
partial_changeset_with_comment: med kommentar '%{changeset_comment}'
partial_changeset_with_comment_html: med kommentar '%{changeset_comment}'
partial_changeset_without_comment: utan kommentar
- details: Fler detaljer om ändringsuppsättningen finns på %{url}.
- details_html: Fler detaljer om ändringsuppsättningen finns på %{url}.
- unsubscribe: För att avsluta prenumerationen av uppdateringar i denna ändringsuppsättning,
- besök %{url} och klicka på "Avprenumerera".
- unsubscribe_html: För att avsluta prenumerationen av uppdateringar i denna ändringsuppsättning,
- besök %{url} och klicka på "Avprenumerera".
+ details: Svara eller ta reda på mer om ändringsuppsättningen på %{url}.
+ details_html: Svara eller ta reda på mer om ändringsuppsättningen på %{url}.
+ unsubscribe: Du kan avsluta prenumeration på uppdateringar i denna ändringsuppsättning
+ på %{url}.
+ unsubscribe_html: Du kan avsluta prenumeration på uppdateringar i denna ändringsuppsättning
+ på %{url}.
confirmations:
confirm:
heading: Kontrollera din e-post!
new:
title: Logga in
tab_title: Logga in
+ login_to_authorize_html: Logga in på OpenStreetMap för att komma åt %{client_app_name}.
email or username: E-postadress eller Användarnamn
password: Lösenord
remember: Kom ihåg mig
lost password link: Glömt ditt lösenord?
login_button: Logga in
register now: Registrera dig nu
- with external: 'Alternativt kan du använda en tredje part för att logga in:'
+ with external: eller logga in med en tredje part
+ or: eller
auth failure: Kunde inte logga in med de uppgifterna.
destroy:
title: Logga ut
contributors_at_cc_by_at_with_amendments: CC BY AT med tillägg
contributors_au_australia: Australien
contributors_au_geoscape_australia: Geoscape Australien
+ contributors_au_cc_licence: Creative Commons Erkännande 4.0 Internationell-licens
+ (CC BY 4.0)
contributors_ca_credit_html: |-
%{canada}: Innehåller data från
GeoBase®, GeoGratis (© Department of Natural
Resources Canada), och StatCan (Geography Division,
Statistics Canada).
contributors_ca_canada: Kanada
+ contributors_cz_credit_html: '%{czechia}: Innehåller data från den statliga
+ administrationen för landmäteri och Cadastre licensierad under %{cc_licence_link}'
contributors_cz_czechia: Tjeckien
+ contributors_cz_cc_licence: Creative Commons Erkännande 4.0 Internationell
+ (CC BY 4.0)
+ contributors_fi_credit_html: '%{finland}: Innehåller data från Lantmäteriet
+ i Finlands Terrängdatabas och andra datauppsättningar, under %{nlsfi_license_link}.'
contributors_fi_finland: Finland
contributors_fi_nlsfi_license: NLSFI-licens
contributors_fr_credit_html: |-
%{france}: Innehåller data hämtade från
Direction Générale des Impôts.
contributors_fr_france: Frankrike
+ contributors_hr_credit_html: '%{croatia}: Innehåller data från %{dgu_link}
+ och %{open_data_portal} (offentlig information om Kroatien)'
+ contributors_hr_croatia: Kroatien
+ contributors_hr_dgu: Kroatiens statliga geodatiska förvaltning
contributors_nl_credit_html: '%{netherlands}: Innehåller © AND data,
2007 (%{and_link}).'
contributors_nl_netherlands: Nederländerna
%{serbia}: Innehåller data från %{rgz_link} och %{open_data_portal}
(offentlig information om Serbien), 2018.
contributors_rs_serbia: Serbien
+ contributors_rs_rgz: Serbiens geodetiska myndighet
+ contributors_rs_open_data_portal: Nationell portal för öppen data
+ contributors_si_credit_html: '%{slovenia}: Innehåller data från %{gu_link}
+ och %{mkgp_link} (offentlig information om Slovenien)'
contributors_si_slovenia: Slovenien
+ contributors_si_gu: Lantmäteri- och kartverket
contributors_si_mkgp: Ministeriet för Jordbruk, Skogsbruk och Livsmedel
contributors_es_credit_html: |-
%{spain}: Innehåller data hämtade från
js_1: Du använder antingen en webbläsare som inte stöder JavaScript, eller så
har du inaktiverat JavaScript.
js_2: OpentStreetMap använder JavaScript för slippy-kartan.
- permalink: Permanent länk
- shortlink: Kortlänk
- createnote: Lägg till en anteckning
license:
copyright: Upphovsrätten tillhör OpenStreetMap och bidragsgivare, under en
öppen licens
heathland: Hed
scrubland: Buskskog
lake: Sjö
- reservoir: vattenmagasin
+ reservoir: Vattenmagasin
intermittent_water: Intermittent vattenkropp
glacier: Glaciär
reef: Rev
identifiable: IDENTIFIERBAR
private: PRIVAT
trackable: SPÅRBAR
+ details_with_tags_html: '%{time_ago} av %{user} i %{tags}'
+ details_without_tags_html: '%{time_ago} av %{user}'
index:
public_traces: Publika GPS-spår
my_gps_traces: Mina GPS-spår
other: GPX-fil med %{count} punkter från %{user}
description_without_count: GPX-fil från %{user}
application:
+ basic_auth_disabled: 'Grundläggande HTTP-autentisering är inaktiverat: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 och 1.0a är inaktiverade: %{link}'
permission_denied: Du har inte behörighet för denna åtgärd
require_cookies:
cookies_needed: Du verkar ha inaktiverat kakor - aktivera kakor i din webbläsare
muted_users: Tystade användare
auth_providers:
openid_logo_alt: Logga in med ett OpenID
+ openid_login_button: Fortsätt
openid:
title: Logga in med OpenID
alt: Logga in med en OpenID-URL
write_redactions: Omarbeta kartdata
read_email: Läs användarens e-postadress
skip_authorization: Godkänn applikation automatiskt
+ for_roles:
+ moderator: Denna behörighet är till för åtgärder som endast är tillgängliga
+ för moderatorer
oauth_clients:
new:
title: Registrera en ny applikation
users:
new:
title: Registrera
+ tab_title: Registrera
+ signup_to_authorize_html: Registrera dig på OpenStreetMap för att få åtkomst
+ till %{client_app_name}
no_auto_account_create: Tyvärr kan vi för närvarande inte kan skapa ett konto
åt dig automatiskt.
please_contact_support_html: Kontakta %{support_link} för att ordna att ett
konto ska skapas - vi kommer att försöka ta itu med begäran så fort som möjligt.
support: support
about:
- header: Fri och redigerbar
+ header: Fri och redigerbar.
paragraph_1: Till skillnad från andra kartor är OpenStreetMap helt skapad
av människor som du, och det är gratis för alla att fixa, uppdatera, ladda
ner och använda.
- paragraph_2: Registrera dig för att börja bidra. Vi skickar ett e-postmeddelande
- för att bekräfta ditt konto.
+ paragraph_2: Registrera dig för att börja bidra.
+ welcome: Välkommen till OpenStreetMap
display name description: Ditt offentligt visade användarnamn. Du kan ändra
detta senare i alternativ.
+ tou: användarvillkor
+ contributor_terms: bidragsvillkor
external auth: 'Tredjepartsautentisering:'
continue: Registrera
terms accepted: Tack för att du accepterat de nya villkoren för bidrag till
för mer information.
privacy_policy: integritetspolicy
privacy_policy_title: OSMFs integritetspolicy inklusive avsnitt om e-postadresser
- use external auth: Alternativt kan du använda en tredje part för att logga in
+ consider_pd_html: Jag anser mina bidrag vara i %{consider_pd_link}.
+ consider_pd: public domain
+ or: eller
+ use external auth: eller registrera med en tredje part
terms:
title: Villkor för deltagare
heading: Villkor för deltagare
index:
title: Användare
heading: Användare
+ older: Äldre användare
+ newer: Nyare användare
+ found_users:
+ one: '%{count} användare hittade'
+ other: '%{count} användare hittade'
summary_html: '%{name} skapades från %{ip_address} den %{date}'
summary_no_ip_html: '%{name} skapad den %{date}'
confirm: Bekräfta valda användare
reason: Orsak till blockering
status: Status
revoker_name: Återkallad av
+ older: Äldre blockeringar
+ newer: Nya blockeringar
+ navigation:
+ all_blocks: Alla blockeringar
+ blocks_on_me: Blockeringar på mig
+ blocks_on_user: Blockeringar på %{user}
+ blocks_by_me: Blockeringar av mig
+ blocks_by_user: Blockeringar av %{user}
+ block: 'Blockering #%{id}'
user_mutes:
index:
title: Tystade användare
intro: Upptäckt ett misstag eller något som saknas? Låt andra karterare veta
så att vi kan fixa det. Flytta markören till rätt position och skriv in en
kommentar som förklarar problemet.
+ anonymous_warning_html: Du är inte inloggad. %{log_in} eller %{sign_up} om du
+ vill få uppdateringar för din anteckning.
+ anonymous_warning_log_in: logga in
+ anonymous_warning_sign_up: registrera dig
advice: Din anteckning är offentlig och kan användas för att uppdatera kartan,
så skriv inte personuppgifter eller information från upphovsrättsligt skyddade
kartor eller kataloger.
standard: Standard
cycle_map: Cykelkarta
transport_map: Transportkarta
+ tracestracktop_topo: Tracetrack Topo
hot: Humanitärt
layers:
header: Kartskikt
queryfeature_tooltip: Undersök kartobjekt
queryfeature_disabled_tooltip: Zooma in för att undersöka kartobjekt
embed_html_disabled: HTML-inbäddning är inte tillgänglig för det här kartlagret
- changesets:
- show:
- comment: Kommentera
- subscribe: Prenumerera
- unsubscribe: Avsluta prenumeration
- hide_comment: dölj
- unhide_comment: Sluta dölja
edit_help: Flytta kartan och zooma in på en plats som du vill redigera, klicka
sedan här.
directions:
location: 'இடம்:'
view: காண்
edit: தொகு
- comments:
+ diary_comments:
+ index:
post: பதியவும்
when: எப்பொழுது
comment: கருத்துரை
discussion: చర్చ
join_discussion: చర్చలో పాల్గొనేందుకు లాగినవండి
still_open: మార్పులసమితి ఇంకా తెరిచే ఉంది - దాన్ని మూసివేయగానే చర్చ తెరుచుకుంటుంది.
+ subscribe: గమనింపులలో చేర్చు
+ unsubscribe: గమనింపులనుండి తొలగించు
+ hide_comment: దాచు
+ unhide_comment: చూపించు
+ comment: వ్యాఖ్య
changesetxml: మార్పులసమితి XML
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap డైరీ పద్దులు
description: OpenStreetMap వాడుకరులు ఇటీవల చేర్చిన డైరీ పద్దులు
- comments:
+ diary_comments:
+ index:
title: '%{user} చేర్చిన డైరీ వ్యాఖ్యలు'
heading: '%{user} గారి డైరీ వ్యాఖ్యలు'
subheading_html: '%{user} డైరీ వ్యాఖ్యలను చేర్చారు'
infringement_2_1_online_filing_page: ఆన్లైన్ ఫైలింగ్ పేజీ
trademarks_title: ట్రేడ్మార్క్లు
trademarks_1_1_trademark_policy: ట్రేడ్మార్క్ విధానం
- index:
- permalink: స్థిరలంకె
- shortlink: చిన్నలింకు
- createnote: ఓ నోట్ను చేర్చండి
edit:
user_page_link: వాడుకరి పేజీ
anon_edits_link_text: ఇది ఇలా ఎందుకుందో తెలుసుకోండి.
map_data_zoom_in_tooltip: మ్యాపు డేటాను చూసేందుకు జూమిన్ చెయ్యి
queryfeature_tooltip: క్వెరీ విశేషాలు
queryfeature_disabled_tooltip: క్వెరీ చిశేషాల కోసం జూమిన్ చెయ్యండి
- changesets:
- show:
- comment: వ్యాఖ్య
- subscribe: గమనింపులలో చేర్చు
- unsubscribe: గమనింపులనుండి తొలగించు
- hide_comment: దాచు
- unhide_comment: చూపించు
edit_help: మ్యాపును జరిపి, మీరు సరిదిద్దాలనుకున్న స్థలంపై జూమిన్ చేసి, అప్పుడు
ఇక్కడ నొక్కండి.
directions:
discussion: การอภิปราย
join_discussion: เข้าสู่ระบบเพื่อเข้าร่วมการอภิปราย
still_open: ชุดการเปลี่ยนแปลงกำลังเปิดอยู่ การอภิปรายจะเริ่มได้หลังจากปิดชุดการเปลี่ยนแปลงแล้ว
+ subscribe: บอกรับข้อมูล
+ unsubscribe: เลิกรับข้อมูล
comment_by_html: ความคิดเห็นจาก %{user} %{time_ago}
hidden_comment_by_html: ความคิดเห็นที่ซ่อนอยู่จาก %{user} %{time_ago}
+ hide_comment: ซ่อน
+ unhide_comment: แสดง
+ comment: ความคิดเห็น
changesetxml: ชุดการเปลี่ยนแปลง XML
osmchangexml: เอ็กซ์เอ็มแอลของ osmChange
paging_nav:
all:
title: รายการบันทึก OpenStreetMap
description: รายการบันทึกล่าสุดจากผู้ใช้ OpenStreetMap
- comments:
+ diary_comments:
+ index:
post: เผยแพร่
when: เมื่อ
comment: แสดงความเห็น
index:
js_1: ท่านกำลังใช้เบราว์เซอร์ที่ไม่รองรับจาวาสคริปต์ หรือท่านปิดใช้งานจาวาสคริปต์
js_2: OpenStreetMap ใช้จาวาสคริปต์ในการแสดงแผนที่
- permalink: ลิงก์ถาวร
- shortlink: ลิงก์ย่อ
- createnote: เพิ่มหมายเหตุ
license:
copyright: สงวนลิขสิทธิ์โดย OpenStreetMap และผู้มีส่วนร่วม ภายใต้สัญญาอนุญาตแบบเปิด
remote_failed: การแก้ไขล้มเหลว - ตรวจสอบให้แน่ใจว่าได้โหลด JOSM หรือ Merkaartor
createnote_tooltip: ใส่หมายเหตุลงในแผนที่
queryfeature_tooltip: แสดงส่วนประกอบ
queryfeature_disabled_tooltip: ต้องซูมเข้ามากกว่านี้ จึงจะตรวจสอบส่วนประกอบได้
- changesets:
- show:
- comment: ความคิดเห็น
- subscribe: บอกรับข้อมูล
- unsubscribe: เลิกรับข้อมูล
- hide_comment: ซ่อน
- unhide_comment: แสดง
directions:
ascend: ลาดขึ้น
engines:
join_discussion: Lumagda para sumali sa talakayan
still_open: Bukas pa rin ang pangkat ng pagbabago - magbubukas ang talakayan
pag naisara na ang pangkat ng pagbabago.
+ subscribe: Sumuskribi
+ hide_comment: itago
+ unhide_comment: pawalang-bisa ang pag-tago
+ comment: Pumuna
changesetxml: XML ng pangkat ng pagbabago
osmchangexml: XML ng osmChange
paging_nav:
title: Mga ipinasok sa talaarawan ng OpenStreetMap
description: Kamakailang mga pagpapasok sa talaarawan mula sa mga tagagamit
ng OpenStreetMap
- comments:
+ diary_comments:
+ index:
title: Mga Puna sa Talaarawan ay idinagdag ni %{user}
heading: Mga Puna sa Talaarawan ni %{user}
subheading_html: Mga Puna sa Talaarawan ay idinagdag ni %{user}
js_1: Maaaring gumagamit ka ng isang pantingin-tingin na hindi tumatangkilik
ng JavaScript, o hindi mo pinagagana ang JavaScript.
js_2: Ang OpenStreetMap ay gumagamit ng JavaScript para sa madulas nitong mapa.
- permalink: Permalink
- shortlink: Maikling kawing
- createnote: Magdagdag ng tala
license:
copyright: Karapatang-sipi ng OpenStreetMap at mga tagapag-ambag nito, sa
ilalim ng isang bukas na lisensya
map_data_zoom_in_tooltip: Lumapit upang makita ang datos ng mapa
queryfeature_tooltip: Usisain ang mga tampok
queryfeature_disabled_tooltip: Lumapit upang usisain ang mga tampok
- changesets:
- show:
- comment: Pumuna
- subscribe: Sumuskribi
- hide_comment: itago
- unhide_comment: pawalang-bisa ang pag-tago
directions:
ascend: Umakyat
engines:
# Exported from translatewiki.net
# Export driver: phpyaml
# Author: Agaafd
+# Author: Ahmetlii
# Author: Alerque
# Author: Alidemirtas
# Author: Alpkant
join_discussion: Tartışmaya katılmak için lütfen giriş yapın
still_open: Değişiklik kaydı hâlâ açık - tartışma, değişiklik serisi kapatıldığında
açılacaktır.
+ subscribe: Abone ol
+ unsubscribe: Abonelikten çık
comment_by_html: '%{user} tarafından %{time_ago} yapılan yorum'
hidden_comment_by_html: '%{user} tarafından %{time_ago} yapılan gizli yorum'
+ hide_comment: gizle
+ unhide_comment: göster
+ comment: Yorum
changesetxml: ' XML değişiklik kaydı'
osmchangexml: osmChange XML
paging_nav:
all:
title: OpenStreetMap günlük girdileri
description: OpenStreetMap kullanıcıların en son günlük girdileri
- comments:
+ subscribe:
+ heading: Aşağıdaki günlük girdisi tartışmasına abone olmak ister misiniz?
+ button: Tartışmaya abone ol
+ unsubscribe:
+ heading: Aşağıdaki günlük girdisi tartışmasının aboneliği iptal edilsin mi?
+ button: Tartışma aboneliğinden çık
+ diary_comments:
+ index:
title: '%{user} tarafından yapılan 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ı'
comment: Yorum
newer_comments: Daha Yeni Yorumlar
older_comments: Daha Eski Yorumlar
- subscribe:
- heading: Aşağıdaki günlük girdisi tartışmasına abone olmak ister misiniz?
- button: Tartışmaya abone ol
- unsubscribe:
- heading: Aşağıdaki günlük girdisi tartışmasının aboneliği iptal edilsin mi?
- button: Tartışma aboneliğinden çık
doorkeeper:
errors:
messages:
contact_the_community_html: Bozuk bir bağlantı/hata bulduysanız OpenStreetMap
topluluğuna %{contact_link} bağlantısıyla iletmekten çekinmeyin. İsteğinizin
tam URL'sini not edin.
+ bad_request:
+ title: Geçersiz İstek
+ description: OpenStreetMap sunucusunda talep ettiğiniz işlem geçerli değil (HTTP
+ 400)
forbidden:
title: Yasaklı
description: OpenStreetMap sunucusunda talep ettiğiniz işlem sadece yöneticiler
scree: Kayşat
scrub: Çalılık
shingle: Çakıl tabanlı sahil plaj
- spring: İlkbahar
+ spring: Pınar/Kaynak
stone: Taş
strait: Boğaz
tree: Ağaç
Not, %{place} yakınlarında yer almakta.'
commented_note_html: '%{commenter}, yorumladığınız bir harita notunu yeniden
etkinleştirdi. Not, %{place} yakınlarında yer almakta.'
- details: Not hakkındaki ayrıntılı bilgiler %{url} bağlantısında görülebilir.
- details_html: Notla ilgili daha fazla ayrıntı %{url} adresinde bulunabilir.
+ details: '%{url} bağlantısındaki notu yanıtlayın veya not hakkında daha fazla
+ bilgi edinin.'
+ details_html: '%{url} bağlantısındaki notu yanıtlayın veya not hakkında daha
+ fazla bilgi edinin.'
changeset_comment_notification:
description: 'OpenStreetMap Değişiklik Kaydı #%{id}'
hi: Merhaba %{to_user},
partial_changeset_with_comment: '''%{changeset_comment}'' yorumuyla'
partial_changeset_with_comment_html: '''%{changeset_comment}'' yorumuyla'
partial_changeset_without_comment: yorumsuz
- details: Değişiklik kaydıyla ilgili daha fazla bilgi %{url} sayfasından edinebilirsiniz.
- details_html: Değişiklik kümesiyle ilgili daha fazla ayrıntı %{url} adresinde
- bulunabilir.
+ details: '%{url} bağlantısına yanıt verin veya değişiklik seti hakkında daha
+ fazla bilgi edinin.'
+ details_html: '%{url} bağlantısına yanıt verin veya değişiklik seti hakkında
+ daha fazla bilgi edinin.'
unsubscribe: Bu değişiklik kaydındaki güncellemelere ilişkin aboneliğinizi %{url}
adresinden iptal edebilirsiniz.
unsubscribe_html: Bu değişiklik kaydındaki güncellemelere ilişkin aboneliğinizi
js_1: JavaScript desteklemeyen bir tarayıcı kullanıyorsunuz ya da JavaScript
devre dışı bırakılmış.
js_2: OpenStreetMap harita gösterim için JavaScript kullanıyor.
- permalink: Kalıcı Bağlantı
- shortlink: Kısa Bağlantı
- createnote: Bir not ekle
license:
copyright: Telif Hakkı OpenStreetMap ve katılımcılar, açık lisans altında
remote_failed: Düzenleme başarısız - JOSM veya Merkaartor'un yüklendiğinden
other: '%{user} tarafından %{count} noktalı GPX dosyası'
description_without_count: '%{user} tarafından GPX dosyası'
application:
+ basic_auth_disabled: 'HTTP Temel Kimlik Doğrulaması devre dışı: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 ve 1.0a devre dışı bırakıldı: %{link}'
permission_denied: Bu eyleme erişme izniniz yok
require_cookies:
cookies_needed: Çerezleri devre dışı bırakmış görünüyorsunuz - devam etmeden
queryfeature_tooltip: Özellikleri göster
queryfeature_disabled_tooltip: Özellikler görmek için yakınlaştır
embed_html_disabled: Bu harita katmanı için HTML yerleştirme kullanılamıyor
- changesets:
- show:
- comment: Yorum
- subscribe: Abone ol
- unsubscribe: Abonelikten çık
- hide_comment: gizle
- unhide_comment: göster
edit_help: Haritayı sürükleyip ve düzenleme yapmak istediğiniz konuma yakınlaştırdıktan
sonra buraya tıklayın.
directions:
мөмкин булыр.
comment_by_html: '%{user} исемле кулланучыдан шәрех %{time_ago}'
hidden_comment_by_html: '%{user} исемле кулланучыдан яшерен шәрех %{time_ago}'
+ hide_comment: яшерү
+ unhide_comment: күрсәтү
changesetxml: Үзгәртүләр өеменең XMLы
osmchangexml: osmChange XML
paging_nav:
location: 'Урын:'
view: Карау
edit: Төзәтмә
- comments:
+ diary_comments:
+ index:
when: Кайчан
comment: Шәрех
newer_comments: Яңарак шәрехләр
standard: Стандарт
layers:
title: Катламнар
- changesets:
- show:
- hide_comment: яшерү
- unhide_comment: күрсәтү
directions:
ascend: Менү
engines:
diary_comment: Коментарі щоденника
diary_entry: Запис щоденника
friend: Друг
- issue: Звіт
+ issue: Звернення
language: Мова
message: Повідомлення
node: Точка
join_discussion: Увійдіть в систему, щоб приєднатися до обговорення
still_open: Набір змін досі відкритий — обговорення буде відкрито, як тільки
він стане закритим.
+ subscribe: Підписатися
+ unsubscribe: Відписатись
comment_by_html: Коментар від %{user} %{time_ago}
hidden_comment_by_html: Прихований коментар від %{user} %{time_ago}
- changesetxml: XML опис набору змін
+ hide_comment: приховати
+ unhide_comment: показати
+ comment: Коментар
+ changesetxml: Набір змін в XML
osmchangexml: osmChange XML
paging_nav:
nodes: Точки (%{count})
- nodes_paginated: Точки (%{x}-%{y} із %{count})
+ nodes_paginated: Точки (%{x}-%{y} з %{count})
ways: Лінії (%{count})
- ways_paginated: Лінії (%{x}-%{y} із %{count})
+ ways_paginated: Лінії (%{x}-%{y} з %{count})
relations: Зв’язки (%{count})
- relations_paginated: Зв’язки (%{x}-%{y} із %{count})
+ relations_paginated: Зв’язки (%{x}-%{y} з %{count})
timeout:
sorry: На жаль, перелік наборів змін, який ви запросили, потребує забагато часу
для завантаження.
all:
title: Записи щоденника OpenStreetMap
description: Останні записи в щоденниках від учасників OpenStreetMap
- comments:
+ subscribe:
+ heading: Підписатись на обговорення цього допису щоденника?
+ button: Підписатись на обговорення
+ unsubscribe:
+ heading: Відписатись від обговорення цього допису щоденника?
+ button: Відписатися від обговорення
+ diary_comments:
+ index:
title: Коментарі до щоденника додав %{user}
heading: Коментарі щоденника %{user}
subheading_html: Коментарі до щоденника додав %{user}
comment: Коментар
newer_comments: Нові коментарі
older_comments: Старіші коментарі
- subscribe:
- heading: Підписатись на обговорення цього допису щоденника?
- button: Підписатись на обговорення
- unsubscribe:
- heading: Відписатись від обговорення цього допису щоденника?
- button: Відписатися від обговорення
doorkeeper:
errors:
messages:
contact_the_community_html: Будь ласка, %{contact_link} зі спільнотою OpenStreetMap,
якщо ви знайшли несправне посилання або помилку. Запишіть точну URL-адресу
вашого запиту.
+ bad_request:
+ title: Хибний запит
+ description: Операція, яку ви запитали на сервері OpenStreetMap, не є дійсною
+ (HTTP 400)
forbidden:
title: Заборонено
description: Дія, яку ви намагались виконати, доступна лише адміністраторам
memorial: Меморіал
milestone: Історичний межовий стовп
mine: Копальня
- mine_shaft: Шахтний вал
+ mine_shaft: Шахтний ствол
monument: Пам’ятник
railway: Історична залізниця
roman_road: Римська дорога
other: ""
no_reports: Скарг немає
report_created_at_html: Вперше повідомлено %{datetime}
- last_resolved_at_html: Востаннє розв'язано %{datetime}
+ last_resolved_at_html: Востаннє розвʼязано %{datetime}
last_updated_at_html: В останнє оновлено %{datetime}, %{displayname}
resolve: Розв'язати
ignore: Ігнорувати
had_added_you: '%{user} додав Вас як друга в OpenStreetMap.'
see_their_profile: Ви можете побачити їх профіль на %{userurl}.
see_their_profile_html: Ви можете ознайомитись з його/її профілем - %{userurl}.
- befriend_them: Ð\92и Ñ\82акож можеÑ\82е додаÑ\82и Ñ\97Ñ\85 Ñ\83 Ñ\8fкоÑ\81Ñ\82Ñ\96 друзів %{befriendurl}.
+ befriend_them: Ð\92и Ñ\82акож можеÑ\82е додаÑ\82и Ñ\97Ñ\85 Ñ\8fк друзів %{befriendurl}.
befriend_them_html: Ви також можете додати його/її до друзів %{befriendurl}.
gpx_description:
description_with_tags_html: 'Схоже це ваш файл GPX %{trace_name}, що має опис
біля %{place}.'
commented_note_html: '%{commenter} поновив нотатку, прокоментовану вами, що
знаходиться біля %{place}.'
- details: Ð\94окладнÑ\96Ñ\88е пÑ\80о ноÑ\82аÑ\82кÑ\83 %{url}.
- details_html: Ð\94окладнÑ\96Ñ\88е пÑ\80о ноÑ\82аÑ\82кÑ\83 %{url}.
+ details: Ð\94айÑ\82е вÑ\96дповÑ\96дÑ\8c або дÑ\96знайÑ\82еÑ\81Ñ\8f бÑ\96лÑ\8cÑ\88е пÑ\80о ноÑ\82аÑ\82кÑ\83 за %{url}.
+ details_html: Ð\94айÑ\82е вÑ\96дповÑ\96дÑ\8c або дÑ\96знайÑ\82еÑ\81Ñ\8f бÑ\96лÑ\8cÑ\88е пÑ\80о ноÑ\82аÑ\82кÑ\83 за %{url}.
changeset_comment_notification:
description: 'Набір змін OpenStreetMap #%{id}'
hi: Привіт %{to_user},
partial_changeset_with_comment: з коментарем '%{changeset_comment}'
partial_changeset_with_comment_html: з коментарем '%{changeset_comment}'
partial_changeset_without_comment: без коментарів
- details: Ð\91Ñ\96лÑ\8cÑ\88е деÑ\82алей пÑ\80о змÑ\96ни, Ñ\8fкÑ\96 можÑ\83Ñ\82Ñ\8c бÑ\83Ñ\82и знайденÑ\96 в %{url}.
- details_html: Ð\91Ñ\96лÑ\8cÑ\88е деÑ\82алей пÑ\80о набÑ\96Ñ\80 змÑ\96н можна знайÑ\82и за поÑ\81иланнÑ\8fм - %{url}.
+ details: Ð\94айÑ\82е вÑ\96дповÑ\96дÑ\8c або дÑ\96знайÑ\82еÑ\81Ñ\8f бÑ\96лÑ\8cÑ\88е пÑ\80о набÑ\96Ñ\80 змÑ\96н за %{url}.
+ details_html: Ð\94айÑ\82е вÑ\96дповÑ\96дÑ\8c або дÑ\96знайÑ\82еÑ\81Ñ\8f бÑ\96лÑ\8cÑ\88е пÑ\80о набÑ\96Ñ\80 змÑ\96н за %{url}.
unsubscribe: Щоб відмовитись від отримання повідомлень для цього набору змін
за посиланням %{url}.
unsubscribe_html: Щоб відмовитись від отримання повідомлень для цього набору
preferred_languages: Типові мови
edit_preferences: Зміна вподобань
edit:
- title: Ð\97мÑ\96на налаÑ\88Ñ\82Ñ\83вань
+ title: Ð\97мÑ\96на вподобань
save: Зберегти вподобання
cancel: Скасувати
update:
new:
title: Ласкаво просимо
tab_title: Ласкаво просимо
+ login_to_authorize_html: Увійдіть до OpenStreetMap, щоб отримати доступ до %{client_app_name}.
email or username: Ел. пошта або прізвисько
password: Пароль
remember: Запам’ятати мене
lost password link: Забули пароль?
login_button: Увійти
register now: Зареєструйтеся зараз
- with external: 'Або використовуйте, облікові записи з інших ресурсів:'
+ with external: Або використовуйте, облікові записи з інших ресурсів
+ or: або
auth failure: Вибачте, вхід з цими ім’ям або паролем неможливий.
destroy:
title: Вийти
index:
js_1: Ви користуєтесь оглядачем, в якому не підтримується або відключений JavaScript.
js_2: OpenStreetMap використовує JavaScript для мапи.
- permalink: Постійне посилання
- shortlink: Кор.посил.
- createnote: Додати нотатку
license:
copyright: Авторські права за OpenStreetMap та його учасниками на умовах відкритої
ліцензії
other: ""
description_without_count: GPX файл від %{user}
application:
+ basic_auth_disabled: 'HTTP Basic Authentication вимкнено: %{link}'
+ oauth_10a_disabled: 'OAuth 1.0 та 1.0a вимкнено: %{link}'
permission_denied: Вибачте, у вас недостатньо прав для виконання цієї дії.
require_cookies:
cookies_needed: Схоже, що у вас вимкнені куки. Будь ласка, увімкніть куки у
oauth2_authorizations: авторизації OAuth 2
muted_users: Стишені учасники
auth_providers:
- openid_logo_alt: Увійти з допомогою OpenID
+ openid_logo_alt: Увійти з OpenID
+ openid_login_button: Продовжити
openid:
- title: Увійти за допомогою OpenID
- alt: Увійти за допомогою OpenID URL
+ title: Увійти за OpenID
+ alt: Увійти за OpenID URL
google:
title: Увійти через Google
alt: Увійти через Google OpenID
write_redactions: Виконувати очищення даних
read_email: Отримувати адресу е-пошти
skip_authorization: Автоматичне схвалення заявки
+ for_roles:
+ moderator: Цей дозвіл призначений для дій, доступних лише модераторам
oauth_clients:
new:
title: Зареєструвати новий застосунок
users:
new:
title: Реєстрація
+ tab_title: Реєстрація
+ signup_to_authorize_html: Увійдіть до свого облікового запису OpenStreetMap,
+ щоб отримати доступ до %{client_app_name}.
no_auto_account_create: На жаль, наразі ми не в змозі створити для вас обліковий
запис автоматично.
please_contact_support_html: Будь ласка, зв’яжіться з %{support_link}, щоб домовитися
швидше.
support: підтримкою
about:
- header: Вільні й доступні для редагування
+ header: Вільні й доступні для редагування.
paragraph_1: На відміну від інших мап, OpenStreetMap повністю створено людьми,
такими ж як ви, і кожен може вільно виправляти, оновлювати, завантажувати
та використовувати дані OpenStreetMap.
- paragraph_2: Зареєструйтеся, щоб почати мапити. Ми надішлемо електронного
- листа для підтвердження вашого облікового запису.
+ paragraph_2: Зареєструйтеся, щоб почати мапити.
+ welcome: Ласкаво просимо до OpenStreetMap
+ duplicate_social_email: Якщо у вас вже є обліковий запис OpenStreetMap і ви
+ хочете використовувати стороннього постачальника ідентифікаційних даних, будь
+ ласка, увійдіть, використовуючи свій пароль, і змініть налаштування свого
+ облікового запису.
display name description: Ваше ім’я учасника, доступне всім. Ви можете змінити
його потім у ваших налаштуваннях.
+ by_signing_up_html: Реєструючись, ви приймаєте наші %{tou_link}, %{privacy_policy_link}
+ і %{contributor_terms_link}.
+ tou: умови використання
+ contributor_terms: умови співпраці
external auth: 'Автентифікація через:'
continue: Зареєструватись
terms accepted: Дякуємо за прийняття нових умов співпраці!
privacy_policy: Політикою конфіденційності
privacy_policy_title: Політика конфіденційності OSMF, включаючи розділ про адреси
електронної пошти
- use external auth: Або використовуйте, облікові записи з інших ресурсів для
+ consider_pd_html: Я вважаю, що мій внесок належать до %{consider_pd_link}.
+ consider_pd: суспільного надбання
+ or: або
+ use external auth: або використовуйте, облікові записи з інших ресурсів для
входу
terms:
title: Умови
intro: Помітили помилку або чогось не вистачає? Дайте знати іншим маперам, щоб
можна було це виправити. Перемістіть позначку в потрібне місце та додайте
пояснення проблеми.
+ anonymous_warning_html: Ви не ввійшли в систему. Будь ласка, %{log_in} або %{sign_up},
+ якщо ви хочете отримувати оновлення щодо своєї нотатки.
+ anonymous_warning_log_in: увійдіть
+ anonymous_warning_sign_up: зареєструйтесь
advice: Ваша нотатка є публічною та може бути використана для оновлення мапи.
Будь ласка, не додавайте персональні дані або інформацію, яка міститься на
захищених авторським правом мапах чи каталогах.
queryfeature_tooltip: Отримати об’єкти
queryfeature_disabled_tooltip: Наблизитись для отримання об’єктів
embed_html_disabled: Вбудовування HTML недоступне для цього шару мапи
- changesets:
- show:
- comment: Коментар
- subscribe: Підписатися
- unsubscribe: Відписатись
- hide_comment: приховати
- unhide_comment: показати
edit_help: Перемістіть мапу і наблизьтесь до місця, яке ви бажаєте змінити, потім
клацніть тут.
directions:
- ascend: Ð\92гоÑ\80Ñ\83
+ ascend: Ð\9fÑ\96дйом
engines:
fossgis_osrm_bike: Велосипед (OSRM)
fossgis_osrm_car: Машина (OSRM)
fossgis_valhalla_bicycle: Велосипед (Valhalla)
fossgis_valhalla_car: Машина (Valhalla)
fossgis_valhalla_foot: Пішки (Valhalla)
- descend: Ð\92низ
+ descend: СпÑ\83Ñ\81к
directions: Маршрут
distance: Відстань
distance_m: '%{distance} м'
join_discussion: Đăng nhập để tham gia thảo luận
still_open: Bộ thay đổi đang mở – có thể thảo luận sau khi bộ thay đổi được
đóng.
+ subscribe: Theo dõi
+ unsubscribe: Không theo dõi
comment_by_html: Nhận xét của %{user} từ %{time_ago}
hidden_comment_by_html: Nhận xét ẩn của %{user} từ %{time_ago}
+ hide_comment: ẩn
+ unhide_comment: bỏ ẩn
+ comment: Bình luận
changesetxml: Bộ thay đổi XML
osmchangexml: osmChange XML
paging_nav:
all:
title: Các mục nhật ký OpenStreetMap
description: Những mục nhật ký gần đây từ người dùng OpenStreetMap
- comments:
+ subscribe:
+ heading: Theo dõi cuộc thảo luận về mục nhật ký sau đây?
+ button: Theo dõi cuộc thảo luận
+ unsubscribe:
+ heading: Ngừng theo dõi cuộc thảo luận về mục nhật ký sau đây?
+ button: Ngừng theo dõi cuộc thảo luận
+ diary_comments:
+ index:
title: Bình luận Nhật ký do %{user} Đăng
heading: Bình luận Nhật ký của %{user}
subheading_html: Bình luận Nhật ký do %{user} Đăng
comment: Nhận xét
newer_comments: Các Nhận xét Mới hơn
older_comments: Các Nhận xét Cũ hơn
- subscribe:
- heading: Theo dõi cuộc thảo luận về mục nhật ký sau đây?
- button: Theo dõi cuộc thảo luận
- unsubscribe:
- heading: Ngừng theo dõi cuộc thảo luận về mục nhật ký sau đây?
- button: Ngừng theo dõi cuộc thảo luận
doorkeeper:
errors:
messages:
index:
js_1: Hoặc trình duyệt của bạn không hỗ trợ JavaScript, hoặc bạn đã tắt JavaScript.
js_2: OpenStreetMap sử dụng JavaScript cho chức năng bản đồ trơn.
- permalink: Liên kết Thường trực
- shortlink: Liên kết Ngắn gọn
- createnote: Thêm ghi chú
license:
copyright: Bản quyền của OpenStreetMap và những người đóng góp, được phát
hành theo giấy phép mở
queryfeature_tooltip: Thăm dò yếu tố
queryfeature_disabled_tooltip: Phóng to để thăm dò yếu tố
embed_html_disabled: Chức năng nhúng HTML không có sẵn đối với lớp bản đồ này
- changesets:
- show:
- comment: Bình luận
- subscribe: Theo dõi
- unsubscribe: Không theo dõi
- hide_comment: ẩn
- unhide_comment: bỏ ẩn
edit_help: Di chuyển bản đồ và phóng to một vị trí mà bạn muốn sửa đổi, rồi nhấn
chuột vào đây.
directions:
title: OpenStreetMap დღარიშ დინნაჭარეფი გეჸვენჯი ნინაშა %{language_name}
all:
title: OpenStreetMap დღარიშ დინნაჭარეფი
- comments:
+ diary_comments:
+ index:
no_comments: დღარი კომენტარეფი ვა რე
post: პოსტი
when: მუჟამს
feed:
created: געשאַפֿן
closed: געשלאסן
+ show:
+ hide_comment: באַהאַלטן
geocoder:
search_osm_nominatim:
prefix:
short_url: קורץ URL
center_marker: צענטרירן מאפע אויף מארקירונג
view_larger_map: באקוקן גרעסערע מאפע
- changesets:
- show:
- hide_comment: באַהאַלטן
context:
show_address: ווײַזן אדרעס
...
discussion: 讨论
join_discussion: 登录以加入讨论
still_open: 变更集依然开放——一旦变更集关闭讨论将开放。
+ subscribe: 订阅
+ unsubscribe: 取消订阅
comment_by_html: '%{user} 于 %{time_ago} 的评论'
hidden_comment_by_html: '%{user} 于 %{time_ago} 的隐藏评论'
+ hide_comment: 隐藏
+ unhide_comment: 取消隐藏
+ comment: 评论
changesetxml: 变更集 XML
osmchangexml: osmChange XML
paging_nav:
title: '%{user} 的日记 | %{title}'
user_title: '%{user}的日记'
discussion: 讨论
+ subscribe: 订阅
+ unsubscribe: 取消订阅
leave_a_comment: 留下评论
login_to_leave_a_comment_html: '%{login_link}以留下评论'
login: 登录
all:
title: OpenStreetMap 日记文章
description: 最近的 OpenStreetMap 用户日记文章
- comments:
+ subscribe:
+ heading: 订阅以下日记讨论吗?
+ button: 订阅讨论
+ unsubscribe:
+ heading: 退订以下日记讨论吗?
+ button: 退订讨论
+ diary_comments:
+ index:
title: '%{user} 已添加日记评论'
heading: '%{user} 的日记评论'
subheading_html: '%{user} 已添加日记评论'
comment: 评论
newer_comments: 较新评论
older_comments: 较旧评论
- subscribe:
- heading: 订阅以下日记讨论吗?
- button: 订阅讨论
- unsubscribe:
- heading: 退订以下日记讨论吗?
- button: 退订讨论
doorkeeper:
errors:
messages:
contact: 联系
contact_the_community_html: 如果您发现有损坏的链接/错误,请随时%{contact_link} OpenStreetMap
社区。并记下您请求的确切 URL。
+ bad_request:
+ title: 错误请求
+ description: 您在 OpenStreetMap 服务器上请求的操作无效 (HTTP 400)
forbidden:
title: 禁止
description: 您在 OpenStreetMap 服务器上请求的操作仅限管理员使用(HTTP 403)
subject_other: '[OpenStreetMap] %{commenter} 已经解决了一个您感兴趣的注记'
your_note: '%{commenter} 解决了您在 %{place} 附近的一个注记。'
your_note_html: '%{commenter} 解决了您在 %{place} 附近的一个注记。'
- commented_note: '%{commenter} 解决了您感兴趣的一个地图注记。该注记位于 %{place} 附近。'
- commented_note_html: '%{commenter} 解决了您感兴趣的一个地图注记。该注记位于 %{place} 附近。'
+ commented_note: '%{commenter} 解决了您留言的地图注记。该注记位于 %{place} 附近。'
+ commented_note_html: '%{commenter} 解决了您留言的地图注记。该注记位于 %{place} 附近。'
reopened:
subject_own: '[OpenStreetMap] %{commenter} 重新激活了您的一个注记'
subject_other: '[OpenStreetMap] %{commenter} 重新激活了您感兴趣的一个注记'
your_note_html: '%{commenter} 重新激活了您在 %{place} 附近的一个注记。'
commented_note: '%{commenter} 重新激活了您感兴趣的一个地图注记。该注记位于 %{place} 附近。'
commented_note_html: '%{commenter} 重新激活了您感兴趣的一个地图注记。该注记位于 %{place} 附近。'
- details: 更多关于笔记的详细信息可以在%{url}找到。
- details_html: 更多关于笔记的详细信息可以在%{url}找到。
+ details: 在 %{url} 回复或了解更多有关注记的信息。
+ details_html: 在 %{url} 回复或了解更多有关注记的信息。
changeset_comment_notification:
description: 'OpenStreetMap 变更集 #%{id}'
hi: 您好,%{to_user}:
partial_changeset_with_comment: 带评论“%{changeset_comment}”
partial_changeset_with_comment_html: 带有评论“%{changeset_comment}”
partial_changeset_without_comment: 没有评论
- details: 更多关于变更集的详细信息可以在 %{url} 找到。
- details_html: 更多有关变更集的详细信息,请参见 %{url}。
+ details: 在 %{url} 回复或了解更多有关变更集的信息。
+ details_html: 在 %{url} 回复或了解更多有关变更集的信息。
unsubscribe: 您可访问%{url}以从该变更集中退订。
unsubscribe_html: 您可访问%{url}以从该变更集中退订。
confirmations:
index:
js_1: 您或许正在使用不支持 JavaScript 的浏览器,或您禁用了 JavaScript。
js_2: OpenStreetMap 使用 JavaScript 让地图更平滑。
- permalink: 固定链接
- shortlink: 短链接
- createnote: 添加注记
license:
copyright: 版权所有 OpenStreetMap及其贡献者,采用开放授权协议
remote_failed: 编辑失败 - 请确保已加载 JOSM 或 Merkaartor 并启用了远程控制
other: 来自 %{user} 的带 %{count} 点的GPX文件
description_without_count: 来自 %{user} 的 GPX 文件
application:
+ basic_auth_disabled: HTTP 基本身份验证已禁用:%{link}
+ oauth_10a_disabled: OAuth 1.0 和 1.0a 已禁用:%{link}
permission_denied: 您没有权限来执行此操作
require_cookies:
cookies_needed: 您似乎停用了 cookie - 请在继续操作前启用您的浏览器 cookie。
remove as friend: 删除朋友
add as friend: 添加朋友
mapper since: 绘图者注册于:
+ last map edit: 最后地图编辑于:
+ no activity yet: 尚无活动
uid: 用户ID:
ct status: 贡献者条款:
ct undecided: 未决定
new:
title: 新注记
intro: 发现错误或遗漏了什么?请告诉其他绘图者以便于我们更正错误。将标记移动到正确的位置并输入备注说明问题。
+ anonymous_warning_html: 您尚未登录。如果您想接收笔记的更新信息,请%{log_in}或%{sign_up}。
+ anonymous_warning_log_in: 登录
+ anonymous_warning_sign_up: 注册
advice: 您的注释会公开,并可能用于更新地图,所以不要输入个人信息,或是来自版权保护地图的信息或目录列表。
add: 添加注记
javascripts:
queryfeature_tooltip: 查询特征
queryfeature_disabled_tooltip: 放大以查询特征
embed_html_disabled: HTML 嵌入不适用于此地图图层
- changesets:
- show:
- comment: 评论
- subscribe: 订阅
- unsubscribe: 取消订阅
- hide_comment: 隐藏
- unhide_comment: 取消隐藏
edit_help: 移动地图并在您想编辑的位置放大,然后点击这里。
directions:
ascend: 上升
description: 近期以%{language_name}撰寫的OpenStreetMap用戶日記文章
all:
description: 近期的OpenStreetMap用戶日記文章
- comments:
+ diary_comments:
+ index:
post: 貼文
when: 於
comment: 評論
destroy:
title: 登出
site:
- index:
- createnote: 添加註記
edit:
not_public: 您尚未把編輯公開。
not_public_description_html: 您不這樣設定的話就將再無法編輯地圖。您可以在%{user_page}將閣下的編輯設為公開。
# Author: Tntchn
# Author: TongcyDai
# Author: Wehwei
+# Author: WiiUf
# Author: Winston Sung
# Author: Wrightbus
# Author: Xiplus
+# Author: Yuchenglinedu
# Author: 予弦
# Author: 列维劳德
# Author: 捍粵者
errors:
messages:
invalid_email_address: 似乎不是有效的電子郵件信箱地址。
- email_address_not_routable: ä¸\8då\8f¯ç¹\9e送
+ email_address_not_routable: ä¸\8då\8f¯ç\99¼送
display_name_is_user_n: 不能是「user_n」除非「n」是您的使用者 ID
models:
user_mute:
tracetag: 軌跡標籤
user: 使用者
user_preference: 使用者偏好設定
- user_token: 使用者令牌
+ user_token: 使用者Token
way: 路徑
way_node: 路徑節點
way_tag: 路徑標籤
attributes:
client_application:
- name: 名稱(必需)
- url: 主程式 URL(必需)
- callback_url: 回呼 (Callback) URL
+ name: 名稱(必填)
+ url: 主要應用程式 URL(必填)
+ callback_url: 回撥 (Callback) URL
support_url: 支援 URL
- allow_read_prefs: è®\80å\8f\96ä»\96å\80\91ç\9a\84使ç\94¨è\80\85å\81\8f好è¨å®\9a
- allow_write_prefs: ä¿®æ\94¹ä»\96å\80\91ç\9a\84使ç\94¨è\80\85å\81\8f好è¨å®\9a
+ allow_read_prefs: 讀取使用者偏好設定
+ allow_write_prefs: 修改使用者偏好設定
allow_write_diary: 建立日記、評論和加入好友
allow_write_api: 修改地圖
- allow_read_gpx: 讀取他們的私人GPS軌跡
+ allow_read_gpx: 讀取個人GPS軌跡
allow_write_gpx: 上傳 GPS 軌跡
allow_write_notes: 修改註記
diary_comment:
latitude: 緯度
longitude: 經度
public: 公開
- description: 說明
+ description: 描述
gpx_file: 上傳 GPX 檔案
visibility: 能見度
tagstring: 標籤
recipient: 收件者
redaction:
title: 標題
- description: 說明
+ description: 描述
report:
- category: 選擇您回報的原因
- details: è«\8bæ\8f\90ä¾\9bæ\9c\89é\97\9cå\95\8fé¡\8cç\9a\84æ\9b´å¤\9aäº\9b詳æ\83\85ï¼\88å¿\85é\9c\80)
+ category: 選擇你回報的原因
+ details: è«\8bæ\8f\90ä¾\9bæ\9b´å¤\9aæ\9c\89é\97\9cå\95\8fé¡\8cç\9a\84詳æ\83\85ï¼\88å¿\85å¡«)
user:
- auth_provider: 認證提供方
+ auth_provider: 認證提供者
auth_uid: 認證 UID
email: 電子郵件
new_email: 新的電子郵件地址
- active: 開啟中
+ active: 活躍
display_name: 顯示名稱
- description: å\9fºæ\9c¬è³\87æ\96\99說æ\98\8e
+ description: å\80\8b人æª\94æ¡\88æ\8f\8fè¿°
home_lat: 緯度
home_lon: 經度
languages: 偏好的語言
help:
doorkeeper/application:
confidential: 應用程式會在客戶端密鑰可以維持機密時使用(本地端移動應用程式和單一頁面應用程式不保密)
- redirect_uri: 一行一URI
+ redirect_uri: 每條 URI 使用一行
trace:
- tagstring: 逗點分隔
+ tagstring: 以逗點分隔
user_block:
- reason: 封鎖使用者的理由。請盡量以平靜、合理態度詳細描述情況,並記住訊息公開可見。請注意,並非所有使用者都了解社群術語,所以請盡量使用通俗說法。
+ reason: 封鎖使用者的理由。請盡量以平靜、合理的態度詳細描述情況,並記住訊息公開可見。請注意,並非所有使用者都了解社群術語,所以請盡量使用通俗說法。
needs_view: 解封前是否需要使用者登入?
user:
- new_email: (永不公開顯示)
+ new_email: (永遠不公開顯示)
datetime:
distance_in_words_ago:
about_x_hours:
about_x_years:
one: 約 %{count} 年前
other: 約 %{count} 年前
- almost_x_years:
- one: 將近 %{count} 年前
- other: 將近 %{count} 年前
+ almost_x_years: 將近 %{count} 年前
half_a_minute: 半分鐘前
- less_than_x_seconds:
- one: 小於 %{count} 秒前
- other: 小於 %{count} 秒前
- less_than_x_minutes:
- one: 小於 %{count} 分前
- other: 小於 %{count} 分前
+ less_than_x_seconds: 不到 %{count} 秒前
+ less_than_x_minutes: 不到 %{count} 分鐘前
over_x_years:
- one: 超過 %{count} 年前
- other: 超過 %{count} 年前
+ one: 超過1年前
+ other: 超過%{count}年前
x_seconds:
- one: '%{count} 秒前'
- other: '%{count} 秒前'
- x_minutes:
- one: '%{count} 分鐘前'
- other: '%{count} 分鐘前'
- x_days:
- one: '%{count} 天前'
- other: '%{count} 天前'
+ one: 1秒前
+ other: '%{count}秒前'
+ x_minutes: '%{count} 分鐘前'
+ x_days: '%{count} 天前'
x_months:
one: '%{count} 個月前'
other: '%{count} 個月前'
- x_years:
- one: '%{count} 年前'
- other: '%{count} 年前'
+ x_years: '%{count} 年前'
printable_name:
current_and_old_links_html: '%{current_link},%{old_link}'
editor:
reopened_at_by_html: 於%{when}由%{user}重新開啟
rss:
title: OpenStreetMap 註記
- description_all: å·²å ±å\91\8aã\80\81è©\95è«\96ã\80\81æ\88\96æ\98¯é\97\9cé\96\89註è¨\98ç\9a\84清單
+ description_all: å ±å\91\8aã\80\81è©\95è«\96ã\80\81æ\88\96é\97\9cé\96\89ç\9a\84註è¨\98清單
description_area: 在你的區域[(%{min_lat}|%{min_lon}) -- (%{max_lat}|%{max_lon})]所報告、評論或關閉的註記的清單
description_item: 註記 %{id} 的 RSS feed
opened: 新的註記 (在 %{place} 附近)
commented: 新的評論 (在 %{place} 附近)
closed: 關閉的註記 (在 %{place} 附近)
- reopened: 重新開啟的註記 (在 %{place} 附近)
+ reopened: 重新開啟的註記(在%{place}附近)
entry:
comment: 評論
full: 註記原文
deletions:
show:
title: 刪除我的帳號
- warning: 警告!帳號刪除處理是完全徹底、無法還原的。
+ warning: 警告!帳號刪除程序不可逆轉,無法復原。
delete_account: 刪除帳號
- delete_introduction: 您可以使用下方按鈕來刪除您的 OpenStreetMap 帳號。並請注意以下細節:
- delete_profile: 您的個人檔案資訊,包含像是您的頭像圖片、描述,以及住家位置將會移除。
- delete_display_name: 您的顯示名稱將會移除,並且會被其他帳號拿來重覆使用。
- retain_caveats: 然而,即使您的帳號被刪除後,一些關於您的資訊仍會繼續保留在 OpenStreetMap 裡:
- retain_edits: 若有您對於地圖資料庫的編輯次數,這將會繼續保留。
- retain_traces: 若有您上傳過的軌跡資料內容,這將會繼續保留。
- retain_diary_entries: 若有您的日記項目與日記評論內容,這將會繼續保留。
- retain_notes: 若有您的地圖註記與註記評論內容,這將會繼續保留;不過會隱藏起來。
- retain_changeset_discussions: 若有您的變更集討論,這將會繼續保留。
- retain_email: 您的電子郵件地址將會繼續保留。
- recent_editing_html: 因為您最近有作過編輯,目前無法刪除您的帳號。在 %{time} 後才可刪除。
- confirm_delete: 您確定嗎?
+ delete_introduction: 你可以使用下方按鈕來刪除你的 OpenStreetMap 帳號。並請留意以下細節:
+ delete_profile: 你的個人檔案資訊,包含:例如你的頭像圖片、描述,以及住家位置將會移除。
+ delete_display_name: 你的顯示名稱將會移除,並且會被其他帳號拿來重覆使用。
+ retain_caveats: 然而,即使你的帳號被刪除後,一些關於你的資訊仍會繼續保留在 OpenStreetMap 裡:
+ retain_edits: 你對於地圖資料庫的編輯次數,假如存在,這將會繼續保留。
+ retain_traces: 若有你上傳過的軌跡資料內容,這將會繼續保留。
+ retain_diary_entries: 若有你的日誌項目與日誌評論內容,這將會繼續保留。
+ retain_notes: 若有你的地圖註記與註記評論內容,這將會繼續保留;不過會隱藏起來。
+ retain_changeset_discussions: 若有你的變更集討論,這將會繼續保留。
+ retain_email: 你的電子郵件地址將會繼續保留。
+ recent_editing_html: 因為你最近進行過編輯,目前無法刪除你的帳號。在 %{time} 後才可刪除。
+ confirm_delete: 你確定嗎?
cancel: 取消
accounts:
edit:
heading: 公開編輯
enabled: 已開啟。非匿名且可以編輯資料。
enabled link text: 這是什麼?
- disabled: 已停用且不能編輯資料,所有先前的編輯都會成為匿名的。
+ disabled: 已停用且不能編輯資料,所有你先前的編輯都會成為匿名的。
disabled link text: 為什麼我不能編輯?
contributor terms:
heading: 貢獻者條款
- agreed: 您已同意新的貢獻者條款。
- not yet agreed: 您未同意新的貢獻者條款。
+ agreed: 你已同意新的貢獻者條款。
+ not yet agreed: 你未同意新的貢獻者條款。
review link text: 請跟隨此連結,方便你檢視並接受新的貢獻者條款。
- agreed_with_pd: 您亦同意將您的編輯放到公共領域
+ agreed_with_pd: 你亦同意將你的編輯放到公共領域
link text: 這是什麼?
save changes button: 儲存變更
delete_account: 刪除帳號…
go_public:
heading: 公開編輯
- currently_not_public: 目前你的編輯都是暱名的,其他人無法寄給你訊息或是知道你的位置。要讓別人知道你編輯什麼,以及透過網站聯繫你,你點下面的按鈕。
+ currently_not_public: 目前你的編輯都是暱名的,其他人無法寄給你訊息或是知道你的位置。要讓別人知道你編輯什麼,以及透過網站聯繫你,請你點以下的按鈕。
only_public_can_edit: 自從 API 0.6 版本上線,只有公共帳號的使用者可以編輯地圖資料。
find_out_why_html: (%{link})。
- find_out_why: 找出來為什麼
- email_not_revealed: 你的電子郵件地址不會揭露公開。
+ find_out_why: 找出原因
+ email_not_revealed: 你的電子郵件地址不會公開洩漏。
not_reversible: 這項操作無法撤銷,所有的新使用者都是預設公開的。
- make_edits_public_button: 將我所有的編輯設為公開
+ make_edits_public_button: 將與我有關的所有的編輯設為公開
update:
- success_confirm_needed: 使用者資訊成功的更新。請檢查您的電子郵件,以確認收到新電子郵件地址的通知。
+ success_confirm_needed: 使用者資訊成功的更新。請檢查你的電子郵件,以便確認收到新電子郵件地址的通知。
success: 使用者資訊已成功更新。
destroy:
success: 帳號已刪除。
version: 版本
redacted_version: 編修版本
in_changeset: 變更集
- anonymous: 匿名
+ anonymous: 匿名使用者
no_comment: (沒有評論)
part_of: 屬於:
part_of_relations:
- one: '%{count} 個關聯'
+ one: 1 個關聯
other: '%{count} 個關聯'
part_of_ways:
one: '%{count} 條路徑'
other: '%{count} 條路徑'
download_xml: 下載 XML
view_history: 檢視歷史
- view_unredacted_history: 查看未編修的歷史
+ view_unredacted_history: 查看未編輯的歷史記錄
view_details: 檢視詳細資料
view_redacted_data: 查看編修資料
- view_redaction_message: 查看編修訊息
+ view_redaction_message: 查看密文訊息
location: 位置:
node:
title_html: 節點:%{name}
discussion: 討論
join_discussion: 登入以參加討論
still_open: 變更集仍為開啟 - 討論要在變更集關閉後才會開啟。
+ subscribe: 訂閱
+ unsubscribe: 取消訂閱
comment_by_html: 來自%{user}%{time_ago}的評論
hidden_comment_by_html: '%{user}%{time_ago}隱藏評論'
+ hide_comment: 隱藏
+ unhide_comment: 取消隱藏
+ comment: 評論
changesetxml: 變更集 XML
osmchangexml: osmChange 格式 XML
paging_nav:
title: '%{user} 的日記|%{title}'
user_title: '%{user} 的日記'
discussion: 討論
+ subscribe: 訂閱
+ unsubscribe: 取消訂閱
leave_a_comment: 留下評論
login_to_leave_a_comment_html: '%{login_link}來留下評論'
login: 登入
all:
title: OpenStreetMap 日記項目
description: OpenStreetMap 使用者最近的日記項目
- comments:
+ subscribe:
+ heading: 訂閱以下日記項目討論?
+ button: 訂閱討論
+ unsubscribe:
+ heading: 取消訂閱以下日記項目討論?
+ button: 取消訂閱討論
+ diary_comments:
+ index:
title: 日記評論由%{user}添加
heading: '%{user}的日記評論'
subheading_html: 日記評論由%{user}添加
comment: 評論
newer_comments: 較新的評論
older_comments: 較舊的評論
- subscribe:
- heading: 訂閱以下日記項目討論?
- button: 訂閱討論
- unsubscribe:
- heading: 取消訂閱以下日記項目討論?
- button: 取消訂閱討論
doorkeeper:
errors:
messages:
commented_note_html: '%{commenter} 在你感興趣的地圖註記評論。該註記在 %{place} 附近。'
closed:
subject_own: '[OpenStreetMap] %{commenter} 解決你其中一筆註記 %{commenter}'
- subject_other: '[OpenStreetMap]%{commenter} 已經解決一筆你興趣的註記'
- your_note: '%{commenter} 已經解決你其中一筆接近 %{place} 的註記。'
- your_note_html: '%{commenter} 已經解決你其中一筆接近 %{place} 的註記。'
- commented_note: '%{commenter} 已經解決一筆你留言過的地圖註記。這筆在 %{place} 附近。'
- commented_note_html: '%{commenter} 已經解決一筆你留言過的地圖註記。這筆在 %{place} 附近。'
+ subject_other: '[OpenStreetMap]%{commenter} 已解決一項你感興趣的註記'
+ your_note: '%{commenter} 已解決你在 %{place} 附近的註記之一。'
+ your_note_html: '%{commenter} 已解決你在 %{place} 附近的註記之一。'
+ commented_note: '%{commenter} 已解決你留言過的地圖註記。該註記在 %{place} 附近。'
+ commented_note_html: '%{commenter} 已解決你留言過的地圖註記。該註記在 %{place} 附近。'
reopened:
subject_own: '[OpenStreetMap] %{commenter} 再次開啟你其中一筆註記。'
subject_other: '[OpenStreetMap] %{commenter} 再次開啟你感興趣的註記。'
commented_note: '%{commenter} 重新開啟了一個您曾評論的地圖註記。該註記位於 %{place} 附近。'
commented_note_html: '%{commenter} 重新開啟了一個您曾評論的地圖註記。該註記位於 %{place} 附近。'
details: 關於註記的更多詳細資料可在 %{url} 找到。
- details_html: 關於註記的更多詳細資料可在 %{url} 找到。
+ details_html: 在%{url}回覆或是瞭解更多有關註記的訊息。
changeset_comment_notification:
description: 'OpenStreetMap 變更集 #%{id}'
hi: 嗨 %{to_user},
partial_changeset_with_comment: 評論 "%{changeset_comment}"
partial_changeset_with_comment_html: 評論 "%{changeset_comment}"
partial_changeset_without_comment: 沒有評論
- details: 關於變更集的詳情可在 %{url} 找到。
- details_html: 關於變更集的詳情可在 %{url} 找到。
+ details: 在 %{url} 回覆或瞭解更多有關於變更集的資訊。
+ details_html: 在 %{url} 回覆或瞭解更多有關變更集的資訊。
unsubscribe: 您可以在 %{url} 取消訂閱此變更集的更新內容。
unsubscribe_html: 您可以在 %{url} 取消訂閱此變更集的更新內容。
confirmations:
index:
js_1: 您使用不支援 JavaScript 的瀏覽器,或者停用了 JavaScript。
js_2: OpenStreetMap 使用 JavaScript 讓地圖更平順。
- permalink: 固定連結
- shortlink: 簡短連結
- createnote: 新增註記
license:
copyright: 版權所有,由 OpenStreetMap 及貢獻者根據開放的授權協議提供
remote_failed: 編輯失敗 - 請確定已載入 JOSM 或 Merkaartor 並開啟遠端控制選項
search: 搜尋
get_directions: 取得方向指引
get_directions_title: 尋找兩點之間的路線
- from: 來自
+ from: 從
to: 到
where_am_i: 這是哪裡?
where_am_i_title: 使用搜尋引擎描述目前的位置
application:
basic_auth_disabled: HTTP 基本認證已停用:%{link}
oauth_10a_disabled: OAuth 1.0 與 1.0a 已停用:%{link}
- auth_disabled_link: https://wiki.openstreetmap.org/wiki/2024_authentication_update
permission_denied: 您沒有權限來存取該操作。
require_cookies:
cookies_needed: 您似乎已停用 cookies - 請在瀏覽器中開啟 cookies,然後繼續。
remove as friend: 移除好友
add as friend: 加入為好友
mapper since: 註冊為製圖者日期:
+ last map edit: 最後地圖編輯於:
+ no activity yet: 尚無活動
uid: 使用者 ID:
ct status: 貢獻者條款:
ct undecided: 未決定
report_link_html: 如果此註記含有需要移除的敏感資訊,您可以%{link}。
other_problems_resolve: 對於註記的所有其他問題,您可以依據評論內容來自行處理。
other_problems_resolved: 對於其他類型回報,解決已經足夠了。
- disappear_date_html: 已經解決的註記會從地圖的 %{disappear_in} 消失
+ disappear_date_html: 已解決的註記會在%{disappear_in}後從地圖中消失
new:
title: 新增註記
intro: 發現錯誤或缺少些什麼東西嗎?請告訴其他地圖製作者以便於我們處理。將標記移動到正確的位置並輸入註記,以解釋問題。
queryfeature_tooltip: 查詢圖徵
queryfeature_disabled_tooltip: 放大地圖以查询圖徵
embed_html_disabled: HTML 內嵌對此地圖圖層不可用
- changesets:
- show:
- comment: 評論
- subscribe: 訂閱
- unsubscribe: 取消訂閱
- hide_comment: 隱藏
- unhide_comment: 取消隱藏
edit_help: 將地圖移至你想編輯的位置並放大,然後按這裡。
directions:
ascend: 上升
get "/diary/:language/rss" => "diary_entries#rss", :defaults => { :format => :rss }
get "/diary/rss" => "diary_entries#rss", :defaults => { :format => :rss }
get "/user/:display_name/diary/comments/:page", :page => /[1-9][0-9]*/, :to => redirect(:path => "/user/%{display_name}/diary/comments")
- get "/user/:display_name/diary/comments" => "diary_entries#comments", :as => :diary_comments
+ get "/user/:display_name/diary/comments" => "diary_comments#index", :as => :diary_comments
get "/user/:display_name/diary" => "diary_entries#index"
get "/diary/:language" => "diary_entries#index"
scope "/user/:display_name" do
post "/user/:display_name/diary/:id/newcomment" => "diary_entries#comment", :id => /\d+/, :as => :comment_diary_entry
post "/user/:display_name/diary/:id/hide" => "diary_entries#hide", :id => /\d+/, :as => :hide_diary_entry
post "/user/:display_name/diary/:id/unhide" => "diary_entries#unhide", :id => /\d+/, :as => :unhide_diary_entry
- post "/user/:display_name/diary/:id/hidecomment/:comment" => "diary_entries#hidecomment", :id => /\d+/, :comment => /\d+/, :as => :hide_diary_comment
- post "/user/:display_name/diary/:id/unhidecomment/:comment" => "diary_entries#unhidecomment", :id => /\d+/, :comment => /\d+/, :as => :unhide_diary_comment
+ post "/user/:display_name/diary/:id/hidecomment/:comment" => "diary_comments#hide", :id => /\d+/, :comment => /\d+/, :as => :hide_diary_comment
+ post "/user/:display_name/diary/:id/unhidecomment/:comment" => "diary_comments#unhide", :id => /\d+/, :comment => /\d+/, :as => :unhide_diary_comment
match "/user/:display_name/diary/:id/subscribe" => "diary_entries#subscribe", :via => [:get, :post], :as => :diary_entry_subscribe, :id => /\d+/
match "/user/:display_name/diary/:id/unsubscribe" => "diary_entries#unsubscribe", :via => [:get, :post], :as => :diary_entry_unsubscribe, :id => /\d+/
days_to_max_changes: 7
importer_changes_per_hour: 1000000
moderator_changes_per_hour: 1000000
+# Size limit for changes
+min_size_limit: 10000000
+initial_size_limit: 30000000
+max_size_limit: 5400000000
+days_to_max_size_limit: 28
+importer_size_limit: 5400000000
+moderator_size_limit: 5400000000
# Domain for handling message replies
#messages_domain: "messages.openstreetmap.org"
# MaxMind GeoIPv2 database
--- /dev/null
+class AddNotesAndDiaryCommentsCounterCaches < ActiveRecord::Migration[7.1]
+ def self.up
+ add_column :users, :diary_comments_count, :integer, :default => 0
+ add_column :users, :note_comments_count, :integer, :default => 0
+
+ users_with_diary_comments = DiaryComment.distinct.pluck(:user_id)
+ users_with_diary_comments.each do |user_id|
+ User.reset_counters(user_id, :diary_comments)
+ end
+
+ users_with_note_comments = NoteComment.where.not(:author_id => nil).distinct.pluck(:author_id)
+ users_with_note_comments.each do |author_id|
+ User.reset_counters(author_id, :note_comments)
+ end
+ end
+
+ def self.down
+ remove_column :users, :diary_comments_count
+ remove_column :users, :note_comments_count
+ end
+end
--- /dev/null
+class ApiSizeLimit < ActiveRecord::Migration[7.1]
+ def up
+ safety_assured do
+ execute DatabaseFunctions::API_SIZE_LIMIT
+ end
+ end
+
+ def down
+ safety_assured do
+ execute "DROP FUNCTION api_size_limit(bigint)"
+ end
+ end
+end
$$;
+--
+-- Name: api_size_limit(bigint); Type: FUNCTION; Schema: public; Owner: -
+--
+
+CREATE FUNCTION public.api_size_limit(user_id bigint) RETURNS bigint
+ LANGUAGE plpgsql STABLE
+ AS $$
+ DECLARE
+ min_size_limit int8 := 10000000;
+ initial_size_limit int8 := 30000000;
+ max_size_limit int8 := 5400000000;
+ days_to_max_size_limit int4 := 28;
+ importer_size_limit int8 := 5400000000;
+ moderator_size_limit int8 := 5400000000;
+ roles text[];
+ last_block timestamp without time zone;
+ first_change timestamp without time zone;
+ active_reports int4;
+ time_since_first_change double precision;
+ size_limit int8;
+ BEGIN
+ SELECT ARRAY_AGG(user_roles.role) INTO STRICT roles FROM user_roles WHERE user_roles.user_id = api_size_limit.user_id;
+
+ IF 'moderator' = ANY(roles) THEN
+ size_limit := moderator_size_limit;
+ ELSIF 'importer' = ANY(roles) THEN
+ size_limit := importer_size_limit;
+ ELSE
+ SELECT user_blocks.created_at INTO last_block FROM user_blocks WHERE user_blocks.user_id = api_size_limit.user_id ORDER BY user_blocks.created_at DESC LIMIT 1;
+
+ IF FOUND THEN
+ SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_size_limit.user_id AND changesets.created_at > last_block ORDER BY changesets.created_at LIMIT 1;
+ ELSE
+ SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_size_limit.user_id ORDER BY changesets.created_at LIMIT 1;
+ END IF;
+
+ IF NOT FOUND THEN
+ first_change := CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
+ END IF;
+
+ SELECT COUNT(*) INTO STRICT active_reports
+ FROM issues INNER JOIN reports ON reports.issue_id = issues.id
+ WHERE issues.reported_user_id = api_size_limit.user_id AND issues.status = 'open' AND reports.updated_at >= COALESCE(issues.resolved_at, '1970-01-01');
+
+ time_since_first_change := EXTRACT(EPOCH FROM CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - first_change);
+
+ size_limit := max_size_limit * POWER(time_since_first_change, 2) / POWER(days_to_max_size_limit * 24 * 60 * 60, 2);
+ size_limit := GREATEST(initial_size_limit, LEAST(max_size_limit, FLOOR(size_limit)));
+ size_limit := size_limit / POWER(2, active_reports);
+ size_limit := GREATEST(min_size_limit, LEAST(max_size_limit, size_limit));
+ END IF;
+
+ RETURN size_limit;
+ END;
+ $$;
+
+
SET default_tablespace = '';
SET default_table_access_method = heap;
image_use_gravatar boolean DEFAULT false NOT NULL,
auth_provider character varying,
home_tile bigint,
- tou_agreed timestamp without time zone
+ tou_agreed timestamp without time zone,
+ diary_comments_count integer DEFAULT 0,
+ note_comments_count integer DEFAULT 0
);
('23'),
('22'),
('21'),
+('20240618193051'),
+('20240605134916'),
('20240405083825'),
('20240307181018'),
('20240307180830'),
end
end
+ def linear_size
+ if complete?
+ (max_lon - min_lon) + (max_lat - min_lat)
+ else
+ 0
+ end
+ end
+
def complete?
to_a.exclude?(nil)
end
END;
$$ LANGUAGE plpgsql STABLE;
).freeze
+
+ API_SIZE_LIMIT = %(
+ CREATE OR REPLACE FUNCTION api_size_limit(user_id int8)
+ RETURNS int8
+ AS $$
+ DECLARE
+ min_size_limit int8 := #{Settings.min_size_limit};
+ initial_size_limit int8 := #{Settings.initial_size_limit};
+ max_size_limit int8 := #{Settings.max_size_limit};
+ days_to_max_size_limit int4 := #{Settings.days_to_max_size_limit};
+ importer_size_limit int8 := #{Settings.importer_size_limit};
+ moderator_size_limit int8 := #{Settings.moderator_size_limit};
+ roles text[];
+ last_block timestamp without time zone;
+ first_change timestamp without time zone;
+ active_reports int4;
+ time_since_first_change double precision;
+ size_limit int8;
+ BEGIN
+ SELECT ARRAY_AGG(user_roles.role) INTO STRICT roles FROM user_roles WHERE user_roles.user_id = api_size_limit.user_id;
+
+ IF 'moderator' = ANY(roles) THEN
+ size_limit := moderator_size_limit;
+ ELSIF 'importer' = ANY(roles) THEN
+ size_limit := importer_size_limit;
+ ELSE
+ SELECT user_blocks.created_at INTO last_block FROM user_blocks WHERE user_blocks.user_id = api_size_limit.user_id ORDER BY user_blocks.created_at DESC LIMIT 1;
+
+ IF FOUND THEN
+ SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_size_limit.user_id AND changesets.created_at > last_block ORDER BY changesets.created_at LIMIT 1;
+ ELSE
+ SELECT changesets.created_at INTO first_change FROM changesets WHERE changesets.user_id = api_size_limit.user_id ORDER BY changesets.created_at LIMIT 1;
+ END IF;
+
+ IF NOT FOUND THEN
+ first_change := CURRENT_TIMESTAMP AT TIME ZONE 'UTC';
+ END IF;
+
+ SELECT COUNT(*) INTO STRICT active_reports
+ FROM issues INNER JOIN reports ON reports.issue_id = issues.id
+ WHERE issues.reported_user_id = api_size_limit.user_id AND issues.status = 'open' AND reports.updated_at >= COALESCE(issues.resolved_at, '1970-01-01');
+
+ time_since_first_change := EXTRACT(EPOCH FROM CURRENT_TIMESTAMP AT TIME ZONE 'UTC' - first_change);
+
+ size_limit := max_size_limit * POWER(time_since_first_change, 2) / POWER(days_to_max_size_limit * 24 * 60 * 60, 2);
+ size_limit := GREATEST(initial_size_limit, LEAST(max_size_limit, FLOOR(size_limit)));
+ size_limit := size_limit / POWER(2, active_reports);
+ size_limit := GREATEST(min_size_limit, LEAST(max_size_limit, size_limit));
+ END IF;
+
+ RETURN size_limit;
+ END;
+ $$ LANGUAGE plpgsql STABLE;
+ ).freeze
end
# The base class for API Errors.
class APIError < RuntimeError
def initialize(message = "Generic API Error")
- super(message)
+ super
end
def status
end
end
+ # Raised when a size limit is exceeded
+ class APISizeLimitExceeded < APIError
+ def initialize
+ super("Size limit exceeded")
+ end
+
+ def status
+ :payload_too_large
+ end
+ end
+
# Helper methods for going to/from mercator and lat/lng.
class Mercator
include Math
(spammy_phrases * 40)
end
+ def image
+ nil
+ end
+
protected
def simple_format(text)
class Markdown < Base
def to_html
- linkify(sanitize(Kramdown::Document.new(self).to_html), :all)
+ linkify(sanitize(document.to_html), :all)
end
def to_text
to_s
end
+
+ def image
+ return @image if defined? @image
+
+ @image = first_image_element(document.root)&.attr&.[]("src")
+ end
+
+ private
+
+ def document
+ @document ||= Kramdown::Document.new(self)
+ end
+
+ def first_image_element(element)
+ return element if element.type == :img
+
+ element.children.find do |child|
+ nested_image = first_image_element(child)
+ break nested_image if nested_image
+ end
+ end
end
class Text < Base
desc "Update database function definitions"
task :update_functions => :environment do
ActiveRecord::Base.connection.execute DatabaseFunctions::API_RATE_LIMIT
+ ActiveRecord::Base.connection.execute DatabaseFunctions::API_SIZE_LIMIT
end
end
test "diary permissions for a guest" do
ability = Ability.new nil
- [:index, :rss, :show, :comments].each do |action|
+ [:index, :rss, :show].each do |action|
assert ability.can?(action, DiaryEntry), "should be able to #{action} DiaryEntries"
end
- [:create, :edit, :comment, :subscribe, :unsubscribe, :hide, :hidecomment].each do |action|
+ [:index].each do |action|
+ assert ability.can?(action, DiaryComment), "should be able to #{action} DiaryComments"
+ end
+
+ [:create, :edit, :comment, :subscribe, :unsubscribe, :hide, :unhide].each do |action|
assert ability.cannot?(action, DiaryEntry), "should not be able to #{action} DiaryEntries"
end
+
+ [:hide, :unhide].each do |action|
+ assert ability.cannot?(action, DiaryComment), "should not be able to #{action} DiaryComments"
+ end
end
test "note permissions for a guest" do
test "Diary permissions" do
ability = Ability.new create(:user)
- [:index, :rss, :show, :comments, :create, :edit, :comment, :subscribe, :unsubscribe].each do |action|
+ [:index, :rss, :show, :create, :edit, :comment, :subscribe, :unsubscribe].each do |action|
assert ability.can?(action, DiaryEntry), "should be able to #{action} DiaryEntries"
end
- [:hide, :hidecomment].each do |action|
+ [:index].each do |action|
+ assert ability.can?(action, DiaryComment), "should be able to #{action} DiaryComments"
+ end
+
+ [:hide, :unhide].each do |action|
assert ability.cannot?(action, DiaryEntry), "should not be able to #{action} DiaryEntries"
+ assert ability.cannot?(action, DiaryComment), "should not be able to #{action} DiaryComment"
end
[:index, :show, :resolve, :ignore, :reopen].each do |action|
assert ability.cannot?(action, UserRole), "should not be able to #{action} UserRoles"
end
- [:hide, :hidecomment].each do |action|
+ [:hide, :unhide].each do |action|
assert ability.can?(action, DiaryEntry), "should be able to #{action} DiaryEntries"
+ assert ability.can?(action, DiaryComment), "should be able to #{action} DiaryComment"
end
end
end
class AdministratorAbilityTest < AbilityTest
test "Diary for an administrator" do
ability = Ability.new create(:administrator_user)
- [:index, :rss, :show, :comments, :create, :edit, :comment, :subscribe, :unsubscribe, :hide, :hidecomment].each do |action|
+ [:index, :rss, :show, :create, :edit, :comment, :subscribe, :unsubscribe, :hide, :unhide].each do |action|
assert ability.can?(action, DiaryEntry), "should be able to #{action} DiaryEntries"
end
+
+ [:index, :hide, :unhide].each do |action|
+ assert ability.can?(action, DiaryComment), "should be able to #{action} DiaryComments"
+ end
end
test "User Roles permissions for an administrator" do
assert_equal "online", js["api"]["status"]["gpx"]
assert_equal Settings.imagery_blacklist.length, js["policy"]["imagery"]["blacklist"].length
end
+
+ def test_capabilities_api_readonly
+ with_settings(:status => "api_readonly") do
+ get api_capabilities_path
+ assert_response :success
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", :count => 1 do
+ assert_select "api", :count => 1 do
+ assert_select "status[database='online']", :count => 1
+ assert_select "status[api='readonly']", :count => 1
+ assert_select "status[gpx='online']", :count => 1
+ end
+ end
+ end
+ end
+
+ def test_capabilities_api_offline
+ with_settings(:status => "api_offline") do
+ get api_capabilities_path
+ assert_response :success
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", :count => 1 do
+ assert_select "api", :count => 1 do
+ assert_select "status[database='online']", :count => 1
+ assert_select "status[api='offline']", :count => 1
+ assert_select "status[gpx='online']", :count => 1
+ end
+ end
+ end
+ end
+
+ def test_capabilities_database_readonly
+ with_settings(:status => "database_readonly") do
+ get api_capabilities_path
+ assert_response :success
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", :count => 1 do
+ assert_select "api", :count => 1 do
+ assert_select "status[database='readonly']", :count => 1
+ assert_select "status[api='readonly']", :count => 1
+ assert_select "status[gpx='readonly']", :count => 1
+ end
+ end
+ end
+ end
+
+ def test_capabilities_database_offline
+ with_settings(:status => "database_offline") do
+ get api_capabilities_path
+ assert_response :success
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", :count => 1 do
+ assert_select "api", :count => 1 do
+ assert_select "status[database='offline']", :count => 1
+ assert_select "status[api='offline']", :count => 1
+ assert_select "status[gpx='offline']", :count => 1
+ end
+ end
+ end
+ end
+
+ def test_capabilities_gpx_offline
+ with_settings(:status => "gpx_offline") do
+ get api_capabilities_path
+ assert_response :success
+ assert_select "osm[version='#{Settings.api_version}'][generator='#{Settings.generator}']", :count => 1 do
+ assert_select "api", :count => 1 do
+ assert_select "status[database='online']", :count => 1
+ assert_select "status[api='online']", :count => 1
+ assert_select "status[gpx='offline']", :count => 1
+ end
+ end
+ end
+ end
end
end
end
def test_upload_large_changeset
- auth_header = basic_authorization_header create(:user).email, "test"
+ user = create(:user)
+ auth_header = basic_authorization_header user.email, "test"
+
+ # create an old changeset to ensure we have the maximum rate limit
+ create(:changeset, :user => user, :created_at => Time.now.utc - 28.days)
# create a changeset
put changeset_create_path, :params => "<osm><changeset/></osm>", :headers => auth_header
diff = <<~CHANGESET
<osmChange>
<modify>
- <node id='#{node.id}' lon='0' lat='0' changeset='#{changeset.id}' version='1'/>
- <node id='#{node.id}' lon='1' lat='0' changeset='#{changeset.id}' version='2'/>
- <node id='#{node.id}' lon='1' lat='1' changeset='#{changeset.id}' version='3'/>
- <node id='#{node.id}' lon='1' lat='2' changeset='#{changeset.id}' version='4'/>
- <node id='#{node.id}' lon='2' lat='2' changeset='#{changeset.id}' version='5'/>
- <node id='#{node.id}' lon='3' lat='2' changeset='#{changeset.id}' version='6'/>
- <node id='#{node.id}' lon='3' lat='3' changeset='#{changeset.id}' version='7'/>
- <node id='#{node.id}' lon='9' lat='9' changeset='#{changeset.id}' version='8'/>
+ <node id='#{node.id}' lon='0.0' lat='0.0' changeset='#{changeset.id}' version='1'/>
+ <node id='#{node.id}' lon='0.1' lat='0.0' changeset='#{changeset.id}' version='2'/>
+ <node id='#{node.id}' lon='0.1' lat='0.1' changeset='#{changeset.id}' version='3'/>
+ <node id='#{node.id}' lon='0.1' lat='0.2' changeset='#{changeset.id}' version='4'/>
+ <node id='#{node.id}' lon='0.2' lat='0.2' changeset='#{changeset.id}' version='5'/>
+ <node id='#{node.id}' lon='0.3' lat='0.2' changeset='#{changeset.id}' version='6'/>
+ <node id='#{node.id}' lon='0.3' lat='0.3' changeset='#{changeset.id}' version='7'/>
+ <node id='#{node.id}' lon='0.9' lat='0.9' changeset='#{changeset.id}' version='8'/>
</modify>
</osmChange>
CHANGESET
diff = <<~CHANGESET
<osmChange>
<create>
- <node id="-1" lon="0" lat="0" changeset="#{changeset.id}" version="1"/>
- <node id="-2" lon="1" lat="1" changeset="#{changeset.id}" version="1"/>
- <node id="-3" lon="2" lat="2" changeset="#{changeset.id}" version="1"/>
+ <node id="-1" lon="0.0" lat="0.0" changeset="#{changeset.id}" version="1"/>
+ <node id="-2" lon="0.1" lat="0.1" changeset="#{changeset.id}" version="1"/>
+ <node id="-3" lon="0.2" lat="0.2" changeset="#{changeset.id}" version="1"/>
<way id="-1" changeset="#{changeset.id}" version="1">
<nd ref="-1"/>
<nd ref="-2"/>
diff = <<~CHANGESET
<osmChange>
<create>
- <node id="-1" lon="0" lat="0" changeset="#{changeset.id}" version="1"/>
- <node id="-2" lon="1" lat="1" changeset="#{changeset.id}" version="1"/>
- <node id="-3" lon="2" lat="2" changeset="#{changeset.id}" version="1"/>
+ <node id="-1" lon="0.0" lat="0.0" changeset="#{changeset.id}" version="1"/>
+ <node id="-2" lon="0.1" lat="0.1" changeset="#{changeset.id}" version="1"/>
+ <node id="-3" lon="0.2" lat="0.2" changeset="#{changeset.id}" version="1"/>
<way id="#{way.id}" changeset="#{changeset.id}" version="1">
<nd ref="-1"/>
<nd ref="-2"/>
diff = <<~CHANGESET
<osmChange>
<create>
- <node id="-1" lon="0" lat="0" changeset="#{changeset.id}" version="1"/>
- <node id="-2" lon="1" lat="1" changeset="#{changeset.id}" version="1"/>
- <node id="-3" lon="2" lat="2" changeset="#{changeset.id}" version="1"/>
+ <node id="-1" lon="0.0" lat="0.0" changeset="#{changeset.id}" version="1"/>
+ <node id="-2" lon="0.1" lat="0.1" changeset="#{changeset.id}" version="1"/>
+ <node id="-3" lon="0.2" lat="0.2" changeset="#{changeset.id}" version="1"/>
<relation id="-1" changeset="#{changeset.id}" version="1">
<member type="node" role="foo" ref="-1"/>
<member type="node" role="foo" ref="-2"/>
diff = <<~CHANGESET
<osmChange>
<create>
- <node id="-1" lon="0" lat="0" changeset="#{changeset.id}" version="1"/>
- <node id="-2" lon="1" lat="1" changeset="#{changeset.id}" version="1"/>
- <node id="-3" lon="2" lat="2" changeset="#{changeset.id}" version="1"/>
+ <node id="-1" lon="0.0" lat="0.0" changeset="#{changeset.id}" version="1"/>
+ <node id="-2" lon="0.1" lat="0.1" changeset="#{changeset.id}" version="1"/>
+ <node id="-3" lon="0.2" lat="0.2" changeset="#{changeset.id}" version="1"/>
<relation id="#{relation.id}" changeset="#{changeset.id}" version="1">
<member type="node" role="foo" ref="-1"/>
<member type="node" role="foo" ref="-2"/>
changeset_id = @response.body.to_i
old_way = create(:way)
- create(:way_node, :way => old_way, :node => create(:node, :lat => 1, :lon => 1))
+ create(:way_node, :way => old_way, :node => create(:node, :lat => 0.1, :lon => 0.1))
diff = XML::Document.new
diff.root = XML::Node.new "osmChange"
modify = XML::Node.new "modify"
xml_old_way = xml_node_for_way(old_way)
nd_ref = XML::Node.new "nd"
- nd_ref["ref"] = create(:node, :lat => 3, :lon => 3).id.to_s
+ nd_ref["ref"] = create(:node, :lat => 0.3, :lon => 0.3).id.to_s
xml_old_way << nd_ref
xml_old_way["changeset"] = changeset_id.to_s
modify << xml_old_way
# check the bbox
changeset = Changeset.find(changeset_id)
- assert_equal 1 * GeoRecord::SCALE, changeset.min_lon, "min_lon should be 1 degree"
- assert_equal 3 * GeoRecord::SCALE, changeset.max_lon, "max_lon should be 3 degrees"
- assert_equal 1 * GeoRecord::SCALE, changeset.min_lat, "min_lat should be 1 degree"
- assert_equal 3 * GeoRecord::SCALE, changeset.max_lat, "max_lat should be 3 degrees"
+ assert_equal 0.1 * GeoRecord::SCALE, changeset.min_lon, "min_lon should be 0.1 degree"
+ assert_equal 0.3 * GeoRecord::SCALE, changeset.max_lon, "max_lon should be 0.3 degrees"
+ assert_equal 0.1 * GeoRecord::SCALE, changeset.min_lat, "min_lat should be 0.1 degree"
+ assert_equal 0.3 * GeoRecord::SCALE, changeset.max_lat, "max_lat should be 0.3 degrees"
end
##
assert_response :too_many_requests, "upload did not hit rate limit"
end
+ ##
+ # test initial size limit
+ def test_upload_initial_size_limit
+ # create a user
+ user = create(:user)
+
+ # create a changeset that puts us near the initial size limit
+ changeset = create(:changeset, :user => user,
+ :min_lat => (-0.5 * GeoRecord::SCALE).round, :min_lon => (0.5 * GeoRecord::SCALE).round,
+ :max_lat => (0.5 * GeoRecord::SCALE).round, :max_lon => (2.5 * GeoRecord::SCALE).round)
+
+ # create authentication header
+ auth_header = basic_authorization_header user.email, "test"
+
+ # simple diff to create a node
+ diff = <<~CHANGESET
+ <osmChange>
+ <create>
+ <node id='-1' lon='0.9' lat='2.9' changeset='#{changeset.id}'>
+ <tag k='foo' v='bar'/>
+ <tag k='baz' v='bat'/>
+ </node>
+ </create>
+ </osmChange>
+ CHANGESET
+
+ # upload it
+ post changeset_upload_path(changeset), :params => diff, :headers => auth_header
+ assert_response :payload_too_large, "upload did not hit size limit"
+ end
+
+ ##
+ # test size limit after one week
+ def test_upload_week_size_limit
+ # create a user
+ user = create(:user)
+
+ # create a changeset to establish our initial edit time
+ create(:changeset, :user => user, :created_at => Time.now.utc - 7.days)
+
+ # create a changeset that puts us near the initial size limit
+ changeset = create(:changeset, :user => user,
+ :min_lat => (-0.5 * GeoRecord::SCALE).round, :min_lon => (0.5 * GeoRecord::SCALE).round,
+ :max_lat => (0.5 * GeoRecord::SCALE).round, :max_lon => (2.5 * GeoRecord::SCALE).round)
+
+ # create authentication header
+ auth_header = basic_authorization_header user.email, "test"
+
+ # simple diff to create a node way and relation using placeholders
+ diff = <<~CHANGESET
+ <osmChange>
+ <create>
+ <node id='-1' lon='35' lat='35' changeset='#{changeset.id}'>
+ <tag k='foo' v='bar'/>
+ <tag k='baz' v='bat'/>
+ </node>
+ </create>
+ </osmChange>
+ CHANGESET
+
+ # upload it
+ post changeset_upload_path(changeset), :params => diff, :headers => auth_header
+ assert_response :payload_too_large, "upload did not hit size limit"
+ end
+
##
# when we make some simple changes we get the same changes back from the
# diff download.
diff = <<~CHANGESET
<osmChange>
<modify>
- <node id='#{node.id}' lon='0' lat='0' changeset='#{changeset_id}' version='1'/>
- <node id='#{node.id}' lon='1' lat='0' changeset='#{changeset_id}' version='2'/>
- <node id='#{node.id}' lon='1' lat='1' changeset='#{changeset_id}' version='3'/>
- <node id='#{node.id}' lon='1' lat='2' changeset='#{changeset_id}' version='4'/>
- <node id='#{node.id}' lon='2' lat='2' changeset='#{changeset_id}' version='5'/>
- <node id='#{node.id}' lon='3' lat='2' changeset='#{changeset_id}' version='6'/>
- <node id='#{node.id}' lon='3' lat='3' changeset='#{changeset_id}' version='7'/>
- <node id='#{node.id}' lon='9' lat='9' changeset='#{changeset_id}' version='8'/>
+ <node id='#{node.id}' lon='0.0' lat='0.0' changeset='#{changeset_id}' version='1'/>
+ <node id='#{node.id}' lon='0.1' lat='0.0' changeset='#{changeset_id}' version='2'/>
+ <node id='#{node.id}' lon='0.1' lat='0.1' changeset='#{changeset_id}' version='3'/>
+ <node id='#{node.id}' lon='0.1' lat='0.2' changeset='#{changeset_id}' version='4'/>
+ <node id='#{node.id}' lon='0.2' lat='0.2' changeset='#{changeset_id}' version='5'/>
+ <node id='#{node.id}' lon='0.3' lat='0.2' changeset='#{changeset_id}' version='6'/>
+ <node id='#{node.id}' lon='0.3' lat='0.3' changeset='#{changeset_id}' version='7'/>
+ <node id='#{node.id}' lon='0.9' lat='0.9' changeset='#{changeset_id}' version='8'/>
</modify>
</osmChange>
CHANGESET
diff = <<~CHANGESET
<osmChange>
<delete>
- <node id='#{node.id}' lon='0' lat='0' changeset='#{changeset_id}' version='1'/>
+ <node id='#{node.id}' lon='0.0' lat='0.0' changeset='#{changeset_id}' version='1'/>
</delete>
<create>
- <node id='-1' lon='9' lat='9' changeset='#{changeset_id}' version='0'/>
- <node id='-2' lon='8' lat='9' changeset='#{changeset_id}' version='0'/>
- <node id='-3' lon='7' lat='9' changeset='#{changeset_id}' version='0'/>
+ <node id='-1' lon='0.9' lat='0.9' changeset='#{changeset_id}' version='0'/>
+ <node id='-2' lon='0.8' lat='0.9' changeset='#{changeset_id}' version='0'/>
+ <node id='-3' lon='0.7' lat='0.9' changeset='#{changeset_id}' version='0'/>
</create>
<modify>
- <node id='#{node2.id}' lon='20' lat='15' changeset='#{changeset_id}' version='1'/>
+ <node id='#{node2.id}' lon='2.0' lat='1.5' changeset='#{changeset_id}' version='1'/>
<way id='#{way.id}' changeset='#{changeset_id}' version='1'>
<nd ref='#{node2.id}'/>
<nd ref='-1'/>
# FIXME: This should really be moded to a integration test due to the with_controller
def test_changeset_bbox
way = create(:way)
- create(:way_node, :way => way, :node => create(:node, :lat => 3, :lon => 3))
+ create(:way_node, :way => way, :node => create(:node, :lat => 0.3, :lon => 0.3))
auth_header = basic_authorization_header create(:user).email, "test"
# add a single node to it
with_controller(NodesController.new) do
- xml = "<osm><node lon='1' lat='2' changeset='#{changeset_id}'/></osm>"
+ xml = "<osm><node lon='0.1' lat='0.2' changeset='#{changeset_id}'/></osm>"
put node_create_path, :params => xml, :headers => auth_header
assert_response :success, "Couldn't create node."
end
# get the bounding box back from the changeset
get changeset_show_path(:id => changeset_id)
assert_response :success, "Couldn't read back changeset."
- assert_select "osm>changeset[min_lon='1.0000000']", 1
- assert_select "osm>changeset[max_lon='1.0000000']", 1
- assert_select "osm>changeset[min_lat='2.0000000']", 1
- assert_select "osm>changeset[max_lat='2.0000000']", 1
+ assert_select "osm>changeset[min_lon='0.1000000']", 1
+ assert_select "osm>changeset[max_lon='0.1000000']", 1
+ assert_select "osm>changeset[min_lat='0.2000000']", 1
+ assert_select "osm>changeset[max_lat='0.2000000']", 1
# add another node to it
with_controller(NodesController.new) do
- xml = "<osm><node lon='2' lat='1' changeset='#{changeset_id}'/></osm>"
+ xml = "<osm><node lon='0.2' lat='0.1' changeset='#{changeset_id}'/></osm>"
put node_create_path, :params => xml, :headers => auth_header
assert_response :success, "Couldn't create second node."
end
# get the bounding box back from the changeset
get changeset_show_path(:id => changeset_id)
assert_response :success, "Couldn't read back changeset for the second time."
- assert_select "osm>changeset[min_lon='1.0000000']", 1
- assert_select "osm>changeset[max_lon='2.0000000']", 1
- assert_select "osm>changeset[min_lat='1.0000000']", 1
- assert_select "osm>changeset[max_lat='2.0000000']", 1
+ assert_select "osm>changeset[min_lon='0.1000000']", 1
+ assert_select "osm>changeset[max_lon='0.2000000']", 1
+ assert_select "osm>changeset[min_lat='0.1000000']", 1
+ assert_select "osm>changeset[max_lat='0.2000000']", 1
# add (delete) a way to it, which contains a point at (3,3)
with_controller(WaysController.new) do
# get the bounding box back from the changeset
get changeset_show_path(:id => changeset_id)
assert_response :success, "Couldn't read back changeset for the third time."
- assert_select "osm>changeset[min_lon='1.0000000']", 1
- assert_select "osm>changeset[max_lon='3.0000000']", 1
- assert_select "osm>changeset[min_lat='1.0000000']", 1
- assert_select "osm>changeset[max_lat='3.0000000']", 1
+ assert_select "osm>changeset[min_lon='0.1000000']", 1
+ assert_select "osm>changeset[max_lon='0.3000000']", 1
+ assert_select "osm>changeset[min_lat='0.1000000']", 1
+ assert_select "osm>changeset[max_lat='0.3000000']", 1
end
##
# FIXME: Move this test to being an integration test since it spans multiple controllers
def test_version
private_user = create(:user, :data_public => false)
- private_node = create(:node, :with_history, :version => 4, :changeset => create(:changeset, :user => private_user))
+ private_node = create(:node, :with_history, :version => 4, :lat => 0, :lon => 0, :changeset => create(:changeset, :user => private_user))
user = create(:user)
- node = create(:node, :with_history, :version => 4, :changeset => create(:changeset, :user => user))
+ node = create(:node, :with_history, :version => 4, :lat => 0, :lon => 0, :changeset => create(:changeset, :user => user))
create_list(:node_tag, 2, :node => node)
# Ensure that the current tags are propagated to the history too
propagate_tags(node, node.old_nodes.last)
# randomly move the node about
3.times do
# move the node somewhere else
- xml_node["lat"] = precision((rand * 180) - 90).to_s
- xml_node["lon"] = precision((rand * 360) - 180).to_s
+ xml_node["lat"] = precision(rand - 0.5).to_s
+ xml_node["lon"] = precision(rand - 0.5).to_s
with_controller(NodesController.new) do
put api_node_path(nodeid), :params => xml_doc.to_s, :headers => auth_header
assert_response :forbidden, "Should have rejected node update"
# randomly move the node about
3.times do
# move the node somewhere else
- xml_node["lat"] = precision((rand * 180) - 90).to_s
- xml_node["lon"] = precision((rand * 360) - 180).to_s
+ xml_node["lat"] = precision(rand - 0.5).to_s
+ xml_node["lon"] = precision(rand - 0.5).to_s
with_controller(NodesController.new) do
put api_node_path(nodeid), :params => xml_doc.to_s, :headers => auth_header
assert_response :success
# box of all its members into the changeset.
def test_tag_modify_bounding_box
relation = create(:relation)
- node1 = create(:node, :lat => 3, :lon => 3)
- node2 = create(:node, :lat => 5, :lon => 5)
+ node1 = create(:node, :lat => 0.3, :lon => 0.3)
+ node2 = create(:node, :lat => 0.5, :lon => 0.5)
way = create(:way)
create(:way_node, :way => way, :node => node1)
create(:relation_member, :relation => relation, :member => way)
create(:relation_member, :relation => relation, :member => node2)
# the relation contains nodes1 and node2 (node1
- # indirectly via the way), so the bbox should be [3,3,5,5].
- check_changeset_modify(BoundingBox.new(3, 3, 5, 5)) do |changeset_id, auth_header|
+ # indirectly via the way), so the bbox should be [0.3,0.3,0.5,0.5].
+ check_changeset_modify(BoundingBox.new(0.3, 0.3, 0.5, 0.5)) do |changeset_id, auth_header|
# add a tag to an existing relation
relation_xml = xml_for_relation(relation)
relation_element = relation_xml.find("//osm/relation").first
# still technically valid.
def test_remove_all_members
relation = create(:relation)
- node1 = create(:node, :lat => 3, :lon => 3)
- node2 = create(:node, :lat => 5, :lon => 5)
+ node1 = create(:node, :lat => 0.3, :lon => 0.3)
+ node2 = create(:node, :lat => 0.5, :lon => 0.5)
way = create(:way)
create(:way_node, :way => way, :node => node1)
create(:relation_member, :relation => relation, :member => way)
create(:relation_member, :relation => relation, :member => node2)
- check_changeset_modify(BoundingBox.new(3, 3, 5, 5)) do |changeset_id, auth_header|
+ check_changeset_modify(BoundingBox.new(0.3, 0.3, 0.5, 0.5)) do |changeset_id, auth_header|
relation_xml = xml_for_relation(relation)
relation_xml
.find("//osm/relation/member")
assert_response :success
assert_select "osm[version]", :count => 0
end
+
+ def test_versions_available_while_offline
+ with_settings(:status => "api_offline") do
+ get api_versions_path
+ assert_response :success
+ assert_select "osm[generator='#{Settings.generator}']", :count => 1 do
+ assert_select "api", :count => 1 do
+ assert_select "version", Settings.api_version
+ end
+ end
+ end
+ end
end
end
--- /dev/null
+require "test_helper"
+
+class DiaryCommentsControllerTest < ActionDispatch::IntegrationTest
+ def setup
+ super
+ # Create the default language for diary entries
+ create(:language, :code => "en")
+ end
+
+ def test_routes
+ assert_routing(
+ { :path => "/user/username/diary/comments", :method => :get },
+ { :controller => "diary_comments", :action => "index", :display_name => "username" }
+ )
+ assert_routing(
+ { :path => "/user/username/diary/1/hidecomment/2", :method => :post },
+ { :controller => "diary_comments", :action => "hide", :display_name => "username", :id => "1", :comment => "2" }
+ )
+ assert_routing(
+ { :path => "/user/username/diary/1/unhidecomment/2", :method => :post },
+ { :controller => "diary_comments", :action => "unhide", :display_name => "username", :id => "1", :comment => "2" }
+ )
+
+ get "/user/username/diary/comments/1"
+ assert_redirected_to "/user/username/diary/comments"
+ end
+
+ def test_index
+ user = create(:user)
+ other_user = create(:user)
+ suspended_user = create(:user, :suspended)
+ deleted_user = create(:user, :deleted)
+
+ # Test a user with no comments
+ get diary_comments_path(:display_name => user.display_name)
+ assert_response :success
+ assert_template :index
+ assert_select "h4", :html => "No diary comments"
+
+ # Test a user with a comment
+ create(:diary_comment, :user => other_user)
+
+ get diary_comments_path(:display_name => other_user.display_name)
+ assert_response :success
+ assert_template :index
+ assert_dom "a[href='#{user_path(other_user)}']", :text => other_user.display_name
+ assert_select "table.table-striped tbody" do
+ assert_select "tr", :count => 1
+ end
+
+ # Test a suspended user
+ get diary_comments_path(:display_name => suspended_user.display_name)
+ assert_response :not_found
+
+ # Test a deleted user
+ get diary_comments_path(:display_name => deleted_user.display_name)
+ assert_response :not_found
+ end
+
+ def test_index_invalid_paged
+ user = create(:user)
+
+ %w[-1 0 fred].each do |id|
+ get diary_comments_path(:display_name => user.display_name, :before => id)
+ assert_redirected_to :controller => :errors, :action => :bad_request
+
+ get diary_comments_path(:display_name => user.display_name, :after => id)
+ assert_redirected_to :controller => :errors, :action => :bad_request
+ end
+ end
+
+ def test_hide
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user)
+ diary_comment = create(:diary_comment, :diary_entry => diary_entry)
+
+ # Try without logging in
+ post hide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_response :forbidden
+ assert DiaryComment.find(diary_comment.id).visible
+
+ # Now try as a normal user
+ session_for(user)
+ post hide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_redirected_to :controller => :errors, :action => :forbidden
+ assert DiaryComment.find(diary_comment.id).visible
+
+ # Try as a moderator
+ session_for(create(:moderator_user))
+ post hide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_redirected_to diary_entry_path(user, diary_entry)
+ assert_not DiaryComment.find(diary_comment.id).visible
+
+ # Reset
+ diary_comment.reload.update(:visible => true)
+
+ # Finally try as an administrator
+ session_for(create(:administrator_user))
+ post hide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_redirected_to diary_entry_path(user, diary_entry)
+ assert_not DiaryComment.find(diary_comment.id).visible
+ end
+
+ def test_unhide
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user)
+ diary_comment = create(:diary_comment, :diary_entry => diary_entry, :visible => false)
+
+ # Try without logging in
+ post unhide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_response :forbidden
+ assert_not DiaryComment.find(diary_comment.id).visible
+
+ # Now try as a normal user
+ session_for(user)
+ post unhide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_redirected_to :controller => :errors, :action => :forbidden
+ assert_not DiaryComment.find(diary_comment.id).visible
+
+ # Now try as a moderator
+ session_for(create(:moderator_user))
+ post unhide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_redirected_to diary_entry_path(user, diary_entry)
+ assert DiaryComment.find(diary_comment.id).visible
+
+ # Reset
+ diary_comment.reload.update(:visible => true)
+
+ # Finally try as an administrator
+ session_for(create(:administrator_user))
+ post unhide_diary_comment_path(user, diary_entry, diary_comment)
+ assert_redirected_to diary_entry_path(user, diary_entry)
+ assert DiaryComment.find(diary_comment.id).visible
+ end
+end
{ :controller => "diary_entries", :action => "rss", :display_name => "username", :format => :rss }
)
- assert_routing(
- { :path => "/user/username/diary/comments", :method => :get },
- { :controller => "diary_entries", :action => "comments", :display_name => "username" }
- )
-
assert_routing(
{ :path => "/diary/new", :method => :get },
{ :controller => "diary_entries", :action => "new" }
{ :path => "/user/username/diary/1/unhide", :method => :post },
{ :controller => "diary_entries", :action => "unhide", :display_name => "username", :id => "1" }
)
- assert_routing(
- { :path => "/user/username/diary/1/hidecomment/2", :method => :post },
- { :controller => "diary_entries", :action => "hidecomment", :display_name => "username", :id => "1", :comment => "2" }
- )
- assert_routing(
- { :path => "/user/username/diary/1/unhidecomment/2", :method => :post },
- { :controller => "diary_entries", :action => "unhidecomment", :display_name => "username", :id => "1", :comment => "2" }
- )
assert_routing(
{ :path => "/user/username/diary/1/subscribe", :method => :get },
{ :controller => "diary_entries", :action => "subscribe", :display_name => "username", :id => "1" }
{ :path => "/user/username/diary/1/unsubscribe", :method => :post },
{ :controller => "diary_entries", :action => "unsubscribe", :display_name => "username", :id => "1" }
)
-
- get "/user/username/diary/comments/1"
- assert_redirected_to "/user/username/diary/comments"
end
def test_new_no_login
end
end
+ def test_show_og_image_with_no_image
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user, :body => "nothing")
+
+ get diary_entry_path(user, diary_entry)
+ assert_response :success
+ assert_dom "head meta[property='og:image']" do
+ assert_dom "> @content", ActionController::Base.helpers.image_url("osm_logo_256.png", :host => root_url)
+ end
+ end
+
+ def test_show_og_image
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user, :body => "![some picture](https://example.com/picture.jpg)")
+
+ get diary_entry_path(user, diary_entry)
+ assert_response :success
+ assert_dom "head meta[property='og:image']" do
+ assert_dom "> @content", "https://example.com/picture.jpg"
+ end
+ end
+
+ def test_show_og_image_with_relative_uri
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user, :body => "![some local picture](/picture.jpg)")
+
+ get diary_entry_path(user, diary_entry)
+ assert_response :success
+ assert_dom "head meta[property='og:image']" do
+ assert_dom "> @content", "#{root_url}picture.jpg"
+ end
+ end
+
+ def test_show_og_image_with_spaces
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user, :body => "![some picture](https://example.com/the picture.jpg)")
+
+ get diary_entry_path(user, diary_entry)
+ assert_response :success
+ assert_dom "head meta[property='og:image']" do
+ assert_dom "> @content", "https://example.com/the%20picture.jpg"
+ end
+ end
+
+ def test_show_og_image_with_relative_uri_and_spaces
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user, :body => "![some local picture](/the picture.jpg)")
+
+ get diary_entry_path(user, diary_entry)
+ assert_response :success
+ assert_dom "head meta[property='og:image']" do
+ assert_dom "> @content", "#{root_url}the%20picture.jpg"
+ end
+ end
+
+ def test_show_og_image_with_invalid_uri
+ user = create(:user)
+ diary_entry = create(:diary_entry, :user => user, :body => "![](:)")
+
+ get diary_entry_path(user, diary_entry)
+ assert_response :success
+ assert_dom "head meta[property='og:image']" do
+ assert_dom "> @content", ActionController::Base.helpers.image_url("osm_logo_256.png", :host => root_url)
+ end
+ end
+
def test_hide
user = create(:user)
diary_entry = create(:diary_entry, :user => user)
assert DiaryEntry.find(diary_entry.id).visible
end
- def test_hidecomment
- user = create(:user)
- diary_entry = create(:diary_entry, :user => user)
- diary_comment = create(:diary_comment, :diary_entry => diary_entry)
-
- # Try without logging in
- post hide_diary_comment_path(user, diary_entry, diary_comment)
- assert_response :forbidden
- assert DiaryComment.find(diary_comment.id).visible
-
- # Now try as a normal user
- session_for(user)
- post hide_diary_comment_path(user, diary_entry, diary_comment)
- assert_redirected_to :controller => :errors, :action => :forbidden
- assert DiaryComment.find(diary_comment.id).visible
-
- # Try as a moderator
- session_for(create(:moderator_user))
- post hide_diary_comment_path(user, diary_entry, diary_comment)
- assert_redirected_to :action => :show, :display_name => user.display_name, :id => diary_entry.id
- assert_not DiaryComment.find(diary_comment.id).visible
-
- # Reset
- diary_comment.reload.update(:visible => true)
-
- # Finally try as an administrator
- session_for(create(:administrator_user))
- post hide_diary_comment_path(user, diary_entry, diary_comment)
- assert_redirected_to :action => :show, :display_name => user.display_name, :id => diary_entry.id
- assert_not DiaryComment.find(diary_comment.id).visible
- end
-
- def test_unhidecomment
- user = create(:user)
- diary_entry = create(:diary_entry, :user => user)
- diary_comment = create(:diary_comment, :diary_entry => diary_entry, :visible => false)
-
- # Try without logging in
- post unhide_diary_comment_path(user, diary_entry, diary_comment)
- assert_response :forbidden
- assert_not DiaryComment.find(diary_comment.id).visible
-
- # Now try as a normal user
- session_for(user)
- post unhide_diary_comment_path(user, diary_entry, diary_comment)
- assert_redirected_to :controller => :errors, :action => :forbidden
- assert_not DiaryComment.find(diary_comment.id).visible
-
- # Now try as a moderator
- session_for(create(:moderator_user))
- post unhide_diary_comment_path(user, diary_entry, diary_comment)
- assert_redirected_to :action => :show, :display_name => user.display_name, :id => diary_entry.id
- assert DiaryComment.find(diary_comment.id).visible
-
- # Reset
- diary_comment.reload.update(:visible => true)
-
- # Finally try as an administrator
- session_for(create(:administrator_user))
- post unhide_diary_comment_path(user, diary_entry, diary_comment)
- assert_redirected_to :action => :show, :display_name => user.display_name, :id => diary_entry.id
- assert DiaryComment.find(diary_comment.id).visible
- end
-
- def test_comments
- user = create(:user)
- other_user = create(:user)
- suspended_user = create(:user, :suspended)
- deleted_user = create(:user, :deleted)
-
- # Test a user with no comments
- get diary_comments_path(:display_name => user.display_name)
- assert_response :success
- assert_template :comments
- assert_select "h4", :html => "No diary comments"
-
- # Test a user with a comment
- create(:diary_comment, :user => other_user)
-
- get diary_comments_path(:display_name => other_user.display_name)
- assert_response :success
- assert_template :comments
- assert_dom "a[href='#{user_path(other_user)}']", :text => other_user.display_name
- assert_select "table.table-striped tbody" do
- assert_select "tr", :count => 1
- end
-
- # Test a suspended user
- get diary_comments_path(:display_name => suspended_user.display_name)
- assert_response :not_found
-
- # Test a deleted user
- get diary_comments_path(:display_name => deleted_user.display_name)
- assert_response :not_found
- end
-
- def test_comments_invalid_paged
- user = create(:user)
-
- %w[-1 0 fred].each do |id|
- get diary_comments_path(:display_name => user.display_name, :before => id)
- assert_redirected_to :controller => :errors, :action => :bad_request
-
- get diary_comments_path(:display_name => user.display_name, :after => id)
- assert_redirected_to :controller => :errors, :action => :bad_request
- end
- end
-
def test_subscribe_page
user = create(:user)
other_user = create(:user)
trait :with_history do
after(:create) do |node, _evaluator|
(1..node.version).each do |n|
- create(:old_node, :node_id => node.id, :version => n, :changeset => node.changeset)
+ create(:old_node, :node_id => node.id, :version => n, :latitude => node.latitude, :longitude => node.longitude, :changeset => node.changeset)
end
# For deleted nodes, make sure the most recent old_node is also deleted.
assert_equal "Test", link[:title]
link = wikipedia_link("wikipedia", "de:Test")
- assert_equal "https://de.wikipedia.org/wiki/de:Test?uselang=en", link[:url]
+ assert_equal "https://de.wikipedia.org/wiki/Test?uselang=en", link[:url]
assert_equal "de:Test", link[:title]
+ link = wikipedia_link("wikipedia:fr", "Portsea")
+ assert_equal "https://fr.wikipedia.org/wiki/Portsea?uselang=en", link[:url]
+ assert_equal "Portsea", link[:title]
+
link = wikipedia_link("wikipedia:fr", "de:Test")
- assert_equal "https://fr.wikipedia.org/wiki/de:Test?uselang=en", link[:url]
+ assert_equal "https://de.wikipedia.org/wiki/Test?uselang=en", link[:url]
assert_equal "de:Test", link[:title]
link = wikipedia_link("wikipedia", "de:Englischer Garten (München)#Japanisches Teehaus")
- assert_equal "https://de.wikipedia.org/wiki/de:Englischer Garten (München)?uselang=en#Japanisches_Teehaus", link[:url]
+ assert_equal "https://de.wikipedia.org/wiki/Englischer_Garten_%28M%C3%BCnchen%29?uselang=en#Japanisches_Teehaus", link[:url]
assert_equal "de:Englischer Garten (München)#Japanisches Teehaus", link[:title]
link = wikipedia_link("wikipedia", "de:Alte Brücke (Heidelberg)#Brückenaffe")
- assert_equal "https://de.wikipedia.org/wiki/de:Alte Brücke (Heidelberg)?uselang=en#Br%C3%BCckenaffe", link[:url]
+ assert_equal "https://de.wikipedia.org/wiki/Alte_Br%C3%BCcke_%28Heidelberg%29?uselang=en#Br%C3%BCckenaffe", link[:url]
assert_equal "de:Alte Brücke (Heidelberg)#Brückenaffe", link[:title]
link = wikipedia_link("wikipedia", "de:Liste der Baudenkmäler in Eichstätt#Brückenstraße 1, Ehemaliges Bauernhaus")
- assert_equal "https://de.wikipedia.org/wiki/de:Liste der Baudenkmäler in Eichstätt?uselang=en#Br%C3%BCckenstra%C3%9Fe_1%2C_Ehemaliges_Bauernhaus", link[:url]
+ assert_equal "https://de.wikipedia.org/wiki/Liste_der_Baudenkm%C3%A4ler_in_Eichst%C3%A4tt?uselang=en#Br%C3%BCckenstra%C3%9Fe_1%2C_Ehemaliges_Bauernhaus", link[:url]
assert_equal "de:Liste der Baudenkmäler in Eichstätt#Brückenstraße 1, Ehemaliges Bauernhaus", link[:title]
+ link = wikipedia_link("wikipedia", "en:Are Years What? (for Marianne Moore)")
+ assert_equal "https://en.wikipedia.org/wiki/Are_Years_What%3F_%28for_Marianne_Moore%29?uselang=en", link[:url]
+ assert_equal "en:Are Years What? (for Marianne Moore)", link[:title]
+
I18n.with_locale "pt-BR" do
link = wikipedia_link("wikipedia", "zh-classical:Test#Section")
- assert_equal "https://zh-classical.wikipedia.org/wiki/zh-classical:Test?uselang=pt-BR#Section", link[:url]
+ assert_equal "https://zh-classical.wikipedia.org/wiki/Test?uselang=pt-BR#Section", link[:url]
assert_equal "zh-classical:Test#Section", link[:title]
end
link = wikipedia_link("subject:wikipedia", "en:Catherine McAuley")
- assert_equal "https://en.wikipedia.org/wiki/en:Catherine McAuley?uselang=en", link[:url]
+ assert_equal "https://en.wikipedia.org/wiki/Catherine_McAuley?uselang=en", link[:url]
assert_equal "en:Catherine McAuley", link[:title]
link = wikipedia_link("foo", "Test")
def test_openid_logo
logo = openid_logo
- assert_match %r{^<img .* src="/images/openid_small.png" />$}, logo
+ assert_match %r{^<img .* src="/images/openid.svg" .* />$}, logo
end
def test_auth_button
assert_select "form > div > input.is-invalid#user_email"
end
- def test_user_create_association_bad_auth_provider
- assert_difference("User.count", 0) do
- assert_no_difference("ActionMailer::Base.deliveries.size") do
- perform_enqueued_jobs do
- post "/user/new",
- :params => { :user => { :email => "test@example.com",
- :display_name => "new_tester",
- :pass_crypt => "testtest",
- :pass_crypt_confirmation => "testtest",
- :auth_provider => "noprovider",
- :auth_uid => "123454321",
- :consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "noprovider", :origin => "/user/new")
- post response.location
- end
- end
- end
- assert_response :not_found
- end
-
- def test_user_create_association_no_auth_uid
- OmniAuth.config.mock_auth[:google] = :invalid_credentials
- assert_difference("User.count", 0) do
- assert_no_difference("ActionMailer::Base.deliveries.size") do
- perform_enqueued_jobs do
- post "/user/new",
- :params => { :user => { :email => "test@example.com",
- :display_name => "new_tester",
- :pass_crypt => "testtest",
- :pass_crypt_confirmation => "testtest",
- :auth_provider => "google",
- :consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "google", :origin => "/user/new")
- post response.location
- end
- end
- end
- follow_redirect!
- assert_redirected_to auth_failure_path(:strategy => "google", :message => "invalid_credentials", :origin => "/user/new")
- end
-
def test_user_create_association_submit_duplicate_email
dup_email = create(:user).email
display_name = "new_tester"
def test_user_create_openid_success
new_email = "newtester-openid@osm.org"
display_name = "new_tester-openid"
+ openid_url = "http://localhost:1000/new.tester"
auth_uid = "http://localhost:1123/new.tester"
OmniAuth.config.add_mock(:openid,
assert_difference("User.count") do
assert_difference("ActionMailer::Base.deliveries.size", 1) do
perform_enqueued_jobs do
- post auth_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
- assert_redirected_to auth_success_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
+ post auth_path(:provider => "openid", :openid_url => openid_url, :origin => "/user/new")
+ assert_redirected_to auth_success_path(:provider => "openid", :openid_url => openid_url, :origin => "/user/new")
follow_redirect!
assert_redirected_to :controller => :users, :action => "new", :nickname => display_name, :email => new_email,
:auth_provider => "openid", :auth_uid => auth_uid
:params => { :user => { :email => new_email,
:display_name => display_name,
:auth_provider => "openid",
- :auth_uid => "http://localhost:1123/new.tester",
+ :auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
- post response.location
- follow_redirect!
end
end
end
def test_user_create_openid_failure
OmniAuth.config.mock_auth[:openid] = :connection_failed
- new_email = "newtester-openid2@osm.org"
- display_name = "new_tester-openid2"
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,
- :auth_provider => "openid",
- :auth_uid => "http://localhost:1123/new.tester",
- :pass_crypt => "",
- :pass_crypt_confirmation => "" } }
- assert_redirected_to auth_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
+ post auth_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
follow_redirect!
assert_redirected_to auth_failure_path(:strategy => "openid", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
end
def test_user_create_openid_redirect
+ openid_url = "http://localhost:1000/new.tester"
auth_uid = "http://localhost:1123/new.tester"
new_email = "redirect_tester_openid@osm.org"
display_name = "redirect_tester_openid"
assert_difference("User.count") do
assert_difference("ActionMailer::Base.deliveries.size", 1) do
perform_enqueued_jobs do
- post auth_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
- assert_redirected_to auth_success_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
+ post auth_path(:provider => "openid", :openid_url => openid_url, :origin => "/user/new")
+ assert_redirected_to auth_success_path(:provider => "openid", :openid_url => openid_url, :origin => "/user/new")
follow_redirect!
assert_redirected_to :controller => :users, :action => "new", :nickname => display_name, :email => new_email,
:auth_provider => "openid", :auth_uid => auth_uid
:auth_provider => "openid",
:auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "openid", :openid_url => "http://localhost:1123/new.tester", :origin => "/user/new")
- follow_redirect!
- assert_redirected_to :controller => :confirmations, :action => :confirm, :display_name => display_name
follow_redirect!
end
end
:auth_uid => auth_uid,
:consider_pd => "1" },
:email_hmac => email_hmac }
- assert_redirected_to auth_path(:provider => "google", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "google")
- follow_redirect!
assert_redirected_to welcome_path
follow_redirect!
end
def test_user_create_google_failure
OmniAuth.config.mock_auth[:google] = :connection_failed
- new_email = "newtester-google2@osm.org"
- display_name = "new_tester-google2"
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,
- :auth_provider => "google",
- :auth_uid => "123454321",
- :pass_crypt => "",
- :pass_crypt_confirmation => "" } }
- assert_redirected_to auth_path(:provider => "google", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "google")
+ post auth_path(:provider => "google", :origin => "/user/new")
+ assert_response :redirect
follow_redirect!
assert_redirected_to auth_failure_path(:strategy => "google", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
:auth_provider => "google",
:auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "google", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "google")
- follow_redirect!
- assert_redirected_to :controller => :confirmations, :action => :confirm, :display_name => display_name
+ assert_response :redirect
follow_redirect!
end
end
:auth_uid => auth_uid,
:consider_pd => "1" },
:email_hmac => email_hmac }
- assert_redirected_to auth_path(:provider => "facebook", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "facebook")
- follow_redirect!
assert_redirected_to welcome_path
follow_redirect!
end
def test_user_create_facebook_failure
OmniAuth.config.mock_auth[:facebook] = :connection_failed
- new_email = "newtester-facebook2@osm.org"
- display_name = "new_tester-facebook2"
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,
- :auth_provider => "facebook",
- :auth_uid => "123454321",
- :pass_crypt => "",
- :pass_crypt_confirmation => "" } }
- assert_redirected_to auth_path(:provider => "facebook", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "facebook")
+ post auth_path(:provider => "facebook", :origin => "/user/new")
+ assert_response :redirect
follow_redirect!
assert_redirected_to auth_failure_path(:strategy => "facebook", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
:auth_provider => "facebook",
:auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "facebook", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "facebook")
- follow_redirect!
- assert_redirected_to :controller => :confirmations, :action => :confirm, :display_name => display_name
assert_response :redirect
follow_redirect!
end
:auth_uid => auth_uid,
:consider_pd => "1" },
:email_hmac => email_hmac }
- assert_redirected_to auth_path(:provider => "microsoft", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "microsoft")
- follow_redirect!
assert_redirected_to welcome_path
follow_redirect!
end
def test_user_create_microsoft_failure
OmniAuth.config.mock_auth[:microsoft] = :connection_failed
- new_email = "newtester-microsoft2@osm.org"
- display_name = "new_tester-microsoft2"
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,
- :auth_provider => "microsoft",
- :auth_uid => "123454321",
- :pass_crypt => "",
- :pass_crypt_confirmation => "" } }
- assert_redirected_to auth_path(:provider => "microsoft", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "microsoft")
+ post auth_path(:provider => "microsoft", :origin => "/user/new")
+ assert_response :redirect
follow_redirect!
assert_redirected_to auth_failure_path(:strategy => "microsoft", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
:auth_provider => "microsoft",
:auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "microsoft", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "microsoft")
- follow_redirect!
- assert_redirected_to :controller => :confirmations, :action => :confirm, :display_name => display_name
assert_response :redirect
follow_redirect!
end
:read_ct => 1,
:read_tou => 1,
:email_hmac => email_hmac }
- assert_redirected_to auth_path(:provider => "github", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "github")
- follow_redirect!
assert_redirected_to welcome_path
follow_redirect!
end
def test_user_create_github_failure
OmniAuth.config.mock_auth[:github] = :connection_failed
- new_email = "newtester-github2@osm.org"
- display_name = "new_tester-github2"
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,
- :auth_provider => "github",
- :auth_uid => "123454321",
- :pass_crypt => "",
- :pass_crypt_confirmation => "" } }
- assert_redirected_to auth_path(:provider => "github", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "github")
+ post auth_path(:provider => "github", :origin => "/user/new")
follow_redirect!
assert_redirected_to auth_failure_path(:strategy => "github", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
:auth_provider => "github",
:auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "github", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "github")
- follow_redirect!
- assert_redirected_to :controller => :confirmations, :action => :confirm, :display_name => display_name
assert_response :redirect
follow_redirect!
end
:read_ct => 1,
:read_tou => 1,
:email_hmac => email_hmac }
- assert_redirected_to auth_path(:provider => "wikipedia", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "wikipedia", :origin => "/user/new")
- follow_redirect!
assert_redirected_to welcome_path
follow_redirect!
end
def test_user_create_wikipedia_failure
OmniAuth.config.mock_auth[:wikipedia] = :connection_failed
- new_email = "newtester-wikipedia2@osm.org"
- display_name = "new_tester-wikipedia2"
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,
- :auth_provider => "wikipedia",
- :auth_uid => "123454321",
- :pass_crypt => "",
- :pass_crypt_confirmation => "" } }
- assert_redirected_to auth_path(:provider => "wikipedia", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "wikipedia", :origin => "/user/new")
+ post auth_path(:provider => "wikipedia", :origin => "/user/new")
+ assert_response :redirect
follow_redirect!
assert_redirected_to auth_failure_path(:strategy => "wikipedia", :message => "connection_failed", :origin => "/user/new")
follow_redirect!
:auth_provider => "wikipedia",
:auth_uid => auth_uid,
:consider_pd => "1" } }
- assert_redirected_to auth_path(:provider => "wikipedia", :origin => "/user/new")
- post response.location
- assert_redirected_to auth_success_path(:provider => "wikipedia", :origin => "/user/new")
- follow_redirect!
- assert_redirected_to :controller => :confirmations, :action => :confirm, :display_name => display_name
assert_response :redirect
follow_redirect!
end
assert_equal 141, r.spam_score.round
end
+ def test_text_no_image
+ r = RichText.new("text", "foo https://example.com/ bar")
+ assert_nil r.image
+ end
+
+ def test_html_no_image
+ r = RichText.new("html", "foo <a href='https://example.com/'>bar</a> baz")
+ assert_nil r.image
+ end
+
+ def test_markdown_no_image
+ r = RichText.new("markdown", "foo [bar](https://example.com/) baz")
+ assert_nil r.image
+ end
+
+ def test_markdown_image
+ r = RichText.new("markdown", "foo ![bar](https://example.com/image.jpg) baz")
+ assert_equal "https://example.com/image.jpg", r.image
+ end
+
+ def test_markdown_first_image
+ r = RichText.new("markdown", "foo ![bar1](https://example.com/image1.jpg) baz\nfoo ![bar2](https://example.com/image2.jpg) baz")
+ assert_equal "https://example.com/image1.jpg", r.image
+ end
+
private
def assert_html(richtext, &block)
end
def test_update
- node = create(:node)
- create(:old_node, :node_id => node.id, :version => 1)
+ node = create(:node, :lat => 12.6543, :lon => 65.1234)
+ create(:old_node, :node_id => node.id, :version => 1, :lat => node.lat, :lon => node.lon)
+
node_template = Node.find(node.id)
assert_not_nil node_template
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.6.2.tgz#1816b5f6948029c5eaacb0703b850ee0cb37d8f8"
integrity sha512-pPTNuaAG3QMH+buKyBIGJs3g/S5y0caxw0ygM3YyE6yJFySwiGGSzA+mM3KJ8QQvzeLh3blwgSonkFjgQdxzMw==
-"@eslint/eslintrc@^3.0.2":
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.0.2.tgz#36180f8e85bf34d2fe3ccc2261e8e204a411ab4e"
- integrity sha512-wV19ZEGEMAC1eHgrS7UQPqsdEiCIbTKTasEfcXAigzoXICcqZSjBZEHlZwNVvKg6UBCjSlos84XiLqsRJnIcIg==
+"@eslint/config-array@^0.16.0":
+ version "0.16.0"
+ resolved "https://registry.yarnpkg.com/@eslint/config-array/-/config-array-0.16.0.tgz#bb3364fc39ee84ec3a62abdc4b8d988d99dfd706"
+ integrity sha512-/jmuSd74i4Czf1XXn7wGRWZCuyaUZ330NH1Bek0Pplatt4Sy1S5haN21SCLLdbeKslQ+S0wEJ+++v5YibSi+Lg==
+ dependencies:
+ "@eslint/object-schema" "^2.1.4"
+ debug "^4.3.1"
+ minimatch "^3.0.5"
+
+"@eslint/eslintrc@^3.1.0":
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-3.1.0.tgz#dbd3482bfd91efa663cbe7aa1f506839868207b6"
+ integrity sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==
dependencies:
ajv "^6.12.4"
debug "^4.3.2"
minimatch "^3.1.2"
strip-json-comments "^3.1.1"
-"@eslint/js@9.2.0":
- version "9.2.0"
- resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.2.0.tgz#b0a9123e8e91a3d9a2eed3a04a6ed44fdab639aa"
- integrity sha512-ESiIudvhoYni+MdsI8oD7skpprZ89qKocwRM2KEvhhBJ9nl5MRh7BXU5GTod7Mdygq+AUl+QzId6iWJKR/wABA==
+"@eslint/js@9.5.0":
+ version "9.5.0"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.5.0.tgz#0e9c24a670b8a5c86bff97b40be13d8d8f238045"
+ integrity sha512-A7+AOT2ICkodvtsWnxZP4Xxk3NbZ3VMHd8oihydLRGrJgqqdEz1qSeEgXYyT/Cu8h1TWWsQRejIx48mtjZ5y1w==
-"@humanwhocodes/config-array@^0.13.0":
- version "0.13.0"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748"
- integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==
- dependencies:
- "@humanwhocodes/object-schema" "^2.0.3"
- debug "^4.3.1"
- minimatch "^3.0.5"
+"@eslint/object-schema@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@eslint/object-schema/-/object-schema-2.1.4.tgz#9e69f8bb4031e11df79e03db09f9dbbae1740843"
+ integrity sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==
"@humanwhocodes/module-importer@^1.0.1":
version "1.0.1"
resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
-"@humanwhocodes/object-schema@^2.0.3":
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3"
- integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
-
-"@humanwhocodes/retry@^0.2.3":
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.2.3.tgz#c9aa036d1afa643f1250e83150f39efb3a15a631"
- integrity sha512-X38nUbachlb01YMlvPFojKoiXq+LzZvuSce70KPMPdeM1Rj03k4dR7lDslhbqXn3Ang4EU3+EAmwEAsbrjHW3g==
+"@humanwhocodes/retry@^0.3.0":
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/retry/-/retry-0.3.0.tgz#6d86b8cb322660f03d3f0aa94b99bdd8e172d570"
+ integrity sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==
"@nodelib/fs.scandir@2.1.5":
version "2.1.5"
integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==
eslint@^9.0.0:
- version "9.2.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.2.0.tgz#0700ebc99528753315d78090876911d3cdbf19fe"
- integrity sha512-0n/I88vZpCOzO+PQpt0lbsqmn9AsnsJAQseIqhZFI8ibQT0U1AkEKRxA3EVMos0BoHSXDQvCXY25TUjB5tr8Og==
+ version "9.5.0"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.5.0.tgz#11856034b94a9e1a02cfcc7e96a9f0956963cd2f"
+ integrity sha512-+NAOZFrW/jFTS3dASCGBxX1pkFD0/fsO+hfAkJ4TyYKwgsXZbqzrw+seCYFCcPCYXvnD67tAnglU7GQTz6kcVw==
dependencies:
"@eslint-community/eslint-utils" "^4.2.0"
"@eslint-community/regexpp" "^4.6.1"
- "@eslint/eslintrc" "^3.0.2"
- "@eslint/js" "9.2.0"
- "@humanwhocodes/config-array" "^0.13.0"
+ "@eslint/config-array" "^0.16.0"
+ "@eslint/eslintrc" "^3.1.0"
+ "@eslint/js" "9.5.0"
"@humanwhocodes/module-importer" "^1.0.1"
- "@humanwhocodes/retry" "^0.2.3"
+ "@humanwhocodes/retry" "^0.3.0"
"@nodelib/fs.walk" "^1.2.8"
ajv "^6.12.4"
chalk "^4.0.0"
eslint-scope "^8.0.1"
eslint-visitor-keys "^4.0.0"
espree "^10.0.1"
- esquery "^1.4.2"
+ esquery "^1.5.0"
esutils "^2.0.2"
fast-deep-equal "^3.1.3"
file-entry-cache "^8.0.0"
acorn-jsx "^5.3.2"
eslint-visitor-keys "^4.0.0"
-esquery@^1.4.2:
- version "1.4.2"
- resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.2.tgz#c6d3fee05dd665808e2ad870631f221f5617b1d1"
- integrity sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==
+esquery@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.5.0.tgz#6ce17738de8577694edd7361c57182ac8cb0db0b"
+ integrity sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==
dependencies:
estraverse "^5.1.0"
json-buffer "3.0.1"
leaflet.locatecontrol@^0.81.0:
- version "0.81.0"
- resolved "https://registry.yarnpkg.com/leaflet.locatecontrol/-/leaflet.locatecontrol-0.81.0.tgz#75e92d07c19edade910a2b5a177ac24cef7d10e7"
- integrity sha512-5Dqj6VXVFl1vPquYZW95hQYegvzqSI4eLIpZrBMuHuyoAo5i9y6js3z02TF//XXZByIyTI/XBtlxlZLUM08Pcg==
+ version "0.81.1"
+ resolved "https://registry.yarnpkg.com/leaflet.locatecontrol/-/leaflet.locatecontrol-0.81.1.tgz#8aec3124ef5cdda3476fd9013315789b4e301a45"
+ integrity sha512-ZtsdScGufPw330X3UIaGGjnfQ1NrhLySnlruWufIMnfzsHgQPz0+mSxsCQMVh7QgOBoefCGb/lioSejiaNx1EQ==
leaflet@^1.8.0:
version "1.9.4"
type-check "^0.4.0"
osm-community-index@^5.2.0:
- version "5.6.3"
- resolved "https://registry.yarnpkg.com/osm-community-index/-/osm-community-index-5.6.3.tgz#8c7621683a2a4c1037ddb14d060b8442a3aa15cb"
- integrity sha512-UnJBRbaMPIM3J08CA1crKeAok6c1HYiK6tB8AdnjvrvGNnl2JXPxdztA4Jcb3pbrjq/0q14v1mBr300TmtMwbQ==
+ version "5.7.1"
+ resolved "https://registry.yarnpkg.com/osm-community-index/-/osm-community-index-5.7.1.tgz#2341666c83d14c00ef3d9a90298c96d5e791b56c"
+ integrity sha512-E+Xib5m//WliNq2iqeUXyKqZk7yhZu/vSJbwwyxDAPzcNWxgIMoO0B7cUMeFNckhMQsKM2UuC2BAjWuVfbYf1Q==
dependencies:
diacritics "^1.3.0"