Разные сообщения пользователю, в зависимости от статуса заказа simpla
Недавно пришла в голову идея: показывать в статусе заказа (на странице проверке заказа) разные сообщения пользователю, в зависимости от того, на какой стадии заказ находится. Речь, конечно, идет про интернет-магазины на основе cms simpla.
На форуме поддержки и в гугл-е подобных решений нет, поэтому пришлось прописывать условия самому. Не буду утомлять писаниной, сразу выложу код (код для страницы шаблона order.tpl):
{if $payment_method->id eq 11 && $order->status == 0} <div class="nb-message"> <span class="true">Ваш заказ принят.</span> <span class="nb">В ближайшее время наши менеджеры свяжутся с Вами для подтверждения деталей заказа.</span></div> {else if $payment_method->id ne 11 && $order->paid == 0} <div class="nb-message"> <span class="true">Ваш заказ принят.</span> <span class="nb">После оплаты заказа, наши менеджеры свяжутся с Вами для подтверждения деталей.</span></div> {else if $order->status == 0} <div class="nb-message"> <span class="true">Ваш заказ оплачен.</span> <span class="nb">В ближайшее время наши менеджеры свяжутся с Вами для подтверждения деталей заказа.</span></div> {else if $order->status == 1} <div class="nb-message"> <span class="true">Ваш заказ оплачен.</span> <span class="nb">Ваш заказ обрабатывается.</span></div> {else} <div class="nb-message"> <span class="true">Ваш заказ оплачен.</span> <span class="true" style="margin-bottom:0;">Ваш заказ выполнен.<br> Мы будем очень благодарны, если Вы оставите <a href="/responses/">отзыв о работе нашего магазина:)</a></span></div> {/if}
Сразу хочу отметить, что в моем случае имеет место такая механика: для форм оплаты, которые проходят через интернет (банковские карты, киви, вебмани - в общем, все, кроме наличных курьеру - наложным платежом не пользуюсь), заказ не может быть в обработке или выполнен, пока по нему не получена оплата.
Поэтому здесь мы видим следующее условие: Если выбран способ оплаты "Наличными курьеру" (ID=11 - eq 11), то показывается сообщение, что все ок, скоро мы с Вами свяжемся; во всех других вариантах оплаты переходим к следующему условию (else if $payment_method->id ne 11 && $order->paid == 0): если заказ не оплачен (и выбран вариант оплаты НЕ наличными курьеру), то пишется: "После оплаты заказа мы с вами свяжемся"; дальше (else if $order->status == 0): если заказ не обрабатывается, то пишем: "Ваш заказ оплачен, скоро свяжемся"; если заказ обрабатывается (else if $order->status == 1): "Ваш заказ оплачен, в обработке"; или если все эти условия не сработали, то (else): "Ваш заказ оплачен, он выполнен". Все достаточно просто и логично. Всем удачи.
P.S. Стили добавляем по вкусу:) Классы расставил.