X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/3af16f6337b52546297e7e09a1aba9b0e1df7e15..e206dd527ef7c6d1829f131533d722e536e4bfb5:/app/views/issues/index.html.erb diff --git a/app/views/issues/index.html.erb b/app/views/issues/index.html.erb index 135f2ae9e..3f79190fa 100644 --- a/app/views/issues/index.html.erb +++ b/app/views/issues/index.html.erb @@ -2,50 +2,42 @@ <h1><%= t ".title" %></h1> <% end %> -<%= form_tag(issues_path, :method => :get) do %> <p><%= t ".search_guidance" %></p> -<%= select_tag :status, options_for_select(Issue.aasm.states.map(&:name).map { |state| [t(".states.#{state}"), state] }, params[:status]), :include_blank => t(".select_status"), :data => { :behavior => "category_dropdown" } %> -<%= select_tag :issue_type, options_for_select(@issue_types, params[:issue_type]), :include_blank => t(".select_type"), :data => { :behavior => "category_dropdown" } %> -<%= text_field_tag :search_by_user, params[:search_by_user], :placeholder => t(".reported_user") %> -<%= select_tag :last_updated_by, options_for_select(@users.all.collect { |f| [f.display_name, f.id] } << [t(".not_updated"), "nil"], params[:last_updated_by]), :include_blank => t(".select_last_updated_by"), :data => { :behavior => "category_dropdown" } %> -<%= submit_tag t(".search"), :name => nil %> -<% end %> -<br/> -<% if @issues.length == 0 %> - <p><%= t ".issues_not_found" %></p> +<%= form_tag(issues_path, :method => :get, :data => { "turbo" => true, "turbo-frame" => "pagination", "turbo-action" => "advance" }) do %> + <div class="row gx-1"> + <div class="mb-3 col-md-auto"> + <%= select_tag :status, + options_for_select(Issue.aasm.states.map(&:name).map { |state| [t(".states.#{state}"), state] }, params[:status]), + :include_blank => t(".select_status"), + :data => { :behavior => "category_dropdown" }, + :class => "form-select" %> + </div> + <div class="mb-3 col-md-auto"> + <%= select_tag :issue_type, + options_for_select(@issue_types.map { |issue_type| [issue_type.constantize.model_name.human, issue_type] }, params[:issue_type]), + :include_blank => t(".select_type"), + :data => { :behavior => "category_dropdown" }, + :class => "form-select" %> + </div> + <div class="mb-3 col-md"> + <%= text_field_tag :search_by_user, + params[:search_by_user], + :placeholder => t(".reported_user"), + :autocomplete => "on", + :class => "form-control" %> + </div> + <div class="mb-3 col-md-auto"> + <%= select_tag :last_updated_by, + options_for_select(@users.all.collect { |f| [f.display_name, f.id] } << [t(".not_updated"), "nil"], params[:last_updated_by]), + :include_blank => t(".select_last_updated_by"), + :data => { :behavior => "category_dropdown" }, + :class => "form-select" %> + </div> + <div class="mb-3 col-md-auto"> + <%= submit_tag t(".search"), :name => nil, :class => "btn btn-primary" %> + </div> + </div> <% end %> -<br/> - -<table class="issues-list"> - <thead> - <tr> - <th><%= t ".status" %></th> - <th><%= t ".reports" %></th> - <th><%= t ".reported_item" %></th> - <th><%= t ".reported_user" %></th> - <th><%= t ".last_updated" %></th> - </tr> - </thead> - <tbody> - <% @issues.each do |issue| %> - <tr> - <td><%= t ".states.#{issue.status}" %></td> - <td><%= link_to t(".reports_count", :count => issue.reports_count), issue %></td> - <td><%= link_to reportable_title(issue.reportable), reportable_url(issue.reportable) %></td> - <td><%= link_to issue.reported_user.display_name, user_path(issue.reported_user) if issue.reported_user %></td> - <td> - <% if issue.user_updated %> - <%= t ".last_updated_time_user_html", :user => link_to(issue.user_updated.display_name, user_path(issue.user_updated)), - :time => distance_of_time_in_words_to_now(issue.updated_at), - :title => l(issue.updated_at) %> - <% else %> - <%= t ".last_updated_time_html", :time => distance_of_time_in_words_to_now(issue.updated_at), - :title => l(issue.updated_at) %> - <% end %> - </td> - </tr> - <% end %> - </tbody> -</table> +<%= render :partial => "page" %>