Commit | Line | Data |
---|---|---|
6a488035 TO |
1 | <?php |
2 | ||
3 | require_once 'CRM/Core/Page.php'; | |
4 | ||
5 | /** | |
6 | * Display a page which displays a progress bar while executing | |
7 | * upgrade tasks. | |
8 | */ | |
9 | class CRM_Admin_Page_ExtensionsUpgrade extends CRM_Core_Page { | |
10 | const END_URL = 'civicrm/admin/extensions'; | |
11 | const END_PARAMS = 'reset=1'; | |
12 | ||
bc854509 | 13 | /** |
14 | * Run Page. | |
15 | */ | |
00be9182 | 16 | public function run() { |
6a488035 | 17 | $queue = CRM_Extension_Upgrades::createQueue(); |
be2fb01f | 18 | $runner = new CRM_Queue_Runner([ |
6a488035 TO |
19 | 'title' => ts('Database Upgrades'), |
20 | 'queue' => $queue, | |
02fc859b | 21 | 'errorMode' => CRM_Queue_Runner::ERROR_ABORT, |
be2fb01f | 22 | 'onEnd' => ['CRM_Admin_Page_ExtensionsUpgrade', 'onEnd'], |
4b540f18 | 23 | 'onEndUrl' => !empty($_GET['destination']) ? $_GET['destination'] : CRM_Utils_System::url(self::END_URL, self::END_PARAMS), |
be2fb01f | 24 | ]); |
6a488035 TO |
25 | |
26 | CRM_Core_Error::debug_log_message('CRM_Admin_Page_ExtensionsUpgrade: Start upgrades'); | |
5d4fcf54 TO |
27 | // does not return |
28 | $runner->runAllViaWeb(); | |
6a488035 TO |
29 | } |
30 | ||
31 | /** | |
eceb18cc | 32 | * Handle the final step of the queue. |
ced9bfed EM |
33 | * |
34 | * @param \CRM_Queue_TaskContext $ctx | |
6a488035 | 35 | */ |
00be9182 | 36 | public static function onEnd(CRM_Queue_TaskContext $ctx) { |
6a488035 TO |
37 | CRM_Core_Error::debug_log_message('CRM_Admin_Page_ExtensionsUpgrade: Finish upgrades'); |
38 | } | |
96025800 | 39 | |
6a488035 | 40 | } |