From 6cc60ba477c1634b2ba6d78495d35cbf306988e1 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Tue, 1 Sep 2015 22:03:10 -0700 Subject: initial work on obj import, rename import_profile_photo to import_xchan_photo to more accurately state its purpose. --- include/apps.php | 4 ++-- include/hubloc.php | 2 +- include/items.php | 4 ++-- include/network.php | 4 ++-- include/photo/photo_driver.php | 6 +++--- include/poller.php | 2 +- include/zot.php | 2 +- mod/import.php | 45 +++++++++++++++++++++++++++--------------- mod/openid.php | 2 +- mod/thing.php | 4 ++-- 10 files changed, 44 insertions(+), 31 deletions(-) diff --git a/include/apps.php b/include/apps.php index 504641102..7943bc927 100644 --- a/include/apps.php +++ b/include/apps.php @@ -325,7 +325,7 @@ function app_store($arr) { return $ret; if($arr['photo'] && ! strstr($arr['photo'],z_root())) { - $x = import_profile_photo($arr['photo'],get_observer_hash(),true); + $x = import_xchan_photo($arr['photo'],get_observer_hash(),true); $arr['photo'] = $x[1]; } @@ -378,7 +378,7 @@ function app_update($arr) { return $ret; if($arr['photo'] && ! strstr($arr['photo'],z_root())) { - $x = import_profile_photo($arr['photo'],get_observer_hash(),true); + $x = import_xchan_photo($arr['photo'],get_observer_hash(),true); $arr['photo'] = $x[1]; } diff --git a/include/hubloc.php b/include/hubloc.php index 515223f53..396f4ddfa 100644 --- a/include/hubloc.php +++ b/include/hubloc.php @@ -230,7 +230,7 @@ function xchan_store($arr) { if(! $r) return $r; - $photos = import_profile_photo($arr['photo'],$arr['hash']); + $photos = import_xchan_photo($arr['photo'],$arr['hash']); $r = q("update xchan set xchan_photo_date = '%s', xchan_photo_l = '%s', xchan_photo_m = '%s', xchan_photo_s = '%s', xchan_photo_mimetype = '%s' where xchan_hash = '%s'", dbesc(datetime_convert()), dbesc($photos[0]), diff --git a/include/items.php b/include/items.php index 2701c3fa2..9807831e3 100755 --- a/include/items.php +++ b/include/items.php @@ -1127,7 +1127,7 @@ function import_author_rss($x) { if($r && $x['photo']) { - $photos = import_profile_photo($x['photo']['src'],$x['url']); + $photos = import_xchan_photo($x['photo']['src'],$x['url']); if($photos) { /** @bug $arr is undefined in this SQL query */ @@ -1172,7 +1172,7 @@ function import_author_unknown($x) { ); if($r && $x['photo']) { - $photos = import_profile_photo($x['photo']['src'],$x['url']); + $photos = import_xchan_photo($x['photo']['src'],$x['url']); if($photos) { /** @bug $arr is undefined in this SQL query */ diff --git a/include/network.php b/include/network.php index ef92e0132..75729d6e4 100644 --- a/include/network.php +++ b/include/network.php @@ -1035,7 +1035,7 @@ function discover_by_url($url,$arr = null) { dbesc(datetime_convert()) ); - $photos = import_profile_photo($photo,$guid); + $photos = import_xchan_photo($photo,$guid); $r = q("update xchan set xchan_photo_date = '%s', xchan_photo_l = '%s', xchan_photo_m = '%s', xchan_photo_s = '%s', xchan_photo_mimetype = '%s' where xchan_hash = '%s'", dbesc(datetime_convert()), dbesc($photos[0]), @@ -1192,7 +1192,7 @@ function discover_by_webbie($webbie) { dbescdate(datetime_convert()) ); } - $photos = import_profile_photo($vcard['photo'],$addr); + $photos = import_xchan_photo($vcard['photo'],$addr); $r = q("update xchan set xchan_photo_date = '%s', xchan_photo_l = '%s', xchan_photo_m = '%s', xchan_photo_s = '%s', xchan_photo_mimetype = '%s' where xchan_hash = '%s'", dbescdate(datetime_convert('UTC','UTC',$arr['photo_updated'])), dbesc($photos[0]), diff --git a/include/photo/photo_driver.php b/include/photo/photo_driver.php index 553e77ed1..2a7d1ae01 100644 --- a/include/photo/photo_driver.php +++ b/include/photo/photo_driver.php @@ -557,14 +557,14 @@ function guess_image_type($filename, $headers = '') { } -function import_profile_photo($photo,$xchan,$thing = false) { +function import_xchan_photo($photo,$xchan,$thing = false) { $a = get_app(); $flags = (($thing) ? PHOTO_THING : PHOTO_XCHAN); $album = (($thing) ? 'Things' : 'Contact Photos'); - logger('import_profile_photo: updating channel photo from ' . $photo . ' for ' . $xchan, LOGGER_DEBUG); + logger('import_xchan_photo: updating channel photo from ' . $photo . ' for ' . $xchan, LOGGER_DEBUG); if($thing) $hash = photo_new_resource(); @@ -650,7 +650,7 @@ function import_profile_photo($photo,$xchan,$thing = false) { $micro = $a->get_baseurl() . '/photo/' . $hash . '-6'; } else { - logger('import_profile_photo: invalid image from ' . $photo); + logger('import_xchan_photo: invalid image from ' . $photo); $photo_failure = true; } if($photo_failure) { diff --git a/include/poller.php b/include/poller.php index 030394486..a1b25bf41 100644 --- a/include/poller.php +++ b/include/poller.php @@ -235,7 +235,7 @@ function poller_run($argv, $argc){ if($r) { require_once('include/photo/photo_driver.php'); foreach($r as $rr) { - $photos = import_profile_photo($rr['xchan_photo_l'],$rr['xchan_hash']); + $photos = import_xchan_photo($rr['xchan_photo_l'],$rr['xchan_hash']); $x = q("update xchan set xchan_photo_l = '%s', xchan_photo_m = '%s', xchan_photo_s = '%s', xchan_photo_mimetype = '%s' where xchan_hash = '%s'", dbesc($photos[0]), diff --git a/include/zot.php b/include/zot.php index 4cc22ac12..16336ad54 100644 --- a/include/zot.php +++ b/include/zot.php @@ -801,7 +801,7 @@ function import_xchan($arr,$ud_flags = UPDATE_FLAGS_UPDATED, $ud_arr = null) { ); } } else { - $photos = import_profile_photo($arr['photo'], $xchan_hash); + $photos = import_xchan_photo($arr['photo'], $xchan_hash); } if ($photos) { if ($photos[4]) { diff --git a/mod/import.php b/mod/import.php index 0c5ec2a4c..e8e4f7a3d 100644 --- a/mod/import.php +++ b/mod/import.php @@ -422,7 +422,7 @@ function import_post(&$a) { require_once('include/photo/photo_driver.php'); - $photos = import_profile_photo($xchan['xchan_photo_l'],$xchan['xchan_hash']); + $photos = import_xchan_photo($xchan['xchan_photo_l'],$xchan['xchan_hash']); if($photos[4]) $photodate = NULL_DATE; else @@ -556,22 +556,35 @@ function import_post(&$a) { ref_session_write(session_id(), serialize($_SESSION)); } + $objs = $data['obj']; + if($objs) { + foreach($objs as $obj) { + // if it's the old term format - too hard to support + if(! $obj['obj_created']) + continue; + $baseurl = $obj['obj_baseurl']; + unset($obj['obj_id']); + unset($obj['obj_baseurl']); + + $obj['obj_channel'] = $channel['channel_id']; + + if($baseurl && (strpos($obj['obj_url'],$baseurl . '/thing/') !== false)) { + $obj['obj_url'] = str_replace($baseurl,z_root(),$obj['obj_url']); + } + + if($obj['obj_imgurl']) { + $x = import_xchan_photo($obj['obj_imgurl'],get_observer_hash(),true); + $obj['obj_imgurl'] = $x[0]; + } -// This needs more work - we also need the term where otype = 6 to link with this, and the terms need to be relocated. -// $objs = $data['obj']; -// if($objs) { -// foreach($objs as $obj) { -// unset($obj['obj_id']); -// $obj['channel'] = $channel['channel_id']; - -// dbesc_array($obj); -// $r = dbq("INSERT INTO obj (`" -// . implode("`, `", array_keys($obj)) -// . "`) VALUES ('" -// . implode("', '", array_values($obj)) -// . "')" ); -// } -// } + dbesc_array($obj); + $r = dbq("INSERT INTO obj (`" + . implode("`, `", array_keys($obj)) + . "`) VALUES ('" + . implode("', '", array_values($obj)) + . "')" ); + } + } $saved_notification_flags = notifications_off($channel['channel_id']); diff --git a/mod/openid.php b/mod/openid.php index 70da2690a..b9ca672a9 100644 --- a/mod/openid.php +++ b/mod/openid.php @@ -155,7 +155,7 @@ function openid_content(&$a) { ); if($r) { - $photos = import_profile_photo($pphoto,$url); + $photos = import_xchan_photo($pphoto,$url); if($photos) { $z = q("update xchan set xchan_photo_date = '%s', xchan_photo_l = '%s', xchan_photo_m = '%s', xchan_photo_s = '%s', xchan_photo_mimetype = '%s' where xchan_hash = '%s'", diff --git a/mod/thing.php b/mod/thing.php index 78fbf396c..86712d9eb 100644 --- a/mod/thing.php +++ b/mod/thing.php @@ -88,7 +88,7 @@ function thing_init(&$a) { } $orig_record = $t[0]; if($photo != $orig_record['obj_imgurl']) { - $arr = import_profile_photo($photo,get_observer_hash(),true); + $arr = import_xchan_photo($photo,get_observer_hash(),true); $local_photo = $arr[0]; $local_photo_type = $arr[3]; } @@ -125,7 +125,7 @@ function thing_init(&$a) { $local_photo = null; if($photo) { - $arr = import_profile_photo($photo,get_observer_hash(),true); + $arr = import_xchan_photo($photo,get_observer_hash(),true); $local_photo = $arr[0]; $local_photo_type = $arr[3]; } -- cgit v1.2.3