From a8938827898ed40d35f25b055a72a41a2c1567ef Mon Sep 17 00:00:00 2001 From: rvelices Date: Sat, 18 Feb 2012 20:46:46 +0000 Subject: - multisize thumb longest side can be smaller than the square size - remove unused css, shorten/optimize php called very often (at least theoretically should be faster) git-svn-id: http://piwigo.org/svn/trunk@13240 68402e56-0260-453c-a942-63ccdbb3a9ee --- admin.php | 4 +-- admin/comments.php | 1 - admin/derivatives.php | 40 ++++++++++++++++------ include/functions.inc.php | 59 ++++++--------------------------- include/functions_category.inc.php | 7 +--- include/functions_html.inc.php | 8 ++--- include/functions_url.inc.php | 68 ++++++++++++++++++-------------------- include/functions_user.inc.php | 23 ------------- include/section_init.inc.php | 6 +++- include/template.class.php | 4 +-- notification.php | 23 +++++++++++++ themes/default/theme.css | 3 +- 12 files changed, 110 insertions(+), 136 deletions(-) diff --git a/admin.php b/admin.php index 4b914eae9..f15b9ab0e 100644 --- a/admin.php +++ b/admin.php @@ -245,10 +245,8 @@ if ( 'site_manager', // delete site 'site_update', // ?only POST 'cat_list', // delete cat - 'album', // delete cat; public/private; lock/unlock, permissions 'cat_move', // ?only POST 'cat_options', // ?only POST; public/private; lock/unlock - 'photo', 'picture_modify', // ?only POST; associate/dissociate 'user_perm', 'group_perm', @@ -257,6 +255,8 @@ if ( ) or ( !empty($_POST) and in_array($page['page'], array( + 'photo', + 'album', // public/private; lock/unlock, permissions 'batch_manager', // associate/dissociate; delete; set level 'user_list', // group assoc; user level ) diff --git a/admin/comments.php b/admin/comments.php index e54f13421..5e8a6c4d2 100644 --- a/admin/comments.php +++ b/admin/comments.php @@ -126,7 +126,6 @@ while ($row = pwg_db_fetch_assoc($result)) array( 'id'=>$row['image_id'], 'path'=>$row['path'], - 'tn_ext'=>@$row['tn_ext'] ) ); if (empty($row['author_id'])) diff --git a/admin/derivatives.php b/admin/derivatives.php index 556ff7fec..283dceb72 100644 --- a/admin/derivatives.php +++ b/admin/derivatives.php @@ -52,16 +52,36 @@ if ( isset($_POST['d']) ) if (!$pderivative['enabled']) continue; - $v = intval($pderivative['w']); - if ($v<=0 || $v<=$prev_w) - { - $errors[$type]['w'] = '>'.$prev_w; - } - $v = intval($pderivative['h']); - if ($v<=0 || $v<=$prev_h) - { - $errors[$type]['h'] = '>'.$prev_h; - } + if ($type==IMG_THUMB) + { + $w = intval($pderivative['w']); + if ($w<=0) + { + $errors[$type]['w'] = '>0'; + } + $h = intval($pderivative['h']); + if ($h<=0) + { + $errors[$type]['h'] = '>0'; + } + if (max($w,$h) <= $prev_w) + { + $errors[$type]['w'] = $errors[$type]['h'] = '>'.$prev_w; + } + } + else + { + $v = intval($pderivative['w']); + if ($v<=0 || $v<=$prev_w) + { + $errors[$type]['w'] = '>'.$prev_w; + } + $v = intval($pderivative['h']); + if ($v<=0 || $v<=$prev_h) + { + $errors[$type]['h'] = '>'.$prev_h; + } + } $v = intval($pderivative['crop']); if ($v<0 || $v>100) { diff --git a/include/functions.inc.php b/include/functions.inc.php index b977a6ef4..e1f74baf8 100644 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -816,22 +816,6 @@ function get_element_path($element_info) } -/* Returns the PATH to the thumbnail to be displayed. If the element does not - * have a thumbnail, the default mime image path is returned. The PATH can be - * used in the php script, but not sent to the browser. - * @param array element_info assoc array containing element info from db - * at least 'path', 'tn_ext' and 'id' should be present - */ -function get_thumbnail_path($element_info) -{ - $path = get_thumbnail_location($element_info); - if ( !url_is_remote($path) ) - { - $path = PHPWG_ROOT_PATH.$path; - } - return $path; -} - /* Returns the URL of the thumbnail to be displayed. If the element does not * have a thumbnail, the default mime image url is returned. The URL can be * sent to the browser, but not used in the php script. @@ -843,32 +827,6 @@ function get_thumbnail_url($element_info) return DerivativeImage::thumb_url($element_info); } -/* returns the relative path of the thumnail with regards to to the root -of piwigo (not the current page!).This function is not intended to be -called directly from code.*/ -function get_thumbnail_location($element_info) -{ - global $conf; - if ( !empty( $element_info['tn_ext'] ) ) - { - $path = substr_replace( - get_filename_wo_extension($element_info['path']), - '/'.$conf['dir_thumbnail'].'/'.$conf['prefix_thumbnail'], - strrpos($element_info['path'],'/'), - 1 - ); - $path.= '.'.$element_info['tn_ext']; - } - else - { - $path = get_themeconf('mime_icon_dir') - .strtolower(get_extension($element_info['path'])).'.png'; - // plugins want another location ? - $path = trigger_event( 'get_thumbnail_location', $path, $element_info); - } - return $path; -} - /** * fill the current user caddie with given elements, if not already in * caddie @@ -920,16 +878,19 @@ function get_name_from_file($filename) * @param string key * @return string */ -function l10n($key, $textdomain='messages') +function l10n($key) { global $lang, $conf; - if ($conf['debug_l10n'] and !isset($lang[$key]) and !empty($key)) - { - trigger_error('[l10n] language key "'.$key.'" is not defined', E_USER_WARNING); - } - - return isset($lang[$key]) ? $lang[$key] : $key; + if ( ($val=@$lang[$key]) == null) + { + if ($conf['debug_l10n'] and !isset($lang[$key]) and !empty($key)) + { + trigger_error('[l10n] language key "'.$key.'" is not defined', E_USER_WARNING); + } + $val = $key; + } + return $val; } /** diff --git a/include/functions_category.inc.php b/include/functions_category.inc.php index 5d66e75c5..9685d225b 100644 --- a/include/functions_category.inc.php +++ b/include/functions_category.inc.php @@ -388,12 +388,7 @@ function global_rank_compare($a, $b) function rank_compare($a, $b) { - if ($a['rank'] == $b['rank']) - { - return 0; - } - - return ($a['rank'] < $b['rank']) ? -1 : 1; + return $a['rank'] - $b['rank']; } /** diff --git a/include/functions_html.inc.php b/include/functions_html.inc.php index a546f6880..84a4a8f05 100644 --- a/include/functions_html.inc.php +++ b/include/functions_html.inc.php @@ -294,17 +294,17 @@ function name_compare($a, $b) function tag_alpha_compare($a, $b) { - global $page; + global $cache; foreach (array($a, $b) as $tag) { - if (!isset($page[__FUNCTION__.'_cache'][ $tag['name'] ])) + if (!isset($cache[__FUNCTION__][ $tag['name'] ])) { - $page[__FUNCTION__.'_cache'][ $tag['name'] ] = strtolower(str2url($tag['name'])); + $cache[__FUNCTION__][ $tag['name'] ] = strtolower(str2url($tag['name'])); } } - return strcmp($page[__FUNCTION__.'_cache'][ $a['name'] ], $page[__FUNCTION__.'_cache'][ $b['name'] ]); + return strcmp($cache[__FUNCTION__][ $a['name'] ], $cache[__FUNCTION__][ $b['name'] ]); } /** diff --git a/include/functions_url.inc.php b/include/functions_url.inc.php index 1b6c1daff..fdaaca589 100644 --- a/include/functions_url.inc.php +++ b/include/functions_url.inc.php @@ -30,22 +30,15 @@ function get_root_url() { global $page; - if ( isset($page['root_path']) ) - { - $root_url = $page['root_path']; - } - else + if ( ($root_url = @$page['root_path']) == null ) {// TODO - add HERE the possibility to call PWG functions from external scripts $root_url = PHPWG_ROOT_PATH; + if ( strncmp($root_url, './', 2) == 0 ) + { + return substr($root_url, 2); + } } - if ( strncmp($root_url, './', 2) != 0 ) - { - return $root_url; - } - else - { - return (string)substr($root_url, 2); - } + return $root_url; } /** @@ -307,28 +300,31 @@ function make_section_in_url($params) { global $conf; $section_string = ''; - - $section_of = array( - 'category' => 'categories', - 'tags' => 'tags', - 'list' => 'list', - 'search' => 'search', - ); - - foreach ($section_of as $param => $section) - { - if (isset($params[$param])) - { - $params['section'] = $section; - } - } - - if (!isset($params['section'])) - { - $params['section'] = 'none'; - } - - switch($params['section']) + $section = @$params['section']; + if (!isset($section)) + { + $section_of = array( + 'category' => 'categories', + 'tags' => 'tags', + 'list' => 'list', + 'search' => 'search', + ); + + foreach ($section_of as $param => $s) + { + if (isset($params[$param])) + { + $section = $s; + } + } + + if (!isset($section)) + { + $section = 'none'; + } + } + + switch($section) { case 'categories' : { @@ -420,7 +416,7 @@ function make_section_in_url($params) } default : { - $section_string.= '/'.$params['section']; + $section_string.= '/'.$section; } } diff --git a/include/functions_user.inc.php b/include/functions_user.inc.php index 9c25ed1d4..f0006a55e 100644 --- a/include/functions_user.inc.php +++ b/include/functions_user.inc.php @@ -806,29 +806,6 @@ SELECT } } -/** - * search an available feed_id - * - * @return string feed identifier - */ -function find_available_feed_id() -{ - while (true) - { - $key = generate_key(50); - $query = ' -SELECT COUNT(*) - FROM '.USER_FEED_TABLE.' - WHERE id = \''.$key.'\' -;'; - list($count) = pwg_db_fetch_row(pwg_query($query)); - if (0 == $count) - { - return $key; - } - } -} - /* * Returns a array with default user value * diff --git a/include/section_init.inc.php b/include/section_init.inc.php index 71b53025a..fa51fa7fc 100644 --- a/include/section_init.inc.php +++ b/include/section_init.inc.php @@ -64,10 +64,14 @@ else // the $_GET keys are not protected in include/common.inc.php, only the values $rewritten = pwg_db_real_escape_string($rewritten); - $page['root_path'] = PHPWG_ROOT_PATH; } +if ( strncmp($page['root_path'], './', 2) == 0 ) +{ + $page['root_path'] = substr($page['root_path'], 2); +} + // deleting first "/" if displayed $tokens = explode('/', ltrim($rewritten, '/') ); // $tokens = array( diff --git a/include/template.class.php b/include/template.class.php index ea70549f9..c75c67fb6 100644 --- a/include/template.class.php +++ b/include/template.class.php @@ -683,7 +683,7 @@ var s,after = document.getElementsByTagName(\'script\')[document.getElementsByTa $ret = $script->path; else { - $ret = embellish_url(get_root_url().$script->path); + $ret = get_root_url().$script->path; if ($script->version!==false) { $ret.= '?v'. ($script->version ? $script->version : PHPWG_VERSION); @@ -691,7 +691,7 @@ var s,after = document.getElementsByTagName(\'script\')[document.getElementsByTa } // trigger the event for eventual use of a cdn $ret = trigger_event('combined_script', $ret, $script); - return $ret; + return embellish_url($ret); } function block_footer_script($params, $content, &$smarty, &$repeat) diff --git a/notification.php b/notification.php index beb91b4da..0be9aa8b7 100644 --- a/notification.php +++ b/notification.php @@ -28,6 +28,29 @@ define('PHPWG_ROOT_PATH','./'); include_once( PHPWG_ROOT_PATH.'include/common.inc.php' ); +/** + * search an available feed_id + * + * @return string feed identifier + */ +function find_available_feed_id() +{ + while (true) + { + $key = generate_key(50); + $query = ' +SELECT COUNT(*) + FROM '.USER_FEED_TABLE.' + WHERE id = \''.$key.'\' +;'; + list($count) = pwg_db_fetch_row(pwg_query($query)); + if (0 == $count) + { + return $key; + } + } +} + // +-----------------------------------------------------------------------+ // | Check Access and exit when user status is not ok | // +-----------------------------------------------------------------------+ diff --git a/themes/default/theme.css b/themes/default/theme.css index f7a56f9e2..fb6641223 100644 --- a/themes/default/theme.css +++ b/themes/default/theme.css @@ -294,8 +294,7 @@ TD.calDayHead { -moz-border-radius: 4px; /* round corners with Geko */ -webkit-border-radius: 4px; /* Safari webkit project */ } -.thumbnails .wrap2 A, -.thumbnails LABEL { +.thumbnails .wrap2 A { display: block; border-bottom: 0; } -- cgit v1.2.3