diff options
Diffstat (limited to 'mod')
-rw-r--r-- | mod/photos.php | 77 |
1 files changed, 41 insertions, 36 deletions
diff --git a/mod/photos.php b/mod/photos.php index 4b392a288..e484880e3 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -253,51 +253,56 @@ function photos_post(&$a) { intval($page_owner_uid) ); - if($width > 1024 || $height > 1024) { + if($width > 1024 || $height > 1024) $ph->scaleImage(1024); - $width = $ph->getWidth(); - $height = $ph->getHeight(); - - $x = q("update photo set data = '%s', height = %d, width = %d where `resource_id` = '%s' and uid = %d and scale = 1", - dbescbin($ph->imageString()), - intval($height), - intval($width), - dbesc($resource_id), - intval($page_owner_uid) - ); - } - if($width > 640 || $height > 640) { + $width = $ph->getWidth(); + $height = $ph->getHeight(); + + $x = q("update photo set data = '%s', height = %d, width = %d where `resource_id` = '%s' and uid = %d and scale = 1", + dbescbin($ph->imageString()), + intval($height), + intval($width), + dbesc($resource_id), + intval($page_owner_uid) + ); + + + if($width > 640 || $height > 640) $ph->scaleImage(640); - $width = $ph->getWidth(); - $height = $ph->getHeight(); - - $x = q("update photo set data = '%s', height = %d, width = %d where `resource_id` = '%s' and uid = %d and scale = 2", - dbescbin($ph->imageString()), - intval($height), - intval($width), - dbesc($resource_id), - intval($page_owner_uid) - ); - } - if($width > 320 || $height > 320) { + $width = $ph->getWidth(); + $height = $ph->getHeight(); + + $x = q("update photo set data = '%s', height = %d, width = %d where `resource_id` = '%s' and uid = %d and scale = 2", + dbescbin($ph->imageString()), + intval($height), + intval($width), + dbesc($resource_id), + intval($page_owner_uid) + ); + + + if($width > 320 || $height > 320) $ph->scaleImage(320); - $width = $ph->getWidth(); - $height = $ph->getHeight(); - - $x = q("update photo set data = '%s', height = %d, width = %d where `resource_id` = '%s' and uid = %d and scale = 3", - dbescbin($ph->imageString()), - intval($height), - intval($width), - dbesc($resource_id), - intval($page_owner_uid) - ); - } + + $width = $ph->getWidth(); + $height = $ph->getHeight(); + + $x = q("update photo set data = '%s', height = %d, width = %d where `resource_id` = '%s' and uid = %d and scale = 3", + dbescbin($ph->imageString()), + intval($height), + intval($width), + dbesc($resource_id), + intval($page_owner_uid) + ); } } } + // @FIXME This query includes data of all thumbnails and could probably + // be made much more memory efficient. + $p = q("SELECT * FROM `photo` WHERE `resource_id` = '%s' AND `uid` = %d ORDER BY `scale` DESC", dbesc($resource_id), intval($page_owner_uid) |