Merge pull request #335 from annando/1601-gcontact

Preparation for new core function for storing contact data
This commit is contained in:
Tobias Diekershoff 2016-01-10 10:54:20 +01:00
commit 4676ff5554
5 changed files with 129 additions and 89 deletions

View file

@ -1097,6 +1097,14 @@ function appnet_expand_annotations($a, $annotations) {
function appnet_fetchcontact($a, $uid, $contact, $me, $create_user) { function appnet_fetchcontact($a, $uid, $contact, $me, $create_user) {
if (function_exists("update_gcontact"))
update_gcontact(array("url" => $contact["canonical_url"], "generation" => 2,
"network" => NETWORK_APPNET, "photo" => $contact["avatar_image"]["url"],
"name" => $contact["name"], "nick" => $contact["username"],
"about" => $contact["description"]["text"], "hide" => true,
"addr" => $contact["username"]."@app.net"));
else {
// Old Code
$r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1", $r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1",
dbesc(normalise_link($contact["canonical_url"]))); dbesc(normalise_link($contact["canonical_url"])));
@ -1118,7 +1126,7 @@ function appnet_fetchcontact($a, $uid, $contact, $me, $create_user) {
dbesc(""), dbesc(""),
dbesc($contact["description"]["text"]), dbesc($contact["description"]["text"]),
dbesc(normalise_link($contact["canonical_url"]))); dbesc(normalise_link($contact["canonical_url"])));
}
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `alias` = '%s' LIMIT 1", $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `alias` = '%s' LIMIT 1",
intval($uid), dbesc("adn::".$contact["id"])); intval($uid), dbesc("adn::".$contact["id"]));

View file

@ -377,6 +377,7 @@ function buffer_send(&$a,&$b) {
$message["media[thumbnail]"] = $post["preview"]; $message["media[thumbnail]"] = $post["preview"];
//print_r($message); //print_r($message);
logger("buffer_send: data for message ".$b["id"].": ".print_r($message, true), LOGGER_DEBUG);
$ret = $buffer->go('/updates/create', $message); $ret = $buffer->go('/updates/create', $message);
logger("buffer_send: send message ".$b["id"]." result: ".print_r($ret, true), LOGGER_DEBUG); logger("buffer_send: send message ".$b["id"]." result: ".print_r($ret, true), LOGGER_DEBUG);
} }

View file

@ -944,6 +944,13 @@ function pumpio_dolike(&$a, $uid, $self, $post, $own_id, $threadcompletion = tru
function pumpio_get_contact($uid, $contact) { function pumpio_get_contact($uid, $contact) {
if (function_exists("update_gcontact"))
update_gcontact(array("url" => $contact->url, "network" => NETWORK_PUMPIO, "generation" => 2,
"photo" => $contact->image->url, "name" => $contact->displayName, "hide" => true,
"nick" => $contact->preferredUsername, "location" => $contact->location->displayName,
"about" => $contact->summary, "addr" => str_replace("acct:", "", $contact->id)));
else {
// Old Code
$r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1", $r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1",
dbesc(normalise_link($contact->url))); dbesc(normalise_link($contact->url)));
@ -965,6 +972,7 @@ function pumpio_get_contact($uid, $contact) {
dbesc($contact->location->displayName), dbesc($contact->location->displayName),
dbesc($contact->summary), dbesc($contact->summary),
dbesc(normalise_link($contact->url))); dbesc(normalise_link($contact->url)));
}
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `url` = '%s' LIMIT 1", $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `url` = '%s' LIMIT 1",
intval($uid), dbesc($contact->url)); intval($uid), dbesc($contact->url));

View file

@ -908,8 +908,14 @@ function statusnet_fetch_contact($uid, $contact, $create_user) {
if ($contact->statusnet_profile_url == "") if ($contact->statusnet_profile_url == "")
return(-1); return(-1);
// Check if the unique contact is existing if (function_exists("update_gcontact"))
// To-Do: only update once a while update_gcontact(array("url" => $contact->statusnet_profile_url,
"network" => NETWORK_STATUSNET, "photo" => $contact->profile_image_url,
"name" => $contact->name, "nick" => $contact->screen_name,
"location" => $contact->location, "about" => $contact->description,
"addr" => statusnet_address($contact), "generation" => 3));
else {
// Old Code
$r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1", $r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1",
dbesc(normalise_link($contact->statusnet_profile_url))); dbesc(normalise_link($contact->statusnet_profile_url)));
@ -931,6 +937,7 @@ function statusnet_fetch_contact($uid, $contact, $create_user) {
dbesc($contact->location), dbesc($contact->location),
dbesc($contact->description), dbesc($contact->description),
dbesc(normalise_link($contact->statusnet_profile_url))); dbesc(normalise_link($contact->statusnet_profile_url)));
}
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `alias` = '%s' AND `network` = '%s'LIMIT 1", $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `alias` = '%s' AND `network` = '%s'LIMIT 1",
intval($uid), dbesc(normalise_link($contact->statusnet_profile_url)), dbesc(NETWORK_STATUSNET)); intval($uid), dbesc(normalise_link($contact->statusnet_profile_url)), dbesc(NETWORK_STATUSNET));

View file

@ -925,20 +925,33 @@ function twitter_queue_hook(&$a,&$b) {
} }
} }
function twitter_fetch_contact($uid, $contact, $create_user) { function twitter_fix_avatar($avatar) {
require_once("include/Photo.php"); require_once("include/Photo.php");
$new_avatar = str_replace("_normal.", ".", $avatar);
$info = get_photo_info($new_avatar);
if (!$info)
$new_avatar = $avatar;
return $new_avatar;
}
function twitter_fetch_contact($uid, $contact, $create_user) {
if ($contact->id_str == "") if ($contact->id_str == "")
return(-1); return(-1);
$avatar = str_replace("_normal.", ".", $contact->profile_image_url_https); $avatar = twitter_fix_avatar($contact->profile_image_url_https);
$info = get_photo_info($avatar); if (function_exists("update_gcontact"))
if (!$info) update_gcontact(array("url" => "https://twitter.com/".$contact->screen_name,
$avatar = $contact->profile_image_url_https; "network" => NETWORK_TWITTER, "photo" => $avatar, "hide" => true,
"name" => $contact->name, "nick" => $contact->screen_name,
// Check if the unique contact is existing "location" => $contact->location, "about" => $contact->description,
// To-Do: only update once a while "addr" => $contact->screen_name."@twitter.com", "generation" => 2));
else {
// Old Code
$r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1", $r = q("SELECT id FROM unique_contacts WHERE url='%s' LIMIT 1",
dbesc(normalise_link("https://twitter.com/".$contact->screen_name))); dbesc(normalise_link("https://twitter.com/".$contact->screen_name)));
@ -960,6 +973,7 @@ function twitter_fetch_contact($uid, $contact, $create_user) {
dbesc($contact->location), dbesc($contact->location),
dbesc($contact->description), dbesc($contact->description),
dbesc(normalise_link("https://twitter.com/".$contact->screen_name))); dbesc(normalise_link("https://twitter.com/".$contact->screen_name)));
}
$r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `alias` = '%s' LIMIT 1", $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `alias` = '%s' LIMIT 1",
intval($uid), dbesc("twitter::".$contact->id_str)); intval($uid), dbesc("twitter::".$contact->id_str));
@ -1220,6 +1234,8 @@ function twitter_expand_entities($a, $body, $item, $no_tags = false, $picture) {
if (($footer == "") AND ($picture != "")) if (($footer == "") AND ($picture != ""))
$body .= "\n\n[img]".$picture."[/img]\n"; $body .= "\n\n[img]".$picture."[/img]\n";
elseif (($footer == "") AND ($picture == ""))
$body = add_page_info_to_body($body);
if ($no_tags) if ($no_tags)
return(array("body" => $body, "tags" => "")); return(array("body" => $body, "tags" => ""));
@ -1360,7 +1376,7 @@ function twitter_createpost($a, $uid, $post, $self, $create_user, $only_existing
$postarray['owner-name'] = $post->user->name; $postarray['owner-name'] = $post->user->name;
$postarray['owner-link'] = "https://twitter.com/".$post->user->screen_name; $postarray['owner-link'] = "https://twitter.com/".$post->user->screen_name;
$postarray['owner-avatar'] = $post->user->profile_image_url_https; $postarray['owner-avatar'] = twitter_fix_avatar($post->user->profile_image_url_https);
} }
if(($contactid == 0) AND !$only_existing_contact) if(($contactid == 0) AND !$only_existing_contact)
@ -1464,7 +1480,7 @@ function twitter_createpost($a, $uid, $post, $self, $create_user, $only_existing
// Let retweets look like wall-to-wall posts // Let retweets look like wall-to-wall posts
$postarray['author-name'] = $post->retweeted_status->user->name; $postarray['author-name'] = $post->retweeted_status->user->name;
$postarray['author-link'] = "https://twitter.com/".$post->retweeted_status->user->screen_name; $postarray['author-link'] = "https://twitter.com/".$post->retweeted_status->user->screen_name;
$postarray['author-avatar'] = $post->retweeted_status->user->profile_image_url_https; $postarray['author-avatar'] = twitter_fix_avatar($post->retweeted_status->user->profile_image_url_https);
//if (($post->retweeted_status->user->screen_name != "") AND ($post->retweeted_status->id_str != "")) { //if (($post->retweeted_status->user->screen_name != "") AND ($post->retweeted_status->id_str != "")) {
// $postarray['plink'] = "https://twitter.com/".$post->retweeted_status->user->screen_name."/status/".$post->retweeted_status->id_str; // $postarray['plink'] = "https://twitter.com/".$post->retweeted_status->user->screen_name."/status/".$post->retweeted_status->id_str;
// $postarray['uri'] = "twitter::".$post->retweeted_status->id_str; // $postarray['uri'] = "twitter::".$post->retweeted_status->id_str;