- quick fix (maybe not the cleanest) of regression 2.0 -> 2.1 when displaying metadata on picture page (event called with different input)

git-svn-id: http://piwigo.org/svn/trunk@6473 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
rvelices
2010-06-06 10:13:42 +00:00
parent fd0f465c59
commit fbf4326d5a
2 changed files with 27 additions and 27 deletions

View File

@@ -117,24 +117,31 @@ function get_exif_data($filename, $map)
// Read EXIF data
if ($exif = @read_exif_data($filename))
{
foreach ($map as $key => $field)
{
if (strpos($field, ';') === false)
{
if (isset($exif[$field]))
{
$result[$key] = $exif[$field];
}
}
else
{
$tokens = explode(';', $field);
if (isset($exif[$tokens[0]][$tokens[1]]))
{
$result[$key] = $exif[$tokens[0]][$tokens[1]];
}
}
}
if ($map != null)
{
foreach ($map as $key => $field)
{
if (strpos($field, ';') === false)
{
if (isset($exif[$field]))
{
$result[$key] = $exif[$field];
}
}
else
{
$tokens = explode(';', $field);
if (isset($exif[$tokens[0]][$tokens[1]]))
{
$result[$key] = $exif[$tokens[0]][$tokens[1]];
}
}
}
}
else
{
$result = $exif;
}
}
return $result;

View File

@@ -29,18 +29,11 @@
include_once(PHPWG_ROOT_PATH.'/include/functions_metadata.inc.php');
if (($conf['show_exif']) and (function_exists('read_exif_data')))
{
$exif_mapping = array();
foreach ($conf['show_exif_fields'] as $field)
{
$exif_mapping[$field] = $field;
}
$exif = get_exif_data($picture['current']['image_path'], $exif_mapping);
$exif = get_exif_data($picture['current']['image_path'], null);
if (count($exif) == 0 and $picture['current']['has_high'])
{
$exif = get_exif_data($picture['current']['high_url'], $exif_mapping);
$exif = get_exif_data($picture['current']['high_url'], null);
}
if (count($exif) > 0)
{
$exif = trigger_event('format_exif_data', $exif, $picture['current'] );