From af2c6fd85e13139be3e3b2329a51c3a35acb3c40 Mon Sep 17 00:00:00 2001 From: erdgeist Date: Wed, 5 Aug 2026 23:56:56 +0200 Subject: Search assets and events, and order events by when they happen --- app/views/assets/index.html.erb | 2 ++ app/views/events/index.html.erb | 2 ++ app/views/nodes/_node_list.html.erb | 17 ++++------------- app/views/shared/_search_form.html.erb | 15 +++++++++++++++ 4 files changed, 23 insertions(+), 13 deletions(-) create mode 100644 app/views/shared/_search_form.html.erb (limited to 'app/views') diff --git a/app/views/assets/index.html.erb b/app/views/assets/index.html.erb index af11f54f..d2c5d6cc 100644 --- a/app/views/assets/index.html.erb +++ b/app/views/assets/index.html.erb @@ -4,6 +4,8 @@ :label => t(".create_asset"), :options => [[t(".create_asset"), new_asset_path]] %> +<%= render "shared/search_form", :placeholder => t(".search_placeholder") %> + <%= will_paginate @assets %> diff --git a/app/views/events/index.html.erb b/app/views/events/index.html.erb index c4f0a7f9..14790526 100644 --- a/app/views/events/index.html.erb +++ b/app/views/events/index.html.erb @@ -4,6 +4,8 @@ :label => t(".create_event"), :options => [[t(".create_event"), new_event_path]] %> +<%= render "shared/search_form", :placeholder => t(".search_placeholder") %> + <%= will_paginate @events %>
diff --git a/app/views/nodes/_node_list.html.erb b/app/views/nodes/_node_list.html.erb index f3101058..55f396b7 100644 --- a/app/views/nodes/_node_list.html.erb +++ b/app/views/nodes/_node_list.html.erb @@ -1,16 +1,7 @@ -<%= form_tag url_for(controller: params[:controller], action: params[:action]), method: :get, class: "node_search_form" do %> - <% Array(params[:kinds]).each do |kind| %> - <%= hidden_field_tag "kinds[]", kind %> - <% end %> - <%= hidden_field_tag :tags, params[:tags] if params[:tags].present? %> - <%= text_field_tag :q, params[:q], placeholder: t(".search_placeholder") %> - <%= button_tag type: "submit", class: "action_button" do %> - <%= icon("search", library: "tabler", "aria-hidden": true) %> <%= t("admin.common.search") %> - <% end %> - <% if params[:q].present? || params[:kinds].present? || params[:tags].present? %> - <%= link_to t("admin.common.reset"), url_for(controller: params[:controller], action: params[:action]) %> - <% end %> -<% end %> +<%= render "shared/search_form", + :placeholder => t(".search_placeholder"), + :hidden => Array(params[:kinds]).map { |k| ["kinds[]", k] } + + (params[:tags].present? ? [["tags", params[:tags]]] : []) %> <%= will_paginate @nodes %>
diff --git a/app/views/shared/_search_form.html.erb b/app/views/shared/_search_form.html.erb new file mode 100644 index 00000000..bff6dfaa --- /dev/null +++ b/app/views/shared/_search_form.html.erb @@ -0,0 +1,15 @@ +<%= form_tag url_for(:controller => params[:controller], :action => params[:action]), + :method => :get, :class => "search_form" do %> + <% Array(local_assigns[:hidden]).each do |field_name, value| %> + <%= hidden_field_tag field_name, value %> + <% end %> + <%= text_field_tag :q, params[:q], :placeholder => placeholder %> + <%= button_tag :type => "submit", :class => "action_button" do %> + <%= icon("search", library: "tabler", "aria-hidden": true) %> + <%= t("admin.common.search") %> + <% end %> + <% if params[:q].present? || Array(local_assigns[:hidden]).any? %> + <%= link_to t("admin.common.reset"), + url_for(:controller => params[:controller], :action => params[:action]) %> + <% end %> +<% end %> -- cgit v1.3