|
|
@ -161,9 +161,9 @@ class Status < ApplicationRecord |
|
|
|
return where.not(visibility: [:private, :direct]) if account.nil? |
|
|
|
return where.not(visibility: [:private, :direct]) if account.nil? |
|
|
|
|
|
|
|
|
|
|
|
if target_account.blocking?(account) # get rid of blocked peeps |
|
|
|
if target_account.blocking?(account) # get rid of blocked peeps |
|
|
|
where('1 = 0') |
|
|
|
none |
|
|
|
elsif account.id == target_account.id # author can see own stuff |
|
|
|
elsif account.id == target_account.id # author can see own stuff |
|
|
|
where('1 = 1') |
|
|
|
all |
|
|
|
elsif account.following?(target_account) # followers can see followers-only stuff, but also things they are mentioned in |
|
|
|
elsif account.following?(target_account) # followers can see followers-only stuff, but also things they are mentioned in |
|
|
|
joins('LEFT OUTER JOIN mentions ON statuses.id = mentions.status_id AND mentions.account_id = ' + account.id.to_s) |
|
|
|
joins('LEFT OUTER JOIN mentions ON statuses.id = mentions.status_id AND mentions.account_id = ' + account.id.to_s) |
|
|
|
.where('statuses.visibility != ? OR mentions.id IS NOT NULL', Status.visibilities[:direct]) |
|
|
|
.where('statuses.visibility != ? OR mentions.id IS NOT NULL', Status.visibilities[:direct]) |
|
|
|