Skip to content
Extraits de code Groupes Projets
Non vérifiée Valider b8e4c85e rédigé par Eugen Rochko's avatar Eugen Rochko Validation de GitHub
Parcourir les fichiers

Add dormant filter to relationship manager, rename other filters (#10308)

Rename "abandoned" to "moved", and "active" to "primary"
parent 7130d6e5
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -31,17 +31,18 @@ class RelationshipsController < ApplicationController ...@@ -31,17 +31,18 @@ class RelationshipsController < ApplicationController
def relationships_scope def relationships_scope
scope = begin scope = begin
if following_relationship? if following_relationship?
current_account.following.includes(:account_stat) current_account.following.joins(:account_stat)
else else
current_account.followers.includes(:account_stat) current_account.followers.joins(:account_stat)
end end
end end
scope.merge!(Follow.recent) scope.merge!(Follow.recent)
scope.merge!(mutual_relationship_scope) if mutual_relationship? scope.merge!(mutual_relationship_scope) if mutual_relationship?
scope.merge!(abandoned_account_scope) if params[:status] == 'abandoned' scope.merge!(moved_account_scope) if params[:status] == 'moved'
scope.merge!(active_account_scope) if params[:status] == 'active' scope.merge!(primary_account_scope) if params[:status] == 'primary'
scope.merge!(by_domain_scope) if params[:by_domain].present? scope.merge!(by_domain_scope) if params[:by_domain].present?
scope.merge!(dormant_account_scope) if params[:activity] == 'dormant'
scope scope
end end
...@@ -50,14 +51,18 @@ class RelationshipsController < ApplicationController ...@@ -50,14 +51,18 @@ class RelationshipsController < ApplicationController
Account.where(id: current_account.following) Account.where(id: current_account.following)
end end
def abandoned_account_scope def moved_account_scope
Account.where.not(moved_to_account_id: nil) Account.where.not(moved_to_account_id: nil)
end end
def active_account_scope def primary_account_scope
Account.where(moved_to_account_id: nil) Account.where(moved_to_account_id: nil)
end 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 def by_domain_scope
Account.where(domain: params[:by_domain]) Account.where(domain: params[:by_domain])
end end
...@@ -79,7 +84,7 @@ class RelationshipsController < ApplicationController ...@@ -79,7 +84,7 @@ class RelationshipsController < ApplicationController
end end
def current_params 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 end
def action_from_button def action_from_button
......
...@@ -7,7 +7,7 @@ module Admin::FilterHelper ...@@ -7,7 +7,7 @@ module Admin::FilterHelper
CUSTOM_EMOJI_FILTERS = %i(local remote by_domain shortcode).freeze CUSTOM_EMOJI_FILTERS = %i(local remote by_domain shortcode).freeze
TAGS_FILTERS = %i(hidden).freeze TAGS_FILTERS = %i(hidden).freeze
INSTANCES_FILTERS = %i(limited by_domain).freeze INSTANCES_FILTERS = %i(limited by_domain).freeze
FOLLOWERS_FILTERS = %i(relationship status by_domain).freeze FOLLOWERS_FILTERS = %i(relationship status by_domain activity).freeze
FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS + INVITE_FILTER + CUSTOM_EMOJI_FILTERS + TAGS_FILTERS + INSTANCES_FILTERS + FOLLOWERS_FILTERS FILTERS = ACCOUNT_FILTERS + REPORT_FILTERS + INVITE_FILTER + CUSTOM_EMOJI_FILTERS + TAGS_FILTERS + INSTANCES_FILTERS + FOLLOWERS_FILTERS
......
...@@ -16,13 +16,20 @@ ...@@ -16,13 +16,20 @@
%strong= t 'relationships.status' %strong= t 'relationships.status'
%ul %ul
%li= filter_link_to t('generic.all'), status: nil %li= filter_link_to t('generic.all'), status: nil
%li= filter_link_to t('relationships.active'), status: 'active' %li= filter_link_to t('relationships.primary'), status: 'primary'
%li= filter_link_to t('relationships.abandoned'), status: 'abandoned' %li= filter_link_to t('relationships.moved'), status: 'moved'
.filter-subset
%strong= t 'relationships.activity'
%ul
%li= filter_link_to t('generic.all'), activity: nil
%li= filter_link_to t('relationships.dormant'), activity: 'dormant'
= form_for(@form, url: relationships_path, method: :patch) do |f| = form_for(@form, url: relationships_path, method: :patch) do |f|
= hidden_field_tag :page, params[:page] || 1 = hidden_field_tag :page, params[:page] || 1
= hidden_field_tag :relationship, params[:relationship] = hidden_field_tag :relationship, params[:relationship]
= hidden_field_tag :status, params[:status] = hidden_field_tag :status, params[:status]
= hidden_field_tag :activity, params[:activity]
.batch-table .batch-table
.batch-table__toolbar .batch-table__toolbar
......
...@@ -751,9 +751,11 @@ en: ...@@ -751,9 +751,11 @@ en:
publishing: Publishing publishing: Publishing
web: Web web: Web
relationships: relationships:
abandoned: Abandoned activity: Account activity
active: Active dormant: Dormant
moved: Moved
mutual: Mutual mutual: Mutual
primary: Primary
relationship: Relationship relationship: Relationship
remove_selected_domains: Remove all followers from the selected domains remove_selected_domains: Remove all followers from the selected domains
remove_selected_followers: Remove selected followers remove_selected_followers: Remove selected followers
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter