Merge remote-tracking branch 'upstream/pull/2225'
authorTom Hughes <tom@compton.nu>
Thu, 30 May 2019 17:06:58 +0000 (18:06 +0100)
committerTom Hughes <tom@compton.nu>
Thu, 30 May 2019 17:06:58 +0000 (18:06 +0100)
228 files changed:
.rubocop_todo.yml
Gemfile
Gemfile.lock
app/abilities/ability.rb
app/assets/javascripts/leaflet.map.js
app/assets/javascripts/user.js
app/controllers/diary_entries_controller.rb
app/controllers/users_controller.rb
app/models/acl.rb
app/models/changeset.rb
app/models/changeset_comment.rb
app/models/changeset_tag.rb
app/models/diary_comment.rb
app/models/diary_entry.rb
app/models/diary_entry_subscription.rb
app/models/friend.rb
app/models/message.rb
app/models/node.rb
app/models/node_tag.rb
app/models/note.rb
app/models/note_comment.rb
app/models/old_node.rb
app/models/old_node_tag.rb
app/models/old_relation.rb
app/models/old_relation_member.rb
app/models/old_relation_tag.rb
app/models/old_way.rb
app/models/old_way_node.rb
app/models/old_way_tag.rb
app/models/redaction.rb
app/models/relation.rb
app/models/relation_member.rb
app/models/relation_tag.rb
app/models/trace.rb
app/models/tracepoint.rb
app/models/tracetag.rb
app/models/user.rb
app/models/user_block.rb
app/models/user_preference.rb
app/models/user_role.rb
app/models/user_token.rb
app/models/way.rb
app/models/way_node.rb
app/models/way_tag.rb
app/views/diary_entries/_form.html.erb [new file with mode: 0644]
app/views/diary_entries/edit.html.erb
app/views/diary_entries/index.html.erb
app/views/diary_entries/new.html.erb [new file with mode: 0644]
app/views/layouts/_header.html.erb
app/views/site/about.html.erb
app/views/users/show.html.erb
app/views/users/terms.html.erb
config/initializers/strong_migrations.rb [new file with mode: 0644]
config/locales/af.yml
config/locales/aln.yml
config/locales/ar.yml
config/locales/ast.yml
config/locales/az.yml
config/locales/be-Tarask.yml
config/locales/be.yml
config/locales/bg.yml
config/locales/bn.yml
config/locales/br.yml
config/locales/bs.yml
config/locales/ca.yml
config/locales/ce.yml
config/locales/cs.yml
config/locales/cy.yml
config/locales/da.yml
config/locales/de.yml
config/locales/diq.yml
config/locales/dsb.yml
config/locales/el.yml
config/locales/en-GB.yml
config/locales/en.yml
config/locales/eo.yml
config/locales/es.yml
config/locales/et.yml
config/locales/eu.yml
config/locales/fa.yml
config/locales/fi.yml
config/locales/fr.yml
config/locales/fur.yml
config/locales/ga.yml
config/locales/gd.yml
config/locales/gl.yml
config/locales/he.yml
config/locales/hr.yml
config/locales/hsb.yml
config/locales/hu.yml
config/locales/ia.yml
config/locales/id.yml
config/locales/is.yml
config/locales/it.yml
config/locales/ja.yml
config/locales/ka.yml
config/locales/kab.yml
config/locales/km.yml
config/locales/ko.yml
config/locales/ku-Latn.yml
config/locales/lb.yml
config/locales/lt.yml
config/locales/lv.yml
config/locales/mk.yml
config/locales/mr.yml
config/locales/ms.yml
config/locales/nb.yml
config/locales/ne.yml
config/locales/nl.yml
config/locales/nn.yml
config/locales/oc.yml
config/locales/pa.yml
config/locales/pl.yml
config/locales/pt-BR.yml
config/locales/pt-PT.yml
config/locales/ro.yml
config/locales/ru.yml
config/locales/scn.yml
config/locales/sk.yml
config/locales/sl.yml
config/locales/sq.yml
config/locales/sr-Latn.yml
config/locales/sr.yml
config/locales/sv.yml
config/locales/ta.yml
config/locales/te.yml
config/locales/th.yml
config/locales/tl.yml
config/locales/tr.yml
config/locales/uk.yml
config/locales/vi.yml
config/locales/zh-CN.yml
config/locales/zh-TW.yml
config/routes.rb
config/settings.yml
config/settings/test.yml
db/migrate/20181020114000_add_user_tou_agreed.rb [new file with mode: 0644]
db/migrate/20190518115041_add_acl_indexes.rb [new file with mode: 0644]
db/structure.sql
public/robots.txt
test/controllers/diary_entries_controller_test.rb
test/controllers/users_controller_test.rb
test/integration/user_creation_test.rb
test/integration/user_diaries_test.rb
test/system/diary_entry_test.rb
vendor/assets/iD/iD.css.erb
vendor/assets/iD/iD.js
vendor/assets/iD/iD/img/community-sprite.svg
vendor/assets/iD/iD/img/fa-sprite.svg
vendor/assets/iD/iD/img/iD-sprite.svg
vendor/assets/iD/iD/img/temaki-sprite.svg
vendor/assets/iD/iD/img/tnp-sprite.svg [new file with mode: 0644]
vendor/assets/iD/iD/locales/af.json
vendor/assets/iD/iD/locales/ar.json
vendor/assets/iD/iD/locales/ast.json
vendor/assets/iD/iD/locales/bg.json
vendor/assets/iD/iD/locales/bn.json
vendor/assets/iD/iD/locales/bs.json
vendor/assets/iD/iD/locales/ca.json
vendor/assets/iD/iD/locales/ckb.json
vendor/assets/iD/iD/locales/cs.json
vendor/assets/iD/iD/locales/cy.json
vendor/assets/iD/iD/locales/da.json
vendor/assets/iD/iD/locales/de.json
vendor/assets/iD/iD/locales/dv.json
vendor/assets/iD/iD/locales/el.json
vendor/assets/iD/iD/locales/en-AU.json
vendor/assets/iD/iD/locales/en-GB.json
vendor/assets/iD/iD/locales/en.json
vendor/assets/iD/iD/locales/eo.json
vendor/assets/iD/iD/locales/es.json
vendor/assets/iD/iD/locales/et.json
vendor/assets/iD/iD/locales/eu.json
vendor/assets/iD/iD/locales/fa.json
vendor/assets/iD/iD/locales/fi.json
vendor/assets/iD/iD/locales/fr.json
vendor/assets/iD/iD/locales/gl.json
vendor/assets/iD/iD/locales/gu.json
vendor/assets/iD/iD/locales/he.json
vendor/assets/iD/iD/locales/hi.json
vendor/assets/iD/iD/locales/hr.json
vendor/assets/iD/iD/locales/hu.json
vendor/assets/iD/iD/locales/hy.json
vendor/assets/iD/iD/locales/id.json
vendor/assets/iD/iD/locales/is.json
vendor/assets/iD/iD/locales/it.json
vendor/assets/iD/iD/locales/ja.json
vendor/assets/iD/iD/locales/kn.json
vendor/assets/iD/iD/locales/ko.json
vendor/assets/iD/iD/locales/ku.json
vendor/assets/iD/iD/locales/lt.json
vendor/assets/iD/iD/locales/lv.json
vendor/assets/iD/iD/locales/mg.json
vendor/assets/iD/iD/locales/mk.json
vendor/assets/iD/iD/locales/ml.json
vendor/assets/iD/iD/locales/ms.json
vendor/assets/iD/iD/locales/ne.json
vendor/assets/iD/iD/locales/nl.json
vendor/assets/iD/iD/locales/no.json
vendor/assets/iD/iD/locales/pap.json [new file with mode: 0644]
vendor/assets/iD/iD/locales/pl.json
vendor/assets/iD/iD/locales/pt-BR.json
vendor/assets/iD/iD/locales/pt.json
vendor/assets/iD/iD/locales/ro.json
vendor/assets/iD/iD/locales/ru.json
vendor/assets/iD/iD/locales/si.json
vendor/assets/iD/iD/locales/sk.json
vendor/assets/iD/iD/locales/sl.json
vendor/assets/iD/iD/locales/so.json
vendor/assets/iD/iD/locales/sq.json
vendor/assets/iD/iD/locales/sr.json
vendor/assets/iD/iD/locales/sv.json
vendor/assets/iD/iD/locales/ta.json
vendor/assets/iD/iD/locales/te.json
vendor/assets/iD/iD/locales/th.json
vendor/assets/iD/iD/locales/tl.json
vendor/assets/iD/iD/locales/tr.json
vendor/assets/iD/iD/locales/uk.json
vendor/assets/iD/iD/locales/vi.json
vendor/assets/iD/iD/locales/yue.json
vendor/assets/iD/iD/locales/zh-CN.json
vendor/assets/iD/iD/locales/zh-HK.json
vendor/assets/iD/iD/locales/zh-TW.json
vendor/assets/iD/iD/locales/zh.json
vendor/assets/iD/iD/mapillary-js/mapillary.js
vendor/assets/iD/iD/mapillary-js/mapillary.js.map
vendor/assets/iD/iD/mapillary-js/mapillary.min.css
vendor/assets/iD/iD/mapillary-js/mapillary.min.js

index b2cc901b0959f1888f03e33b531ffce6d2d57210..d63584223f2dba242dbd7f469aeb63b1306478e0 100644 (file)
@@ -40,7 +40,7 @@ Metrics/AbcSize:
 # Configuration parameters: CountComments, ExcludedMethods.
 # ExcludedMethods: refine
 Metrics/BlockLength:
-  Max: 262
+  Max: 263
 
 # Offense count: 11
 # Configuration parameters: CountBlocks.
@@ -73,7 +73,7 @@ Metrics/ParameterLists:
 
 # Offense count: 72
 Metrics/PerceivedComplexity:
-  Max: 23
+  Max: 25
 
 # Offense count: 6
 Naming/AccessorMethodName:
diff --git a/Gemfile b/Gemfile
index 75b8f7bdc4ba6e8c5bb3d7706aeee0c93c340c0b..073ccb5a66dab3ad01e863d5d60e3ae569b46df4 100644 (file)
--- a/Gemfile
+++ b/Gemfile
@@ -61,6 +61,7 @@ gem "rack-cors"
 gem "rails-i18n", "~> 4.0.0"
 gem "record_tag_helper"
 gem "rinku", ">= 2.0.6", :require => "rails_rinku"
+gem "strong_migrations"
 gem "validates_email_format_of", ">= 1.5.1"
 
 # Native OSM extensions
index 7b871ff7cfb28b5503382118e232e52556056815..f02596102782a0370e06194ca208f5d2379c847c 100644 (file)
@@ -2,7 +2,7 @@ GEM
   remote: https://rubygems.org/
   specs:
     SystemTimer (1.2.3)
-    aasm (5.0.3)
+    aasm (5.0.5)
       concurrent-ruby (~> 1.0)
     actioncable (5.2.3)
       actionpack (= 5.2.3)
@@ -125,7 +125,7 @@ GEM
       activerecord (>= 3.0, < 5.3)
       delayed_job (>= 3.0, < 5)
     docile (1.3.1)
-    dry-configurable (0.8.2)
+    dry-configurable (0.8.3)
       concurrent-ruby (~> 1.0)
       dry-core (~> 0.4, >= 0.4.7)
     dry-container (0.7.0)
@@ -146,7 +146,7 @@ GEM
       dry-equalizer (~> 0.2)
       dry-inflector (~> 0.1, >= 0.1.2)
       dry-logic (~> 0.5, >= 0.5)
-    dry-validation (0.13.1)
+    dry-validation (0.13.3)
       concurrent-ruby (~> 1.0)
       dry-configurable (~> 0.1, >= 0.1.3)
       dry-core (~> 0.2, >= 0.2.1)
@@ -176,34 +176,34 @@ GEM
     fakefs (0.20.1)
     faraday (0.15.4)
       multipart-post (>= 1.2, < 3)
-    ffi (1.10.0)
-    fspath (3.1.0)
+    ffi (1.11.1)
+    fspath (3.1.1)
     gd2-ffij (0.3.0)
       ffi (>= 1.0.0)
     geoip (1.6.4)
     globalid (0.4.2)
       activesupport (>= 4.2.0)
-    hashdiff (0.3.9)
+    hashdiff (0.4.0)
     hashie (3.6.0)
     html_tokenizer (0.0.7)
     htmlentities (4.3.4)
     http_accept_language (2.0.5)
     i18n (0.9.5)
       concurrent-ruby (~> 1.0)
-    i18n-js (3.2.1)
+    i18n-js (3.2.3)
       i18n (>= 0.6.6)
-    image_optim (0.26.3)
+    image_optim (0.26.4)
       exifr (~> 1.2, >= 1.2.2)
       fspath (~> 3.0)
       image_size (>= 1.5, < 3)
       in_threads (~> 1.3)
       progress (~> 3.0, >= 3.0.1)
-    image_optim_rails (0.4.1)
+    image_optim_rails (0.4.2)
       image_optim (~> 0.24)
       rails
       sprockets
-    image_size (2.0.0)
-    in_threads (1.5.1)
+    image_size (2.0.1)
+    in_threads (1.5.2)
     jaro_winkler (1.5.2)
     jquery-rails (4.3.3)
       rails-dom-testing (>= 1, < 3)
@@ -215,7 +215,7 @@ GEM
     jsonify-rails (0.3.2)
       actionpack
       jsonify (< 0.4.0)
-    jwt (2.1.0)
+    jwt (2.2.1)
     kgio (2.11.2)
     kramdown (2.1.0)
     libv8 (3.16.14.19)
@@ -247,7 +247,7 @@ GEM
     msgpack (1.2.10)
     multi_json (1.13.1)
     multi_xml (0.6.0)
-    multipart-post (2.1.0)
+    multipart-post (2.1.1)
     nio4r (2.3.1)
     nokogiri (1.10.3)
       mini_portile2 (~> 2.4.0)
@@ -307,9 +307,9 @@ GEM
       capybara (>= 2.1, < 4)
       cliver (~> 0.3.1)
       websocket-driver (>= 0.2.0)
-    progress (3.5.0)
+    progress (3.5.1)
     psych (3.1.0)
-    public_suffix (3.0.3)
+    public_suffix (3.1.0)
     puma (3.12.1)
     quad_tile (1.0.1)
     r2 (0.2.7)
@@ -363,19 +363,19 @@ GEM
     request_store (1.4.1)
       rack (>= 1.4)
     rinku (2.0.6)
-    rotp (4.1.0)
+    rotp (5.0.0)
       addressable (~> 2.5)
-    rubocop (0.68.1)
+    rubocop (0.70.0)
       jaro_winkler (~> 1.5.1)
       parallel (~> 1.10)
-      parser (>= 2.5, != 2.5.1.1)
+      parser (>= 2.6)
       rainbow (>= 2.2.2, < 4.0)
       ruby-progressbar (~> 1.7)
-      unicode-display_width (>= 1.4.0, < 1.6)
-    rubocop-performance (1.2.0)
+      unicode-display_width (>= 1.4.0, < 1.7)
+    rubocop-performance (1.3.0)
       rubocop (>= 0.68.0)
     ruby-openid (2.7.0)
-    ruby-progressbar (1.10.0)
+    ruby-progressbar (1.10.1)
     ruby_dep (1.5.0)
     safe_yaml (1.0.5)
     sanitize (5.0.0)
@@ -397,7 +397,7 @@ GEM
       json (>= 1.8, < 3)
       simplecov-html (~> 0.10.0)
     simplecov-html (0.10.2)
-    smart_properties (1.13.1)
+    smart_properties (1.14.0)
     sprockets (3.7.2)
       concurrent-ruby (~> 1.0)
       rack (> 1, < 3)
@@ -405,6 +405,8 @@ GEM
       actionpack (>= 4.0)
       activesupport (>= 4.0)
       sprockets (>= 3.0.0)
+    strong_migrations (0.4.0)
+      activerecord (>= 5)
     term-ansicolor (1.7.1)
       tins (~> 1.0)
     terrapin (0.6.0)
@@ -420,7 +422,7 @@ GEM
       thread_safe (~> 0.1)
     uglifier (4.1.20)
       execjs (>= 0.3.0, < 3)
-    unicode-display_width (1.5.0)
+    unicode-display_width (1.6.0)
     validates_email_format_of (1.6.3)
       i18n
     vendorer (0.2.0)
@@ -510,6 +512,7 @@ DEPENDENCIES
   sanitize
   sassc-rails
   secure_headers
+  strong_migrations
   therubyracer
   uglifier (>= 1.3.0)
   validates_email_format_of (>= 1.5.1)
index d2864e452ab975c06ba98c4d2b6ac221f67ee693..1106d843e8e141772ffcee162be7c1148611cca9 100644 (file)
@@ -36,7 +36,7 @@ class Ability
 
       if Settings.status != "database_offline"
         can [:index, :new, :create, :show, :edit, :update, :destroy], ClientApplication
-        can [:create, :edit, :comment, :subscribe, :unsubscribe], DiaryEntry
+        can [:new, :create, :edit, :update, :comment, :subscribe, :unsubscribe], DiaryEntry
         can [:new, :create, :reply, :show, :inbox, :outbox, :mark, :destroy], Message
         can [:close, :reopen], Note
         can [:new, :create], Report
index 1f161ceeaf3f7d5d5c19610be80a7651c8837d9e..fe8d74af5405bff40d7682d3279e820d2c279ab3 100644 (file)
@@ -15,11 +15,12 @@ L.OSM.Map = L.Map.extend({
 
     var copyright = I18n.t("javascripts.map.copyright", { copyright_url: "/copyright" });
     var donate = I18n.t("javascripts.map.donate_link_text", { donate_url: "https://donate.openstreetmap.org" });
+    var terms = I18n.t("javascripts.map.terms", { terms_url: "https://wiki.osmfoundation.org/wiki/Terms_of_Use" });
 
     this.baseLayers = [];
 
     this.baseLayers.push(new L.OSM.Mapnik({
-      attribution: copyright + " &hearts; " + donate,
+      attribution: copyright + " &hearts; " + donate + ". " + terms,
       code: "M",
       keyid: "mapnik",
       name: I18n.t("javascripts.map.base.standard")
@@ -27,7 +28,7 @@ L.OSM.Map = L.Map.extend({
 
     if (OSM.THUNDERFOREST_KEY) {
       this.baseLayers.push(new L.OSM.CycleMap({
-        attribution: copyright + ". Tiles courtesy of <a href='https://www.thunderforest.com/' target='_blank'>Andy Allan</a>",
+        attribution: copyright + ". Tiles courtesy of <a href='https://www.thunderforest.com/' target='_blank'>Andy Allan</a>. " + terms,
         apikey: OSM.THUNDERFOREST_KEY,
         code: "C",
         keyid: "cyclemap",
@@ -35,7 +36,7 @@ L.OSM.Map = L.Map.extend({
       }));
 
       this.baseLayers.push(new L.OSM.TransportMap({
-        attribution: copyright + ". Tiles courtesy of <a href='https://www.thunderforest.com/' target='_blank'>Andy Allan</a>",
+        attribution: copyright + ". Tiles courtesy of <a href='https://www.thunderforest.com/' target='_blank'>Andy Allan</a>. " + terms,
         apikey: OSM.THUNDERFOREST_KEY,
         code: "T",
         keyid: "transportmap",
@@ -44,7 +45,7 @@ L.OSM.Map = L.Map.extend({
     }
 
     this.baseLayers.push(new L.OSM.HOT({
-      attribution: copyright + ". Tiles style by <a href='https://www.hotosm.org/' target='_blank'>Humanitarian OpenStreetMap Team</a> hosted by <a href='https://openstreetmap.fr/' target='_blank'>OpenStreetMap France</a>",
+      attribution: copyright + ". Tiles style by <a href='https://www.hotosm.org/' target='_blank'>Humanitarian OpenStreetMap Team</a> hosted by <a href='https://openstreetmap.fr/' target='_blank'>OpenStreetMap France</a>. " + terms,
       code: "H",
       keyid: "hot",
       name: I18n.t("javascripts.map.base.hot")
index f898455b5815feab5fc2e0c76849687f80f829aa..69cc259f0c9e0195ecf5157ebb8d20d3e7703cac 100644 (file)
@@ -124,4 +124,12 @@ $(document).ready(function () {
     $("#contributorTerms").html("<img src='" + OSM.SEARCHING + "' />");
     $("#contributorTerms").load(url);
   });
+
+  $("#read_ct").on("click", function () {
+    $("#continue").prop("disabled", !($(this).prop("checked") && $("#read_tou").prop("checked")));
+  });
+
+  $("#read_tou").on("click", function () {
+    $("#continue").prop("disabled", !($(this).prop("checked") && $("#read_ct").prop("checked")));
+  });
 });
index fb1e7b702a6aa92250f24eb914be3633c4ca4cfc..1e113e09f8df406a36473be4b5b281019af044ae 100644 (file)
@@ -8,38 +8,40 @@ class DiaryEntriesController < ApplicationController
   authorize_resource
 
   before_action :lookup_user, :only => [:show, :comments]
-  before_action :check_database_writable, :only => [:new, :edit, :comment, :hide, :hidecomment, :subscribe, :unsubscribe]
-  before_action :allow_thirdparty_images, :only => [:new, :edit, :index, :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]
 
   def new
     @title = t "diary_entries.new.title"
 
-    if request.post?
-      @diary_entry = DiaryEntry.new(entry_params)
-      @diary_entry.user = current_user
+    default_lang = current_user.preferences.where(:k => "diary.default_language").first
+    lang_code = default_lang ? default_lang.v : current_user.preferred_language
+    @diary_entry = DiaryEntry.new(entry_params.merge(:language_code => lang_code))
+    set_map_location
+    render :action => "new"
+  end
 
-      if @diary_entry.save
-        default_lang = current_user.preferences.where(:k => "diary.default_language").first
-        if default_lang
-          default_lang.v = @diary_entry.language_code
-          default_lang.save!
-        else
-          current_user.preferences.create(:k => "diary.default_language", :v => @diary_entry.language_code)
-        end
+  def create
+    @title = t "diary_entries.new.title"
 
-        # Subscribe user to diary comments
-        @diary_entry.subscriptions.create(:user => current_user)
+    @diary_entry = DiaryEntry.new(entry_params)
+    @diary_entry.user = current_user
 
-        redirect_to :action => "index", :display_name => current_user.display_name
+    if @diary_entry.save
+      default_lang = current_user.preferences.where(:k => "diary.default_language").first
+      if default_lang
+        default_lang.v = @diary_entry.language_code
+        default_lang.save!
       else
-        render :action => "edit"
+        current_user.preferences.create(:k => "diary.default_language", :v => @diary_entry.language_code)
       end
+
+      # Subscribe user to diary comments
+      @diary_entry.subscriptions.create(:user => current_user)
+
+      redirect_to :action => "index", :display_name => current_user.display_name
     else
-      default_lang = current_user.preferences.where(:k => "diary.default_language").first
-      lang_code = default_lang ? default_lang.v : current_user.preferred_language
-      @diary_entry = DiaryEntry.new(entry_params.merge(:language_code => lang_code))
-      set_map_location
-      render :action => "edit"
+      render :action => "new"
     end
   end
 
@@ -47,13 +49,25 @@ class DiaryEntriesController < ApplicationController
     @title = t "diary_entries.edit.title"
     @diary_entry = DiaryEntry.find(params[:id])
 
+    redirect_to diary_entry_path(@diary_entry.user, @diary_entry) if current_user != @diary_entry.user
+
+    set_map_location
+  rescue ActiveRecord::RecordNotFound
+    render :action => "no_such_entry", :status => :not_found
+  end
+
+  def update
+    @title = t "diary_entries.edit.title"
+    @diary_entry = DiaryEntry.find(params[:id])
+
     if current_user != @diary_entry.user
       redirect_to diary_entry_path(@diary_entry.user, @diary_entry)
     elsif params[:diary_entry] && @diary_entry.update(entry_params)
       redirect_to diary_entry_path(@diary_entry.user, @diary_entry)
+    else
+      set_map_location
+      render :action => "edit"
     end
-
-    set_map_location
   rescue ActiveRecord::RecordNotFound
     render :action => "no_such_entry", :status => :not_found
   end
@@ -166,6 +180,10 @@ class DiaryEntriesController < ApplicationController
     else
       @entries = DiaryEntry.joins(:user).where(:users => { :status => %w[active confirmed] })
 
+      # Items can't be flagged as deleted in the RSS format.
+      # For the general feeds, allow a delay before publishing, to help spam fighting
+      @entries = @entries.where("created_at < :time", :time => Settings.diary_feed_delay.hours.ago)
+
       if params[:language]
         @entries = @entries.where(:language_code => params[:language])
         @title = t("diary_entries.feed.language.title", :language_name => Language.find(params[:language]).english_name)
@@ -177,7 +195,6 @@ class DiaryEntriesController < ApplicationController
         @link = url_for :action => "index", :host => Settings.server_url, :protocol => Settings.server_protocol
       end
     end
-
     @entries = @entries.visible.includes(:user).order("created_at DESC").limit(20)
   end
 
index 9b97fa0a1f08af46d9d5657c12c75ad070acc052..e41330c4b40306e808423796c70bf6ef5053a93f 100644 (file)
@@ -36,7 +36,7 @@ class UsersController < ApplicationController
   def save
     @title = t "users.new.title"
 
-    if params[:decline]
+    if params[:decline] || !(params[:read_tou] && params[:read_ct])
       if current_user
         current_user.terms_seen = true
 
@@ -47,12 +47,15 @@ class UsersController < ApplicationController
         else
           redirect_to :action => :account, :display_name => current_user.display_name
         end
-      else
+      elsif params[:decline]
         redirect_to t("users.terms.declined")
+      else
+        redirect_to :action => :terms
       end
     elsif current_user
       unless current_user.terms_agreed?
         current_user.consider_pd = params[:user][:consider_pd]
+        current_user.tou_agreed = Time.now.getutc
         current_user.terms_agreed = Time.now.getutc
         current_user.terms_seen = true
 
@@ -73,6 +76,7 @@ class UsersController < ApplicationController
         current_user.creation_ip = request.remote_ip
         current_user.languages = http_accept_language.user_preferred_languages
         current_user.terms_agreed = Time.now.getutc
+        current_user.tou_agreed = Time.now.getutc
         current_user.terms_seen = true
 
         if current_user.auth_uid.blank?
index 095bad89b942d07e62ee74b18e999100905c456b..cf83e673c0ecfbcfdf48dd82c73d74104eae7516 100644 (file)
@@ -2,7 +2,7 @@
 #
 # Table name: acls
 #
-#  id      :integer          not null, primary key
+#  id      :bigint(8)        not null, primary key
 #  address :inet
 #  k       :string           not null
 #  v       :string
@@ -10,7 +10,9 @@
 #
 # Indexes
 #
-#  acls_k_idx  (k)
+#  acls_k_idx             (k)
+#  index_acls_on_address  (address) USING gist
+#  index_acls_on_domain   (domain)
 #
 
 class Acl < ActiveRecord::Base
index b98d213c713015e205c7eaaaa4ab4853278b41ce..d57086a8e040062af55313a99cbb8b8dd477ab60 100644 (file)
@@ -2,8 +2,8 @@
 #
 # Table name: changesets
 #
-#  id          :integer          not null, primary key
-#  user_id     :integer          not null
+#  id          :bigint(8)        not null, primary key
+#  user_id     :bigint(8)        not null
 #  created_at  :datetime         not null
 #  min_lat     :integer
 #  max_lat     :integer
@@ -14,7 +14,7 @@
 #
 # Indexes
 #
-#  changesets_bbox_idx                (min_lat,max_lat,min_lon,max_lon)
+#  changesets_bbox_idx                (min_lat,max_lat,min_lon,max_lon) USING gist
 #  changesets_closed_at_idx           (closed_at)
 #  changesets_created_at_idx          (created_at)
 #  changesets_user_id_created_at_idx  (user_id,created_at)
index a0ad6f2ea4a17dc5f3db58d3d01c1bb4d646886b..529641c7e94ffb968be8fd31e0532e0e4eb97c81 100644 (file)
@@ -3,8 +3,8 @@
 # Table name: changeset_comments
 #
 #  id           :integer          not null, primary key
-#  changeset_id :integer          not null
-#  author_id    :integer          not null
+#  changeset_id :bigint(8)        not null
+#  author_id    :bigint(8)        not null
 #  body         :text             not null
 #  created_at   :datetime         not null
 #  visible      :boolean          not null
index 942fafb2a34d61646d2e38d9f2fd4044d34c81b5..751029e03995c60835dc1d7eb0ab79a21fb48b3e 100644 (file)
@@ -2,7 +2,7 @@
 #
 # Table name: changeset_tags
 #
-#  changeset_id :integer          not null, primary key
+#  changeset_id :bigint(8)        not null, primary key
 #  k            :string           default(""), not null, primary key
 #  v            :string           default(""), not null
 #
index ade7a64ea317fd38d00dc5b5ef6d5318068bc904..4ae21be8881922e49c799ba0868e93ba0f5e77f5 100644 (file)
@@ -2,9 +2,9 @@
 #
 # Table name: diary_comments
 #
-#  id             :integer          not null, primary key
-#  diary_entry_id :integer          not null
-#  user_id        :integer          not null
+#  id             :bigint(8)        not null, primary key
+#  diary_entry_id :bigint(8)        not null
+#  user_id        :bigint(8)        not null
 #  body           :text             not null
 #  created_at     :datetime         not null
 #  updated_at     :datetime         not null
index d6124199352481895af958f7ae5c25b7e8c02c1a..4affe8b597f1269e92839fa201ba9bc683ee93e7 100644 (file)
@@ -2,8 +2,8 @@
 #
 # Table name: diary_entries
 #
-#  id            :integer          not null, primary key
-#  user_id       :integer          not null
+#  id            :bigint(8)        not null, primary key
+#  user_id       :bigint(8)        not null
 #  title         :string           not null
 #  body          :text             not null
 #  created_at    :datetime         not null
index 6d24c4598c42af2eb22c98732c05f605f1d6a166..6e9a103adafac0d1315ecd1e956ff32cfc0abc2e 100644 (file)
@@ -2,8 +2,8 @@
 #
 # Table name: diary_entry_subscriptions
 #
-#  user_id        :integer          not null, primary key
-#  diary_entry_id :integer          not null, primary key
+#  user_id        :bigint(8)        not null, primary key
+#  diary_entry_id :bigint(8)        not null, primary key
 #
 # Indexes
 #
index 86da87b932ac99b332e95c864f346c12cc8a7ba4..615da10767c1a9c08bf9e2895b8859df195ae239 100644 (file)
@@ -2,9 +2,9 @@
 #
 # Table name: friends
 #
-#  id             :integer          not null, primary key
-#  user_id        :integer          not null
-#  friend_user_id :integer          not null
+#  id             :bigint(8)        not null, primary key
+#  user_id        :bigint(8)        not null
+#  friend_user_id :bigint(8)        not null
 #
 # Indexes
 #
index e3a3ec921b62f25cdfa13713aabb2b2c2490f371..4ab129e9184f6593012bacd98c3de504ca06662c 100644 (file)
@@ -2,13 +2,13 @@
 #
 # Table name: messages
 #
-#  id                :integer          not null, primary key
-#  from_user_id      :integer          not null
+#  id                :bigint(8)        not null, primary key
+#  from_user_id      :bigint(8)        not null
 #  title             :string           not null
 #  body              :text             not null
 #  sent_on           :datetime         not null
 #  message_read      :boolean          default(FALSE), not null
-#  to_user_id        :integer          not null
+#  to_user_id        :bigint(8)        not null
 #  to_user_visible   :boolean          default(TRUE), not null
 #  from_user_visible :boolean          default(TRUE), not null
 #  body_format       :enum             default("markdown"), not null
index be561fb5daa3eb15b30c9810d02d9aee5aa4eda2..91a1dbc41c3bec52c9813ae66d95dbe888b4f20a 100644 (file)
@@ -2,14 +2,14 @@
 #
 # Table name: current_nodes
 #
-#  id           :integer          not null, primary key
+#  id           :bigint(8)        not null, primary key
 #  latitude     :integer          not null
 #  longitude    :integer          not null
-#  changeset_id :integer          not null
+#  changeset_id :bigint(8)        not null
 #  visible      :boolean          not null
 #  timestamp    :datetime         not null
-#  tile         :integer          not null
-#  version      :integer          not null
+#  tile         :bigint(8)        not null
+#  version      :bigint(8)        not null
 #
 # Indexes
 #
index 43915bc1265df1155f31dc51bf8b457620600bbe..86404599b266de54e2896473cbb4abfdb0b10697 100644 (file)
@@ -2,7 +2,7 @@
 #
 # Table name: current_node_tags
 #
-#  node_id :integer          not null, primary key
+#  node_id :bigint(8)        not null, primary key
 #  k       :string           default(""), not null, primary key
 #  v       :string           default(""), not null
 #
index d96addbe789f3d7f62314c0d68a12e5228fae97d..d4f9a801f41642877a0e1ca13cdb609fe11f9405 100644 (file)
@@ -2,10 +2,10 @@
 #
 # Table name: notes
 #
-#  id         :integer          not null, primary key
+#  id         :bigint(8)        not null, primary key
 #  latitude   :integer          not null
 #  longitude  :integer          not null
-#  tile       :integer          not null
+#  tile       :bigint(8)        not null
 #  updated_at :datetime         not null
 #  created_at :datetime         not null
 #  status     :enum             not null
index f94032e1e3e785a398b6e5f1d06afe195f06d331..388f890a67c4fb5ea0939be59cef429475e2ca0a 100644 (file)
@@ -2,18 +2,18 @@
 #
 # Table name: note_comments
 #
-#  id         :integer          not null, primary key
-#  note_id    :integer          not null
+#  id         :bigint(8)        not null, primary key
+#  note_id    :bigint(8)        not null
 #  visible    :boolean          not null
 #  created_at :datetime         not null
 #  author_ip  :inet
-#  author_id  :integer
+#  author_id  :bigint(8)
 #  body       :text
 #  event      :enum
 #
 # Indexes
 #
-#  index_note_comments_on_body        (to_tsvector('english'::regconfig, body))
+#  index_note_comments_on_body        (to_tsvector('english'::regconfig, body)) USING gin
 #  index_note_comments_on_created_at  (created_at)
 #  note_comments_note_id_idx          (note_id)
 #
index 9690dc46ca807106f7080f41e88e9e94048d6e78..cc2327d0883f9b1ef2034d7957c1f62c84057542 100644 (file)
@@ -2,14 +2,14 @@
 #
 # Table name: nodes
 #
-#  node_id      :integer          not null, primary key
+#  node_id      :bigint(8)        not null, primary key
 #  latitude     :integer          not null
 #  longitude    :integer          not null
-#  changeset_id :integer          not null
+#  changeset_id :bigint(8)        not null
 #  visible      :boolean          not null
 #  timestamp    :datetime         not null
-#  tile         :integer          not null
-#  version      :integer          not null, primary key
+#  tile         :bigint(8)        not null
+#  version      :bigint(8)        not null, primary key
 #  redaction_id :integer
 #
 # Indexes
index 77b78751b4684a81a720ebe3069cf441a1a6fab4..a3e1c3aaf4a49d4a22d291ab942c7cc84b4e0f32 100644 (file)
@@ -2,8 +2,8 @@
 #
 # Table name: node_tags
 #
-#  node_id :integer          not null, primary key
-#  version :integer          not null, primary key
+#  node_id :bigint(8)        not null, primary key
+#  version :bigint(8)        not null, primary key
 #  k       :string           default(""), not null, primary key
 #  v       :string           default(""), not null
 #
index 3470561cee4df036a318d2901a7c59752ae19bbd..109f7d968da1eba835f1fbcd557048ce7cd8207b 100644 (file)
@@ -2,10 +2,10 @@
 #
 # Table name: relations
 #
-#  relation_id  :integer          default(0), not null, primary key
-#  changeset_id :integer          not null
+#  relation_id  :bigint(8)        default(0), not null, primary key
+#  changeset_id :bigint(8)        not null
 #  timestamp    :datetime         not null
-#  version      :integer          not null, primary key
+#  version      :bigint(8)        not null, primary key
 #  visible      :boolean          default(TRUE), not null
 #  redaction_id :integer
 #
index a746374357d6b47a74b750e191a297646cce43ca..f8d4a359f920cfca74818bb20c935b69deaf8af6 100644 (file)
@@ -2,11 +2,11 @@
 #
 # Table name: relation_members
 #
-#  relation_id :integer          default(0), not null, primary key
+#  relation_id :bigint(8)        default(0), not null, primary key
 #  member_type :enum             not null
-#  member_id   :integer          not null
+#  member_id   :bigint(8)        not null
 #  member_role :string           not null
-#  version     :integer          default(0), not null, primary key
+#  version     :bigint(8)        default(0), not null, primary key
 #  sequence_id :integer          default(0), not null, primary key
 #
 # Indexes
index 4a247949c48c90d298e84c4c9e6034ddaf5e4bb3..c674f708bc0214a097ccc27172a7bea0d7a2e488 100644 (file)
@@ -2,10 +2,10 @@
 #
 # Table name: relation_tags
 #
-#  relation_id :integer          default(0), not null, primary key
+#  relation_id :bigint(8)        default(0), not null, primary key
 #  k           :string           default(""), not null, primary key
 #  v           :string           default(""), not null
-#  version     :integer          not null, primary key
+#  version     :bigint(8)        not null, primary key
 #
 # Foreign Keys
 #
index baca05d33549738c391d373602782515a7a94eff..31e230c3869e2ee197f46a8de823834319536c5f 100644 (file)
@@ -2,10 +2,10 @@
 #
 # Table name: ways
 #
-#  way_id       :integer          default(0), not null, primary key
-#  changeset_id :integer          not null
+#  way_id       :bigint(8)        default(0), not null, primary key
+#  changeset_id :bigint(8)        not null
 #  timestamp    :datetime         not null
-#  version      :integer          not null, primary key
+#  version      :bigint(8)        not null, primary key
 #  visible      :boolean          default(TRUE), not null
 #  redaction_id :integer
 #
index e1627d3faa3091c002bef4fbb2b0f07a56fd2492..836e76e47eb112e2764e6fc4c8876ab30cbdff17 100644 (file)
@@ -2,10 +2,10 @@
 #
 # Table name: way_nodes
 #
-#  way_id      :integer          not null, primary key
-#  node_id     :integer          not null
-#  version     :integer          not null, primary key
-#  sequence_id :integer          not null, primary key
+#  way_id      :bigint(8)        not null, primary key
+#  node_id     :bigint(8)        not null
+#  version     :bigint(8)        not null, primary key
+#  sequence_id :bigint(8)        not null, primary key
 #
 # Indexes
 #
index 5832f6d4fa2bad0addb1b093cfd83d53124ce051..ae4ad605e70b1365f27d64c714b3085ec8f16603 100644 (file)
@@ -2,10 +2,10 @@
 #
 # Table name: way_tags
 #
-#  way_id  :integer          default(0), not null, primary key
+#  way_id  :bigint(8)        default(0), not null, primary key
 #  k       :string           not null, primary key
 #  v       :string           not null
-#  version :integer          not null, primary key
+#  version :bigint(8)        not null, primary key
 #
 # Foreign Keys
 #
index e6d7487066fed12e879442d8e2cae74b9b3c1f81..d9b2a5579c5bf3b72831649b5d4d04cc5ca41326 100644 (file)
@@ -7,7 +7,7 @@
 #  description        :text
 #  created_at         :datetime
 #  updated_at         :datetime
-#  user_id            :integer          not null
+#  user_id            :bigint(8)        not null
 #  description_format :enum             default("markdown"), not null
 #
 # Foreign Keys
index 884e96ed7c120d5c20c2448753d4795df12a273e..bcac9d04bb6a3ad2cbe75ad2fe81cd57147c36b5 100644 (file)
@@ -2,11 +2,11 @@
 #
 # Table name: current_relations
 #
-#  id           :integer          not null, primary key
-#  changeset_id :integer          not null
+#  id           :bigint(8)        not null, primary key
+#  changeset_id :bigint(8)        not null
 #  timestamp    :datetime         not null
 #  visible      :boolean          not null
-#  version      :integer          not null
+#  version      :bigint(8)        not null
 #
 # Indexes
 #
index 3e5cdfca27e1513856f12c4adf04fc89e95c5bd6..7c399c3a88936b1769bb1657cf23c3db232d9e92 100644 (file)
@@ -2,9 +2,9 @@
 #
 # Table name: current_relation_members
 #
-#  relation_id :integer          not null, primary key
+#  relation_id :bigint(8)        not null, primary key
 #  member_type :enum             not null
-#  member_id   :integer          not null
+#  member_id   :bigint(8)        not null
 #  member_role :string           not null
 #  sequence_id :integer          default(0), not null, primary key
 #
index 151615f72b06272f4f634be0fba3eeed3c6ae9b7..b186f505d13142bc751f28428f2f29ce8fc7b53f 100644 (file)
@@ -2,7 +2,7 @@
 #
 # Table name: current_relation_tags
 #
-#  relation_id :integer          not null, primary key
+#  relation_id :bigint(8)        not null, primary key
 #  k           :string           default(""), not null, primary key
 #  v           :string           default(""), not null
 #
index 1a2dfc9e49a6695b10d57b1e3c97bfbdc510cf86..af2c0af3bc1c4aa5cee88c446a83b885d129d1f2 100644 (file)
@@ -2,11 +2,11 @@
 #
 # Table name: gpx_files
 #
-#  id          :integer          not null, primary key
-#  user_id     :integer          not null
+#  id          :bigint(8)        not null, primary key
+#  user_id     :bigint(8)        not null
 #  visible     :boolean          default(TRUE), not null
 #  name        :string           default(""), not null
-#  size        :integer
+#  size        :bigint(8)
 #  latitude    :float
 #  longitude   :float
 #  timestamp   :datetime         not null
index 445688c5554389e66aa90b6e77fb8dca6b354c67..6473c943031134e87a1a9d99189a07614a9066ff 100644 (file)
@@ -6,9 +6,9 @@
 #  trackid   :integer          not null
 #  latitude  :integer          not null
 #  longitude :integer          not null
-#  gpx_id    :integer          not null
+#  gpx_id    :bigint(8)        not null
 #  timestamp :datetime
-#  tile      :integer
+#  tile      :bigint(8)
 #
 # Indexes
 #
index 84b6c6dfa8394404c3757a20145e1a77a6791c82..8d2f4ffface4d307c0d1013ec212781010c8879d 100644 (file)
@@ -2,9 +2,9 @@
 #
 # Table name: gpx_file_tags
 #
-#  gpx_id :integer          default(0), not null
+#  gpx_id :bigint(8)        default(0), not null
 #  tag    :string           not null
-#  id     :integer          not null, primary key
+#  id     :bigint(8)        not null, primary key
 #
 # Indexes
 #
index 9f13108434793d9f027fe67ac7eab81c19324cd5..2979b13d75309cb89a392db02df4fdef3fa6dcb0 100644 (file)
@@ -3,7 +3,7 @@
 # Table name: users
 #
 #  email               :string           not null
-#  id                  :integer          not null, primary key
+#  id                  :bigint(8)        not null, primary key
 #  pass_crypt          :string           not null
 #  creation_time       :datetime         not null
 #  display_name        :string           default(""), not null
@@ -33,7 +33,8 @@
 #  image_use_gravatar  :boolean          default(FALSE), not null
 #  image_content_type  :string
 #  auth_provider       :string
-#  home_tile           :integer
+#  home_tile           :bigint(8)
+#  tou_agreed          :datetime
 #
 # Indexes
 #
index 27bc40498b90ba455006ffd054a2eadbb3e7d60f..92cee16cd6e96bcc57e4718042c00a9cc7d57d59 100644 (file)
@@ -3,12 +3,12 @@
 # Table name: user_blocks
 #
 #  id            :integer          not null, primary key
-#  user_id       :integer          not null
-#  creator_id    :integer          not null
+#  user_id       :bigint(8)        not null
+#  creator_id    :bigint(8)        not null
 #  reason        :text             not null
 #  ends_at       :datetime         not null
 #  needs_view    :boolean          default(FALSE), not null
-#  revoker_id    :integer
+#  revoker_id    :bigint(8)
 #  created_at    :datetime
 #  updated_at    :datetime
 #  reason_format :enum             default("markdown"), not null
index 3963bd02aeb47ade7f6b47faf15293412b63c604..583ced3c56d19ed15de8dd2a4ff6922b37312de8 100644 (file)
@@ -2,7 +2,7 @@
 #
 # Table name: user_preferences
 #
-#  user_id :integer          not null, primary key
+#  user_id :bigint(8)        not null, primary key
 #  k       :string           not null, primary key
 #  v       :string           not null
 #
index adf569a03fe79a5d5827a5e33ddf4cdddb12e94d..f3d48cade4bcfeb53df717b509cc0ab90ac45d39 100644 (file)
@@ -3,11 +3,11 @@
 # Table name: user_roles
 #
 #  id         :integer          not null, primary key
-#  user_id    :integer          not null
+#  user_id    :bigint(8)        not null
 #  role       :enum             not null
 #  created_at :datetime
 #  updated_at :datetime
-#  granter_id :integer          not null
+#  granter_id :bigint(8)        not null
 #
 # Indexes
 #
index 0d1e16e8acead524674dbca9aafb58398fe6cb14..844357d8d0242000db462047ea6be54bd01342c1 100644 (file)
@@ -2,8 +2,8 @@
 #
 # Table name: user_tokens
 #
-#  id      :integer          not null, primary key
-#  user_id :integer          not null
+#  id      :bigint(8)        not null, primary key
+#  user_id :bigint(8)        not null
 #  token   :string           not null
 #  expiry  :datetime         not null
 #  referer :text
index ddb82ed1ed486965c4d4fe873decdb0e1f0f2e11..6fcaf39cc7c021801adc22e054820834430b7353 100644 (file)
@@ -2,11 +2,11 @@
 #
 # Table name: current_ways
 #
-#  id           :integer          not null, primary key
-#  changeset_id :integer          not null
+#  id           :bigint(8)        not null, primary key
+#  changeset_id :bigint(8)        not null
 #  timestamp    :datetime         not null
 #  visible      :boolean          not null
-#  version      :integer          not null
+#  version      :bigint(8)        not null
 #
 # Indexes
 #
index 5c09cd740cefc92b442ed4dcff59733e6c310aa6..0788a631c8c9c3969ea79dc84988d81fd61f58b6 100644 (file)
@@ -2,9 +2,9 @@
 #
 # Table name: current_way_nodes
 #
-#  way_id      :integer          not null, primary key
-#  node_id     :integer          not null
-#  sequence_id :integer          not null, primary key
+#  way_id      :bigint(8)        not null, primary key
+#  node_id     :bigint(8)        not null
+#  sequence_id :bigint(8)        not null, primary key
 #
 # Indexes
 #
index c4df0abb53904bf9b733ef5110f698b01dd123df..6637c158535694aa017e2719f79b067913cf9527 100644 (file)
@@ -2,7 +2,7 @@
 #
 # Table name: current_way_tags
 #
-#  way_id :integer          not null, primary key
+#  way_id :bigint(8)        not null, primary key
 #  k      :string           default(""), not null, primary key
 #  v      :string           default(""), not null
 #
diff --git a/app/views/diary_entries/_form.html.erb b/app/views/diary_entries/_form.html.erb
new file mode 100644 (file)
index 0000000..0d8f7ef
--- /dev/null
@@ -0,0 +1,35 @@
+<div class="diary_entry standard-form">
+  <fieldset>
+    <div class='form-row'>
+      <label class="standard-label"><%= t ".subject" -%></label>
+      <%= f.text_field :title, :class => "richtext_title" %>
+    </div>
+    <div class='form-row'>
+      <label class="standard-label"><%= t ".body" -%></label>
+      <%= richtext_area :diary_entry, :body, :cols => 80, :rows => 20, :format => @diary_entry.body_format %>
+    </div>
+    <div class='form-row'>
+      <label class="standard-label"><%= t ".language" -%></label>
+      <%= f.collection_select :language_code, Language.order(:english_name), :code, :name %>
+  </div>
+  </fieldset>
+  <fieldset class='location'>
+    <label class="standard-label"><%= t ".location" -%></label>
+    <%= content_tag "div", "", :id => "map", :data => { :lat => @lat, :lon => @lon, :zoom => @zoom } %>
+    <div class='form-row clearfix'>
+      <div class='form-column'>
+        <label class="secondary standard-label"><%= t ".latitude" -%></label>
+        <%= f.text_field :latitude, :size => 20, :id => "latitude" %>
+      </div>
+      <div class='form-column'>
+        <label class="secondary standard-label"><%= t ".longitude" -%></label>
+        <%= f.text_field :longitude, :size => 20, :id => "longitude" %>
+      </div>
+      <div class='form-column'>
+        <a href="#" id="usemap"><%= t ".use_map_link" -%></a>
+      </div>
+    </div>
+  </fieldset>
+
+  <%= f.submit %>
+</div>
index 62aed884c08296ee8aa61cc20135f493655ab2d8..5ea6193280c357e5d55e2036df03aad1da49bdfe 100644 (file)
@@ -8,44 +8,6 @@
 
 <%= error_messages_for "diary_entry" %>
 
-<%= form_for :diary_entry do |f| %>
-  <div class="diary_entry standard-form">
-    <fieldset>
-      <div class='form-row'>
-        <label class="standard-label"><%= t ".subject" -%></label>
-        <%= f.text_field :title, :class => "richtext_title" %>
-      </div>
-      <div class='form-row'>
-        <label class="standard-label"><%= t ".body" -%></label>
-        <%= richtext_area :diary_entry, :body, :cols => 80, :rows => 20, :format => @diary_entry.body_format %>
-      </div>
-      <div class='form-row'>
-        <label class="standard-label"><%= t ".language" -%></label>
-        <%= f.collection_select :language_code, Language.order(:english_name), :code, :name %>
-    </div>
-    </fieldset>
-    <fieldset class='location'>
-      <label class="standard-label"><%= t ".location" -%></label>
-      <%= content_tag "div", "", :id => "map", :data => { :lat => @lat, :lon => @lon, :zoom => @zoom } %>
-      <div class='form-row clearfix'>
-        <div class='form-column'>
-          <label class="secondary standard-label"><%= t ".latitude" -%></label>
-          <%= f.text_field :latitude, :size => 20, :id => "latitude" %>
-        </div>
-        <div class='form-column'>
-          <label class="secondary standard-label"><%= t ".longitude" -%></label>
-          <%= f.text_field :longitude, :size => 20, :id => "longitude" %>
-        </div>
-        <div class='form-column'>
-          <a href="#" id="usemap"><%= t ".use_map_link" -%></a>
-        </div>
-      </div>
-    </fieldset>
-
-    <% if action_name == 'new' %>
-      <%= submit_tag t("diary_entries.new.publish_button") %>
-    <% else %>
-      <%= submit_tag t(".save_button") %>
-    <% end %>
-  </div>
+<%= form_for @diary_entry, :url => diary_entry_path(current_user, @diary_entry), :html => { :method => :put } do |f| %>
+  <%= render :partial => "form", :locals => { :f => f } %>
 <% end %>
index 4e5dc994de946c43a5882510dd0486096d33b9e5..4610e5fd7403bdc45ce3598949fb9d9a958e8a75 100644 (file)
       <% if @user %>
         <% if @user == current_user %>
           <div>
-            <li><%= link_to image_tag("new.png", :class => "small_icon", :border => 0) + t(".new"), diary_new_path, :title => t(".new_title") %></li>
+            <li><%= link_to image_tag("new.png", :class => "small_icon", :border => 0) + t(".new"), new_diary_entry_path, :title => t(".new_title") %></li>
           </div>
         <% end %>
       <% else %>
         <% if current_user %>
           <div>
-            <li><%= link_to image_tag("new.png", :class => "small_icon", :border => 0) + t(".new"), diary_new_path, :title => t(".new_title") %></li>
+            <li><%= link_to image_tag("new.png", :class => "small_icon", :border => 0) + t(".new"), new_diary_entry_path, :title => t(".new_title") %></li>
           </div>
         <% end %>
       <% end %>
diff --git a/app/views/diary_entries/new.html.erb b/app/views/diary_entries/new.html.erb
new file mode 100644 (file)
index 0000000..dfe69f2
--- /dev/null
@@ -0,0 +1,13 @@
+<% content_for :head do %>
+  <%= javascript_include_tag "diary_entry" %>
+<% end %>
+
+<% content_for :heading do %>
+  <h1><%= @title %></h1>
+<% end %>
+
+<%= error_messages_for "diary_entry" %>
+
+<%= form_for @diary_entry do |f| %>
+  <%= render :partial => "form", :locals => { :f => f } %>
+<% end %>
index a2a63b406af9e017bd053937de60c679f4679dbf..725000a1364bd2dd0a6ca9fc343f494ce2f2be08 100644 (file)
@@ -49,7 +49,7 @@
         </li>
       <% end %>
       <li class="compact-hide <%= current_page_class(traces_path) %>"><%= link_to t("layouts.gps_traces"), traces_path %></li>
-      <li class="compact-hide <%= current_page_class(diary_path) %>"><%= link_to t("layouts.user_diaries"), diary_path %></li>
+      <li class="compact-hide <%= current_page_class(diary_entries_path) %>"><%= link_to t("layouts.user_diaries"), diary_entries_path %></li>
       <li class="compact-hide <%= current_page_class(copyright_path) %>"><%= link_to t("layouts.copyright"), copyright_path %></li>
       <li class="compact-hide <%= current_page_class(help_path) %>"><%= link_to t("layouts.help"), help_path %></li>
       <li class="compact-hide <%= current_page_class(about_path) %>"><%= link_to t("layouts.about"), about_path %></li>
@@ -65,7 +65,7 @@
             </li>
           <% end %>
           <li class="<%= current_page_class(traces_path) %>"><%= link_to t("layouts.gps_traces"), traces_path %></li>
-          <li class="<%= current_page_class(diary_path) %>"><%= link_to t("layouts.user_diaries"), diary_path %></li>
+          <li class="<%= current_page_class(diary_entries_path) %>"><%= link_to t("layouts.user_diaries"), diary_entries_path %></li>
           <li class="<%= current_page_class(copyright_path) %>"><%= link_to t("layouts.copyright"), copyright_path %></li>
           <li class="<%= current_page_class(help_path) %>"><%= link_to t("layouts.help"), help_path %></li>
           <li class="<%= current_page_class(about_path) %>"><%= link_to t("layouts.about"), about_path %></li>
index 219e0ab6b0df3cf11e5eb9f0cd58f5414e25595a..886aaf006434f9069aee2338a74a5aa9d39a9cd2 100644 (file)
@@ -17,7 +17,7 @@
 
   <div class='section'>
     <h2><div class='icon community'></div><%= t ".community_driven_title" %></h2>
-    <p><%= t ".community_driven_html", :diary_path => diary_path %></p>
+    <p><%= t ".community_driven_html", :diary_path => diary_entries_path %></p>
   </div>
 
   <div class='section' id='open-data'>
index 5090cbee07a2e90284e033221c94a594f8ba3d4a..87eb9b45feb1c44027c7317e679820d79e8334c5 100644 (file)
     <% else %>
       <ul class='secondary-actions clearfix'>
         <li><%= link_to t(".friends_changesets"), friend_changesets_path %></li>
-        <li><%= link_to t(".friends_diaries"), friend_diaries_path %></li>
+        <li><%= link_to t(".friends_diaries"), friends_diary_entries_path %></li>
       </ul>
       <div id="friends-container">
         <%= render :partial => "contact", :collection => friends, :locals => { :type => "friend" } %>
     <% else %>
       <ul class='secondary-actions clearfix'>
         <li><%= link_to t(".nearby_changesets"), nearby_changesets_path %></li>
-        <li><%= link_to t(".nearby_diaries"), nearby_diaries_path %></li>
+        <li><%= link_to t(".nearby_diaries"), nearby_diary_entries_path %></li>
       </ul>
       <div id="nearbyusers">
         <%= render :partial => "contact", :collection => nearby, :locals => { :type => "nearby mapper" } %>
index a93ecb0a13a7805f34854c21a79d51a6ef4df043..d4a9fa0bd4e5267c8b162512e761d97916f6fcb5 100644 (file)
@@ -9,7 +9,12 @@
 
 <%= form_tag({ :action => "save" }, { :class => " inner22 standard-form fillL" }) do %>
   <!-- legale is <%= @legale %> -->
+  <p class="deemphasize"><%= t ".read and accept with tou" %></p>
+  <label class="standard-label">
+    <%= t ".heading_ct" %>
+  </label>
   <div class='form-row horizontal-list'>
+    <p class="deemphasize"><%= t ".contributor_terms_explain" %></p>
     <label class="standard-label">
       <%= t ".legale_select" %>
     </label>
     <%= render :partial => "terms" %>
   </div>
 
+  <div>
+    <p id="contributorGuidance" class="deemphasize">
+      <%= raw t ".guidance",
+                :summary => "https://www.osmfoundation.org/wiki/License/Contributor_Terms_Summary",
+                :translations => "https://www.osmfoundation.org/wiki/License/Contributor_Terms/Informal_Translations" %>
+    </p>
+  </div>
   <div class="form-row">
-    <label for="user_consider_pd">
-      <%= check_box("user", "consider_pd") %>
-      <%= t ".consider_pd" %>
+    <label for="read_ct">
+      <%= check_box_tag "read_ct" %>
+      <%= t ".read_ct" %>
+    </label>
+  </div>
+
+  <label class="standard-label">
+    <%= t "layouts.tou" %>
+  </label>
+  <p class="deemphasize"><%= t ".tou_explain_html", :tou_link => link_to(t("layouts.tou"), "https://wiki.osmfoundation.org/wiki/Terms_of_Use", :target => :new) %></p>
+  <div class="form-row">
+    <label for="read_tou">
+      <%= check_box_tag "read_tou" %>
+      <%= t ".read_tou" %>
     </label>
-    <span class="minorNote">(<%= link_to(t(".consider_pd_why"), t(".consider_pd_why_url"), :target => :new) %>)</span>
 
     <%= hidden_field_tag("referer", h(params[:referer])) unless params[:referer].nil? %>
 
     <div class="buttons form-row inner20 clearfix">
-      <p class="deemphasize"><%= t ".read and accept" %></p>
-      <%= submit_tag(t(".agree"), :name => "agree", :id => "agree") %>
-      <%= submit_tag(t(".decline"), :name => "decline", :id => "decline") %>
+      <%= submit_tag("Continue", :name => "continue", :id => "continue", :disabled => true) %>
+      <%= submit_tag("Cancel", :name => "decline", :id => "decline") %>
     </div>
 
-    <div class="deemphasize">
-      <p id="contributorGuidance">
-        <%= raw t ".guidance",
-                  :summary => "https://www.osmfoundation.org/wiki/License/Contributor_Terms_Summary",
-                  :translations => "https://www.osmfoundation.org/wiki/License/Contributor_Terms/Informal_Translations" %>
-      </p>
-    </div>
+    <label for="user_consider_pd">
+      <%= check_box("user", "consider_pd") %>
+      <%= t ".consider_pd" %>
+    </label>
+    <span class="minorNote">(<%= link_to(t(".consider_pd_why"), t(".consider_pd_why_url"), :target => :new) %>)</span>
+
   </div>
 <% end %>
diff --git a/config/initializers/strong_migrations.rb b/config/initializers/strong_migrations.rb
new file mode 100644 (file)
index 0000000..b1f4707
--- /dev/null
@@ -0,0 +1 @@
+StrongMigrations.start_after = 20190518115041 # rubocop:disable Style/NumericLiterals
index 7296ac89557f2128b30bac849671d385a1e38940..fc28de932fd40d89be6bd0c2e30931867feb3833 100644 (file)
@@ -1329,7 +1329,6 @@ af:
     terms:
       title: Bydraerooreenkoms
       heading: Voorwaardes vir bydraers
-      agree: Aanvaar
       decline: Weier
       legale_names:
         france: Frankryk
index ee2a823949cd48e872f8602eb27307dcb381e04a..595423b8afe35d3b715f5ffe621857cda28c16aa 100644 (file)
@@ -1158,7 +1158,6 @@ aln:
       heading: rregullat për Pjesëmarrës
       consider_pd: Unë e konsideroj kontributet e mia të jenë në domenin publik
       consider_pd_why: çka o kjo?
-      agree: Pajtohem
       decline: Mos prano
       legale_select: 'Ju lutem zgjidhni vendin tuaj të banimit:'
       legale_names:
index ef062460d908bc4cbaf4342d46f693d6ceb34aea..93661cab4274a1a114ce99b9528388cba4501e28 100644 (file)
@@ -12,6 +12,7 @@
 # Author: Grille chompa
 # Author: Houcinee1
 # Author: Hubaishan
+# Author: Kassem7899
 # Author: Kuwaity26
 # Author: Majid Al-Dharrab
 # Author: Meno25
@@ -1129,6 +1130,7 @@ ar:
     partners_ucl: UCL
     partners_bytemark: استضافة Bytemark
     partners_partners: الشركاء
+    tou: شروط الاستخدام
     osm_offline: حاليًا قاعدة بيانات خريطة الشارع المفتوحة مغلقة بينما يتم الانتهاء
       من أعمال الصيانة الأساسية لقاعدة البيانات.
     osm_read_only: حاليًا قاعدة بيانات خريطة الشارع المفتوحة في وضع القراءة بينما
@@ -2098,17 +2100,25 @@ ar:
         من المعلومات; يُرجَى الاطلاع على <a href="%{url}">صفحة الويكي هذه</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: 'شروط المساهم:'
-      heading: 'شروط المساهم:'
-      read and accept: تُرجَى قراءة الاتفاقية أدناه والضغط على زر الموافقة لتأكيد
-        قبول شروط هذا الاتفاق على مشاركاتك الموجودة والمستقبلية.
-      consider_pd: وبالإضافة إلى الاتفاقية أعلاه، أريد أن تكون مساهماتي ملكية عامة.
+      title: شروط
+      heading: شروط
+      heading_ct: شروط المساهمة
+      read and accept with tou: تُرجَى قراءة اتفاقية المساهم وشروط الاستخدام، والتحقق
+        من خانتي الاختيار عند الانتهاء، ثم اضغط على زر "متابعة".
+      contributor_terms_explain: هذا الاتفاق يحكم شروط مساهماتك الحالية والمستقبلية
+      read_ct: قرأت شروط المساهمة المعطاة في الأعلى وأوافق عليها
+      tou_explain_html: هذا ال%{tou_link} يحكم استخدام موقع الويب والبنية الأساسية
+        الأخرى التي يوفرها مؤسسة خريطة الشارع المفتوحة، يُرجَى النقر على الرابط، وقراءة
+        والموافقة على النص.
+      read_tou: قرأت شروط الاستخدام وأوافق عليها.
+      consider_pd: بالإضافة إلى ما طُرح أعلاه، أريد أن أنوه أنني أعتبر مساهماتي ملكية
+        عامة.
       consider_pd_why: ما هذا؟
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'معلومات للمساعدة في فهم هذه المصطلحات: <a href="%{summary}">ملخص
         قابل للقراءة بواسطة الإنسان </a> وبعض <a href="%{translations}">ترجمات غير
         رسمية</a>'
-      agree: أوافق
+      continue: استمر
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: أرفض
       you need to accept or decline: الرجاء القراءة ومن ثم قبول أو رفض شروط المساهمة
@@ -2514,6 +2524,7 @@ ar:
         title: الطَبقات
       copyright: © <a href='%{copyright_url}'>مساهمو خريطة الشارع المفتوحة</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>تقديم تبرع</a>
+      terms: <a href='%{terms_url}' target='_blank'> مصطلحات الموقع و API</a>
     site:
       edit_tooltip: عدّل الخريطة
       edit_disabled_tooltip: قم بالتكبير لتحرير الخريطة
index 3099883a70b725efb17fc2d8f7f34a4c64712c0f..8d156ab13c3351485ba700040058a61d58674b44 100644 (file)
@@ -12,6 +12,11 @@ ast:
     formats:
       friendly: '%e de %B de %Y a les %H:%M'
   activerecord:
+    errors:
+      messages:
+        invalid_email_address: nun paez que sía una dirección de corréu electrónicu
+          válida.
+        email_address_not_routable: nun ye enrutable
     models:
       acl: Llista de Control d'Accesu
       changeset: Conxuntu de cambeos
@@ -263,10 +268,10 @@ ast:
       title_friend: Conxuntos de cambeos de los mios collacios
       title_nearby: Conxuntos de cambeos d'usuarios cercanos
       empty: Nun s'alcontró nengún conxuntu de cambeos.
-      empty_area: Nun hai conxuntos de cambeos nesti área.
+      empty_area: Nun hai conxuntos de cambeos nesta área.
       empty_user: Nun hai conxuntos de cambeos d'esti usuariu.
       no_more: Nun s'alcontraron más conxuntos de cambeos.
-      no_more_area: Nun hai más conxuntos de cambeos nesti área.
+      no_more_area: Nun hai más conxuntos de cambeos nesta área.
       no_more_user: Nun hai más conxuntos de cambeos d'esti usuariu.
       load_more: Cargar más
     timeout:
@@ -276,9 +281,15 @@ ast:
       comment: 'Comentariu nuevu sobro''l conxuntu de cambios #%{changeset_id} de
         %{author}'
       commented_at_by_html: Anovao hai %{when} por %{user}
+    comments:
+      comment: 'Comentariu nuevu sobro''l conxuntu de cambios #%{changeset_id} de
+        %{author}'
     index:
       title_all: Alderique del conxuntu de cambeos d'OpenStreetMap
       title_particular: 'Alderique del conxuntu de cambeos #%{changeset_id} d''OpenStreetMap'
+    timeout:
+      sorry: Llevó demasiao tiempu baxar la llista de comentarios del conxuntu de
+        cambeos que pidisti.
   diary_entries:
     new:
       title: Nueva entrada del diariu
@@ -317,14 +328,14 @@ ast:
       title: Nun esiste la entrada del diariu
       heading: 'Nun esiste la entrada con id: %{id}'
       body: Sentímoslo, nun hai nenguna entrada del diariu cola id %{id}. Comprueba
-        la escritura o si primisti nun enllaz enquivocáu.
+        la escritura o si pulsiasti nun enllaz enquivocáu.
     diary_entry:
       posted_by: Unviáu por %{link_user} el %{created} en %{language_link}
       comment_link: Comentar esta entrada
       reply_link: Responder a esta entrada
       comment_count:
         zero: Ensin comentarios
-        one: 1 comentariu
+        one: '%{count} comentariu'
         other: '%{count} comentarios'
       edit_link: Editar esta entrada
       hide_link: Anubrir esta entrada
@@ -892,7 +903,7 @@ ast:
           "yes": Tienda
         tourism:
           alpine_hut: Refuxu de monte
-          apartment: Apartamentu
+          apartment: Apartamentu de vacaciones
           artwork: Obra d'arte
           attraction: Interés turísticu
           bed_and_breakfast: Cama y almuerzu (B&B)
@@ -1085,6 +1096,8 @@ ast:
     intro_text: OpenStreetMap ye un mapa del mundu, creáu por persones como tu y d'usu
       llibre baxo una llicencia abierta.
     intro_2_create_account: Crear una cuenta d'usuariu
+    hosting_partners_html: L'agospiamientu tien l'encontu de %{ucl}, %{bytemark},  y
+      otros %{partners}.
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: asociaos
@@ -1411,12 +1424,18 @@ ast:
           <a href="http://www.gu.gov.si/en/">Autoridá Topográfica y Cartográfica</a> y del
           <a href="http://www.mkgp.gov.si/en/">Ministeriu d'Agricultura, Silvicultura y Alimentación</a>
           (información pública d'Eslovenia).
+        contributors_es_html: '<strong>España</strong>: Contien datos provenientes
+          del Institutu Xeográficu Nacional (<a href="http://www.ign.es/">IGN</a>)
+          y del Sistema Cartográficu Nacional (<a href="http://www.scne.es/">SCNE</a>),
+          llicenciaos pa la reutilización baxo <a href="https://creativecommons.org/licenses/by/4.0/">CC
+          BY 4.0</a>.'
         contributors_za_html: |-
           <strong>Sudáfrica</strong>: Contien datos sacaos de
           <a href="http://www.ngi.gov.za/">Chief Directorate:
           National Geo-Spatial Information</a>, State copyright reserved.
-        contributors_gb_html: '<strong>Reinu Xuníu</strong>: Contien datos de Ordnance
-          Survey &copy; Crown copyright and database right 2010-12.'
+        contributors_gb_html: |-
+          <strong>Reinu Uníu</strong>: Contien datos de Ordnance Survey © Crown copyright and database right
+           2010-19.
         contributors_footer_1_html: |-
           Pa más detalles d'estes, y otres fontes que s'usaron p'ayudar a
           ameyorar OpenStreetMap, por favor, llei la <a
@@ -1572,6 +1591,11 @@ ast:
         title: Migrar a OSM
         description: Ayuda pa les empreses y organizaciones que cambien a mapes y
           otros servicios, basaos n'OpenStreetMap.
+      welcomemat:
+        url: https://welcome.openstreetmap.org/
+        title: Pa organizaciones
+        description: ¿Con una organización que fai planes pa OpenStreetMap? Atopa
+          lo que tienes de saber nel Felpudu de Bienvenida.
       wiki:
         url: https://wiki.openstreetmap.org/wiki/Ast:Main_Page
         title: wiki.openstreetmap.org
@@ -1663,7 +1687,7 @@ ast:
       edit: Editar
       preview: Vista previa
     markdown_help:
-      title_html: Analizáu con <a href="https://daringfireball.net/projects/markdown/">Markdown</a>
+      title_html: Analizáu con <a href="https://kramdown.gettalong.org/quickref.html">kramdown</a>
       headings: Cabeceres
       heading: Cabecera
       subheading: Cabecera secundaria
@@ -1716,7 +1740,7 @@ ast:
         title: ¿Tien alguna entruga?
         paragraph_1_html: |-
           OpenStreetMap tien dellos recursos p'aprender sobro'l proyeutu, entrugar y contestar preguntes, y discutir y documentar en collaboración cuestiones de cartografía.
-          <a href='%{help_url}'>Algame ayuda equí</a>.
+          <a href='%{help_url}'>Algama ayuda equí</a>. ¿Con una organización que fai planes pa OpenStreetMap? <a href='https://welcome.openstreetmap.org/'>Visita'l Felpudu de Bienvenida</a>.
       start_mapping: Principiar col mapéu
       add_a_note:
         title: ¿Nun tien tiempu pa editar? ¡Amieste una nota!
@@ -1850,6 +1874,7 @@ ast:
         other: Ficheru GPX con %{count} puntos de %{user}
       description_without_count: Ficheru GPX de %{user}
   application:
+    permission_denied: Nun tienes permisu d'accesu pa esta aición.
     require_cookies:
       cookies_needed: Paez que tienes les cookies desactivaes - activa les cookies
         nel restolador enantes de siguir.
@@ -2060,18 +2085,17 @@ ast:
       terms accepted: ¡Gracies por aceutar les condiciones de collaboración!
       terms declined: Sentimos que decidieras nun aceutar les Condiciones de Collaborador.
         Pa más información llei <a href="%{url}">esta páxina wiki</a>.
+      terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
       title: Condiciones de collaboración
       heading: Condiciones de collaboración
-      read and accept: Llei l'alcuerdu de más abaxo y calca nel botón aceutar pa confirmar
-        qu'aceutes les condiciones d'esti alcuerdu pa les tos collaboraciones esistentes
-        y futures.
       consider_pd: Amás del alcuerdu anterior, considero que les mios collaboraciones
         pasen a ser Dominiu Públicu
       consider_pd_why: ¿qué ye esto?
+      consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Información p''ayudar a entender estos términos: un <a href="%{summary}">resume</a>
         y delles <a href="%{translations}">traducciones non oficiales</a>'
-      agree: Aceutar
+      declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Refugar
       you need to accept or decline: Por favor, llei y aceuta o refuga les nueves
         Condiciones de Collaboración pa siguir.
@@ -2193,6 +2217,7 @@ ast:
           nuevos términos de collaboración.
         agreed_with_pd: Tamién declarasti que consideres que les tos ediciones pertenecen
           al Dominiu Públicu.
+        link: https://www.osmfoundation.org/wiki/License/Contributor_Terms
         link text: ¿qué ye esto?
       profile description: 'Descripción del perfil:'
       preferred languages: 'Llingües preferíes:'
@@ -2527,7 +2552,9 @@ ast:
     directions:
       ascend: Ascender
       engines:
+        fossgis_osrm_bike: Bicicleta (OSRM)
         fossgis_osrm_car: En coche (OSRM)
+        fossgis_osrm_foot: Pie (OSRM)
         graphhopper_bicycle: Bicicleta  (GraphHopper)
         graphhopper_car: En coche (GraphHopper)
         graphhopper_foot: A pie (GraphHopper)
@@ -2660,4 +2687,9 @@ ast:
         pertenecen a esta redaición enantes de destruila.
       flash: Redaición destruyía.
       error: Hebo un error al destruir esta redaición.
+  validations:
+    leading_whitespace: tien espaciu al principiu
+    trailing_whitespace: tien espaciu al final
+    invalid_characters: contien caráuteres non válidos
+    url_characters: Contien caráuteres URL especiales (%{characters})
 ...
index 1433d116b97c4f8f0819ac7b7b365c6351e643e1..68a2b36a0654951b6b3ce8fcbd62c76348f8b574 100644 (file)
@@ -1069,7 +1069,6 @@ az:
       continue: Davam et
     terms:
       consider_pd_why: bu nədir?
-      agree: Razıyam
       decline: İmtina
       legale_names:
         france: Fransa
index 0816fb6220c774414eebdf006747258a35c7e79a..aa9ce47b11823457a215aa9055e4a4d167d5c713 100644 (file)
@@ -1288,17 +1288,13 @@ be-Tarask:
         Для атрыманьня дадатковай інфармацыі, калі ласка, глядзіце <a href="%{url}">гэтую
         вікі-старонку</a>.
     terms:
-      title: Умовы супрацоўніцтва
-      heading: Умовы супрацоўніцтва
-      read and accept: Калі ласка, пачытайце пагадненьне ніжэй і націсьніце кнопку
-        «Згодны», каб пацьвердзіць што Вы пагаджаецеся з умовамі гэтага пагадненьня
-        адносна Вашага існуючага і будучых ўнёскаў.
-      consider_pd: У дадатак да прыведзенага пагадненьня, я пацьвярджаю, што мой унёсак
+      title: Умовы
+      heading: Умовы
+      consider_pd: У дадатак да прыведзенага вышэй, я пацьвярджаю, што мой унёсак
         знаходзіцца ў грамадзкім набытку
       consider_pd_why: што гэта?
       guidance: 'Інфармацыя, якая дапаможа зразумець гэтыя ўмовы: <a href="%{summary}">кароткае
         апісаньне</a> і некалькі <a href="%{translations}">неафіцыйных перакладаў</a>'
-      agree: Згодны
       decline: Адхіліць
       you need to accept or decline: Калі ласка, прачытайце, а потым згадзіцеся ці
         адхіліце новыя ўмовы супрацоўніцтва для працягу.
index 48c6b94b183e0b98c98077fca90ffa95b4b483ac..9cf26a883e4420a6a9d89526c4525eb13215de74 100644 (file)
@@ -2101,16 +2101,12 @@ be:
     terms:
       title: Умовы ўдзелу
       heading: Умовы ўдзелу
-      read and accept: Калі ласка, пачытайце пагадненне ніжэй і націсніце кнопку «Згодны»,
-        каб пацвердзіць што Вы пагаджаецеся з умовамі гэтага пагаднення адносна Вашага
-        існуючага і будучых ўнёскаў.
       consider_pd: У дадатак да прыведзенага пагаднення, я пацвярджаю, што мой уклад
         знаходзіцца ў грамадскім набытку
       consider_pd_why: што гэта?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Інфармацыя, якая дапаможа зразумець гэтыя ўмовы: <a href="%{summary}">кароткае
         апісанне</a> і некалькі <a href="%{translations}">неафіцыйных перакладаў</a>'
-      agree: Згодны
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Адхіліць
       you need to accept or decline: Калі ласка, прачытайце, а потым згадзіцеся ці
index 26904708cb7bab49262af61d161016b62daf4ec4..261e80dc3867855ad07a646a5585ac43483188d3 100644 (file)
@@ -1153,7 +1153,6 @@ bg:
     terms:
       heading: Условия за участие
       consider_pd_why: какво е това?
-      agree: Съгласен
       decline: Отхвърли
       you need to accept or decline: Моля, прочетете, а след това или се съгласете
         или откажете новите Условия за участие, за да продължите.
index 35127632dadcd668f40f8e9d8fd2fbefa663ebc4..4914c0b743ce7e7f682edbbce53e9df9adf642ee 100644 (file)
@@ -1357,7 +1357,6 @@ bn:
       auth no password: তৃতীয় কোনো পদ্ধতিতে লগইন সক্রিয় থাকলে পাসওয়ার্ড বাধ্যতামূলক
         নয়, কিন্তু অতিরিক্ত কিছু সরঞ্জাম এবং সার্ভারের জন্য কখনো প্রয়োজন হতে পারে।
     terms:
-      agree: একমত
       legale_select: 'আপনার দেশ বাছাই করুন:'
       legale_names:
         france: ফ্রান্স
index 945149bcdbb905dd75f83628c5a61affee2c0871..78d9d6e55c8a95161d6a9db2e1e166c148f1a2bd 100644 (file)
@@ -2111,9 +2111,6 @@ br:
     terms:
       title: Diferadennoù ar c'henlabourer
       heading: Diferadennoù ar c'henlabourer
-      read and accept: Lennit ar gevrat amañ dindan, mar plij, ha klikit war ar bouton
-        asantiñ evit kadarnaat eo mat diferadennoù ar gevrat deoc'h evit a sell ho
-        tegasadennoù tremenet ha da zont.
       consider_pd: Ouzhpenn an asant amañ a-us, ez anavezan emañ ma zegasadennoù en
         domani foran
       consider_pd_why: petra eo se ?
@@ -2121,7 +2118,6 @@ br:
       guidance: 'Titouroù da skoazellañ kompren an termenoù-mañ : a <a href="%{summary}">diverradenn
         lennus gant mab-den</a> hag un nebeud <a href="%{translations}">troidigezhioù
         anfurmel</a>'
-      agree: Mat eo din
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Nac'h
       you need to accept or decline: Lennit da gentañ Termenoù ar berzhidi nevez ha
index d782bb3a5295249a19cfed5ac8b93fddc9ccec6b..8bdb52a249fb7abca01bac9e433ec327776fab91 100644 (file)
@@ -1517,15 +1517,11 @@ bs:
     terms:
       title: Uslovi za doprinosioce
       heading: Uslovi za doprinosioce
-      read and accept: Molimo Vas da pročitate ugovor ispod i  dapritisnete dugme
-        za potvrdu da prihvatate uslove ovog sporazuma za Vaše postojeće i buduće
-        doprinose.
       consider_pd: Osim gore navedenog ugovora, smatram da su moji doprinosi u javnom
         vlasništvu (Public Domain)
       consider_pd_why: Šta je ovo?
       guidance: 'Informacija da bi se pomoglo u shvatanju ovih uslova: <a href="%{summary}">Čitljiv
         sažetak</a> i neki <a href="%{translations}">neformalni prijevodi</a>'
-      agree: Slažem se
       decline: Odbiti
       you need to accept or decline: Molimo pročitajte i onda ili prihvatite ili odbijte
         nove Uslove za doprinosioce da bi ste nastavili.
index f18ac243ffe1937af3118c53629de0f84c5576c4..0e3237ca4b624f5f66c6bf5bbd91c7f25111658e 100644 (file)
@@ -1979,15 +1979,11 @@ ca:
     terms:
       title: 'Termes de col·laboració:'
       heading: 'Termes de col·laboració:'
-      read and accept: Llegeiu l'acord de sota i premeu el botó D'acord per confirmar
-        que accepteu els termes d'aquest acord per a les vostres contribucions existents
-        i futures.
       consider_pd: A més de l'acord de dalt, considero que les meves contribucions
         han d'estar en el domini públic
       consider_pd_why: què és això?
       guidance: 'Informació per ajudar a entendre aquestes condicions: un <a href="%{summary}">resum
         llegible humà</a> i algunes <a href="%{translations}">traduccions informals</a>'
-      agree: D'acord
       decline: Ho rebutjo
       you need to accept or decline: Llegiu i després accepteu o rebutgeu els termes
         per a nous col·laboradors per continuar.
index 8e64ec8baa09d3e24863f2a16fea3ce99f48d2a4..dc5f60dd2327e332873496548c088dd368455b84 100644 (file)
@@ -723,6 +723,7 @@ ce:
       subject: Тема
       body: 'Йоза:'
       send_button: ДӀадахьийта
+      back_to_inbox: ЧубогӀучаьрга юханехьа
     outbox:
       title: ДӀайохьуьйтурш
       inbox: чуйогӀурш
@@ -870,7 +871,6 @@ ce:
       confirm password: 'Юха а язъе пароль:'
       continue: Кхин дӀа
     terms:
-      agree: ТӀеэца
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=ce
       decline: Юхатоха
       legale_names:
index cab024e5f927bddef9002a3411d022d46b62e3fb..274e306f2fe0c343604efb64d1faa12f16e878ad 100644 (file)
@@ -2104,15 +2104,11 @@ cs:
     terms:
       title: Podmínky pro přispěvatele
       heading: Podmínky pro přispěvatele
-      read and accept: Přečtěte si prosím níže zobrazenou dohodu a klikněte na tlačítko
-        souhlasu, čímž potvrdíte, že přijímáte podmínky této dohody pro stávající
-        i budoucí příspěvky.
       consider_pd: Navíc k výše uvedené dohodě považuji své příspěvky za volné dílo.
       consider_pd_why: co to znamená?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Informace, které pomohou tyto podmínky pochopit: <a href="%{summary}">lidsky
         čitelné shrnutí</a> a nějaké <a href="%{translations}">neoficiální překlady</a>'
-      agree: Souhlasím
       declined: http://wiki.openstreetmap.org/wiki/CS:Contributor_Terms_Declined?uselang=cs
       decline: Nesouhlasím
       you need to accept or decline: Pro pokračování si prosím přečtěte a přijměte
index 750bcb67aa35dbd2f92773b1c259846a054385c6..a8dbe5ccc456b748ccc98e458a35c8fe28785300 100644 (file)
@@ -1391,7 +1391,6 @@ cy:
       title: Telerau cyfranwyr
       heading: Telerau cyfranwyr
       consider_pd_why: beth yw hwn?
-      agree: Cytuno
       decline: Gwrthod
       legale_names:
         france: Ffrainc
index 3cdefa3b621e67c1896c36dc4a7c3f5c3565398e..98655c6dafd37aef17f147d56738c7cfbb1d6e4a 100644 (file)
@@ -1126,6 +1126,7 @@ da:
     partners_ucl: University College London
     partners_bytemark: Bytemark Hosting
     partners_partners: partnere
+    tou: Vilkår for anvendelse
     osm_offline: OpenStreetMap-databasen er for øjeblikket offline på grund af nødvendig
       databasevedligeholdelse.
     osm_read_only: OpenStreetMap databasen er for øjeblikket ikke redigerbar på grund
@@ -2125,18 +2126,15 @@ da:
         wikiside</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: Vilkår for bidragsydere
-      heading: Vilkår for bidragsydere
-      read and accept: Læs aftalen nedenfor og tryk på "Accepter" for at bekræfte
-        at du accepterer betingelserne i denne aftale for dine eksisterende og fremtidige
-        bidrag.
+      title: Vilkår
+      heading: Vilkår
       consider_pd: I tillæg til ovennævnte aftale anser jeg mit bidrag for at være
         fælleseje/frit for ophavsret
       consider_pd_why: hvad er dette?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Oplysninger til at hjælpe med at forstå disse udtryk: et <a href="%{summary}">menneskeligt
         læsbart sammendrag</a> og nogle <a href="%{translations}">uformelle oversættelser</a>'
-      agree: Acceptér
+      continue: Fortsæt
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Afslå
       you need to accept or decline: Læs og godkend eller afvis de nye vilkår for
index cebe3c9cc3d22b7b0e6ca591f4dc0a13071ba086..73da77d7e6061fa9189ae6dea702eebb97d1674a 100644 (file)
@@ -2193,9 +2193,6 @@ de:
     terms:
       title: Bedingungen für Mitwirkende
       heading: Bedingungen für Mitwirkende
-      read and accept: Bitte lies die unten angezeigten Bedingungen und klicke dann
-        auf die Schaltfläche „Akzeptieren“, um zu bestätigen, dass du den Bedingungen
-        für deine bisherigen sowie zukünftigen Beiträge zustimmst.
       consider_pd: Zusätzlich zu den oben genannten Bedingungen betrachte ich meine
         Beiträge als gemeinfrei (Public Domain)
       consider_pd_why: Was bedeutet dies?
@@ -2203,7 +2200,6 @@ de:
       guidance: 'Informationen die dabei helfen, diese Bedingungen zu verstehen: eine
         <a href="%{summary}">verständliche Zusammenfassung</a> sowie einige <a href="%{translations}">inoffizielle
         Übersetzungen</a>'
-      agree: Akzeptieren
       declined: https://wiki.openstreetmap.org/wiki/DE:Contributor_Terms_Declined
       decline: Ablehnen
       you need to accept or decline: Bitte lies die neuen Bedingungen für Mitwirkende
index b85674eb4d8ce9be60faed87bd005b62cd914da5..a1f90c6bcac1393f753c3b3259630b55fa796b72 100644 (file)
@@ -671,6 +671,7 @@ diq:
     history: Tarix
     export: Teberdayış
     data: Melumati
+    tou: Şertê gurenayışi
     help: Peşti
     copyright: Heqa telifi
     community: Cemaet
@@ -917,8 +918,10 @@ diq:
       confirm password: 'Parolay tesdiq ke:'
       continue: Qeyd be
     terms:
+      title: Terimi
+      heading: Terimi
       consider_pd_why: no çıko?
-      agree: Qebul ke
+      continue: Dewam ke
       decline: Red kerê
       legale_names:
         france: Fransa
index 4171ab298dcf58f19259eaf172ad975a6a7a6b9d..bd24a5e78f1e16e6176d1f547dc93a1707365069 100644 (file)
@@ -1677,15 +1677,11 @@ dsb:
     terms:
       title: Wuměnjenja za sobustatkujucych
       heading: Wuměnjenja za pśinosowarjow
-      read and accept: Pšosym pśecytaj slědujuce dojadnanje a klikni na tłocašk Akceptěrowaś,
-        aby wobkšuśił, až akceptěrujoš wuměnjenja toś togo dojadnanja za twóje eksistěrowace
-        a pśichodne pśinoski.
       consider_pd: Pśidatnje ku górjejce dojadnanjeju, mam swóje pśinoski za zjawnosć
         pśistupne.
       consider_pd_why: Co to jo?
       guidance: 'Informacije, kótarež pomagaju toś te wuměnjenja rozměś: <a href="%{summary}">zbadne
         zespominanje</a> a někotare <a href="%{translations}">njeoficielne pśełožki</a>'
-      agree: Akceptěrowaś
       decline: Wótpokazaś
       you need to accept or decline: Pšosym pśecytaj nowe wužywarske wuměnjenja a
         akceptěruj abo wótpokaž je, nježli až dalej cyniš.
index 1da1aaa58e7f7d35ae5dbe8feeda4490f7c69b59..f27ee22570a1a91fe4f8188b4e85190240f53a2a 100644 (file)
@@ -2148,16 +2148,12 @@ el:
     terms:
       title: Όροι συνεισφοράς
       heading: Όροι συνεισφοράς
-      read and accept: Παρακαλούμε διαβάστε τη συμφωνία και πατήστε το κουμπί «συμφωνώ»
-        για να επιβεβαιώσετε ότι αποδέχεστε τους όρους αυτής της συμφωνίας για τις
-        υπάρχουσες και τις μέλλουσες συνεισφορές σας.
       consider_pd: Και επιπρόσθετα στην παραπάνω συμφωνία, θεωρώ τις συνεισφορές μου
         ως Public Domain
       consider_pd_why: τι είναι αυτό;
       guidance: Πληροφορίες για να καταλάβετε αυτούς τους όρους:μία <href="%{summary}">
         αναγνώσιμη περίληψη</a>και μερικές <a href=''%{translations}''>ανεπίσημες
         μεταφράσεις </a>
-      agree: Συμφωνώ
       decline: Διαφωνώ
       you need to accept or decline: Παρακαλώ διαβάστε και αποδεχτείτε ή απορρίψτε
         τους νέους Όρους Συνεισφοράς για να συνεχίσετε.
index 8b088522a16aa7a04619c9df16fc0b5ad6cd67ea..ae70009abd434149fd1ec31f4ecee414b28f50d1 100644 (file)
@@ -1905,15 +1905,12 @@ en-GB:
     terms:
       title: Contributor terms
       heading: Contributor terms
-      read and accept: Please read the agreement and press the agree button to confirm
-        that you accept the terms of this agreement for your existing and future contributions.
       consider_pd: In addition to the above agreement, I consider my contributions
         to be in the Public Domain
       consider_pd_why: what's this?
       consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Information to help understand these terms: a <a href="%{summary}">human
         readable summary</a> and some <a href="%{translations}">informal translations</a>'
-      agree: Agree
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Decline
       you need to accept or decline: Please read and then either accept or decline
index bc852600c49adbea33a2c8cc317ba4145681e5be..516dad37abe2b65386d7316e7f541e7a56487a33 100644 (file)
@@ -5,6 +5,11 @@ en:
     formats:
       friendly: "%e %B %Y at %H:%M"
       blog: "%e %B %Y"
+  helpers:
+    submit:
+      diary_entry:
+        create: "Publish"
+        update: "Update"
   activerecord:
     errors:
       messages:
@@ -282,7 +287,14 @@ en:
   diary_entries:
     new:
       title: New Diary Entry
-      publish_button: "Publish"
+    form:
+      subject: "Subject:"
+      body: "Body:"
+      language: "Language:"
+      location: "Location:"
+      latitude: "Latitude:"
+      longitude: "Longitude:"
+      use_map_link: "use map"
     index:
       title: "Users' diaries"
       title_friends: "Friends' diaries"
@@ -296,15 +308,7 @@ en:
       older_entries: Older Entries
       newer_entries: Newer Entries
     edit:
-      title: "Edit diary entry"
-      subject: "Subject:"
-      body: "Body:"
-      language: "Language:"
-      location: "Location:"
-      latitude: "Latitude:"
-      longitude: "Longitude:"
-      use_map_link: "use map"
-      save_button: "Save"
+      title: Edit Diary Entry
       marker_text: Diary entry location
     show:
       title: "%{user}'s diary | %{title}"
@@ -1089,6 +1093,7 @@ en:
     partners_ucl: "UCL"
     partners_bytemark: "Bytemark Hosting"
     partners_partners: "partners"
+    tou: "Terms of Use"
     osm_offline: "The OpenStreetMap database is currently offline while essential database maintenance work is carried out."
     osm_read_only: "The OpenStreetMap database is currently in read-only mode while essential database maintenance work is carried out."
     donate: "Support OpenStreetMap by %{link} to the Hardware Upgrade Fund."
@@ -1299,7 +1304,7 @@ en:
         This site and many other related services are formally operated by the
         <a href='https://osmfoundation.org/'>OpenStreetMap Foundation</a> (OSMF)
         on behalf of the community. Use of all OSMF operated services is subject
-        to our <a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy">
+        to our <a href="https://wiki.osmfoundation.org/wiki/Terms_of_Use">Terms of Use</a>, <a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy">
         Acceptable Use Policies</a> and our <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy">Privacy Policy</a>
         <br>
         Please <a href='https://osmfoundation.org/Contact'>contact the OSMF</a>
@@ -2025,14 +2030,19 @@ en:
       terms declined: "We are sorry that you have decided to not accept the new Contributor Terms. For more information, please see <a href=\"%{url}\">this wiki page</a>."
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: "Contributor terms"
-      heading: "Contributor terms"
-      read and accept: "Please read the agreement and press the agree button to confirm that you accept the terms of this agreement for your existing and future contributions."
-      consider_pd: "In addition to the above agreement, I consider my contributions to be in the Public Domain"
+      title: "Terms"
+      heading: "Terms"
+      heading_ct: "Contributor terms"
+      read and accept with tou: "Please read the contributor agreement and the terms of use, check both checkboxes when done and then press the continue button."
+      contributor_terms_explain: "This agreement governs the terms for your existing and future contributions."
+      read_ct: "I have read and agree to the above contributor terms"
+      tou_explain_html: "These %{tou_link} govern the use of the website and other infrastructure provided by the OSMF. Please click on the link, read and aggree to the text."
+      read_tou: "I have read and agree to the Terms of Use"
+      consider_pd: "In addition to the above, I consider my contributions to be in the Public Domain"
       consider_pd_why: "what's this?"
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Information to help understand these terms: a <a href="%{summary}">human readable summary</a> and some <a href="%{translations}">informal translations</a>'
-      agree: Agree
+      continue: Continue
       declined: "https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined"
       decline: "Decline"
       you need to accept or decline: "Please read and then either accept or decline the new Contributor Terms to continue."
@@ -2430,6 +2440,7 @@ en:
         title: "Layers"
       copyright: "© <a href='%{copyright_url}'>OpenStreetMap contributors</a>"
       donate_link_text: "<a class='donate-attr' href='%{donate_url}'>Make a Donation</a>"
+      terms: "<a href='%{terms_url}' target='_blank'>Website and API terms</a>"
     site:
       edit_tooltip: Edit the map
       edit_disabled_tooltip: Zoom in to edit the map
index 986eb1807d665d04a31f88342d1c3d9545933a8e..074e8b5de2332b3168633f4c6bedfee027c1bcac 100644 (file)
@@ -1113,6 +1113,7 @@ eo:
     partners_ucl: University College London
     partners_bytemark: Bytemark Hosting
     partners_partners: kunlaborantoj
+    tou: Uzkondiĉoj
     osm_offline: La OpenStreetMap-datumbazo estas nuntempe nealireabla pro necesaj
       laboroj de prizorgado.
     osm_read_only: La OpenStreetMap-datumbazo estas nuntempe nurlega pro necesaj laboroj
@@ -1339,7 +1340,7 @@ eo:
         pri kopirajto kaj permesilo</a> por pli da detaloj.'
       legal_title: Leĝaj demandoj
       legal_html: |-
-        Tiu ĉi retejo kaj aliaj servoj estas formale administrataj de la <a href='https://osmfoundation.org/'>Fondaĵo OpenStreetMap</a> (OSMF) komisie de la komunumo. Uzado de ĉiuj OSMF-servoj estas regulata per nia <a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy">politiko de uzado</a> kaj nia <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy">politiko de privateco</a>. Bonvolu <a href='https://osmfoundation.org/Contact'>kontakti kun OSMF</a>, se vi havas iun demandon pri permesilo, kopirajto aŭ leĝo.
+        Tiu ĉi retejo kaj aliaj servoj estas formale administrataj de la <a href='https://osmfoundation.org/'>Fondaĵo OpenStreetMap</a> (OSMF) komisie de la komunumo. Uzado de ĉiuj OSMF-servoj estas regulata per niaj <a href="https://wiki.osmfoundation.org/wiki/Terms_of_Use">Uzkondiĉoj</a>, <a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy">politiko de uzado</a>, kaj nia <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy">politiko de privateco</a>. Bonvolu <a href='https://osmfoundation.org/Contact'>kontakti kun OSMF</a>, se vi havas iun demandon pri permesilo, kopirajto aŭ leĝo.
         <br>
         OpenStreetMap, la piktogramo de lupeo kaj “State of the Map” estas <a href="https://wiki.osmfoundation.org/wiki/Trademark_Policy">registritaj varmarkoj de OSMF</a>.
       partners_title: Kunlaborantoj
@@ -2079,18 +2080,26 @@ eo:
         Por pli da informoj, bonvolu vidi <a href="%{url}">ĉi tiu viki-paĝo</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: Interkonsento pri kontribuado
-      heading: Interkonsento pri kontribuado
-      read and accept: Bonvolu legi la interkonsenton kaj alklaku la butonon 'Akcepti'
-        por konfirmi, ke vi akceptas tiun ĉi interkonsenton por viaj estantaj kaj
-        estontaj kontribuaĵoj.
-      consider_pd: Krom la supra interkonsento, mi konfirmas, ke miaj kontribuaĵoj
-        apartenas al la publika havaĵo
+      title: Kondiĉoj
+      heading: Kondiĉoj
+      heading_ct: Interkonsento pri kontribuado
+      read and accept with tou: Bonvolu legi la interkonsenton pri kontribuado kaj
+        la uzkondiĉoj, marki ambaŭ markbutonojn kiam vi estas leginta, kaj alklaku
+        la butonon Daŭrigi.
+      contributor_terms_explain: Ĉi tiu interkonsento regas la kondicôjn de viaj estantaj
+        kaj estontaj kontribuoj.
+      read_ct: Mi legis kaj konsentas la ĉi-supran Interkonsenton pri kontribuado
+      tou_explain_html: Ĉi tiuj %{tou_link} regas la uzadon de la retejo kaj alia
+        infrastrukturo provizata de la Fondaĵo OSM. Bonvolu alklaki la ligilon, legi,
+        kaj konsenti la tekston.
+      read_tou: Mi legis kaj konsentas la Uzkondiĉojn
+      consider_pd: Krom la ĉi-supro, mi konfirmas, ke miaj kontribuaĵoj apartenas
+        al la publika havaĵo
       consider_pd_why: kio estas tio?
       consider_pd_why_url: https://wiki.osmfoundation.org/wiki/Licence_and_Legal_FAQ/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Informoj por helpi kompreni ĉi tiun interkonsenton: <a href="%{summary}">simpla
         mallongigo</a> kaj kelkaj <a href="%{translations}">neoficialaj tradukoj</a>'
-      agree: Akcepti
+      continue: Daŭrigi
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Malakcepti
       you need to accept or decline: Bonvolu legi kaj aŭ akcepti aŭ malakcepti la
@@ -2500,6 +2509,7 @@ eo:
         title: Tavoloj
       copyright: © <a href='%{copyright_url}'>Kontribuintoj de OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Donaci</a>
+      terms: <a href='%{terms_url}' target='_blank'>Kondiĉoj pri Retejo kaj API</a>
     site:
       edit_tooltip: Redakti la mapon
       edit_disabled_tooltip: Pligrandigu por redakti la mapon
index ba6a9568fad8b7e06401ff804a14ecd1e4e30be5..98a724d2055e79ceea6d12d3d310532781c9a60e 100644 (file)
@@ -2165,16 +2165,12 @@ es:
     terms:
       title: Términos del colaborador
       heading: Términos del colaborador
-      read and accept: Por favor, lee el acuerdo que aparece a continuación y haz
-        clic sobre el botón "Aceptar" para confirmar que aceptas los términos de este
-        acuerdo para tus contribuciones pasadas y futuras.
       consider_pd: Además del acuerdo anterior, considero que mis contribuciones se
         encuentran en Dominio Público.
       consider_pd_why: ¿qué es esto?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Información para ayudar a comprender estos términos: un <a href="%{summary}">resumen
         legible</a> y algunas <a href="%{translations}">traducciones informales</a>'
-      agree: Aceptar
       declined: https://wiki.openstreetmap.org/wiki/ES:Contributor_Terms_Declined
       decline: Declinar
       you need to accept or decline: Por favor lea y, a continuación, acepte o rechace
index f82e96688450452c3b8dd50ba94ef7961cfbe9ac..1d29e5747603362a893b19bad9c78b34f4dcff66 100644 (file)
@@ -1780,14 +1780,11 @@ et:
     terms:
       title: 'Kaastöötingimused:'
       heading: Kaastöötingimused
-      read and accept: Palun loe lepingut ja vajuta nuppu "Nõustun" kinnitamaks, et
-        nõustud selle lepingu tingimustega oma olemasoleva ja edaspidise kaastöö jaoks.
       consider_pd: Eelnevale nõusolekule lisaks leian, et minu kaastöö kuulub avalikku
         omandisse (Public Domain)
       consider_pd_why: mis see on?
       guidance: 'Informatsioon, mis aitab mõista neid tingimusi: a <a href="%{summary}">inimloetav
         kokkuvõte</a> mõned <a href="%{translations}">mitteametlikud tõlked</a>'
-      agree: Nõustun
       decline: Ei nõustu
       you need to accept or decline: Enne jätkamist tutvu palun uute kaastöötingimustega
         ning seejärel kas nõustu või ära nõustu nendega.
index e44e2aeb1166d9caeae51bf995cddb5ceee5cddb..f2c34472d3ed8f6973dd42ecd29851a45e5bec66 100644 (file)
@@ -2107,9 +2107,6 @@ eu:
     terms:
       title: Kolaboratzaile terminoak
       heading: Kolaboratzaile terminoak
-      read and accept: Irakurri akordioa eta sakatu ados botoia akordioaren baldintzak
-        onartzen dituzula adierazteko zure lehendik dauden eta etorkizuneko ekarpenetarako
-        aplikatu daitezen.
       consider_pd: Goiko hitzarmenaz gain, nire ekarpenak Domeinu Publikoan egon behar
         direla uste dut
       consider_pd_why: zer da hau?
@@ -2117,7 +2114,6 @@ eu:
       guidance: 'Termino hauek ulertzeko informazioa: <a href="%{summary}"> giza laburpen
         irakurgarria </a> eta batzuk <a href="%{translations}"> itzulpen informalak
         </a>'
-      agree: Ados
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Ez onartu
       you need to accept or decline: Irakurri eta gero, onartu edo ezetsi Kolaboratzaileen
index b096f6ab26aa4f6657bc49a2ee344c6334c5bfd8..cc56d277f21eb310151ef668227f51120ab4dad3 100644 (file)
@@ -2094,16 +2094,12 @@ fa:
     terms:
       title: شرایط مشارکت‌کننده
       heading: شرایط مشارکت‌کننده
-      read and accept: لطفاً توافقنامه را بخوانید و دکمهٔ «می‌پذیرم» را برگزینید تا
-        تأیید کنید که با شرایط این توافق‌نامه دربارهٔ مشارکت‌های موجود و آیندهٔ خود
-        موافق هستید.
       consider_pd: علاوه بر توافق‌نامهٔ بالا، می‌پذیرم که مشارکت‌هایم در مالکیت عمومی
         باشد.
       consider_pd_why: این چیست؟
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'اطلاعاتی برای کمک به درک این شرایط: <a href="%{summary}">خلاصهٔ خوانا
         برای انسان</a>و برخی از <a href="%{translations}">ترجمه‌های غیررسمی</a>'
-      agree: می‌پذیرم
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: نمی‌پذیرم
       you need to accept or decline: برای ادامه لطفاً بخوانید و سپس شرایط شرکت کنندهٔ
index 795e0a83389cbc5c1c207150d607f2f3d6badbc7..33c99148c0650c51080583ff459e03e0f41d0a4e 100644 (file)
@@ -8,6 +8,7 @@
 # Author: Crt
 # Author: Daeron
 # Author: Espeox
+# Author: Jnovikov
 # Author: Konstaduck
 # Author: Laurianttila
 # Author: Lliehu
@@ -1134,6 +1135,7 @@ fi:
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: kumppanimme
+    tou: Käyttöehdot
     osm_offline: OpenStreetMapin tietokanta ei toistaiseksi ole käytettävissä välttämättömien
       ylläpitotöiden takia.
     osm_read_only: OpenStreetMapin tietokantaa ei toistaiseksi voi muokata välttämättömien
@@ -2110,15 +2112,12 @@ fi:
     terms:
       title: Osallistumisehdot
       heading: Osallistumisehdot
-      read and accept: Lue sopimus ja varmista, että hyväksyt sopimuksen ehdot nykyisille
-        ja tuleville muokkauksillesi napsauttamalla Hyväksyn.
       consider_pd: Edellisen sopimuksen lisäksi katson lisäyksieni olevan tekijänoikeudettomia
         Public Domain -lisenssillä
       consider_pd_why: Mikä tämä on?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Vaihtoehtoisia lukutapoja: <a href="%{summary}">selkokielinen yhteenveto
         (englanniksi)</a> ja <a href="%{translations}">epäviralliset käännökset</a>'
-      agree: Hyväksyn
       declined: https://wiki.openstreetmap.org/wiki/Fi:Contributor_Terms_Declined
       decline: En hyväksy
       you need to accept or decline: Ennen jatkamista lue läpi osallistumisehdot ja
index 90fffabbd78c19c291696972fcaf3ccde0842f4f..fed8d8af1651ba034e51d486343c4f40f044635a 100644 (file)
@@ -1169,6 +1169,7 @@ fr:
     partners_ucl: L’University College de Londres
     partners_bytemark: l'hébergeur Bytemark
     partners_partners: partenaires
+    tou: Conditions d’utilisation
     osm_offline: La base de données OpenStreetMap est actuellement hors ligne ; une
       maintenance essentielle à son bon fonctionnement est en cours.
     osm_read_only: La base de données OpenStreetMap est actuellement en mode lecture
@@ -1416,7 +1417,8 @@ fr:
       legal_html: "Ce site et de nombreux autres services connexes sont formellement
         exploités par la \n<a href=\"https://osmfoundation.org/\">Fondation OpenStreetMap</a>
         (OSMF) \nau nom de la communauté. L’utilisation de tous les services offerts
-        par l’OSMF est sujette\nà notre <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\nPolitique
+        par l’OSMF est sujette\nà nos <a href=\"https://wiki.osmfoundation.org/wiki/Terms_of_Use\">Conditions
+        d’utilisation</a>, à notre <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\nPolitique
         des usages acceptés</a> et à notre <a href=\"http://wiki.osmfoundation.org/wiki/Privacy_Policy\">Politique
         de confidentialité</a>.\n<br> \nVeuillez <a href=\"https://osmfoundation.org/Contact\">contacter
         l’OSMF</a> \nsi vous avez des questions ou problèmes concernant les licences,
@@ -1540,9 +1542,10 @@ fr:
           de retrait de données</a> ou notifiez-nous directement à travers notre <a
           href="https://dmca.openstreetmap.org/">formulaire en ligne</a>.
         trademarks_title_html: <span id="marques"></span>Marques
-        trademarks_1_html: OpenStreetMap, le logo loupe et State of the Map sont des
-          marques déposées de l'OpenStreetMap Foundation. Si vous avez des questions
-          à propos de l’utilisation de ces marques, merci de consulter notre <a href="https://wiki.osmfoundation.org/wiki/Trademark_Policy">règlement
+        trademarks_1_html: OpenStreetMap, le logo avec la loupe et ''State of the
+          Map'' sont des marques déposées de l'OpenStreetMap Foundation. Si vous avez
+          des questions à propos de l’utilisation de ces marques, merci de consulter
+          notre <a href="https://wiki.osmfoundation.org/wiki/Trademark_Policy">règlement
           concernant les marques déposées</a>.
     index:
       js_1: JavaScript n’est pas pris en charge par le navigateur que vous utilisez,
@@ -2192,18 +2195,26 @@ fr:
         consulter <a href="%{url}">cette page wiki</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: Termes du contributeur
-      heading: Termes du contributeur
-      read and accept: Veuillez lire le contrat ci-dessous et cliquer sur le bouton
-        d’acceptation pour confirmer que vous acceptez les termes de l’accord concernant
-        vos contributions passées et futures.
+      title: Conditions
+      heading: Conditions
+      heading_ct: Conditions du contributeur
+      read and accept with tou: Veuillez lire l’accord du contributeur et les conditions
+        d’utilisation, cocher les deux cases une fois ceci fait, puis appuyer sur
+        le bouton Continuer.
+      contributor_terms_explain: Cet accord impose les conditions de vos contributions
+        existantes et à venir.
+      read_ct: J’ai lu et j’accepte les conditions de contributeur ci-dessus
+      tou_explain_html: Ce %{tou_link} conditionne l’utilisation du site web et des
+        autres infrastructures fournies par OSMF. Veuillez cliquer sur le lien, lire
+        et accepter le texte.
+      read_tou: J’ai lu et j’accepte les Conditions d’utilisation
       consider_pd: En plus de l’accord ci-dessus, je considère mes contributions comme
         étant dans le domaine public
       consider_pd_why: qu’est-ce que ceci ?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Pour plus d''information sur ces termes : un <a href="%{summary}">résumé
         lisible</a> et quelques <a href="%{translations}">traductions informelles</a>'
-      agree: J’accepte
+      continue: Continuer
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Décliner
       you need to accept or decline: Veuillez lire et ensuite soit accepter ou refuser
@@ -2632,6 +2643,7 @@ fr:
         title: Couches
       copyright: © <a href='%{copyright_url}'>Contributeurs de OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Faire un don</a>
+      terms: <a href='%{terms_url}' target='_blank'>Conditions du site web et de l’API</a>
     site:
       edit_tooltip: Modifier la carte
       edit_disabled_tooltip: Zoomez en avant pour modifier la carte
index 983230fb6f467d154172c9f583d2b637e863e088..1bb7352c50d2cff07629cdbbac4338d812db9b44 100644 (file)
@@ -1143,7 +1143,6 @@ fur:
       consider_pd: In plui dal acuardi parsore, jo o consideri i miei contribûts come
         di Public Domini
       consider_pd_why: ce isal chest?
-      agree: O aceti
       decline: No aceti
       you need to accept or decline: Par plasê lei e po acete o refude i gnûfs Tiermins
         par Contribuî par lâ indevant.
index d51f646aee11d890df27389f768bfc3e64315011..d1494bd150c541263e995620bf4c634b0c6c3832 100644 (file)
@@ -1936,7 +1936,6 @@ ga:
       title: Téarmaí do rannchuiditheoirí
       heading: Téarmaí do rannchuiditheoirí
       consider_pd_why: céard é seo?
-      agree: Glac leis
       decline: Diúltaigh
       legale_select: 'Tír chónaithe:'
       legale_names:
index 38d54497ecb01129583120abf8a6d2ef35b0110e..56d6d150228186c347627d585f9895f5cf7426bb 100644 (file)
@@ -1912,9 +1912,6 @@ gd:
     terms:
       title: Teirmichean a' chom-pàirtiche
       heading: Teirmichean a' chom-pàirtiche
-      read and accept: Feuch an leugh thu an aonta agus gum briog thu air a' phutan
-        "Tha mi ag aontachadh" gus dearbhadh gun gabh thu ri teirmichean an aonta
-        seo airson na thug 's a bheir thu dhuinn 'nad cho-thabhartaiche.
       consider_pd: A bharrachd air an aonta gu h-àrd, aontaichidh mi gun dèid na bheir
         mi dhuibh 'nam cho-thabhartaiche a chur sa Public Domain
       consider_pd_why: Dè th`ann?
@@ -1922,7 +1919,6 @@ gd:
       guidance: 'Fiosrachadh a bheir taic dhut gus na teirmichean seo a thuigsinn:
         <a href="%{summary}">gearr-chunntas a ghabhas leughadh le daoine</a> agus
         <a href="%{translations}">eadar-theangachaidhean neo-fhoirmeil</a>'
-      agree: Tha mi ag aontachadh
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Cha ghabh mi ris
       you need to accept or decline: Feuch an leugh thu teirmichean ùra a' chom-pàirtiche
index c8481259bb26d30a322dfb4b5466c0a88bf779c5..f6cb156860c035ca6c59ab1b1e81e310caf96615 100644 (file)
@@ -1119,6 +1119,7 @@ gl:
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: socios
+    tou: Termos de uso
     osm_offline: A base de datos do OpenStreetMap atópase desconectada mentres realizamos
       traballos de mantemento nela.
     osm_read_only: A base de datos do OpenStreetMap atópase en modo de só lectura
@@ -2134,18 +2135,24 @@ gl:
         Para obter máis información, consulte <a href="%{url}">esta páxina wiki</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: Termos do contribuínte
-      heading: Termos do contribuínte
-      read and accept: Por favor, lea o acordo seguinte e prema no botón "Aceptar"
-        para confirmar que acepta os termos deste acordo para as súas contribucións
-        anteriores e futuras.
-      consider_pd: Ademais do acordo anterior, considero que as miñas contribucións
-        están no dominio público
+      title: Termos
+      heading: Termos
+      heading_ct: Termos do contribuínte
+      read and accept with tou: Le o acordo do contribuínte e os termos de uso, marca
+        ambas celas de verificación cando remates e despois preme no botón de Continuar.
+      contributor_terms_explain: Este acordo regula as condicións para as túas contribucións
+        actuais e futuras.
+      read_ct: Lin e acepto os termos do contribuínte anteriores
+      tou_explain_html: Estes %{tou_link} rexen o uso da páxina/sitio web e outras
+        infraestruturas fornecidas pola OSMF.  Preme na ligazón, le e acepta o texto.
+      read_tou: Lin e acepto os Termos de uso
+      consider_pd: Ademais do anterior, coido que as miñas contribucións están baixo
+        dominio público
       consider_pd_why: que é isto?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Información para axudar a entender estes termos: un <a href="%{summary}">resumo</a>
         e algunhas <a href="%{translations}">traducións non oficiais</a>'
-      agree: Acepto
+      continue: Continuar
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Rexeitar
       you need to accept or decline: Lea e, deseguido, acepte ou rexeite os novos
@@ -2567,6 +2574,7 @@ gl:
         title: Capas
       copyright: © <a href='%{copyright_url}'>Contribuíntes do OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Facer unha doazón</a>
+      terms: <a href='%{terms_url}' target='_blank'>Páxina web e termos da API</a>
     site:
       edit_tooltip: Edita-lo mapa
       edit_disabled_tooltip: Achegue para edita-lo mapa
index 34998f93007d9aa1c32bbf34ab60fa2a288681a5..d7a03cb35ce2afa0b7a74888eae57df7d3232a19 100644 (file)
@@ -6,6 +6,7 @@
 # Author: Aude
 # Author: Dekel E
 # Author: Deror avi
+# Author: Erelon
 # Author: Ex-Diktator
 # Author: ExampleTomer
 # Author: GilCahana
@@ -18,6 +19,7 @@
 # Author: Nemo bis
 # Author: Orsa
 # Author: Ruila
+# Author: Steeve815
 # Author: Yali23
 # Author: YaronSh
 # Author: Yona b
@@ -350,8 +352,8 @@ he:
       comment_link: הערות לרשומה הזאת
       reply_link: תגובה לרשומה הזאת
       comment_count:
-        one: תגובה אחת
         zero: אין תגובות
+        one: תגובה אחת
         other: '%{count} תגובות'
       edit_link: עריכת רשומה זו
       hide_link: הסתרת רשומה זו
@@ -1023,13 +1025,26 @@ he:
       resolve: לפתור
       ignore: התעלמות
       reopen: פתיחה מחדש
+      reports_of_this_issue: דווח על בעיה זו
       read_reports: קרא את הדיווחים
       new_reports: דיווחים חדשים
+      other_issues_against_this_user: עוד בעיות עם משתמש זה.
+      no_other_issues: אין בעיות נוספות עם משתמש זה.
+      comments_on_this_issue: הערות על בעיה זו
+    resolve:
+      resolved: מצב הבעיות שונה ל-'טופל'
+    ignore:
+      ignored: מצב הבעיות שונה ל-'התעלמות'
+    reopen:
+      reopened: מצב הבעיות שונה ל-'פתוח'
     comments:
       created_at: ב־%{datetime}
     reports:
       updated_at: ב־%{datetime}
       reported_by_html: דווח בתור %{category} על ידי %{user}
+  issue_comments:
+    create:
+      comment_created: המודעה שלך נוצרה בהצלחה
   reports:
     new:
       title_html: דיווח על %{link}
@@ -1096,6 +1111,7 @@ he:
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: שותפים
+    tou: תנאי שימוש
     osm_offline: מסד הנתונים של אתר OpenStreetMap אינו מקוון כעת בשל עבודות תחזוקה
       המבוצעות בו.
     osm_read_only: מסד הנתונים של אתר OpenStreetMap נתון כעת במצב קריאה בלבד בשל עבודות
@@ -1738,8 +1754,10 @@ he:
       tags_help: מופרד בפסיקים
       visibility: 'נִראוּת:'
       visibility_help: מה זה אומר?
+      visibility_help_url: https://wiki.openstreetmap.org/wiki/Visibility_of_GPS_traces
       upload_button: העלאה
       help: עזרה
+      help_url: https://wiki.openstreetmap.org/wiki/Upload
     create:
       upload_trace: העלאת מסלול GPS
       trace_uploaded: קובץ ה־GPX שלך הועלה ומחכה להכנסה אל מסד הנתונים. זה בדרך כלל
@@ -2044,15 +2062,16 @@ he:
         ר׳ <a href="%{url}">דף הוויקי הזה</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/He:Contributor_Terms_Declined
     terms:
-      title: תנאי תרומה
-      heading: תנאי תרומה
-      read and accept: נא לקרוא את ההסכם להלן וללחוץ על כפתור האישור כדי לאשר שקיבלת
-        את תנאי ההסכם הזה לתרומות הקודמות והעתידיות שלך.
+      title: תנאים
+      heading: תנאים
+      heading_ct: תנאי התנדבות
+      read_ct: קראתי את תנאי התורמים לעיל ואני מסכימ/ה לתנאים אלו
+      read_tou: קראתי את תנאי השימוש ואני מסכימ/ה לתנאים אלו
       consider_pd: בנוסף להסכם לעיל, מבחינתי כל עריכותיי שייכות לנחלת הכלל
       consider_pd_why: מה זה?
       guidance: מידע שעוזר להבין את התנאים האלהa <a href="%{summary}">תקציר קריא</a>
         וכמה <a href="%{translations}">תרגומים בלתי־רשמיים</a>
-      agree: הסכמה
+      continue: להמשיך
       decline: סירוב
       you need to accept or decline: נא לקרוא ולקבל או לדחות את תנאי התרומה החדשים
         כדי להמשיך.
@@ -2170,6 +2189,7 @@ he:
         review link text: נא לעבור לקישור הזה בזמנך הפנוי כדי לסקור ולקבל את תנאי
           התרומה החדשים.
         agreed_with_pd: הצהרת גם שמבחינתך העריכות שלך יהיו בנחלת הכלל.
+        link: https://www.osmfoundation.org/wiki/License/Contributor_Terms
         link text: מה זה?
       profile description: 'תיאור פרופיל:'
       preferred languages: 'שפות מועדפות:'
@@ -2452,6 +2472,7 @@ he:
         title: שכבות
       copyright: © <a href='%{copyright_url}'>מתנדבי OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>לתרום</a>
+      terms: <a href='%{terms_url}' target='_blank'>תנאי אתר ו־API</a>
     site:
       edit_tooltip: עריכת המפה
       edit_disabled_tooltip: להתקרב כדי לערוך את המפה
@@ -2505,6 +2526,8 @@ he:
         offramp_right_with_exit: צא ביציאה %{exit} מימין
         offramp_right_with_exit_name: צא ביציאה %{exit} מימין אל %{name}
         offramp_right_with_exit_directions: צא ביציאה %{exit} מימין לכיוון %{directions}
+        offramp_right_with_exit_name_directions: יש לצאת ביציאה %{exit} מימין אל %{name},
+          לכיוון %{directions}
         offramp_right_with_name: לעלות ימינה אל %{name}
         onramp_right_without_exit: לפנות ימינה לעלייה אל %{name}
         endofroad_right_without_exit: בסוף הדרך לפנות ימינה אל %{name}
index 6e5282f008461443dcbad4e8d0efa901cddd8860..8992aa183695e05069dc8eb30d095548dee8cf1f 100644 (file)
@@ -1626,13 +1626,10 @@ hr:
       terms accepted: Hvala za prihvaćanje novih pridonositeljskih uvjeta!
     terms:
       title: Uvjeti doprinositelja
-      heading: Uvjeti doprinositelja
-      read and accept: Molimo Vas pročitajte ugovor ispod i pritisnite tipku za potvrdu
-        da prihvaćate uvjete ovog sporazuma za svoje postojeće i buduće doprinose.
+      heading: Uvjeti
       consider_pd: Osim gore navedenog ugovora, smatram da su moji doprinosi u javnom
         vlasništvu (Public Domain)
       consider_pd_why: što je ovo?
-      agree: Prihvati
       decline: Odbaci
       you need to accept or decline: Molim pročitaj, a zatim ili prihvati ili odbij
         nove Uvjete doprinošenja.
index d81f7027f3b70c41adece51617469bda1e519a58..a49b71cfd6089fd3d781c794968f22a44e1991aa 100644 (file)
@@ -1848,15 +1848,11 @@ hsb:
     terms:
       title: Wuměnjenja za sobuskutkowarjow
       heading: Wuměnjenja za sobuskutkowarjow
-      read and accept: Prošu přečitaj slědowace dojednanje a klikni na tłóčatko Přihłosować,
-        zo by wobkrućił, zo akceptuješ wuměnjenja tutoho dojednanja za eksistowace
-        a přichodne přinoški.
       consider_pd: Přidatnje k horjeka mjenowanemu dojednanju, mam swoje přinoški
         za zjawnosć přistupne.
       consider_pd_why: Što to je?
       guidance: 'Informacije, kotrež pomhaja tute wuměnjenja rozumić: <a href="%{summary}">zrozumliwe
         zjeće</a> a někotre <a href="%{translations}">njeoficielne přełožki</a>'
-      agree: Přihłosować
       decline: Wotpokazać
       you need to accept or decline: Prošu přečitaj nowe wužiwarske wuměnjenja a akceptuj
         abo wotpokazaj je, prjedy hač dale činiš.
index 230d3e8b5ad36cb69bb1c166ec979a8ac7fa5a3a..dc6698aafc09501ca348852042e4f66990e994ff 100644 (file)
@@ -36,6 +36,9 @@ hu:
     formats:
       friendly: '%Y. %B %e., %H.%M'
   activerecord:
+    errors:
+      messages:
+        invalid_email_address: nem tűnik érvényes e-mail-címnek
     models:
       acl: Hozzáférés-szabályzási lista
       changeset: Módosításcsomag
@@ -549,7 +552,7 @@ hu:
           bus_guideway: Buszsín
           bus_stop: Buszmegálló
           construction: Építés alatt álló közút
-          corridor: Folyó
+          corridor: Folyo
           cycleway: Kerékpárút
           elevator: Lift
           emergency_access_point: Vészhelyzeti hozzáférési pont
@@ -684,7 +687,7 @@ hu:
         man_made:
           adit: Tárna
           beacon: Jelzőfény
-          beehive: Méhlakás
+          beehive: Méhkaptár
           breakwater: Hullámtörő
           bridge: Híd
           bunker_silo: Bunker
@@ -884,7 +887,7 @@ hu:
           kiosk: Trafik
           kitchen: Konyhai felszerelés
           laundry: Mosoda
-          lottery: Lotto
+          lottery: Lottó
           mall: Üzletház
           market: Piac
           massage: Masszázs
@@ -908,7 +911,7 @@ hu:
           supermarket: Szupermarket
           tailor: Szabó
           ticket: Jegyiroda
-          tobacco: Duhánybolt
+          tobacco: Dohánybolt
           toys: Játékbolt
           travel_agency: Utazási iroda
           tyres: Gumibolt
@@ -1002,12 +1005,30 @@ hu:
       states:
         open: Megnyitás
         resolved: Megoldva
+    update:
+      provide_details: Kérjük adja meg a szükséges részleteket
+    show:
+      resolve: Megold
+      ignore: Hanyagol
+      reopen: Újra megnyit
   reports:
     new:
       categories:
+        diary_entry:
+          other_label: Egyéb
+        diary_comment:
+          other_label: Egyéb
         user:
           vandal_label: Ez a felhasználó vandál
           other_label: Egyéb
+        note:
+          spam_label: A megjegyzés spam
+          personal_label: A megjegyzés személyes adatot tartalmaz
+          abusive_label: A megjegyzés sértő
+          other_label: Egyéb
+    create:
+      successful_report: A jelentés sikeresen regisztrálva
+      provide_details: Kérjük adja meg a szükséges részleteket
   layouts:
     logo:
       alt_text: OpenStreetMap logó
@@ -1021,6 +1042,7 @@ hu:
     edit: Szerkesztés
     history: Előzmények
     export: Exportálás
+    issues: Problémák
     data: Adatok
     export_data: Adatok exportálása
     gps_traces: Nyomvonalak
@@ -1543,6 +1565,7 @@ hu:
       where_am_i: Hol található?
       where_am_i_title: A jelenlegi helyszín leírása a keresőmotor segítségével
       submit_text: Menj
+      reverse_directions_text: Irány megfordítása
     key:
       table:
         entry:
@@ -1689,19 +1712,23 @@ hu:
       identifiable: Azonosítható (megjelenik a nyomvonalak listáján, és azonosítható,
         rendezett pontok időbélyeggel)
     new:
+      upload_trace: GPS nyomvonal feltöltése
       upload_gpx: 'GPX fájl feltöltése:'
       description: 'Leírás:'
       tags: 'Címkék:'
       tags_help: vesszővel elválasztva
       visibility: 'Láthatóság:'
       visibility_help: Mit jelent ez?
+      visibility_help_url: https://wiki.openstreetmap.org/wiki/Visibility_of_GPS_traces
       upload_button: Feltöltés
       help: Segítség
+      help_url: https://wiki.openstreetmap.org/wiki/Upload
     create:
       upload_trace: GPS nyomvonal feltöltése
       trace_uploaded: A GPX fájl feltöltése megtörtént, és várakozik az adatbázisba
         való beillesztésre. Ez általában fél órán belül megtörténik, és fogsz kapni
         egy e-mailt, amint elkészült.
+      upload_failed: A GPX feltöltése meghiúsult. Kérjük próbálja újra.
       traces_waiting: '%{count} nyomvonalad várakozik feltöltésre. Kérlek fontold
         meg, hogy megvárod, amíg ezek befejeződnek mielőtt feltöltesz továbbiakat,
         hogy így ne tartsd fel a többi felhasználót a sorban.'
@@ -1722,6 +1749,8 @@ hu:
       save_button: Módosítások mentése
       visibility: 'Láthatóság:'
       visibility_help: Mit jelent ez?
+    update:
+      updated: Nyomvonal frissítve
     trace_optionals:
       tags: Címkék
     show:
@@ -1743,6 +1772,7 @@ hu:
       delete_trace: Nyomvonal törlése
       trace_not_found: Nem található nyomvonal!
       visibility: 'Láthatóság:'
+      confirm_delete: Nyomvonal törlése?
     trace_paging_nav:
       showing_page: '%{page}. oldal'
       older: Régebbi nyomvonalak
@@ -1765,6 +1795,7 @@ hu:
       map: térkép
     index:
       public_traces: Nyilvános GPS nyomvonalak
+      my_traces: Saját GPS nyomvonalak
       public_traces_from: '%{user} nyilvános GPS nyomvonalai'
       description: Legfrissebb GPS nyomvonalak tallózása
       tagged_with: ' %{tags} címkével'
@@ -1773,6 +1804,7 @@ hu:
         lapon</a>.
       upload_trace: Nyomvonal feltöltése
       see_all_traces: Összes nyomvonal megtekintése
+      see_my_traces: Saját nyomvonalak megtekintése
     delete:
       scheduled_for_deletion: A nyomvonal törlésre kijelölve
     make_public:
@@ -1789,9 +1821,13 @@ hu:
         other: GPX fájl %{count} ponttal %{user} felhasználótól
       description_without_count: GPX fájl %{user} felhasználótól
   application:
+    permission_denied: Nincs megfelelő jogosultságod a művelet végrehajtásához
     require_cookies:
       cookies_needed: Úgy tűnik, hogy a böngésződben le vannak tiltva a sütik – a
         folytatás előtt engedélyezd azokat.
+    require_admin:
+      not_an_admin: Ennek a műveletnek az elvégzéséhez adminisztrátori jogosultsággal
+        kell rendelkezned.
     setup_user_auth:
       blocked_zero_hour: Sürgős üzeneted van az OpenStreetMap weboldalon. El kell
         olvasnod az üzenetet, mielőtt elmentheted a változtatásokat.
@@ -2000,18 +2036,17 @@ hu:
       terms accepted: Köszönjük, hogy elfogadtad az új hozzájárulási feltételeket!
       terms declined: Sajnáljuk, hogy úgy döntöttél, nem fogadod el az új hozzájárulási
         feltételeket. További információért lásd <a href="%{url}">ezt a wiki oldalt</a>.
+      terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
       title: Hozzájárulási feltételek
       heading: Hozzájárulási feltételek
-      read and accept: Kérlek, olvasd el az alábbi megállapodást, és nyomd meg az
-        „egyetértek” gombot, amellyel megerősíted, hogy elfogadod ezen megállapodás
-        feltételeit a jelenlegi és jövőbeni hozzájárulásaidhoz.
       consider_pd: A fenti megállapodáson felül, a hozzájárulásaimat közkinccsé nyilvánítom
       consider_pd_why: mi ez?
+      consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Információk a fogalmak megértéséhez: egy <a href="%{summary}">közérthető
         nyelven megfogalmazott kivonat</a> és néhány <a href="%{translations}">nemhivatalos
         fordítás</a>'
-      agree: Elfogadom
+      declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Elutasítom
       you need to accept or decline: Kérünk, hogy olvasd el, ezután fogadd vagy utasítsd
         el az új hozzájárulási feltételeket a folytatáshoz.
@@ -2093,6 +2128,7 @@ hu:
       friends_diaries: barátok naplóbejegyzései
       nearby_changesets: közeli felhasználók módosításai
       nearby_diaries: közeli felhasználók naplóbejegyzései
+      report: Felhasználó jelentése
     popup:
       your location: Helyed
       nearby mapper: Közeli térképszerkesztő
@@ -2133,6 +2169,7 @@ hu:
         review link text: Kérlek, kövesd ezt a hivatkozást az új hozzájárulási feltételek
           áttekintéséhez és elfogadásához.
         agreed_with_pd: Azt is kijelentetted, hogy a szerkesztéseid közkincsnek tekinthetők.
+        link: https://www.osmfoundation.org/wiki/License/Contributor_Terms
         link text: mi ez?
       profile description: 'Profil leírása:'
       preferred languages: 'Előnyben részesített nyelvek:'
@@ -2140,6 +2177,7 @@ hu:
       image: 'Kép:'
       gravatar:
         gravatar: Gravatar használata
+        link: https://wiki.openstreetmap.org/wiki/Gravatar
         link text: mi ez?
         disabled: A Gravatar le van tiltva.
         enabled: A Gravatar kép kijelzését bekapcsoltad.
@@ -2436,7 +2474,7 @@ hu:
       map_notes_zoom_in_tooltip: Nagyítsd fel a térképet a jegyzetek megjelenítéséhez
       map_data_zoom_in_tooltip: Nagyítsd fel a térképet a térképadatok megjelenítéséhez
       queryfeature_tooltip: Funkciók lekérdezése
-      queryfeature_disabled_tooltip: Nagyítás a lekérdezési funkciókra
+      queryfeature_disabled_tooltip: Közelíts a lekérdezés funkció használatához
     changesets:
       show:
         comment: Megjegyzés
index b17910f65c1bb47c94bef6e484df92e96eda0898..ec3eb052db98c53b9f79e71169b7a77272e6a0d4 100644 (file)
@@ -1249,13 +1249,16 @@ ia:
         Licentia</a> pro detalios.
       legal_title: Juridic
       legal_html: "Iste sito e multe altere servicios associate es formalmente gerite
-        per le  \n<a href=\"http://osmfoundation.org/\">Fundation OpenStreetMap</a>
+        per le  \n<a href=\"https://osmfoundation.org/\">Fundation OpenStreetMap</a>
         (OSMF) \nin nomine del communitate. Le uso de tote le servicios gerite per
-        OSMF es subjecte a nostre <a href=\"http://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\npoliticas
+        OSMF es subjecte a nostre <a href=\"https://wiki.osmfoundation.org/wiki/Terms_of_Use\">conditiones
+        de uso</a>, a nostre <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\npoliticas
         de uso acceptabile</a> e a nostre <a href=\"http://wiki.osmfoundation.org/wiki/Privacy_Policy\">politica
-        de confidentialitate</a>\n<br> \n<a href=\"http://osmfoundation.org/Contact\">Contacta
+        de confidentialitate</a>.\n<br> \n<a href=\"https://osmfoundation.org/Contact\">Contacta
         OSMF</a> \nsi vos ha questiones sur licentias, derectos de autor o altere
-        themas juridic."
+        themas juridic.\n<br>\nOpenStreetMap, le logotypo de lupa e \"State of the
+        Map\" es <a href=\"https://wiki.osmfoundation.org/wiki/Trademark_Policy\">marcas
+        commercial registrate del OSMF</a>."
       partners_title: Partners
     copyright:
       foreign:
@@ -1985,18 +1988,20 @@ ia:
         de contributor. Pro plus informationes, per favor vide <a href="%{url}">iste
         pagina wiki</a>.
     terms:
-      title: Conditiones de contributor
-      heading: Conditiones de contributor
-      read and accept: Per favor lege le contracto hic infra e preme le button de
-        acceptation pro confirmar que tu accepta le terminos de iste contracto pro
-        tu existente e futur contributiones.
-      consider_pd: In addition al contracto hic supra, io considera mi contributiones
-        como essente in le dominio public
+      title: Conditiones
+      heading: Conditiones
+      heading_ct: Conditiones de contributor
+      read and accept with tou: Per favor, lege le accordo de contributor e le conditiones
+        de uso, marca ambe quadratos quando tu es finite e pois preme le button Continuar.
+      contributor_terms_explain: Iste accordo regula le conditiones de tu contributiones
+        existente e futur.
+      read_ct: Io ha legite e io accepta le precedente terminos de contributor
+      consider_pd: In addition a lo que precede, io considera mi contributiones como
+        essente in le dominio public
       consider_pd_why: que es isto?
       guidance: 'Informationes pro adjutar a comprender iste terminos: a <a href="%{summary}">summario
         facile a comprender</a> e alcun <a href="%{translations}">traductiones non
         official</a>'
-      agree: Acceptar
       decline: Declinar
       you need to accept or decline: Per favor lege e postea accepta o declina le
         nove Conditiones del Contributor pro continuar.
@@ -2410,6 +2415,8 @@ ia:
         title: Stratos
       copyright: © <a href='%{copyright_url}'>contributores de OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Facer un donation</a>
+      terms: <a href='%{terms_url}' target='_blank'>Conditiones del sito web e del
+        API</a>
     site:
       edit_tooltip: Modificar le carta
       edit_disabled_tooltip: Face zoom avante pro modificar le carta
index c3b29bf40de43f7d3ac2ecaac1a15a1cf06cf4da..583c0adfb37d7d29811f497143da2c78ab2493b7 100644 (file)
@@ -2088,9 +2088,6 @@ id:
     terms:
       title: Persyaratan Kontributor
       heading: Persyaratan Kontributor
-      read and accept: Silahkan baca perjanjian di bawah dan tekan tombol setuju untuk
-        mengkonfirmasi bahwa Anda menerima persyaratan dari perjanjian ini untuk kontribusi
-        Anda yang sudah ada dan di masa yang akan datang.
       consider_pd: Sebagai tambahan perjanjian di atas, saya menganggap kontribusi
         saya berada di dalam Domain Publik
       consider_pd_why: apa ini?
@@ -2098,7 +2095,6 @@ id:
       guidance: 'Informasi untuk membantu Anda memahami persyaratan ini: sebuah <a
         href="%{summary}">ringkasan yang mudah dibaca</a> dan beberapa <a href="%{translations}">terjemahan
         informal</a>'
-      agree: Setuju
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Tolak
       you need to accept or decline: Silahkan baca dan setujui atau tolak Persyaratan
index 12df23f6e949bce1239bae2c2df174295bbfb35e..e1123b5d9dbbefee967a24977d5366a729282903 100644 (file)
@@ -2154,15 +2154,12 @@ is:
     terms:
       title: Skilmálar vegna framlags
       heading: Skilmálar vegna framlags
-      read and accept: Lestu skilmálana og ýttu á 'Samþykkja' hnappinn til að staðfesta
-        að þý fallist á skilmálana fyrir núverandi- jafnt sem framtíðar- framlög þín.
       consider_pd: Til viðbótar við ofangreint samkomulag, lít ég svo á að framlög
         mín verði í almenningseigu (Public Domain)
       consider_pd_why: hvað þýðir þetta?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Upplýsingar sem hjálpa til við að skilja þessi hugtök: á <a href="%{summary}">mannamáli</a>
         og nokkrar <a href="%{translations}">óformlegar þýðingar</a>'
-      agree: Samþykkja
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Hafna
       you need to accept or decline: Endilega lestu og samþykktu eða hafnaðu nýju
index d3efbcc601b7240a37763a9980c77a06228105ca..6596ca8d48d504f7e1646c1fd3c719f987add800 100644 (file)
@@ -1144,6 +1144,7 @@ it:
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: partner
+    tou: Condizioni d'uso
     osm_offline: Il database di OpenStreetMap è al momento non in linea per permettere
       lo svolgimento di alcuni lavori essenziali su di esso.
     osm_read_only: Il database di OpenStreetMap è al momento in modalità sola-lettura
@@ -1388,7 +1389,8 @@ it:
       legal_html: "Questo sito e molti altri servizi correlati sono formalmente gestiti
         dalla \n<a href=\"https://osmfoundation.org/\">OpenStreetMap Foundation</a>
         (OSMF) \nper conto della comunità. L'uso di tutti i servizi gestiti dalla
-        OSMF è soggetto \nalle nostre <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\nregole
+        OSMF è soggetto \nalle nostre <a href=\"https://wiki.osmfoundation.org/wiki/Terms_of_Use\">condizioni
+        d'uso</a>, <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\nregole
         di utilizzo accettabile</a> ed alla nostra <a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\">informativa
         sulla privacy</a>\n<br> \nSi prega di <a href=\"https://osmfoundation.org/Contact\">contattare
         la OSMF</a> \nin caso di dubbi e problemi di licenza, copyright o altre questioni
@@ -2157,18 +2159,16 @@ it:
         pagina del wiki</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: Regole per contribuire
-      heading: Regole per contribuire
-      read and accept: Leggi il contratto qui sotto e premi il pulsante accetto per
-        confermare che accetti i termini del presente accordo per i tuoi contributi
-        attuali e futuri.
-      consider_pd: In aggiunta al contratto di cui sopra, considero che i miei contributi
-        sono in Pubblico Dominio
+      title: Termini
+      heading: Termini
+      heading_ct: Regole per contribuire
+      consider_pd: In aggiunta a quanto sopra, considero che i miei contributi sono
+        in Pubblico dominio
       consider_pd_why: cos'è questo?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Informazioni utili a capire questi termini: un <a href="%{summary}">riassunto
         leggibile</a> ed alcune <a href="%{translations}">traduzioni informali</a>'
-      agree: Accetto
+      continue: Continua
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Non accetto
       you need to accept or decline: Si prega di leggere e poi accettare o rifiutare
index 3bb9c26d9dc392c3d2b97fb44d631b5e9b8aa91e..54b0b26eb94aae937b6cab5fe1a135de8de63829 100644 (file)
@@ -2,6 +2,7 @@
 # Exported from translatewiki.net
 # Export driver: phpyaml
 # Author: Abijeet Patro
+# Author: Aefgh39622
 # Author: Atysn
 # Author: Endres
 # Author: Fryed-peach
@@ -1119,6 +1120,7 @@ ja:
     partners_ucl: UCL
     partners_bytemark: バイトマーク ホスティング
     partners_partners: パートナー
+    tou: 利用規約
     osm_offline: OpenStreetMap のデータベースはメンテナンスのため一時的に停止しています。
     osm_read_only: OpenStreetMap のデータベースは、メンテナンスのため一時的に読み取り専用モードになっています。
     donate: ハードウェア アップグレード基金への%{link}で、OpenStreetMap を支援します。
@@ -1946,15 +1948,15 @@ ja:
       terms declined: 新しい協力者規約を承諾いただけず残念です。詳しい情報は、<a href="%{url}">このウィキページ</a>をご覧ください。
       terms declined url: https://wiki.openstreetmap.org/wiki/JA:Contributor_Terms_Declined
     terms:
-      title: 協力者規約
-      heading: 協力者規約
-      read and accept: 同意書を読み、あなたの既存および将来の協力のために本同意書の条項を承諾することを確認するために同意ボタンを押してください。
+      title: 規約
+      heading: 規約
+      heading_ct: 協力者規約
       consider_pd: 私の投稿をパブリック ドメインとします (著作権、著作隣接権を放棄し、著作人格権を行使しません)
       consider_pd_why: これは何ですか?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: この規約の理解を助ける情報として、<a href="%{summary}">要約 (英語)</a> や <a href="%{translations}">非公式の翻訳</a>
         をご覧ください。
-      agree: 同意
+      continue: 続行
       declined: http://wiki.openstreetmap.org/wiki/JA:Contributor_Terms_Declined
       decline: 拒否
       you need to accept or decline: 続行するには新しい協力者規約を読んで承諾または拒否してください。
index 9d5c1f4a5434df324dd7172856895e8156031b66..ecd31437028383f31b2c37ddb3e830be446ffbb2 100644 (file)
@@ -1051,7 +1051,6 @@ ka:
       continue: რეგისტრაცია
     terms:
       consider_pd_why: რა არის ეს?
-      agree: მიღება
       decline: უარყოფა
       legale_select: 'გთხოვთ, აირჩიეთ თქვენი ქვეყანა:'
       legale_names:
index f6cfc2110c43ed8592271bd43d8459cf07526c9d..a7d81f10fc8bf4f43c05aa8c04551f0d46083a03 100644 (file)
@@ -1266,7 +1266,6 @@ kab:
       title: Tiwtilin n iwiziw
       heading: Tiwtilin n iwiziw
       consider_pd_why: d acu-t wa?
-      agree: Qqebleɣ
       decline: Agwi
       legale_select: 'Tamurt n tnezduɣt:'
       legale_names:
index f9cc2b04cdafdfb4f5ca4a080e8644c460da0a63..d87b832df1a1736ddf89e8cc9e440e9be84f385d 100644 (file)
@@ -794,7 +794,6 @@ km:
       use external auth: ប្រើភ្នាក់ងារទី៣ដើម្បីកត់ឈ្មោះចូល
       continue: ចុះឈ្មោះចូល
     terms:
-      agree: យល់​ព្រម​
       decline: បដិសេធ
       legale_select: ប្រទេស​ស្នាក់​នៅ៖
       legale_names:
index 651beb761492af1e789a32dae22305830f970634..cedd4e97c248436640f5cf580eea412df8f3a106 100644 (file)
@@ -1118,6 +1118,7 @@ ko:
     partners_ucl: UCL
     partners_bytemark: 바이트마크 호스팅
     partners_partners: 협력단체
+    tou: 이용 약관
     osm_offline: 데이터베이스 점검을 위해 OpenStreetMap의 데이터가 현재 오프라인입니다.
     osm_read_only: 데이터베이스 점검을 위해 OpenStreetMap의 데이터가 현재 읽기 전용입니다.
     donate: 하드웨어 업데이트 기금에서 %{link}에 의해 OpenStreet를 지원합니다.
@@ -2033,15 +2034,17 @@ ko:
         위키 문서</a>를 참조하세요.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
     terms:
-      title: 기여자 약관
-      heading: 기여자 약관
-      read and accept: 아래의 계약을 읽고 기존 및 앞으로의 기여가 계약 약관에 동의했는지 확인하려면 동의 버튼을 누르세요.
-      consider_pd: 위의 계약뿐만 아니라 내 기여가 퍼블릭 도메인에 있는지 고려하세요
+      title: 약관
+      heading: 약관
+      heading_ct: 기여자 약관
+      read_ct: 상기의 기여자 약관을 읽었고 동의합니다
+      read_tou: 이용약관을 읽었으며 동의합니다
+      consider_pd: 위의 내용 외에도 내 기여가 퍼블릭 도메인에 있다고 간주합니다
       consider_pd_why: 무엇인가요?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: '약관을 이해하는 데 유용한 정보: <a href="%{summary}">사람이 읽을 수 있는 요약</a>과 일부 <a
         href="%{translations}">비공식 번역</a>'
-      agree: 동의
+      continue: 계속
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: 거부
       you need to accept or decline: 계속하려면 새 기여자 약관을 읽고 나서 동의나 거부하세요.
index 9ae8ce24bdd4bc9217dd7a0b2ca28f4482139b93..e962866dcf9db757de8d541635bff33dea3609cf 100644 (file)
@@ -2103,16 +2103,12 @@ ku-Latn:
     terms:
       title: Şertên beşdariyê
       heading: Şertên beşdariyê
-      read and accept: Xêra xwe vê peymanê bixwîne û ji bo pejirandina şertên peymanê
-        pêl li bişkoka qebûlkirinê bike, ev peyman ji bo beşdariyên te yên niha û
-        yên ku tu yê di pêşerojê de bikî muteber e.
       consider_pd: Tevî vê peymana li jorê, tu dikarî bibijêrî ku beşdariyên te wek
         Malê Giştî (malê ku ne aîdî şexsekî ye) were qebûlkirin.
       consider_pd_why: Ev çi ye?
       guidance: 'Li vir agahiyên alîkar yên ji bo tu van şertan fam bikî hene: <a
         href="%{summary}">kurteyek ku dikare were xwendin</a> û çend <a href="%{translations}">tercumeyên
         nefermî</a>'
-      agree: Qebûl bike
       decline: Red bike
       you need to accept or decline: Ji bo ku dewam bikî, xêra xwe şertên beşdariyê
         bixwîne û piştre qebûl an jî red bike.
index f0602395db487668ec3ec3b1dc8197462f39e867..698d7f1ffe208d0ed2af5ed4a3090bf243d7b3b0 100644 (file)
@@ -197,7 +197,7 @@ lb:
       empty: Keng Sette vun Ännerunge fonnt.
       empty_area: Keng Sette vun Ännerungen an dëser Géigend.
       empty_user: Keng Sette vun Ännerunge vun dësem Benotzer.
-      no_more: Keng weider Sette vun Ännerunge fonnt.
+      no_more: Soss keng Ännerungssätz fonnt.
       no_more_area: Keng weider Sette vun Ännerungen an dëser Géigend.
       no_more_user: Keng weider Sette vun Ännerunge vun dësem Benotzer.
       load_more: Méi lueden
@@ -1088,7 +1088,6 @@ lb:
       continue: Mellt Iech un
     terms:
       consider_pd_why: wat ass dat?
-      agree: Akzeptéieren
       legale_select: 'Sicht w.e.g. d''Land eraus wou Dir wunnt:'
       legale_names:
         france: Frankräich
index fde001c8a00ef04dd73ecb0c6aaa62860a2fbc27..20a30258d628040e305ecfe4a8c6c5789a426b49 100644 (file)
@@ -962,6 +962,7 @@ lt:
     partners_ucl: UCL
     partners_bytemark: Bytemark serveris
     partners_partners: partneriai
+    tou: Naudojimo sąlygos
     osm_offline: Šiuo metu OpenStreetMap duomenų bazė išjungta, nes vykdomi svarbūs
       priežiūros darbai.
     osm_read_only: OpenStreetMap duomenų bazė šiuo metu dirba tik skaitymo režimu,
@@ -1916,17 +1917,14 @@ lt:
       terms declined: Atsiprašome, jei nesutinkate su naujomis Talkininkų sąlygomis.
         Daugiau informacijos rasite <a href="%{url}">čia</a>.
     terms:
-      title: Talkininkų sąlygos
-      heading: Talkininkų sąlygos
-      read and accept: Perskaitykite sutartį ir paspauskite patvirtinimo mygtuką,
-        kad patvirtintumėte, jog sutinkate su sutarties sąlygomis dėl jūsų egzistuojančio
-        ir būsimo prisidėjimo.
+      title: Sąlygos
+      heading: Sąlygos
       consider_pd: Be pirmiau minėto susitarimo, manau, kad mano indėlis būtų viešo
         naudojimo
       consider_pd_why: kas tai?
       guidance: 'Informacija, kuri padėti suprasti šias sąlygas: <a href="%{summary}">Paprasto
         stiliaus aprašymas</a> ir keletas <a href="%{translations}">neoficialių vertimų</a>'
-      agree: Sutinku
+      continue: Tęsti
       decline: Nesutinku
       you need to accept or decline: Norėdami tęsti perskaitykite ir sutikite, arba
         nesutikite su Talkininkų sąlygomis.
index e3538855aa1037cc6c55c487b2f3786d1e1fb471..9b7f5360e42669782288548f52a8bdc54852de8e 100644 (file)
@@ -1906,15 +1906,11 @@ lv:
     terms:
       title: Dalībnieka noteikumi
       heading: Dalībnieka noteikumi
-      read and accept: Lūdzu, izlasiet tālāk esošo līgumu, un nospiediet 'Agree' pogu,
-        lai apstiprinātu, ka jūs piekrītat noteikumiem šem nosacījumiem par jūsu esošajiem
-        un nākotnā radītajiem datiem.
       consider_pd: Papildinājumā augstākminētajai vienošanai, Es pieņemu mana devuma
         būšanu Publiskajā Domēnā
       consider_pd_why: kas tas ir?
       guidance: 'Informācija, lai labāk saprastu šos noteikumus: <a href="%{summary}">cilvēkam
         lasām apkopojums</a> un daži <a href="%{translations}">neformāli tulkojumi</a>'
-      agree: Piekrītu
       decline: Nepiekrītu
       you need to accept or decline: Lūdzu izlasi un vai nu pieņem vai noraidi jaunos
         Veidotāju Noteikumus, lai turpinātu.
index 1add19dd85974727794a9a5c6b2c31a35791e8ee..11891280f835f4483f178de77dc675ff7c2dab3a 100644 (file)
@@ -1103,6 +1103,7 @@ mk:
     partners_ucl: UCL
     partners_bytemark: вдомителот „Bytemark“
     partners_partners: партнери
+    tou: Услови на употреба
     osm_offline: Базата на податоци на  OpenStreetMap моментално е исклучена додека
       работиме на неопходни одржувања.
     osm_read_only: Базата на податоци на OpenStreetMap моментално може само да се
@@ -1343,7 +1344,8 @@ mk:
       legal_html: "Ова мрежно место и многу други поврзани услуги со кои раководи
         \ \n<a href='https://osmfoundation.org/'>Задолжбината OpenStreetMap</a> (OSMF)
         \nво име на заедницата. Употребата на сите услуги што ги нуди OSMF подлежи
-        на нашите <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\nПравила
+        на нашите <a href=\"https://wiki.osmfoundation.org/wiki/Terms_of_Use\">Услови
+        на употреба</a>, <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">\nПравила
         за прифатлива употреба</a> и <a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\">Правилата
         за заштита на личните податоци</a>\n<br> \nВе молиме <a href='https://osmfoundation.org/Contact'>контактирајте
         ја OSMF</a> \nако имате прашања во врска со лиценцирањето, авторките права
@@ -2104,18 +2106,24 @@ mk:
         информации ќе најдете на <a href="%{url}">оваа страница</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=mk
     terms:
-      title: Услови на учество
-      heading: Услови на учество
-      read and accept: Прочитајте го договорот подолу и притиснете на копчето „Се
-        согласувам“ за да потврдите дека ги прифаќате условите на договорот кои се
-        однесуваат на вашите постоечки и идни придонеси.
-      consider_pd: Покрај горенаведената согласност, сметам дека мојот придонес е
-        во јавна сопственост
+      title: Услови
+      heading: Услови
+      heading_ct: Услови на учество
+      read and accept with tou: Прочитајте ги согласноста за учесници и условите на
+        употреба, штиклирајте ги двете кутивчиња, па стиснете на „Продолжи“.
+      contributor_terms_explain: Согласноста е таа која ги определува условите на
+        вашите постоечки и идни придонеси.
+      read_ct: Ги прочитав горенаведените услови на учество и се согласувам со нив
+      tou_explain_html: Овие %{tou_link} се тие кои го определуваат начинот на користење
+        на мрежното место и останатата инфраструктура на OSMF. Стиснете на врската,
+        прочитајте го текстот и согласете се со него.
+      read_tou: Ги прочитав Условите на употреба и се согласувам со нив
+      consider_pd: Покрај горенаведеното, моите придонеси ги сметам за јавна сопственост
       consider_pd_why: Што е ова?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain?uselang=mk
       guidance: 'Информации што ќе ви помогнат да ги разберете овие услови: a <a href="%{summary}">краток
         опис</a> и некои <a href="%{translations}">неформали преводи</a>'
-      agree: Се согласувам
+      continue: Продолжи
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=mk
       decline: Одбиј
       you need to accept or decline: Прочитајте ги новите Услови за учество, а потоа
@@ -2534,6 +2542,7 @@ mk:
         title: Слоеви
       copyright: © <a href='%{copyright_url}'>Учесници во OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Дарувајте</a>
+      terms: <a href='%{terms_url}' target='_blank'>Услови за мреж. место и приложникот</a>
     site:
       edit_tooltip: Уредување на картата
       edit_disabled_tooltip: Приближете за да ја уредите картата
index 20357c522917b7d14b39b1662b5457d44f580398..97862338ceef9fafbc29e24090996a535deabcad 100644 (file)
@@ -1268,7 +1268,6 @@ mr:
       title: योगदात्यांसाठी अटी
       heading: योगदात्यांसाठी अटी
       consider_pd_why: हे काय आहे?
-      agree: मान्य
       decline: अमान्य
       legale_select: 'राहण्याचा देश:'
       legale_names:
index 8d39a178f63ef6c258a9952d610170bfe6bbd8d9..64155bb0a9be193ae34653b9d63a3dc8619ce3ff 100644 (file)
@@ -1791,16 +1791,12 @@ ms:
     terms:
       title: Terma-terma penyumbang
       heading: Terma-terma penyumbang
-      read and accept: Sila baca perjanjian yang berikut, kemudian tekan butang setuju
-        untuk mengesahkan bahawa anda menerima terma-terma perjanjian ini bagi sumbangan-sumbangan
-        anda yang sedia ada dan akan datang.
       consider_pd: Selain perjanjian di atas, saya sudi menyerahkan sumbangan-sumbangan
         saya dalam Domain Awam
       consider_pd_why: apakah ini?
       guidance: 'Maklumat untuk memudahkan kefahaman istilah-istilah ini: a <a href="%{summary}">ringkasan
         yang boleh dibaca manusia</a> dan beberapa <a href="%{translations}">terjemahan
         tidak formal</a>'
-      agree: Setuju
       decline: Tolak
       you need to accept or decline: Sila baca, kemudian terima atau tolak Terma-Terma
         Penyumbang yang baru untuk bersambung.
index fdb9572880b3c22b590dc8f9ace17709e1784dba..5b9bd429b1762f92b2967af07a7644ab21c3c428 100644 (file)
@@ -2099,16 +2099,12 @@ nb:
     terms:
       title: Bidragsytervilkår
       heading: Bidragsytervilkårene
-      read and accept: Les avtalen nedenfor og trykk godkjenningsknapp for å bekrefte
-        at du godtar betingelsene i denne avtalen for dine eksisterende og kommende
-        bidrag.
       consider_pd: I tillegg til den ovennevnte avtalen anser jeg mine bidrag for
         å være i public domain
       consider_pd_why: hva er dette?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Informasjon for å hjelpe å forstå disse vilkårene: et <a href="%{summary}">menneskelig
         lesbart sammendrag</a> og noen <a href="%{translations}">uformelle oversettelser</a>'
-      agree: Godkjenn
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Avslå
       you need to accept or decline: Les og deretter enten godta eller avslå de nye
index 15d1242ad5c1d76d4156d61bd0f9a0e339791ebf..bff94e27e4e80ddb55bc33a4e8fe5a731f5b7149 100644 (file)
@@ -1143,7 +1143,6 @@ ne:
       continue: साइन अप
     terms:
       consider_pd_why: यो के हो ?
-      agree: सहमत
       decline: असहमत
       legale_names:
         france: फ्रान्स
index 4aae98202a66d5929da262430ff3dc8956c9007e..590ac98c96df39f3edaac7c2513fc2ad9b66fd79 100644 (file)
@@ -4,6 +4,7 @@
 # Author: Abijeet Patro
 # Author: Arent
 # Author: Bouman4
+# Author: CGID
 # Author: Carsrac
 # Author: Donarreiskoffer
 # Author: Elroy
@@ -18,6 +19,7 @@
 # Author: JaapDeKleine
 # Author: Jochempluim
 # Author: Joost schouppe
+# Author: Jouke
 # Author: Ldp
 # Author: Lemondoge
 # Author: M!dgard
@@ -54,6 +56,7 @@ nl:
     errors:
       messages:
         invalid_email_address: '"%s" lijkt geen geldig e-mailadres te zijn.'
+        email_address_not_routable: is niet routeerbaar
     models:
       acl: Rechtenoverzicht
       changeset: Wijzigingenset
@@ -382,7 +385,7 @@ nl:
         one: '%{count} reactie'
         other: '%{count} reacties'
       edit_link: Bewerk dit bericht
-      hide_link: Veberg dit bericht
+      hide_link: Verberg dit bericht
       confirm: Bevestigen
       report: Rapporteer dit bericht
     diary_comment:
@@ -659,7 +662,7 @@ nl:
           garages: Garages
           grass: Gras
           greenfield: Stadsgroen
-          industrial: Industrieel gebied
+          industrial: Industriegebied
           landfill: Stortplaats
           meadow: Weide
           military: Militair gebied
@@ -1488,14 +1491,17 @@ nl:
           <a href="http://www.gu.gov.si/en/">Surveying and Mapping Authority</a> en
           <a href="http://www.mkgp.gov.si/en/">Ministerie van Landbouw, Bosbouw en Voedsel</a>
           (openbare informatie van Slovenië).
+        contributors_es_html: |-
+          <strong>Spanje</strong>: Bevat data afkomstig van het Spaans Nationaal Geografisch Instituut (<a href="http://www.ign.es/">IGN</a>) en het Nationaal Cartografisch Systeem (<a href="http://www.scne.es/">SCNE</a>)
+          gelicenseerd voor hergebruik onder <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a>.
         contributors_za_html: |-
           <strong>Zuid-Afrika</strong>: Bevat gegevens afkomstig uit
           <a href="http://www.ngi.gov.za/">Chief Directorate:
           National Geo-Spatial Information</a>, auteursrechten voor de Staat voorbehouden.
         contributors_gb_html: |-
           <strong>Verenigd Koninkrijk</strong>: bevat gegevens van
-          Ordnance Survey &copy; Crown Copyright en databaserechten
-          2010-2012.
+          Ordnance Survey &copy; Crown copyright en databaserechten
+          2010-2019.
         contributors_footer_1_html: |-
           Voor meer gegevens over deze en andere bronnen die gebruikt zijn
           voor het verbeteren van OpenStreetMap, kunt u de <a
@@ -1716,7 +1722,7 @@ nl:
           - Gemene grond
           - weide
           retail: Winkelgebied
-          industrial: Industrieel gebied
+          industrial: Industriegebied
           commercial: Commercieel gebied
           heathland: Heide
           lake:
@@ -2152,9 +2158,6 @@ nl:
     terms:
       title: Bijdragersovereenkomst
       heading: Voorwaarden voor bijdragen
-      read and accept: Lees de overeenkomst hieronder in en klik op de knop "Instemmen"
-        om te bevestigen dat u de voorwaarden van deze overeenkomst voor uw bestaande
-        en toekomstige bijdragen aanvaardt.
       consider_pd: Met inachtneming van de bovenstaande overeenkomst, bevinden mijn
         bijdragen zich in het publieke domein
       consider_pd_why: wat is dit?
@@ -2162,7 +2165,6 @@ nl:
       guidance: 'Meer informatie om de voorwaarden beter te kunnen begrijpen: een
         <a href="%{summary}">leesbare samenvatting</a> en <a href="%{translations}">informele
         vertalingen</a>'
-      agree: Aanvaarden
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Weigeren
       you need to accept or decline: Lees de nieuwe Bijdragersvoorwaarden en besluit
index 21fdab49921b33ab4501d5acc77d869a62e11522..4c89124da4ddb642fb5377762ac8473a117fe916 100644 (file)
@@ -1694,16 +1694,12 @@ nn:
     terms:
       title: Bidragsytervilkår
       heading: Bidragsytervilkåra
-      read and accept: Les avtalen nedanfor og trykk på godkjenningsknappen for å
-        stadfeste at du godtek vilkåra i denne avtalen for dei eksisterande og kommande
-        bidraga dine.
       consider_pd: I tillegg til den ovannemnde avtala ansar eg bidraga mine for å
         vere i public domain
       consider_pd_why: kva er dette?
       consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_i_want_my_contributions_to_be_public_domain
       guidance: 'Informasjon for å hjelpe å forstå desse vilkåra: eit <a href="%{summary}">menneskeleg
         lesbart sammendrag</a> og nokon <a href="%{translations}">uformelle omsetjingar</a>'
-      agree: Eg godkjenner
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Avslå
       you need to accept or decline: Les og deretter anten godta eller avslå dei nye
index 3ba7beb0491a2a8018998dfa9951fb52c904955c..b56f41e3b6587a104f2dc2c93de04bbca8a1d915 100644 (file)
@@ -1807,7 +1807,6 @@ oc:
       consider_pd_why: qu’es aquò ?
       guidance: 'Per mai d''informacion sus aquestes tèrmes : un <a href="%{summary}">resumit
         legible</a> e qualques <a href="%{translations}">traduccions informalas</a>'
-      agree: Accèpti
       decline: Declinar
       you need to accept or decline: Legissètz e puèi, siá acceptatz o refusatz las
         novèlas condicions de contributor per contunhar.
index 9ec8093982014579f730766cc9b31f9b92f89bb5..15cacc5434c77aadbe92fd1ccd0ec7867f6a8595 100644 (file)
@@ -1050,7 +1050,6 @@ pa:
       title: ਯੋਗਦਾਨੀ ਦੀਆਂ ਸ਼ਰਤਾਂ
       heading: ਯੋਗਦਾਨੀ ਦੀਆਂ ਸ਼ਰਤਾਂ
       consider_pd_why: ਇਹ ਕੀ ਹੈ?
-      agree: ਮਨਜ਼ੂਰ ਹੈ
       decline: ਮਨਜ਼ੂਰ ਨਹੀਂ
       legale_select: 'ਆਪਣੀ ਰਿਹਾਇਸ਼ ਦਾ ਦੇਸ਼ ਚੁਣੋ:'
       legale_names:
index 6451ad697b474d2c062db50ec5eb2a743d009db5..56aafb6579cf6c38860c9135278965ad309d9079 100644 (file)
@@ -690,7 +690,7 @@ pl:
           beach_resort: Strzeżona plaża
           bird_hide: Ukryj ptaki
           common: Błonie
-          dog_park: Park dla psów
+          dog_park: Wybieg dla psów
           firepit: Palenisko
           fishing: Łowisko
           fitness_centre: Centrum Fitness
@@ -969,7 +969,7 @@ pl:
           motel: Motel
           museum: Muzeum
           picnic_site: Miejsce na piknik
-          theme_park: Park tematyczny
+          theme_park: Park rozrywki
           viewpoint: Punkt widokowy
           zoo: Zoo
         tunnel:
@@ -2145,8 +2145,6 @@ pl:
     terms:
       title: Warunki uczestnictwa
       heading: Warunki uczestnictwa
-      read and accept: Prosimy przeczytać umowę zamieszczoną poniżej i nacisnąć "Akceptuję".
-        Klikając ten przycisk przyjmujesz warunki umowy.
       consider_pd: Oprócz powyższych warunków, stwierdzam również, że mój wkład jest
         w domenie publicznej
       consider_pd_why: co to oznacza?
@@ -2154,7 +2152,6 @@ pl:
       guidance: 'Informacje, które pomogą zrozumieć te warunki: <a href="%{summary}">w
         formie czytelnego podsumowania</a> oraz <a href="%{translations}">nieoficjalne
         tłumaczenia</a>'
-      agree: Akceptuję
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Nie akceptuję
       you need to accept or decline: Prosimy przeczytać i następnie przyjąć lub odrzucić
index 63df1d80b23dc2de9547858f7c36ee65dde02b6f..a8f82e2636afddecb7fcff14280a166f8bdf5763 100644 (file)
@@ -1150,6 +1150,7 @@ pt-BR:
     partners_ucl: UCL
     partners_bytemark: Hospedagem Bytemark
     partners_partners: parceiros
+    tou: Termo de uso
     osm_offline: A base de dados do OpenStreetMap está fora do ar para manutenção.
     osm_read_only: A base de dados do OpenStreetMap está em modo somente leitura devido
       a operações de manutenção.
@@ -1396,8 +1397,9 @@ pt-BR:
       legal_html: "Este site e outros serviços relacionados são formalmente geridos
         pela  \n<a href='https://osmfoundation.org/'>Fundação OpenStreetMap</a> (OSMF)
         \nem nome da comunidade. A utilização de todos os serviços operados pela OSMF
-        está sujeita\nàs nossas normas de <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">Utilização
-        Aceitável</a> e de <a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\">Privacidade</a>\n<br>
+        está sujeita\nàs nossas normas de <a href=\"https://wiki.osmfoundation.org/wiki/Terms_of_Use\">Termos
+        de uso</a>, <a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">
+        e de <a href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\">Privacidade</a>\n<br>
         \nPor favor <a href='https://osmfoundation.org/Contact'>contacte a OSMF</a>
         \nse tiver questões relacionadas com licenças, direitos de autor, questões
         legais ou problemas.\n<br>\nO OpenStreetMap, o logótipo da lupa e o State
@@ -2160,18 +2162,24 @@ pt-BR:
         do wiki</a> .
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=pt-br
     terms:
-      title: Termos do contribuidor
-      heading: Termos do contribuidor
-      read and accept: Por favor leia o contrato e pressione o botão abaixo para confirmar
-        que você aceita os termos deste contrato para suas contribuições existentes
-        e futuras.
-      consider_pd: Em adição ao disposto acima, eu desejo que minhas contribuições
-        sejam de Domínio Público
+      title: Termos
+      heading: Termos
+      heading_ct: Termos do contribuidor
+      read and accept with tou: Por favor, leia o contrato de colaborador e os termos
+        de uso, marque ambas as caixas de seleção quando terminar e pressione o botão
+        continuar.
+      contributor_terms_explain: Este contrato rege os termos de suas contribuições
+        atuais e futuras.
+      read_ct: Li e aceito os termos do contribuidor acima
+      tou_explain_html: Esses %{tou_link} governam o uso do site e de outras infraestruturas
+        fornecidas pelo OSMF. Por favor, clique no link, leia e concorde com o texto.
+      read_tou: Li e aceito os Termos de uso
+      consider_pd: Além do acima, considero minhas contribuições como Public Domain
       consider_pd_why: o que é isso?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Informações para ajudar a entender estes termos: um <a href="%{summary}">Resumo
         humano legível</a> e algumas <a href="%{translations}">traduções informais</a>'
-      agree: Concordo
+      continue: Continuar
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=pt-br
       decline: Discordo
       you need to accept or decline: Por favor leia e, em seguida, aceite ou recuse
@@ -2588,6 +2596,7 @@ pt-BR:
         title: Camadas
       copyright: © <a href='%{copyright_url}'>contribuidores do OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Fazer uma doação</a>
+      terms: <a href='%{terms_url}' target='_blank'>Termos do site e da API</a>
     site:
       edit_tooltip: Edite o mapa
       edit_disabled_tooltip: Aproxime para editar o mapa
index 4d64908843ee4986d54c9b0546e4a11dcf696d89..43490a168c22ddcf2137940094992d5402156d1f 100644 (file)
@@ -1128,6 +1128,7 @@ pt-PT:
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: parceiros
+    tou: Condições de utilização
     osm_offline: A base de dados do OpenStreetMap não está disponível neste momento
       enquanto decorrerem trabalhos de manutenção.
     osm_read_only: A base de dados do OpenStreetMap encontra-se neste momento no modo
@@ -2131,16 +2132,12 @@ pt-PT:
     terms:
       title: Termos de colaborador
       heading: Termos de colaborador
-      read and accept: Por favor leia o acordo seguinte e clique no botão "Aceitar"
-        para confirmar que aceita os termos deste acordo para as suas contribuições
-        anteriores e futuras.
       consider_pd: para além do acordo exposto acima, considero que as minhas contribuições
         se encontram em Domínio Público.
       consider_pd_why: O que é isto?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Informação para ajudar a compreender os termos: um <a href="%{summary}">resumo
         inteligível</a> e algumas <a href="%{translations}">traduções informais</a>'
-      agree: Aceitar
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Rejeitar
       you need to accept or decline: Por favor leia e depois aceite ou recuse os novos
index fd5ed0b18eaca9f30e37ca1540aeba85d981b9f9..46f8124553bf0966ecfea19896c75fd51e569325 100644 (file)
@@ -2137,9 +2137,6 @@ ro:
     terms:
       title: Termenii colaboratorului
       heading: Termenii colaboratorului
-      read and accept: Citiți acordul și apăsați butonul de acord pentru a confirma
-        că acceptați termenii acestui acord pentru contribuțiile dvs. existente și
-        viitoare.
       consider_pd: Pe lângă acordul de mai sus, consider că contribuțiile mele sunt
         în Domeniul Public
       consider_pd_why: Ce este aceasta?
@@ -2147,7 +2144,6 @@ ro:
       guidance: 'Informații care vă ajută să înțelegeți acești termeni: un <a href="%{summary}">
         rezumat lizibil pentru oameni</a> și câteva <a href="%{translations}">traduceri
         informale</a>'
-      agree: De acord
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Declină
       you need to accept or decline: Citiți și apoi acceptați sau refuzați continuarea
index 722cb7a4fb3e898acef3d476b65148d44fe63093..059e499f24a2b55e4c06a664fdb5ada66fd6bbb4 100644 (file)
@@ -1,6 +1,7 @@
 # Messages for Russian (русский)
 # Exported from translatewiki.net
 # Export driver: phpyaml
+# Author: 1233qwer1234qwer4
 # Author: AMDmi3
 # Author: AOleg
 # Author: AZISS
@@ -1176,6 +1177,7 @@ ru:
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: партнёрами
+    tou: Условия использования
     osm_offline: База данных OpenStreetMap в данный момент не доступна, так как проводится
       необходимое техническое обслуживание.
     osm_read_only: База данных OpenStreetMap в данный момент доступна только для чтения,
@@ -1424,7 +1426,7 @@ ru:
         и лицензирование</a> для более подробной информации.'
       legal_title: Юридические вопросы
       legal_html: |-
-        Ð­Ñ\82оÑ\82 Ð²ÐµÐ±-Ñ\81айÑ\82 Ð¸ Ð¼Ð½Ð¾Ð³Ð¸Ðµ Ñ\81вÑ\8fзаннÑ\8bе Ñ\81 Ð½Ð¸Ð¼Ð¸ Ñ\83Ñ\81лÑ\83ги Ð½Ð°Ñ\85одÑ\8fÑ\82Ñ\81Ñ\8f Ð² Ð²ÐµÐ´ÐµÐ½Ð¸Ð¸ <a href='https://osmfoundation.org/'>OpenStreetMap Foundation</a> (OSMF), Ð´ÐµÐ¹Ñ\81Ñ\82вÑ\83Ñ\8eÑ\89его Ð¾Ñ\82 Ð¸Ð¼ÐµÐ½Ð¸ Ñ\81ообÑ\89еÑ\81Ñ\82ва OSM. Ð\98Ñ\81полÑ\8cзование Ð¿Ñ\80едоÑ\81Ñ\82авлÑ\8fемÑ\8bÑ\85 OSMF Ñ\83Ñ\81лÑ\83г Ñ\8fвлÑ\8fеÑ\82Ñ\81Ñ\8f Ð¿Ñ\80едмеÑ\82ом Ð½Ð°Ñ\88ей <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy">полиÑ\82ики ÐºÐ¾Ð½Ñ\84иденÑ\86иалÑ\8cноÑ\81Ñ\82и</a>и Â«<a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy">Ð\9fÑ\80иемлемой Ð¿Ð¾Ð»Ð¸Ñ\82ики использования</a>».<br>Пожалуйста, <a href='https://osmfoundation.org/Contact'>свяжитесь с OSMF</a>, если есть вопросы относительно лицензирования, авторских прав, либо другие правовые вопросы.
+        Ð­Ñ\82оÑ\82 Ð²ÐµÐ±-Ñ\81айÑ\82 Ð¸ Ð¼Ð½Ð¾Ð³Ð¸Ðµ Ñ\81вÑ\8fзаннÑ\8bе Ñ\81 Ð½Ð¸Ð¼Ð¸ Ñ\83Ñ\81лÑ\83ги Ð½Ð°Ñ\85одÑ\8fÑ\82Ñ\81Ñ\8f Ð² Ð²ÐµÐ´ÐµÐ½Ð¸Ð¸ <a href='https://osmfoundation.org/'>OpenStreetMap Foundation</a> (OSMF), Ð´ÐµÐ¹Ñ\81Ñ\82вÑ\83Ñ\8eÑ\89его Ð¾Ñ\82 Ð¸Ð¼ÐµÐ½Ð¸ Ñ\81ообÑ\89еÑ\81Ñ\82ва OSM. Ð\98Ñ\81полÑ\8cзование Ð¿Ñ\80едоÑ\81Ñ\82авлÑ\8fемÑ\8bÑ\85 OSMF Ñ\83Ñ\81лÑ\83г Ñ\8fвлÑ\8fеÑ\82Ñ\81Ñ\8f Ð¿Ñ\80едмеÑ\82ом Ð½Ð°Ñ\88ей <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy">Ð\9fолиÑ\82ики ÐºÐ¾Ð½Ñ\84иденÑ\86иалÑ\8cноÑ\81Ñ\82и</a> Ð¸ Â«<a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy">Ð\9fолиÑ\82ики Ð¿Ñ\80иемлемого использования</a>».<br>Пожалуйста, <a href='https://osmfoundation.org/Contact'>свяжитесь с OSMF</a>, если есть вопросы относительно лицензирования, авторских прав, либо другие правовые вопросы.
         <br>
         Логотип OpenStreetMap в виде увеличительного стекла и логотип State of the Map — <a href="https://wiki.osmfoundation.org/wiki/Trademark_Policy">зарегистрированные товарные знаки организации OSMF</a>.
       partners_title: Партнёры
@@ -2172,18 +2174,16 @@ ru:
         Дополнительную информацию можно найти <a href="%{url}">на следующей странице</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=ru
     terms:
-      title: Условия сотрудничества
+      title: Условия
       heading: Условия сотрудничества
-      read and accept: Пожалуйста, прочтите приведённое ниже соглашение и нажмите
-        кнопку «Согласен», чтобы подтвердить, что вы согласны с условиями этого соглашения
-        относительно вашего существующего и будущего вклада.
-      consider_pd: В дополнение к вышеизложенному соглашению, я принимаю во внимание,
-        что мой вклад находится в общественном достоянии
+      read_tou: Я соглашаюсь с Условиями использования
+      consider_pd: В дополнение к вышеизложенному, я принимаю во внимание, что мой
+        вклад находится в общественном достоянии
       consider_pd_why: что это значит?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain?uselang=ru
       guidance: 'Информация, которая поможет понять эти условия: <a href="%{summary}">краткое
         описание</a> и несколько <a href="%{translations}">неофициальных переводов</a>'
-      agree: Принять
+      continue: Продолжить
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=ru
       decline: Отклонить
       you need to accept or decline: Пожалуйста, прочитайте, а затем согласитесь или
index 90e8c32bb48b0c1cf96c6c7085ed2aff78dc9ed9..2350501757f2fdb6b247880dfd57872f841d87e3 100644 (file)
@@ -1863,16 +1863,12 @@ scn:
     terms:
       title: Cunnizzioni di cuntribbuzzioni
       heading: Cunnizzioni di cuntribbuzzioni
-      read and accept: Pi favuri lèggiti stu cuntrattu e carca lu buttuni «accettu»
-        pi cunfirmari chi accetti li cunnizzioni di stu cuntrattu pî tò cuntribbuti
-        esistenti e futuri.
       consider_pd: Sparti dû cuntrattu ccassupra, cunzìddiru chi li mè cuntribbuti
         sunnu ntô Duminiu Pùbblicu
       consider_pd_why: chi voli diri?
       guidance: 'Nfurmazzioni chi ti ponnu aiutari a capiri sti cunnizzioni: nu <a
         href="%{summary}">riassuntu liggìbbili dî genti</a> e quarchi <a href="%{translations}">traduzzioni
         nun furmali</a>'
-      agree: Accettu
       decline: Rifiutu
       you need to accept or decline: Pi cuntinuari, pi favuri leggi li cunnizzioni
         di cuntribbuzzioni novi e appoi accèttali o rifiùtali.
index d25a69147973d3478492dfc5b0c3c60c829b4b16..5cfccf4f20a8dcfe792bba92d35e20d483abf8f9 100644 (file)
@@ -1660,16 +1660,12 @@ sk:
     terms:
       title: Podmienky prispievania
       heading: Podmienky prispievania
-      read and accept: Prečítajte si prosím nižšie uvedenú dohodu a kliknite na tlačítko
-        súhlasu, čím potvrdíte, že prijímate podmienky tejto dohody pre existujúce
-        aj budúce príspevky.
       consider_pd: Navyše k uvedenej dohode vyhlasujem, že považujem svoje príspevky
         za slobodné dielo (Public Domain).
       consider_pd_why: čo to znamená?
       guidance: 'Informácie, ktoré Vám môžu pomôcť porozumieť týmto podmienkam: <a
         href="%{summary}">zhrnutie</a> a nejaké <a href="%{translations}">neoficiálne
         preklady</a>'
-      agree: Súhlasím
       decline: Nesúhlasím
       you need to accept or decline: Pre pokračovanie si prosím prečítajte a príjmite,
         alebo odmietnite nové Podmienky prispievania.
index ec293fcc624f0a96b4278d974f34a4a8ac3582e9..a66d1837577a4f261ac0ce6a5649f4d81e59fa9e 100644 (file)
@@ -1805,15 +1805,11 @@ sl:
     terms:
       title: Contributor terms
       heading: Contributor terms
-      read and accept: Prosimo, preberite sporazum spodaj, in pritisnite tipko Sprejmi,
-        da potrdite, da se strinjate s pogoji tega sporazuma za svoje obstoječe in
-        bodoče prispevke.
       consider_pd: Poleg zgoraj navedenega sporazuma menim, da so moji prispevki v
         javni domeni
       consider_pd_why: kaj je to?
       guidance: 'Informacije, ki pomagajo razumeti te pogoje: <a href="%{summary}">berljivi
         povzetek</a> in nekaj <a href="%{translations}">neuradnih prevodov</a>'
-      agree: Sprejmi
       decline: Zavrni
       you need to accept or decline: Prosimo preberite in nato sprejmite ali zavrnite
         nove "Contributor Terms".
index 0aac30dde2ece1cd3aad38231175921b1bb1d5e0..289d22773f45b2dd84aa9a5329255ce5a04708ac 100644 (file)
@@ -1415,14 +1415,10 @@ sq:
     terms:
       title: Kushtet për kontribues
       heading: Kushtet për kontribues
-      read and accept: Ju lutem lexoni marrëveshjen më poshtë dhe shtypni butonin
-        e dakordimit për të konfirmuar se ju pranoni kushtet e kësaj marrëveshjeje
-        për kontributin tuaj ekzistues dhe të ardhshëm.
       consider_pd: Përveç marrëveshjes së mësipërme, unë i konsideroj kontributet
         e mia të jenë në Domenin Publik
       consider_pd_why: çfarë është kjo?
       consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
-      agree: Pajtohem
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Nuk e pranoj
       legale_select: 'Vendi i banimit:'
index 8c3a6ed111a5a683dd8b05d8ed3b98332cbb845c..ae3ae643948b77038301adc45435a28df1d2636f 100644 (file)
@@ -1331,15 +1331,12 @@ sr-Latn:
     terms:
       title: Uslovi uređivanja
       heading: Uslovi uređivanja
-      read and accept: Pročitajte ugovor ispod i pritisnite dugme za potvrdu da biste
-        prihvatili uslove za postojeće i buduće doprinose.
       consider_pd: Prema gorenavedenom ugovoru, smatram da moji doprinosi pripadaju
         javnom vlasništvu
       consider_pd_why: šta je ovo?
       consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain?uselang=sr-ec
       guidance: 'Podaci koji će vam pomoći da razumete ove uslove: <a href="%{summary}">kratak
         opis</a> i neki <a href="%{translations}">neformalni prevodi</a>'
-      agree: Prihvati
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=sr-ec
       decline: Odbaci
       you need to accept or decline: Molimo vas da pročitate ugovor pre nego što ga
index 1aed70fd370d0bf139156f44e86b78ea86190cd7..46d8221d27b49985a9531a19f53486328ce4a760 100644 (file)
@@ -2003,15 +2003,12 @@ sr:
     terms:
       title: Услови уређивања
       heading: Услови уређивања
-      read and accept: Прочитајте уговор испод и притисните дугме за потврду да бисте
-        прихватили услове за постојеће и будуће доприносе.
       consider_pd: Према горенаведеном уговору, сматрам да моји доприноси припадају
         јавном власништву
       consider_pd_why: шта је ово?
       consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain?uselang=sr-ec
       guidance: 'Подаци који ће вам помоћи да разумете ове услове: <a href="%{summary}">кратак
         опис</a> и неки <a href="%{translations}">неформални преводи</a>'
-      agree: Прихвати
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=sr-ec
       decline: Одбаци
       you need to accept or decline: Молимо вас да прочитате уговор пре него што га
index 8c8533f936e72ca601943ec3d5e51793f0ab7439..6e3fa2dad6f40b32502f50d7b55ff5eda05a7846 100644 (file)
@@ -2140,16 +2140,12 @@ sv:
     terms:
       title: Villkor för deltagare
       heading: Villkor för deltagare
-      read and accept: Läs avtalet nedan och klicka på knappen Godkänn för att bekräfta
-        att du godkänner villkoren i detta avtal för dina befintliga och framtida
-        bidrag.
       consider_pd: Utöver ovan nämnda avtal, anser jag att mina bidrag är inom Public
         Domain.
       consider_pd_why: vad är det här?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Information som hjälper dig förstå dessa termer: en <a href="%{summary}">lättläst
         sammanfattning</a> och några <a href="%{translations}">informella översättningar</a>'
-      agree: Jag godkänner
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Avslå
       you need to accept or decline: Läs igenom och Godkänn eller Avböj de nya bidragsvillkoren
index a3ab01726337917c402d4b561a84fe099b488691..a939217c38689ee15bc4986e61aaa63b4d9a1856 100644 (file)
@@ -715,7 +715,6 @@ ta:
       password: 'கடவுச்சொல்:'
       confirm password: 'கடவுச்சொல்லை உறுதிசெய்:'
     terms:
-      agree: ஏற்றுக் கொள்
       decline: நிராகரி
       legale_names:
         france: பிரான்சு
index 39b103936d43f247998db3ac265c4990893fecde..22d8f31286d9de12c6457245dd144547cba6650a 100644 (file)
@@ -33,6 +33,7 @@ te:
       relation: సంబంధం
       session: సెషన్
       user: వాడుకరి
+      user_preference: వాడుకరి అభిరుచి
       way: దారి
     attributes:
       diary_comment:
@@ -152,7 +153,8 @@ te:
       comment: వ్యాఖ్య
       area: ప్రదేశం
     index:
-      title_user: '%{user} చేసిన మార్పులు'
+      title: మార్పుల సమితులు
+      title_user: '%{user} చేసిన మార్పులసమితులు'
       load_more: మరిన్ని చూపించు
   diary_entries:
     new:
@@ -178,14 +180,14 @@ te:
       latitude: 'అక్షాంశం:'
       longitude: 'రేఖాంశం:'
       use_map_link: పటాన్ని వాడు
-      save_button: భద్రపరచు
+      save_button: à°­à°¦à±\8dరపరà±\81à°\9aà±\81
     show:
       title: వాడుకరుల డైరీలు | %{user}
       user_title: '%{user} యొక్క డైరీ'
       leave_a_comment: వ్యాఖ్యానించండి
       login_to_leave_a_comment: వ్యాఖ్యానించడానికి %{login_link}
-      login: à°ªà±\8dà°°à°µà±\87శిà°\82à°\9aà±\81
-      save_button: భద్రపరచు
+      login: à°ªà±\8dà°°à°µà±\87శిà°\82à°\9aà°\82à°¡à°¿
+      save_button: à°­à°¦à±\8dరపరà±\81à°\9aà±\81
     diary_entry:
       comment_link: ఈ పద్దుపై వ్యాఖ్యానించండి
       reply_link: ఈ పద్దుపై స్పందించండి
@@ -362,6 +364,9 @@ te:
           park: పార్కు
           playground: ఆటస్థలం
           swimming_pool: ఈత కొలను
+        man_made:
+          water_well: బావి
+          works: కర్మాగారం
         natural:
           beach: బీచి
           cave_entrance: గుహ ద్వారం
@@ -405,6 +410,9 @@ te:
           subdivision: ఉపవిభాగం
           town: పట్టణం
           village: గ్రామం
+        railway:
+          platform: రైల్వే ప్లాట్‌ఫారం
+          station: రైల్వే స్టేషన్
         shop:
           butcher: కసాయి
           jewelry: నగల దుకాణం
@@ -442,6 +450,10 @@ te:
     results:
       no_results: ఫలితాలేమీ దొరకలేదు
       more_results: మరిన్ని ఫలితాలు
+  issues:
+    index:
+      status: స్థితి
+      reports: నివేదికలు
   layouts:
     logo:
       alt_text: ఓపెన్&zwnj;స్ట్రీట్&zwnj;మాప్ చిహ్నం
@@ -461,6 +473,7 @@ te:
     intro_header: ఓపెన్‌స్ట్రీట్‌మ్యాప్‌కి స్వాగతం!
     intro_2_create_account: వాడుకరి ఖాతాను సృష్టించుకోండి
     partners_partners: భాగస్వాములు
+    tou: వాడుక నియమాలు
     help: సహాయం
     about: గురించి
     copyright: నకలుహక్కులు
@@ -699,8 +712,10 @@ te:
       confirm password: 'సంకేతపదాన్ని నిర్ధారించండి:'
       continue: నమోదవ్వండి
     terms:
+      heading: నియమాలు
+      read_tou: నేను వాడుక నియమాలను చదివాను, వాటికి అంగీకరిస్తున్నాను
       consider_pd_why: ఇది ఏమిటి?
-      agree: అంగీకరించు
+      continue: కొనసాగించు
       decline: తిరస్కరించు
       legale_select: 'నివసించే దేశం:'
       legale_names:
index 28acbad042d2984562fb0429c8c42bb277aeea75..fdfdfda420f2b7ec491b9f5ddf468bf8e2e0b321 100644 (file)
@@ -1819,10 +1819,8 @@ th:
     terms:
       title: เงื่อนไขผู้ร่วมสร้างสรรค์
       heading: เงื่อนไขผู้ร่วมสร้างสรรค์
-      read and accept: โปรดอ่านข้อตกลงต่อไปนี้และเลือกปุ่ม ยอมรับ เพื่อยืนยันว่าท่านยอมรับเงื่อนไขนี้ในการสร้างสรรค์ที่เคยทำมาและที่จะทำต่อไปในอนาคต
       consider_pd: นอกเหนือจากข้อตกลงข้างต้น ข้าพเจ้ายินดีสละการสร้างสรรค์ของข้าพเจ้าให้เป็นงานอันไม่มีลิขสิทธิ์
       consider_pd_why: นี้คืออะไร?
-      agree: ยอมรับ
       decline: ไม่ยอมรับ
       legale_select: 'ประเทศที่พำนัก:'
       legale_names:
index 0920cb86c6a4a69e517b09d195bc92207ad3141a..fc95978dd1eb9bdfe482e4be460986a0f3f8d714 100644 (file)
@@ -1604,9 +1604,6 @@ tl:
     terms:
       title: 'Mga tuntunin sa tagapag-ambag:'
       heading: Tuntunin sa taga-ambag
-      read and accept: Mangyaring basahin ang kasunduang nasa ibaba at pindutin ang
-        pindutan ng pagpayag upang tiyakan ang pagtanggap mo sa patakarang ito para
-        sa iyong umiiral at hinaharap na mga pag-aambag.
       consider_pd: Bilang karagdagan sa kasunduang nasa itaas, itinuturing ko ang
         mga ambag ko bilang nasa Nasasaklawan ng Madla.
       consider_pd_why: ano ba ito?
@@ -1614,7 +1611,6 @@ tl:
       guidance: 'Kabatiran upang makatulong sa pag-unawa ng mga katagang ito: a <a
         href="%{summary}">buod na nababasa ng tao</a> at ilang <a href="%{translations}">impormal
         na mga salinwika</a>'
-      agree: Sumang-ayon
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: Tanggihan
       you need to accept or decline: Mangyaring basahin at pagkaraan ay tanggipin
index 7ba02447e9654b0e84dd0f9b0f7997e22be33495..8d29817415b6eb10d2ddf034b5ed1ca9f27b9ab2 100644 (file)
@@ -2160,16 +2160,12 @@ tr:
     terms:
       title: Katılımcı Şartları
       heading: Katılımcı Şartları
-      read and accept: Lütfen aşağıdaki anlaşmayı okuyun ve mevcut ya da gelecekteki
-        katkılarınız için bu sözleşmenin şartlarını kabul ettiğinizi onaylamak için
-        kabul et butonuna basın.
       consider_pd: Yukarıdaki anlaşmaya ek olarak, katkılarınızın kamu malı olarak
         kabul edilmesini de seçebilirsiniz
       consider_pd_why: bu nedir?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 'Buradaki bilgileri anlamanıza yardımcı olabilecek bilgiler:  <a href="%{summary}">okunabilir
         bir özet</a> ve ayrıca <a href="%{translations}">genel çeviriler</a>'
-      agree: Kabul Et
       declined: |2-
 
         https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
index 96e29e11bcaef0e5686feca9d5fc4c43e88e69d7..0b5b1a0cdaa9e1cadb1119886757f9ca234b44d5 100644 (file)
@@ -1925,15 +1925,11 @@ uk:
     terms:
       title: Умови співпраці
       heading: Умови співпраці
-      read and accept: Будь ласка, ознайомтеся з угодою нижче і натисніть кнопку «Приймаю»
-        для підтвердження того, що ви згодні з умовами цієї угоди для існуючих і майбутніх
-        внесків.
       consider_pd: На додаток до зазначеної угоди, я вважаю, що мій внесок є суспільним
         надбанням
       consider_pd_why: що це?
       guidance: 'Інформація, яка допоможе зрозуміти ці терміни: <a href="%{summary}">скорочений
         опис</a> і деякі <a href="%{translations}">неофіційні переклади</a>'
-      agree: Приймаю
       decline: Відхилити
       you need to accept or decline: Будь ласка, прочитайте, а потім або прийміть
         або відхиліть нові Умови Участі.
index 94708eb1b8b371a95cb93cf4a5f609fb99eea784..3a1a8091d69a8ab88abaac0ae9aeaf65a3c011c1 100644 (file)
@@ -20,6 +20,10 @@ vi:
       friendly: '%e tháng %m năm %Y lúc %H:%M'
       blog: '%d tháng %m năm %Y'
   activerecord:
+    errors:
+      messages:
+        invalid_email_address: hình như không phải là địa chỉ thư điện tử hợp lệ
+        email_address_not_routable: không thể gửi đến
     models:
       acl: Danh sách Điều khiển Truy cập
       changeset: Bộ thay đổi
@@ -394,6 +398,7 @@ vi:
           gate: Cổng
           hangar: Nhà Máy bay
           helipad: Sân bay Trực thăng
+          parking_position: Chỗ Đậu Máy bay
           runway: Đường băng
           taxiway: Đường lăn
           terminal: Nhà ga Sân bay
@@ -882,7 +887,7 @@ vi:
           "yes": Tiệm
         tourism:
           alpine_hut: Túp lều Trên Núi
-          apartment: Khu chung cư
+          apartment: Khu Nghỉ dưỡng Chung cư
           artwork: Tác phẩm Nghệ thuật
           attraction: Nơi Du lịch
           bed_and_breakfast: Nhà trọ
@@ -1075,9 +1080,12 @@ vi:
     intro_text: OpenStreetMap là bản đồ thế giới do những người như bạn xây dựng và
       cho phép sử dụng thoải mái theo một giấy phép nguồn mở.
     intro_2_create_account: Mở tài khoản mới
+    hosting_partners_html: Dịch vụ lưu trữ nhờ sự hỗ trợ của %{ucl}, %{bytemark},
+      và %{partners} khác.
     partners_ucl: UCL
     partners_bytemark: Bytemark Hosting
     partners_partners: các công ty bảo trợ
+    tou: Điều khoản Sử dụng
     osm_offline: Cơ sở dữ liệu OpenStreetMap đang ngoại tuyến trong lúc đang thực
       hiện những công việc bảo quản cơ sở dữ liệu cần thiết.
     osm_read_only: Cơ sở dữ liệu OpenStreetMap đang bị khóa không được sửa đổi trong
@@ -1309,7 +1317,7 @@ vi:
         Bản quyền và Giấy phép</a>.'
       legal_title: Pháp luật
       legal_html: |-
-        Trang Web này và nhiều dịch vụ có liên quan được hoạt động chính thức bởi <a href='https://osmfoundation.org/?uselang=vi'>Quỹ OpenStreetMap</a> (OSMF) thay mặt cho cộng đồng. Việc sử dụng các dịch vụ do OSMF hoạt động phải tuân theo <a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy?uselang=vi">các Quy định Sử dụng Hợp lý</a> và <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy?uselang=vi">Quy định về Quyền Riêng tư</a> của chúng tôi.
+        Trang Web này và nhiều dịch vụ có liên quan được hoạt động chính thức bởi <a href='https://osmfoundation.org/?uselang=vi'>Quỹ OpenStreetMap</a> (OSMF) thay mặt cho cộng đồng. Việc sử dụng các dịch vụ do OSMF hoạt động phải tuân theo <a href="https://wiki.osmfoundation.org/wiki/Terms_of_Use?uselang=vi">các Điều khoản Sử dụng</a>, <a href="https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy?uselang=vi">các Quy định Sử dụng Hợp lý</a>, và <a href="https://wiki.osmfoundation.org/wiki/Privacy_Policy?uselang=vi">Quy định về Quyền Riêng tư</a> của chúng tôi.
         <br>
         Xin vui lòng <a href='https://osmfoundation.org/Contact?uselang=vi'>liên lạc với OSMF</a> nếu bạn có thắc mắc về giấy phép, bản quyền, hoặc thắc mắc khác về pháp luật.
         <br>
@@ -1401,11 +1409,16 @@ vi:
           href=\"http://www.gu.gov.si/en/\">Cơ quan Khảo sát và Bản đồ</a> và\n<a
           href=\"http://www.mkgp.gov.si/en/\">Cục Nông nghiệp, Lâm nghiệp, và Thức
           ăn</a>\n(thông tin công cộng của Slovenia)."
+        contributors_es_html: "<strong>Tây Ban Nha</strong>: Bao gồm dữ liệu bắt nguồn
+          từ \nViện Địa lý Quốc gia Tây Ban Nha (<a href=\"http://www.ign.es/\">IGN</a>)
+          và\nHệ thống Bản đồ Quốc gia (<a href=\"http://www.scne.es/\">SCNE</a>)\nđược
+          cấp phép tái sử dụng theo <a href=\"https://creativecommons.org/licenses/by/4.0/deed.vi\">CC
+          BY 4.0</a>."
         contributors_za_html: '<strong>Nam Phi</strong>: Bao gồm dữ liệu từ <a href="http://www.ngi.gov.za/">Tổng
           cục: Thông tin Không gian địa lý Quốc gia</a>, bản quyền nhà nước được bảo
           lưu.'
         contributors_gb_html: '<strong>Vương quốc Anh</strong>: Bao gồm dữ liệu Ordnance
-          Survey © bản quyền Crown Copyright và quyền cơ sở dữ liệu 2010–12.'
+          Survey © bản quyền Crown Copyright và quyền cơ sở dữ liệu 2010–19.'
         contributors_footer_1_html: |-
           Xem thêm chi tiết và các nguồn gốc khác dùng để cải tiến OpenStreetMap tại <a
           href="https://wiki.openstreetmap.org/wiki/Contributors?uselang=vi">trang Người đóng góp</a> trên OpenStreetMap Wiki.
@@ -1557,6 +1570,8 @@ vi:
       welcomemat:
         url: https://welcome.openstreetmap.org/
         title: Dành cho các tổ chức
+        description: Tổ chức của bạn có tính tương tác với OpenStreetMap? Tìm hiểu
+          thêm trong “Thảm Trước Cửa”.
       wiki:
         url: https://wiki.openstreetmap.org/wiki/Vi:Main_Page?uselang=vi
         title: wiki.openstreetmap.org
@@ -1648,7 +1663,7 @@ vi:
       edit: Sửa đổi
       preview: Xem trước
     markdown_help:
-      title_html: Trang trí dùng cú pháp <a href="https://daringfireball.net/projects/markdown/">Markdown</a>
+      title_html: Trang trí dùng cú pháp <a href="https://kramdown.gettalong.org/quickref.html">kramdown</a>
       headings: Đề mục
       heading: Đề mục
       subheading: Đề mục con
@@ -1829,6 +1844,7 @@ vi:
         other: Tập tin GPX của %{user} có %{count} địa điểm
       description_without_count: Tập tin GPX của %{user}
   application:
+    permission_denied: Bạn không có quyền thực hiện tác vụ này
     require_cookies:
       cookies_needed: Hình như đã tắt cookie. Xin hãy bật lên chức năng cookie trong
         trình duyệt để tiếp tục.
@@ -2042,19 +2058,26 @@ vi:
         wiki này</a>.
       terms declined url: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=vi
     terms:
-      title: Điều kiện đóng góp
-      heading: Điều kiện đóng góp
-      read and accept: Xin vui lòng đọc thỏa thuận ở dưới và bấm nút Đồng ý để cho
-        biết chấp nhận các điều khoản của thỏa thuận này đối với các đóng góp của
-        bạn hiện tại và tương lai.
-      consider_pd: Ngoài các thỏa thuận ở trên, tôi coi rằng các đóng góp của tôi
+      title: Điều khoản
+      heading: Điều khoản
+      heading_ct: Điều kiện đóng góp
+      read and accept with tou: Xin vui lòng đọc thỏa thuận đóng góp và các điều khoản
+        sử dụng, đọc xong thì đánh cả hai hộp kiểm và bấm nút Tiếp tục.
+      contributor_terms_explain: Thỏa thuận này quy định các đóng góp do bạn đã thực
+        hiện và sẽ thực hiện.
+      read_ct: Tôi đã đọc và chấp nhận các điều khoản đóng góp bên trên
+      tou_explain_html: Các %{tou_link} quy định cách sử dụng trang Web và các cơ
+        sở hạ tầng khác do OSMF cung cấp. Xin vui lòng mở liên kết và đọc và chấp
+        nhận thỏa thuận.
+      read_tou: Tôi đã đọc và chấp nhận các Điều khoản Sử dụng
+      consider_pd: Bên ngoài các điều bên trên, tôi coi rằng các đóng góp của tôi
         thuộc về phạm vi công cộng
       consider_pd_why: đây là gì?
       consider_pd_why_url: https://wiki.osmfoundation.org/wiki/Licence_and_Legal_FAQ/Why_would_I_want_my_contributions_to_be_public_domain?uselang=vi
       guidance: 'Thông tin để tìm hiểu về các điều khoản này: <a href="%{summary}">bản
         tóm tắt dễ đọc</a> và <a href="%{translations}">một số bản dịch không chính
         thức</a>'
-      agree: Chấp nhận
+      continue: Tiếp tục
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined?uselang=vi
       decline: Từ chối
       you need to accept or decline: Để tiếp tục, xin vui lòng đọc các Điều khoản
@@ -2466,6 +2489,7 @@ vi:
         title: Lớp
       copyright: © <a href='%{copyright_url}'>những người đóng góp vào OpenStreetMap</a>
       donate_link_text: <a class='donate-attr' href='%{donate_url}'>Quyên góp</a>
+      terms: <a href='%{terms_url}' target='_blank'>Điều khoản trang Web và API</a>
     site:
       edit_tooltip: Sửa đổi bản đồ
       edit_disabled_tooltip: Phóng to để sửa đổi bản đồ
@@ -2504,7 +2528,9 @@ vi:
     directions:
       ascend: Lên
       engines:
+        fossgis_osrm_bike: Xe đạp (OSRM)
         fossgis_osrm_car: Xe hơi (OSRM)
+        fossgis_osrm_foot: Đi bộ (OSRM)
         graphhopper_bicycle: Xe đạp (GraphHopper)
         graphhopper_car: Xe hơi (GraphHopper)
         graphhopper_foot: Đi bộ (GraphHopper)
@@ -2632,4 +2658,9 @@ vi:
         trong trước khi xóa dãy ẩn.
       flash: Đã xóa dãy ẩn.
       error: Xuất hiện lỗi khi xóa dãy ẩn này.
+  validations:
+    leading_whitespace: có khoảng cách thừa đằng trước
+    trailing_whitespace: có khoảng cách thừa đằng sau
+    invalid_characters: chứa ký tự không hợp lệ
+    url_characters: chứa ký tự URL đặc biệt (%{characters})
 ...
index 4d2c4cd654ea8cd16fe16ef57ba323564129c3f9..37bb6a8f8fae8507d2e82d8b1c29a5ae4ffc806a 100644 (file)
@@ -1948,12 +1948,10 @@ zh-CN:
     terms:
       title: 贡献者条款
       heading: 贡献者条款
-      read and accept: 请阅读下面的协议并按同意按钮,以确认为您现有的和将来的贡献接受本协议的条款。
       consider_pd: 除了上述协议,我同意将我的贡献授权为公共领域
       consider_pd_why: 这是什么?
       consider_pd_why_url: http://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 帮助理解这些条款的信息:一个<a href="%{summary}">可读的摘要</a>和一些<a href="%{translations}">非正式翻译</a>
-      agree: 同意
       declined: http://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: 拒绝
       you need to accept or decline: 请先阅读,然后接受或拒绝新的贡献者条款,再继续。
index 951aabb728562a5ba87a5e4b51a0925d52a88a8e..efbf8ee787a695914a18301c0142638113a7c5fc 100644 (file)
@@ -1112,6 +1112,7 @@ zh-TW:
     partners_ucl: 倫敦大學學院
     partners_bytemark: Bytemark 主機代管
     partners_partners: 合作夥伴
+    tou: 使用條款
     osm_offline: OpenStreetMap 資料庫目前正在離線,直到必要的資料庫維護工作完成為止。
     osm_read_only: OpenStreetMap 資料庫目前處於唯讀模式,直到必要的資料庫維護工作完成為止。
     donate: 以 %{link} 給硬體升級基金來支援 OpenStreetMap。
@@ -1307,7 +1308,7 @@ zh-TW:
         及其貢獻者。若您在我們的資料上作修改或以之透過某些方式衍生其他資料,則只可依相同授權條款散佈有關成果。詳情請參閱<a href='%{copyright_path}'>版權及授權條款頁面</a>。
       legal_title: 法律資訊
       legal_html: "本站以及許多相關的服務正式由<a href='https://osmfoundation.org/'> OpenStreetMap
-        基金會</a>(OSMF)代表社群所營運。所有使用的 OSMF 運行服務皆符合我們的<a href=\"https://wiki.openstreetmap.org/wiki/Acceptable_Use_Policy\">可接受使用政策</a>和<a
+        基金會</a>(OSMF)代表社群所營運。所有使用的 OSMF 運行服務皆符合我們的<a href=\"https://wiki.osmfoundation.org/wiki/Terms_of_Use\">使用條款</a>和<a
         href=\"https://wiki.osmfoundation.org/wiki/Privacy_Policy\">隱私政策</a>\n<br>
         \n若您有任何授權、版權或其他法律諮詢,請<a href='https://osmfoundation.org/Contact'>聯絡 OSMF </a>。\n<br>\nOpenStreetMap、放大鏡標誌,和地圖狀態是<a
         href=\"https://wiki.osmfoundation.org/wiki/Trademark_Policy\"> OSMF 的註冊商標</a>。"
@@ -1965,12 +1966,12 @@ zh-TW:
     terms:
       title: 貢獻者條款
       heading: 貢獻者條款
-      read and accept: 請閱讀下面的協議並按同意按鈕,以確認為你現有的和將來的貢獻接受本協議的條款。
-      consider_pd: 在上述協議之上,我同意將我的貢獻放到公共領域
+      read_tou: 我已經閱讀過並同意使用條款
+      consider_pd: 除上述內容之外,我同意將我的貢獻放到公共領域
       consider_pd_why: 這是什麼?
       consider_pd_why_url: https://www.osmfoundation.org/wiki/License/Why_would_I_want_my_contributions_to_be_public_domain
       guidance: 幫助理解這些條款的資料:一個<a href="%{summary}">供普通人閱讀的摘要</a>和一些<a href="%{translations}">非正式翻譯</a>
-      agree: 同意
+      continue: 繼續
       declined: https://wiki.openstreetmap.org/wiki/Contributor_Terms_Declined
       decline: 拒絕
       you need to accept or decline: 請先閱讀,然後選擇接受或拒絕新的貢獻者條款,再繼續。
index 1989325830543c08d93e3504b7e68022de7b8eb0..63ce061672a559ccdf87622093972ad5eac2800f 100644 (file)
@@ -216,9 +216,12 @@ OpenStreetMap::Application.routes.draw do
   post "/trace/:id/delete" => "traces#delete", :id => /\d+/
 
   # diary pages
-  match "/diary/new" => "diary_entries#new", :via => [:get, :post]
-  get "/diary/friends" => "diary_entries#index", :friends => true, :as => "friend_diaries"
-  get "/diary/nearby" => "diary_entries#index", :nearby => true, :as => "nearby_diaries"
+  resources :diary_entries, :path => "diary", :only => [:new, :create, :index] do
+    collection do
+      get "friends" => "diary_entries#index", :friends => true
+      get "nearby" => "diary_entries#index", :nearby => true
+    end
+  end
   get "/user/:display_name/diary/rss" => "diary_entries#rss", :defaults => { :format => :rss }
   get "/diary/:language/rss" => "diary_entries#rss", :defaults => { :format => :rss }
   get "/diary/rss" => "diary_entries#rss", :defaults => { :format => :rss }
@@ -226,10 +229,10 @@ OpenStreetMap::Application.routes.draw do
   get "/user/:display_name/diary/comments/" => "diary_entries#comments"
   get "/user/:display_name/diary" => "diary_entries#index"
   get "/diary/:language" => "diary_entries#index"
-  get "/diary" => "diary_entries#index"
-  get "/user/:display_name/diary/:id" => "diary_entries#show", :id => /\d+/, :as => :diary_entry
+  scope "/user/:display_name" do
+    resources :diary_entries, :path => "diary", :only => [:edit, :update, :show]
+  end
   post "/user/:display_name/diary/:id/newcomment" => "diary_entries#comment", :id => /\d+/
-  match "/user/:display_name/diary/:id/edit" => "diary_entries#edit", :via => [:get, :post], :id => /\d+/
   post "/user/:display_name/diary/:id/hide" => "diary_entries#hide", :id => /\d+/, :as => :hide_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/subscribe" => "diary_entries#subscribe", :as => :diary_entry_subscribe, :id => /\d+/
index 988b55a633a24c608e6559981dc58d11472b5f94..a664b78b0f883fe4cf15d23f14ae26688f22be5b 100644 (file)
@@ -57,6 +57,8 @@ nearby_users: 30
 nearby_radius: 50
 # Spam threshold
 spam_threshold: 50
+# Delay diary entries from appearing in the feed for this many hours
+diary_feed_delay: 0
 # Default legale (jurisdiction location) for contributor terms
 default_legale: GB
 # Use the built-in jobs queue for importing traces
index 022c9324633250247b2088d66b1d7853c973998f..e9a506c414fc1b4ce5a8676934e33456efa72399 100644 (file)
@@ -1,6 +1,8 @@
 # Trace directories for testing
 gpx_trace_dir: <%= Rails.root.join("test", "gpx", "traces") %>
 gpx_image_dir: <%= Rails.root.join("test", "gpx", "images") %>
+# Ignore the diary feed delay unless we're specifically testing it
+diary_feed_delay: 0
 # Geonames credentials for testing
 geonames_username: "dummy"
 # External authentication credentials for testing
diff --git a/db/migrate/20181020114000_add_user_tou_agreed.rb b/db/migrate/20181020114000_add_user_tou_agreed.rb
new file mode 100644 (file)
index 0000000..ea89c6c
--- /dev/null
@@ -0,0 +1,5 @@
+class AddUserTouAgreed < ActiveRecord::Migration[5.1]
+  def change
+    add_column :users, :tou_agreed, :datetime
+  end
+end
diff --git a/db/migrate/20190518115041_add_acl_indexes.rb b/db/migrate/20190518115041_add_acl_indexes.rb
new file mode 100644 (file)
index 0000000..a66d820
--- /dev/null
@@ -0,0 +1,6 @@
+class AddAclIndexes < ActiveRecord::Migration[5.2]
+  def change
+    add_index :acls, :domain
+    add_index :acls, :address, :using => :gist, :opclass => :inet_ops
+  end
+end
index 71cc60baaf9e514b9dd65db0eb8b011b52682edb..0818ae0e9b8c59a61bd2387fae5b8d915d5512b6 100644 (file)
@@ -1293,7 +1293,8 @@ CREATE TABLE public.users (
     image_use_gravatar boolean DEFAULT false NOT NULL,
     image_content_type character varying,
     auth_provider character varying,
-    home_tile bigint
+    home_tile bigint,
+    tou_agreed timestamp without time zone
 );
 
 
@@ -2063,6 +2064,20 @@ CREATE INDEX gpx_files_user_id_idx ON public.gpx_files USING btree (user_id);
 CREATE INDEX gpx_files_visible_visibility_idx ON public.gpx_files USING btree (visible, visibility);
 
 
+--
+-- Name: index_acls_on_address; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE INDEX index_acls_on_address ON public.acls USING gist (address inet_ops);
+
+
+--
+-- Name: index_acls_on_domain; Type: INDEX; Schema: public; Owner: -
+--
+
+CREATE INDEX index_acls_on_domain ON public.acls USING btree (domain);
+
+
 --
 -- Name: index_changeset_comments_on_created_at; Type: INDEX; Schema: public; Owner: -
 --
@@ -2931,7 +2946,9 @@ INSERT INTO "schema_migrations" (version) VALUES
 ('20161011010929'),
 ('20170222134109'),
 ('20180204153242'),
+('20181020114000'),
 ('20181031113522'),
+('20190518115041'),
 ('21'),
 ('22'),
 ('23'),
index b21e7a06e9ace73581c064cfee6243b2a7c86e99..169c5a9dcc8aade654db0546780edaf94185353c 100644 (file)
@@ -1,6 +1,7 @@
 Sitemap: http://www.openstreetmap.org/sitemap.xml.gz
 
 User-agent: *
+Disallow: /user/*/diary
 Disallow: /user/*/traces/
 Allow: /user/
 Disallow: /traces/tag/
@@ -8,6 +9,7 @@ Disallow: /traces/page/
 Disallow: /api/
 Disallow: /edit
 Disallow: /browse
+Disallow: /diary
 Disallow: /login
 Disallow: /geocoder
 Disallow: /history
index b1f2216c792e26eb39778be0e738f48982e62e43..71684c65e74366e8235010b6ba1504f479f6abee 100644 (file)
@@ -62,8 +62,8 @@ class DiaryEntriesControllerTest < ActionController::TestCase
       { :controller => "diary_entries", :action => "new" }
     )
     assert_routing(
-      { :path => "/diary/new", :method => :post },
-      { :controller => "diary_entries", :action => "new" }
+      { :path => "/diary", :method => :post },
+      { :controller => "diary_entries", :action => "create" }
     )
     assert_routing(
       { :path => "/user/username/diary/1", :method => :get },
@@ -74,8 +74,8 @@ class DiaryEntriesControllerTest < ActionController::TestCase
       { :controller => "diary_entries", :action => "edit", :display_name => "username", :id => "1" }
     )
     assert_routing(
-      { :path => "/user/username/diary/1/edit", :method => :post },
-      { :controller => "diary_entries", :action => "edit", :display_name => "username", :id => "1" }
+      { :path => "/user/username/diary/1", :method => :put },
+      { :controller => "diary_entries", :action => "update", :display_name => "username", :id => "1" }
     )
     assert_routing(
       { :path => "/user/username/diary/1/newcomment", :method => :post },
@@ -116,7 +116,7 @@ class DiaryEntriesControllerTest < ActionController::TestCase
       assert_select "h1", :text => /New Diary Entry/, :count => 1
     end
     assert_select "div#content", :count => 1 do
-      assert_select "form[action='/diary/new'][method=post]", :count => 1 do
+      assert_select "form[action='/diary'][method=post]", :count => 1 do
         assert_select "input#diary_entry_title[name='diary_entry[title]']", :count => 1
         assert_select "textarea#diary_entry_body[name='diary_entry[body]']", :text => "", :count => 1
         assert_select "select#diary_entry_language_code", :count => 1
@@ -140,30 +140,30 @@ class DiaryEntriesControllerTest < ActionController::TestCase
           :session => { :user => create(:user).id }
     end
     assert_response :success
-    assert_template :edit
+    assert_template :new
   end
 
-  def test_new_no_body
+  def test_create_no_body
     # Now try creating a invalid diary entry with an empty body
     user = create(:user)
     assert_no_difference "DiaryEntry.count" do
-      post :new,
+      post :create,
            :params => { :commit => "save",
                         :diary_entry => { :title => "New Title", :body => "", :latitude => "1.1",
                                           :longitude => "2.2", :language_code => "en" } },
            :session => { :user => user.id }
     end
     assert_response :success
-    assert_template :edit
+    assert_template :new
 
     assert_nil UserPreference.where(:user_id => user.id, :k => "diary.default_language").first
   end
 
-  def test_new_post
+  def test_create
     # Now try creating a diary entry
     user = create(:user)
     assert_difference "DiaryEntry.count", 1 do
-      post :new,
+      post :create,
            :params => { :commit => "save",
                         :diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
                                           :longitude => "2.2", :language_code => "en" } },
@@ -185,13 +185,13 @@ class DiaryEntriesControllerTest < ActionController::TestCase
     assert_equal "en", UserPreference.where(:user_id => user.id, :k => "diary.default_language").first.v
   end
 
-  def test_new_german
+  def test_create_german
     create(:language, :code => "de")
     user = create(:user)
 
     # Now try creating a diary entry in a different language
     assert_difference "DiaryEntry.count", 1 do
-      post :new,
+      post :create,
            :params => { :commit => "save",
                         :diary_entry => { :title => "New Title", :body => "This is a new body for the diary entry", :latitude => "1.1",
                                           :longitude => "2.2", :language_code => "de" } },
@@ -221,7 +221,7 @@ class DiaryEntriesControllerTest < ActionController::TestCase
 
     # Try creating a spammy diary entry
     assert_difference "DiaryEntry.count", 1 do
-      post :new,
+      post :create,
            :params => { :commit => "save",
                         :diary_entry => { :title => spammy_title, :body => spammy_body, :language_code => "en" } },
            :session => { :user => user.id }
@@ -279,21 +279,21 @@ class DiaryEntriesControllerTest < ActionController::TestCase
         :params => { :display_name => entry.user.display_name, :id => entry.id },
         :session => { :user => entry.user }
     assert_response :success
-    assert_select "title", :text => /Edit diary entry/, :count => 1
+    assert_select "title", :text => /Edit Diary Entry/, :count => 1
     assert_select "div.content-heading", :count => 1 do
-      assert_select "h1", :text => /Edit diary entry/, :count => 1
+      assert_select "h1", :text => /Edit Diary Entry/, :count => 1
     end
     assert_select "div#content", :count => 1 do
-      assert_select "form[action='/user/#{ERB::Util.u(entry.user.display_name)}/diary/#{entry.id}/edit'][method=post]", :count => 1 do
+      assert_select "form[action='/user/#{ERB::Util.u(entry.user.display_name)}/diary/#{entry.id}'][method=post]", :count => 1 do
         assert_select "input#diary_entry_title[name='diary_entry[title]'][value='#{entry.title}']", :count => 1
         assert_select "textarea#diary_entry_body[name='diary_entry[body]']", :text => entry.body, :count => 1
         assert_select "select#diary_entry_language_code", :count => 1
         assert_select "input#latitude[name='diary_entry[latitude]']", :count => 1
         assert_select "input#longitude[name='diary_entry[longitude]']", :count => 1
-        assert_select "input[name=commit][type=submit][value=Save]", :count => 1
+        assert_select "input[name=commit][type=submit][value=Update]", :count => 1
         assert_select "input[name=commit][type=submit][value=Edit]", :count => 1
         assert_select "input[name=commit][type=submit][value=Preview]", :count => 1
-        assert_select "input", :count => 7
+        assert_select "input", :count => 8
       end
     end
 
@@ -303,11 +303,11 @@ class DiaryEntriesControllerTest < ActionController::TestCase
     new_latitude = "1.1"
     new_longitude = "2.2"
     new_language_code = "en"
-    post :edit,
-         :params => { :display_name => entry.user.display_name, :id => entry.id, :commit => "save",
-                      :diary_entry => { :title => new_title, :body => new_body, :latitude => new_latitude,
-                                        :longitude => new_longitude, :language_code => new_language_code } },
-         :session => { :user => entry.user.id }
+    put :update,
+        :params => { :display_name => entry.user.display_name, :id => entry.id, :commit => "save",
+                     :diary_entry => { :title => new_title, :body => new_body, :latitude => new_latitude,
+                                       :longitude => new_longitude, :language_code => new_language_code } },
+        :session => { :user => entry.user.id }
     assert_response :redirect
     assert_redirected_to :action => :show, :display_name => entry.user.display_name, :id => entry.id
 
@@ -664,6 +664,18 @@ class DiaryEntriesControllerTest < ActionController::TestCase
     assert_match "<title>&lt;script&gt;</title>", response.body
   end
 
+  def test_feed_delay
+    create(:diary_entry, :created_at => 7.hours.ago)
+    create(:diary_entry, :created_at => 5.hours.ago)
+    get :rss, :params => { :format => :rss }
+    assert_select "rss>channel>item", :count => 2
+
+    with_diary_feed_delay(6) do
+      get :rss, :params => { :format => :rss }
+      assert_select "rss>channel>item", :count => 1
+    end
+  end
+
   def test_show
     user = create(:user)
     suspended_user = create(:user, :suspended)
@@ -897,4 +909,13 @@ class DiaryEntriesControllerTest < ActionController::TestCase
       assert_select "a[href=?]", "/user/#{ERB::Util.u(entry.user.display_name)}/diary/#{entry.id}"
     end
   end
+
+  def with_diary_feed_delay(value)
+    diary_feed_delay = Settings.diary_feed_delay
+    Settings.diary_feed_delay = value
+
+    yield
+
+    Settings.diary_feed_delay = diary_feed_delay
+  end
 end
index 1b875ca97b5d1c643c3489c62374003abfcb69b5..5dbd866a960f6fb74ec423f8bae97822b67c05b5 100644 (file)
@@ -221,7 +221,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_difference "User.count", 1 do
       assert_difference "ActionMailer::Base.deliveries.size", 1 do
         perform_enqueued_jobs do
-          post :save, :session => { :new_user => user }
+          post :save, :session => { :new_user => user }, :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -245,7 +245,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post :save, :session => { :new_user => user }
+          post :save, :session => { :new_user => user }, :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -262,7 +262,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post :save, :session => { :new_user => user }
+          post :save, :session => { :new_user => user }, :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -279,7 +279,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post :save, :session => { :new_user => user }
+          post :save, :session => { :new_user => user }, :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -296,7 +296,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post :save, :session => { :new_user => user }
+          post :save, :session => { :new_user => user }, :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -313,7 +313,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_no_difference "User.count" do
       assert_no_difference "ActionMailer::Base.deliveries.size" do
         perform_enqueued_jobs do
-          post :save, :session => { :new_user => user }
+          post :save, :session => { :new_user => user }, :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -329,7 +329,8 @@ class UsersControllerTest < ActionController::TestCase
       assert_difference "ActionMailer::Base.deliveries.size", 1 do
         perform_enqueued_jobs do
           post :save, :session => { :new_user => user,
-                                    :referer => "/edit?editor=id#map=1/2/3" }
+                                    :referer => "/edit?editor=id#map=1/2/3" },
+                      :params => { :read_ct => 1, :read_tou => 1 }
         end
       end
     end
@@ -444,34 +445,34 @@ class UsersControllerTest < ActionController::TestCase
   def test_confirm_success_no_token_with_referer
     user = create(:user, :pending)
     stub_gravatar_request(user.email)
-    confirm_string = user.tokens.create(:referer => diary_new_path).token
+    confirm_string = user.tokens.create(:referer => new_diary_entry_path).token
 
     @request.cookies["_osm_session"] = user.display_name
     post :confirm, :params => { :display_name => user.display_name, :confirm_string => confirm_string }
-    assert_redirected_to login_path(:referer => diary_new_path)
+    assert_redirected_to login_path(:referer => new_diary_entry_path)
     assert_match(/Confirmed your account/, flash[:notice])
   end
 
   def test_confirm_success_good_token_with_referer
     user = create(:user, :pending)
     stub_gravatar_request(user.email)
-    confirm_string = user.tokens.create(:referer => diary_new_path).token
+    confirm_string = user.tokens.create(:referer => new_diary_entry_path).token
     token = user.tokens.create.token
 
     @request.cookies["_osm_session"] = user.display_name
     post :confirm, :params => { :display_name => user.display_name, :confirm_string => confirm_string }, :session => { :token => token }
-    assert_redirected_to diary_new_path
+    assert_redirected_to new_diary_entry_path
   end
 
   def test_confirm_success_bad_token_with_referer
     user = create(:user, :pending)
     stub_gravatar_request(user.email)
-    confirm_string = user.tokens.create(:referer => diary_new_path).token
+    confirm_string = user.tokens.create(:referer => new_diary_entry_path).token
     token = create(:user).tokens.create.token
 
     @request.cookies["_osm_session"] = user.display_name
     post :confirm, :params => { :display_name => user.display_name, :confirm_string => confirm_string }, :session => { :token => token }
-    assert_redirected_to login_path(:referer => diary_new_path)
+    assert_redirected_to login_path(:referer => new_diary_entry_path)
     assert_match(/Confirmed your account/, flash[:notice])
   end
 
@@ -487,7 +488,7 @@ class UsersControllerTest < ActionController::TestCase
 
   def test_confirm_already_confirmed
     user = create(:user)
-    confirm_string = user.tokens.create(:referer => diary_new_path).token
+    confirm_string = user.tokens.create(:referer => new_diary_entry_path).token
 
     @request.cookies["_osm_session"] = user.display_name
     post :confirm, :params => { :display_name => user.display_name, :confirm_string => confirm_string }
@@ -637,7 +638,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_response :success
     assert_template :terms
 
-    post :save, :params => { :user => { :consider_pd => true } }
+    post :save, :params => { :user => { :consider_pd => true }, :read_ct => 1, :read_tou => 1 }
     assert_response :redirect
     assert_redirected_to :action => :account, :display_name => user.display_name
     assert_equal "Thanks for accepting the new contributor terms!", flash[:notice]
@@ -658,7 +659,7 @@ class UsersControllerTest < ActionController::TestCase
     assert_response :success
     assert_template :terms
 
-    post :save, :params => { :user => { :consider_pd => true }, :referer => "/test" }
+    post :save, :params => { :user => { :consider_pd => true }, :referer => "/test", :read_ct => 1, :read_tou => 1 }
     assert_response :redirect
     assert_redirected_to "/test"
     assert_equal "Thanks for accepting the new contributor terms!", flash[:notice]
index 144a45a45ad990af426dd413dc8f62164da1e96f..ba4c12b8cd4799880980f24468c09857f0471a81 100644 (file)
@@ -7,6 +7,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     OmniAuth.config.test_mode = true
 
     stub_request(:get, /.*gravatar.com.*d=404/).to_return(:status => 404)
+    stub_hostip_requests
   end
 
   def teardown
@@ -92,7 +93,8 @@ class UserCreationTest < ActionDispatch::IntegrationTest
         assert_difference("ActionMailer::Base.deliveries.size", 1) do
           perform_enqueued_jobs do
             post "/user/save",
-                 :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s }
+                 :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s },
+                 :params => { :read_ct => 1, :read_tou => 1 }
             follow_redirect!
           end
         end
@@ -113,6 +115,32 @@ class UserCreationTest < ActionDispatch::IntegrationTest
     end
   end
 
+  def test_user_create_no_tou_failure
+    I18n.available_locales.each do |locale|
+      new_email = "#{locale}newtester@osm.org"
+      display_name = "#{locale}_new_tester"
+
+      assert_difference("User.count", 0) do
+        assert_difference("ActionMailer::Base.deliveries.size", 0) do
+          perform_enqueued_jobs do
+            post "/user/new",
+                 :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" } }
+          end
+        end
+      end
+
+      assert_redirected_to "/user/terms"
+
+      perform_enqueued_jobs do
+        post "/user/save",
+             :headers => { "HTTP_ACCEPT_LANGUAGE" => locale.to_s }
+        assert_redirected_to "/user/terms"
+      end
+
+      ActionMailer::Base.deliveries.clear
+    end
+  end
+
   # Check that the user can successfully recover their password
   def lost_password_recovery_success
     # Open the lost password form
@@ -135,7 +163,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
                :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :pass_crypt => password, :pass_crypt_confirmation => password }, :referer => referer }
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :pass_crypt => password, :pass_crypt_confirmation => password } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :pass_crypt => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
@@ -190,7 +218,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :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 => password, :pass_crypt_confirmation => password } }
+               :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 => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           assert_response :redirect
           follow_redirect!
         end
@@ -255,7 +283,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :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 => "testtest", :pass_crypt_confirmation => "testtest" } }
+               :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 => "testtest", :pass_crypt_confirmation => "testtest" }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
@@ -312,7 +340,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "google", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "google", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           assert_response :redirect
           follow_redirect!
         end
@@ -379,7 +407,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "google", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "google", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
@@ -434,7 +462,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "facebook", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "facebook", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           assert_response :redirect
           follow_redirect!
         end
@@ -499,7 +527,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "facebook", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "facebook", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
@@ -554,7 +582,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "windowslive", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "windowslive", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           assert_response :redirect
           follow_redirect!
         end
@@ -619,7 +647,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "windowslive", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "windowslive", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
@@ -674,7 +702,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "github", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "github", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           assert_response :redirect
           follow_redirect!
         end
@@ -739,7 +767,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "github", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "github", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
@@ -794,7 +822,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "wikipedia", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "wikipedia", :auth_uid => "123454321", :pass_crypt => password, :pass_crypt_confirmation => password }, :read_ct => 1, :read_tou => 1 }
           assert_response :redirect
           follow_redirect!
         end
@@ -859,7 +887,7 @@ class UserCreationTest < ActionDispatch::IntegrationTest
           assert_response :redirect
           assert_redirected_to "/user/terms"
           post "/user/save",
-               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "wikipedia", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" } }
+               :params => { :user => { :email => new_email, :email_confirmation => new_email, :display_name => display_name, :auth_provider => "wikipedia", :auth_uid => "http://localhost:1123/new.tester", :pass_crypt => "testtest", :pass_crypt_confirmation => "testtest" }, :read_ct => 1, :read_tou => 1 }
           follow_redirect!
         end
       end
index 026028d5f23d83e44073a2a814966c4160ef9ec7..e090342c1bd962cd18636b4b737ffbea8dd41a49 100644 (file)
@@ -29,7 +29,7 @@ class UserDiariesTest < ActionDispatch::IntegrationTest
     follow_redirect!
 
     assert_response :success
-    assert_template "diary_entries/edit"
+    assert_template "diary_entries/new"
     # print @response.body
     # print @html_document.to_yaml
 
@@ -42,7 +42,7 @@ class UserDiariesTest < ActionDispatch::IntegrationTest
       assert_select "h1", "New Diary Entry"
     end
     assert_select "div#content" do
-      assert_select "form[action='/diary/new']" do
+      assert_select "form[action='/diary']" do
         assert_select "input[id=diary_entry_title]"
       end
     end
index 39ccc04b26be946f9689a1011b5b78ec0bb1f513..6b6a51de553f554df76fc68ae305164ea504e084 100644 (file)
@@ -8,7 +8,7 @@ class DiaryEntrySystemTest < ApplicationSystemTestCase
 
   test "reply to diary entry should prefill the message subject" do
     sign_in_as(create(:user))
-    visit diary_path
+    visit diary_entries_path
 
     click_on "Reply to this entry"
 
index 8fed86e6279b39c0938f57e469ea7294906ccb48..03c942bb2d578448760d72015b01fd5cc1dc178f 100644 (file)
@@ -122,7 +122,7 @@ input[type="radio"] {
  */
 
 input[type="search"] {
-    -webkit-appearance: textfield; /* 1 */
+    -webkit-appearance: none; /* 1 */
     -moz-box-sizing: border-box;
     -webkit-box-sizing: border-box; /* 2 */
     box-sizing: border-box;
@@ -268,6 +268,7 @@ g.point .stroke {
     fill: #fff;
 }
 
+
 g.qa_error .shadow,
 g.point .shadow,
 g.note .shadow {
@@ -342,7 +343,7 @@ g.vertex.selected .shadow {
 .preset-icon .icon.iD-other-line {
     color: #989898;
 }
-.preset-icon-line path.casing {
+.preset-icon-container path.line.casing {
     stroke: #afafaf;
 }
 
@@ -360,6 +361,8 @@ path.shadow {
     stroke: #f6634f;
     stroke-width: 16;
     stroke-opacity: 0;
+    stroke-linecap: round;
+    stroke-linejoin: round;
 }
 
 path.shadow.related:not(.selected),
@@ -443,6 +446,15 @@ text.point {
     opacity: 0.8;
 }
 
+
+/* Wikidata-tagged */
+g.point.tag-wikidata path.stroke {
+    stroke-width: 3px;
+    stroke: #777;
+    fill: #ddd;
+}
+
+
 /* Highlighting */
 g.point.highlighted .shadow,
 path.shadow.highlighted {
@@ -499,9 +511,9 @@ path.area.fill {
     fill: rgba(255, 255, 255, 0.3);
     fill-rule: evenodd;
 }
-.preset-icon-fill-area {
-    border: 1px solid rgb(170, 170, 170);
-    background-color: rgba(170, 170, 170, 0.3);
+.preset-icon-fill path.fill {
+    stroke: rgb(170, 170, 170);
+    fill: rgba(170, 170, 170, 0.3);
 }
 
 path.shadow.old-multipolygon,
@@ -512,49 +524,35 @@ path.stroke.old-multipolygon {
 
 
 /* Green things */
-path.stroke.tag-landuse,
 path.stroke.tag-natural,
+path.stroke.tag-natural-wood,
 path.stroke.tag-leisure-nature_reserve,
 path.stroke.tag-leisure-pitch,
 path.stroke.tag-leisure-track,
 path.stroke.tag-leisure-golf_course,
 path.stroke.tag-leisure-garden,
 path.stroke.tag-leisure-park,
+path.stroke.tag-landuse-recreation_ground,
 path.stroke.tag-landuse-forest,
-path.stroke.tag-landuse-wood,
 path.stroke.tag-landuse-grass,
 path.stroke.tag-barrier-hedge {
     stroke: rgb(140, 208, 95);
 }
-path.fill.tag-landuse,
 path.fill.tag-natural,
+path.fill.tag-natural-wood,
 path.fill.tag-leisure-nature_reserve,
 path.fill.tag-leisure-pitch,
 path.fill.tag-leisure-track,
 path.fill.tag-leisure-golf_course,
 path.fill.tag-leisure-garden,
 path.fill.tag-leisure-park,
+path.fill.tag-landuse-recreation_ground,
 path.fill.tag-landuse-forest,
-path.fill.tag-natural-wood,
 path.fill.tag-landuse-grass,
 path.fill.tag-barrier-hedge {
     stroke: rgba(140, 208, 95, 0.3);
     fill: rgba(140, 208, 95, 0.3);
 }
-.preset-icon-fill-area.tag-landuse,
-.preset-icon-fill-area.tag-natural,
-.preset-icon-fill-area.tag-leisure-nature_reserve,
-.preset-icon-fill-area.tag-leisure-pitch,
-.preset-icon-fill-area.tag-leisure-track,
-.preset-icon-fill-area.tag-leisure-golf_course,
-.preset-icon-fill-area.tag-leisure-garden,
-.preset-icon-fill-area.tag-leisure-park,
-.preset-icon-fill-area.tag-landuse-forest,
-.preset-icon-fill-area.tag-natural-wood,
-.preset-icon-fill-area.tag-landuse-grass {
-    border-color: rgb(140, 208, 95);
-    background-color: rgba(140, 208, 95, 0.3);
-}
 .pattern-color-forest,
 .pattern-color-forest_broadleaved,
 .pattern-color-forest_needleleaved,
@@ -567,37 +565,18 @@ path.fill.tag-barrier-hedge {
 
 /* Blue things */
 path.stroke.tag-amenity-fountain,
-path.stroke.tag-amenity-swimming_pool,
 path.stroke.tag-leisure-swimming_pool,
-path.stroke.tag-landuse-aquaculture,
-path.stroke.tag-landuse-basin,
-path.stroke.tag-landuse-harbour,
-path.stroke.tag-landuse-reservoir,
+path.stroke.tag-natural-bay,
 path.stroke.tag-natural-water {
     stroke: rgb(119, 211, 222);
 }
 path.fill.tag-amenity-fountain,
-path.fill.tag-amenity-swimming_pool,
 path.fill.tag-leisure-swimming_pool,
-path.fill.tag-landuse-aquaculture,
-path.fill.tag-landuse-basin,
-path.fill.tag-landuse-harbour,
-path.fill.tag-landuse-reservoir,
+path.fill.tag-natural-bay,
 path.fill.tag-natural-water {
     stroke: rgba(119, 211, 222, 0.3);
     fill: rgba(119, 211, 222, 0.3);
 }
-.preset-icon-fill-area.tag-amenity-fountain,
-.preset-icon-fill-area.tag-amenity-swimming_pool,
-.preset-icon-fill-area.tag-leisure-swimming_pool,
-.preset-icon-fill-area.tag-landuse-aquaculture,
-.preset-icon-fill-area.tag-landuse-basin,
-.preset-icon-fill-area.tag-landuse-harbour,
-.preset-icon-fill-area.tag-landuse-reservoir,
-.preset-icon-fill-area.tag-natural-water {
-    border-color: rgb(119, 211, 222);
-    background-color: rgba(119, 211, 222, 0.3);
-}
 .pattern-color-waves,
 .pattern-color-water_standing,
 .pattern-color-pond {
@@ -635,20 +614,19 @@ path.fill.tag-amenity-university {
     stroke: rgba(255, 255, 148, 0.25);
     fill: rgba(255, 255, 148, 0.25);
 }
-.preset-icon-fill-area.tag-leisure-pitch.tag-sport-beachvolleyball,
-.preset-icon-fill-area.tag-leisure-pitch.tag-sport-baseball,
-.preset-icon-fill-area.tag-leisure-pitch.tag-sport-softball,
-.preset-icon-fill-area.tag-leisure-track,
-.preset-icon-fill-area.tag-natural-beach,
-.preset-icon-fill-area.tag-natural-sand,
-.preset-icon-fill-area.tag-natural-scrub,
-.preset-icon-fill-area.tag-amenity-childcare,
-.preset-icon-fill-area.tag-amenity-kindergarten,
-.preset-icon-fill-area.tag-amenity-school,
-.preset-icon-fill-area.tag-amenity-college,
-.preset-icon-fill-area.tag-amenity-university {
-    border-color: rgb(232, 232, 0);
-    background-color: rgba(255, 255, 148, 0.25);
+.preset-icon-fill path.area.stroke.tag-leisure-pitch.tag-sport-beachvolleyball,
+.preset-icon-fill path.area.stroke.tag-leisure-pitch.tag-sport-baseball,
+.preset-icon-fill path.area.stroke.tag-leisure-pitch.tag-sport-softball,
+.preset-icon-fill path.area.stroke.tag-leisure-track,
+.preset-icon-fill path.area.stroke.tag-natural-beach,
+.preset-icon-fill path.area.stroke.tag-natural-sand,
+.preset-icon-fill path.area.stroke.tag-natural-scrub,
+.preset-icon-fill path.area.stroke.tag-amenity-childcare,
+.preset-icon-fill path.area.stroke.tag-amenity-kindergarten,
+.preset-icon-fill path.area.stroke.tag-amenity-school,
+.preset-icon-fill path.area.stroke.tag-amenity-college,
+.preset-icon-fill path.area.stroke.tag-amenity-university {
+    stroke: rgb(232, 232, 0);
 }
 .pattern-color-beach,
 .pattern-color-sand,
@@ -666,11 +644,6 @@ path.fill.tag-landuse-residential {
     stroke: rgba(196, 189, 25, 0.3);
     fill: rgba(196, 189, 25, 0.3);
 }
-.preset-icon-fill-area.tag-landuse-residential,
-.preset-icon-fill-area.tag-status-construction {
-    border-color: rgb(196, 189, 25);
-    background: rgba(196, 189, 25, 0.3);
-}
 .pattern-color-construction {
     fill: rgba(196, 189, 25, 0.3);
 }
@@ -692,14 +665,6 @@ path.fill.tag-landuse-military {
     stroke: rgba(214, 136, 26, 0.3);
     fill: rgba(214, 136, 26, 0.3);
 }
-.preset-icon-fill-area.tag-landuse-retail,
-.preset-icon-fill-area.tag-landuse-commercial,
-.preset-icon-fill-area.tag-landuse-landfill,
-.preset-icon-fill-area.tag-military,
-.preset-icon-fill-area.tag-landuse-military {
-    border-color: rgb(214, 136, 26);
-    background-color: rgba(214, 136, 26, 0.3);
-}
 .pattern-color-landfill {
     fill: rgba(214, 136, 26, 0.3);
 }
@@ -715,20 +680,14 @@ path.fill.tag-power-plant {
     stroke: rgba(228, 164, 245, 0.3);
     fill: rgba(228, 164, 245, 0.3);
 }
-.preset-icon-fill-area.tag-landuse-industrial,
-.preset-icon-fill-area.tag-power-plant {
-    border-color: rgb(228, 164, 245);
-    background-color: rgba(228, 164, 245, 0.3);
-}
 
 
 /* Teal things */
 path.stroke.tag-natural-wetland {
     stroke: rgb(153, 225, 170);
 }
-.preset-icon-fill-area.tag-natural-wetland {
-    border-color: rgb(153, 225, 170);
-    background-color: rgba(153, 225, 170, 0.2);
+.preset-icon-fill path.area.fill.tag-natural-wetland {
+    fill: rgba(153, 225, 170, 0.2);
 }
 .pattern-color-wetland,
 .pattern-color-wetland_marsh,
@@ -747,12 +706,12 @@ path.stroke.tag-landuse-meadow,
 path.stroke.tag-landuse-farmland {
     stroke: rgb(191, 232, 63);
 }
-.preset-icon-fill-area.tag-landuse-cemetery,
-.preset-icon-fill-area.tag-landuse-orchard,
-.preset-icon-fill-area.tag-landuse-vineyard,
-.preset-icon-fill-area.tag-landuse-meadow,
-.preset-icon-fill-area.tag-landuse-farmland {
-    background-color: rgba(191, 232, 63, 0.2);
+.preset-icon-fill path.area.fill.tag-landuse-cemetery,
+.preset-icon-fill path.area.fill.tag-landuse-orchard,
+.preset-icon-fill path.area.fill.tag-landuse-vineyard,
+.preset-icon-fill path.area.fill.tag-landuse-meadow,
+.preset-icon-fill path.area.fill.tag-landuse-farmland {
+    fill: rgba(191, 232, 63, 0.2);
 }
 .pattern-color-cemetery,
 .pattern-color-cemetery_christian,
@@ -775,9 +734,8 @@ path.fill.tag-landuse-farmyard {
     stroke: rgba(245, 220, 186, 0.3);
     fill: rgba(245, 220, 186, 0.3);
 }
-.preset-icon-fill-area.tag-landuse-farmyard {
-    border-color: rgb(226, 177, 111);
-    background: rgba(245, 220, 186, 0.3);
+.preset-icon-fill path.area.stroke.tag-landuse-farmyard {
+    stroke: rgb(226, 177, 111);
 }
 .pattern-color-farmyard {
     fill: rgba(245, 220, 186, 0.3);
@@ -790,10 +748,16 @@ path.stroke.tag-landuse-railway,
 path.stroke.tag-landuse-quarry,
 path.stroke.tag-leisure-pitch.tag-sport-basketball,
 path.stroke.tag-leisure-pitch.tag-sport-skateboard,
+path.stroke.tag-man_made-adit,
 path.stroke.tag-man_made-groyne,
 path.stroke.tag-man_made-breakwater,
 path.stroke.tag-natural-bare_rock,
+path.stroke.tag-natural-cave_entrance,
+path.stroke.tag-natural-cliff,
+path.stroke.tag-natural-rock,
 path.stroke.tag-natural-scree,
+path.stroke.tag-natural-stone,
+path.stroke.tag-natural-shingle,
 path.stroke.tag-waterway-dam,
 path.stroke.tag-waterway-weir {
     stroke: rgb(170, 170, 170);
@@ -803,27 +767,21 @@ path.fill.tag-landuse-railway,
 path.fill.tag-landuse-quarry,
 path.fill.tag-leisure-pitch.tag-sport-basketball,
 path.fill.tag-leisure-pitch.tag-sport-skateboard,
+path.fill.tag-man_made-adit,
 path.fill.tag-man_made-groyne,
 path.fill.tag-man_made-breakwater,
 path.fill.tag-natural-bare_rock,
+path.fill.tag-natural-cliff,
+path.fill.tag-natural-cave_entrance,
+path.fill.tag-natural-rock,
 path.fill.tag-natural-scree,
+path.fill.tag-natural-stone,
+path.fill.tag-natural-shingle,
 path.fill.tag-waterway-dam,
 path.fill.tag-waterway-weir {
     stroke: rgba(140, 140, 140, 0.5);
     fill: rgba(140, 140, 140, 0.5);
 }
-.preset-icon-fill-area.tag-amenity-parking,
-.preset-icon-fill-area.tag-landuse-railway,
-.preset-icon-fill-area.tag-landuse-quarry,
-.preset-icon-fill-area.tag-leisure-pitch.tag-sport-basketball,
-.preset-icon-fill-area.tag-leisure-pitch.tag-sport-skateboard,
-.preset-icon-fill-area.tag-natural-bare_rock,
-.preset-icon-fill-area.tag-natural-scree,
-.preset-icon-fill-area.tag-waterway-dam,
-.preset-icon-fill-area.tag-waterway-weir {
-    border-color: rgb(170, 170, 170);
-    background-color: rgba(140, 140, 140, 0.5);
-}
 .pattern-color-quarry {
     fill: rgba(140, 140, 140, 0.5);
 }
@@ -839,12 +797,12 @@ path.fill.tag-natural-glacier {
     stroke: rgba(255, 255, 255, 0.3);
     fill: rgba(255, 255, 255, 0.3);
 }
-.preset-icon-fill-area.tag-natural-cave_entrance,
-.preset-icon-fill-area.tag-natural-glacier {
-    border-color: rgb(170, 170, 170);
-    background: rgba(170, 170, 170, 0.3);
+.preset-icon-fill path.fill.tag-natural-cave_entrance,
+.preset-icon-fill path.fill.tag-natural-glacier {
+    stroke: rgb(170, 170, 170);
+    fill: rgba(170, 170, 170, 0.3);
 }
-/* highways */
+preset-icon-container/* highways */
 
 /* defaults */
 .preset-icon .icon.tag-highway.other-line {
@@ -1166,7 +1124,7 @@ path.line.stroke.tag-highway-steps {
     stroke-width: 1;
 }
 
-
+/* living streets */
 .preset-icon .icon.tag-highway-living-street {
     color: #bbb;
     fill: #ddd;
@@ -1180,6 +1138,7 @@ path.line.casing.tag-living_street {
     stroke: #fff;
 }
 
+/* pedestrian streets and corridors */
 .preset-icon .icon.tag-highway-corridor,
 .preset-icon .icon.tag-highway-pedestrian {
     color: #8cd05f;
@@ -1211,6 +1170,7 @@ path.line.casing.tag-pedestrian.tag-unpaved {
     stroke-dasharray: none;
 }
 
+/* unknown roads */
 .preset-icon .icon.tag-highway-road {
     color: #9e9e9e;
     fill: #666;
@@ -1224,6 +1184,7 @@ path.line.casing.tag-road {
     stroke: #666;
 }
 
+/* service roads */
 .preset-icon .icon.tag-highway-service {
     color: #fff;
     fill: #666;
@@ -1255,10 +1216,7 @@ path.line.casing.tag-service.tag-service {
     stroke: #666;
 }
 
-.preset-icon .icon.tag-highway-track {
-    color: #eaeaea;
-    fill: #c5b59f;
-}
+/* unmaintained track roads */
 path.line.stroke.tag-highway-track,
 path.line.stroke.tag-track {
     stroke: #c5b59f;
@@ -1268,6 +1226,7 @@ path.line.casing.tag-track {
     stroke: #746f6f;
 }
 
+/* paths */
 path.line.stroke.tag-highway-path,
 path.line.stroke.tag-highway-footway,
 path.line.stroke.tag-highway-cycleway,
@@ -1283,8 +1242,20 @@ path.line.stroke.tag-highway-bridleway {
     stroke-dasharray: 3, 3;
 }
 
+/* style for features that should have highway=footway but don't yet */
+path.line.stroke.tag-crossing,
+path.line.stroke.tag-public_transport-platform,
+path.line.stroke.tag-highway-platform,
+path.line.stroke.tag-railway-platform,
+path.line.stroke.tag-man_made-pier {
+    stroke: #dca;
+}
+
 path.line.casing.tag-highway-path,
-path.line.casing.tag-highway-path.tag-unpaved {
+path.line.casing.tag-highway-path.tag-unpaved,
+path.line.casing.tag-highway-footway.tag-public_transport-platform,
+path.line.casing.tag-highway-footway.tag-man_made-pier,
+path.line.casing.tag-highway.tag-crossing {
     stroke: #dca;
     stroke-linecap: round;
     stroke-dasharray: none;
@@ -1300,8 +1271,9 @@ path.line.casing.tag-highway-bridleway.tag-unpaved {
     stroke-dasharray: none;
 }
 
-.preset-icon .icon.iD-category-path,
-.preset-icon .icon.tag-highway-path {
+.preset-icon .icon.tag-highway-path,
+.preset-icon .icon.tag-highway-footway.tag-public_transport-platform,
+.preset-icon .icon.tag-highway-footway.tag-man_made-pier {
     color: #988;
     fill: #dca;
 }
@@ -1309,6 +1281,7 @@ path.line.stroke.tag-highway-path {
     stroke: #988;
 }
 
+/* footways */
 .preset-icon .icon.tag-route-foot,
 .preset-icon .icon.tag-route-hiking,
 .preset-icon .icon.tag-highway-footway {
@@ -1316,39 +1289,55 @@ path.line.stroke.tag-highway-path {
     fill: #fff;
 }
 path.line.stroke.tag-highway-footway,
-.preset-icon-line path.casing.tag-highway-footway {
+path.line.stroke.tag-highway_bus_stop,
+.preset-icon-container path.casing.tag-highway-footway {
     stroke: #988;
 }
-.preset-icon-line path.stroke.tag-highway-footway {
+.preset-icon-container path.stroke.tag-highway-footway:not(.tag-crossing-marked):not(.tag-crossing-unmarked):not(.tag-man_made-pier):not(.tag-public_transport-platform) {
     stroke: #fff;
 }
 
+/* cycleways */
 .preset-icon .icon.tag-route-bicycle,
 .preset-icon .icon.tag-highway-cycleway {
     color: #58a9ed;
     fill: #fff;
 }
 path.line.stroke.tag-highway-cycleway,
-.preset-icon-line path.casing.tag-highway-cycleway {
+.preset-icon-container path.casing.tag-highway-cycleway {
     stroke: #58a9ed;
 }
-.preset-icon-line path.stroke.tag-highway-cycleway {
+.preset-icon-container path.stroke.tag-highway-cycleway:not(.tag-crossing) {
     stroke: #fff;
 }
 
+/* bridleways */
 .preset-icon .icon.tag-route-horse,
 .preset-icon .icon.tag-highway-bridleway {
     color: #e06d5f;
     fill: #fff;
 }
 path.line.stroke.tag-highway-bridleway,
-.preset-icon-line path.casing.tag-highway-bridleway {
+.preset-icon-container path.casing.tag-highway-bridleway {
     stroke: #e06d5f;
 }
-.preset-icon-line path.stroke.tag-highway-bridleway {
+.preset-icon-container path.stroke.tag-highway-bridleway {
+    stroke: #fff;
+}
+
+/* racetracks */
+.preset-icon .icon.tag-leisure-track {
+    color: rgb(229, 184, 43);
+}
+path.line.stroke.tag-leisure-track,
+.preset-icon-container path.casing.tag-highway.tag-leisure-track {
+    stroke: rgb(229, 184, 43);
+}
+.preset-icon-container path.line.stroke.tag-highway.tag-leisure-track {
     stroke: #fff;
 }
 
+/* steps */
 .preset-icon .icon.tag-highway-steps {
     color: #81d25c;
     fill: #fff;
@@ -1367,13 +1356,47 @@ path.line.casing.tag-highway-steps.tag-unpaved {
     stroke-dasharray: none;
 }
 path.line.stroke.tag-highway-steps,
-.preset-icon-line path.line.casing.tag-highway-steps {
+.preset-icon-container path.line.casing.tag-highway-steps {
     stroke: #81d25c;
 }
-.preset-icon-line path.line.stroke.tag-highway-steps {
+.preset-icon-container path.line.stroke.tag-highway-steps {
     stroke: #fff;
 }
 
+
+/* crossings */
+path.line.stroke.tag-highway.tag-crossing-unmarked {
+    stroke-dasharray: 6, 4;
+}
+.low-zoom path.line.stroke.tag-highway.tag-crossing-unmarked {
+    stroke-dasharray: 3, 2;
+}
+path.line.stroke.tag-highway.tag-crossing-marked {
+    stroke-dasharray: 6, 3;
+}
+.low-zoom path.line.stroke.tag-highway.tag-crossing-marked {
+    stroke-dasharray: 3, 1.5;
+}
+path.line.stroke.tag-highway-footway.tag-crossing-marked {
+    stroke: #4c4444;
+}
+.preset-icon .icon.tag-highway-footway.tag-crossing-marked {
+    color: #4c4444;
+}
+path.line.stroke.tag-highway-footway.tag-crossing-unmarked {
+    stroke: #776a6a;
+}
+.preset-icon .icon.tag-highway-footway.tag-crossing-unmarked {
+    color: #776a6a;
+}
+path.line.stroke.tag-highway-cycleway.tag-crossing-marked {
+    stroke: #446077;
+}
+.preset-icon .icon.tag-highway-cycleway.tag-crossing-marked {
+    color: #446077;
+}
+
+
 /* highway midpoints */
 g.midpoint.tag-highway-corridor .fill,
 g.midpoint.tag-highway-pedestrian .fill,
@@ -1472,7 +1495,7 @@ path.line.stroke.tag-aeroway-runway {
     stroke-width: 2;
     stroke-dasharray: 12, 24;
 }
-.preset-icon-line path.line.stroke.tag-aeroway-runway {
+.preset-icon-container path.line.stroke.tag-aeroway-runway {
     stroke-dasharray: 0, 14, 8, 14;
 }
 /* railways */
@@ -1510,10 +1533,17 @@ path.line.stroke.tag-railway {
     stroke-width: 2;
     stroke-dasharray: 6,6;
 }
-.preset-icon-line path.line.stroke.tag-railway:not(.tag-status) {
+.preset-icon-container path.line.stroke.tag-railway:not(.tag-status) {
     stroke-dasharray: 6;
 }
 
+path.line.casing.tag-railway.tag-railway-platform {
+    stroke-width: 0;
+}
+path.line.stroke.tag-railway.tag-railway-platform {
+    stroke-dasharray: none;
+}
+
 /* styles */
 path.line.casing.tag-railway {
     stroke: #555;
@@ -1551,7 +1581,6 @@ path.line.stroke.tag-railway-subway {
     color: #7dd;
     fill: #7dd;
 }
-.preset-icon .icon.iD-category-water,
 .preset-icon .icon.tag-type-waterway,
 .preset-icon .icon.tag-waterway {
     color: #7dd;
@@ -1643,7 +1672,6 @@ path.line.stroke.tag-waterway-ditch {
     stroke: #39a;
 }
 
-
 /* narrow width miscellanous things */
 path.line.shadow.tag-aerialway,
 path.line.shadow.tag-attraction-summer_toboggan,
@@ -1719,7 +1747,7 @@ path.line.stroke.tag-route-ferry {
     stroke-width: 12;
 }
 .low-zoom path.line.stroke.tag-route-ferry,
-.preset-icon-line path.line.stroke.tag-route-ferry {
+.preset-icon-container path.line.stroke.tag-route-ferry {
     stroke-width: 2;
     stroke-dasharray: 6,4;
 }
@@ -1808,7 +1836,7 @@ path.line.casing.tag-man_made-pipeline {
 .low-zoom path.line.stroke.tag-man_made-pipeline {
     stroke-dasharray: 40, 1;
 }
-.preset-icon-line path.line.stroke.tag-man_made-pipeline {
+.preset-icon-container path.line.stroke.tag-man_made-pipeline {
     stroke-dasharray: 19, 1;
 }
 
@@ -1835,7 +1863,7 @@ path.line.casing.tag-boundary-national_park {
 path.line.stroke.tag-barrier:not(.tag-barrier-hedge) {
     stroke: #ddd;
 }
-.preset-icon-line path.line.stroke.tag-barrier:not(.tag-barrier-hedge) {
+.preset-icon-container path.line.stroke.tag-barrier:not(.tag-barrier-hedge) {
     stroke: rgb(170, 170, 170);
 }
 path.line.casing.tag-natural,
@@ -1858,9 +1886,9 @@ path.line.stroke.tag-man_made-breakwater {
     stroke-linecap: butt;
     stroke-dasharray: 8, 2, 2, 2;
 }
-.preset-icon-line path.line.stroke.tag-barrier,
-.preset-icon-line path.line.stroke.tag-man_made-groyne,
-.preset-icon-line path.line.stroke.tag-man_made-breakwater {
+.preset-icon-container path.line.stroke.tag-barrier,
+.preset-icon-container path.line.stroke.tag-man_made-groyne,
+.preset-icon-container path.line.stroke.tag-man_made-breakwater {
     stroke-dasharray: 1, 4, 6, 4;
 }
 
@@ -2018,34 +2046,34 @@ path.line.casing.tag-status {
     color: #fc6c14;
     fill: #fff;
 }
-path.line.shadow.tag-status.tag-status-construction {
+path.line.shadow.tag-highway.tag-status.tag-status-construction {
     stroke-width: 20;
 }
-path.line.casing.tag-status.tag-status-construction {
+path.line.casing.tag-highway.tag-status.tag-status-construction {
     stroke-width: 10;
     stroke-linecap: butt;
     stroke-dasharray: none
 }
-path.line.stroke.tag-status.tag-status-construction {
+path.line.stroke.tag-highway.tag-status.tag-status-construction {
     stroke-width: 8;
     stroke-linecap: butt;
     stroke-dasharray: 10, 10;
 }
-path.line.casing.tag-status.tag-status-construction,
-.preset-icon-line path.line.stroke.tag-status.tag-status-construction {
+path.line.casing.tag-highway.tag-status.tag-status-construction,
+.preset-icon-container path.line.stroke.tag-highway.tag-status.tag-status-construction {
     stroke: #fff;
 }
-path.line.stroke.tag-status.tag-status-construction,
-.preset-icon-line path.line.casing.tag-status.tag-status-construction {
+path.line.stroke.tag-highway.tag-status.tag-status-construction,
+.preset-icon-container path.line.casing.tag-highway.tag-status.tag-status-construction {
     stroke: #fc6c14;
 }
-.low-zoom path.line.shadow.tag-status.tag-status-construction {
+.low-zoom path.line.shadow.tag-highway.tag-status.tag-status-construction {
     stroke-width: 16;
 }
-.low-zoom path.line.casing.tag-status.tag-status-construction {
+.low-zoom path.line.casing.tag-highway.tag-status.tag-status-construction {
     stroke-width: 7;
 }
-.low-zoom path.line.stroke.tag-status.tag-status-construction {
+.low-zoom path.line.stroke.tag-highway.tag-status.tag-status-construction {
     stroke-width: 5;
     stroke-dasharray: 8, 8;
 }
@@ -2059,123 +2087,6 @@ path.fill.tag-building {
     stroke: rgba(224, 110, 95, 0.3);
     fill: rgba(224, 110, 95, 0.3);
 }
-.preset-icon-fill-area.tag-parking-multi-storey,
-.preset-icon-fill-area.tag-building {
-    border-color: rgb(224, 110, 95);
-    background-color: rgba(224, 110, 95, 0.3);
-}
-
-
-/* "Special" paths - platforms, piers, crossings */
-.preset-icon .icon.tag-golf-path,
-.preset-icon .icon.tag-public_transport-platform,
-.preset-icon .icon.tag-railway-platform,
-.preset-icon .icon.tag-man_made-pier,
-.preset-icon .icon.tag-footway.tag-footway-crossing,
-.preset-icon .icon.tag-crossing {
-    color: #988;
-    fill: #dca;
-}
-
-.preset-icon-fill-area.tag-golf-path,
-.preset-icon-fill-area.tag-public_transport-platform,
-.preset-icon-fill-area.tag-railway-platform,
-.preset-icon-fill-area.tag-man_made-pier,
-.preset-icon-fill-area.tag-footway.tag-footway-crossing,
-.preset-icon-fill-area.tag-crossing {
-    border-color: #988;
-    background-color: #dca;
-}
-
-path.line.shadow.tag-golf-path,
-path.line.shadow.tag-public_transport-platform,
-path.line.shadow.tag-railway-platform,
-path.line.shadow.tag-man_made-pier,
-path.line.shadow.tag-footway.tag-footway-crossing,
-path.line.shadow.tag-crossing {
-    stroke-width: 16;
-}
-path.line.casing.tag-golf-path,
-path.line.casing.tag-public_transport-platform,
-path.line.casing.tag-railway-platform,
-path.line.casing.tag-man_made-pier,
-path.line.casing.tag-footway.tag-footway-crossing,
-path.line.casing.tag-crossing {
-    stroke: #dca;
-    stroke-width: 5;
-    stroke-linecap: round;
-    stroke-dasharray: none;
-}
-path.line.stroke.tag-golf-path,
-path.line.stroke.tag-public_transport-platform,
-path.line.stroke.tag-railway-platform,
-path.line.stroke.tag-man_made-pier,
-path.line.stroke.tag-footway.tag-footway-crossing,
-path.line.stroke.tag-crossing {
-    stroke: #988;
-    stroke-width: 3;
-    stroke-linecap: butt;
-    stroke-dasharray: 6, 6;
-}
-
-.low-zoom path.line.shadow.tag-golf-path,
-.low-zoom path.line.shadow.tag-public_transport-platform,
-.low-zoom path.line.shadow.tag-railway-platform,
-.low-zoom path.line.shadow.tag-man_made-pier,
-.low-zoom path.line.shadow.tag-footway.tag-footway-crossing,
-.low-zoom path.line.shadow.tag-crossing {
-    stroke-width: 12;
-}
-.low-zoom path.line.casing.tag-golf-path,
-.low-zoom path.line.casing.tag-public_transport-platform,
-.low-zoom path.line.casing.tag-railway-platform,
-.low-zoom path.line.casing.tag-man_made-pier,
-.low-zoom path.line.casing.tag-footway.tag-footway-crossing,
-.low-zoom path.line.casing.tag-crossing {
-    stroke-width: 3;
-}
-.low-zoom path.line.stroke.tag-golf-path,
-.low-zoom path.line.stroke.tag-public_transport-platform,
-.low-zoom path.line.stroke.tag-railway-platform,
-.low-zoom path.line.stroke.tag-man_made-pier,
-.low-zoom path.line.stroke.tag-footway.tag-footway-crossing,
-.low-zoom path.line.stroke.tag-crossing {
-    stroke-width: 1;
-    stroke-linecap: butt;
-    stroke-dasharray: 3, 3;
-}
-
-g.midpoint.tag-golf-path .fill,
-g.midpoint.tag-public_transport-platform .fill,
-g.midpoint.tag-railway-platform .fill,
-g.midpoint.tag-man_made-pier .fill,
-g.midpoint.tag-footway.tag-footway-crossing .fill,
-g.midpoint.tag-crossing .fill {
-    fill: #fff;
-    stroke: #333;
-    stroke-opacity: .8;
-    opacity: .8;
-}
-
-/* marked crossings, zebras */
-.preset-icon .icon.tag-crossing.tag-crossing-marked,
-.preset-icon .icon.tag-crossing.tag-crossing-zebra {
-    color: #444;
-    fill: #dca;
-}
-path.line.casing.tag-crossing.tag-crossing-marked,
-path.line.casing.tag-crossing.tag-crossing-zebra {
-    stroke: #dca;
-}
-path.line.stroke.tag-crossing.tag-crossing-marked,
-path.line.stroke.tag-crossing.tag-crossing-zebra {
-    stroke: #444;
-    stroke-dasharray: 6, 4;
-}
-.low-zoom path.line.stroke.tag-crossing.tag-crossing-marked,
-.low-zoom path.line.stroke.tag-crossing.tag-crossing-zebra {
-    stroke-dasharray: 3, 2;
-}
 /* Cursors */
 
 .nope,
@@ -2232,6 +2143,7 @@ path.line.stroke.tag-crossing.tag-crossing-zebra {
     cursor: url(<%= asset_path("iD/img/cursor-select-remove.png") %>), pointer; /* FF */
 }
 
+.mode-add-preset #map,
 .mode-draw-line #map,
 .mode-draw-area #map,
 .mode-add-line  #map,
@@ -2282,20 +2194,23 @@ path.line.stroke.tag-crossing.tag-crossing-zebra {
 .turn circle {
     cursor: pointer;
 }
-
 /* photo viewer div */
 #photoviewer {
-    position: absolute;
-    bottom: 40px;
-    left: 10px;
+    position: relative;
+    flex-shrink: 0;
+    margin-bottom: 10px;
     width: 330px;
     height: 250px;
     padding: 5px;
     background-color: #fff;
 }
+[dir='ltr'] #photoviewer {
+    margin-left: 10px;
+    margin-right: 2px;
+}
 [dir='rtl'] #photoviewer {
-    left: auto;
-    right: 10px;
+    margin-right: 10px;
+    margin-left: 2px;
 }
 
 @media screen and (min-width: 1600px) {
@@ -2465,13 +2380,13 @@ path.line.stroke.tag-crossing.tag-crossing-zebra {
 
 
 /* Mapillary Image Layer */
-.layer-mapillary-images {
+.layer-mapillary {
     pointer-events: none;
 }
-.layer-mapillary-images .viewfield-group * {
+.layer-mapillary .viewfield-group * {
     fill: #55ff22;
 }
-.layer-mapillary-images .sequence {
+.layer-mapillary .sequence {
     stroke: #55ff22;
 }
 
@@ -2496,13 +2411,13 @@ path.line.stroke.tag-crossing.tag-crossing-zebra {
 
 
 /* OpenStreetCam Image Layer */
-.layer-openstreetcam-images {
+.layer-openstreetcam {
     pointer-events: none;
 }
-.layer-openstreetcam-images .viewfield-group * {
+.layer-openstreetcam .viewfield-group * {
     fill: #20c4ff;
 }
-.layer-openstreetcam-images .sequence {
+.layer-openstreetcam .sequence {
     stroke: #20c4ff;
 }
 
@@ -2891,6 +2806,12 @@ label.streetside-hires {
     stroke-width: 60px;
     pointer-events: none;
 }
+.fill-partial path.area.fill.tag-building_part {
+    stroke-width: 40px;
+}
+.fill-partial path.area.fill.tag-indoor {
+    stroke-width: 20px;
+}
 .mode-browse .fill-partial path.area.fill,
 .mode-select .fill-partial path.area.fill {
     pointer-events: visibleStroke;
@@ -3124,7 +3045,6 @@ table.tags, table.tags td, table.tags th {
 /* Grid
 ------------------------------------------------------- */
 .col6  { float: left; width: 50.0000%; max-width: 600px; }
-.col8  { float: left; width: 66.6666%; }
 .col12 { float: left; width: 100.0000%; }
 
 
@@ -3157,10 +3077,12 @@ table.tags, table.tags td, table.tags th {
 .ar { right: 0; }
 
 input.hide,
+textarea.hide,
 div.hide,
 form.hide,
 button.hide,
 a.hide,
+ul.hide,
 li.hide {
     display: none;
 }
@@ -3205,29 +3127,29 @@ button.disabled {
     cursor: not-allowed;
 }
 
-.joined button {
+.joined > * {
     border-radius: 0;
     border-right: 1px solid rgba(0,0,0,.5);
 }
-[dir='rtl'] .joined button {
+[dir='rtl'] .joined > * {
     border-left: 1px solid rgba(0,0,0,.5);
     border-right: none;
 }
 
-.fillL .joined button {
+.fillL .joined > * {
     border-right: 1px solid #fff;
 }
-.joined button:first-child {
+.joined > *:first-child {
     border-radius: 4px 0 0 4px;
 }
-[dir='rtl'] .joined button:first-child {
+[dir='rtl'] .joined > *:first-child {
     border-radius: 0 4px 4px 0;
 }
-.joined button:last-child {
+.joined > *:last-child {
     border-right-width: 0;
     border-radius: 0 4px 4px 0;
 }
-[dir='rtl'] .joined button:last-child {
+[dir='rtl'] .joined > *.bar-button:last-child {
     border-radius: 4px 0 0 4px;
 }
 
@@ -3312,7 +3234,7 @@ button[disabled].action:hover {
     color: #333;
 }
 
-.icon-badge {
+.notification-badge {
     display: block;
     position: absolute;
     width: 10px;
@@ -3321,7 +3243,7 @@ button[disabled].action:hover {
     top: 9px;
 }
 
-.icon-badge.hide {
+.notification-badge.hide {
     display: none;
 }
 
@@ -3333,84 +3255,80 @@ button[disabled].action:hover {
     flex-flow: row nowrap;
     justify-content: space-between;
     position: absolute;
-    padding: 10px;
+    padding: 10px 5px 0px 5px;
     left: 0;
     top: 0;
     right: 0;
-    height: 60px;
-    z-index: 9;
+    z-index: 101;
 }
-
-.tool-group {
+#bar .toolbar-item {
+    display: flex;
+    flex: 0 1 auto;
+    flex-flow: column wrap;
+    justify-content: center;
+    position: relative;
+}
+#bar .toolbar-item .item-content {
     display: flex;
     flex: 0 1 auto;
     flex-flow: row nowrap;
-    width: 100%;
+    justify-content: center;
+    position: relative;
+    height: 40px;
+    width: auto;
+    margin: 0 5px;
 }
-.tool-group.leading-area {
-    flex-shrink: 2;
-    justify-content: flex-start;
+#bar .toolbar-item .item-label {
+    text-align: center;
+    font-size: 11px;
+    white-space: nowrap;
+    margin: 1px 2px 2px 2px;
 }
-.tool-group.center-area {
-    justify-content: center;
+#bar .toolbar-item.spacer {
+    width: 100%;
+    flex-grow: 2;
 }
-.tool-group.trailing-area {
+#bar .toolbar-item:first-child {
     justify-content: flex-start;
 }
-
-.tool-group > div {
-    display: flex;
-    margin: 0 5px;
+#bar .toolbar-item:last-child {
+    justify-content: flex-end;
 }
-.tool-group button {
-    flex: 1 1 auto;
+#bar .toolbar-item:empty:not(.spacer) {
+    display: none;
+}
+button.bar-button {
+    flex: 0 0 auto;
     flex-flow: row nowrap;
     align-items: center;
     padding: 0 10px;
     min-width: 30px;
     white-space: nowrap;
+    display: flex;
 }
-.tool-group button .icon {
+button.bar-button .icon {
     flex: 0 0 20px;
 }
-.tool-group button .label {
+button.bar-button .label {
     flex: 0 1 auto;
     padding: 0 5px;
 }
 
-button.save .count {
-    display: inline-block;
-    border: 0px solid #ccc;
-    border-left-width: 1px;
-    padding: 0px 0px 0px 8px;
-    min-width: 32px;
-    text-align: center;
-}
-[dir='rtl'] button.save .count {
-    border-left-width: 0px;
-    border-right-width: 1px;
-    padding: 0px 8px 0px 0px;
+button.bar-button.dragging {
+    opacity: 0.75;
+    z-index: 200;
 }
-button.save.disabled .count {
-    border: 0px solid rgba(0,0,0,0.25);
-    border-left-width: 1px;
-}
-[dir='rtl'] button.save.disabled .count {
-    border-left-width: 0px;
-    border-right-width: 1px;
-    padding: 0px 8px 0px 0px;
+button.bar-button.dragging .tooltip {
+    display: none;
 }
-#bar.narrow button.save .count {
-    padding: 0px;
+button.bar-button.dragging.removing {
+    cursor: url(<%= asset_path("iD/img/cursor-select-remove.png") %>), pointer;
 }
 
-button.save .label {
-    margin-right: 3px;
-    margin-left: 0;
-}
-[dir='rtl'] button.save .label {
-    margin-left: 3px;
-    margin-right: 0;
+button.save .count {
+    display: inline-block;
+    min-width: 32px;
+    text-align: center;
 }
 
 .help-wrap svg.icon.pre-text.add-note,
@@ -3437,15 +3355,15 @@ button.add-note svg.icon {
 
 .spinner {
     opacity: .5;
-    display: flex;
-    flex-shrink: 2;
-    justify-content: flex-end;
+    position: absolute;
+    right: 4px;
+    bottom: 26px;
 }
 .spinner img {
-    height: 40px;
-    width: 40px;
-    border-radius: 4px;
-    background: black;
+    height: 20px;
+    width: 20px;
+    background: transparent;
+    border-radius: 100%;
 }
 [dir='rtl'] .spinner img {
     -moz-transform: scaleX(-1);
@@ -3457,11 +3375,8 @@ button.add-note svg.icon {
 }
 
 
-#bar.narrow .tool-group {
-    width: unset;
-}
 #bar.narrow .spinner,
-#bar.narrow button .label {
+#bar.narrow button.bar-button .label {
     display: none;
 }
 #bar.narrow button .count {
@@ -3469,65 +3384,288 @@ button.add-note svg.icon {
     border-right-width: 0;
 }
 
+[dir='ltr'] .undo-redo button:first-of-type {
+    margin-right: 1px;
+}
+[dir='rtl'] .undo-redo button:first-of-type {
+    margin-left: 1px;
+}
 
-/* Header for modals / panes
+/* Add a feature search bar
 ------------------------------------------------------- */
-.header {
-    border-bottom: 1px solid #ccc;
-    height: 60px;
+
+.search-add {
+    width: 200%;
+    justify-content: center;
     position: relative;
+    min-width: 150px;
+    max-width: 325px;
 }
-
-.header h3 {
-    text-align: center;
-    margin-bottom: 0;
-    white-space: nowrap;
-    text-overflow: ellipsis;
-    overflow: hidden;
-    padding: 20px;
+.search-add .search-wrap {
+    position: relative;
+    width: 100%;
 }
-
-.header button,
-.modal > button {
-    border-radius: 0;
-    width: 40px;
-    text-align: center;
-    overflow: hidden;
+[dir='ltr'] .search-add .search-wrap {
+    border-radius: 20px 4px 4px 20px;
 }
-
-.header button {
+[dir='rtl'] .search-add .search-wrap {
+    border-radius: 4px 20px 20px 4px;
+}
+.search-add .search-wrap.focused .tooltip {
+    display: none;
+}
+.search-add .search-wrap:last-child {
+    border-radius: 20px;
+}
+.search-add input[type='search'] {
     position: relative;
+    width: 100%;
     height: 100%;
+    border: none;
+    font-size: 14px;
+    text-indent: 25px;
+    padding: 5px 10px;
+    border-radius: inherit;
 }
-
-.field-help-title button.close,
-.sidebar-component .header button.data-editor-close,
-.sidebar-component .header button.note-editor-close,
-.sidebar-component .header button.error-editor-close,
-.entity-editor-pane .header button.preset-close,
-.preset-list-pane .header button.preset-choose {
+.search-add input[type='search'][disabled] {
+    opacity: 0.25;
+    cursor: not-allowed;
+}
+.search-add .search-icon {
+    color: #333;
+    display: block;
     position: absolute;
-    right: 0;
-    top: 0;
+    left: 10px;
+    top: 10px;
+    pointer-events: none;
 }
-[dir='rtl'] .field-help-title button.close,
-[dir='rtl'] .sidebar-component .header button.data-editor-close,
-[dir='rtl'] .sidebar-component .header button.note-editor-close,
-[dir='rtl'] .sidebar-component .header button.error-editor-close,
-[dir='rtl'] .entity-editor-pane .header button.preset-close,
-[dir='rtl'] .preset-list-pane .header button.preset-choose {
-    left: 0;
-    right: auto;
+[dir='rtl'] .search-add .search-icon {
+    left: auto;
+    right: 10px;
 }
-
-.entity-editor-pane .header button.preset-choose {
+.search-add .popover {
+    border: none;
+    border-radius: 6px;
     position: absolute;
-    left: 0;
-    top: 0;
-}
-[dir='rtl'] .entity-editor-pane .header button.preset-choose {
+    max-height: 600px;
+    top: 44px;
+    width: 200%;
+    max-width: 325px;
+    margin: auto;
     left: auto;
-    right: 0;
+    right: auto;
+    z-index: 300;
+}
+.search-add .popover .popover-content {
+    overflow-y: auto;
+    height: 100%;
+    max-height: 60vh;
+}
+.search-add .popover,
+.search-add .popover .popover-content {
+    /* ensure corners are rounded in Chrome */
+    -webkit-mask-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAA5JREFUeNpiYGBgAAgwAAAEAAGbA+oJAAAAAElFTkSuQmCC);
+}
+.search-add .popover .popover-footer {
+    padding: 5px 10px 5px 10px;