diff options
author | plegall <plg@piwigo.org> | 2006-04-20 19:31:12 +0000 |
---|---|---|
committer | plegall <plg@piwigo.org> | 2006-04-20 19:31:12 +0000 |
commit | c64da384ea354a194cfdcbd552340261b5d547d9 (patch) | |
tree | cb0f49c53ec9c918e453b7f0dbfed757121a6743 /upgrade.php | |
parent | c4b59049c205677432e69c585e003c5bea1c85e6 (diff) |
partial merge -r1173:1174 from branch-1_6 to trunk: new configuration
parameter die_on_sql_error (upgrade.php and install/upgrade_*.php not
concerned on BSF)
partial merge -r1208:1209 from branch-1_6 to trunk (only bug fix on
incorrect insertion of complex upgrade identifiers)
deletions: upgrade.php and all install/upgrade_*.php because these script
are never up to date on BSF. Anyway, they are only required on a stable
branch.
git-svn-id: http://piwigo.org/svn/trunk@1221 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'upgrade.php')
-rw-r--r-- | upgrade.php | 213 |
1 files changed, 0 insertions, 213 deletions
diff --git a/upgrade.php b/upgrade.php deleted file mode 100644 index 8871ebc88..000000000 --- a/upgrade.php +++ /dev/null @@ -1,213 +0,0 @@ -<?php -// +-----------------------------------------------------------------------+ -// | PhpWebGallery - a PHP based picture gallery | -// | Copyright (C) 2002-2003 Pierrick LE GALL - pierrick@phpwebgallery.net | -// | Copyright (C) 2003-2006 PhpWebGallery Team - http://phpwebgallery.net | -// +-----------------------------------------------------------------------+ -// | branch : BSF (Best So Far) -// | file : $RCSfile$ -// | last update : $Date$ -// | last modifier : $Author$ -// | revision : $Revision$ -// +-----------------------------------------------------------------------+ -// | 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. | -// +-----------------------------------------------------------------------+ - -define('PHPWG_ROOT_PATH', './'); - -include_once(PHPWG_ROOT_PATH.'include/functions.inc.php'); -include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); -include(PHPWG_ROOT_PATH.'include/template.php'); - -include(PHPWG_ROOT_PATH.'include/mysql.inc.php'); - -// +-----------------------------------------------------------------------+ -// | Check Access and exit when it is not ok | -// +-----------------------------------------------------------------------+ -check_upgrade(); - -// concerning upgrade, we use the default users table -$conf['users_table'] = $prefixeTable.'users'; - -include_once(PHPWG_ROOT_PATH.'include/constants.php'); -define('PREFIX_TABLE', $prefixeTable); - -$conf['show_queries'] = false; - -// Database connection -mysql_connect( $cfgHote, $cfgUser, $cfgPassword ) -or die ( "Could not connect to database server" ); -mysql_select_db( $cfgBase ) -or die ( "Could not connect to database" ); -// +-----------------------------------------------------------------------+ -// | tricky output | -// +-----------------------------------------------------------------------+ -echo '<!-- This is an HTML comment given in order to make IE outputs'; -echo ' the code.'."\n"; -echo ' Indeed, IE doesn\'t start to send output until a limit'; -echo ' of XXX bytes '."\n"; -echo str_repeat( ' ', 80 )."\n"; -echo str_repeat( ' ', 80 )."\n"; -echo str_repeat( ' ', 80 )."\n"; -echo '-->'."\n"; -flush(); -// +-----------------------------------------------------------------------+ -// | functions | -// +-----------------------------------------------------------------------+ - -/** - * loads an sql file and executes all queries - * - * Before executing a query, $replaced is... replaced by $replacing. This is - * useful when the SQL file contains generic words. Drop table queries are - * not executed. - * - * @param string filepath - * @param string replaced - * @param string replacing - * @return void - */ -function execute_sqlfile($filepath, $replaced, $replacing) -{ - $sql_lines = file($filepath); - $query = ''; - foreach ($sql_lines as $sql_line) - { - $sql_line = trim($sql_line); - if (preg_match('/(^--|^$)/', $sql_line)) - { - continue; - } - $query.= ' '.$sql_line; - // if we reached the end of query, we execute it and reinitialize the - // variable "query" - if (preg_match('/;$/', $sql_line)) - { - $query = trim($query); - $query = str_replace($replaced, $replacing, $query); - // we don't execute "DROP TABLE" queries - if (!preg_match('/^DROP TABLE/i', $query)) - { - mysql_query($query); - } - $query = ''; - } - } -} -// +-----------------------------------------------------------------------+ -// | template initialization | -// +-----------------------------------------------------------------------+ - -$template = new Template(PHPWG_ROOT_PATH.'template/yoga'); -$template->set_filenames(array('upgrade'=>'upgrade.tpl')); -$template->assign_vars(array('RELEASE'=>PHPWG_VERSION)); - -// +-----------------------------------------------------------------------+ -// | versions upgradable | -// +-----------------------------------------------------------------------+ -$versions = array(); -$path = PHPWG_ROOT_PATH.'install'; -if ($contents = opendir($path)) -{ - while (($node = readdir($contents)) !== false) - { - if (is_file($path.'/'.$node) - and preg_match('/^upgrade_(.*?)\.php$/', $node, $match)) - { - array_push($versions, $match[1]); - } - } -} -natcasesort($versions); -// +-----------------------------------------------------------------------+ -// | upgrade choice | -// +-----------------------------------------------------------------------+ -if (!isset($_GET['version'])) -{ - $template->assign_block_vars('choices', array()); - foreach ($versions as $version) - { - $template->assign_block_vars( - 'choices.choice', - array( - 'URL' => PHPWG_ROOT_PATH.'upgrade.php?version='.$version, - 'VERSION' => $version - )); - } -} -// +-----------------------------------------------------------------------+ -// | upgrade launch | -// +-----------------------------------------------------------------------+ -else -{ - $upgrade_file = $path.'/upgrade_'.$_GET['version'].'.php'; - if (is_file($upgrade_file)) - { - $page['upgrade_start'] = get_moment(); - include($upgrade_file); - $page['upgrade_end'] = get_moment(); - - $template->assign_block_vars( - 'upgrade', - array( - 'VERSION' => $_GET['version'], - 'TOTAL_TIME' => get_elapsed_time($page['upgrade_start'], - $page['upgrade_end']), - 'SQL_TIME' => number_format($page['queries_time'], 3, '.', ' ').' s', - 'NB_QUERIES' => $page['count_queries'] - )); - - if (!isset($infos)) - { - $infos = array(); - } - array_push( - $infos, - '[security] delete files "upgrade.php", "install.php" and "install" -directory' - ); - - array_push( - $infos, - 'in include/mysql.inc.php, remove -<pre style="background-color:lightgray"> -define(\'PHPWG_IN_UPGRADE\', true); -</pre>' - ); - - array_push( - $infos, - 'Perform a maintenance check in [Administration>General>Maintenance] -if you encounter any problem.' - ); - - $template->assign_block_vars('upgrade.infos', array()); - - foreach ($infos as $info) - { - $template->assign_block_vars('upgrade.infos.info', - array('CONTENT' => $info)); - } - } - else - { - die('Hacking attempt'); - } -} -// +-----------------------------------------------------------------------+ -// | sending html code | -// +-----------------------------------------------------------------------+ -$template->pparse('upgrade'); -?>
\ No newline at end of file |