HEX
Server: LiteSpeed
System: Linux php-prod-3.spaceapp.ru 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC 2025 x86_64
User: sarli3128 (1010)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //home/retile.ru/public_html/admin/controller/extension/theme/unishop2.php
<?php
class ControllerExtensionThemeUnishop2 extends Controller {
	private $error = array();

	public function index() {
		$this->load->language('extension/theme/unishop2');

		$this->document->setTitle($this->language->get('heading_title'));

		$this->load->model('setting/setting');
		
		$token = 'user_token='.$this->session->data['user_token'];

		if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
			$this->model_setting_setting->editSetting('theme_unishop2', $this->request->post, $this->request->get['store_id']);

			$this->session->data['success'] = $this->language->get('text_success');
			
			$this->model_setting_setting->editSettingValue('config', 'config_theme', 'unishop2');

			$this->response->redirect($this->url->link('marketplace/extension', $token.'&type=theme', true));
		}

		if (isset($this->error['warning'])) {
			$data['error_warning'] = $this->error['warning'];
		} else {
			$data['error_warning'] = '';
		}

		if (isset($this->error['product_limit'])) {
			$data['error_product_limit'] = $this->error['product_limit'];
		} else {
			$data['error_product_limit'] = '';
		}

		if (isset($this->error['product_description_length'])) {
			$data['error_product_description_length'] = $this->error['product_description_length'];
		} else {
			$data['error_product_description_length'] = '';
		}

		if (isset($this->error['image_category'])) {
			$data['error_image_category'] = $this->error['image_category'];
		} else {
			$data['error_image_category'] = '';
		}

		if (isset($this->error['image_thumb'])) {
			$data['error_image_thumb'] = $this->error['image_thumb'];
		} else {
			$data['error_image_thumb'] = '';
		}

		if (isset($this->error['image_popup'])) {
			$data['error_image_popup'] = $this->error['image_popup'];
		} else {
			$data['error_image_popup'] = '';
		}

		if (isset($this->error['image_product'])) {
			$data['error_image_product'] = $this->error['image_product'];
		} else {
			$data['error_image_product'] = '';
		}

		if (isset($this->error['image_additional'])) {
			$data['error_image_additional'] = $this->error['image_additional'];
		} else {
			$data['error_image_additional'] = '';
		}

		if (isset($this->error['image_related'])) {
			$data['error_image_related'] = $this->error['image_related'];
		} else {
			$data['error_image_related'] = '';
		}

		if (isset($this->error['image_compare'])) {
			$data['error_image_compare'] = $this->error['image_compare'];
		} else {
			$data['error_image_compare'] = '';
		}

		if (isset($this->error['image_wishlist'])) {
			$data['error_image_wishlist'] = $this->error['image_wishlist'];
		} else {
			$data['error_image_wishlist'] = '';
		}

		if (isset($this->error['image_cart'])) {
			$data['error_image_cart'] = $this->error['image_cart'];
		} else {
			$data['error_image_cart'] = '';
		}

		if (isset($this->error['image_location'])) {
			$data['error_image_location'] = $this->error['image_location'];
		} else {
			$data['error_image_location'] = '';
		}
		
		$data['breadcrumbs'] = [];

		$data['breadcrumbs'][] = [
			'text' => $this->language->get('text_home'),
			'href' => $this->url->link('common/dashboard', $token, true)
		];

		$data['breadcrumbs'][] = [
			'text' => $this->language->get('text_theme'),
			'href' => $this->url->link('marketplace/extension', $token, true)
		];

		$data['breadcrumbs'][] = [
			'text' => $this->language->get('heading_title'),
			'href' => $this->url->link('extension/theme/unishop2', $token.'&store_id='.$this->request->get['store_id'], true)
		];

		$data['action'] = $this->url->link('extension/theme/unishop2', $token.'&store_id='.$this->request->get['store_id'], true);
		$data['cancel'] = $this->url->link('marketplace/extension', $token.'&type=theme', true);
		
		$data['panel_url'] = $this->url->link('extension/module/uni_settings', $token, true);

		if (isset($this->request->get['store_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
			$setting_info = $this->model_setting_setting->getSetting('theme_unishop2', $this->request->get['store_id']);
		}
		
		if (isset($this->request->post['theme_unishop2_directory'])) {
			$data['theme_unishop2_directory'] = $this->request->post['theme_unishop2_directory'];
		} elseif (isset($setting_info['theme_unishop2_directory'])) {
			$data['theme_unishop2_directory'] = $setting_info['theme_unishop2_directory'];
		} else {
			$data['theme_unishop2_directory'] = 'unishop2';
		}		

		$data['directories'] = array();

		$directories = glob(DIR_CATALOG . 'view/theme/*', GLOB_ONLYDIR);

		foreach ($directories as $directory) {
			$data['directories'][] = basename($directory);
		}

		if (isset($this->request->post['theme_unishop2_product_limit'])) {
			$data['theme_unishop2_product_limit'] = $this->request->post['theme_unishop2_product_limit'];
		} elseif (isset($setting_info['theme_unishop2_product_limit'])) {
			$data['theme_unishop2_product_limit'] = $setting_info['theme_unishop2_product_limit'];
		} else {
			$data['theme_unishop2_product_limit'] = 15;
		}		
		
		if (isset($this->request->post['theme_unishop2_status'])) {
			$data['theme_unishop2_status'] = $this->request->post['theme_theme_unishop2_status'];
		} elseif (isset($setting_info['theme_unishop2_status'])) {
			$data['theme_unishop2_status'] = $this->config->get('theme_unishop2_status');
		} else {
			$data['theme_unishop2_status'] = 1;
		}
		
		if (isset($this->request->post['theme_unishop2_product_description_length'])) {
			$data['theme_unishop2_product_description_length'] = $this->request->post['theme_unishop2_product_description_length'];
		} elseif (isset($setting_info['theme_unishop2_product_description_length'])) {
			$data['theme_unishop2_product_description_length'] = $this->config->get('theme_unishop2_product_description_length');
		} else {
			$data['theme_unishop2_product_description_length'] = 100;
		}
		
		if (isset($this->request->post['theme_unishop2_image_category_width'])) {
			$data['theme_unishop2_image_category_width'] = $this->request->post['theme_unishop2_image_category_width'];
		} elseif (isset($setting_info['theme_unishop2_image_category_width'])) {
			$data['theme_unishop2_image_category_width'] = $this->config->get('theme_unishop2_image_category_width');
		} else {
			$data['theme_unishop2_image_category_width'] = 160;		
		}
		
		if (isset($this->request->post['theme_unishop2_image_category_height'])) {
			$data['theme_unishop2_image_category_height'] = $this->request->post['theme_unishop2_image_category_height'];
		} elseif (isset($setting_info['theme_unishop2_image_category_height'])) {
			$data['theme_unishop2_image_category_height'] = $this->config->get('theme_unishop2_image_category_height');
		} else {
			$data['theme_unishop2_image_category_height'] = 120;
		}
		
		if (isset($this->request->post['theme_unishop2_image_manufacturer_width'])) {
			$data['theme_unishop2_image_manufacturer_width'] = $this->request->post['theme_unishop2_image_manufacturer_width'];
		} elseif (isset($setting_info['theme_unishop2_image_manufacturer_width'])) {
			$data['theme_unishop2_image_manufacturer_width'] = $setting_info['theme_unishop2_image_manufacturer_width'];
		} else {
			$data['theme_unishop2_image_manufacturer_width'] = 160;		
		}
		
		if (isset($this->request->post['theme_unishop2_image_manufacturer_height'])) {
			$data['theme_unishop2_image_manufacturer_height'] = $this->request->post['theme_unishop2_image_manufacturer_height'];
		} elseif (isset($setting_info['theme_unishop2_image_manufacturer_height'])) {
			$data['theme_unishop2_image_manufacturer_height'] = $setting_info['theme_unishop2_image_manufacturer_height'];
		} else {
			$data['theme_unishop2_image_manufacturer_height'] = 120;
		}
		
		if (isset($this->request->post['theme_unishop2_image_thumb_width'])) {
			$data['theme_unishop2_image_thumb_width'] = $this->request->post['theme_unishop2_image_thumb_width'];
		} elseif (isset($setting_info['theme_unishop2_image_thumb_width'])) {
			$data['theme_unishop2_image_thumb_width'] = $this->config->get('theme_unishop2_image_thumb_width');
		} else {
			$data['theme_unishop2_image_thumb_width'] = 420;
		}
		
		if (isset($this->request->post['theme_unishop2_image_thumb_height'])) {
			$data['theme_unishop2_image_thumb_height'] = $this->request->post['theme_unishop2_image_thumb_height'];
		} elseif (isset($setting_info['theme_unishop2_image_thumb_height'])) {
			$data['theme_unishop2_image_thumb_height'] = $this->config->get('theme_unishop2_image_thumb_height');
		} else {
			$data['theme_unishop2_image_thumb_height'] = 340;		
		}
		
		if (isset($this->request->post['theme_unishop2_image_popup_width'])) {
			$data['theme_unishop2_image_popup_width'] = $this->request->post['theme_unishop2_image_popup_width'];
		} elseif (isset($setting_info['theme_unishop2_image_popup_width'])) {
			$data['theme_unishop2_image_popup_width'] = $this->config->get('theme_unishop2_image_popup_width');
		} else {
			$data['theme_unishop2_image_popup_width'] = 1200;
		}
		
		if (isset($this->request->post['theme_unishop2_image_popup_height'])) {
			$data['theme_unishop2_image_popup_height'] = $this->request->post['theme_unishop2_image_popup_height'];
		} elseif (isset($setting_info['theme_unishop2_image_popup_height'])) {
			$data['theme_unishop2_image_popup_height'] = $this->config->get('theme_unishop2_image_popup_height');
		} else {
			$data['theme_unishop2_image_popup_height'] = 800;
		}
		
		if (isset($this->request->post['theme_unishop2_image_product_width'])) {
			$data['theme_unishop2_image_product_width'] = $this->request->post['theme_unishop2_image_product_width'];
		} elseif (isset($setting_info['theme_unishop2_image_product_width'])) {
			$data['theme_unishop2_image_product_width'] = $this->config->get('theme_unishop2_image_product_width');
		} else {
			$data['theme_unishop2_image_product_width'] = 220;
		}
		
		if (isset($this->request->post['theme_unishop2_image_product_height'])) {
			$data['theme_unishop2_image_product_height'] = $this->request->post['theme_unishop2_image_product_height'];
		} elseif (isset($setting_info['theme_unishop2_image_product_height'])) {
			$data['theme_unishop2_image_product_height'] = $this->config->get('theme_unishop2_image_product_height');
		} else {
			$data['theme_unishop2_image_product_height'] = 200;
		}
		
		if (isset($this->request->post['theme_unishop2_image_additional_width'])) {
			$data['theme_unishop2_image_additional_width'] = $this->request->post['theme_unishop2_image_additional_width'];
		} elseif (isset($setting_info['theme_unishop2_image_additional_width'])) {
			$data['theme_unishop2_image_additional_width'] = $this->config->get('theme_unishop2_image_additional_width');
		} else {
			$data['theme_unishop2_image_additional_width'] = 74;
		}
		
		if (isset($this->request->post['theme_unishop2_image_additional_height'])) {
			$data['theme_unishop2_image_additional_height'] = $this->request->post['theme_unishop2_image_additional_height'];
		} elseif (isset($setting_info['theme_unishop2_image_additional_height'])) {
			$data['theme_unishop2_image_additional_height'] = $this->config->get('theme_unishop2_image_additional_height');
		} else {
			$data['theme_unishop2_image_additional_height'] = 74;
		}
		
		if (isset($this->request->post['theme_unishop2_image_related_width'])) {
			$data['theme_unishop2_image_related_width'] = $this->request->post['theme_unishop2_image_related_width'];
		} elseif (isset($setting_info['theme_unishop2_image_related_width'])) {
			$data['theme_unishop2_image_related_width'] = $this->config->get('theme_unishop2_image_related_width');
		} else {
			$data['theme_unishop2_image_related_width'] = 200;
		}
		
		if (isset($this->request->post['theme_unishop2_image_related_height'])) {
			$data['theme_unishop2_image_related_height'] = $this->request->post['theme_unishop2_image_related_height'];
		} elseif (isset($setting_info['theme_unishop2_image_related_height'])) {
			$data['theme_unishop2_image_related_height'] = $this->config->get('theme_unishop2_image_related_height');
		} else {
			$data['theme_unishop2_image_related_height'] = 180;
		}
		
		if (isset($this->request->post['theme_unishop2_image_compare_width'])) {
			$data['theme_unishop2_image_compare_width'] = $this->request->post['theme_unishop2_image_compare_width'];
		} elseif (isset($setting_info['theme_unishop2_image_compare_width'])) {
			$data['theme_unishop2_image_compare_width'] = $this->config->get('theme_unishop2_image_compare_width');
		} else {
			$data['theme_unishop2_image_compare_width'] = 90;
		}
		
		if (isset($this->request->post['theme_unishop2_image_compare_height'])) {
			$data['theme_unishop2_image_compare_height'] = $this->request->post['theme_unishop2_image_compare_height'];
		} elseif (isset($setting_info['theme_unishop2_image_compare_height'])) {
			$data['theme_unishop2_image_compare_height'] = $this->config->get('theme_unishop2_image_compare_height');
		} else {
			$data['theme_unishop2_image_compare_height'] = 90;
		}
		
		if (isset($this->request->post['theme_unishop2_image_wishlist_width'])) {
			$data['theme_unishop2_image_wishlist_width'] = $this->request->post['theme_unishop2_image_wishlist_width'];
		} elseif (isset($setting_info['theme_unishop2_image_wishlist_width'])) {
			$data['theme_unishop2_image_wishlist_width'] = $this->config->get('theme_unishop2_image_wishlist_width');
		} else {
			$data['theme_unishop2_image_wishlist_width'] = 47;
		}
		
		if (isset($this->request->post['theme_unishop2_image_wishlist_height'])) {
			$data['theme_unishop2_image_wishlist_height'] = $this->request->post['theme_unishop2_image_wishlist_height'];
		} elseif (isset($setting_info['theme_unishop2_image_wishlist_height'])) {
			$data['theme_unishop2_image_wishlist_height'] = $this->config->get('theme_unishop2_image_wishlist_height');
		} else {
			$data['theme_unishop2_image_wishlist_height'] = 47;
		}
		
		if (isset($this->request->post['theme_unishop2_image_cart_width'])) {
			$data['theme_unishop2_image_cart_width'] = $this->request->post['theme_unishop2_image_cart_width'];
		} elseif (isset($setting_info['theme_unishop2_image_cart_width'])) {
			$data['theme_unishop2_image_cart_width'] = $this->config->get('theme_unishop2_image_cart_width');
		} else {
			$data['theme_unishop2_image_cart_width'] = 47;
		}
		
		if (isset($this->request->post['theme_unishop2_image_cart_height'])) {
			$data['theme_unishop2_image_cart_height'] = $this->request->post['theme_unishop2_image_cart_height'];
		} elseif (isset($setting_info['theme_unishop2_image_cart_height'])) {
			$data['theme_unishop2_image_cart_height'] = $this->config->get('theme_unishop2_image_cart_height');
		} else {
			$data['theme_unishop2_image_cart_height'] = 47;
		}
		
		if (isset($this->request->post['theme_unishop2_image_location_width'])) {
			$data['theme_unishop2_image_location_width'] = $this->request->post['theme_unishop2_image_location_width'];
		} elseif (isset($setting_info['theme_unishop2_image_location_width'])) {
			$data['theme_unishop2_image_location_width'] = $this->config->get('theme_unishop2_image_location_width');
		} else {
			$data['theme_unishop2_image_location_width'] = 160;
		}
		
		if (isset($this->request->post['theme_unishop2_image_location_height'])) {
			$data['theme_unishop2_image_location_height'] = $this->request->post['theme_unishop2_image_location_height'];
		} elseif (isset($setting_info['theme_unishop2_image_location_height'])) {
			$data['theme_unishop2_image_location_height'] = $this->config->get('theme_unishop2_image_location_height');
		} else {
			$data['theme_unishop2_image_location_height'] = 50;
		}
		
		$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/theme/unishop2', $data));
	}
	
	public function install() {
		$this->load->model('setting/setting');
		
		$token = 'user_token='.$this->session->data['user_token'];
		
		$data = [
			'theme_unishop2_directory' 					=> 'unishop2',
			'theme_unishop2_status' 					=> 1,
			'theme_unishop2_product_limit' 				=> 24,
			'theme_unishop2_product_description_length' => 120,
			'theme_unishop2_image_category_width' 		=> 140,
			'theme_unishop2_image_category_height' 		=> 100,
			'theme_unishop2_image_manufacturer_width' 	=> 140,
			'theme_unishop2_image_manufacturer_height'	=> 100,
			'theme_unishop2_image_thumb_width' 			=> 500,
			'theme_unishop2_image_thumb_height' 		=> 400,
			'theme_unishop2_image_popup_width' 			=> 1200,
			'theme_unishop2_image_popup_height' 		=> 800,
			'theme_unishop2_image_product_width' 		=> 220,
			'theme_unishop2_image_product_height' 		=> 200,
			'theme_unishop2_image_additional_width' 	=> 74,
			'theme_unishop2_image_additional_height' 	=> 74,
			'theme_unishop2_image_related_width' 		=> 220,
			'theme_unishop2_image_related_height' 		=> 200,
			'theme_unishop2_image_compare_width' 		=> 90,
			'theme_unishop2_image_compare_height' 		=> 90,
			'theme_unishop2_image_wishlist_width' 		=> 47,
			'theme_unishop2_image_wishlist_height' 		=> 47,
			'theme_unishop2_image_cart_width' 			=> 47,
			'theme_unishop2_image_cart_height' 			=> 47,
			'theme_unishop2_image_location_width' 		=> 270,
			'theme_unishop2_image_location_height' 		=> 50
		];
		
		$this->model_setting_setting->editSetting('theme_unishop2', $data, 0);
		$this->model_setting_setting->editSettingValue('config', 'config_theme', 'unishop2');
		
		$this->config->set('theme_unishop2_status', 1);
	}

	protected function validate() {
		if (!$this->user->hasPermission('modify', 'extension/theme/unishop2')) {
			$this->error['warning'] = $this->language->get('error_permission');
		}

		if (!$this->request->post['theme_unishop2_product_limit']) {
			$this->error['product_limit'] = $this->language->get('error_limit');
		}

		if (!$this->request->post['theme_unishop2_product_description_length']) {
			$this->error['product_description_length'] = $this->language->get('error_limit');
		}

		if (!$this->request->post['theme_unishop2_image_category_width'] || !$this->request->post['theme_unishop2_image_category_height']) {
			$this->error['image_category'] = $this->language->get('error_image_category');
		}

		if (!$this->request->post['theme_unishop2_image_thumb_width'] || !$this->request->post['theme_unishop2_image_thumb_height']) {
			$this->error['image_thumb'] = $this->language->get('error_image_thumb');
		}

		if (!$this->request->post['theme_unishop2_image_popup_width'] || !$this->request->post['theme_unishop2_image_popup_height']) {
			$this->error['image_popup'] = $this->language->get('error_image_popup');
		}

		if (!$this->request->post['theme_unishop2_image_product_width'] || !$this->request->post['theme_unishop2_image_product_height']) {
			$this->error['image_product'] = $this->language->get('error_image_product');
		}

		if (!$this->request->post['theme_unishop2_image_additional_width'] || !$this->request->post['theme_unishop2_image_additional_height']) {
			$this->error['image_additional'] = $this->language->get('error_image_additional');
		}

		if (!$this->request->post['theme_unishop2_image_related_width'] || !$this->request->post['theme_unishop2_image_related_height']) {
			$this->error['image_related'] = $this->language->get('error_image_related');
		}

		if (!$this->request->post['theme_unishop2_image_compare_width'] || !$this->request->post['theme_unishop2_image_compare_height']) {
			$this->error['image_compare'] = $this->language->get('error_image_compare');
		}

		if (!$this->request->post['theme_unishop2_image_wishlist_width'] || !$this->request->post['theme_unishop2_image_wishlist_height']) {
			$this->error['image_wishlist'] = $this->language->get('error_image_wishlist');
		}

		if (!$this->request->post['theme_unishop2_image_cart_width'] || !$this->request->post['theme_unishop2_image_cart_height']) {
			$this->error['image_cart'] = $this->language->get('error_image_cart');
		}

		if (!$this->request->post['theme_unishop2_image_location_width'] || !$this->request->post['theme_unishop2_image_location_height']) {
			$this->error['image_location'] = $this->language->get('error_image_location');
		}

		return !$this->error;
	}
}