Добавление комментария к заказу (demodizzy) — различия между версиями
Материал из Umicms
Davidov (обсуждение | вклад) |
Mad grant (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | '''Актуально для версии 2.9''' | ||
+ | |||
Рассмотрим добавление комментария к заказу на примере демошаблона "Интернет-магазин современный". | Рассмотрим добавление комментария к заказу на примере демошаблона "Интернет-магазин современный". | ||
Для начала, напишем кастом, который будет записывать заказ.Откроем ~/classes/modules/emarket/__custom.php и поместим в него код: | Для начала, напишем кастом, который будет записывать заказ.Откроем ~/classes/modules/emarket/__custom.php и поместим в него код: | ||
Строка 40: | Строка 42: | ||
Данный функционал был проверен на работоспособность в версии системы 2.8.5.2. | Данный функционал был проверен на работоспособность в версии системы 2.8.5.2. | ||
</p> | </p> | ||
− | [[Категория:Модуль Интернет магазин]][[Категория:Написание кастомных макросов]] | + | [[Категория:Модуль Интернет магазин]][[Категория:Написание кастомных макросов]][[Категория: Верстка в XSLT]] |
Текущая версия на 09:30, 5 июня 2013
Актуально для версии 2.9
Рассмотрим добавление комментария к заказу на примере демошаблона "Интернет-магазин современный". Для начала, напишем кастом, который будет записывать заказ.Откроем ~/classes/modules/emarket/__custom.php и поместим в него код:
<?php
public function purchasecomment(){
$comment = htmlspecialchars(getRequest('comment'));
$ini = cmsController::getInstance()->getModule('emarket');
$order = $ini->getBasketOrder(false);
$order->comment = $comment;
$order->commit();
$ini->redirect('/emarket/purchase/');
}
?>
Также, пропишем этот макрос в файл ~/classes/modules/emarket/permissions.custom.php
<?php
$permissions = array('purchasing' => array('purchasecomment'));
?>
После этого, в модуле "Шаблоны данных" создадим поле типа "Простой текст" с идентификатором "comment". Осталось только изменить шаблон дизайна, выводящий корзину. В demodizzy это ~/xsltTpls/modules/emarket/cart.xsl. Откроем его, и заменим
<a href="{$lang-prefix}/emarket/purchase/" class="button big basket_purchase">
<xsl:text>&begin-purchase;</xsl:text>
</a>
на
<form action="{$lang-prefix}/emarket/purchasecomment/" >
Ваш комментарий:<br />
<textarea style="width: 300px; height: 50px;" name="comment"></textarea>
<br /><br />
<input type="submit" class="button big basket_purchase" value="&begin-purchase;" />
</form>
Теперь при оформлении заказа пользователь сможет добавить к нему комментарий.
Данный функционал был проверен на работоспособность в версии системы 2.8.5.2.