]> git.mxchange.org Git - friendica.git/commitdiff
First steps to support public likes
authorMichael <heluecht@pirati.ca>
Sun, 24 Dec 2017 11:36:30 +0000 (11:36 +0000)
committerMichael <heluecht@pirati.ca>
Sun, 24 Dec 2017 11:36:30 +0000 (11:36 +0000)
include/like.php

index 6b8c138b952301d462626151de70bf89b642f918..05bb758c2a08b8e0c136edf469f2d1c64a8901da 100644 (file)
@@ -80,22 +80,26 @@ function do_like($item_id, $verb) {
 
        $item = $items[0];
 
-       if (!can_write_wall($a, $item['uid'])) {
+       if (!can_write_wall($a, $item['uid']) && ($item['uid'] != 0)) {
                logger('like: unable to write on wall ' . $item['uid']);
                return false;
        }
 
        // Retrieves the local post owner
-       $owners = q("SELECT `contact`.* FROM `contact`
-               WHERE `contact`.`self`
-               AND `contact`.`uid` = %d",
-               intval($item['uid'])
-       );
-       if (DBM::is_result($owners)) {
-               $owner_self_contact = $owners[0];
+       if ($item['uid'] != 0) {
+               $owners = q("SELECT `contact`.* FROM `contact`
+                       WHERE `contact`.`self`
+                       AND `contact`.`uid` = %d",
+                       intval($item['uid'])
+               );
+               if (DBM::is_result($owners)) {
+                       $owner_self_contact = $owners[0];
+               } else {
+                       logger('like: unknown owner ' . $item['uid']);
+                       return false;
+               }
        } else {
-               logger('like: unknown owner ' . $item['uid']);
-               return false;
+               $owner_self_contact = ['uid' => 0, 'nick' => 'feed-item'];
        }
 
        // Retrieve the current logged in user's public contact