Добавление комментария к заказу (demodizzy) — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «Рассмотрим добавление комментария к заказу на примере демошаблона "Интернет-магазин совр…»)
 
 
(не показаны 2 промежуточные версии 2 участников)
Строка 1: Строка 1:
 +
'''Актуально для версии 2.9'''
 +
 
Рассмотрим добавление комментария к заказу на примере демошаблона "Интернет-магазин современный".
 
Рассмотрим добавление комментария к заказу на примере демошаблона "Интернет-магазин современный".
 
Для начала, напишем кастом, который будет записывать заказ.Откроем ~/classes/modules/emarket/__custom.php и поместим в него код:
 
Для начала, напишем кастом, который будет записывать заказ.Откроем ~/classes/modules/emarket/__custom.php и поместим в него код:
Строка 37: Строка 39:
 
</source>
 
</source>
 
Теперь при оформлении заказа пользователь сможет добавить к нему комментарий.
 
Теперь при оформлении заказа пользователь сможет добавить к нему комментарий.
[[Категория:Модуль Интернет магазин]][[Категория:Написание кастомных макросов]]
+
<p>
 +
Данный функционал был проверен на работоспособность в версии системы 2.8.5.2.
 +
</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.