diff options
-rw-r--r-- | admin/include/functions_metadata.php | 6 | ||||
-rw-r--r-- | install/db/96-database.php | 46 | ||||
-rw-r--r-- | install/piwigo_structure-mysql.sql | 2 | ||||
-rw-r--r-- | picture.php | 2 |
4 files changed, 53 insertions, 3 deletions
diff --git a/admin/include/functions_metadata.php b/admin/include/functions_metadata.php index 953c80b7d..1bbd87e8f 100644 --- a/admin/include/functions_metadata.php +++ b/admin/include/functions_metadata.php @@ -89,7 +89,11 @@ function get_sync_exif_data($file) { if (in_array($pwg_key, array('date_creation', 'date_available'))) { - if (preg_match('/^(\d{4}).(\d{2}).(\d{2})/', $value, $matches)) + if (preg_match('/^(\d{4}).(\d{2}).(\d{2}) (\d{2}).(\d{2}).(\d{2})/', $value, $matches)) + { + $exif[$pwg_key] = $matches[1].'-'.$matches[2].'-'.$matches[3].' '.$matches[4].':'.$matches[5].':'.$matches[6]; + } + elseif (preg_match('/^(\d{4}).(\d{2}).(\d{2})/', $value, $matches)) { $exif[$pwg_key] = $matches[1].'-'.$matches[2].'-'.$matches[3]; } diff --git a/install/db/96-database.php b/install/db/96-database.php new file mode 100644 index 000000000..19cbfa741 --- /dev/null +++ b/install/db/96-database.php @@ -0,0 +1,46 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based photo gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008-2011 Piwigo Team http://piwigo.org | +// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net | +// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick | +// +-----------------------------------------------------------------------+ +// | This program is free software; you can redistribute it and/or modify | +// | it under the terms of the GNU General Public License as published by | +// | the Free Software Foundation | +// | | +// | This program is distributed in the hope that it will be useful, but | +// | WITHOUT ANY WARRANTY; without even the implied warranty of | +// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | +// | General Public License for more details. | +// | | +// | You should have received a copy of the GNU General Public License | +// | along with this program; if not, write to the Free Software | +// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, | +// | USA. | +// +-----------------------------------------------------------------------+ + +if (!defined('PHPWG_ROOT_PATH')) +{ + die('Hacking attempt!'); +} + +$upgrade_description = 'add time in images.date_creation column'; + +// Only MySQL is concerned, other DB engines are already "timestamp" +if ('mysql' == $conf['dblayer']) +{ + $query = ' +ALTER TABLE '.IMAGES_TABLE.' + MODIFY date_creation datetime +;'; + pwg_query($query); +} + +echo +"\n" +. $upgrade_description +."\n" +; +?>
\ No newline at end of file diff --git a/install/piwigo_structure-mysql.sql b/install/piwigo_structure-mysql.sql index f9e01ddad..74528ec6b 100644 --- a/install/piwigo_structure-mysql.sql +++ b/install/piwigo_structure-mysql.sql @@ -176,7 +176,7 @@ CREATE TABLE `piwigo_images` ( `id` mediumint(8) unsigned NOT NULL auto_increment, `file` varchar(255) binary NOT NULL default '', `date_available` datetime NOT NULL default '0000-00-00 00:00:00', - `date_creation` date default NULL, + `date_creation` datetime default NULL, `tn_ext` varchar(4) default '', `name` varchar(255) default NULL, `comment` text, diff --git a/picture.php b/picture.php index becfb6dde..5e58bba9a 100644 --- a/picture.php +++ b/picture.php @@ -859,7 +859,7 @@ if (!empty($picture['current']['date_creation'])) 'chronology_field'=>'created', 'chronology_style'=>'monthly', 'chronology_view'=>'list', - 'chronology_date' => explode('-', $picture['current']['date_creation']) + 'chronology_date' => explode('-', substr($picture['current']['date_creation'], 0, 10)) ) ); $infos['INFO_CREATION_DATE'] = |