diff --git a/app/controllers/entries_controller.rb b/app/controllers/entries_controller.rb index b5e0723..dfa55ce 100644 --- a/app/controllers/entries_controller.rb +++ b/app/controllers/entries_controller.rb @@ -41,11 +41,9 @@ class EntriesController < ApplicationController @display_languages = @supported_languages end - if turbo_frame_request? - turbo_frame_id = request.headers["Turbo-Frame"] - if turbo_frame_id == "entries_results" - render partial: "entries/results_frame", layout: false - end + respond_to do |format| + format.html + format.turbo_stream end end diff --git a/app/views/entries/_filters.html.erb b/app/views/entries/_filters.html.erb index bd094fa..8956994 100644 --- a/app/views/entries/_filters.html.erb +++ b/app/views/entries/_filters.html.erb @@ -1,34 +1,3 @@ -
-
- <%= form_with url: entries_path, - method: :get, - data: { - controller: "search", - turbo_frame: "entries_results" - } do |form| %> -
-
- - - -
- <% if @query.present? %> -
- <%= link_to "×", - entries_path(category: @category.presence, language: @language_code.presence, starts_with: @starts_with.presence), - class: "text-slate-400 hover:text-slate-600 text-2xl leading-none", - aria: { label: "Clear search" }, - data: { turbo_frame: "entries_results" } %> -
- <% end %> - <%= form.text_field :q, - value: @query, - placeholder: "Search words, phrases, or biblical terms...", - class: "block w-full pl-11 pr-10 py-4 bg-white border border-slate-200 rounded-2xl shadow-sm focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 transition", - data: { action: "input->search#queueSubmit" } %> -
- <% end %> -
<% base_params = { q: @query.presence, category: @category.presence, language: @language_code.presence, starts_with: @starts_with.presence }.compact %> <% all_category_params = base_params.except(:category) %> @@ -73,5 +42,3 @@ <% end %>
<% end %> -
-
diff --git a/app/views/entries/_results_frame.html.erb b/app/views/entries/_results_frame.html.erb deleted file mode 100644 index 20704b9..0000000 --- a/app/views/entries/_results_frame.html.erb +++ /dev/null @@ -1,3 +0,0 @@ -<%= turbo_frame_tag "entries_results" do %> - <%= render "entries/results" %> -<% end %> diff --git a/app/views/entries/_shell.html.erb b/app/views/entries/_shell.html.erb deleted file mode 100644 index a171ace..0000000 --- a/app/views/entries/_shell.html.erb +++ /dev/null @@ -1,7 +0,0 @@ -
- <%= render "entries/filters" %> - - <%= turbo_frame_tag "entries_results" do %> - <%= render "entries/results" %> - <% end %> -
diff --git a/app/views/entries/index.html.erb b/app/views/entries/index.html.erb index e2eef6e..c6e9ffa 100644 --- a/app/views/entries/index.html.erb +++ b/app/views/entries/index.html.erb @@ -10,8 +10,7 @@
Read-only public view - <%= link_to "Download XLSX", - download_entries_path(format: :xlsx), + <%= link_to "Download XLSX", download_entries_path(format: :xlsx), class: "text-xs font-bold text-indigo-700 px-3 py-2 rounded-md border border-indigo-200 bg-indigo-50 hover:bg-indigo-100 transition" %> <%= link_to "Sign In", "#", class: "bg-indigo-600 text-white px-4 py-2 rounded-lg text-sm font-semibold hover:bg-indigo-700 transition" %>
@@ -20,7 +19,39 @@
- <%= render "entries/filters" %> +
+
+ <%= form_with url: entries_path, + method: :get, + data: { turbo_stream: true } do |form| %> +
+
+ + + +
+ <% if @query.present? %> +
+ <%= link_to "×", + entries_path(category: @category.presence, language: @language_code.presence, starts_with: @starts_with.presence), + class: "text-slate-400 hover:text-slate-600 text-2xl leading-none", + aria: { label: "Clear search" }, + data: { turbo_stream: true } %> +
+ <% end %> + <%= form.text_field :q, + value: @query, + placeholder: "Search words, phrases, or biblical terms...", + class: "block w-full pl-11 pr-10 mt-2 mb-2 py-4 bg-white border border-slate-200 rounded-2xl shadow-sm focus:ring-2 focus:ring-indigo-500 focus:border-indigo-500 transition", + oninput: "this.form.requestSubmit()" %> +
+ <% end %> + + <%= turbo_frame_tag "entries_filters" do %> + <%= render "entries/filters" %> + <% end %> +
+
<%= turbo_frame_tag "entries_results" do %> <%= render "entries/results" %> diff --git a/app/views/entries/index.turbo_stream.erb b/app/views/entries/index.turbo_stream.erb new file mode 100644 index 0000000..78f8c31 --- /dev/null +++ b/app/views/entries/index.turbo_stream.erb @@ -0,0 +1,7 @@ +<%= turbo_stream.update "entries_filters" do %> + <%= render "entries/filters" %> +<% end %> + +<%= turbo_stream.update "entries_results" do %> + <%= render "entries/results" %> +<% end %>