mirror of
https://github.com/friendica/friendica
synced 2024-12-22 23:20:16 +00:00
add micro profile photo
This commit is contained in:
parent
71ae08d506
commit
b94cb8d234
12 changed files with 77 additions and 13 deletions
2
boot.php
2
boot.php
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
set_time_limit(0);
|
set_time_limit(0);
|
||||||
|
|
||||||
define ( 'BUILD_ID', 1014 );
|
define ( 'BUILD_ID', 1015 );
|
||||||
define ( 'DFRN_PROTOCOL_VERSION', '2.0' );
|
define ( 'DFRN_PROTOCOL_VERSION', '2.0' );
|
||||||
|
|
||||||
define ( 'EOL', "<br />\r\n" );
|
define ( 'EOL', "<br />\r\n" );
|
||||||
|
|
|
@ -59,6 +59,7 @@ CREATE TABLE IF NOT EXISTS `contact` (
|
||||||
`nick` char(255) NOT NULL,
|
`nick` char(255) NOT NULL,
|
||||||
`photo` text NOT NULL,
|
`photo` text NOT NULL,
|
||||||
`thumb` text NOT NULL,
|
`thumb` text NOT NULL,
|
||||||
|
`micro` text NOT NULL,
|
||||||
`site-pubkey` text NOT NULL,
|
`site-pubkey` text NOT NULL,
|
||||||
`issued-id` char(255) NOT NULL,
|
`issued-id` char(255) NOT NULL,
|
||||||
`dfrn-id` char(255) NOT NULL,
|
`dfrn-id` char(255) NOT NULL,
|
||||||
|
|
BIN
images/default-profile-mm.jpg
Normal file
BIN
images/default-profile-mm.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 322 B |
|
@ -235,8 +235,18 @@ function import_profile_photo($photo,$uid,$cid) {
|
||||||
if($r === false)
|
if($r === false)
|
||||||
$photo_failure = true;
|
$photo_failure = true;
|
||||||
|
|
||||||
|
$img->scaleImage(48);
|
||||||
|
|
||||||
|
$r = $img->store($uid, $cid, $hash, $filename, t('Contact Photos'), 6 );
|
||||||
|
|
||||||
|
if($r === false)
|
||||||
|
$photo_failure = true;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4.jpg';
|
$photo = $a->get_baseurl() . '/photo/' . $hash . '-4.jpg';
|
||||||
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.jpg';
|
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.jpg';
|
||||||
|
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6.jpg';
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
$photo_failure = true;
|
$photo_failure = true;
|
||||||
|
@ -244,8 +254,9 @@ function import_profile_photo($photo,$uid,$cid) {
|
||||||
if($photo_failure) {
|
if($photo_failure) {
|
||||||
$photo = $a->get_baseurl() . '/images/default-profile.jpg';
|
$photo = $a->get_baseurl() . '/images/default-profile.jpg';
|
||||||
$thumb = $a->get_baseurl() . '/images/default-profile-sm.jpg';
|
$thumb = $a->get_baseurl() . '/images/default-profile-sm.jpg';
|
||||||
|
$micro = $a->get_baseurl() . '/images/default-profile-mm.jpg';
|
||||||
}
|
}
|
||||||
|
|
||||||
return(array($photo,$thumb));
|
return(array($photo,$thumb,$micro));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -792,6 +792,10 @@ function consume_feed($xml,$importer,$contact, &$hub) {
|
||||||
|
|
||||||
$img->scaleImage(80);
|
$img->scaleImage(80);
|
||||||
$r = $img->store($contact['uid'], $contact['id'], $hash, basename($photo_url), t('Contact Photos') , 5);
|
$r = $img->store($contact['uid'], $contact['id'], $hash, basename($photo_url), t('Contact Photos') , 5);
|
||||||
|
|
||||||
|
$img->scaleImage(48);
|
||||||
|
$r = $img->store($contact['uid'], $contact['id'], $hash, basename($photo_url), t('Contact Photos') , 6);
|
||||||
|
|
||||||
if($r)
|
if($r)
|
||||||
q("UPDATE `contact` SET `avatar-date` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
|
q("UPDATE `contact` SET `avatar-date` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
|
|
|
@ -238,7 +238,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
$new_relation = REL_BUD;
|
$new_relation = REL_BUD;
|
||||||
|
|
||||||
$r = q("UPDATE `contact` SET `photo` = '%s',
|
$r = q("UPDATE `contact` SET `photo` = '%s',
|
||||||
`thumb` = '%s',
|
`thumb` = '%s',
|
||||||
|
`micro` = '%s',
|
||||||
`rel` = %d,
|
`rel` = %d,
|
||||||
`name-date` = '%s',
|
`name-date` = '%s',
|
||||||
`uri-date` = '%s',
|
`uri-date` = '%s',
|
||||||
|
@ -250,6 +251,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
",
|
",
|
||||||
dbesc($photos[0]),
|
dbesc($photos[0]),
|
||||||
dbesc($photos[1]),
|
dbesc($photos[1]),
|
||||||
|
dbesc($photos[2]),
|
||||||
intval($new_relation),
|
intval($new_relation),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
|
@ -281,7 +283,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
);
|
);
|
||||||
|
|
||||||
$r = q("UPDATE `contact` SET `photo` = '%s',
|
$r = q("UPDATE `contact` SET `photo` = '%s',
|
||||||
`thumb` = '%s',
|
`thumb` = '%s',
|
||||||
|
`micro` = '%s',
|
||||||
`name-date` = '%s',
|
`name-date` = '%s',
|
||||||
`uri-date` = '%s',
|
`uri-date` = '%s',
|
||||||
`avatar-date` = '%s',
|
`avatar-date` = '%s',
|
||||||
|
@ -293,6 +296,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
|
||||||
",
|
",
|
||||||
dbesc($photos[0]),
|
dbesc($photos[0]),
|
||||||
dbesc($photos[1]),
|
dbesc($photos[1]),
|
||||||
|
dbesc($photos[2]),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
|
|
|
@ -122,7 +122,8 @@ function follow_post(&$a) {
|
||||||
$photos = import_profile_photo($vcard['photo'],local_user(),$contact_id);
|
$photos = import_profile_photo($vcard['photo'],local_user(),$contact_id);
|
||||||
|
|
||||||
$r = q("UPDATE `contact` SET `photo` = '%s',
|
$r = q("UPDATE `contact` SET `photo` = '%s',
|
||||||
`thumb` = '%s',
|
`thumb` = '%s',
|
||||||
|
`micro` = '%s',
|
||||||
`name-date` = '%s',
|
`name-date` = '%s',
|
||||||
`uri-date` = '%s',
|
`uri-date` = '%s',
|
||||||
`avatar-date` = '%s'
|
`avatar-date` = '%s'
|
||||||
|
@ -130,6 +131,7 @@ function follow_post(&$a) {
|
||||||
",
|
",
|
||||||
dbesc($photos[0]),
|
dbesc($photos[0]),
|
||||||
dbesc($photos[1]),
|
dbesc($photos[1]),
|
||||||
|
dbesc($photos[2]),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
dbesc(datetime_convert()),
|
dbesc(datetime_convert()),
|
||||||
|
|
|
@ -16,15 +16,22 @@ function photo_init(&$a) {
|
||||||
return; // NOTREACHED
|
return; // NOTREACHED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$default = 'images/default-profile.jpg';
|
||||||
|
|
||||||
if(isset($type)) {
|
if(isset($type)) {
|
||||||
switch($type) {
|
switch($type) {
|
||||||
|
|
||||||
case 'profile':
|
case 'profile':
|
||||||
$resolution = 4;
|
$resolution = 4;
|
||||||
break;
|
break;
|
||||||
|
case 'micro':
|
||||||
|
$resolution = 6;
|
||||||
|
$default = 'images/default-profile-mm.jpg';
|
||||||
|
break;
|
||||||
case 'avatar':
|
case 'avatar':
|
||||||
default:
|
default:
|
||||||
$resolution = 5;
|
$resolution = 5;
|
||||||
|
$default = 'images/default-profile-sm.jpg';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,9 +45,7 @@ function photo_init(&$a) {
|
||||||
$data = $r[0]['data'];
|
$data = $r[0]['data'];
|
||||||
}
|
}
|
||||||
if(! isset($data)) {
|
if(! isset($data)) {
|
||||||
$data = file_get_contents(($resolution == 5)
|
$data = file_get_contents($default);
|
||||||
? 'images/default-profile-sm.jpg'
|
|
||||||
: 'images/default-profile.jpg');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
|
@ -312,9 +312,9 @@ function photos_post(&$a) {
|
||||||
}
|
}
|
||||||
if($profile) {
|
if($profile) {
|
||||||
if(substr($notify,0,4) === 'cid:')
|
if(substr($notify,0,4) === 'cid:')
|
||||||
$taginfo[] = array($newname,$profile,$notify,$r[0]);
|
$taginfo[] = array($newname,$profile,$notify,$r[0],'@[url=' . str_replace(',','%2c',$profile) . ']' . $newname . '[/url]');
|
||||||
else
|
else
|
||||||
$taginfo[] = array($newname,$profile,$notify,null);
|
$taginfo[] = array($newname,$profile,$notify,null,$str_tags .= '@[url=' . $profile . ']' . $newname . '[/url]');
|
||||||
if(strlen($str_tags))
|
if(strlen($str_tags))
|
||||||
$str_tags .= ',';
|
$str_tags .= ',';
|
||||||
$profile = str_replace(',','%2c',$profile);
|
$profile = str_replace(',','%2c',$profile);
|
||||||
|
@ -384,6 +384,7 @@ function photos_post(&$a) {
|
||||||
$arr['verb'] = ACTIVITY_TAG;
|
$arr['verb'] = ACTIVITY_TAG;
|
||||||
$arr['object-type'] = ACTIVITY_OBJ_PERSON;
|
$arr['object-type'] = ACTIVITY_OBJ_PERSON;
|
||||||
$arr['target-type'] = ACTIVITY_OBJ_PHOTO;
|
$arr['target-type'] = ACTIVITY_OBJ_PHOTO;
|
||||||
|
$arr['tag'] = $tagged[4];
|
||||||
$arr['inform'] = $tagged[2];
|
$arr['inform'] = $tagged[2];
|
||||||
|
|
||||||
$arr['body'] = '[url=' . $tagged[1] . ']' . $tagged[0] . '[/url]' . ' ' . t('was tagged in a') . ' ' . '[url=' . $a->get_baseurl() . '/photos/' . $contact_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . t('photo') . '[/url]' . ' ' . t('by') . ' ' . '[url=' . $contact_record['url'] . ']' . $contact_record['name'] . '[/url]' ;
|
$arr['body'] = '[url=' . $tagged[1] . ']' . $tagged[0] . '[/url]' . ' ' . t('was tagged in a') . ' ' . '[url=' . $a->get_baseurl() . '/photos/' . $contact_record['nickname'] . '/image/' . $p[0]['resource-id'] . ']' . t('photo') . '[/url]' . ' ' . t('by') . ' ' . '[url=' . $contact_record['url'] . ']' . $contact_record['name'] . '[/url]' ;
|
||||||
|
|
|
@ -68,6 +68,13 @@ function profile_photo_post(&$a) {
|
||||||
if($r === false)
|
if($r === false)
|
||||||
notice( t('Image size reduction [80] failed.') . EOL );
|
notice( t('Image size reduction [80] failed.') . EOL );
|
||||||
|
|
||||||
|
$im->scaleImage(48);
|
||||||
|
|
||||||
|
$r = $im->store(local_user(), 0, $base_image['resource-id'],$base_image['filename'], t('Profile Photos'), 6, 1);
|
||||||
|
|
||||||
|
if($r === false)
|
||||||
|
notice( t('Image size reduction [48] failed.') . EOL );
|
||||||
|
|
||||||
// Unset the profile photo flag from any other photos I own
|
// Unset the profile photo flag from any other photos I own
|
||||||
|
|
||||||
$r = q("UPDATE `photo` SET `profile` = 0 WHERE `profile` = 1 AND `resource-id` != '%s' AND `uid` = %d",
|
$r = q("UPDATE `photo` SET `profile` = 0 WHERE `profile` = 1 AND `resource-id` != '%s' AND `uid` = %d",
|
||||||
|
|
|
@ -161,15 +161,16 @@ function register_post(&$a) {
|
||||||
intval($newuid));
|
intval($newuid));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$r = q("INSERT INTO `contact` ( `uid`, `created`, `self`, `name`, `nick`, `photo`, `thumb`, `blocked`, `pending`, `url`,
|
$r = q("INSERT INTO `contact` ( `uid`, `created`, `self`, `name`, `nick`, `photo`, `thumb`, `micro`, `blocked`, `pending`, `url`,
|
||||||
`request`, `notify`, `poll`, `confirm`, `name-date`, `uri-date`, `avatar-date` )
|
`request`, `notify`, `poll`, `confirm`, `name-date`, `uri-date`, `avatar-date` )
|
||||||
VALUES ( %d, '%s', 1, '%s', '%s', '%s', '%s', 0, 0, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s' ) ",
|
VALUES ( %d, '%s', 1, '%s', '%s', '%s', '%s', '%s', 0, 0, '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s' ) ",
|
||||||
intval($newuid),
|
intval($newuid),
|
||||||
datetime_convert(),
|
datetime_convert(),
|
||||||
dbesc($username),
|
dbesc($username),
|
||||||
dbesc($nickname),
|
dbesc($nickname),
|
||||||
dbesc($a->get_baseurl() . "/photo/profile/{$newuid}.jpg"),
|
dbesc($a->get_baseurl() . "/photo/profile/{$newuid}.jpg"),
|
||||||
dbesc($a->get_baseurl() . "/photo/avatar/{$newuid}.jpg"),
|
dbesc($a->get_baseurl() . "/photo/avatar/{$newuid}.jpg"),
|
||||||
|
dbesc($a->get_baseurl() . "/photo/micro/{$newuid}.jpg"),
|
||||||
dbesc($a->get_baseurl() . "/profile/$nickname"),
|
dbesc($a->get_baseurl() . "/profile/$nickname"),
|
||||||
dbesc($a->get_baseurl() . "/dfrn_request/$nickname"),
|
dbesc($a->get_baseurl() . "/dfrn_request/$nickname"),
|
||||||
dbesc($a->get_baseurl() . "/dfrn_notify/$nickname"),
|
dbesc($a->get_baseurl() . "/dfrn_notify/$nickname"),
|
||||||
|
|
30
update.php
30
update.php
|
@ -101,4 +101,32 @@ function update_1012() {
|
||||||
function update_1013() {
|
function update_1013() {
|
||||||
q("ALTER TABLE `item` ADD `target-type` CHAR( 255 ) NOT NULL
|
q("ALTER TABLE `item` ADD `target-type` CHAR( 255 ) NOT NULL
|
||||||
AFTER `object` , ADD `target` TEXT NOT NULL AFTER `target-type`");
|
AFTER `object` , ADD `target` TEXT NOT NULL AFTER `target-type`");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function update_1014() {
|
||||||
|
require_once('include/Photo.php');
|
||||||
|
q("ALTER TABLE `contact` ADD `micro` TEXT NOT NULL AFTER `thumb` ");
|
||||||
|
$r = q("SELECT * FROM `photo` WHERE `scale` = 4");
|
||||||
|
if(count($r)) {
|
||||||
|
foreach($r as $rr) {
|
||||||
|
$ph = new Photo($rr['data']);
|
||||||
|
if($ph->is_valid()) {
|
||||||
|
$ph->scaleImage(48);
|
||||||
|
$ph->store($rr['uid'],$rr['contact-id'],$rr['resource-id'],$rr['filename'],$rr['album'],6,(($rr['profile']) ? 1 : 0));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$r = q("SELECT * FROM `contact` WHERE 1");
|
||||||
|
if(count($r)) {
|
||||||
|
foreach($r as $rr) {
|
||||||
|
if(stristr($rr['thumb'],'avatar'))
|
||||||
|
q("UPDATE `contact` SET `micro` = '%s' WHERE `id` = %d LIMIT 1",
|
||||||
|
dbesc(str_replace('avatar','micro',$rr['thumb'])),
|
||||||
|
intval($rr['id']));
|
||||||
|
else
|
||||||
|
q("UPDATE `contact` SET `micro` = '%s' WHERE `id` = %d LIMIT 1",
|
||||||
|
dbesc(str_replace('5.jpg','6.jpg',$rr['thumb'])),
|
||||||
|
intval($rr['id']));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue