diff options
-rw-r--r-- | include/constants.php | 2 | ||||
-rw-r--r-- | install.php | 16 | ||||
-rw-r--r-- | install/db/85-database.php | 5 | ||||
-rw-r--r-- | install/db/90-database.php | 62 | ||||
-rw-r--r-- | install/piwigo_structure-mysql.sql | 12 |
5 files changed, 95 insertions, 2 deletions
diff --git a/include/constants.php b/include/constants.php index 26bf5b0f1..eb4611f32 100644 --- a/include/constants.php +++ b/include/constants.php @@ -104,5 +104,7 @@ if (!defined('OLD_PERMALINKS_TABLE')) define('OLD_PERMALINKS_TABLE', $prefixeTable.'old_permalinks'); if (!defined('THEMES_TABLE')) define('THEMES_TABLE', $prefixeTable.'themes'); +if (!defined('LANGUAGES_TABLE')) + define('LANGUAGES_TABLE', $prefixeTable.'languages'); ?>
\ No newline at end of file diff --git a/install.php b/install.php index 6e47bafe8..e1d7a96fe 100644 --- a/install.php +++ b/install.php @@ -273,11 +273,12 @@ if ( isset( $_POST['install'] )) $pwg_db_charset = 'utf8'; if ($dblayer=='mysql') { - $install_charset_collate = "DEFAULT CHARACTER SET $pwg_db_charset"; + $install_charset_collate = "DEFAULT CHARACTER SET $pwg_db_charset"; + pwg_query('SET NAMES "'.$pwg_db_charset.'"'); } else { - $install_charset_collate = ''; + $install_charset_collate = ''; } } else @@ -373,6 +374,17 @@ INSERT INTO '.$prefixeTable.'config (param,value,comment) \'a secret key specific to the gallery for internal use\');'; pwg_query($query); + // fill languages table + $inserts = array(); + foreach (get_languages('utf-8') as $language_code => $language_name) + { + $inserts[] = array( + 'id' => $language_code, + 'name' => $language_name, + ); + } + mass_inserts(LANGUAGES_TABLE, array('id', 'name'), $inserts); + // fill $conf global array load_conf_from_db(); diff --git a/install/db/85-database.php b/install/db/85-database.php index 97ed40f8a..16496abc1 100644 --- a/install/db/85-database.php +++ b/install/db/85-database.php @@ -36,6 +36,11 @@ CREATE TABLE ".PREFIX_TABLE."themes ( PRIMARY KEY (`id`) )"; +if (DB_CHARSET == 'utf8') +{ + $query .= " DEFAULT CHARACTER SET utf8"; +} + pwg_query($query); echo diff --git a/install/db/90-database.php b/install/db/90-database.php new file mode 100644 index 000000000..2daa931a1 --- /dev/null +++ b/install/db/90-database.php @@ -0,0 +1,62 @@ +<?php +// +-----------------------------------------------------------------------+ +// | Piwigo - a PHP based picture gallery | +// +-----------------------------------------------------------------------+ +// | Copyright(C) 2008-2010 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 a table to manage languages.'; + +$query = " +CREATE TABLE ".PREFIX_TABLE."languages ( + `id` varchar(64) NOT NULL default '', + `version` varchar(64) NOT NULL default '0', + `name` varchar(64) default NULL, + PRIMARY KEY (`id`) +)"; + +if (DB_CHARSET == 'utf8') +{ + $query .= " DEFAULT CHARACTER SET utf8"; +} + +pwg_query($query); + +// Fill table +$inserts = array(); +foreach (get_languages('utf-8') as $language_code => $language_name) +{ + $inserts[] = array( + 'id' => $language_code, + 'name' => $language_name, + ); +} +mass_inserts(PREFIX_TABLE.'languages', array('id', 'name'), $inserts); + +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 a187378b0..e9f0eb0dc 100644 --- a/install/piwigo_structure-mysql.sql +++ b/install/piwigo_structure-mysql.sql @@ -204,6 +204,18 @@ CREATE TABLE `piwigo_images` ( ) TYPE=MyISAM; -- +-- Table structure for table `piwigo_languages` +-- + +DROP TABLE IF EXISTS `piwigo_languages`; +CREATE TABLE `piwigo_languages` ( + `id` varchar(64) NOT NULL default '', + `version` varchar(64) NOT NULL default '0', + `name` varchar(64) default NULL, + PRIMARY KEY (`id`) +) TYPE=MyISAM; + +-- -- Table structure for table `piwigo_old_permalinks` -- |