From b891a81008d2cf595cb37432a8e1f36606db16d6 Mon Sep 17 00:00:00 2001 From: Eugen Rochko Date: Thu, 22 Dec 2016 23:03:57 +0100 Subject: Follow call on locked account creates follow request instead Reflect "requested" relationship in API and UI Reflect inability of private posts to be reblogged in the UI Disable Webfinger for locked accounts --- app/models/account.rb | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'app/models/account.rb') diff --git a/app/models/account.rb b/app/models/account.rb index aa904588b..273c09833 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -34,6 +34,8 @@ class Account < ApplicationRecord has_many :notifications, inverse_of: :account, dependent: :destroy # Follow relations + has_many :follow_requests, dependent: :destroy + has_many :active_relationships, class_name: 'Follow', foreign_key: 'account_id', dependent: :destroy has_many :passive_relationships, class_name: 'Follow', foreign_key: 'target_account_id', dependent: :destroy @@ -179,6 +181,10 @@ class Account < ApplicationRecord def blocking_map(target_account_ids, account_id) Block.where(target_account_id: target_account_ids).where(account_id: account_id).map { |b| [b.target_account_id, true] }.to_h end + + def requested_map(target_account_ids, account_id) + FollowRequest.where(target_account_id: target_account_ids).where(account_id: account_id).map { |r| [r.target_account_id, true] }.to_h + end end before_create do -- cgit