Merge remote-tracking branch 'upstream/pull/3226'
authorTom Hughes <tom@compton.nu>
Wed, 16 Jun 2021 17:07:38 +0000 (18:07 +0100)
committerTom Hughes <tom@compton.nu>
Wed, 16 Jun 2021 17:07:38 +0000 (18:07 +0100)
27 files changed:
app/assets/javascripts/index/browse.js
app/assets/javascripts/index/directions.js
app/assets/stylesheets/common.scss
app/assets/stylesheets/small.scss
app/controllers/confirmations_controller.rb
app/views/application/_sidebar_header.html.erb
app/views/browse/changeset.html.erb
app/views/browse/new_note.html.erb
app/views/browse/not_found.html.erb
app/views/browse/note.html.erb
app/views/browse/query.html.erb
app/views/browse/timeout.html.erb
app/views/changesets/history.html.erb
app/views/changesets/index.html.erb
app/views/geocoder/search.html.erb
app/views/layouts/map.html.erb
app/views/site/export.html.erb
test/integration/user_changeset_comments_test.rb
test/models/changeset_tag_test.rb
test/models/message_test.rb
test/models/node_tag_test.rb
test/models/old_node_tag_test.rb
test/models/old_relation_tag_test.rb
test/models/old_way_tag_test.rb
test/models/relation_tag_test.rb
test/models/user_preference_test.rb
test/models/way_tag_test.rb

index 07ad64def19417bb117c5af89f5c03712cc4994d..b6a388d81676b6af2cb9d5695c2642359921f820 100644 (file)
@@ -55,12 +55,12 @@ OSM.initializeBrowse = function (map) {
             .text(I18n.t("browse.start_rjs.load_data"))
             .prepend($("<span class='icon close'></span>").click(cancel)))
         .append(
-          $("<div class='inner12'>")
+          $("<div>")
             .append(
               $("<p class='alert alert-warning clearfix'></p>")
                 .text(I18n.t("browse.start_rjs.feature_warning", { num_features: count, max_features: limit })))
             .append(
-              $("<input type='submit'>")
+              $("<input type='submit' class='btn btn-primary'>")
                 .val(I18n.t("browse.start_rjs.load_data"))
                 .click(add))));
   }
index 18466864b19c80e44f6db06005c132b001fa799e..5040e7f3ef0d404b449f9fe28895fbf40bbc480e 100644 (file)
@@ -256,7 +256,7 @@ OSM.Directions = function (map) {
 
       var html = "<h2><a class=\"geolink\" href=\"#\">" +
         "<span class=\"icon close\"></span></a>" + I18n.t("javascripts.directions.directions") +
-        "</h2><p id=\"routing_summary\">" +
+        "</h2><p>" +
         I18n.t("javascripts.directions.distance") + ": " + formatDistance(route.distance) + ". " +
         I18n.t("javascripts.directions.time") + ": " + formatTime(route.time) + ".";
       if (typeof route.ascend !== "undefined" && typeof route.descend !== "undefined") {
@@ -264,7 +264,7 @@ OSM.Directions = function (map) {
           I18n.t("javascripts.directions.ascend") + ": " + Math.round(route.ascend) + "m. " +
           I18n.t("javascripts.directions.descend") + ": " + Math.round(route.descend) + "m.";
       }
-      html += "</p><table id=\"turnbyturn\" />";
+      html += "</p><table id=\"turnbyturn\" class=\"mb-3\"/>";
 
       $("#sidebar_content")
         .html(html);
@@ -312,7 +312,7 @@ OSM.Directions = function (map) {
         $("#turnbyturn").append(row);
       });
 
-      $("#sidebar_content").append("<p id=\"routing_credit\">" +
+      $("#sidebar_content").append("<p class=\"text-center\">" +
         I18n.t("javascripts.directions.instructions.courtesy", { link: chosenEngine.creditline }) +
         "</p>");
 
index 411e6167bf3e37e64a9d65700121be25ed28da66..1ec9e08e08c3be457c40934c5d40b44393cf3c0a 100644 (file)
@@ -362,6 +362,10 @@ body.compact-nav {
       display: none;
     }
 
+    #sidebar_content {
+      padding: $spacer;
+    }
+
     > div {
       position: relative;
       float: left;
@@ -370,7 +374,6 @@ body.compact-nav {
     }
 
     h2 {
-      padding: $lineheight $lineheight $lineheight/2;
       font-size: 1.5rem;
     }
 
@@ -676,6 +679,10 @@ body.compact-nav {
     margin-left: auto;
     margin-right: auto;
   }
+
+  > div {
+   padding: $spacer;
+  }
 }
 
 #sidebar {
@@ -739,13 +746,6 @@ header .search_forms,
 
 /* Rules for routing */
 
-#sidebar_content>table {
-    padding: 5px 20px 10px 15px;
-    width: 100%;
-    border-collapse: separate;
-    border-spacing: 0;
-}
-
 div.direction {
   background-image: image-url('routing-sprite.png');
   width: 20px;
@@ -756,10 +756,6 @@ div.direction {
 div.direction.i#{$i} { background-position: #{($i)*-20}px 0px; }
 }
 
-p#routing_summary {
-    padding: 0 $lineheight $lineheight/4;
-}
-
 td.instruction, td.distance {
     padding-top: $lineheight/5;
     padding-bottom: $lineheight/5;
@@ -821,7 +817,8 @@ tr.turn:hover {
 
 #sidebar_content {
   .browse-section {
-    padding: $lineheight/2 $lineheight;
+    padding-bottom: $spacer;
+    margin-bottom: $spacer;
     border-bottom: 1px solid $grey;
 
     h4:first-child {
@@ -942,17 +939,8 @@ tr.turn:hover {
     margin: 0 0 10px 10px;
   }
 
-  .query-intro p {
-    padding: $lineheight $lineheight $lineheight/2;
-  }
-
   .query-results {
     display: none;
-    padding-bottom: $lineheight/2;
-
-    h3 {
-      padding: 0 $lineheight;
-    }
 
     ul {
       li {
@@ -981,8 +969,6 @@ tr.turn:hover {
 /* Rules for export sidebar */
 
 .export_form {
-  padding: $lineheight;
-
   .export_area_inputs,
   .export_button {
     text-align: center;
@@ -1026,15 +1012,6 @@ tr.turn:hover {
   }
 }
 
-/* Rules for the routing sidebar */
-
-#sidebar_content {
-  #routing_credit {
-    text-align: center;
-    padding: 0.5em;
-  }
-}
-
 /* Rules for edit pages */
 
 .site-edit {
@@ -1578,18 +1555,6 @@ div.secondary-actions {
   text-align: center;
 }
 
-/* Utility for managing inner content areas */
-
-.inner22 { padding: $lineheight;}
-
-.inner12 { padding: $lineheight/2 $lineheight;}
-
-.inner11 { padding: $lineheight/2;}
-
-.inner20 { padding: $lineheight 0;}
-
-.inner02 { padding: 0 $lineheight;}
-
 .buttons {
   min-width: 200px;
   input[type="submit"],
index 530d7b7e671af1384bcea9c5d31326875dec08a7..51501758d77cf6b0d5d438793c422921d3c5611d 100644 (file)
@@ -107,7 +107,7 @@ body.small-nav {
     .overlay-sidebar {
       #sidebar {
         position: absolute;
-        width: 300px;
+        width: 350px;
         height: auto;
         overflow: hidden;
       }
index b77ed09b3138caf9092cc0a3505ad5bb58aae652..f9de54df0aa20559ada7d2e3b30bbe0be2bebe26 100644 (file)
@@ -66,7 +66,7 @@ class ConfirmationsController < ApplicationController
       flash[:error] = t "confirmations.confirm_resend.failure", :name => params[:display_name]
     else
       UserMailer.signup_confirm(user, user.tokens.create).deliver_later
-      flash[:notice] = t "confirmations.confirm_resend.success_html", :email => user.email, :sender => Settings.support_email
+      flash[:notice] = t "confirmations.confirm_resend.success_html", :email => user.email, :sender => Settings.email_from
     end
 
     redirect_to login_path
index 5413b4205df1c4bb6584cb1ac9cfe3cb036c3a70..da1f6bf45644e1d45352ca17e6ff6f789e2932f4 100644 (file)
@@ -2,7 +2,7 @@
   <div class="flex-grow-1 text-break">
     <h2><%= title %></h2>
   </div>
-  <div class="px-3 py-3">
+  <div>
     <a class="geolink" href="<%= root_path %>">
       <span class="icon close"></span>
     </a>
index 079915fcf1f48187023d729c690b3ac83102648b..9ede3df324351b9a82c69220565fe3c3f17c48be 100644 (file)
@@ -2,7 +2,7 @@
 
 <%= render "sidebar_header", :title => t(".title", :id => @changeset.id) %>
 
-<div class="browse-section">
+<div>
   <p class="font-italic">
     <%= linkify(@changeset.tags["comment"].to_s.presence || t("browse.no_comment")) %>
   </p>
index 1786c260f4701e65826c16f23efba95b7ab2a14a..a9937c4bc7d8c9c74b93d90a1c85c2da6c5fcddd 100644 (file)
@@ -2,7 +2,7 @@
 
 <%= render "sidebar_header", :title => t("browse.note.new_note") %>
 
-<div class="note browse-section">
+<div class="note">
   <p class="alert alert-info"><%= t("javascripts.notes.new.intro") %></p>
   <form action="#">
     <input type="hidden" name="lon">
index 084c247dcfe3e8bf8a657be3a5fa6aa002ef840b..36ee4c883769ee3b28da09693c025bb499ffb7a5 100644 (file)
@@ -2,6 +2,6 @@
 
 <%= render "sidebar_header", :title => t(".title") %>
 
-<div class="browse-section">
+<div>
   <p><%= t ".sorry", :type => t(".type.#{@type}"), :id => params[:id] %>
 </div>
index 6dcd46e76435fa76d37f4d8f8171491b4c63ab74..0180e26cad8d84103558354ee9a76f1163823116 100644 (file)
@@ -2,7 +2,7 @@
 
 <%= render "sidebar_header", :title => t(".#{@note.status}_title", :note_name => @note.id) %>
 
-<div class="browse-section">
+<div>
   <h4><%= t(".description") %></h4>
   <div class="note-description">
     <%= h(@note_comments.first.body.to_html) %>
index 65231641c939ab2572d7722616a6f7f724142a0e..53eca97477b424b0e98a1829f81f36aff60d73a3 100644 (file)
@@ -2,14 +2,14 @@
 
 <%= render "sidebar_header", :title => t(".title") %>
 
-<div class="query-intro">
+<div>
   <p><%= t(".introduction") %></p>
 </div>
 
 <div id="query-nearby" class="query-results">
   <h3><%= t(".nearby") %></h3>
   <%= image_tag "searching.gif", :class => "loader" %>
-  <div>
+  <div class="mx-n3">
     <ul class="query-results-list list-group list-group-flush"></ul>
   </div>
 </div>
@@ -17,7 +17,7 @@
 <div id="query-isin" class="query-results">
   <h3><%= t(".enclosing") %></h3>
   <%= image_tag "searching.gif", :class => "loader" %>
-  <div>
+  <div class="mx-n3">
     <ul class="query-results-list list-group list-group-flush"></ul>
   </div>
 </div>
index 084c247dcfe3e8bf8a657be3a5fa6aa002ef840b..36ee4c883769ee3b28da09693c025bb499ffb7a5 100644 (file)
@@ -2,6 +2,6 @@
 
 <%= render "sidebar_header", :title => t(".title") %>
 
-<div class="browse-section">
+<div>
   <p><%= t ".sorry", :type => t(".type.#{@type}"), :id => params[:id] %>
 </div>
index cb80787a7a6fa36a3f290734c05b562a5551ec79..b601057f6f1280ba780a15bb67271268e77cd51b 100644 (file)
@@ -13,6 +13,6 @@
 
 <%= render "sidebar_header", :title => @heading %>
 
-<div class="changesets">
+<div class="changesets mx-n3">
   <%= image_tag "searching.gif", :class => "loader" %>
 </div>
index e9e620062de20342323056675cf27f4317e7fa91..3ead2abdaed529b60da4a8a5d34d2ceec9270cc3 100644 (file)
@@ -9,9 +9,9 @@
   </div>
 <% end -%>
 <% elsif params[:bbox] %>
-  <div class="inner22"><%= t(params[:max_id] ? ".no_more_area" : ".empty_area") %></div>
+  <p><%= t(params[:max_id] ? ".no_more_area" : ".empty_area") %></p>
 <% elsif params[:display_name] %>
-  <div class="inner22"><%= t(params[:max_id] ? ".no_more_user" : ".empty_user") %></div>
+  <p><%= t(params[:max_id] ? ".no_more_user" : ".empty_user") %></p>
 <% else %>
-  <div class="inner22"><%= t(params[:max_id] ? ".no_more" : ".empty") %></div>
+  <p><%= t(params[:max_id] ? ".no_more" : ".empty") %></p>
 <% end %>
index 9f19be48a7922f955f2e9618497abd27c828c075..8502227de49c60a0d5ca4a97ad80ab159ee43292 100644 (file)
@@ -3,8 +3,8 @@
 <%= render "sidebar_header", :title => t("site.sidebar.search_results") %>
 
 <% @sources.each do |source| %>
-  <h4 class="inner12"><%= t(".title.#{source}_html") %></h4>
-  <div class="search_results_entry" data-href="<%= url_for @params.merge(:action => "search_#{source}") %>">
+  <h4><%= t(".title.#{source}_html") %></h4>
+  <div class="search_results_entry mx-n3" data-href="<%= url_for @params.merge(:action => "search_#{source}") %>">
     <%= image_tag "searching.gif", :class => "loader" %>
   </div>
 <% end %>
index 0403bc889634ebf25a43467ee0cefd06e6f12010..7a0ca0ed714c3bde95ade620844d7dfee23d97f9 100644 (file)
@@ -39,9 +39,9 @@
     </div>
 
     <% unless current_user %>
-      <div class="welcome">
+      <div class="welcome p-3">
         <%= render "sidebar_header", :title => t("layouts.intro_header") %>
-        <div class="px-3 pb-3">
+        <div>
           <p><%= t "layouts.intro_text" %></p>
           <p><%= t "layouts.hosting_partners_html",
                    :ucl => link_to(t("layouts.partners_ucl"), "https://www.ucl.ac.uk"),
index d6db3908b73c0816eb4fd0a7f0b2f9dd9245045a..9cbee91daaed2b677467d9570cbe66a63e3ead26 100644 (file)
     <div class="form-group d-flex">
       <%= submit_tag t(".export_button"), :class => "btn btn-primary mx-auto" %>
     </div>
-
-    <p><%= t ".too_large.advice" %></p>
   </div>
 
-  <dl class="inner12">
+  <p><%= t ".too_large.advice" %></p>
+
+  <dl class="px-3">
     <dt><a id="export_overpass" href="https://overpass-api.de/api/map?bbox="><%= t ".too_large.overpass.title" %></a></dt>
     <dd><%= t ".too_large.overpass.description" %></dd>
 
index 2483f1543293ab5346eac636431f7bfa787a1ea7..a9bd468cead1b1ec6bbcba7ed6ac6c7bbff2de6b 100644 (file)
@@ -11,7 +11,7 @@ class UserChangesetCommentsTest < ActionDispatch::IntegrationTest
     assert_select "div#content" do
       assert_select "div#sidebar" do
         assert_select "div#sidebar_content" do
-          assert_select "div.browse-section" do
+          assert_select "div" do
             assert_select "div.notice" do
               assert_select "a[href='/login?referer=%2Fchangeset%2F#{changeset.id}']", :text => I18n.t("browse.changeset.join_discussion"), :count => 1
             end
@@ -43,7 +43,7 @@ class UserChangesetCommentsTest < ActionDispatch::IntegrationTest
     assert_select "div#content" do
       assert_select "div#sidebar" do
         assert_select "div#sidebar_content" do
-          assert_select "div.browse-section" do
+          assert_select "div" do
             assert_select "form[action='#']" do
               assert_select "textarea[name=text]"
             end
index 1db2effd65aecf20c3588a93ef88a1525eaef722..90674fbbe420042b90237f86b7388d9a59819f9f 100644 (file)
@@ -5,7 +5,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
     changeset = create(:changeset)
 
     key = "k"
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag = ChangesetTag.new
       tag.changeset_id = changeset.id
       tag.k = key * i
@@ -18,7 +18,7 @@ class ChangesetTagTest < ActiveSupport::TestCase
     changeset = create(:changeset)
 
     val = "v"
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag = ChangesetTag.new
       tag.changeset_id = changeset.id
       tag.k = "k"
index b1acd0805b2e23de1cd3990122bdfbcc16637873..99a4710753a4ec4fef62eddc79c6d26d02b0bc80 100644 (file)
@@ -32,7 +32,7 @@ class MessageTest < ActiveSupport::TestCase
   end
 
   def test_utf8_roundtrip
-    (1..255).each do |i|
+    [1, 255].each do |i|
       assert_message_ok("c", i)
       assert_message_ok(EURO, i)
     end
index 1a7125f08b7f6ac8be14637313837118bc156f30..47295770f540992bbda0e9327b0da39a01cf9918 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class NodeTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class NodeTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index f432d04b85c2fd8d680835133ee54d7a050eb075..62869c6adfff3e61023f08382c943c92ac32f1d8 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class OldNodeTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:old_node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class OldNodeTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:old_node_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index a05e67ee704cb4846389b97c0fa5b07081e5ee23..dbdbf54c526f6c5ede048e3626766e827e4458d5 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class OldRelationTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:old_relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class OldRelationTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:old_relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index 565633063cc10e59ca1b34202aa188202acb5d97..d794cc275ea0eaff4e52ae6c962ecff830877f0e 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class OldWayTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:old_way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class OldWayTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:old_way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index e81b8b49c26eeeb018abb019f686b374f476e5c3..429e77a92f5997043fbb2fc87f4a0a8e8cf5d4f3 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class RelationTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class RelationTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:relation_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end
index 952289d940d20a30cf32df656c70bfb8ea0ccbfc..d6f1dcce5698acaed266f2c3da979e2dc0179c44 100644 (file)
@@ -15,7 +15,7 @@ class UserPreferenceTest < ActiveSupport::TestCase
   def test_check_valid_length
     key = "k"
     val = "v"
-    (1..255).each do |i|
+    [1, 255].each do |i|
       up = UserPreference.new
       up.user = create(:user)
       up.k = key * i
index 990a4362789d2ccfb57c9c20e7e966886e70a8f5..5860786c6147d5c4a7e66b32310c40ef5775269e 100644 (file)
@@ -3,7 +3,7 @@ require "test_helper"
 class WayTagTest < ActiveSupport::TestCase
   def test_length_key_valid
     tag = create(:way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.k = "k" * i
       assert tag.valid?
     end
@@ -11,7 +11,7 @@ class WayTagTest < ActiveSupport::TestCase
 
   def test_length_value_valid
     tag = create(:way_tag)
-    (0..255).each do |i|
+    [0, 255].each do |i|
       tag.v = "v" * i
       assert tag.valid?
     end