From b8e4c85e69443abb141e666b36606056e86e116c Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Mon, 18 Mar 2019 03:53:17 +0100 Subject: Add dormant filter to relationship manager, rename other filters (#10308) Rename "abandoned" to "moved", and "active" to "primary" --- app/controllers/relationships_controller.rb | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'app/controllers/relationships_controller.rb') diff --git a/app/controllers/relationships_controller.rb b/app/controllers/relationships_controller.rb index e6dd65e44..84cb178a6 100644 --- a/app/controllers/relationships_controller.rb +++ b/app/controllers/relationships_controller.rb @@ -31,17 +31,18 @@ class RelationshipsController < ApplicationController def relationships_scope scope = begin if following_relationship? - current_account.following.includes(:account_stat) + current_account.following.joins(:account_stat) else - current_account.followers.includes(:account_stat) + current_account.followers.joins(:account_stat) end end scope.merge!(Follow.recent) scope.merge!(mutual_relationship_scope) if mutual_relationship? - scope.merge!(abandoned_account_scope) if params[:status] == 'abandoned' - scope.merge!(active_account_scope) if params[:status] == 'active' + scope.merge!(moved_account_scope) if params[:status] == 'moved' + scope.merge!(primary_account_scope) if params[:status] == 'primary' scope.merge!(by_domain_scope) if params[:by_domain].present? + scope.merge!(dormant_account_scope) if params[:activity] == 'dormant' scope end @@ -50,14 +51,18 @@ class RelationshipsController < ApplicationController Account.where(id: current_account.following) end - def abandoned_account_scope + def moved_account_scope Account.where.not(moved_to_account_id: nil) end - def active_account_scope + def primary_account_scope Account.where(moved_to_account_id: nil) end + def dormant_account_scope + AccountStat.where(last_status_at: nil).or(AccountStat.where(AccountStat.arel_table[:last_status_at].lt(1.month.ago))) + end + def by_domain_scope Account.where(domain: params[:by_domain]) end @@ -79,7 +84,7 @@ class RelationshipsController < ApplicationController end def current_params - params.slice(:page, :status, :relationship, :by_domain).permit(:page, :status, :relationship, :by_domain) + params.slice(:page, :status, :relationship, :by_domain, :activity).permit(:page, :status, :relationship, :by_domain, :activity) end def action_from_button -- cgit