- 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
This commit is contained in:
rvelices 2012-02-18 20:46:46 +00:00
parent 3ef9e856c3
commit a893882789
12 changed files with 107 additions and 133 deletions

View file

@ -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
)

View file

@ -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']))

View file

@ -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)
{

View file

@ -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;
}
/**

View file

@ -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'];
}
/**

View file

@ -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'] ]);
}
/**

View file

@ -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 = @$params['section'];
if (!isset($section))
{
$section_of = array(
'category' => 'categories',
'tags' => 'tags',
'list' => 'list',
'search' => 'search',
);
$section_of = array(
'category' => 'categories',
'tags' => 'tags',
'list' => 'list',
'search' => 'search',
);
foreach ($section_of as $param => $s)
{
if (isset($params[$param]))
{
$section = $s;
}
}
foreach ($section_of as $param => $section)
{
if (isset($params[$param]))
{
$params['section'] = $section;
}
}
if (!isset($section))
{
$section = 'none';
}
}
if (!isset($params['section']))
{
$params['section'] = 'none';
}
switch($params['section'])
switch($section)
{
case 'categories' :
{
@ -420,7 +416,7 @@ function make_section_in_url($params)
}
default :
{
$section_string.= '/'.$params['section'];
$section_string.= '/'.$section;
}
}

View file

@ -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
*

View file

@ -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(

View file

@ -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)

View file

@ -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 |
// +-----------------------------------------------------------------------+

View file

@ -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;
}