UMIhelp

Разработка дополнительного функционала => Custom макросы => Тема начата: sam от 02 Ноября 2016, 18:40:06

Название: Предзаказ
Отправлено: sam от 02 Ноября 2016, 18:40:06
Здравствуйте! Хотим сделать кнопку "предзаказ" в место "добавить в корзину" для товаров в пути (наличие - ожидается...). Можно ли сделать сокращенное оформление, т.е., чтобы товар добавился в корзину, а потом, чтобы клиент заполнил только свои контакты, без адреса, без условий доставки и оплаты - вывод сразу к "success"?! Если это сложно сделать, то второй вариант - кнопка "предзаказ", а по нажатии открывается форма с контактами, которую надо заполнить, а после отправить предзаказ (это по аналогии заказ в 1 клик). Что в первом варианте, так и во втором, предполагается, что должен быть оформлен очередной заказ в системе. Буду признателен за советы по реализации аналогичной функции.
Название: Re: Предзаказ
Отправлено: aghigay от 02 Ноября 2016, 21:50:51
Как вариант - на предзаказ можно использовать механизм заказа в 1 клик (http://dev.docs.umi-cms.ru/prakticheskie_primery/zakaz_v_1_klik/). Но, если перед заказом нужно обязательно класть в корзину, вопрос в том, как будет оформляться заказ, если вдруг в корзине есть и товары, которые по предзаказу и товары, которые в наличии?
Название: Re: Предзаказ
Отправлено: sam от 03 Ноября 2016, 00:03:29
Здравствуйте, Александр! Благодарю за отклик! По сути вопроса - главное, чтобы при предзаказе был оформлен очередной заказ в системе (можно и без использования корзины). Например, чтобы по нажатию кнопки "предзаказ", открылась/всплыла форма с контактами (popup), которую надо заполнить - далее нажать "отправить", и заказ, чтобы в этот момент был оформлен. Да, это чем-то похоже на заказ в 1 клик, о чём мы оба упомянули выше. Но, реализация заказа в 1 клик не так-то и проста (для вас, как разработчика, это как воду выпить, конечно). По этому, лучше идти по легкому пути. Направьте меня, пожалуйста, и местами поправьте, при необходимости - создаём форму в "обратной связи", а далее каким-то нехитрым способом привязываем эту форму к кнопке "предзаказ" (я не знаю как это привязать), далее тоже не знаю, как сделать, чтобы в итоге получился заказ?! Плюс к этому, ещё и письмо уведомление на почту менеджеров чтобы пришло?! Устно-то придумать можем многое, а как это реализовать?!...

P.S. При заказе в 1 клик, если в корзине есть уже товар, плюс его же заказываешь в 1 клик, то получаешь 2 шт - и то, что в корзине, и то, что через 1 клик оформил.
Название: Re: Предзаказ
Отправлено: aghigay от 03 Ноября 2016, 12:50:44
Я не хочу прямой путь. Он сложный.
Я хочу извилистый, с проблемами, но вроде как он проще выглядит.

Дело ваше - вы решаете. Тут не курсы по обучению правильным решениям. Тут ответы в духе "можно так".
Название: Re: Предзаказ
Отправлено: sam от 03 Ноября 2016, 13:23:00
Согласен с Вами, Александр. А может, вообще не стоит изобретать велосипед?! Я имею в веду, что, может просто названия на кнопках менять, в зависимости от статуса наличия товара - это, чтобы макросы новые не пришлось еще напридумывать. Т.е., всё через корзину ("в наличии", "ожидается", "на заказ" - мало ли кто захочет больше 1-й шт заказать), плюс, чтобы менялись надписи - "заказ в один клик", "оформить предзаказ" и "оформить под заказ" (здесь то всплывает готовое окошко с контактами). Что-то вроде этого:
Это для заказов через корзину:
<xsl:choose>
<xsl:when test="//property[@name = 'available']/value/item/@id = '10694'">
<!--когда наличие равно "ожидается"-->
<xsl:text>Предзаказ</xsl:text>
</xsl:when>
<xsl:when test="//property[@name = 'available']/value/item/@id = '10695'">
<!--когда наличие равно "на заказ"-->
<xsl:text>Под заказ</xsl:text>
</xsl:when>
<xsl:otherwise>
<!--Иначе-->
<xsl:text>В корзину</xsl:text>
</xsl:otherwise>
</xsl:choose>
Это для быстрых заказов со всплывающим окном:
<xsl:choose>
<xsl:when test="//property[@name = 'available']/value/item/@id = '10694'">
<!--когда наличие равно "ожидается"-->
<xsl:text>Оформить предзаказ</xsl:text>
</xsl:when>
<xsl:when test="//property[@name = 'available']/value/item/@id = '10695'">
<!--когда наличие равно "на заказ"-->
<xsl:text>Оформить под заказ</xsl:text>
</xsl:when>
<xsl:otherwise>
<!--Иначе-->
<xsl:text>Заказ в один клик</xsl:text>
</xsl:otherwise>
</xsl:choose>