0byt3m1n1
Path:
/
data
/
applications
/
aps.bak
/
drupal
/
7.4-4
/
standard
/
scripts
/
[
Home
]
File: upgrade-app.php
<?php require_once('app-util.php'); require_once('file-util.php'); function find_schema_version($db_id) { mysql_db_connect(get_db_address($db_id), get_db_login($db_id), get_db_password($db_id), get_db_name($db_id)); $schema_id = 0; $result = mysql_query("SELECT `schema_version` FROM `".get_db_prefix($db_id)."system` WHERE `name`='system' AND `type`='module'"); if ($result) { $schema_id = mysql_result($result, 0); } if (!$schema_id) { $message = "Database is broken, DB schema ID can not be found! ". mysql_error(); exit(1); } if ($schema_id < 6053) { // Workaround for Drupal-6.14-3 schema version not updated $res = mysql_query("show create table `".get_db_prefix($db_id)."system`"); if ($res) { $row = mysql_fetch_assoc($res); $cTable = $row['Create Table']; if (preg_match("/KEY `type_name`/", $cTable)) { // In Drupal-6.14-3 schema version was not updated, so consider version by latest DB schema change $schema_id = 6053; } } } return $schema_id; } function upgrade_app($from_ver, $from_rel, $config_files, $db_ids, $psa_modify_hash, $db_modify_hash, $settings_modify_hash, $crypt_settings_modify_hash, $settings_enum_modify_hash, $additional_modify_hash){ $upgrade_schema_files = array(); // $upgrade_schema_files = get_upgrade_schema_files($argv[2], $argv[3]); // 6048 - schema version for 6.9 $current_schema_version = find_schema_version('main'); if ($current_schema_version < 6049) { $upgrade_schema_files = array('upgrade-6.1.sql' => 'main', 'disable_drupal6_modules.sql' => 'main'); // array('upgrade-1.0-1.sql' => 'main') } elseif ($current_schema_version < 6051) { $upgrade_schema_files = array('upgrade-6.10.sql' => 'main', 'disable_drupal6_modules.sql' => 'main'); } elseif ($current_schema_version < 6052) { $upgrade_schema_files = array('upgrade-6.12.sql' => 'main', 'disable_drupal6_modules.sql' => 'main'); } elseif ($current_schema_version < 6053) { $upgrade_schema_files = array('upgrade-6.13.sql' => 'main', 'disable_drupal6_modules.sql' => 'main'); } elseif ($current_schema_version < 6055) { $upgrade_schema_files = array('upgrade-6.15.sql' => 'main', 'disable_drupal6_modules.sql' => 'main'); } elseif ($current_schema_version == 6055) { $upgrade_schema_files = array('disable_drupal6_modules.sql' => 'main'); } configure($config_files, $upgrade_schema_files, $db_ids, $psa_modify_hash, $db_modify_hash, $settings_modify_hash, $crypt_settings_modify_hash, $settings_enum_modify_hash, $additional_modify_hash); if ($current_schema_version <= 6055) { mysql_query("UPDATE `".get_db_prefix('main')."system` SET `schema_version`='6055' WHERE `name`='system' AND `type`='module'"); mysql_query("UPDATE `".get_db_prefix('main')."system` SET `schema_version`='6000' WHERE CONVERT( `".get_db_prefix('main')."system`.`filename` USING utf8 ) = 'modules/dblog/dblog.module' LIMIT 1"); remove_old_files(); } try { upgrade_drupal7(); } catch (Exception $e) { echo "Fatal Error ".$e->getMessage(); exit(1); } return 0; } function upgrade_drupal7() { ini_set('memory_limit','64M'); define('APS_UPGRADE', 'On'); $_REQUEST['op'] = 'Apply pending updates'; $_SERVER['SCRIPT_NAME'] = 'update.php'; $_SERVER['REMOTE_ADDR'] = '127.0.0.1'; chdir(DRUPAL_ROOT); include DRUPAL_ROOT . '/update.php'; if (! upgrade_successful()) { exit(1); } require_once DRUPAL_ROOT . '/includes/update.inc'; update_fix_compatibility(); variable_set('maintenance_mode', FALSE); variable_set('error_level', "1"); } function upgrade_successful() { // Check if upgrade was successful if (! $_SESSION['update_success'] ) { echo "Upgrade was not finished\n"; return (FALSE); } $success = TRUE; foreach ($_SESSION['update_results'] as $module => $results) { foreach ($results as $version) { if (is_array($version) && $version["#abort"] && ! $version["#abort"]["success"]) { $success = FALSE; $message = preg_replace("/<[^>]*>/", "", $version["#abort"]["query"]); echo "\n### Error while upgrading module '$module':\n"; echo $message."\n"; } } } return $success; } function remove_old_files() { $old_filelist = "drupal6.files"; if (file_exists($old_filelist)) { $lines = file($old_filelist); foreach ($lines as $lnum => $fpath) { $fpath = rtrim($fpath, "\r\n"); if (file_exists(DRUPAL_ROOT ."/".$fpath)) { @unlink(DRUPAL_ROOT."/".$fpath); } } } } ?>