first commit
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleAccount extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/account');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('module_account', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/account', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/account', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->post['module_account_status'])) {
|
||||
$data['module_account_status'] = $this->request->post['module_account_status'];
|
||||
} else {
|
||||
$data['module_account_status'] = $this->config->get('module_account_status');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/account', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/account')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleBanner extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/banner');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('banner', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/banner', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/banner', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/banner', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/banner', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['banner_id'])) {
|
||||
$data['banner_id'] = $this->request->post['banner_id'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['banner_id'] = $module_info['banner_id'];
|
||||
} else {
|
||||
$data['banner_id'] = '';
|
||||
}
|
||||
|
||||
$this->load->model('design/banner');
|
||||
|
||||
$data['banners'] = $this->model_design_banner->getBanners();
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/banner', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/banner')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,152 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleBestSeller extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/bestseller');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('bestseller', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->cache->delete('product');
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/bestseller', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/bestseller', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/bestseller', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/bestseller', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/bestseller', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/bestseller')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
<?php
|
||||
// * @source See SOURCE.txt for source and other copyright.
|
||||
// * @license GNU General Public License version 3; see LICENSE.txt
|
||||
|
||||
class ControllerExtensionModuleBlogCategory extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/blog_category');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('module_blog_category', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/blog_category', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/blog_category', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->post['module_blog_category_status'])) {
|
||||
$data['module_blog_category_status'] = $this->request->post['module_blog_category_status'];
|
||||
} else {
|
||||
$data['module_blog_category_status'] = $this->config->get('module_blog_category_status');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/blog_category', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/blog_category')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,181 @@
|
||||
<?php
|
||||
// * @source See SOURCE.txt for source and other copyright.
|
||||
// * @license GNU General Public License version 3; see LICENSE.txt
|
||||
|
||||
class ControllerExtensionModuleBlogFeatured extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/blog_featured');
|
||||
|
||||
$this->document->addScript('view/javascript/jquery/Sortable.js');
|
||||
$this->document->addScript('view/javascript/jquery/jquery-sortable.js');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('blog_featured', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/blog_featured', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/blog_featured', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/blog_featured', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/blog_featured', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
$data['user_token'] = $this->session->data['user_token'];
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
$this->load->model('blog/article');
|
||||
|
||||
$data['articles'] = array();
|
||||
|
||||
if (!empty($this->request->post['article'])) {
|
||||
$articles = $this->request->post['article'];
|
||||
} elseif (!empty($module_info['article'])) {
|
||||
$articles = $module_info['article'];
|
||||
} else {
|
||||
$articles = array();
|
||||
}
|
||||
|
||||
foreach ($articles as $article_id) {
|
||||
$article_info = $this->model_blog_article->getArticle($article_id);
|
||||
|
||||
if ($article_info) {
|
||||
$data['articles'][] = array(
|
||||
'article_id' => $article_info['article_id'],
|
||||
'name' => $article_info['name']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/blog_featured', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/blog_featured')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
// * @source See SOURCE.txt for source and other copyright.
|
||||
// * @license GNU General Public License version 3; see LICENSE.txt
|
||||
|
||||
class ControllerExtensionModuleBlogLatest extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/blog_latest');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('blog_latest', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->cache->delete('article');
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/blog_latest', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/blog_latest', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/blog_latest', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/blog_latest', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/blog_latest', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/blog_latest')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleCarousel extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/carousel');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('carousel', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/carousel', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/carousel', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/carousel', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/carousel', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['banner_id'])) {
|
||||
$data['banner_id'] = $this->request->post['banner_id'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['banner_id'] = $module_info['banner_id'];
|
||||
} else {
|
||||
$data['banner_id'] = '';
|
||||
}
|
||||
|
||||
$this->load->model('design/banner');
|
||||
|
||||
$data['banners'] = $this->model_design_banner->getBanners();
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 130;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 100;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/carousel', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/carousel')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleCategory extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/category');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('module_category', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/category', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/category', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->post['module_category_status'])) {
|
||||
$data['module_category_status'] = $this->request->post['module_category_status'];
|
||||
} else {
|
||||
$data['module_category_status'] = $this->config->get('module_category_status');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/category', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/category')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,178 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleFeatured extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/featured');
|
||||
|
||||
$this->document->addScript('view/javascript/jquery/Sortable.js');
|
||||
$this->document->addScript('view/javascript/jquery/jquery-sortable.js');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('featured', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/featured', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/featured', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/featured', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/featured', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
$data['user_token'] = $this->session->data['user_token'];
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
$this->load->model('catalog/product');
|
||||
|
||||
$data['products'] = array();
|
||||
|
||||
if (!empty($this->request->post['product'])) {
|
||||
$products = $this->request->post['product'];
|
||||
} elseif (!empty($module_info['product'])) {
|
||||
$products = $module_info['product'];
|
||||
} else {
|
||||
$products = array();
|
||||
}
|
||||
|
||||
foreach ($products as $product_id) {
|
||||
$product_info = $this->model_catalog_product->getProduct($product_id);
|
||||
|
||||
if ($product_info) {
|
||||
$data['products'][] = array(
|
||||
'product_id' => $product_info['product_id'],
|
||||
'name' => $product_info['name']
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/featured', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/featured')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
// * @source See SOURCE.txt for source and other copyright.
|
||||
// * @license GNU General Public License version 3; see LICENSE.txt
|
||||
|
||||
class ControllerExtensionModuleFeaturedArticle extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/featured_article');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('featured_article', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->cache->delete('product');
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/featured_article', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/featured_article', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/featured_article', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/featured_article', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('extension/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/featured_article', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/featured_article')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,155 @@
|
||||
<?php
|
||||
// * @source See SOURCE.txt for source and other copyright.
|
||||
// * @license GNU General Public License version 3; see LICENSE.txt
|
||||
|
||||
class ControllerExtensionModuleFeaturedProduct extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/featured_product');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('featured_product', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->cache->delete('product');
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/featured_product', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/featured_product', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/featured_product', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/featured_product', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/featured_product', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/featured_product')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
class ControllerExtensionModulefilter extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/filter');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('module_filter', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/filter', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/filter', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->post['module_filter_status'])) {
|
||||
$data['module_filter_status'] = $this->request->post['module_filter_status'];
|
||||
} else {
|
||||
$data['module_filter_status'] = $this->config->get('module_filter_status');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/filter', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/filter')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,118 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleHTML extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/html');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('html', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/html', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/html', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/html', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/html', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['module_description'])) {
|
||||
$data['module_description'] = $this->request->post['module_description'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['module_description'] = $module_info['module_description'];
|
||||
} else {
|
||||
$data['module_description'] = array();
|
||||
}
|
||||
|
||||
$this->load->model('localisation/language');
|
||||
|
||||
$data['languages'] = $this->model_localisation_language->getLanguages();
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/html', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/html')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleInformation extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/information');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('module_information', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/information', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/information', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->post['module_information_status'])) {
|
||||
$data['module_information_status'] = $this->request->post['module_information_status'];
|
||||
} else {
|
||||
$data['module_information_status'] = $this->config->get('module_information_status');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/information', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/information')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,152 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleLatest extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/latest');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('latest', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->cache->delete('product');
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/latest', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/latest', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/latest', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/latest', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/latest', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/latest')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,537 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleOc3xStorageCleaner extends Controller {
|
||||
private $error = array();
|
||||
private $maintenance = 0;
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/oc3x_storage_cleaner');
|
||||
|
||||
$this->document->setTitle($this->language->get('page_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('oc3x_storage_cleaner', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
$data['heading_title'] = $this->language->get('heading_title');
|
||||
$data['tab_settings'] = $this->language->get('tab_settings');
|
||||
$data['tab_help'] = $this->language->get('tab_help');
|
||||
$data['text_edit'] = $this->language->get('text_edit');
|
||||
$data['text_documentation'] = $this->language->get('text_documentation');
|
||||
$data['text_developer'] = $this->language->get('text_developer');
|
||||
$data['text_enabled'] = $this->language->get('text_enabled');
|
||||
$data['text_disabled'] = $this->language->get('text_disabled');
|
||||
$data['entry_status'] = $this->language->get('entry_status');
|
||||
$data['entry_size'] = $this->language->get('entry_size');
|
||||
$data['button_save'] = $this->language->get('button_save');
|
||||
$data['button_cancel'] = $this->language->get('button_cancel');
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('page_title'),
|
||||
'href' => $this->url->link('extension/module/oc3x_storage_cleaner', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/oc3x_storage_cleaner', 'user_token=' . $this->session->data['user_token'], true);
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
if (isset($this->request->post['oc3x_storage_cleaner_status'])) {
|
||||
$data['oc3x_storage_cleaner_status'] = $this->request->post['oc3x_storage_cleaner_status'];
|
||||
} else {
|
||||
$data['oc3x_storage_cleaner_status'] = $this->config->get('oc3x_storage_cleaner_status');
|
||||
}
|
||||
|
||||
if (isset($this->request->post['oc3x_storage_cleaner_size'])) {
|
||||
$data['oc3x_storage_cleaner_size'] = $this->request->post['oc3x_storage_cleaner_size'];
|
||||
} else {
|
||||
$data['oc3x_storage_cleaner_size'] = $this->config->get('oc3x_storage_cleaner_size');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/oc3x_storage_cleaner', $data));
|
||||
}
|
||||
|
||||
public function clearCache() {
|
||||
$this->load->language('extension/module/oc3x_storage_cleaner');
|
||||
|
||||
$json = array();
|
||||
|
||||
if (!$this->validateWidget() || empty($this->request->post['key'])) {
|
||||
$json['error'] = $this->language->get('error_permission');
|
||||
} else {
|
||||
$key = $this->request->post['key'];
|
||||
|
||||
if ($key == 'system') {
|
||||
$dir = DIR_CACHE;
|
||||
} elseif ($key == 'modification') {
|
||||
// Just before files are deleted, if config settings say maintenance mode is off then turn it on
|
||||
$this->maintenance = $this->config->get('config_maintenance');
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
$this->model_setting_setting->editSettingValue('config', 'config_maintenance', true);
|
||||
|
||||
$dir = DIR_MODIFICATION;
|
||||
} elseif ($key == 'image') {
|
||||
$dir = DIR_IMAGE . 'cache/';
|
||||
} else {
|
||||
$dir = false;
|
||||
}
|
||||
|
||||
if ($dir) {
|
||||
$files = array();
|
||||
|
||||
// Make path into an array
|
||||
$path = array($dir . '*');
|
||||
|
||||
// While the path array is still populated keep looping through
|
||||
while (count($path) != 0) {
|
||||
$next = array_shift($path);
|
||||
|
||||
foreach (glob($next) as $file) {
|
||||
// If directory add to path array
|
||||
if (is_dir($file)) {
|
||||
$path[] = $file . '/*';
|
||||
}
|
||||
|
||||
// Add the file to the files to be deleted array
|
||||
$files[] = $file;
|
||||
}
|
||||
}
|
||||
|
||||
// Reverse sort the file array
|
||||
rsort($files);
|
||||
|
||||
// Clear all files
|
||||
foreach ($files as $file) {
|
||||
if ($file != $dir . 'index.html' && $file != $dir . '.htaccess') {
|
||||
// If file just delete
|
||||
if (is_file($file)) {
|
||||
unlink($file);
|
||||
|
||||
// If directory use the remove directory function
|
||||
} elseif (is_dir($file)) {
|
||||
rmdir($file);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($key == 'modification') {
|
||||
$this->refreshModification();
|
||||
}
|
||||
|
||||
$this->load->model('extension/module/oc3x_storage_cleaner');
|
||||
|
||||
if ($this->config->get('oc3x_storage_cleaner_size')) {
|
||||
$json['size'] = $this->model_extension_module_oc3x_storage_cleaner->getSize();
|
||||
}
|
||||
|
||||
$json['success'] = $this->language->get('text_success_clear');
|
||||
}
|
||||
}
|
||||
|
||||
$this->response->addHeader('Content-Type: application/json');
|
||||
$this->response->setOutput(json_encode($json));
|
||||
}
|
||||
|
||||
public function clearLog() {
|
||||
$this->load->language('extension/module/oc3x_storage_cleaner');
|
||||
|
||||
$json = array();
|
||||
|
||||
if (!$this->validateWidget() || empty($this->request->post['key'])) {
|
||||
$json['error'] = $this->language->get('error_permission');
|
||||
} else {
|
||||
$key = $this->request->post['key'];
|
||||
|
||||
if ($key == 'error') {
|
||||
$file = DIR_LOGS . $this->config->get('config_error_filename');
|
||||
} elseif ($key == 'modification') {
|
||||
$file = DIR_LOGS . 'ocmod.log';
|
||||
} else {
|
||||
$file = false;
|
||||
}
|
||||
|
||||
if ($file) {
|
||||
$handle = fopen($file, 'w+');
|
||||
|
||||
fclose($handle);
|
||||
|
||||
$this->load->model('extension/module/oc3x_storage_cleaner');
|
||||
|
||||
if ($this->config->get('oc3x_storage_cleaner_size')) {
|
||||
$json['size'] = $this->model_extension_module_oc3x_storage_cleaner->getSize();
|
||||
}
|
||||
|
||||
$json['success'] = $this->language->get('text_success_clear');
|
||||
}
|
||||
}
|
||||
|
||||
$this->response->addHeader('Content-Type: application/json');
|
||||
$this->response->setOutput(json_encode($json));
|
||||
}
|
||||
|
||||
protected function refreshModification() {
|
||||
$this->load->model('setting/modification');
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
//Log
|
||||
$log = array();
|
||||
|
||||
// Begin
|
||||
$xml = array();
|
||||
|
||||
// Load the default modification XML
|
||||
$xml[] = file_get_contents(DIR_SYSTEM . 'modification.xml');
|
||||
|
||||
// This is purly for developers so they can run mods directly and have them run without upload sfter each change.
|
||||
$files = glob(DIR_SYSTEM . '*.ocmod.xml');
|
||||
|
||||
if ($files) {
|
||||
foreach ($files as $file) {
|
||||
$xml[] = file_get_contents($file);
|
||||
}
|
||||
}
|
||||
|
||||
// Get the default modification file
|
||||
$results = $this->model_setting_modification->getModifications();
|
||||
|
||||
foreach ($results as $result) {
|
||||
if ($result['status']) {
|
||||
$xml[] = $result['xml'];
|
||||
}
|
||||
}
|
||||
|
||||
$modification = array();
|
||||
|
||||
foreach ($xml as $xml) {
|
||||
if (empty($xml)){
|
||||
continue;
|
||||
}
|
||||
|
||||
$dom = new DOMDocument('1.0', 'UTF-8');
|
||||
$dom->preserveWhiteSpace = false;
|
||||
$dom->loadXml($xml);
|
||||
|
||||
// Log
|
||||
$log[] = 'MOD: ' . $dom->getElementsByTagName('name')->item(0)->textContent;
|
||||
|
||||
// Wipe the past modification store in the backup array
|
||||
$recovery = array();
|
||||
|
||||
// Set the a recovery of the modification code in case we need to use it if an abort attribute is used.
|
||||
if (isset($modification)) {
|
||||
$recovery = $modification;
|
||||
}
|
||||
|
||||
$files = $dom->getElementsByTagName('modification')->item(0)->getElementsByTagName('file');
|
||||
|
||||
foreach ($files as $file) {
|
||||
$operations = $file->getElementsByTagName('operation');
|
||||
|
||||
$files = explode('|', $file->getAttribute('path'));
|
||||
|
||||
foreach ($files as $file) {
|
||||
$path = '';
|
||||
|
||||
// Get the full path of the files that are going to be used for modification
|
||||
if ((substr($file, 0, 7) == 'catalog')) {
|
||||
$path = DIR_CATALOG . substr($file, 8);
|
||||
}
|
||||
|
||||
if ((substr($file, 0, 5) == 'admin')) {
|
||||
$path = DIR_APPLICATION . substr($file, 6);
|
||||
}
|
||||
|
||||
if ((substr($file, 0, 6) == 'system')) {
|
||||
$path = DIR_SYSTEM . substr($file, 7);
|
||||
}
|
||||
|
||||
if ($path) {
|
||||
$files = glob($path, GLOB_BRACE);
|
||||
|
||||
if ($files) {
|
||||
foreach ($files as $file) {
|
||||
// Get the key to be used for the modification cache filename.
|
||||
if (substr($file, 0, strlen(DIR_CATALOG)) == DIR_CATALOG) {
|
||||
$key = 'catalog/' . substr($file, strlen(DIR_CATALOG));
|
||||
}
|
||||
|
||||
if (substr($file, 0, strlen(DIR_APPLICATION)) == DIR_APPLICATION) {
|
||||
$key = 'admin/' . substr($file, strlen(DIR_APPLICATION));
|
||||
}
|
||||
|
||||
if (substr($file, 0, strlen(DIR_SYSTEM)) == DIR_SYSTEM) {
|
||||
$key = 'system/' . substr($file, strlen(DIR_SYSTEM));
|
||||
}
|
||||
|
||||
// If file contents is not already in the modification array we need to load it.
|
||||
if (!isset($modification[$key])) {
|
||||
$content = file_get_contents($file);
|
||||
|
||||
$modification[$key] = preg_replace('~\r?\n~', "\n", $content);
|
||||
$original[$key] = preg_replace('~\r?\n~', "\n", $content);
|
||||
|
||||
// Log
|
||||
$log[] = PHP_EOL . 'FILE: ' . $key;
|
||||
}
|
||||
|
||||
foreach ($operations as $operation) {
|
||||
$error = $operation->getAttribute('error');
|
||||
|
||||
// Ignoreif
|
||||
$ignoreif = $operation->getElementsByTagName('ignoreif')->item(0);
|
||||
|
||||
if ($ignoreif) {
|
||||
if ($ignoreif->getAttribute('regex') != 'true') {
|
||||
if (strpos($modification[$key], $ignoreif->textContent) !== false) {
|
||||
continue;
|
||||
}
|
||||
} else {
|
||||
if (preg_match($ignoreif->textContent, $modification[$key])) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$status = false;
|
||||
|
||||
// Search and replace
|
||||
if ($operation->getElementsByTagName('search')->item(0)->getAttribute('regex') != 'true') {
|
||||
// Search
|
||||
$search = $operation->getElementsByTagName('search')->item(0)->textContent;
|
||||
$trim = $operation->getElementsByTagName('search')->item(0)->getAttribute('trim');
|
||||
$index = $operation->getElementsByTagName('search')->item(0)->getAttribute('index');
|
||||
|
||||
// Trim line if no trim attribute is set or is set to true.
|
||||
if (!$trim || $trim == 'true') {
|
||||
$search = trim($search);
|
||||
}
|
||||
|
||||
// Add
|
||||
$add = $operation->getElementsByTagName('add')->item(0)->textContent;
|
||||
$trim = $operation->getElementsByTagName('add')->item(0)->getAttribute('trim');
|
||||
$position = $operation->getElementsByTagName('add')->item(0)->getAttribute('position');
|
||||
$offset = $operation->getElementsByTagName('add')->item(0)->getAttribute('offset');
|
||||
|
||||
if ($offset == '') {
|
||||
$offset = 0;
|
||||
}
|
||||
|
||||
// Trim line if is set to true.
|
||||
if ($trim == 'true') {
|
||||
$add = trim($add);
|
||||
}
|
||||
|
||||
// Log
|
||||
$log[] = 'CODE: ' . $search;
|
||||
|
||||
// Check if using indexes
|
||||
if ($index !== '') {
|
||||
$indexes = explode(',', $index);
|
||||
} else {
|
||||
$indexes = array();
|
||||
}
|
||||
|
||||
// Get all the matches
|
||||
$i = 0;
|
||||
|
||||
$lines = explode("\n", $modification[$key]);
|
||||
|
||||
for ($line_id = 0; $line_id < count($lines); $line_id++) {
|
||||
$line = $lines[$line_id];
|
||||
|
||||
// Status
|
||||
$match = false;
|
||||
|
||||
// Check to see if the line matches the search code.
|
||||
if (stripos($line, $search) !== false) {
|
||||
// If indexes are not used then just set the found status to true.
|
||||
if (!$indexes) {
|
||||
$match = true;
|
||||
} elseif (in_array($i, $indexes)) {
|
||||
$match = true;
|
||||
}
|
||||
|
||||
$i++;
|
||||
}
|
||||
|
||||
// Now for replacing or adding to the matched elements
|
||||
if ($match) {
|
||||
switch ($position) {
|
||||
default:
|
||||
case 'replace':
|
||||
$new_lines = explode("\n", $add);
|
||||
|
||||
if ($offset < 0) {
|
||||
array_splice($lines, $line_id + $offset, abs($offset) + 1, array(str_replace($search, $add, $line)));
|
||||
|
||||
$line_id -= $offset;
|
||||
} else {
|
||||
array_splice($lines, $line_id, $offset + 1, array(str_replace($search, $add, $line)));
|
||||
}
|
||||
|
||||
break;
|
||||
case 'before':
|
||||
$new_lines = explode("\n", $add);
|
||||
|
||||
array_splice($lines, $line_id - $offset, 0, $new_lines);
|
||||
|
||||
$line_id += count($new_lines);
|
||||
break;
|
||||
case 'after':
|
||||
$new_lines = explode("\n", $add);
|
||||
|
||||
array_splice($lines, ($line_id + 1) + $offset, 0, $new_lines);
|
||||
|
||||
$line_id += count($new_lines);
|
||||
break;
|
||||
}
|
||||
|
||||
// Log
|
||||
$log[] = 'LINE: ' . $line_id;
|
||||
|
||||
$status = true;
|
||||
}
|
||||
}
|
||||
|
||||
$modification[$key] = implode("\n", $lines);
|
||||
} else {
|
||||
$search = trim($operation->getElementsByTagName('search')->item(0)->textContent);
|
||||
$limit = $operation->getElementsByTagName('search')->item(0)->getAttribute('limit');
|
||||
$replace = trim($operation->getElementsByTagName('add')->item(0)->textContent);
|
||||
|
||||
// Limit
|
||||
if (!$limit) {
|
||||
$limit = -1;
|
||||
}
|
||||
|
||||
// Log
|
||||
$match = array();
|
||||
|
||||
preg_match_all($search, $modification[$key], $match, PREG_OFFSET_CAPTURE);
|
||||
|
||||
// Remove part of the the result if a limit is set.
|
||||
if ($limit > 0) {
|
||||
$match[0] = array_slice($match[0], 0, $limit);
|
||||
}
|
||||
|
||||
if ($match[0]) {
|
||||
$log[] = 'REGEX: ' . $search;
|
||||
|
||||
for ($i = 0; $i < count($match[0]); $i++) {
|
||||
$log[] = 'LINE: ' . (substr_count(substr($modification[$key], 0, $match[0][$i][1]), "\n") + 1);
|
||||
}
|
||||
|
||||
$status = true;
|
||||
}
|
||||
|
||||
// Make the modification
|
||||
$modification[$key] = preg_replace($search, $replace, $modification[$key], $limit);
|
||||
}
|
||||
|
||||
if (!$status) {
|
||||
// Abort applying this modification completely.
|
||||
if ($error == 'abort') {
|
||||
$modification = $recovery;
|
||||
// Log
|
||||
$log[] = 'NOT FOUND - ABORTING!';
|
||||
break 5;
|
||||
}
|
||||
// Skip current operation or break
|
||||
elseif ($error == 'skip') {
|
||||
// Log
|
||||
$log[] = 'NOT FOUND - OPERATION SKIPPED!';
|
||||
continue;
|
||||
}
|
||||
// Break current operations
|
||||
else {
|
||||
// Log
|
||||
$log[] = 'NOT FOUND - OPERATIONS ABORTED!';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Log
|
||||
$log[] = '----------------------------------------------------------------';
|
||||
}
|
||||
|
||||
// Log
|
||||
$ocmod = new Log('ocmod.log');
|
||||
$ocmod->write(implode("\n", $log));
|
||||
|
||||
// Write all modification files
|
||||
foreach ($modification as $key => $value) {
|
||||
// Only create a file if there are changes
|
||||
if ($original[$key] != $value) {
|
||||
$path = '';
|
||||
|
||||
$directories = explode('/', dirname($key));
|
||||
|
||||
foreach ($directories as $directory) {
|
||||
$path = $path . '/' . $directory;
|
||||
|
||||
if (!is_dir(DIR_MODIFICATION . $path)) {
|
||||
@mkdir(DIR_MODIFICATION . $path, 0777);
|
||||
}
|
||||
}
|
||||
|
||||
$handle = fopen(DIR_MODIFICATION . $key, 'w');
|
||||
|
||||
fwrite($handle, $value);
|
||||
|
||||
fclose($handle);
|
||||
}
|
||||
}
|
||||
|
||||
// Maintance mode back to original settings
|
||||
$this->model_setting_setting->editSettingValue('config', 'config_maintenance', $this->maintenance);
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/oc3x_storage_cleaner')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
|
||||
protected function validateWidget() {
|
||||
if (!$this->user->hasPermission('access', 'extension/module/oc3x_storage_cleaner') || !$this->user->hasPermission('modify', 'extension/module/oc3x_storage_cleaner') || !$this->config->get('oc3x_storage_cleaner_status')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,154 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleSlideshow extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/slideshow');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('slideshow', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/slideshow', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/slideshow', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/slideshow', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/slideshow', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['banner_id'])) {
|
||||
$data['banner_id'] = $this->request->post['banner_id'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['banner_id'] = $module_info['banner_id'];
|
||||
} else {
|
||||
$data['banner_id'] = '';
|
||||
}
|
||||
|
||||
$this->load->model('design/banner');
|
||||
|
||||
$data['banners'] = $this->model_design_banner->getBanners();
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/slideshow', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/slideshow')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,152 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleSpecial extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/special');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('special', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->cache->delete('product');
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['width'])) {
|
||||
$data['error_width'] = $this->error['width'];
|
||||
} else {
|
||||
$data['error_width'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['height'])) {
|
||||
$data['error_height'] = $this->error['height'];
|
||||
} else {
|
||||
$data['error_height'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/special', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/special', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/special', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/special', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['limit'])) {
|
||||
$data['limit'] = $this->request->post['limit'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['limit'] = $module_info['limit'];
|
||||
} else {
|
||||
$data['limit'] = 5;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['width'])) {
|
||||
$data['width'] = $this->request->post['width'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['width'] = $module_info['width'];
|
||||
} else {
|
||||
$data['width'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['height'])) {
|
||||
$data['height'] = $this->request->post['height'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['height'] = $module_info['height'];
|
||||
} else {
|
||||
$data['height'] = 200;
|
||||
}
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/special', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/special')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
if (!$this->request->post['width']) {
|
||||
$this->error['width'] = $this->language->get('error_width');
|
||||
}
|
||||
|
||||
if (!$this->request->post['height']) {
|
||||
$this->error['height'] = $this->language->get('error_height');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleStore extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/store');
|
||||
|
||||
$this->document->setTitle($this->language->get('heading_title'));
|
||||
|
||||
$this->load->model('setting/setting');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
$this->model_setting_setting->editSetting('module_store', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/store', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['action'] = $this->url->link('extension/module/store', 'user_token=' . $this->session->data['user_token'], true);
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->post['module_store_admin'])) {
|
||||
$data['module_store_admin'] = $this->request->post['module_store_admin'];
|
||||
} else {
|
||||
$data['module_store_admin'] = $this->config->get('module_store_admin');
|
||||
}
|
||||
|
||||
if (isset($this->request->post['module_store_status'])) {
|
||||
$data['module_store_status'] = $this->request->post['module_store_status'];
|
||||
} else {
|
||||
$data['module_store_status'] = $this->config->get('module_store_status');
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/store', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/store')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
<?php
|
||||
class ControllerExtensionModulesubcategory extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
$this->load->language('extension/module/subcategory');
|
||||
|
||||
$this->document->setTitle(strip_tags($this->language->get('heading_title')));
|
||||
|
||||
//$this->load->model('setting/setting');
|
||||
$this->load->model('setting/module');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('subcategory', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
|
||||
|
||||
/*$this->model_setting_setting->editSetting('module_subcategory', $this->request->post);
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));*/
|
||||
}
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => strip_tags($this->language->get('heading_title')),
|
||||
'href' => $this->url->link('extension/module/subcategory', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/subcategory', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/subcategory', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['user_token'] = $this->session->data['user_token'];
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
foreach(['name','status', 'category_ids', 'sizes'] as $item){
|
||||
|
||||
|
||||
if (isset($this->request->post[$item])) {
|
||||
$data[$item] = $this->request->post[$item];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data[$item] = $module_info[$item];
|
||||
} else {
|
||||
//$data[$item] = '';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
$this->load->model('catalog/category');
|
||||
|
||||
$categories = $this->model_catalog_category->getCategories();
|
||||
|
||||
$data['categories'] = array_combine(array_column($categories, 'category_id'), $categories);
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/subcategory', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/subcategory')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,176 @@
|
||||
<?php
|
||||
class ControllerExtensionModuleWDBanners extends Controller {
|
||||
private $error = array();
|
||||
|
||||
public function index() {
|
||||
|
||||
$this->load->language('extension/module/wd_banners');
|
||||
|
||||
$this->document->setTitle(strip_tags($this->language->get('heading_title')));
|
||||
|
||||
$this->load->model('setting/module');
|
||||
$this->load->model('localisation/language');
|
||||
$this->load->model('design/banner');
|
||||
|
||||
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$this->model_setting_module->addModule('wd_banners', $this->request->post);
|
||||
} else {
|
||||
$this->model_setting_module->editModule($this->request->get['module_id'], $this->request->post);
|
||||
}
|
||||
|
||||
$this->session->data['success'] = $this->language->get('text_success');
|
||||
|
||||
$this->response->redirect($this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true));
|
||||
}
|
||||
|
||||
$data['heading_title'] = $this->language->get('heading_title');
|
||||
|
||||
if (isset($this->error['warning'])) {
|
||||
$data['error_warning'] = $this->error['warning'];
|
||||
} else {
|
||||
$data['error_warning'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['name'])) {
|
||||
$data['error_name'] = $this->error['name'];
|
||||
} else {
|
||||
$data['error_name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->error['twig'])) {
|
||||
$data['error_twig'] = $this->error['twig'];
|
||||
} else {
|
||||
$data['error_twig'] = '';
|
||||
}
|
||||
|
||||
$data['breadcrumbs'] = array();
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_home'),
|
||||
'href' => $this->url->link('common/dashboard', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('text_extension'),
|
||||
'href' => $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true)
|
||||
);
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/wd_banners', 'user_token=' . $this->session->data['user_token'], true)
|
||||
);
|
||||
} else {
|
||||
$data['breadcrumbs'][] = array(
|
||||
'text' => $this->language->get('heading_title'),
|
||||
'href' => $this->url->link('extension/module/wd_banners', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true)
|
||||
);
|
||||
}
|
||||
|
||||
if (!isset($this->request->get['module_id'])) {
|
||||
$data['action'] = $this->url->link('extension/module/wd_banners', 'user_token=' . $this->session->data['user_token'], true);
|
||||
} else {
|
||||
$data['action'] = $this->url->link('extension/module/wd_banners', 'user_token=' . $this->session->data['user_token'] . '&module_id=' . $this->request->get['module_id'], true);
|
||||
}
|
||||
|
||||
$data['cancel'] = $this->url->link('marketplace/extension', 'user_token=' . $this->session->data['user_token'] . '&type=module', true);
|
||||
|
||||
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
|
||||
$module_info = $this->model_setting_module->getModule($this->request->get['module_id']);
|
||||
}
|
||||
|
||||
$data['THEME'] = $this->config->get('theme_'.$this->config->get('config_theme').'_directory');
|
||||
if (isset($this->request->post['name'])) {
|
||||
$data['name'] = $this->request->post['name'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['name'] = $module_info['name'];
|
||||
} else {
|
||||
$data['name'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['sizes'])) {
|
||||
$data['sizes'] = $this->request->post['sizes'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['sizes'] = $module_info['sizes'];
|
||||
} else {
|
||||
$data['sizes'] = [];
|
||||
}
|
||||
|
||||
if (isset($this->request->post['banner_id'])) {
|
||||
$data['banner_id'] = $this->request->post['banner_id'];
|
||||
} elseif (!empty($module_info['banner_id'])) {
|
||||
$data['banner_id'] = $module_info['banner_id'];
|
||||
} else {
|
||||
$data['banner_id'] = '';
|
||||
}
|
||||
|
||||
$data['banners'] = $this->model_design_banner->getBanners();
|
||||
|
||||
if (isset($this->request->post['fullwidth'])) {
|
||||
$data['fullwidth'] = $this->request->post['fullwidth'];
|
||||
} elseif (!empty($module_info['fullwidth'])) {
|
||||
$data['fullwidth'] = $module_info['fullwidth'];
|
||||
} else {
|
||||
$data['fullwidth'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['twig'])) {
|
||||
$data['twig'] = $this->request->post['twig'];
|
||||
} elseif (!empty($module_info['twig'])) {
|
||||
$data['twig'] = $module_info['twig'];
|
||||
} else {
|
||||
$data['twig'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['include'])) {
|
||||
$data['include'] = $this->request->post['include'];
|
||||
} elseif (!empty($module_info['include'])) {
|
||||
$data['include'] = $module_info['include'];
|
||||
} else {
|
||||
$data['include'] = '';
|
||||
}
|
||||
|
||||
if (isset($this->request->post['hide'])) {
|
||||
$data['hide'] = $this->request->post['hide'];
|
||||
} elseif (!empty($module_info['hide'])) {
|
||||
$data['hide'] = $module_info['hide'];
|
||||
} else {
|
||||
$data['hide'] = '';
|
||||
}
|
||||
|
||||
$data['languages'] = $this->model_localisation_language->getLanguages();
|
||||
|
||||
if (isset($this->request->post['status'])) {
|
||||
$data['status'] = $this->request->post['status'];
|
||||
} elseif (!empty($module_info)) {
|
||||
$data['status'] = $module_info['status'];
|
||||
} else {
|
||||
$data['status'] = '';
|
||||
}
|
||||
|
||||
$data['header'] = $this->load->controller('common/header');
|
||||
$data['column_left'] = $this->load->controller('common/column_left');
|
||||
$data['footer'] = $this->load->controller('common/footer');
|
||||
|
||||
$this->response->setOutput($this->load->view('extension/module/wd_banners', $data));
|
||||
}
|
||||
|
||||
protected function validate() {
|
||||
if (!$this->user->hasPermission('modify', 'extension/module/wd_banners')) {
|
||||
$this->error['warning'] = $this->language->get('error_permission');
|
||||
}
|
||||
|
||||
if ((utf8_strlen($this->request->post['name']) < 3) || (utf8_strlen($this->request->post['name']) > 64)) {
|
||||
$this->error['name'] = $this->language->get('error_name');
|
||||
}
|
||||
|
||||
$theme_path = $this->config->get('theme_' . $this->config->get('config_theme') . '_directory');
|
||||
|
||||
if(!file_exists(DIR_CATALOG . 'view/theme/' . $theme_path . '/template/extension/module/' . $this->request->post['twig'] . '.twig')){
|
||||
$this->error['twig'] = $this->language->get('error_twig');
|
||||
}
|
||||
|
||||
return !$this->error;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user