diff options
author | Jesús <heckyel@hyperbola.info> | 2019-08-18 21:14:58 -0500 |
---|---|---|
committer | Jesús <heckyel@hyperbola.info> | 2019-08-18 21:14:58 -0500 |
commit | 2eed7b082f83630301e51f57ca8394de228a8605 (patch) | |
tree | 1d19962d22d30f99317d9276e4bae7744fc93fc2 /public/admin/controller/common/developer.php | |
download | librecart-2eed7b082f83630301e51f57ca8394de228a8605.tar.lz librecart-2eed7b082f83630301e51f57ca8394de228a8605.tar.xz librecart-2eed7b082f83630301e51f57ca8394de228a8605.zip |
first commit
Diffstat (limited to 'public/admin/controller/common/developer.php')
-rw-r--r-- | public/admin/controller/common/developer.php | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/public/admin/controller/common/developer.php b/public/admin/controller/common/developer.php new file mode 100644 index 0000000..30663dc --- /dev/null +++ b/public/admin/controller/common/developer.php @@ -0,0 +1,113 @@ +<?php +class ControllerCommonDeveloper extends Controller { + public function index() { + $this->load->language('common/developer'); + + $data['user_token'] = $this->session->data['user_token']; + + $data['developer_theme'] = $this->config->get('developer_theme'); + $data['developer_sass'] = $this->config->get('developer_sass'); + + $eval = false; + + $eval = '$eval = true;'; + + eval($eval); + + if ($eval === true) { + $data['eval'] = true; + } else { + $this->load->model('setting/setting'); + + $this->model_setting_setting->editSetting('developer', array('developer_theme' => 1), 0); + + $data['eval'] = false; + } + + $this->response->setOutput($this->load->view('common/developer', $data)); + } + + public function edit() { + $this->load->language('common/developer'); + + $json = array(); + + if (!$this->user->hasPermission('modify', 'common/developer')) { + $json['error'] = $this->language->get('error_permission'); + } else { + $this->load->model('setting/setting'); + + $this->model_setting_setting->editSetting('developer', $this->request->post, 0); + + $json['success'] = $this->language->get('text_success'); + } + + $this->response->addHeader('Content-Type: application/json'); + $this->response->setOutput(json_encode($json)); + } + + public function theme() { + $this->load->language('common/developer'); + + $json = array(); + + if (!$this->user->hasPermission('modify', 'common/developer')) { + $json['error'] = $this->language->get('error_permission'); + } else { + $directories = glob(DIR_CACHE . '*', GLOB_ONLYDIR); + + if ($directories) { + foreach ($directories as $directory) { + $files = glob($directory . '/*'); + + foreach ($files as $file) { + if (is_file($file)) { + unlink($file); + } + } + + if (is_dir($directory)) { + rmdir($directory); + } + } + } + + $json['success'] = sprintf($this->language->get('text_cache'), $this->language->get('text_theme')); + } + + $this->response->addHeader('Content-Type: application/json'); + $this->response->setOutput(json_encode($json)); + } + + public function sass() { + $this->load->language('common/developer'); + + $json = array(); + + if (!$this->user->hasPermission('modify', 'common/developer')) { + $json['error'] = $this->language->get('error_permission'); + } else { + // Before we delete we need to make sure there is a sass file to regenerate the css + $file = DIR_APPLICATION . 'view/stylesheet/bootstrap.css'; + + if (is_file($file) && is_file(DIR_APPLICATION . 'view/stylesheet/sass/_bootstrap.scss')) { + unlink($file); + } + + $files = glob(DIR_CATALOG . 'view/theme/*/stylesheet/sass/_bootstrap.scss'); + + foreach ($files as $file) { + $file = substr($file, 0, -21) . '/bootstrap.css'; + + if (is_file($file)) { + unlink($file); + } + } + + $json['success'] = sprintf($this->language->get('text_cache'), $this->language->get('text_sass')); + } + + $this->response->addHeader('Content-Type: application/json'); + $this->response->setOutput(json_encode($json)); + } +}
\ No newline at end of file |