Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Вывод суммы заказов всей истории покупок пользователя

Автор johnРаздел Шаблоны XSLT

Ответов: 1
Просмотров: 1752
Последний ответ 10 Октября 2014, 00:09:25
от admin
статус заказа - с отображением цветом в списке заказов

Автор kroxaРаздел Шаблоны XSLT

Ответов: 0
Просмотров: 2394
Последний ответ 10 Ноября 2011, 16:01:14
от kroxa
Постраничный вывод списка заказов залогиненного пользователя

Автор cergey251Раздел Макросы UMI.CMS

Ответов: 4
Просмотров: 3761
Последний ответ 29 Декабря 2011, 13:32:48
от cergey251
UMI.Selector: выборка заказов только зарегистрированных пользователей

Автор atachРаздел Custom макросы

Ответов: 1
Просмотров: 2001
Последний ответ 25 Мая 2017, 16:10:05
от admin
Корзина заказов без модуля интернет-магазина

Автор evinРаздел Разработка модулей

Ответов: 10
Просмотров: 8576
Последний ответ 05 Октября 2011, 12:42:16
от evin

0 Пользователей и 1 Гость просматривают эту тему.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #15 : 01 Марта 2012, 16:06:10 »
скорее всего %price% есть и у переменных для шаблона письма и для шаблона товара, может их перекрывает, мехонизм в php можно посмотреть в /calsses/modules/emarket/__purchasing.php (%emarket order()%) и /calsses/modules/emarket/__notification.php (там идет отправка письма)

*

penelite

  • *
  • 10
  • +0/-0
    • Просмотр профиля
    • http://penelite.ru/
Re:Статусы заказов и шаблоны писем
« Ответ #16 : 01 Марта 2012, 17:30:27 »
%price% нет у переменных шаблона письма. Перерыл все шаблоны с %price%, так и не понял по какому шаблону это выводится, похоже, что ни по какому.

Получается, что в __purchasing.php в price записывается массив вот здесь:

            $item_arr['price'] = $this->formatCurrencyPrice(array(
               'original'   => $plainPriceOriginal,
               'actual'   => $plainPriceActual
            ));

В функции formatCurrencyPrice как раз и записывают все эти значения:

         $result = array(
            'attribute:name'      => $currency->name,
            'attribute:rate'      => $currency->rate,
            'attribute:nominal'      => $currency->nominal,
            'void:currency_name'   => $currency->name
         );

Которые потом просто выводятся подряд в письме при вызове %price%
Не понимаю.

А можно, кстати, менять файлы __purchasing.php, __currency.php ? Или они затрутся при следующем обновлении?

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #17 : 01 Марта 2012, 18:40:45 »
затрутся при обновлении, такое чуdство что у те,я система пытается вывести данные для xslt шаблонизатора, несмотря на то что у тебя включен tpl шаблонизатор (если я правильно понимаю)

*

penelite

  • *
  • 10
  • +0/-0
    • Просмотр профиля
    • http://penelite.ru/
Re:Статусы заказов и шаблоны писем
« Ответ #18 : 01 Марта 2012, 23:37:13 »
Нет :)
В том то и дело, что у меня на xslt все.
Но, если я правильно понял, шаблон письма в любом случае формируется по tpl -  tpls\emarket\mail\default.tpl ?
В документации вроде так написано.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #19 : 02 Марта 2012, 00:02:57 »
система шаблонизации старая или пробуешь новую, когда все в одной папке?

*

penelite

  • *
  • 10
  • +0/-0
    • Просмотр профиля
    • http://penelite.ru/
Re:Статусы заказов и шаблоны писем
« Ответ #20 : 02 Марта 2012, 00:20:47 »
Все по разным папкам - значит старая, видимо

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #21 : 02 Марта 2012, 01:17:04 »
в версии 2.8.5 сделали свой шаблонизатор xslt'ый , поэтому просто использовать tpl шаблон письма не получается. Но у меня вопрос не затрагивал новый механизм, я использую скрипт, который формирует все что может понадобиться для письма. Достаточно кастомный и не выглаженный, но суть в том что для версии 2.8.5 его пришлось немного модифицировать. Пришлось перед началом работы с tpl шаблоном, по которому формируется письмо насильно отключить xslt режим шаблонизатора, а в конце функцции вернуть все обратно

примерно вот так это выглядело

public function example(){
....
$xslTemplater = xslTemplater::getInstance();
$xslInited = $xslTemplater->setIsInited(false);
list($template) = def_module::loadTemplates("tpls/emarket/mail/custom_default.tpl", "neworder_notification");
...
$xslTemplater->setIsInited($xslInited);
}

*

penelite

  • *
  • 10
  • +0/-0
    • Просмотр профиля
    • http://penelite.ru/
Re:Статусы заказов и шаблоны писем
« Ответ #22 : 02 Марта 2012, 09:45:31 »
в версии 2.8.5 сделали свой шаблонизатор xslt'ый , поэтому просто использовать tpl шаблон письма не получается.
О как!
И как мне использовать xslt-шаблон? У меня 2.8.5, я ничего не менял и у меня вызывается шаблон tpl - tpls/mail/default.tpl.
Но при этом получается, что данные передаются xslt?
С xslt мне привычнее работать. Как же его подключить для формирования письма, в каком файле он формируется?

Пришлось перед началом работы с tpl шаблоном, по которому формируется письмо насильно отключить xslt режим шаблонизатора, а в конце функцции вернуть все обратно
примерно вот так это выглядело
А эти вызовы куда нужно впихнуть? в __notification.php получается?

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #23 : 02 Марта 2012, 11:43:16 »
в моем случае, я делал небольшую хитрость, чтобы не править системные файлы, я писал свой обработчик event для события "оформления заказа", который дублировал системную функцию отправки письма, там и вписывал сточки с переназначением текущего шаблонизатора. А чтобы дефолтный метод не отрабатывался, я переименовывал файл tpls/emarket/mail/default.tpl и дефолтный метод не найдя шаблон, не посылал письмо. В своей custom функции, я конечно использовал другой файл ('defaut_custo.tpl'), который создавал конечно в той же папке /tpls/emarket/mail/

*

penelite

  • *
  • 10
  • +0/-0
    • Просмотр профиля
    • http://penelite.ru/
Re:Статусы заказов и шаблоны писем
« Ответ #24 : 02 Марта 2012, 13:48:09 »
По tpl понятно, спасибо.
А как все-таки использовать xslt-шаблон для письма?
Если я правильно понял эту фразу: "в версии 2.8.5 сделали свой шаблонизатор xslt'ый , поэтому просто использовать tpl шаблон письма не получается."

*

penelite

  • *
  • 10
  • +0/-0
    • Просмотр профиля
    • http://penelite.ru/
Re:Статусы заказов и шаблоны писем
« Ответ #25 : 02 Марта 2012, 18:09:47 »
Разобрался.

Может кому пригодится:
нужно в config.ini выставить параметр use-old-templater = "0".
В этом случае письмо будет формироваться не по tpl, а по xslt шаблону.

*

Vyrd

  • *
  • 5
  • +0/-0
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #26 : 24 Апреля 2012, 15:09:07 »
у меня тоже  всегда выводится такой текст: "Российский рубль11Российский рубльруб1157"

Подскажите плиз как исправить?

P/S Шаблон письма TPL

*

korogan

  • ***
  • 188
  • +3/-0
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #27 : 21 Ноября 2012, 21:00:55 »
Люди добрые!

Не получается разобраться.
Если кто то сделал и Вам не трудно объясните пожалуйста по подробнее что и как сделать нужно что бы можно было получать все данные  в письме о заказе совершенном пользователем.

Точнее что бы ему приходило на почту

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #28 : 22 Ноября 2012, 12:11:23 »
у вас xslt или tpl шаблонизатор используется?

*

korogan

  • ***
  • 188
  • +3/-0
    • Просмотр профиля
Re:Статусы заказов и шаблоны писем
« Ответ #29 : 27 Ноября 2012, 14:32:27 »
Используется TPL шаблонизатор.

Буду очень признателен если сможет объяснить подробно как это можно реализовать.

Это очень нужно, думаю очень большому кол-ву людей.

Большое спасибо.