]> git.openstreetmap.org Git - rails.git/blobdiff - app/views/notes/index.html.erb
Add status filter to user's note page
[rails.git] / app / views / notes / index.html.erb
index 50059625d3b687e5980ac200224b05a7de48888b..c883126658e7c69b7cb278f4d9724c35f3d12bdd 100644 (file)
@@ -1,37 +1,60 @@
 <% content_for :heading do %>
-  <h2><%= t ".heading", :user => @user.display_name %></h2>
-  <p><%= t ".subheading_html", :user => link_to(@user.display_name, user_path(@user)) %></p>
+  <h1><%= t ".heading", :user => @user.display_name %></h1>
+  <p><%= t ".subheading_html",
+           :user => link_to(@user.display_name, @user),
+           :submitted => tag.span(t(".subheading_submitted"), :class => "px-2 py-1 bg-primary bg-opacity-25"),
+           :commented => tag.span(t(".subheading_commented"), :class => "px-2 py-1 bg-body") %></p>
 <% end %>
 
-<%= render :partial => "notes_paging_nav" %>
+<%= form_with :url => user_notes_path(@user), :method => :get, :data => { :turbo => true } do %>
+  <div class="row gx-2 align-items-end">
+    <div class="col-sm-auto mb-3">
+      <%= label_tag :status, t(".status") %>
+      <%= select_tag :status,
+                     options_for_select([[t(".all"), "all"], [t(".open"), "open"], [t(".closed"), "closed"]], params[:status] || "all"),
+                     :class => "form-select" %>
+    </div>
+    <div class="col-sm-auto mb-3">
+      <%= submit_tag t(".apply"), :name => nil, :class => "btn btn-primary" %>
+    </div>
+  </div>
+<% end %>
+
+<% if @notes.empty? %>
+  <h4><%= t ".no_notes" %></h4>
+
+<% else %>
+  <%= render :partial => "notes_paging_nav" %>
 
-<table class="table table-sm note_list">
-  <thead>
-    <tr>
-      <th></th>
-      <th><%= t ".id" %></th>
-      <th><%= t ".creator" %></th>
-      <th><%= t ".description" %></th>
-      <th><%= t ".created_at" %></th>
-      <th><%= t ".last_changed" %></th>
+  <table class="table table-sm note_list">
+    <thead>
+      <tr>
+        <th></th>
+        <th><%= t ".id" %></th>
+        <th><%= t ".creator" %></th>
+        <th><%= t ".description" %></th>
+        <th><%= t ".created_at" %></th>
+        <th><%= t ".last_changed" %></th>
+      </tr>
+    </thead>
+  <% @notes.each do |note| -%>
+    <tr<% if note.author == @user %> class="table-primary"<% end %>>
+      <td>
+        <% if note.closed? %>
+          <%= image_tag("closed_note_marker.svg", :alt => "closed", :width => 25, :height => 40) %>
+        <% else %>
+          <%= image_tag("open_note_marker.svg", :alt => "open", :width => 25, :height => 40) %>
+        <% end %>
+      </td>
+      <td><%= link_to note.id, note %></td>
+      <td><%= note_author(note.author) %></td>
+      <td><%= note.comments.first.body.to_html %></td>
+      <td><%= friendly_date_ago(note.created_at) %></td>
+      <td><%= friendly_date_ago(note.updated_at) %></td>
     </tr>
-  </thead>
-<% @notes.each do |note| -%>
-  <tr<% if note.author == @user %> class="creator"<% end %>>
-    <td>
-      <% if note.closed? %>
-        <%= image_tag("closed_note_marker.png", :alt => "closed", :size => "25x40") %>
-      <% else %>
-        <%= image_tag("open_note_marker.png", :alt => "open", :size => "25x40") %>
-      <% end %>
-    </td>
-    <td><%= link_to note.id, browse_note_path(note) %></td>
-    <td><%= note_author(note.author) %></td>
-    <td><%= note.comments.first.body.to_html %></td>
-    <td><%= friendly_date_ago(note.created_at) %></td>
-    <td><%= friendly_date_ago(note.updated_at) %></td>
-  </tr>
-<% end -%>
-</table>
+  <% end -%>
+  </table>
+
+  <%= render :partial => "notes_paging_nav" %>
 
-<%= render :partial => "notes_paging_nav" %>
+<% end -%>