kopia lustrzana https://github.com/friendica/friendica
Improved check against profile
rodzic
b3e86f4e6b
commit
8767ea5f52
|
@ -654,13 +654,17 @@ function check_item_notification($itemid, $uid, $profile = "", $defaulttype = ""
|
||||||
if ($profile == "")
|
if ($profile == "")
|
||||||
$profile = $local_profile;
|
$profile = $local_profile;
|
||||||
|
|
||||||
|
$profile = normalise_link($profile);
|
||||||
|
|
||||||
|
$profile_ssl = str_replace("http://", "https://", normalise_link($profile));
|
||||||
|
|
||||||
// Only act if it is a "real" post
|
// Only act if it is a "real" post
|
||||||
// We need the additional check for the "local_profile" because of mixed situations on connector networks
|
// We need the additional check for the "local_profile" because of mixed situations on connector networks
|
||||||
$item = q("SELECT `id`, `mention`, `tag`,`parent`, `title`, `body`, `author-name`, `author-link`, `author-avatar`, `guid`,
|
$item = q("SELECT `id`, `mention`, `tag`,`parent`, `title`, `body`, `author-name`, `author-link`, `author-avatar`, `guid`,
|
||||||
`parent-uri`, `uri`, `contact-id`
|
`parent-uri`, `uri`, `contact-id`
|
||||||
FROM `item` WHERE `id` = %d AND `verb` IN ('%s', '') AND `type` != 'activity' AND
|
FROM `item` WHERE `id` = %d AND `verb` IN ('%s', '') AND `type` != 'activity' AND
|
||||||
`author-link` != '%s' AND `author-link` != '%s' LIMIT 1",
|
NOT (`author-link` IN ('%s', '%s', '%s')) LIMIT 1",
|
||||||
intval($itemid), dbesc(ACTIVITY_POST), dbesc($profile), dbesc($local_profile));
|
intval($itemid), dbesc(ACTIVITY_POST), dbesc($profile), dbesc($profile_ssl), dbesc($local_profile));
|
||||||
if (!$item)
|
if (!$item)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
@ -708,7 +712,8 @@ function check_item_notification($itemid, $uid, $profile = "", $defaulttype = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
// Is the user mentioned in this post?
|
// Is the user mentioned in this post?
|
||||||
if ($item[0]["mention"] OR strpos($item[0]["tag"], "=".$profile."]") OR ($defaulttype == NOTIFY_TAGSELF)) {
|
if ($item[0]["mention"] OR strpos($item[0]["tag"], "=".$profile."]") OR strpos($item[0]["tag"], "=".$profile_ssl."]") OR
|
||||||
|
strpos($item[0]["tag"], "=".$local_profile."]") OR ($defaulttype == NOTIFY_TAGSELF)) {
|
||||||
$params["type"] = NOTIFY_TAGSELF;
|
$params["type"] = NOTIFY_TAGSELF;
|
||||||
$params["verb"] = ACTIVITY_TAG;
|
$params["verb"] = ACTIVITY_TAG;
|
||||||
}
|
}
|
||||||
|
@ -716,9 +721,10 @@ function check_item_notification($itemid, $uid, $profile = "", $defaulttype = ""
|
||||||
// Is it a post that the user had started or where he interacted?
|
// Is it a post that the user had started or where he interacted?
|
||||||
$parent = q("SELECT `thread`.`iid` FROM `thread` INNER JOIN `item` ON `item`.`parent` = `thread`.`iid`
|
$parent = q("SELECT `thread`.`iid` FROM `thread` INNER JOIN `item` ON `item`.`parent` = `thread`.`iid`
|
||||||
WHERE `thread`.`iid` = %d AND `thread`.`uid` = %d AND NOT `thread`.`ignored` AND
|
WHERE `thread`.`iid` = %d AND `thread`.`uid` = %d AND NOT `thread`.`ignored` AND
|
||||||
(`thread`.`mention` OR `item`.`author-link` = '%s')
|
(`thread`.`mention` OR `item`.`author-link` IN ('%s', '%s', '%s'))
|
||||||
LIMIT 1",
|
LIMIT 1",
|
||||||
intval($item[0]["parent"]), intval($uid), dbesc($profile));
|
intval($item[0]["parent"]), intval($uid),
|
||||||
|
dbesc($profile), dbesc($profile_ssl), dbesc($local_profile));
|
||||||
if ($parent AND !isset($params["type"])) {
|
if ($parent AND !isset($params["type"])) {
|
||||||
$params["type"] = NOTIFY_COMMENT;
|
$params["type"] = NOTIFY_COMMENT;
|
||||||
$params["verb"] = ACTIVITY_POST;
|
$params["verb"] = ACTIVITY_POST;
|
||||||
|
|
Ładowanie…
Reference in New Issue