Merge pull request #11772 from michaelmcandrew/CRM-21821-respect-nav-item-weight
[civicrm-core.git] / CRM / Admin / Form / Setting / UpdateConfigBackend.php
1 <?php
2 /*
3 +--------------------------------------------------------------------+
4 | CiviCRM version 5 |
5 +--------------------------------------------------------------------+
6 | Copyright CiviCRM LLC (c) 2004-2018 |
7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
9 | |
10 | CiviCRM is free software; you can copy, modify, and distribute it |
11 | under the terms of the GNU Affero General Public License |
12 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
13 | |
14 | CiviCRM is distributed in the hope that it will be useful, but |
15 | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
17 | See the GNU Affero General Public License for more details. |
18 | |
19 | You should have received a copy of the GNU Affero General Public |
20 | License and the CiviCRM Licensing Exception along |
21 | with this program; if not, contact CiviCRM LLC |
22 | at info[AT]civicrm[DOT]org. If you have questions about the |
23 | GNU Affero General Public License or the licensing of CiviCRM, |
24 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
25 +--------------------------------------------------------------------+
26 */
27
28 /**
29 *
30 * @package CRM
31 * @copyright CiviCRM LLC (c) 2004-2018
32 */
33
34 /**
35 * This class generates form components for Error Handling and Debugging
36 */
37 class CRM_Admin_Form_Setting_UpdateConfigBackend extends CRM_Admin_Form_Setting {
38
39 /**
40 * Build the form object.
41 */
42 public function buildQuickForm() {
43 CRM_Utils_System::setTitle(ts('Settings - Cleanup Caches and Update Paths'));
44
45 $this->addElement(
46 'submit', $this->getButtonName('next', 'cleanup'), 'Cleanup Caches',
47 array('class' => 'crm-form-submit', 'id' => 'cleanup-cache')
48 );
49
50 $this->addElement(
51 'submit', $this->getButtonName('next', 'resetpaths'), 'Reset Paths',
52 array('class' => 'crm-form-submit', 'id' => 'resetpaths')
53 );
54
55 //parent::buildQuickForm();
56 }
57
58 public function postProcess() {
59 if (!empty($_POST['_qf_UpdateConfigBackend_next_cleanup'])) {
60
61 $config = CRM_Core_Config::singleton();
62
63 // cleanup templates_c directory
64 $config->cleanup(1, FALSE);
65
66 // clear all caches
67 CRM_Core_Config::clearDBCache();
68 CRM_Utils_System::flushCache();
69
70 parent::rebuildMenu();
71
72 CRM_Core_BAO_WordReplacement::rebuild();
73
74 CRM_Core_Session::setStatus(ts('Cache has been cleared and menu has been rebuilt successfully.'), ts("Success"), "success");
75 }
76
77 if (!empty($_POST['_qf_UpdateConfigBackend_next_resetpaths'])) {
78 $msg = CRM_Core_BAO_ConfigSetting::doSiteMove();
79
80 CRM_Core_Session::setStatus($msg, ts("Success"), "success");
81 }
82
83 return CRM_Utils_System::redirect(CRM_Utils_System::url('civicrm/admin/setting/updateConfigBackend', 'reset=1'));
84 }
85
86 }