User Tools

Site Tools


market:komplekt_tovarov_dlja_programmista

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
market:komplekt_tovarov_dlja_programmista [06.05.15 в 12:58]
Артем Куц создано
— (current)
Line 1: Line 1:
-====== Комплект товаров ====== 
  
-На странице товара вместе с основным товаром покупателю предлагается купить дополнительные товары и услуги. Такие товары можно добавить к основному установив флажок. При этом происходит пересчет основной цены. При нажатии на кнопку добавления товара в корзину,​ в корзину попадают сразу все выбранные товары. 
- 
-===== Инструкции ===== 
-  - Если на сайте не использованы сопутствующие товары,​ то используем их для комплекта. Если уже использованы,​ то для комплекта создаем доп. свойство типа товар. 
-  - Далее в XSL шаблон МагазинТовар добавляем [[market:​komplekt_tovarov_dlja_programmista:​подшаблон для вывода комплекта|подшаблон для вывода комплекта]]. ''<​!-- Шаблон для комплекта товаров --> 
-<​xsl:​template match="​associated/​shop_item">​ 
-  
-<​label>​ 
-  
- <​xsl:​choose>​ 
-  
- <​xsl:​when test="​property_value[tag_name='​radio'​]/​value = 1"> 
-  
- <input type="​radio"​ price="​{price}"​ name="​item_radio"​ item_id="​{@id}"​ value="​{@id}"​ class="​associated{../​../​@id} associated"><​xsl:​if test="​property_value[tag_name='​default'​]/​value = 1"><​xsl:​attribute name="​checked">​checked</​xsl:​attribute></​xsl:​if></​input>​ 
-  
- </​xsl:​when>​ 
- <​xsl:​otherwise>​ 
- <​xsl:​if test="​position() != last()"><​xsl:​attribute name="​class">​hr</​xsl:​attribute></​xsl:​if>​ 
- <input type="​checkbox"​ price="​{price}"​ item_id="​{@id}"​ name="​item_{@id}"​ value="​{@id}"​ class="​associated{../​../​@id} associated"><​xsl:​if test="​property_value[tag_name='​default'​]/​value = 1"><​xsl:​attribute name="​checked">​checked</​xsl:​attribute></​xsl:​if></​input>​ 
-  
- </​xsl:​otherwise>​ 
-  
- </​xsl:​choose>​ 
-  
-</​label>​ 
-</​xsl:​template>''​ 
-  - В подшаблон shop_item добавляем там, где нужно вывести комплект:​ ''<​xsl:​if test="​count(associated/​shop_item) &gt; 0"> 
- <div class="​associated-block">​ 
-  
- <​xsl:​apply-templates select="​associated/​shop_item"><​xsl:​sort select="​sorting" ​ data-type="​number"/></​xsl:​apply-templates>​ 
- <span class="​hr"></​span>​ 
-  
- </​div>​  
- </​xsl:​if>''​ 
-  - Подгоняем вывод под текущий сайт. Блоку с текущей ценой задаем ''​id="​mainprice"'',​ а также атрибут ''​data-price="​{format-number(price,​ '#####​0',​ '​my'​)}"''​ 
-  - Обработчик добавления в корзину заменяем с $.addIntoCart на $.kaddIntoCart 
-  - Добавляем товарам доп. свойства. Эти свойства нужны для управления комплектом. 
-  * "​Радиокнопка"​ с tag_name='​radio'​ 
-  * "По умолчанию"​ с tag_name='​default'​ 
market/komplekt_tovarov_dlja_programmista.1430906311.txt.gz · Last modified: 26.06.15 в 14:55 (external edit)