|
|
@ -720,65 +720,91 @@ function guess_image_type($filename, $fromcurl=false) { |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
function import_profile_photo($photo,$uid,$cid) { |
|
|
|
function update_contact_avatar($avatar,$uid,$cid) { |
|
|
|
|
|
|
|
$a = get_app(); |
|
|
|
$r = q("SELECT `avatar`, `photo`, `thumb`, `micro` FROM `contact` WHERE `id` = %d LIMIT 1", intval($cid)); |
|
|
|
if (!$r) |
|
|
|
return false; |
|
|
|
else |
|
|
|
$data = array($r[0]["photo"], $r[0]["thumb"], $r[0]["micro"]); |
|
|
|
|
|
|
|
$r = q("select `resource-id` from photo where `uid` = %d and `contact-id` = %d and `scale` = 4 and `album` = 'Contact Photos' limit 1", |
|
|
|
intval($uid), |
|
|
|
intval($cid) |
|
|
|
); |
|
|
|
if(count($r) && strlen($r[0]['resource-id'])) { |
|
|
|
$hash = $r[0]['resource-id']; |
|
|
|
} |
|
|
|
else { |
|
|
|
$hash = photo_new_resource(); |
|
|
|
} |
|
|
|
if ($r[0]["avatar"] != $avatar) { |
|
|
|
$photos = import_profile_photo($avatar,$uid,$cid, true); |
|
|
|
|
|
|
|
if ($photos) { |
|
|
|
q("UPDATE `contact` SET `avatar` = '%s', `photo` = '%s', `thumb` = '%s', `micro` = '%s', `avatar-date` = '%s' WHERE `id` = %d", |
|
|
|
dbesc($avatar), dbesc($photos[0]), dbesc($photos[1]), dbesc($photos[2]), |
|
|
|
dbesc(datetime_convert()), intval($cid)); |
|
|
|
return $photos; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return $data; |
|
|
|
} |
|
|
|
|
|
|
|
function import_profile_photo($photo,$uid,$cid, $quit_on_error = false) { |
|
|
|
|
|
|
|
$a = get_app(); |
|
|
|
|
|
|
|
$photo_failure = false; |
|
|
|
$r = q("select `resource-id` from photo where `uid` = %d and `contact-id` = %d and `scale` = 4 and `album` = 'Contact Photos' limit 1", |
|
|
|
intval($uid), |
|
|
|
intval($cid) |
|
|
|
); |
|
|
|
if(count($r) && strlen($r[0]['resource-id'])) { |
|
|
|
$hash = $r[0]['resource-id']; |
|
|
|
} else { |
|
|
|
$hash = photo_new_resource(); |
|
|
|
} |
|
|
|
|
|
|
|
$filename = basename($photo); |
|
|
|
$img_str = fetch_url($photo,true); |
|
|
|
$photo_failure = false; |
|
|
|
|
|
|
|
$type = guess_image_type($photo,true); |
|
|
|
$img = new Photo($img_str, $type); |
|
|
|
if($img->is_valid()) { |
|
|
|
$filename = basename($photo); |
|
|
|
$img_str = fetch_url($photo,true); |
|
|
|
|
|
|
|
$img->scaleImageSquare(175); |
|
|
|
if ($quit_on_error AND ($img_str == "")) |
|
|
|
return false; |
|
|
|
|
|
|
|
$r = $img->store($uid, $cid, $hash, $filename, 'Contact Photos', 4 ); |
|
|
|
$type = guess_image_type($photo,true); |
|
|
|
$img = new Photo($img_str, $type); |
|
|
|
if($img->is_valid()) { |
|
|
|
|
|
|
|
if($r === false) |
|
|
|
$photo_failure = true; |
|
|
|
$img->scaleImageSquare(175); |
|
|
|
|
|
|
|
$img->scaleImage(80); |
|
|
|
$r = $img->store($uid, $cid, $hash, $filename, 'Contact Photos', 4 ); |
|
|
|
|
|
|
|
$r = $img->store($uid, $cid, $hash, $filename, 'Contact Photos', 5 ); |
|
|
|
if($r === false) |
|
|
|
$photo_failure = true; |
|
|
|
|
|
|
|
if($r === false) |
|
|
|
$photo_failure = true; |
|
|
|
$img->scaleImage(80); |
|
|
|
|
|
|
|
$img->scaleImage(48); |
|
|
|
$r = $img->store($uid, $cid, $hash, $filename, 'Contact Photos', 5 ); |
|
|
|
|
|
|
|
$r = $img->store($uid, $cid, $hash, $filename, 'Contact Photos', 6 ); |
|
|
|
if($r === false) |
|
|
|
$photo_failure = true; |
|
|
|
|
|
|
|
if($r === false) |
|
|
|
$photo_failure = true; |
|
|
|
$img->scaleImage(48); |
|
|
|
|
|
|
|
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4.' . $img->getExt(); |
|
|
|
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.' . $img->getExt(); |
|
|
|
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6.' . $img->getExt(); |
|
|
|
} |
|
|
|
else |
|
|
|
$photo_failure = true; |
|
|
|
$r = $img->store($uid, $cid, $hash, $filename, 'Contact Photos', 6 ); |
|
|
|
|
|
|
|
if($photo_failure) { |
|
|
|
$photo = $a->get_baseurl() . '/images/person-175.jpg'; |
|
|
|
$thumb = $a->get_baseurl() . '/images/person-80.jpg'; |
|
|
|
$micro = $a->get_baseurl() . '/images/person-48.jpg'; |
|
|
|
} |
|
|
|
if($r === false) |
|
|
|
$photo_failure = true; |
|
|
|
|
|
|
|
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4.' . $img->getExt(); |
|
|
|
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.' . $img->getExt(); |
|
|
|
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6.' . $img->getExt(); |
|
|
|
} else |
|
|
|
$photo_failure = true; |
|
|
|
|
|
|
|
if($photo_failure AND $quit_on_error) |
|
|
|
return false; |
|
|
|
|
|
|
|
if($photo_failure) { |
|
|
|
$photo = $a->get_baseurl() . '/images/person-175.jpg'; |
|
|
|
$thumb = $a->get_baseurl() . '/images/person-80.jpg'; |
|
|
|
$micro = $a->get_baseurl() . '/images/person-48.jpg'; |
|
|
|
} |
|
|
|
|
|
|
|
return(array($photo,$thumb,$micro)); |
|
|
|
return(array($photo,$thumb,$micro)); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|