]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/notes/show.html.erb
Add social sharing functionality
[rails.git] / app / views / notes / show.html.erb
index 980b5062cf858258a1ac76666bb72d828e4e874a..4aa2e7fd345d196b9b3d0f4ad215b9a6950b6432 100644 (file)
@@ -4,7 +4,7 @@
 
 <div>
   <h4><%= t(".description") %></h4>
-  <div class="note-description">
+  <div class="overflow-hidden ms-2">
     <%= h(@note_comments.first.body.to_html) %>
   </div>
 
@@ -25,7 +25,7 @@
   </div>
 
   <% if @note_comments.find { |comment| comment.author.nil? } -%>
-    <p class='alert alert-warning'><%= t "javascripts.notes.show.anonymous_warning" %></p>
+    <p class='alert alert-warning'><%= t ".anonymous_warning" %></p>
   <% end -%>
 
   <% if @note_comments.length > 1 %>
       <ul class="list-unstyled">
         <% @note_comments.drop(1).each do |comment| %>
           <li id="c<%= comment.id %>">
-            <small class='text-muted'><%= note_event(comment.event, comment.created_at, comment.author) %></small>
-            <%= comment.body.to_html %>
+            <small class='text-body-secondary'><%= note_event(comment.event, comment.created_at, comment.author) %></small>
+            <div class="mx-2">
+              <%= comment.body.to_html %>
+            </div>
           </li>
         <% end %>
       </ul>
         <div class="mb-3">
           <textarea class="form-control" name="text" cols="40" rows="5" maxlength="2000"></textarea>
         </div>
-        <div class="btn-wrapper">
+        <div id="comment-error" class="alert alert-danger p-2 mb-3" hidden>
+        </div>
+        <div class="d-flex flex-wrap gap-1">
           <% if current_user.moderator? -%>
-            <input type="submit" name="hide" value="<%= t("javascripts.notes.show.hide") %>" class="btn btn-light" data-method="DELETE" data-url="<%= api_note_url(@note, "json") %>">
+            <%= button_tag t(".hide"), :name => "hide", :class => "btn btn-light",
+                                       :data => { :method => "DELETE",
+                                                  :url => api_note_url(@note, "json") } %>
           <% end -%>
-          <input type="submit" name="close" value="<%= t("javascripts.notes.show.resolve") %>" class="btn btn-primary"
-            data-method="POST" data-url="<%= close_api_note_url(@note, "json") %>"
-            data-default-action-text="<%= t("javascripts.notes.show.resolve") %>"
-            data-comment-action-text="<%= t("javascripts.notes.show.comment_and_resolve") %>">
-          <input type="submit" name="comment" value="<%= t("javascripts.notes.show.comment") %>" class="btn btn-primary" data-method="POST" data-url="<%= comment_api_note_url(@note, "json") %>" disabled="1">
+          <%= button_tag t(".resolve"), :name => "close", :class => "btn btn-primary",
+                                        :data => { :method => "POST",
+                                                   :url => close_api_note_url(@note, "json"),
+                                                   :default_action_text => t(".resolve"),
+                                                   :comment_action_text => t(".comment_and_resolve") } %>
+          <%= button_tag t(".comment"), :name => "comment", :class => "btn btn-primary", :disabled => true,
+                                        :data => { :method => "POST",
+                                                   :url => comment_api_note_url(@note, "json") } %>
         </div>
       </form>
+    <% else -%>
+      <p>
+        <%= link_to t(".log_in_to_comment"), login_path(:referer => request.fullpath) %>
+      </p>
     <% end -%>
   <% else %>
     <form class="mb-3" action="#">
       <input type="hidden" name="text" value="" autocomplete="off">
-      <div class="btn-wrapper">
+      <div id="comment-error" class="alert alert-danger p-2 mb-3" hidden>
+      </div>
+      <div class="d-flex flex-wrap gap-1">
         <% if @note.status != "hidden" and current_user and current_user.moderator? -%>
-          <input type="submit" name="hide" value="<%= t("javascripts.notes.show.hide") %>" class="btn btn-light" data-method="DELETE" data-url="<%= api_note_url(@note, "json") %>">
+          <%= button_tag t(".hide"), :name => "hide", :class => "btn btn-light",
+                                     :data => { :method => "DELETE",
+                                                :url => api_note_url(@note, "json") } %>
         <% end -%>
         <% if current_user -%>
-          <input type="submit" name="reopen" value="<%= t("javascripts.notes.show.reactivate") %>" class="btn btn-primary" data-method="POST" data-url="<%= reopen_api_note_url(@note, "json") %>">
+          <%= button_tag t(".reactivate"), :name => "reopen", :class => "btn btn-primary",
+                                           :data => { :method => "POST",
+                                                      :url => reopen_api_note_url(@note, "json") } %>
         <% end -%>
       </div>
     </form>
 
   <% if current_user && current_user != @note.author %>
     <p>
-      <small class="text-muted">
-        <%= t "javascripts.notes.show.report_link_html", :link => report_link(t(".report"), @note) %>
+      <small class="text-body-secondary">
+        <%= t ".report_link_html", :link => report_link(t(".report"), @note) %>
         <% if @note.status == "open" %>
-          <%= t "javascripts.notes.show.other_problems_resolve", :link => report_link(t(".report"), @note) %>
+          <%= t ".other_problems_resolve", :link => report_link(t(".report"), @note) %>
         <% elsif @note.status == "closed" %>
-          <%= t "javascripts.notes.show.other_problems_resolved" %>
+          <%= t ".other_problems_resolved" %>
         <% end %>
       </small>
     </p>
   <% end %>
 
   <% if @note.freshly_closed? %>
-    <small class="text-muted">
-      <%= t "javascripts.notes.show.disappear_date_html", :disappear_in => disappear_in(@note) %>
+    <small class="text-body-secondary">
+      <%= t ".disappear_date_html", :disappear_in => friendly_date(@note.freshly_closed_until) %>
     </small>
   <% end %>
 </div>