Skip to content

Commit

Permalink
images API: Improve _metaFieldConvert() for strict types with mktime
Browse files Browse the repository at this point in the history
  • Loading branch information
ophian committed Nov 18, 2023
1 parent 27526f5 commit 19aeb49
Showing 1 changed file with 7 additions and 5 deletions.
12 changes: 7 additions & 5 deletions include/functions_images.inc.php
Original file line number Diff line number Diff line change
Expand Up @@ -4916,20 +4916,22 @@ function serendipity_metaFieldConvert(&$item, $type) {
break;

case 'date2':
$parts = preg_split('&[ :]&', $item);
return mktime((int)$parts[3], (int)$parts[4], (int)$parts[5], $parts[1], $parts[2], $parts[0]);
$parts = array_map('intval', preg_split('&[ :]&', $item));
return mktime($parts[3], $parts[4], $parts[5], $parts[1], $parts[2], $parts[0]);
break;

case 'IPTCdate':
preg_match('@(\d{4})(\d{2})(\d{2})@', $item, $parts);
return mktime(0, 0, 0, intval($parts[2]), intval($parts[3]), intval($parts[1]));
$parts = array_map('intval', $parts);
return mktime(0, 0, 0, $parts[2], $parts[3], $parts[1]);
break;

case 'IPTCtime':
preg_match('@(\d{2})(\d{2})(\d{2})([\+-])(\d{2})(\d{2})@', $item, $parts);
if (array_keys($parts)) {
$time = serendipity_strftime('%H:%M', mktime(intval($parts[1]), intval($parts[2]), intval($parts[3]), 0, 0, 0));
$timezone = serendipity_strftime('%H:%M', mktime(intval($parts[5]), intval($parts[6]), 0, 0, 0, 0));
$parts = array_map('intval', $parts);
$time = serendipity_strftime('%H:%M', mktime($parts[1], $parts[2], $parts[3], 0, 0, 0));
$timezone = serendipity_strftime('%H:%M', mktime($parts[5], $parts[6], 0, 0, 0, 0));
return $time . ' GMT' . $parts[4] . $timezone;
}
break;
Expand Down

0 comments on commit 19aeb49

Please sign in to comment.