From: Michael Vogel Date: Thu, 3 Dec 2015 13:38:04 +0000 (+0100) Subject: Merge remote-tracking branch 'upstream/develop' into 1512-contact-rework X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=1a170c874368e3ce77eb569702462e54c96239a2;hp=-c;p=friendica.git Merge remote-tracking branch 'upstream/develop' into 1512-contact-rework Conflicts: mod/contacts.php mod/crepair.php --- 1a170c874368e3ce77eb569702462e54c96239a2 diff --combined include/items.php index 1e68787d24,1e68787d24..2ac494ba27 --- a/include/items.php +++ b/include/items.php @@@ -1250,8 -1250,8 +1250,10 @@@ function item_store($arr,$force_parent if ($notify) $guid_prefix = ""; -- else -- $guid_prefix = $arr['network']; ++ else { ++ $parsed = parse_url($arr["author-link"]); ++ $guid_prefix = hash("crc32", $parsed["host"]); ++ } $arr['wall'] = ((x($arr,'wall')) ? intval($arr['wall']) : 0); $arr['guid'] = ((x($arr,'guid')) ? notags(trim($arr['guid'])) : get_guid(32, $guid_prefix)); @@@ -2320,6 -2320,6 +2322,9 @@@ function edited_timestamp_is_newer($exi function consume_feed($xml,$importer,&$contact, &$hub, $datedir = 0, $pass = 0) { if ($contact['network'] === NETWORK_OSTATUS) { if ($pass < 2) { ++ // Test - remove before flight ++ //$tempfile = tempnam(get_temppath(), "ostatus2"); ++ //file_put_contents($tempfile, $xml); logger("Consume OStatus messages ", LOGGER_DEBUG); ostatus_import($xml,$importer,$contact, $hub); } diff --combined include/ostatus.php index ebd5741e51,ebd5741e51..07eaec85d5 --- a/include/ostatus.php +++ b/include/ostatus.php @@@ -1282,6 -1282,6 +1282,14 @@@ function ostatus_add_author($doc, $owne return $author; } ++/* ++To-Do: Picture attachments should look like this: ++ ++https://status.pirati.ca/attachment/572819 ++ ++*/ ++ function ostatus_entry($doc, $item, $owner, $toplevel = false) { $a = get_app(); diff --combined mod/contacts.php index f1537d5086,f1829a1830..cff68abc65 --- a/mod/contacts.php +++ b/mod/contacts.php @@@ -35,10 -35,20 +35,20 @@@ function contacts_init(&$a) if($contact_id) { $a->data['contact'] = $r[0]; + + if (($a->data['contact']['network'] != "") AND ($a->data['contact']['network'] != NETWORK_DFRN)) { + $networkname = format_network_name($a->data['contact']['network'],$a->data['contact']['url']); + } else + $networkname = ''; + $vcard_widget = replace_macros(get_markup_template("vcard-widget.tpl"),array( '$name' => htmlentities($a->data['contact']['name']), '$photo' => $a->data['contact']['photo'], - '$url' => ($a->data['contact']['network'] == NETWORK_DFRN) ? z_root()."/redir/".$a->data['contact']['id'] : $a->data['contact']['url'] + '$url' => ($a->data['contact']['network'] == NETWORK_DFRN) ? z_root()."/redir/".$a->data['contact']['id'] : $a->data['contact']['url'], + '$addr' => (($a->data['contact']['addr'] != "") ? ($a->data['contact']['addr']) : ""), + '$network_name' => $networkname, + '$network' => t('Network:'), + 'account_type' => (($a->data['contact']['forum'] || $a->data['contact']['prv']) ? t('Forum') : '') )); $finpeople_widget = ''; $follow_widget = ''; @@@ -542,16 -552,16 +552,16 @@@ function contacts_content(&$a) $nettype = sprintf( t('Network type: %s'),network_to_name($contact['network'], $contact["url"])); - $common = count_common_friends(local_user(),$contact['id']); - $common_text = (($common) ? sprintf( tt('%d contact in common','%d contacts in common', $common),$common) : ''); + //$common = count_common_friends(local_user(),$contact['id']); + //$common_text = (($common) ? sprintf( tt('%d contact in common','%d contacts in common', $common),$common) : ''); $polling = (($contact['network'] === NETWORK_MAIL | $contact['network'] === NETWORK_FEED) ? 'polling' : ''); - $x = count_all_friends(local_user(), $contact['id']); - $all_friends = (($x) ? t('View all contacts') : ''); + //$x = count_all_friends(local_user(), $contact['id']); + //$all_friends = (($x) ? t('View all contacts') : ''); // tabs - $tab_str = contact_tabs($a, $contact_id, 2); + $tab_str = contacts_tab($a, $contact_id, 2); $lost_contact = (($contact['archive'] && $contact['term-date'] != '0000-00-00 00:00:00' && $contact['term-date'] < datetime_convert('','','now')) ? t('Communications lost with this contact!') : ''); @@@ -570,16 -580,8 +580,8 @@@ $follow = $a->get_baseurl(true)."/follow?url=".urlencode($contact["url"]); - $header = $contact["name"]; - - if ($contact["addr"] != "") - $header .= " <".$contact["addr"].">"; - - $header .= " (".network_to_name($contact['network'], $contact['url']).")"; - $o .= replace_macros($tpl, array( //'$header' => t('Contact Editor'), - //'$header' => htmlentities($header), '$tab_str' => $tab_str, '$submit' => t('Submit'), '$lbl_vis1' => t('Profile Visibility'), @@@ -812,7 -814,7 +814,7 @@@ return $o; } -function contact_tabs($a, $contact_id, $active_tab) { +function contacts_tab($a, $contact_id, $active_tab) { // tabs $tabs = array( array( @@@ -829,57 -831,41 +831,57 @@@ 'sel' => (($active_tab == 2)?'active':''), 'title' => t('Profile Details'), 'id' => 'status-tab', - 'accesskey' => 'r', - ), - array( - 'label' => t('Repair'), + 'accesskey' => 'o', + ) + ); + + $x = count_all_friends(local_user(), $contact_id); + if ($x) + $tabs[] = array('label'=>t('Contacts'), + 'url' => "allfriends/".$contact_id, + 'sel' => (($active_tab == 3)?'active':''), + 'title' => t('View all contacts'), + 'id' => 'allfriends-tab', + 'accesskey' => 't'); + + $common = count_common_friends(local_user(),$contact_id); + if ($common) + $tabs[] = array('label'=>t('Common Friends'), + 'url' => "common/loc/".local_user()."/".$contact_id, + 'sel' => (($active_tab == 4)?'active':''), + 'title' => t('View all common friends'), + 'id' => 'common-loc-tab', + 'accesskey' => 'd'); + + $tabs[] = array('label' => t('Repair'), 'url' => $a->get_baseurl(true) . '/crepair/' . $contact_id, - 'sel' => (($active_tab == 3)?'active':''), + 'sel' => (($active_tab == 5)?'active':''), 'title' => t('Advanced Contact Settings'), 'id' => 'repair-tab', - 'accesskey' => 'r', - ), - array( - 'label' => (($contact['blocked']) ? t('Unblock') : t('Block') ), + 'accesskey' => 'r'); + + + $tabs[] = array('label' => (($contact['blocked']) ? t('Unblock') : t('Block') ), 'url' => $a->get_baseurl(true) . '/contacts/' . $contact_id . '/block', 'sel' => '', 'title' => t('Toggle Blocked status'), 'id' => 'toggle-block-tab', - 'accesskey' => 'b', - ), - array( - 'label' => (($contact['readonly']) ? t('Unignore') : t('Ignore') ), + 'accesskey' => 'b'); + + $tabs[] = array('label' => (($contact['readonly']) ? t('Unignore') : t('Ignore') ), 'url' => $a->get_baseurl(true) . '/contacts/' . $contact_id . '/ignore', 'sel' => '', 'title' => t('Toggle Ignored status'), 'id' => 'toggle-ignore-tab', - 'accesskey' => 'i', - ), - array( - 'label' => (($contact['archive']) ? t('Unarchive') : t('Archive') ), + 'accesskey' => 'i'); + + $tabs[] = array('label' => (($contact['archive']) ? t('Unarchive') : t('Archive') ), 'url' => $a->get_baseurl(true) . '/contacts/' . $contact_id . '/archive', 'sel' => '', 'title' => t('Toggle Archive status'), 'id' => 'toggle-archive-tab', - 'accesskey' => 'v', - ) - ); + 'accesskey' => 'v'); + $tab_tpl = get_markup_template('common_tabs.tpl'); $tab_str = replace_macros($tab_tpl, array('$tabs' => $tabs)); @@@ -899,10 -885,8 +901,10 @@@ function contact_posts($a, $contact_id if(get_config('system', 'old_pager')) { $r = q("SELECT COUNT(*) AS `total` FROM `item` - WHERE `item`.`uid` = %d AND (`author-link` = '%s')", - intval(local_user()), dbesc($contact["url"])); + WHERE `item`.`uid` = %d AND `author-link` IN ('%s', '%s')", + intval(local_user()), + dbesc(normalise_link($contact["url"])), + dbesc(str_replace("http://", "https://", $contact["url"]))); $a->set_pager_total($r[0]['total']); } @@@ -912,33 -896,17 +914,18 @@@ `owner-link` AS `url`, `owner-avatar` AS `thumb` FROM `item` FORCE INDEX (uid_contactid_created) WHERE `item`.`uid` = %d AND `contact-id` = %d - AND (`author-link` = '%s') + AND `author-link` IN ('%s', '%s') ORDER BY `item`.`created` DESC LIMIT %d, %d", intval(local_user()), intval($contact_id), - dbesc($contact["url"]), + dbesc(normalise_link($contact["url"])), + dbesc(str_replace("http://", "https://", $contact["url"])), intval($a->pager['start']), intval($a->pager['itemspage']) ); - if (!$r) - $o = $contact["url"]." - ".$contact_id; - - $tab_str = contact_tabs($a, $contact_id, 1); + $tab_str = contacts_tab($a, $contact_id, 1); - $header = $contact["name"]; - - if ($contact["addr"] != "") - $header .= " <".$contact["addr"].">"; - - $header .= " (".network_to_name($contact['network'], $contact['url']).")"; - - //$tpl = get_markup_template("section_title.tpl"); - //$o = replace_macros($tpl,array( - // '$title' => htmlentities($header) - //)); - $o .= $tab_str; $o .= conversation($a,$r,'community',false); diff --combined mod/crepair.php index 99a039b379,98202ae0b0..6f951bdf6e --- a/mod/crepair.php +++ b/mod/crepair.php @@@ -23,14 -23,25 +23,9 @@@ function crepair_init(&$a) $a->page['aside'] = ''; if($contact_id) { -- $a->data['contact'] = $r[0]; - $tpl = get_markup_template("vcard-widget.tpl"); - $vcard_widget .= replace_macros($tpl, array( - '$name' => htmlentities($a->data['contact']['name']), - '$photo' => $a->data['contact']['photo'] - )); - - if (($a->data['contact']['network'] != "") AND ($a->data['contact']['network'] != NETWORK_DFRN)) { - $networkname = format_network_name($a->data['contact']['network'],$a->data['contact']['url']); - } else - $networkname = ''; - - $vcard_widget = replace_macros(get_markup_template("vcard-widget.tpl"),array( - '$name' => htmlentities($a->data['contact']['name']), - '$photo' => $a->data['contact']['photo'], - '$url' => ($a->data['contact']['network'] == NETWORK_DFRN) ? z_root()."/redir/".$a->data['contact']['id'] : $a->data['contact']['url'], - '$addr' => (($a->data['contact']['addr'] != "") ? ($a->data['contact']['addr']) : ""), - '$network_name' => $networkname, - '$network' => t('Network:'), - 'account_type' => (($a->data['contact']['forum'] || $a->data['contact']['prv']) ? t('Forum') : '') - )); - -- $a->page['aside'] .= $vcard_widget; -- ++ $a->data['contact'] = $r[0]; ++ $contact = $r[0]; ++ profile_load($a, "", 0, get_contact_details_by_url($contact["url"])); } } @@@ -159,19 -170,12 +154,12 @@@ function crepair_content(&$a) $update_profile = in_array($contact['network'], array(NETWORK_DFRN, NETWORK_DSPR, NETWORK_OSTATUS)); - $tab_str = contact_tabs($a, $contact['id'], 3); + $tab_str = contacts_tab($a, $contact['id'], 5); - $header = $contact["name"]; - - if ($contact["addr"] != "") - $header .= " <".$contact["addr"].">"; - - $header .= " (".network_to_name($contact['network'], $contact['url']).")"; $tpl = get_markup_template('crepair.tpl'); $o .= replace_macros($tpl, array( //'$title' => t('Repair Contact Settings'), - //'$title' => htmlentities($header), '$tab_str' => $tab_str, '$warning' => $warning, '$info' => $info,