Поле "javascript-код для вывода на странице успешного оформления заказа"

Материал из Insales Wiki
Версия от 07:02, 5 июля 2014; Alexander.axenty (обсуждение | вклад) (Новая страница: «__TOC__ =Общая информация= Содержимое данного поля выводится на странице успешного оформле…»)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Общая информация

Содержимое данного поля выводится на странице успешного оформления заказа.

В ней доступны все переменные относящиеся к заказу и аккаунту.

Поле часто используется для передачи данных о заказе куда-либо(партнерские программы, сбор статистики и т.д.).

Если необходимо что бы код срабатывал только при первом заходе можно использовать переменную first_time_loading_page

Пример:

{% if first_time_loading_page %}
Код
{% endif %}

Доступные переменные

account

Настройки аккаунта. В переменной содержатся параметры из настроек аккаунта:

  • account.phone - телефон из настроек аккаунта,
  • account.icq - номер ICQ из настроек аккаунта,
  • account.title - название интернет-магазина из настроек аккаунта.
  • account.email - e-mail магазина
  • account.url - url магазина
  • account.reviews_enabled? - флаг указывающий включены отзывы на товар или нет
  • account.reviews_moderated? - флаг указывающий включена ли модерация отзывов на товары или нет
  • account.enable_comparison? - флаг указывающий доступно ли на текущем тарифе сравнение товаров
  • account.enable_clients? - флаг указывающий доступен ли на текущем тарифе личный кабинет покупателя
  • account.delivery_variants - массив всех способов доставки
  • account.delivery_variants.id - id способа доставки
  • account.delivery_variants.title - название способа доставки
  • account.delivery_variants.price - стоимость способа доставки
  • account.payment_gateways - массив всех способов оплаты
  • account.payment_gateways.id - id способа оплаты
  • account.payment_gateways.title - название способа оплаты

order

Используется в шаблоне письма клиенту и шаблоне печати заказа, доступными к редактированию из раздела "Заказы/Шаблоны". Так же используется в javascript-коде, который выводится на странице успешного оформления заказа (задаётся в разделе "Настройки магазина").

По сути это сохранённый заказ, имеющий те же методы, что и у объекта cart плюс несколько других, приведённых ниже:

order.id - идентификатор заказа (используется для ссылки на страницу заказа в бекофисе).

order.number - номер заказа.

order.key - ключ, по которому выводится заказ - используется в url, например:
/orders/{{order.key}}

order.creation_date - дата создания заказа.

order.currency - валюта заказа.

order.shipping_address - данные адреса доставки (объект):

 order.shipping_address.name - имя адресата.
 order.shipping_address.phone - телефон адресата.
 order.shipping_address.delivery_address - адрес доставки.
 order.shipping_address.country_name - страна.
 order.shipping_address.state - регион.
 order.shipping_address.city - город.
 order.shipping_address.address - адрес.
 order.shipping_address.zip - индекс.

order.delivery_description - описание способа доставки.

order.delivery_date - дата доставки.

order.delivery_time - интервал времени доставки, например, "с 10 до 18".

order.delivery_price - стоимость доставки.

order.delivery_price.base - стоимость доставки без наценки на способ оплаты.

order.delivery_title - название способа доставки.

order.comment - комментарий к заказу.

order.payment_title - название способа оплаты.

order.payment_description - описание способа оплаты.

order.margin - наценка на способ оплаты.

order.client - данные клиента (объект):

 order.client.name - имя клиента.
 order.client.surname - фамилия клиента.
 order.client.middlename - отчество клиента.
 order.client.phone - телефон клиента.
 order.client.email - email клиента.

Массивы полей:

order.all_fields - массив кастомных полей заказа

order.fields - массив кастомных полей заказа выводимых в корзине

order.client.all_fields - массив полей клиента у заказа, включая скрытые поля клиента

order.client.client_fields - массив полей клиента у заказа( не включает скрытые поля )

order.shipping_adress.all_fields - массив полей адреса у заказа, включая скрытые для клиента поля адреса

order.shipping_adress.client_fields - массив полей адреса у заказа ( не включает скрытые поля )

order.result_fields - массив полей у заказа показываемые клиенту после оформления заказа


Пример использования

 
{{ order.all_fields['Название поля'].title }} - вывод названия поля

{{ order.all_fields['Название поля'].value }} - вывод значения поля

Так же можно перебирать все поля

{% for field in order.all_fields %} 
<p>{{field.title}}: {{field.value}}</p> 
{% endfor %}

field

field.title - название поля для клиента

field.office_title - название поля в бэк офисе

field.value - значение поля

field.input - само поле для вывода в шаблон корзины

field.for_buyer? - показывается ли клиенту

field.obligatory? - обязательное ли поле

field.description - описание поля

field.type - возвращает тип поля. Сейчас есть следующие типы полей:

 file_field - загрузка файла
 text_area - текстовое многострочное поле
 select - выпадающий список
 checkbox - чекбокс	
 text_field -текстовое поле
 obligatory_text_field - обязательно текстовое поле(системный тип для поля "Контактное лицо")
 system_text_field - текстовые поля первоначально введенные в бэк офис.
 system_checkbox - чекбокс первоначально введенный в бэк офис(первоначально - Подписка)
 phone - телефон
 country - страна
 kladr - Комплексная форма для ввода адреса.

field.is_file? - является ли поле, полем для файла

field.file_name - имя залитого файла

item

Товарная позиция (товар) в корзине. Находится в массиве cart.items

item.id - идентификатор позиции.

item.title - название позиции.

item.product - товар позиции.

item.variant - модификация товара позиции.

item.sale_price - цена одного товара позиции.

item.weight - вес одного товара позиции.

item.quantity - число товаров в позиции.

item.total_price - суммарная стоимость товаров позиции.

item.total_weight - суммарный вес товаров позиции.

item.url - URL для удаления товаров из корзины.