diff options
author | multiple creatures <dev@multiple-creature.party> | 2019-05-05 23:08:13 -0500 |
---|---|---|
committer | multiple creatures <dev@multiple-creature.party> | 2019-05-21 03:16:22 -0500 |
commit | c983c4e9528cf4163655db079393ba343f571718 (patch) | |
tree | 5d7ee3cea108a0771fa99604c7e0c5442747e4d1 /app/controllers | |
parent | a47b1daaebea09ca07ca93079e530f26cfeef914 (diff) |
Privacy: add options to make interaction lists private and to not be included in public interaction lists.
Diffstat (limited to 'app/controllers')
4 files changed, 6 insertions, 3 deletions
diff --git a/app/controllers/api/v1/statuses/favourited_by_accounts_controller.rb b/app/controllers/api/v1/statuses/favourited_by_accounts_controller.rb index 657e57831..d9d4bf7f3 100644 --- a/app/controllers/api/v1/statuses/favourited_by_accounts_controller.rb +++ b/app/controllers/api/v1/statuses/favourited_by_accounts_controller.rb @@ -17,11 +17,12 @@ class Api::V1::Statuses::FavouritedByAccountsController < Api::BaseController private def load_accounts + return [] if @status.local? && @status.account.user.setting_hide_interactions default_accounts.merge(paginated_favourites).to_a end def default_accounts - Account + Account.without_unlisted .includes(:favourites, :account_stat) .references(:favourites) .where(favourites: { status_id: @status.id }) diff --git a/app/controllers/api/v1/statuses/reblogged_by_accounts_controller.rb b/app/controllers/api/v1/statuses/reblogged_by_accounts_controller.rb index 6851099f6..15eb3a026 100644 --- a/app/controllers/api/v1/statuses/reblogged_by_accounts_controller.rb +++ b/app/controllers/api/v1/statuses/reblogged_by_accounts_controller.rb @@ -17,11 +17,12 @@ class Api::V1::Statuses::RebloggedByAccountsController < Api::BaseController private def load_accounts + return [] if @status.local? && @status.account.user.setting_hide_interactions default_accounts.merge(paginated_statuses).to_a end def default_accounts - Account.includes(:statuses, :account_stat).references(:statuses) + Account.without_unlisted.includes(:statuses, :account_stat).references(:statuses) end def paginated_statuses diff --git a/app/controllers/settings/preferences_controller.rb b/app/controllers/settings/preferences_controller.rb index afd6ee388..0a7b1326d 100644 --- a/app/controllers/settings/preferences_controller.rb +++ b/app/controllers/settings/preferences_controller.rb @@ -48,6 +48,7 @@ class Settings::PreferencesController < Settings::BaseController :setting_gently_kobolds, :setting_user_is_kobold, :setting_hide_mascot, + :setting_hide_interactions, :setting_default_privacy, :setting_default_sensitive, diff --git a/app/controllers/settings/profiles_controller.rb b/app/controllers/settings/profiles_controller.rb index 0ad5e6c3d..ac6635aea 100644 --- a/app/controllers/settings/profiles_controller.rb +++ b/app/controllers/settings/profiles_controller.rb @@ -25,7 +25,7 @@ class Settings::ProfilesController < Settings::BaseController private def account_params - params.require(:account).permit(:display_name, :note, :avatar, :header, :replies, :locked, :hidden, :bot, :discoverable, fields_attributes: [:name, :value]) + params.require(:account).permit(:display_name, :note, :avatar, :header, :replies, :locked, :hidden, :unlisted, :bot, :discoverable, fields_attributes: [:name, :value]) end def set_account |