X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fphotos.php;h=592a138325e7da15b6ad892f0ff30eb7edddee2e;hb=5afedb28d4387eef580f7a6602016cc676d8d9e1;hp=7cdd14bf6d3e586894748de06292c933f7173058;hpb=30a77cc10a21728efdca48e6cd3cb04586b1df23;p=friendica.git diff --git a/include/photos.php b/include/photos.php index 7cdd14bf6d..592a138325 100644 --- a/include/photos.php +++ b/include/photos.php @@ -3,16 +3,16 @@ * @file include/photos.php * @brief Functions related to photo handling. */ - -use \Friendica\Core\Config; -use \Friendica\Core\PConfig; +use Friendica\Core\Cache; +use Friendica\Core\Config; +use Friendica\Core\PConfig; function getGps($exifCoord, $hemi) { $degrees = count($exifCoord) > 0 ? gps2Num($exifCoord[0]) : 0; $minutes = count($exifCoord) > 1 ? gps2Num($exifCoord[1]) : 0; $seconds = count($exifCoord) > 2 ? gps2Num($exifCoord[2]) : 0; - $flip = ($hemi == 'W' or $hemi == 'S') ? -1 : 1; + $flip = ($hemi == 'W' || $hemi == 'S') ? -1 : 1; return floatval($flip * ($degrees + ($minutes / 60) + ($seconds / 3600))); } @@ -44,12 +44,12 @@ function photo_albums($uid, $update = false) { $key = "photo_albums:".$uid.":".local_user().":".remote_user(); $albums = Cache::get($key); - if (is_null($albums) OR $update) { + if (is_null($albums) || $update) { if (!Config::get('system', 'no_count', false)) { /// @todo This query needs to be renewed. It is really slow // At this time we just store the data in the cache - $albums = qu("SELECT COUNT(DISTINCT `resource-id`) AS `total`, `album` - FROM `photo` USE INDEX (`uid_album_created`) + $albums = q("SELECT COUNT(DISTINCT `resource-id`) AS `total`, `album`, ANY_VALUE(`created`) AS `created` + FROM `photo` WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s' $sql_extra GROUP BY `album` ORDER BY `created` DESC", intval($uid), @@ -58,10 +58,9 @@ function photo_albums($uid, $update = false) { ); } else { // This query doesn't do the count and is much faster - $albums = qu("SELECT DISTINCT(`album`), '' AS `total` - FROM `photo` USE INDEX (`uid_album_created`) - WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s' $sql_extra - GROUP BY `album` ORDER BY `created` DESC", + $albums = q("SELECT DISTINCT(`album`), '' AS `total` + FROM `photo` USE INDEX (`uid_album_scale_created`) + WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s' $sql_extra", intval($uid), dbesc('Contact Photos'), dbesc(t('Contact Photos'))