Remove unnecessary filtering code
After removing collections from the filtering menu, there was quite a good cleanup here pending
This commit is contained in:
@@ -1,6 +1,4 @@
|
||||
class Account::SettingsController < ApplicationController
|
||||
include FilterScoped
|
||||
|
||||
def show
|
||||
@account = Account.sole
|
||||
@users = User.active.alphabetically
|
||||
|
||||
@@ -6,8 +6,6 @@ class CardsController < ApplicationController
|
||||
before_action :set_collection, only: %i[ create ]
|
||||
before_action :set_card, only: %i[ show edit update destroy ]
|
||||
|
||||
enable_collection_filtering only: :index
|
||||
|
||||
PAGE_SIZE = 25
|
||||
|
||||
def index
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
class Collections::Columns::ClosedsController < ApplicationController
|
||||
include CollectionScoped, FilterScoped
|
||||
include CollectionScoped
|
||||
|
||||
def show
|
||||
set_page_and_extract_portion_from @collection.cards.closed.recently_closed_first
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
class Collections::Columns::NotNowsController < ApplicationController
|
||||
include CollectionScoped, FilterScoped
|
||||
include CollectionScoped
|
||||
|
||||
def show
|
||||
set_page_and_extract_portion_from @collection.cards.postponed.reverse_chronologically.with_golden_first
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
class Collections::Columns::StreamsController < ApplicationController
|
||||
include CollectionScoped, FilterScoped
|
||||
include CollectionScoped
|
||||
|
||||
def show
|
||||
set_page_and_extract_portion_from @collection.cards.awaiting_triage.reverse_chronologically.with_golden_first
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
class Collections::ColumnsController < ApplicationController
|
||||
include ActionView::RecordIdentifier, CollectionScoped, FilterScoped
|
||||
include ActionView::RecordIdentifier, CollectionScoped
|
||||
|
||||
before_action :set_column, only: [ :show, :update, :destroy ]
|
||||
|
||||
|
||||
@@ -6,12 +6,6 @@ module FilterScoped
|
||||
before_action :set_user_filtering
|
||||
end
|
||||
|
||||
class_methods do
|
||||
def enable_collection_filtering(**options)
|
||||
before_action :enable_collection_filtering, **options
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
def set_filter
|
||||
if params[:filter_id].present?
|
||||
@@ -32,24 +26,4 @@ module FilterScoped
|
||||
def expanded_param
|
||||
ActiveRecord::Type::Boolean.new.cast(params[:expand_all])
|
||||
end
|
||||
|
||||
def enable_collection_filtering
|
||||
# We pass a block so that we don't have to pass around the script_name and host
|
||||
# to the model to make +url_for+ invocable
|
||||
@user_filtering.enable_collection_filtering do |**options|
|
||||
url_for(options)
|
||||
end
|
||||
end
|
||||
|
||||
def enable_referral_collection_filtering
|
||||
@user_filtering.enable_collection_filtering do |**options|
|
||||
if request.referer.present?
|
||||
uri = URI.parse(request.referer)
|
||||
uri.query = Rack::Utils.build_query(options)
|
||||
uri.to_s
|
||||
else
|
||||
url_for(options)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
class EventsController < ApplicationController
|
||||
include DayTimelinesScoped
|
||||
|
||||
enable_collection_filtering only: :index
|
||||
|
||||
def index
|
||||
fresh_when @day_timeline
|
||||
end
|
||||
|
||||
@@ -1,14 +1,7 @@
|
||||
class My::MenusController < ApplicationController
|
||||
include FilterScoped
|
||||
|
||||
before_action :enable_referral_collection_filtering, if: :collection_filtering_enabled?
|
||||
|
||||
def show
|
||||
fresh_when @user_filtering
|
||||
end
|
||||
|
||||
private
|
||||
def collection_filtering_enabled?
|
||||
params[:enable_collection_filtering].present?
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
class Notifications::SettingsController < ApplicationController
|
||||
include FilterScoped
|
||||
before_action :set_settings
|
||||
|
||||
def show
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
class NotificationsController < ApplicationController
|
||||
include FilterScoped
|
||||
|
||||
def index
|
||||
@unread = Current.user.notifications.unread.ordered unless current_page_param
|
||||
set_page_and_extract_portion_from Current.user.notifications.read.ordered
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
class WebhooksController < ApplicationController
|
||||
include FilterScoped
|
||||
|
||||
before_action :ensure_can_administer
|
||||
before_action :set_collection
|
||||
before_action :set_webhook, except: %i[ index new create ]
|
||||
|
||||
@@ -71,28 +71,12 @@ class User::Filtering
|
||||
filter.collections.any?
|
||||
end
|
||||
|
||||
def enable_collection_filtering(&block)
|
||||
@collection_filtering_route_resolver = block
|
||||
end
|
||||
|
||||
def self_filter_path(...)
|
||||
if supports_collection_filtering?
|
||||
@collection_filtering_route_resolver.call(...)
|
||||
else
|
||||
cards_path(...)
|
||||
end
|
||||
end
|
||||
|
||||
def single_collection_or_first
|
||||
# Default to the first selected or, when no selection, to the first one
|
||||
filter.collections.first || collections.first
|
||||
end
|
||||
|
||||
def cache_key
|
||||
ActiveSupport::Cache.expand_cache_key([ user, filter, expanded?, collections, tags, users, filters, supports_collection_filtering? ], "user-filtering")
|
||||
end
|
||||
|
||||
def supports_collection_filtering?
|
||||
@collection_filtering_route_resolver.present?
|
||||
ActiveSupport::Cache.expand_cache_key([ user, filter, expanded?, collections, tags, users, filters ], "user-filtering")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Account Settings" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<h1 class="header__title"><%= @page_title %></h1>
|
||||
<% end %>
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<% end %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<h1 class="header__title divider divider--fade full-width">
|
||||
<span class="overflow-ellipsis"><%= @user_filtering.selected_collections_label %></span>
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<% end %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<%= link_to collection_url(@card.collection), class: "header__title btn borderless txt-large",
|
||||
style: "--btn-padding: 0.25ch 1ch 0.25ch 0.75ch; view-transistion-name: card-collection-title;",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Column: Closed" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to @collection, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Column: Now now" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to @collection, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Column: #{ @column.name }" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to @column.collection, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Column: The Stream" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to @collection, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Collection Settings" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to @collection, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
<span class="overflow-ellipsis">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Create a new collection" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<% end %>
|
||||
|
||||
<div class="panel shadow center" style="--panel-size: 55ch; view-transition-name: new-collection">
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<% end %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= render "cards/webhooks", collection: @collection if Current.user.admin? %>
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<%= render "filters/broadcasts", filter: @filter %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<%= render "events/index/add_card_button", user_filtering: @user_filtering %>
|
||||
|
||||
<h1 class="header__title">
|
||||
|
||||
@@ -8,6 +8,6 @@
|
||||
dialog_target: "dialog",
|
||||
navigable_list_focus_on_selection_value: false,
|
||||
navigable_list_actionable_items_value: true } do %>
|
||||
<%= turbo_frame_tag "my_menu", src: my_menu_path(enable_collection_filtering: user_filtering.supports_collection_filtering?, **user_filtering.filter.as_params), target: "_top" %>
|
||||
<%= turbo_frame_tag "my_menu", src: my_menu_path, target: "_top" %>
|
||||
<% end %>
|
||||
</nav>
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
<% # Using method: :get inside Turbo frame triggers some special Turbo handling where the script_name is lost %>
|
||||
<%= form_with url: user_filtering.self_filter_path(script_name: Account.sole.slug), method: :get, class: "display-contents",
|
||||
data: { controller: "form" } do |form| %>
|
||||
<% if user_filtering.collections.any? %>
|
||||
<%= collapsible_nav_section "Collections" do %>
|
||||
<%= render "filters/menu/collections/all_option", form: form, user_filtering: user_filtering %>
|
||||
<%= render partial: "filters/menu/collections/collection", collection: user_filtering.collections, as: :collection, locals: { form: form, user_filtering: user_filtering } %>
|
||||
<% end %>
|
||||
<% if user_filtering.collections.any? %>
|
||||
<%= collapsible_nav_section "Collections" do %>
|
||||
<%= render "filters/menu/collections/all_option", user_filtering: user_filtering %>
|
||||
<%= render partial: "filters/menu/collections/collection", collection: user_filtering.collections, as: :collection %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
<% clear_url_path = user_filtering.self_filter_path(user_filtering.as_params.except(:collection_ids), script_name: request.script_name) %>
|
||||
|
||||
<% if Current.user.collections.many? %>
|
||||
<li class="popup__item" data-filter-target="item" data-navigable-list-target="item" id="filter-collection-all">
|
||||
<%= icon_tag "collection", class: "popup__icon" %>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<% @hide_footer_frames = true %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
|
||||
<h1 class="header__title"><%= @page_title %></h1>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Notifications settings" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<h1 class="header__title"><%= @page_title %></h1>
|
||||
<% end %>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Edit your profile" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<% end %>
|
||||
|
||||
<div class="panel shadow center">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = @user.name %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<% end %>
|
||||
|
||||
<div class="panel shadow center txt-align-center margin-block-end-double">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = @webhook.name %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to @webhook, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
<span class="overflow-ellipsis">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Webhooks" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to cards_path(collection_ids: [ @collection ]), class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
<span class="overflow-ellipsis">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = "Set up a Webhook" %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to collection_webhooks_path, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
<span class="overflow-ellipsis">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<% @page_title = @webhook.name %>
|
||||
|
||||
<% content_for :header do %>
|
||||
<%= render "filters/menu", user_filtering: @user_filtering %>
|
||||
<%= render "filters/menu" %>
|
||||
<div class="header__actions header__actions--start">
|
||||
<%= link_to collection_webhooks_path, class: "btn borderless txt-medium", data: { controller: "hotkey", action: "keydown.esc@document->hotkey#click" } do %>
|
||||
<span class="overflow-ellipsis">
|
||||
|
||||
Reference in New Issue
Block a user