3 * Nucleus: PHP/MySQL Weblog CMS (http://nucleuscms.org/)
4 * Copyright (C) 2002-2012 The Nucleus Group
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
10 * (see nucleus/documentation/index.html#license for more info)
13 * @license http://nucleuscms.org/license.txt GNU General Public License
14 * @copyright Copyright (C) 2002-2012 The Nucleus Group
15 * @version $Id: upgrade2.0.php 1388 2009-07-18 06:31:28Z shizuki $
18 function upgrade_do400()
20 if ( upgrade_checkinstall(400) )
22 return "already installed";
25 // Give user warning if they are running old version of PHP
26 if ( phpversion() < '5' )
28 echo 'WARNING: You are running NucleusCMS on a older version of PHP that is no longer supported by NucleusCMS. Please upgrade to PHP5!';
32 /* change Language setting to Locale */
33 if ( upgrade_checkIfCVExists('Language') )
35 $language = DB::getValue("SELECT value FROM " . sql_table('config') . " WHERE name='Language'");
36 $locale = i18n::convert_old_language_file_name_to_locale($language);
39 $query = 'INSERT INTO ' . sql_table('config') . " VALUES ('Locale','{$locale}')";
40 upgrade_query('Creating Locale config value', $query);
42 $query = 'DELETE FROM ' . sql_table('config') . " WHERE name='Language'";
43 upgrade_query("Removing Language config value", $query);
47 /* change AdminCSS setting */
48 if ( upgrade_checkIfCVExists('AdminCSS') )
50 $query = 'UPDATE ' . sql_table('config') . " SET value='original' WHERE name='AdminCSS'";
51 upgrade_query('Changing AdminCSS config value', $query);
54 /* create AdminSkin setting */
55 if ( !upgrade_checkIfCVExists('AdminSkin') )
57 $query = 'INSERT INTO ' . sql_table('config') . " VALUES ('AdminSkin','0')";
58 upgrade_query('Creating AdminSkin config value', $query);
61 /* create BookmarkletSkin setting */
62 if ( !upgrade_checkIfCVExists('BookmarkletSkin') )
64 $query = 'INSERT INTO ' . sql_table('config') . " VALUES ('BookmarkletSkin','0')";
65 upgrade_query('Creating BookmarkletSkin config value', $query);
70 /* changing the member table to rename deflang to mlocale */
71 if ( !upgrade_checkIfColumnExists('member','mlocale') )
73 $query = 'ALTER TABLE '.sql_table('member') . " CHANGE deflang mlocale varchar(20) NOT NULL default '' AFTER mcookiekey";
74 upgrade_query("Renaming deflang column for members to mlocale", $query);
77 /* changing the member table to add madminskin column */
78 if ( !upgrade_checkIfColumnExists('member','madminskin') )
80 $query = 'ALTER TABLE '.sql_table('member') . " ADD madminskin tinyint(2) NOT NULL default '0'";
81 upgrade_query("Adding a new row for the adminskin member option", $query);
84 /* changing the member table to add mbkmklt column */
85 if ( !upgrade_checkIfColumnExists('member','mbkmklt') )
87 $query = 'ALTER TABLE '.sql_table('member') . " ADD mbkmklt tinyint(2) NOT NULL default '0'";
88 upgrade_query("Adding a new row for the bkmklt member option", $query);
91 // all member default value set
92 $res = DB::getResult("SELECT * FROM " . sql_table('member'));
93 foreach ( $res as $row )
95 $locale = i18n::convert_old_language_file_name_to_locale($row['mlocale']);
98 $query = 'UPDATE $s SET mlocale=$s WHERE mnumber=$d';
99 $query = sprintf($query, sql_table('member'), DB::quoteValue($locale), $row['mnumber']);
100 upgrade_query('Changing mlocale value', $query);
105 // update database version
106 update_version('400');