X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fconversation.php;h=bc227d97729fb0ac1a2251f2bab3ce48e310f3eb;hb=0c347d1466dcf8ddb2fe9cd44691e4397cb743cd;hp=5591a4d1c53aabfe279ae14658b8b070bce85da3;hpb=577e93e9fcf5e17eeabe575c06ae2de46441ecb1;p=friendica.git diff --git a/include/conversation.php b/include/conversation.php index 5591a4d1c5..bc227d9772 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -1,9 +1,11 @@ array('tid'))); + while ($tag = dba::fetch($taglist)) { if ($tag["url"] == "") { $tag["url"] = $searchpath . strtolower($tag["term"]); } + $tag["url"] = best_link_url($item, $sp, $tag["url"]); + if ($tag["type"] == TERM_HASHTAG) { $hashtags[] = "#" . $tag["term"] . ""; $prefix = "#"; @@ -698,9 +711,10 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { } $tags[] = $prefix."" . $tag["term"] . ""; } + dba::close($taglist); $sp = false; - $profile_link = best_link_url($item,$sp); + $profile_link = best_link_url($item, $sp); if ($profile_link === 'mailbox') { $profile_link = ''; } @@ -711,7 +725,7 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { $profile_link = zrl($profile_link); } - if (!x($item, 'author-thumb') OR ($item['author-thumb'] == "")) { + if (!x($item, 'author-thumb') || ($item['author-thumb'] == "")) { $author_contact = get_contact_details_by_url($item['author-link'], $profile_owner); if ($author_contact["thumb"]) { $item['author-thumb'] = $author_contact["thumb"]; @@ -720,7 +734,7 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { } } - if (!isset($item['owner-thumb']) OR ($item['owner-thumb'] == "")) { + if (!isset($item['owner-thumb']) || ($item['owner-thumb'] == "")) { $owner_contact = get_contact_details_by_url($item['owner-link'], $profile_owner); if ($owner_contact["thumb"]) { $item['owner-thumb'] = $owner_contact["thumb"]; @@ -786,6 +800,7 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { $tmp_item = array( 'template' => $tpl, 'id' => (($preview) ? 'P0' : $item['item_id']), + 'guid' => (($preview) ? 'Q0' : $item['guid']), 'network' => $item['item_network'], 'network_name' => network_to_name($item['item_network'], $profile_link), 'linktitle' => sprintf( t('View %s\'s profile @ %s'), $profile_name, ((strlen($item['author-link'])) ? $item['author-link'] : $item['url'])), @@ -794,7 +809,7 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { 'name' => $profile_name_e, 'sparkle' => $sparkle, 'lock' => $lock, - 'thumb' => App::remove_baseurl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)), + 'thumb' => System::removedBaseUrl(proxy_url($item['author-thumb'], false, PROXY_SIZE_THUMB)), 'title' => $item['title_e'], 'body' => $body_e, 'tags' => $tags_e, @@ -813,7 +828,7 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { 'indent' => '', 'owner_name' => $owner_name_e, 'owner_url' => $owner_url, - 'owner_photo' => App::remove_baseurl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)), + 'owner_photo' => System::removedBaseUrl(proxy_url($item['owner-thumb'], false, PROXY_SIZE_THUMB)), 'plink' => get_plink($item), 'edpost' => false, 'isstarred' => $isstarred, @@ -900,20 +915,20 @@ function conversation(App $a, $items, $mode, $update, $preview = false) { } $o = replace_macros($page_template, array( - '$baseurl' => App::get_baseurl($ssl_state), + '$baseurl' => System::baseUrl($ssl_state), '$return_path' => $a->query_string, '$live_update' => $live_update_div, '$remove' => t('remove'), '$mode' => $mode, '$user' => $a->user, '$threads' => $threads, - '$dropping' => ($page_dropping && feature_enabled(local_user(),'multi_delete') ? t('Delete Selected Items') : False), + '$dropping' => ($page_dropping && feature_enabled(local_user(), 'multi_delete') ? t('Delete Selected Items') : False), )); return $o; }} -function best_link_url($item, &$sparkle, $ssl_state = false) { +function best_link_url($item, &$sparkle, $url = '') { $best_url = ''; $sparkle = false; @@ -921,15 +936,26 @@ function best_link_url($item, &$sparkle, $ssl_state = false) { $clean_url = normalise_link($item['author-link']); if (local_user()) { - $r = q("SELECT `id` FROM `contact` WHERE `network` = '%s' AND `uid` = %d AND `nurl` = '%s' AND NOT `pending` LIMIT 1", - dbesc(NETWORK_DFRN), intval(local_user()), dbesc(normalise_link($clean_url))); + $r = dba::select('contact', array('id'), + array('network' => NETWORK_DFRN, 'uid' => local_user(), 'nurl' => normalise_link($clean_url), 'pending' => false), + array('limit' => 1)); if (dbm::is_result($r)) { - $best_url = 'redir/' . $r[0]['id']; + $best_url = 'redir/' . $r['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 (strlen($item['author-link'])) { + if ($url != '') { + $best_url = $url; + } elseif (strlen($item['author-link'])) { $best_url = $item['author-link']; } else { $best_url = $item['url']; @@ -940,14 +966,7 @@ function best_link_url($item, &$sparkle, $ssl_state = false) { } -if (! function_exists('item_photo_menu')) { function item_photo_menu($item) { - $ssl_state = false; - - if (local_user()) { - $ssl_state = true; - } - $sub_link = ''; $poke_link = ''; $contact_url = ''; @@ -962,7 +981,7 @@ function item_photo_menu($item) { } $sparkle = false; - $profile_link = best_link_url($item, $sparkle, $ssl_state); + $profile_link = best_link_url($item, $sparkle); if ($profile_link === 'mailbox') { $profile_link = ''; } @@ -970,12 +989,11 @@ function item_photo_menu($item) { $cid = 0; $network = ''; $rel = 0; - $r = q("SELECT `id`, `network`, `rel` FROM `contact` WHERE `uid` = %d AND `nurl` = '%s' LIMIT 1", - intval(local_user()), dbesc(normalise_link($item['author-link']))); + $r = dba::select('contact', array('id', 'network', 'rel'), array('uid' => local_user(), 'nurl' => normalise_link($item['author-link'])), array('limit' => 1)); if (dbm::is_result($r)) { - $cid = $r[0]['id']; - $network = $r[0]['network']; - $rel = $r[0]['rel']; + $cid = $r['id']; + $network = $r['network']; + $rel = $r['rel']; } if ($sparkle) { @@ -1012,7 +1030,7 @@ function item_photo_menu($item) { $menu[t("Poke")] = $poke_link; } - if ((($cid == 0) OR ($rel == CONTACT_IS_FOLLOWER)) AND + if ((($cid == 0) || ($rel == CONTACT_IS_FOLLOWER)) && in_array($item['network'], array(NETWORK_DFRN, NETWORK_OSTATUS, NETWORK_DIASPORA))) { $menu[t('Connect/Follow')] = 'follow?url=' . urlencode($item['author-link']); } @@ -1036,7 +1054,7 @@ function item_photo_menu($item) { } } return $o; -}} +} if (! function_exists('builtin_activity_puller')) { /** @@ -1155,8 +1173,9 @@ function format_like($cnt, array $arr, $type, $id) { if ($cnt > 1) { $total = count($arr); - if ($total >= MAX_LIKERS) + if ($total >= MAX_LIKERS) { $arr = array_slice($arr, 0, MAX_LIKERS - 1); + } if ($total < MAX_LIKERS) { $last = t('and') . ' ' . $arr[count($arr)-1]; $arr2 = array_slice($arr, 0, -1); @@ -1208,7 +1227,7 @@ function format_like($cnt, array $arr, $type, $id) { return $o; }} -function status_editor($a,$x, $notes_cid = 0, $popup = false) { +function status_editor(App $a, $x, $notes_cid = 0, $popup = false) { $o = ''; $geotag = (x($x, 'allow_location') ? replace_macros(get_markup_template('jot_geotag.tpl'), array()) : ''); @@ -1216,7 +1235,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup = false) { $tpl = get_markup_template('jot-header.tpl'); $a->page['htmlhead'] .= replace_macros($tpl, array( '$newpost' => 'true', - '$baseurl' => App::get_baseurl(true), + '$baseurl' => System::baseUrl(true), '$geotag' => $geotag, '$nickname' => $x['nickname'], '$ispublic' => t('Visible to everybody'), @@ -1232,7 +1251,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup = false) { $tpl = get_markup_template('jot-end.tpl'); $a->page['end'] .= replace_macros($tpl, array( '$newpost' => 'true', - '$baseurl' => App::get_baseurl(true), + '$baseurl' => System::baseUrl(true), '$geotag' => $geotag, '$nickname' => $x['nickname'], '$ispublic' => t('Visible to everybody'), @@ -1249,7 +1268,7 @@ function status_editor($a,$x, $notes_cid = 0, $popup = false) { // Private/public post links for the non-JS ACL form $private_post = 1; - if ($_REQUEST['public']) { + if (x($_REQUEST, 'public')) { $private_post = 0; } @@ -1293,14 +1312,14 @@ function status_editor($a,$x, $notes_cid = 0, $popup = false) { '$title' => $x['title'], '$placeholdertitle' => t('Set title'), '$category' => $x['category'], - '$placeholdercategory' => (feature_enabled(local_user(),'categories') ? t('Categories (comma-separated list)') : ''), + '$placeholdercategory' => (feature_enabled(local_user(), 'categories') ? t('Categories (comma-separated list)') : ''), '$wait' => t('Please wait'), '$permset' => t('Permission settings'), '$shortpermset' => t('permissions'), '$ptyp' => (($notes_cid) ? 'note' : 'wall'), '$content' => $x['content'], '$post_id' => $x['post_id'], - '$baseurl' => App::get_baseurl(true), + '$baseurl' => System::baseUrl(true), '$defloc' => $x['default_location'], '$visitor' => $x['visitor'], '$pvisit' => (($notes_cid) ? 'none' : $x['visitor']), @@ -1414,14 +1433,14 @@ function conv_sort($arr, $order) { } } - if (stristr($order,'created')) { - usort($parents,'sort_thr_created'); - } elseif (stristr($order,'commented')) { - usort($parents,'sort_thr_commented'); + if (stristr($order, 'created')) { + usort($parents, 'sort_thr_created'); + } elseif (stristr($order, 'commented')) { + usort($parents, 'sort_thr_commented'); } if (count($parents)) { - foreach ($parents as $i=>$_x) { + foreach ($parents as $i => $_x) { $parents[$i]['children'] = get_item_children($arr, $_x); } } @@ -1531,19 +1550,19 @@ function get_responses($conv_responses, $response_verbs, $ob, $item) { function get_response_button_text($v, $count) { switch ($v) { case 'like': - return tt('Like','Likes', $count,'noun'); + return tt('Like', 'Likes', $count, 'noun'); break; case 'dislike': - return tt('Dislike','Dislikes', $count,'noun'); + return tt('Dislike', 'Dislikes', $count, 'noun'); break; case 'attendyes': - return tt('Attending','Attending', $count,'noun'); + return tt('Attending', 'Attending', $count, 'noun'); break; case 'attendno': - return tt('Not Attending','Not Attending', $count,'noun'); + return tt('Not Attending', 'Not Attending', $count, 'noun'); break; case 'attendmaybe': - return tt('Undecided','Undecided', $count,'noun'); + return tt('Undecided', 'Undecided', $count, 'noun'); break; } }