Merge pull request #12236 from agileware/CIVICRM-874
[civicrm-core.git] / CRM / Admin / Form / Setting / UpdateConfigBackend.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
fee14197 4 | CiviCRM version 5 |
6a488035 5 +--------------------------------------------------------------------+
8c9251b3 6 | Copyright CiviCRM LLC (c) 2004-2018 |
6a488035
TO
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 +--------------------------------------------------------------------+
d25dd0ee 26 */
6a488035
TO
27
28/**
29 *
30 * @package CRM
8c9251b3 31 * @copyright CiviCRM LLC (c) 2004-2018
6a488035
TO
32 */
33
34/**
35 * This class generates form components for Error Handling and Debugging
6a488035
TO
36 */
37class CRM_Admin_Form_Setting_UpdateConfigBackend extends CRM_Admin_Form_Setting {
6a488035
TO
38
39 /**
eceb18cc 40 * Build the form object.
6a488035
TO
41 */
42 public function buildQuickForm() {
43 CRM_Utils_System::setTitle(ts('Settings - Cleanup Caches and Update Paths'));
44
e51744f5
DL
45 $this->addElement(
46 'submit', $this->getButtonName('next', 'cleanup'), 'Cleanup Caches',
97e557d7 47 array('class' => 'crm-form-submit', 'id' => 'cleanup-cache')
e51744f5 48 );
6a488035 49
4f240ac1
TO
50 $this->addElement(
51 'submit', $this->getButtonName('next', 'resetpaths'), 'Reset Paths',
52 array('class' => 'crm-form-submit', 'id' => 'resetpaths')
53 );
6a488035 54
4f240ac1 55 //parent::buildQuickForm();
6a488035
TO
56 }
57
00be9182 58 public function postProcess() {
a7488080 59 if (!empty($_POST['_qf_UpdateConfigBackend_next_cleanup'])) {
6a488035
TO
60
61 $config = CRM_Core_Config::singleton();
62
63 // cleanup templates_c directory
64 $config->cleanup(1, FALSE);
65
514b92c9 66 // clear all caches
6a488035 67 CRM_Core_Config::clearDBCache();
514b92c9
CW
68 CRM_Utils_System::flushCache();
69
6a488035
TO
70 parent::rebuildMenu();
71
3e089a38
BS
72 CRM_Core_BAO_WordReplacement::rebuild();
73
6a488035 74 CRM_Core_Session::setStatus(ts('Cache has been cleared and menu has been rebuilt successfully.'), ts("Success"), "success");
6a488035 75 }
d75f2f47 76
4f240ac1
TO
77 if (!empty($_POST['_qf_UpdateConfigBackend_next_resetpaths'])) {
78 $msg = CRM_Core_BAO_ConfigSetting::doSiteMove();
6a488035 79
4f240ac1 80 CRM_Core_Session::setStatus($msg, ts("Success"), "success");
6a488035
TO
81 }
82
4f240ac1 83 return CRM_Utils_System::redirect(CRM_Utils_System::url('civicrm/admin/setting/updateConfigBackend', 'reset=1'));
6a488035 84 }
96025800 85
6a488035 86}