Browse Source

add micro profile photo

tags/2.1
Friendika 10 years ago
parent
commit
b94cb8d234
12 changed files with 77 additions and 13 deletions
  1. +1
    -1
      boot.php
  2. +1
    -0
      database.sql
  3. BIN
      images/default-profile-mm.jpg
  4. +12
    -1
      include/Photo.php
  5. +4
    -0
      include/items.php
  6. +6
    -2
      mod/dfrn_confirm.php
  7. +3
    -1
      mod/follow.php
  8. +8
    -3
      mod/photo.php
  9. +3
    -2
      mod/photos.php
  10. +7
    -0
      mod/profile_photo.php
  11. +3
    -2
      mod/register.php
  12. +29
    -1
      update.php

+ 1
- 1
boot.php View File

@@ -2,7 +2,7 @@

set_time_limit(0);

define ( 'BUILD_ID', 1014 );
define ( 'BUILD_ID', 1015 );
define ( 'DFRN_PROTOCOL_VERSION', '2.0' );

define ( 'EOL', "<br />\r\n" );


+ 1
- 0
database.sql View File

@@ -59,6 +59,7 @@ CREATE TABLE IF NOT EXISTS `contact` (
`nick` char(255) NOT NULL,
`photo` text NOT NULL,
`thumb` text NOT NULL,
`micro` text NOT NULL,
`site-pubkey` text NOT NULL,
`issued-id` char(255) NOT NULL,
`dfrn-id` char(255) NOT NULL,


BIN
images/default-profile-mm.jpg View File

Before After
Width: 48  |  Height: 48  |  Size: 322 B

+ 12
- 1
include/Photo.php View File

@@ -235,8 +235,18 @@ function import_profile_photo($photo,$uid,$cid) {
if($r === false)
$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';
$thumb = $a->get_baseurl() . '/photo/' . $hash . '-5.jpg';
$micro = $a->get_baseurl() . '/photo/' . $hash . '-6.jpg';
}
else
$photo_failure = true;
@@ -244,8 +254,9 @@ function import_profile_photo($photo,$uid,$cid) {
if($photo_failure) {
$photo = $a->get_baseurl() . '/images/default-profile.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));

}

+ 4
- 0
include/items.php View File

@@ -792,6 +792,10 @@ function consume_feed($xml,$importer,$contact, &$hub) {
$img->scaleImage(80);
$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)
q("UPDATE `contact` SET `avatar-date` = '%s' WHERE `uid` = %d AND `id` = %d LIMIT 1",
dbesc(datetime_convert()),


+ 6
- 2
mod/dfrn_confirm.php View File

@@ -238,7 +238,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
$new_relation = REL_BUD;

$r = q("UPDATE `contact` SET `photo` = '%s',
`thumb` = '%s',
`thumb` = '%s',
`micro` = '%s',
`rel` = %d,
`name-date` = '%s',
`uri-date` = '%s',
@@ -250,6 +251,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
",
dbesc($photos[0]),
dbesc($photos[1]),
dbesc($photos[2]),
intval($new_relation),
dbesc(datetime_convert()),
dbesc(datetime_convert()),
@@ -281,7 +283,8 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
);

$r = q("UPDATE `contact` SET `photo` = '%s',
`thumb` = '%s',
`thumb` = '%s',
`micro` = '%s',
`name-date` = '%s',
`uri-date` = '%s',
`avatar-date` = '%s',
@@ -293,6 +296,7 @@ function dfrn_confirm_post(&$a,$handsfree = null) {
",
dbesc($photos[0]),
dbesc($photos[1]),
dbesc($photos[2]),
dbesc(datetime_convert()),
dbesc(datetime_convert()),
dbesc(datetime_convert()),


+ 3
- 1
mod/follow.php View File

@@ -122,7 +122,8 @@ function follow_post(&$a) {
$photos = import_profile_photo($vcard['photo'],local_user(),$contact_id);

$r = q("UPDATE `contact` SET `photo` = '%s',
`thumb` = '%s',
`thumb` = '%s',
`micro` = '%s',
`name-date` = '%s',
`uri-date` = '%s',
`avatar-date` = '%s'
@@ -130,6 +131,7 @@ function follow_post(&$a) {
",
dbesc($photos[0]),
dbesc($photos[1]),
dbesc($photos[2]),
dbesc(datetime_convert()),
dbesc(datetime_convert()),
dbesc(datetime_convert()),


+ 8
- 3
mod/photo.php View File

@@ -16,15 +16,22 @@ function photo_init(&$a) {
return; // NOTREACHED
}

$default = 'images/default-profile.jpg';

if(isset($type)) {
switch($type) {

case 'profile':
$resolution = 4;
break;
case 'micro':
$resolution = 6;
$default = 'images/default-profile-mm.jpg';
break;
case 'avatar':
default:
$resolution = 5;
$default = 'images/default-profile-sm.jpg';
break;
}

@@ -38,9 +45,7 @@ function photo_init(&$a) {
$data = $r[0]['data'];
}
if(! isset($data)) {
$data = file_get_contents(($resolution == 5)
? 'images/default-profile-sm.jpg'
: 'images/default-profile.jpg');
$data = file_get_contents($default);
}
}
else {


+ 3
- 2
mod/photos.php View File

@@ -312,9 +312,9 @@ function photos_post(&$a) {
}
if($profile) {
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
$taginfo[] = array($newname,$profile,$notify,null);
$taginfo[] = array($newname,$profile,$notify,null,$str_tags .= '@[url=' . $profile . ']' . $newname . '[/url]');
if(strlen($str_tags))
$str_tags .= ',';
$profile = str_replace(',','%2c',$profile);
@@ -384,6 +384,7 @@ function photos_post(&$a) {
$arr['verb'] = ACTIVITY_TAG;
$arr['object-type'] = ACTIVITY_OBJ_PERSON;
$arr['target-type'] = ACTIVITY_OBJ_PHOTO;
$arr['tag'] = $tagged[4];
$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]' ;


+ 7
- 0
mod/profile_photo.php View File

@@ -68,6 +68,13 @@ function profile_photo_post(&$a) {
if($r === false)
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

$r = q("UPDATE `photo` SET `profile` = 0 WHERE `profile` = 1 AND `resource-id` != '%s' AND `uid` = %d",


+ 3
- 2
mod/register.php View File

@@ -161,15 +161,16 @@ function register_post(&$a) {
intval($newuid));
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` )
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),
datetime_convert(),
dbesc($username),
dbesc($nickname),
dbesc($a->get_baseurl() . "/photo/profile/{$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() . "/dfrn_request/$nickname"),
dbesc($a->get_baseurl() . "/dfrn_notify/$nickname"),


+ 29
- 1
update.php View File

@@ -101,4 +101,32 @@ function update_1012() {
function update_1013() {
q("ALTER TABLE `item` ADD `target-type` CHAR( 255 ) NOT NULL
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…
Cancel
Save