Всем привет!
Возникла проблема. Используется модуль Buy One Click for OpenCart 2.0.x, 2.1.x, 2.2.x
Потребовалось внедрить в тело письма о заказе статус "Предзаказ" или "Обычный". Для product.tpl внедряем следующий код:
<operation>
<search>
<![CDATA[
<input id="order_admin_email" type="text" name="admin_email" value="<?php echo $buyoneclick_admin_email; ?>">
]]>
</search>
<add position="after">
<![CDATA[
<?php if ($in_stock == 0) { ?>
<input id="order_admin_email" type="hidden" name="predzakaz" value="Предзаказ">
<?php } else { ?>
<input id="order_admin_email" type="hidden" name="predzakaz" value="Обычный">
<?php } ?>
]]>
</add>
</operation>
Т.е., если делаю заказ непосредственно из карточки товара, все прекрасно срабатывает, нужный статус есть в пришедшем письме.
Но такая конструкция не работает, если делать заказ со страницы категории.
Есть конструкция, расположенная в category.tpl
<?php if ($product['stock'] == 0): ?>
<div class='button-group' style='margin-top:10px;'><button class='clcikbtts product-btn-add order' type='button' data-texts='Сделать предзаказ' data-toggle='modal' data-target='#order' style='display:block; width:100%;padding:5px 0px;font-size:14px;' return true;'>Сделать предзаказ</button></div>
<?php else: ?>
<div class='button-group' style='margin-top:10px;'><button class='clcikbtts product-btn-add order' type='button' data-toggle='modal' data-texts='<?php echo $buyoneclick_name; ?>' data-target='#order' style='display:block; width:100%;padding:5px 0px;font-size:14px;' return true;'><?php echo $buyoneclick_name; ?></button></div>
<?php endif ?>
Она делает подмену названия кнопки в зависимости от количества товара, если 0, кнопка "Сделать предзаказ", если не равно 0, то кнопка "Купить в 1 клик". Форма всплывает одна и та же (и обработчик один), что и на странице товара - просто в форме также подменяются заголовки.
Пытаюсь сделать
<operation>
<search>
<![CDATA[
<input id="order_admin_email" type="text" name="admin_email" value="<?php echo $buyoneclick_admin_email; ?>">
]]>
</search>
<add position="after">
<![CDATA[
<?php if ($product['stock'] == 0): ?>
<input id="order_admin_email" type="hidden" name="predzakaz" value="Предзаказ">
<?php else: ?>
<input id="order_admin_email" type="hidden" name="predzakaz" value="Обычный">
<?php endif ?>
]]>
</add>
</operation>
Не работает. С какой бы кнопки не приходил заказ, статус "Предзаказ" приходит.
Не могу разобраться почему, ведь такое же условие срабатывает для подмены названия кнопки