Add button to re-subscribe to all accounts from a domain (#4285)
This commit is contained in:
		
							parent
							
								
									1fcdaafa6f
								
							
						
					
					
						commit
						4b911fea03
					
				@ -6,15 +6,26 @@ module Admin
 | 
				
			|||||||
      @instances = ordered_instances
 | 
					      @instances = ordered_instances
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def resubscribe
 | 
				
			||||||
 | 
					      params.require(:by_domain)
 | 
				
			||||||
 | 
					      Pubsubhubbub::SubscribeWorker.push_bulk(subscribeable_accounts.pluck(:id))
 | 
				
			||||||
 | 
					      redirect_to admin_instances_path
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private
 | 
					    private
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def paginated_instances
 | 
					    def paginated_instances
 | 
				
			||||||
      Account.remote.by_domain_accounts.page(params[:page])
 | 
					      Account.remote.by_domain_accounts.page(params[:page])
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    helper_method :paginated_instances
 | 
					    helper_method :paginated_instances
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def ordered_instances
 | 
					    def ordered_instances
 | 
				
			||||||
      paginated_instances.map { |account| Instance.new(account) }
 | 
					      paginated_instances.map { |account| Instance.new(account) }
 | 
				
			||||||
    end
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def subscribeable_accounts
 | 
				
			||||||
 | 
					      Account.with_followers.remote.where(domain: params[:by_domain])
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
  end
 | 
					  end
 | 
				
			||||||
end
 | 
					end
 | 
				
			||||||
 | 
				
			|||||||
@ -3,3 +3,5 @@
 | 
				
			|||||||
    = instance.domain
 | 
					    = instance.domain
 | 
				
			||||||
  %td.count
 | 
					  %td.count
 | 
				
			||||||
    = instance.accounts_count
 | 
					    = instance.accounts_count
 | 
				
			||||||
 | 
					  %td
 | 
				
			||||||
 | 
					    = table_link_to 'paper-plane-o', t('admin.accounts.resubscribe'), resubscribe_admin_instances_url(by_domain: instance.domain), method: :post, data: { confirm: t('admin.accounts.are_you_sure') }
 | 
				
			||||||
 | 
				
			|||||||
@ -88,7 +88,12 @@ Rails.application.routes.draw do
 | 
				
			|||||||
    resources :subscriptions, only: [:index]
 | 
					    resources :subscriptions, only: [:index]
 | 
				
			||||||
    resources :domain_blocks, only: [:index, :new, :create, :show, :destroy]
 | 
					    resources :domain_blocks, only: [:index, :new, :create, :show, :destroy]
 | 
				
			||||||
    resource :settings, only: [:edit, :update]
 | 
					    resource :settings, only: [:edit, :update]
 | 
				
			||||||
    resources :instances, only: [:index]
 | 
					    
 | 
				
			||||||
 | 
					    resources :instances, only: [:index] do
 | 
				
			||||||
 | 
					      collection do
 | 
				
			||||||
 | 
					        post :resubscribe
 | 
				
			||||||
 | 
					      end
 | 
				
			||||||
 | 
					    end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    resources :reports, only: [:index, :show, :update] do
 | 
					    resources :reports, only: [:index, :show, :update] do
 | 
				
			||||||
      resources :reported_statuses, only: [:create, :update, :destroy]
 | 
					      resources :reported_statuses, only: [:create, :update, :destroy]
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user