X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fsalmon.php;h=5df1e1c9e541b9d332942fb629e65f42cfdeb8b1;hb=ed6ca1d3845070decc732ce5df266b49b448b940;hp=0264e820db2a03f224c512928170d2868cfce9b3;hpb=afb04142ce0ec4f291ed22be6e9f7781a7714628;p=friendica.git diff --git a/mod/salmon.php b/mod/salmon.php index 0264e820db..5df1e1c9e5 100644 --- a/mod/salmon.php +++ b/mod/salmon.php @@ -25,12 +25,12 @@ function salmon_post(&$a) { $xml = file_get_contents('php://input'); - logger('mod-salmon: new salmon ' . $xml); + logger('mod-salmon: new salmon ' . $xml, LOGGER_DATA); $nick = (($a->argc > 1) ? notags(trim($a->argv[1])) : ''); $mentions = (($a->argc > 2 && $a->argv[2] === 'mention') ? true : false); - $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' LIMIT 1", + $r = q("SELECT * FROM `user` WHERE `nickname` = '%s' AND `account_expired` = 0 AND `account_removed` = 0 LIMIT 1", dbesc($nick) ); if(! count($r)) @@ -170,14 +170,28 @@ function salmon_post(&$a) { * */ - $r = q("SELECT * FROM `contact` WHERE `network` = 'stat' AND ( `url` = '%s' OR `alias` = '%s') + $r = q("SELECT * FROM `contact` WHERE `network` = '%s' AND ( `url` = '%s' OR `alias` = '%s' ) AND `uid` = %d LIMIT 1", + dbesc(NETWORK_OSTATUS), dbesc($author_link), dbesc($author_link), intval($importer['uid']) ); if(! count($r)) { logger('mod-salmon: Author unknown to us.'); + if(get_pconfig($importer['uid'],'system','ostatus_autofriend')) { + require_once('include/follow.php'); + $result = new_contact($importer['uid'],$author_link); + if($result['success']) { + $r = q("SELECT * FROM `contact` WHERE `network` = '%s' AND ( `url` = '%s' OR `alias` = '%s' ) + AND `uid` = %d LIMIT 1", + dbesc(NETWORK_OSTATUS), + dbesc($author_link), + dbesc($author_link), + intval($importer['uid']) + ); + } + } } // is this a follower? Or have we ignored the person?