Добрый день!
Я недавно взялся за изучение PHP и opencart в частности, до этого программировал на других языках.
Сижу разбираю стандартный модуль опенкарт и есть вопрос.
Я все понимаю, но не понимаю что будет результатом вот таких вот get ов, куда они обращаются?
$this->config->get('config_review_status')
Куда происходит обращение и что должно быть?
Я предположил, что это админская часть, но не разобрался.
Прошу уделить время моему вопросу, если у кого таковое имеется :)
Заранее спасибо.
<?php
/*
* @package AceShop
* @copyright 2009-2012 JoomAce LLC, www.joomace.net
* @license GNU/GPL http://www.gnu.org/copyleft/gpl.html
*/
// No Permission
defined('_JEXEC') or die('Restricted access');
class ControllerModuleFeatured extends Controller {
protected function index($setting) {
/* Загружаем все необходимые стандартные и не очень модули +начало+ */
$this->language->load('module/featured');
$this->data['heading_title'] = $this->language->get('heading_title');
$this->data['button_cart'] = $this->language->get('button_cart');
$this->load->model('catalog/product');
$this->load->model('tool/image');
$this->data['products'] = array();
/* Загружаем все необходимые стандартные и не очень модули -конец- */
$products = explode(',', $this->config->get('featured_product'));
/* Запускаем цикл по интересующим нас ID продуктам */
foreach ($products as $product_id) {
/* получаем информацию о товаре из базы */
$product_info = $this->model_catalog_product->getProduct($product_id);
/* если информация о продукте есть тогда */
if ($product_info) {
/* если есть картинка тогда = пережимаем ее в нужный размер и присваиваем переменной*/
if ($product_info['image']) {
$image = $this->model_tool_image->resize($product_info['image'], $setting['image_width'], $setting['image_height']);
/* иначе если картинки нет = присваиваем переменной булево ЛОЖЬ (тоесть нет картинки)*/
} else {
$image = false;
}
/* Что то касательно цен на товар */
if (($this->config->get('config_customer_price') && $this->customer->isLogged()) || !$this->config->get('config_customer_price')) {
$price = $this->currency->format($this->tax->calculate($product_info['price'], $product_info['tax_class_id'], $this->config->get('config_tax')));
} else {
$price = false;
}
/* Если спешл есть тогда что то мутим */
if ((float)$product_info['special']) {
$special = $this->currency->format($this->tax->calculate($product_info['special'], $product_info['tax_class_id'], $this->config->get('config_tax')));
} else {
$special = false;
}
if ($this->config->get('config_review_status')) {
$rating = $product_info['rating'];
} else {
$rating = false;
}
/* наполняем многомерный массив полученными данными, он доступен в шаблоне для вывода */
$this->data['products'][] = array(
'product_id' => $product_info['product_id'],
'thumb' => $image,
'name' => $product_info['name'],
'price' => $price,
'special' => $special,
'rating' => $rating,
'reviews' => sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']),
'href' => $this->url->link('product/product', 'product_id=' . $product_info['product_id']),
);
}
}
/* если есть указанный в настройках шаблон тогда ставим его в использование иначе используем стандартный*/
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/featured.tpl')) {
$this->template = $this->config->get('config_template') . '/template/module/featured.tpl';
} else {
$this->template = 'default/template/module/featured.tpl';
}
$this->render();
}
}
?>