-
Notifications
You must be signed in to change notification settings - Fork 2
/
upgrade.php
129 lines (115 loc) · 3.49 KB
/
upgrade.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
/**
*
* @package phpBB3 User Blog
* @version $Id: upgrade.php 485 2008-08-15 23:33:57Z exreaction@gmail.com $
* @copyright (c) 2008 EXreaction
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/
if (!defined('IN_PHPBB'))
{
exit;
}
$user->add_lang(array('install', 'posting'));
generate_blog_urls();
generate_blog_breadcrumbs($user->lang['UPGRADE_BLOGS'], append_sid("{$phpbb_root_path}blog.$phpEx", 'page=upgrade'));
page_header($user->lang['UPGRADE_BLOGS']);
include($phpbb_root_path . 'blog/upgrade/upgrade.' . $phpEx);
include($phpbb_root_path . 'blog/upgrade/functions.' .$phpEx);
include($phpbb_root_path . 'includes/message_parser.' . $phpEx);
include($phpbb_root_path . 'includes/functions_install.' . $phpEx);
$blog_upgrade = new blog_upgrade();
$stage = request_var('stage', 0);
$section = request_var('section', 0);
$part = request_var('part', 0);
$error = array();
$part_cnt = $section_cnt = 0;
$message = '';
$stages = array($user->lang['UPGRADE_LIST'], $user->lang['OPTIONS'], $user->lang['CONFIRM'], $user->lang['CLEANUP'], $user->lang['CONVERT'], $user->lang['REINDEX'], $user->lang['RESYNC'], $user->lang['FINAL']);
if ($stage >= 2)
{
$blog_upgrade->confirm_upgrade_options($mode, $error);
if (sizeof($error))
{
$stage = 2;
}
}
switch ($stage)
{
case 0:
$blog_upgrade->output_available_list();
$section++;
break;
case 1:
$section++;
$blog_upgrade->output_upgrade_options($mode);
break;
case 2:
// This is checked above
$section++;
$message = $user->lang['PRE_UPGRADE_COMPLETE'];
break;
case 3:
$blog_upgrade->clean_tables();
$blog_upgrade->reindex('delete');
$section++;
$message = $user->lang['CLEANUP_COMPLETE'];
break;
case 4:
$blog_upgrade->old_db_connect();
$blog_upgrade->run_upgrade($mode);
$section_cnt = $blog_upgrade->available_upgrades[$mode]['section_cnt'];
$message = $user->lang['CONVERT_COMPLETE'];
break;
case 5:
$blog_upgrade->reindex();
$message = $user->lang['INDEX_COMPLETE'];
break;
case 6:
$blog_upgrade->resync();
$message = $user->lang['RESYNC_COMPLETE'];
break;
case 7:
$cache->purge();
$message = $user->lang['UPGRADE_COMPLETE'];
break;
default :
trigger_error('NO_STAGE');
}
if ($section <= ($section_cnt - 1) || $part <= ($part_cnt - 1))
{
$redirect_url = append_sid("{$phpbb_root_path}blog.$phpEx", "page=upgrade&mode={$mode}&stage={$stage}&section={$section}&part={$part}");
meta_refresh(1, $redirect_url);
$message = sprintf($user->lang['UPGRADE_BREAK_CONTINUE_NOTICE'], $stage, $section, $section_cnt, $part, $part_cnt);
}
else
{
$redirect_url = append_sid("{$phpbb_root_path}blog.$phpEx", "page=upgrade&mode={$mode}&stage=" . ($stage + 1));
if ($stage > 2 && $stage != 7)
{
meta_refresh(3, $redirect_url);
}
}
$template->assign_vars(array(
'STAGE' => $stage,
'S_NEXT_PART' => ($section <= ($section_cnt - 1) || $part <= ($part_cnt - 1)) ? true : false,
'U_ACTION' => $redirect_url,
'U_BACK' => append_sid("{$phpbb_root_path}blog.$phpEx", "page=upgrade&mode={$mode}&stage=" . ($stage - 1)),
'ERROR' => (sizeof($error)) ? implode('<br />', $error) : '',
'MESSAGE' => $message,
));
$i = 0;
foreach($stages as $st)
{
$template->assign_block_vars('l_block1', array(
'S_SELECTED' => ($i == $stage) ? true : false,
'U_TITLE' => ($i <= $stage) ? append_sid("{$phpbb_root_path}blog.$phpEx", "page=upgrade&stage={$i}&mode={$mode}") : '#',
'L_TITLE' => $st,
));
$i++;
}
$template->set_filenames(array(
'body' => 'blog/upgrade.html'
));
?>