$item['body'] = item_redir_and_replace_images($extracted['body'], $extracted['images'], $item['contact-id']);
}
- /// @Separted ???
+ /// @TODO Separted ???
$xmlhead = "<" . "?xml version='1.0' encoding='UTF-8' ?" . ">";
if (activity_match($item['verb'], ACTIVITY_LIKE)
|| activity_match($item['verb'], ACTIVITY_DISLIKE)
if (activity_match($item['verb'], ACTIVITY_LIKE)) {
$bodyverb = L10n::t('%1$s likes %2$s\'s %3$s');
- }
- elseif (activity_match($item['verb'], ACTIVITY_DISLIKE)) {
+ } elseif (activity_match($item['verb'], ACTIVITY_DISLIKE)) {
$bodyverb = L10n::t('%1$s doesn\'t like %2$s\'s %3$s');
- }
- elseif (activity_match($item['verb'], ACTIVITY_ATTEND)) {
+ } elseif (activity_match($item['verb'], ACTIVITY_ATTEND)) {
$bodyverb = L10n::t('%1$s attends %2$s\'s %3$s');
- }
- elseif (activity_match($item['verb'], ACTIVITY_ATTENDNO)) {
+ } elseif (activity_match($item['verb'], ACTIVITY_ATTENDNO)) {
$bodyverb = L10n::t('%1$s doesn\'t attend %2$s\'s %3$s');
- }
- elseif (activity_match($item['verb'], ACTIVITY_ATTENDMAYBE)) {
+ } elseif (activity_match($item['verb'], ACTIVITY_ATTENDMAYBE)) {
$bodyverb = L10n::t('%1$s attends maybe %2$s\'s %3$s');
}
- $item['body'] = sprintf($bodyverb, $author, $objauthor, $plink);
+ $item['body'] = sprintf($bodyverb, $author, $objauthor, $plink);
}
+
if (activity_match($item['verb'], ACTIVITY_FRIEND)) {
if ($item['object-type']=="" || $item['object-type']!== ACTIVITY_OBJ_PERSON) return;
}
}
- $A = '[url=' . Profile::zrl($Alink) . ']' . $Aname . '[/url]';
- $B = '[url=' . Profile::zrl($Blink) . ']' . $Bname . '[/url]';
+ $A = '[url=' . Contact::magicLink($Alink) . ']' . $Aname . '[/url]';
+ $B = '[url=' . Contact::magicLink($Blink) . ']' . $Bname . '[/url]';
if ($Bphoto != "") {
- $Bphoto = '[url=' . Profile::zrl($Blink) . '][img]' . $Bphoto . '[/img][/url]';
+ $Bphoto = '[url=' . Contact::magicLink($Blink) . '][img]' . $Bphoto . '[/img][/url]';
}
$item['body'] = L10n::t('%1$s is now friends with %2$s', $A, $B)."\n\n\n".$Bphoto;
}
}
- $A = '[url=' . Profile::zrl($Alink) . ']' . $Aname . '[/url]';
- $B = '[url=' . Profile::zrl($Blink) . ']' . $Bname . '[/url]';
+ $A = '[url=' . Contact::magicLink($Alink) . ']' . $Aname . '[/url]';
+ $B = '[url=' . Contact::magicLink($Blink) . ']' . $Bname . '[/url]';
if ($Bphoto != "") {
- $Bphoto = '[url=' . Profile::zrl($Blink) . '][img=80x80]' . $Bphoto . '[/img][/url]';
+ $Bphoto = '[url=' . Contact::magicLink($Blink) . '][img=80x80]' . $Bphoto . '[/img][/url]';
}
/*
$obj = $r[0];
- $author = '[url=' . Profile::zrl($item['author-link']) . ']' . $item['author-name'] . '[/url]';
- $objauthor = '[url=' . Profile::zrl($obj['author-link']) . ']' . $obj['author-name'] . '[/url]';
+ $author = '[url=' . Contact::magicLinkById($item['author-id']) . ']' . $item['author-name'] . '[/url]';
+ $objauthor = '[url=' . Contact::magicLinkById($obj['author-id']) . ']' . $obj['author-name'] . '[/url]';
switch ($obj['verb']) {
case ACTIVITY_POST:
$item['body'] = L10n::t('%1$s tagged %2$s\'s %3$s with %4$s', $author, $objauthor, $plink, $tag );
}
- if (activity_match($item['verb'], ACTIVITY_FAVORITE)) {
+ if (activity_match($item['verb'], ACTIVITY_FAVORITE)) {
if ($item['object-type'] == "") {
return;
}
$target = $r[0];
$Bname = $target['author-name'];
$Blink = $target['author-link'];
- $A = '[url=' . Profile::zrl($Alink) . ']' . $Aname . '[/url]';
- $B = '[url=' . Profile::zrl($Blink) . ']' . $Bname . '[/url]';
+ $A = '[url=' . Contact::magicLink($Alink) . ']' . $Aname . '[/url]';
+ $B = '[url=' . Contact::magicLink($Blink) . ']' . $Bname . '[/url]';
$P = '[url=' . $target['plink'] . ']' . L10n::t('post/item') . '[/url]';
$item['body'] = L10n::t('%1$s marked %2$s\'s %3$s as favorite', $A, $B, $P)."\n";
}
if (preg_match_all('/@\[url=(.*?)\]/is', $item['body'], $matches, PREG_SET_ORDER)) {
foreach ($matches as $mtch) {
if (!strpos($mtch[1], 'zrl=')) {
- $item['body'] = str_replace($mtch[0], '@[url=' . Profile::zrl($mtch[1]) . ']', $item['body']);
+ $item['body'] = str_replace($mtch[0], '@[url=' . Contact::magicLink($mtch[1]) . ']', $item['body']);
}
}
}
}
// add sparkle links to appropriate permalinks
-
- $x = stristr($item['plink'],'/display/');
- if ($x) {
- $sparkle = false;
- $y = best_link_url($item, $sparkle);
-
- if (strstr($y, '/redir/')) {
- $item['plink'] = $y . '?f=&url=' . $item['plink'];
- }
- }
+ $item['plink'] = Contact::magicLinkById($item['author-id'], $item['plink']);
}
/**
}
}
- if (activity_match($item['verb'], ACTIVITY_FOLLOW) && $item['object-type'] === ACTIVITY_OBJ_NOTE) {
- if (!($item['self'] && ($item['uid'] == local_user()))) {
- return false;
- }
+ // @TODO below if() block can be rewritten to a single line: $isVisible = allConditionsHere;
+ if (activity_match($item['verb'], ACTIVITY_FOLLOW) && $item['object-type'] === ACTIVITY_OBJ_NOTE && empty($item['self']) && $item['uid'] == local_user()) {
+ return false;
}
return true;
`item`.`inform`,
`item`.`pubmail`,
`item`.`visible`,
-`item`.`spam`,
`item`.`bookmark`,
`item`.`unseen`,
`item`.`deleted`,
`item`.`mention`,
`item`.`global`,
`item`.`shadow`,
+ `item`.`author-link`, `item`.`author-name`, `item`.`author-avatar`,
+ `item`.`owner-link`, `item`.`owner-name`, `item`.`owner-avatar`,
*/
- return "`item`.`author-id`, `item`.`author-link`, `item`.`author-name`, `item`.`author-avatar`,
- `item`.`owner-id`, `item`.`owner-link`, `item`.`owner-name`, `item`.`owner-avatar`,
+ return "`item`.`author-id`,
+ `item`.`owner-id`,
`item`.`contact-id`, `item`.`uid`, `item`.`id`, `item`.`parent`,
`item`.`uri`, `item`.`thr-parent`, `item`.`parent-uri`, `item`.`content-warning`,
`item`.`commented`, `item`.`created`, `item`.`edited`, `item`.`received`,
`item`.`allow_cid`, `item`.`allow_gid`, `item`.`deny_cid`, `item`.`deny_gid`,
`item`.`id` AS `item_id`, `item`.`network` AS `item_network`,
- `author`.`thumb` AS `author-thumb`, `owner`.`thumb` AS `owner-thumb`,
+ `author`.`url` AS `author-link`, `author`.`name` AS `author-name`, `author`.`thumb` AS `author-avatar`,
+ `owner`.`url` AS `owner-link`, `owner`.`name` AS `owner-name`, `owner`.`thumb` AS `owner-avatar`,
+ `contact`.`url` AS `contact-link`, `contact`.`name` AS `contact-name`, `contact`.`thumb` AS `contact-avatar`,
`contact`.`network`, `contact`.`url`, `contact`.`name`, `contact`.`writable`,
`contact`.`self`, `contact`.`id` AS `cid`, `contact`.`alias`,
. ((x($_GET, 'bmark')) ? '&bmark=' . $_GET['bmark'] : '')
. ((x($_GET, 'liked')) ? '&liked=' . $_GET['liked'] : '')
. ((x($_GET, 'conv')) ? '&conv=' . $_GET['conv'] : '')
- . ((x($_GET, 'spam')) ? '&spam=' . $_GET['spam'] : '')
. ((x($_GET, 'nets')) ? '&nets=' . $_GET['nets'] : '')
. ((x($_GET, 'cmin')) ? '&cmin=' . $_GET['cmin'] : '')
. ((x($_GET, 'cmax')) ? '&cmax=' . $_GET['cmax'] : '')
continue;
}
+ if ($item['network'] == NETWORK_FEED) {
+ $item['author-avatar'] = $item['contact-avatar'];
+ $item['author-name'] = $item['contact-name'];
+ $item['owner-avatar'] = $item['contact-avatar'];
+ $item['owner-name'] = $item['contact-name'];
+ }
+
$profile_name = (strlen($item['author-name']) ? $item['author-name'] : $item['name']);
if ($item['author-link'] && !$item['author-name']) {
$profile_name = $item['author-link'];
$tags = \Friendica\Model\Term::populateTagsFromItem($item);
- $sp = false;
- $profile_link = best_link_url($item, $sp);
- if ($profile_link === 'mailbox') {
- $profile_link = '';
- }
+ $profile_link = Contact::magicLinkbyId($item['author-id']);
- if ($sp) {
+ if (strpos($profile_link, 'redir/') === 0) {
$sparkle = ' sparkle';
- } else {
- $profile_link = Profile::zrl($profile_link);
- }
-
- if (!x($item, 'author-thumb') || ($item['author-thumb'] == "")) {
- $author_contact = Contact::getDetailsByURL($item['author-link'], $profile_owner);
- if ($author_contact["thumb"]) {
- $item['author-thumb'] = $author_contact["thumb"];
- } else {
- $item['author-thumb'] = $item['author-avatar'];
- }
- }
-
- if (!isset($item['owner-thumb']) || ($item['owner-thumb'] == "")) {
- $owner_contact = Contact::getDetailsByURL($item['owner-link'], $profile_owner);
- if ($owner_contact["thumb"]) {
- $item['owner-thumb'] = $owner_contact["thumb"];
- } else {
- $item['owner-thumb'] = $item['owner-avatar'];
- }
}
$locate = ['location' => $item['location'], 'coord' => $item['coord'], 'html' => ''];
'name' => $profile_name_e,
'sparkle' => $sparkle,
'lock' => $lock,
- 'thumb' => System::removedBaseUrl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)),
+ 'thumb' => System::removedBaseUrl(proxy_url($item['author-avatar'], false, PROXY_SIZE_THUMB)),
'title' => $title_e,
'body' => $body_e,
'tags' => $tags_e,
'indent' => '',
'owner_name' => $owner_name_e,
'owner_url' => $owner_url,
- 'owner_photo' => System::removedBaseUrl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)),
+ 'owner_photo' => System::removedBaseUrl(proxy_url($item['owner-avatar'], false, PROXY_SIZE_THUMB)),
'plink' => get_plink($item),
'edpost' => false,
'isstarred' => $isstarred,
return $items;
}
-function best_link_url($item, &$sparkle, $url = '') {
-
- $best_url = '';
- $sparkle = false;
-
- $clean_url = normalise_link($item['author-link']);
-
- if (local_user()) {
- $condition = [
- 'network' => NETWORK_DFRN,
- 'uid' => local_user(),
- 'nurl' => normalise_link($clean_url),
- 'pending' => false
- ];
- $contact = dba::selectFirst('contact', ['id'], $condition);
- if (DBM::is_result($contact)) {
- $best_url = 'redir/' . $contact['id'];
- $sparkle = true;
- if ($url != '') {
- $hostname = get_app()->get_hostname();
- if (!strstr($url, $hostname)) {
- $best_url .= "?url=".$url;
- } else {
- $best_url = $url;
- }
- }
- }
- }
- if (!$best_url) {
- if ($url != '') {
- $best_url = $url;
- } elseif (strlen($item['author-link'])) {
- $best_url = $item['author-link'];
- } else {
- $best_url = $item['url'];
- }
- }
-
- return $best_url;
-}
-
-
function item_photo_menu($item) {
$sub_link = '';
$poke_link = '';
$sub_link = 'javascript:dosubthread(' . $item['id'] . '); return false;';
}
- $sparkle = false;
- $profile_link = best_link_url($item, $sparkle);
- if ($profile_link === 'mailbox') {
- $profile_link = '';
- }
+ $profile_link = Contact::magicLinkById($item['author-id']);
+ $sparkle = (strpos($profile_link, 'redir/') === 0);
$cid = 0;
$network = '';
$photos_link = $profile_link . '?url=photos';
$profile_link = $profile_link . '?url=profile';
} else {
- $profile_link = Profile::zrl($profile_link);
+ $profile_link = Contact::magicLink($profile_link);
}
if ($cid && !$item['self']) {
}
if (activity_match($item['verb'], $verb) && ($item['id'] != $item['parent'])) {
- $url = $item['author-link'];
- if (local_user() && (local_user() == $item['uid']) && ($item['network'] === NETWORK_DFRN) && !$item['self'] && link_compare($item['author-link'], $item['url'])) {
- $url = 'redir/' . $item['contact-id'];
+ $url = Contact::MagicLinkbyId($item['author-id']);
+ if (strpos($url, 'redir/') === 0) {
$sparkle = ' class="sparkle" ';
- } else {
- $url = Profile::zrl($url);
}
$url = '<a href="'. $url . '"'. $sparkle .'>' . htmlentities($item['author-name']) . '</a>';
- if (!$item['thr-parent']) {
+ if (!x($item, 'thr-parent')) {
$item['thr-parent'] = $item['parent-uri'];
}
return strcmp($b['commented'], $a['commented']);
}
-/// @TODO Add type-hint
-function render_location_dummy($item) {
- if ($item['location'] != "") {
+function render_location_dummy(array $item) {
+ if (x($item, 'location') && !empty($item['location'])) {
return $item['location'];
}
- if ($item['coord'] != "") {
+ if (x($item, 'coord') && !empty($item['coord'])) {
return $item['coord'];
}
}
-/// @TODO Add type-hint
-function get_responses($conv_responses, $response_verbs, $ob, $item) {
+function get_responses(array $conv_responses, array $response_verbs, $ob, array $item) {
$ret = [];
foreach ($response_verbs as $v) {
$ret[$v] = [];