Changeset 2836 for trunk/upgrade.php
- Timestamp:
- Nov 6, 2008, 3:44:51 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/upgrade.php
r2819 r2836 30 30 define('PHPWG_ROOT_PATH', './'); 31 31 32 if (!file_exists(PHPWG_ROOT_PATH.'include/mysql.inc.php')) 33 { 34 die('Could not find include/mysql.inc.php file.'); 35 } 36 32 37 include_once(PHPWG_ROOT_PATH.'include/functions.inc.php'); 33 38 include_once(PHPWG_ROOT_PATH.'admin/include/functions.php'); … … 37 42 include(PHPWG_ROOT_PATH . 'include/config_default.inc.php'); 38 43 @include(PHPWG_ROOT_PATH. 'include/config_local.inc.php'); 39 40 check_upgrade();41 44 42 45 prepare_conf_upgrade(); … … 54 57 } 55 58 56 // +-----------------------------------------------------------------------+57 // | tricky output |58 // +-----------------------------------------------------------------------+59 echo '<!-- This is an HTML comment given in order to make IE outputs';60 echo ' the code.'."\n";61 echo ' Indeed, IE doesn\'t start to send output until a limit';62 echo ' of XXX bytes '."\n";63 echo str_repeat( ' ', 80 )."\n";64 echo str_repeat( ' ', 80 )."\n";65 echo str_repeat( ' ', 80 )."\n";66 echo '-->'."\n";67 flush();68 59 // +-----------------------------------------------------------------------+ 69 60 // | functions | … … 169 160 } 170 161 171 load_language( 'common.lang', '', array('language'=>$language, 'target_charset'=>'utf-8' ) );172 load_language( 'admin.lang', '', array('language'=>$language, 'target_charset'=>'utf-8' ) );173 load_language( 'upgrade.lang', '', array('language'=>$language, 'target_charset'=>'utf-8' ) );162 load_language( 'common.lang', '', array('language'=>$language, 'target_charset'=>'utf-8', 'no_fallback' => true) ); 163 load_language( 'admin.lang', '', array('language'=>$language, 'target_charset'=>'utf-8', 'no_fallback' => true) ); 164 load_language( 'upgrade.lang', '', array('language'=>$language, 'target_charset'=>'utf-8', 'no_fallback' => true) ); 174 165 175 166 // +-----------------------------------------------------------------------+ … … 181 172 $template->assign('RELEASE', PHPWG_VERSION); 182 173 183 foreach (get_languages('utf-8') as $language_code => $language_name)184 {185 if ($language == $language_code)186 {187 $template->assign('language_selection', $language_code);188 }189 $languages_options[$language_code] = $language_name;190 }191 $template->assign('language_options', $languages_options);192 193 174 // +-----------------------------------------------------------------------+ 194 175 // | upgrade choice | … … 198 179 $columns_of = get_columns_of($tables); 199 180 200 if (!isset($_GET['version'])) 201 { 202 // find the current release 203 if (!in_array('param', $columns_of[PREFIX_TABLE.'config'])) 204 { 205 // we're in branch 1.3, important upgrade, isn't it? 206 if (in_array(PREFIX_TABLE.'user_category', $tables)) 207 { 208 $current_release = '1.3.1'; 209 } 210 else 211 { 212 $current_release = '1.3.0'; 213 } 214 } 215 else if (!in_array(PREFIX_TABLE.'user_cache', $tables)) 216 { 217 $current_release = '1.4.0'; 218 } 219 else if (!in_array(PREFIX_TABLE.'tags', $tables)) 220 { 221 $current_release = '1.5.0'; 222 } 223 else if ( !in_array(PREFIX_TABLE.'history_summary', $tables) ) 224 { 225 if (!in_array('auto_login_key', $columns_of[PREFIX_TABLE.'user_infos'])) 226 { 227 $current_release = '1.6.0'; 228 } 229 else 230 { 231 $current_release = '1.6.2'; 232 } 233 } 234 else if (!in_array('md5sum', $columns_of[PREFIX_TABLE.'images'])) 235 { 236 $current_release = '1.7.0'; 181 // find the current release 182 if (!in_array('param', $columns_of[PREFIX_TABLE.'config'])) 183 { 184 // we're in branch 1.3, important upgrade, isn't it? 185 if (in_array(PREFIX_TABLE.'user_category', $tables)) 186 { 187 $current_release = '1.3.1'; 237 188 } 238 189 else 239 190 { 240 die('No upgrade required, the database structure is up to date'); 241 } 242 243 $template->assign( 244 'introduction', 245 array( 246 'CURRENT_RELEASE' => $current_release, 247 'RUN_UPGRADE_URL' => 248 PHPWG_ROOT_PATH.'upgrade.php?version='.$current_release.'&language='.$language, 249 ) 250 ); 191 $current_release = '1.3.0'; 192 } 193 } 194 else if (!in_array(PREFIX_TABLE.'user_cache', $tables)) 195 { 196 $current_release = '1.4.0'; 197 } 198 else if (!in_array(PREFIX_TABLE.'tags', $tables)) 199 { 200 $current_release = '1.5.0'; 201 } 202 else if ( !in_array(PREFIX_TABLE.'history_summary', $tables) ) 203 { 204 if (!in_array('auto_login_key', $columns_of[PREFIX_TABLE.'user_infos'])) 205 { 206 $current_release = '1.6.0'; 207 } 208 else 209 { 210 $current_release = '1.6.2'; 211 } 212 } 213 else if (!in_array('md5sum', $columns_of[PREFIX_TABLE.'images'])) 214 { 215 $current_release = '1.7.0'; 216 } 217 else 218 { 219 die('No upgrade required, the database structure is up to date'); 251 220 } 252 221 … … 254 223 // | upgrade launch | 255 224 // +-----------------------------------------------------------------------+ 256 257 else 258 { 259 if (in_array('md5sum', $columns_of[PREFIX_TABLE.'images'])) 260 { 261 die('No database upgrade required, do not refresh the page'); 262 } 263 264 $upgrade_file = PHPWG_ROOT_PATH.'install/upgrade_'.$_GET['version'].'.php'; 225 $page['infos'] = array(); 226 $page['errors'] = array(); 227 228 if (isset($_POST['username']) and isset($_POST['password'])) 229 { 230 check_upgrade_access_rights($current_release, $_POST['username'], $_POST['password']); 231 } 232 233 if (isset($_POST['submit']) and check_upgrade()) 234 { 235 $upgrade_file = PHPWG_ROOT_PATH.'install/upgrade_'.$current_release.'.php'; 265 236 if (is_file($upgrade_file)) 266 237 { 267 $page['infos'] = array();268 238 $page['upgrade_start'] = get_moment(); 269 239 $conf['die_on_sql_error'] = false; … … 284 254 'upgrade', 285 255 array( 286 'VERSION' => $ _GET['version'],256 'VERSION' => $current_release, 287 257 'TOTAL_TIME' => get_elapsed_time( 288 258 $page['upgrade_start'], … … 301 271 array_push($page['infos'], 302 272 l10n('delete upgrade files'), 303 l10n('remove line from mysql.inc.php') . '<pre>define(\'PHPWG_IN_UPGRADE\', true);</pre>',304 273 l10n('perform a maintenance check') 305 274 ); 306 307 $template->assign('infos', $page['infos']);308 275 309 276 invalidate_user_cache(); … … 318 285 pwg_query($query); 319 286 } 320 else 321 { 322 die('Hacking attempt'); 323 } 287 } 288 289 // +-----------------------------------------------------------------------+ 290 // | start template output | 291 // +-----------------------------------------------------------------------+ 292 else 293 { 294 foreach (get_languages('utf-8') as $language_code => $language_name) 295 { 296 if ($language == $language_code) 297 { 298 $template->assign('language_selection', $language_code); 299 } 300 $languages_options[$language_code] = $language_name; 301 } 302 $template->assign('language_options', $languages_options); 303 304 $template->assign('introduction', array( 305 'CURRENT_RELEASE' => $current_release, 306 'F_ACTION' => 'upgrade.php?language=' . $language)); 307 308 if (!check_upgrade()) 309 { 310 $template->assign('login', true); 311 } 312 } 313 314 if (count($page['errors']) != 0) 315 { 316 $template->assign('errors', $page['errors']); 317 } 318 319 if (count($page['infos']) != 0) 320 { 321 $template->assign('infos', $page['infos']); 324 322 } 325 323
Note: See TracChangeset
for help on using the changeset viewer.