Unnest bubble filters
This commit is contained in:
@@ -1,12 +1,14 @@
|
||||
class BubblesController < ApplicationController
|
||||
include BucketScoped
|
||||
|
||||
skip_before_action :set_bucket, only: :index
|
||||
|
||||
before_action :set_filter, only: :index
|
||||
before_action :set_bubble, only: %i[ show edit update ]
|
||||
before_action :clear_assignees, only: :index
|
||||
before_action :set_view, :set_filter, only: :index
|
||||
|
||||
def index
|
||||
@bubbles = @filter.bubbles
|
||||
@bubbles = @bubbles.mentioning(params[:term]) if params[:term].present?
|
||||
end
|
||||
|
||||
def new
|
||||
@@ -31,6 +33,10 @@ class BubblesController < ApplicationController
|
||||
end
|
||||
|
||||
private
|
||||
def set_filter
|
||||
@filter = Current.user.filters.build params: params.permit(*Filter::KNOWN_PARAMS)
|
||||
end
|
||||
|
||||
def set_bubble
|
||||
@bubble = @bucket.bubbles.find params[:id]
|
||||
end
|
||||
@@ -38,18 +44,4 @@ class BubblesController < ApplicationController
|
||||
def bubble_params
|
||||
params.expect(bubble: [ :title, :color, :due_on, :image, tag_ids: [] ])
|
||||
end
|
||||
|
||||
def clear_assignees
|
||||
params[:assignee_ids] = nil if helpers.unassigned_filter_activated?
|
||||
end
|
||||
|
||||
def set_view
|
||||
@view = @bucket.views.find_by(creator: Current.user, id: params[:view_id]) if params[:view_id]
|
||||
@view ||= @bucket.views.find_by(creator: Current.user, filters: helpers.bubble_filter_params.to_h)
|
||||
params[:view_id] = @view&.id
|
||||
end
|
||||
|
||||
def set_filter
|
||||
@filter = @bucket.bubble_filter_from helpers.view_filter_params
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user