X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fshare.php;h=74de1967b44782542d7c081a654d59c90e159593;hb=5eb8929f0c579630ce35c3e3c0d47e692c084c8a;hp=ed9b5f9d17c49ac48b06d870f599b0fce4d03cba;hpb=5debcbb5a6c7d82b5429e411e1fc3ecfce191f13;p=friendica.git diff --git a/mod/share.php b/mod/share.php index ed9b5f9d17..74de1967b4 100644 --- a/mod/share.php +++ b/mod/share.php @@ -1,32 +1,35 @@ argc > 1) ? intval($a->argv[1]) : 0); + if (!$post_id || !local_user()) { killme(); } - $r = q("SELECT item.*, contact.network FROM `item` - INNER JOIN `contact` ON `item`.`contact-id` = `contact`.`id` - WHERE `item`.`id` = %d LIMIT 1", - intval($post_id) - ); - if (!DBM::is_result($r) || ($r[0]['private'] == 1)) { + $fields = ['private', 'body', 'author-name', 'author-link', 'author-avatar', + 'guid', 'created', 'plink', 'title']; + $item = Item::selectFirst($fields, ['id' => $post_id]); + + if (!DBA::isResult($item) || $item['private'] == 1) { killme(); } - if (strpos($r[0]['body'], "[/share]") !== false) { - $pos = strpos($r[0]['body'], "[share"); - $o = substr($r[0]['body'], $pos); + + if (strpos($item['body'], "[/share]") !== false) { + $pos = strpos($item['body'], "[share"); + $o = substr($item['body'], $pos); } else { - $o = share_header($r[0]['author-name'], $r[0]['author-link'], $r[0]['author-avatar'], $r[0]['guid'], $r[0]['created'], $r[0]['plink']); + $o = share_header($item['author-name'], $item['author-link'], $item['author-avatar'], $item['guid'], $item['created'], $item['plink']); - if ($r[0]['title']) { - $o .= '[b]'.$r[0]['title'].'[/b]'."\n"; + if ($item['title']) { + $o .= '[b]'.$item['title'].'[/b]'."\n"; } - $o .= $r[0]['body']; + + $o .= $item['body']; $o .= "[/share]"; } @@ -34,6 +37,7 @@ function share_init(App $a) { killme(); } +/// @TODO Rewrite to handle over whole record array function share_header($author, $profile, $avatar, $guid, $posted, $link) { $header = "[share author='" . str_replace(["'", "[", "]"], ["'", "[", "]"], $author). "' profile='" . str_replace(["'", "[", "]"], ["'", "[", "]"], $profile). @@ -42,9 +46,11 @@ function share_header($author, $profile, $avatar, $guid, $posted, $link) { if ($guid) { $header .= "' guid='" . str_replace(["'", "[", "]"], ["'", "[", "]"], $guid); } + if ($posted) { $header .= "' posted='" . str_replace(["'", "[", "]"], ["'", "[", "]"], $posted); } + $header .= "' link='" . str_replace(["'", "[", "]"], ["'", "[", "]"], $link)."']"; return $header;