forked from GNUsocial/gnu-social
Make the ForceGroup plugin work consistently for notices from remote users.
This commit is contained in:
parent
8e5d58fe2a
commit
9844ec76e9
@ -52,6 +52,24 @@ class ForceGroupPlugin extends Plugin
|
||||
function onStartNoticeDistribute($notice)
|
||||
{
|
||||
$profile = $notice->getProfile();
|
||||
|
||||
$isRemote = !(User::staticGet('id', $profile->id));
|
||||
if ($isRemote) {
|
||||
/*
|
||||
* Notices from remote users on other sites
|
||||
* will normally not end up here unless they're
|
||||
* specifically directed here, e.g.: via explicit
|
||||
* post to a remote (to them) group. But remote
|
||||
* notices can also be `pulled in' as a result of
|
||||
* local users subscribing to the remote user;
|
||||
* from the remote user's perspective, this results
|
||||
* in group-forcing appearing effectively random.
|
||||
* So let's be consistent, and just never force
|
||||
* incoming remote notices into a ForceGroup:
|
||||
*/
|
||||
return true;
|
||||
}
|
||||
|
||||
foreach ($this->post as $nickname) {
|
||||
$group = User_group::getForNickname($nickname);
|
||||
if ($group && $profile->isMember($group)) {
|
||||
|
Loading…
Reference in New Issue
Block a user