Merge pull request #9932 from annando/no-implicit
No implicit mention for top level Diaspora comments
This commit is contained in:
commit
f1e1b68278
2 changed files with 5 additions and 4 deletions
|
@ -881,13 +881,13 @@ class Post
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
$item = PostModel::selectFirst(['author-addr', 'uri-id'], ['id' => $this->getId()]);
|
$item = PostModel::selectFirst(['author-addr', 'uri-id', 'network', 'gravity'], ['id' => $this->getId()]);
|
||||||
if (!DBA::isResult($item) || empty($item['author-addr'])) {
|
if (!DBA::isResult($item) || empty($item['author-addr'])) {
|
||||||
// Should not happen
|
// Should not happen
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($item['author-addr'] != $owner['addr']) {
|
if (($item['author-addr'] != $owner['addr']) && (($item['gravity'] != GRAVITY_PARENT) || !in_array($item['network'], [Protocol::DIASPORA]))) {
|
||||||
$text = '@' . $item['author-addr'] . ' ';
|
$text = '@' . $item['author-addr'] . ' ';
|
||||||
} else {
|
} else {
|
||||||
$text = '';
|
$text = '';
|
||||||
|
|
|
@ -3599,7 +3599,7 @@ class Diaspora
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
$toplevel_item = Post::selectFirst(['guid', 'author-id', 'author-link'], ['id' => $item['parent'], 'parent' => $item['parent']]);
|
$toplevel_item = Post::selectFirst(['guid', 'author-id', 'author-link', 'gravity'], ['id' => $item['parent'], 'parent' => $item['parent']]);
|
||||||
if (!DBA::isResult($toplevel_item)) {
|
if (!DBA::isResult($toplevel_item)) {
|
||||||
Logger::error('Missing parent conversation item', ['parent' => $item['parent']]);
|
Logger::error('Missing parent conversation item', ['parent' => $item['parent']]);
|
||||||
return false;
|
return false;
|
||||||
|
@ -3607,7 +3607,7 @@ class Diaspora
|
||||||
|
|
||||||
$thread_parent_item = $toplevel_item;
|
$thread_parent_item = $toplevel_item;
|
||||||
if ($item['thr-parent'] != $item['parent-uri']) {
|
if ($item['thr-parent'] != $item['parent-uri']) {
|
||||||
$thread_parent_item = Post::selectFirst(['guid', 'author-id', 'author-link'], ['uri' => $item['thr-parent'], 'uid' => $item['uid']]);
|
$thread_parent_item = Post::selectFirst(['guid', 'author-id', 'author-link', 'gravity'], ['uri' => $item['thr-parent'], 'uid' => $item['uid']]);
|
||||||
}
|
}
|
||||||
|
|
||||||
$body = $item["body"];
|
$body = $item["body"];
|
||||||
|
@ -3618,6 +3618,7 @@ class Diaspora
|
||||||
// - Implicit mentions are enabled
|
// - Implicit mentions are enabled
|
||||||
if (
|
if (
|
||||||
$item['author-id'] != $thread_parent_item['author-id']
|
$item['author-id'] != $thread_parent_item['author-id']
|
||||||
|
&& ($thread_parent_item['gravity'] != GRAVITY_PARENT)
|
||||||
&& (empty($item['uid']) || !Feature::isEnabled($item['uid'], 'explicit_mentions'))
|
&& (empty($item['uid']) || !Feature::isEnabled($item['uid'], 'explicit_mentions'))
|
||||||
&& !DI::config()->get('system', 'disable_implicit_mentions')
|
&& !DI::config()->get('system', 'disable_implicit_mentions')
|
||||||
) {
|
) {
|
||||||
|
|
Loading…
Reference in a new issue