X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FObject%2FPost.php;h=22016834375b19da3377aef636db75bb01e758a9;hb=b0d8a2fcd087c2a7c34460ced3c7334eccaa1c0a;hp=05b21ebd4c7e2e23b571d3414b898b740ca91dd0;hpb=276abfaba68a9d6f750552479eeb873ac0b1c806;p=friendica.git diff --git a/src/Object/Post.php b/src/Object/Post.php index 05b21ebd4c..2201683437 100644 --- a/src/Object/Post.php +++ b/src/Object/Post.php @@ -10,13 +10,18 @@ use Friendica\Content\Feature; use Friendica\Core\Addon; use Friendica\Core\Config; use Friendica\Core\L10n; +use Friendica\Core\Logger; use Friendica\Core\PConfig; +use Friendica\Core\Protocol; +use Friendica\Core\Renderer; use Friendica\Database\DBA; use Friendica\Model\Contact; use Friendica\Model\Item; use Friendica\Model\Term; +use Friendica\Util\Crypto; use Friendica\Util\DateTimeFormat; use Friendica\Util\Proxy as ProxyUtils; +use Friendica\Util\Strings; use Friendica\Util\Temporal; require_once 'include/dba.php'; @@ -84,14 +89,14 @@ class Post extends BaseObject if (!empty($data['children'])) { foreach ($data['children'] as $item) { // Only add will be displayed - if ($item['network'] === NETWORK_MAIL && local_user() != $item['uid']) { + if ($item['network'] === Protocol::MAIL && local_user() != $item['uid']) { continue; } elseif (!visible_activity($item)) { continue; } // You can always comment on Diaspora and OStatus items - if (in_array($item['network'], [NETWORK_OSTATUS, NETWORK_DIASPORA]) && (local_user() == $item['uid'])) { + if (in_array($item['network'], [Protocol::OSTATUS, Protocol::DIASPORA]) && (local_user() == $item['uid'])) { $item['writable'] = true; } @@ -152,7 +157,7 @@ class Post extends BaseObject $shareable = in_array($conv->getProfileOwner(), [0, local_user()]) && $item['private'] != 1; - if (local_user() && link_compare($a->contact['url'], $item['author-link'])) { + if (local_user() && Strings::compareLink($a->contact['url'], $item['author-link'])) { if ($item["event-id"] != 0) { $edpost = ["events/event/" . $item['event-id'], L10n::t("Edit")]; } else { @@ -208,7 +213,13 @@ class Post extends BaseObject $author = ['uid' => 0, 'id' => $item['author-id'], 'network' => $item['author-network'], 'url' => $item['author-link']]; - $profile_link = Contact::magicLinkbyContact($author); + + if (local_user() || remote_user()) { + $profile_link = Contact::magicLinkbyContact($author); + } else { + $profile_link = $item['author-link']; + } + if (strpos($profile_link, 'redir/') === 0) { $sparkle = ' sparkle'; } @@ -305,7 +316,7 @@ class Post extends BaseObject localize_item($item); - $body = prepare_body($item, true); + $body = Item::prepareBody($item, true); list($categories, $folders) = get_cats_and_terms($item); @@ -323,17 +334,17 @@ class Post extends BaseObject $owner_name_e = $this->getOwnerName(); // Disable features that aren't available in several networks - if (!in_array($item["network"], [NETWORK_DFRN, NETWORK_DIASPORA]) && isset($buttons["dislike"])) { + if (!in_array($item["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA]) && isset($buttons["dislike"])) { unset($buttons["dislike"]); $isevent = false; $tagger = ''; } - if (($item["network"] == NETWORK_FEED) && isset($buttons["like"])) { + if (($item["network"] == Protocol::FEED) && isset($buttons["like"])) { unset($buttons["like"]); } - if (($item["network"] == NETWORK_MAIL) && isset($buttons["like"])) { + if (($item["network"] == Protocol::MAIL) && isset($buttons["like"])) { unset($buttons["like"]); } @@ -367,7 +378,7 @@ class Post extends BaseObject 'profile_url' => $profile_link, 'item_photo_menu' => item_photo_menu($item), 'name' => $name_e, - 'thumb' => $a->remove_baseurl(ProxyUtils::proxifyUrl($item['author-avatar'], false, ProxyUtils::SIZE_THUMB)), + 'thumb' => $a->removeBaseURL(ProxyUtils::proxifyUrl($item['author-avatar'], false, ProxyUtils::SIZE_THUMB)), 'osparkle' => $osparkle, 'sparkle' => $sparkle, 'title' => $title_e, @@ -380,9 +391,9 @@ class Post extends BaseObject 'indent' => $indent, 'shiny' => $shiny, 'owner_url' => $this->getOwnerUrl(), - 'owner_photo' => $a->remove_baseurl(ProxyUtils::proxifyUrl($item['owner-avatar'], false, ProxyUtils::SIZE_THUMB)), + 'owner_photo' => $a->removeBaseURL(ProxyUtils::proxifyUrl($item['owner-avatar'], false, ProxyUtils::SIZE_THUMB)), 'owner_name' => htmlentities($owner_name_e), - 'plink' => get_plink($item), + 'plink' => Item::getPlink($item), 'edpost' => Feature::isEnabled($conv->getProfileOwner(), 'edit_posts') ? $edpost : '', 'isstarred' => $isstarred, 'star' => Feature::isEnabled($conv->getProfileOwner(), 'star_posts') ? $star : '', @@ -401,10 +412,11 @@ class Post extends BaseObject 'thread_level' => $thread_level, 'edited' => $edited, 'network' => $item["network"], - 'network_name' => ContactSelector::networkToName($item['network'], $profile_link), + 'network_name' => ContactSelector::networkToName($item['network'], $item['author-link']), 'received' => $item['received'], 'commented' => $item['commented'], 'created_date' => $item['created'], + 'return' => ($a->cmd) ? bin2hex($a->cmd) : '', ]; $arr = ['item' => $item, 'output' => $tmp_item]; @@ -480,16 +492,16 @@ class Post extends BaseObject { $item_id = $item->getId(); if (!$item_id) { - logger('[ERROR] Post::addChild : Item has no ID!!', LOGGER_DEBUG); + Logger::log('[ERROR] Post::addChild : Item has no ID!!', Logger::DEBUG); return false; } elseif ($this->getChild($item->getId())) { - logger('[WARN] Post::addChild : Item already exists (' . $item->getId() . ').', LOGGER_DEBUG); + Logger::log('[WARN] Post::addChild : Item already exists (' . $item->getId() . ').', Logger::DEBUG); return false; } /* * Only add what will be displayed */ - if ($item->getDataValue('network') === NETWORK_MAIL && local_user() != $item->getDataValue('uid')) { + if ($item->getDataValue('network') === Protocol::MAIL && local_user() != $item->getDataValue('uid')) { return false; } elseif (activity_match($item->getDataValue('verb'), ACTIVITY_LIKE) || activity_match($item->getDataValue('verb'), ACTIVITY_DISLIKE)) { return false; @@ -577,7 +589,7 @@ class Post extends BaseObject return true; } } - logger('[WARN] Item::removeChild : Item is not a child (' . $id . ').', LOGGER_DEBUG); + Logger::log('[WARN] Item::removeChild : Item is not a child (' . $id . ').', Logger::DEBUG); return false; } @@ -643,7 +655,7 @@ class Post extends BaseObject public function getDataValue($name) { if (!isset($this->data[$name])) { - // logger('[ERROR] Item::getDataValue : Item has no value name "'. $name .'".', LOGGER_DEBUG); + // Logger::log('[ERROR] Item::getDataValue : Item has no value name "'. $name .'".', Logger::DEBUG); return false; } @@ -660,7 +672,7 @@ class Post extends BaseObject private function setTemplate($name) { if (!x($this->available_templates, $name)) { - logger('[ERROR] Item::setTemplate : Template not available ("' . $name . '").', LOGGER_DEBUG); + Logger::log('[ERROR] Item::setTemplate : Template not available ("' . $name . '").', Logger::DEBUG); return false; } @@ -764,7 +776,7 @@ class Post extends BaseObject * Hmmm, code depending on the presence of a particular addon? * This should be better if done by a hook */ - if (in_array('qcomment', $a->addons)) { + if (Addon::isEnabled('qcomment')) { $qc = ((local_user()) ? PConfig::get(local_user(), 'qcomment', 'words') : null); $qcomment = (($qc) ? explode("\n", $qc) : null); } @@ -777,8 +789,8 @@ class Post extends BaseObject $uid = $parent_uid; } - $template = get_markup_template($this->getCommentBoxTemplate()); - $comment_box = replace_macros($template, [ + $template = Renderer::getMarkupTemplate($this->getCommentBoxTemplate()); + $comment_box = Renderer::replaceMacros($template, [ '$return_path' => $a->query_string, '$threaded' => $this->isThreaded(), '$jsreload' => '', @@ -787,9 +799,9 @@ class Post extends BaseObject '$parent' => $this->getId(), '$qcomment' => $qcomment, '$profile_uid' => $uid, - '$mylink' => $a->remove_baseurl($a->contact['url']), + '$mylink' => $a->removeBaseURL($a->contact['url']), '$mytitle' => L10n::t('This is you'), - '$myphoto' => $a->remove_baseurl($a->contact['thumb']), + '$myphoto' => $a->removeBaseURL($a->contact['thumb']), '$comment' => L10n::t('Comment'), '$submit' => L10n::t('Submit'), '$edbold' => L10n::t('Bold'), @@ -799,12 +811,13 @@ class Post extends BaseObject '$edcode' => L10n::t('Code'), '$edimg' => L10n::t('Image'), '$edurl' => L10n::t('Link'), - '$edvideo' => L10n::t('Video'), + '$edattach' => L10n::t('Link or Media'), + '$prompttext' => L10n::t('Please enter a image/video/audio/webpage URL:'), '$preview' => ((Feature::isEnabled($conv->getProfileOwner(), 'preview')) ? L10n::t('Preview') : ''), '$indent' => $indent, '$sourceapp' => L10n::t($a->sourcename), '$ww' => $conv->getMode() === 'network' ? $ww : '', - '$rand_num' => random_digits(12) + '$rand_num' => Crypto::randomDigits(12) ]); } @@ -842,8 +855,8 @@ class Post extends BaseObject $this->owner_name = $a->page_contact['name']; $this->wall_to_wall = true; } elseif ($this->getDataValue('owner-link')) { - $owner_linkmatch = (($this->getDataValue('owner-link')) && link_compare($this->getDataValue('owner-link'), $this->getDataValue('author-link'))); - $alias_linkmatch = (($this->getDataValue('alias')) && link_compare($this->getDataValue('alias'), $this->getDataValue('author-link'))); + $owner_linkmatch = (($this->getDataValue('owner-link')) && Strings::compareLink($this->getDataValue('owner-link'), $this->getDataValue('author-link'))); + $alias_linkmatch = (($this->getDataValue('alias')) && Strings::compareLink($this->getDataValue('alias'), $this->getDataValue('author-link'))); $owner_namematch = (($this->getDataValue('owner-name')) && $this->getDataValue('owner-name') == $this->getDataValue('author-name')); if (!$owner_linkmatch && !$alias_linkmatch && !$owner_namematch) {