Перейти к содержимому


tega4

Регистрация: 29 янв. 2012
Offline Активность: 26 янв. 2016 12:56
-----

#142260 Настройка Быстрого Просмотра

Отправлено Сake на 07 Июнь 2014 - 02:11

По всей видимости не срабатывает событие afterLoadingOnShow для всплывающего окна из библиотеки arcticModal. Попробуйте в файле main.js заменить строку

afterLoadingOnShow:

на

afterOpen:

перед проверкой не забудьте очистить кеш в вашем браузере.


#141705 Изменение Стилистики

Отправлено Сake на 04 Июнь 2014 - 03:43

Попробуйте заменить в файле main.js строку

c.html(data);

на строку

c.html($(data).first());



#141490 Недавно Просмотреные Товары, Виджеты Вконтакте И Однокласники

Отправлено Сake на 03 Июнь 2014 - 06:14

У вас нарушена структура html. Попробуйте следующее - найдите в вашем шаблоне "HTML" код

{% FOR index_page_favorites_goods %}
					  <div class="prod_hold">
					  <div class="prosmotr">
						 <p style="margin-top:10px !important;font-weight:bold;" class="text-center">
			  <a href="{index_page_favorites_goods.URL}" onClick="QuickLook('{index_page_favorites_goods.URL}'); return false;" class="ajax pt-sans font-size-16">БЫСТРЫЙ ПРОСМОТР &raquo;</a>
						</p>
			</div>
						<div>
						  <div class="image goods-cat-image-medium-square"><a title="{index_page_favorites_goods.NAME}" href="{index_page_favorites_goods.URL_MIN_PRICE_NOW | url_amp}"><img class="goods-cat-image-medium" src="{% IF index_page_favorites_goods.IMAGE_EMPTY %}{ASSETS_IMAGES_PATH}no-photo-small.png{% ELSE %}{index_page_favorites_goods.IMAGE_SMALL}{% ENDIF %}" alt=""></a></div>
						  <div class="name"><a title="{index_page_favorites_goods.NAME}" href="{index_page_favorites_goods.URL_MIN_PRICE_NOW | url_amp}" style="*height:;">{index_page_favorites_goods.NAME}</a></div>
						  <span class="new_prod">Хит</span>
						  <div class="price">
							{% IF index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT>index_page_favorites_goods.MIN_PRICE_NOW %}
							  <span class="price-old">{index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT | money_format}</span>
							{% ELSEIF index_page_favorites_goods.MIN_PRICE_OLD>index_page_goods.MIN_PRICE_NOW %}
							  <span class="price-old">{index_page_favorites_goods.MIN_PRICE_OLD | money_format}</span>
							{% ENDIF %}
							<span class="price-new">{index_page_favorites_goods.MIN_PRICE_NOW | money_format}</span>
						  </div>
						  <div class="prod-info-fly">
							<div class="name"><a title="{index_page_favorites_goods.NAME}" href="{index_page_favorites_goods.URL_MIN_PRICE_NOW | url_amp}" style="*height:;">{index_page_favorites_goods.NAME}</a></div>
							<div class="price">
							  {% IF index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT>index_page_favorites_goods.MIN_PRICE_NOW %}
								<span class="price-old">{index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT | money_format}</span>
							  {% ELSEIF index_page_favorites_goods.MIN_PRICE_OLD>index_page_favorites_goods.MIN_PRICE_NOW %}
								<span class="price-old">{index_page_favorites_goods.MIN_PRICE_OLD | money_format}</span>
							  {% ENDIF %}
							  <span class="price-new">{index_page_favorites_goods.MIN_PRICE_NOW | money_format}</span>
							  <div class="clear"></div>
							</div>
							<div class="cart">
								<form action="{CART_ADD_GOODS_MODIFICATION_URL | url_amp}" method="post" class="goodsListItemCatalogueAddToCartButton product-form-{index_page_favorites_goods.MIN_PRICE_NOW_ID}">
								  <input type="hidden" name="hash" value="{HASH}" />
								  <input type="hidden" name="form[goods_from]" value="{index_page_favorites_goods.GOODS_FROM}" />
								  <input type="hidden" name="form[goods_mod_id]" value="{index_page_favorites_goods.MIN_PRICE_NOW_ID}" />
								  <div class="plus_minus_quantity">
									<span class="qty-minus">-</span>
												<input type="text" value="1"  size="2" maxlength="5" class="quantity" name="form[goods_mod_quantity]">
														<span class="qty-plus">+</span>
														</div>
								  <a class="add_to_cart_small" onclick="quickorder('.product-form-{index_page_favorites_goods.MIN_PRICE_NOW_ID}');return false;" title="Быстро оформить заказ">Купить</a>
								  <!--a class="add_to_cart_small" onclick="$('.product-form-{index_page_favorites_goods.MIN_PRICE_NOW_ID}').attr('rel', 'quick').submit();return false;" title="Быстро оформить заказ">Добавить в корзину</a-->
								</form>
							   
								<!-- Если есть возможность добавить товар в избранное -->
								{% IF index_page_favorites_goods.IS_HAS_IN_FAVORITES_LIST %}
								  <a class="add_to_wishlist_small added"
									data-action-is-add="0"
									data-action-add-url="{FAVORITES_ADD_URL}"
									data-action-delete-url="{FAVORITES_DELETE_URL}"
									data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в избранное"
									data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из избранного"
									title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из избранного"
									href="{FAVORITES_DELETE_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;return_to={CURRENT_URL | urlencode}"
								  >Удалить из избранного</a>
								{% ELSE %}
								  <a class="add_to_wishlist_small"
									data-action-is-add="1"
									data-action-add-url="{FAVORITES_ADD_URL}"
									data-action-delete-url="{FAVORITES_DELETE_URL}"
									data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в избранное"
									data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из избранного"
									title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в избранное" href="{FAVORITES_ADD_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;return_to={CURRENT_URL | urlencode}"
								  >Добавить в избранное</a>
								{% ENDIF %}
								<!-- END Если есть возможность добавить товар в избранное -->
							   
								<!-- Если в тарифном плане подключен модуль сравнения товаров и он не выключен в настройках магазина -->
								{% IF TARIFF_FEATURE_GOODS_COMPARE && SETTINGS_COMPARE_DISABLE=0 %}
								  {% IF index_page_favorites_goods.IS_HAS_IN_COMPARE_LIST %}
									<a class="add_to_compare_small added"
									  data-action-is-add="0"
									  data-action-add-url="{COMPARE_ADD_URL}"
									  data-action-delete-url="{COMPARE_DELETE_URL}"
									  data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в список сравнения с другими товарами"
									  data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из списка сравнения с другими товарами"
									  title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из списка сравнения с другими товарами"
									  href="{COMPARE_DELETE_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;from={index_page_favorites_goods.GOODS_FROM}&amp;return_to={CURRENT_URL | urlencode}"
									>убрать из сравнения</a>
								  {% ELSE %}
									<a class="add_to_compare_small"
									  data-action-is-add="1"
									  data-action-add-url="{COMPARE_ADD_URL}"
									  data-action-delete-url="{COMPARE_DELETE_URL}"
									  data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в список сравнения с другими товарами"
									  data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из списка сравнения с другими товарами"
									  title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в список сравнения с другими товарами"
									  href="{COMPARE_ADD_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;from={index_page_favorites_goods.GOODS_FROM}&amp;return_to={CURRENT_URL | urlencode}"
									>Сравнить</a>
								  {% ENDIF %}
								{% ENDIF %}
								<!-- END Если в тарифном плане подключен модуль сравнения товаров и он не выключен в настройках магазина -->
							 
							  </div>
						</div>
					  </div>
					{% ENDFOR index_page_favorites_goods %}

и замените его на

<div class="box-product">
					{% FOR index_page_favorites_goods %}
					  <div class="prod_hold">
					  <div class="prosmotr">
						 <p style="margin-top:10px !important;font-weight:bold;" class="text-center">
			  <a href="{index_page_favorites_goods.URL}" onclick="QuickLook('{index_page_favorites_goods.URL}'); return false;" class="ajax pt-sans font-size-16">БЫСТРЫЙ ПРОСМОТР &raquo;</a>
						</p>
					  </div>
						<div>
						  <div class="image goods-cat-image-medium-square"><a title="{index_page_favorites_goods.NAME}" href="{index_page_favorites_goods.URL_MIN_PRICE_NOW | url_amp}"><img class="goods-cat-image-medium" src="{% IF index_page_favorites_goods.IMAGE_EMPTY %}{ASSETS_IMAGES_PATH}no-photo-small.png{% ELSE %}{index_page_favorites_goods.IMAGE_SMALL}{% ENDIF %}" alt=""></a></div>
						  <div class="name"><a title="{index_page_favorites_goods.NAME}" href="{index_page_favorites_goods.URL_MIN_PRICE_NOW | url_amp}" style="*height:;">{index_page_favorites_goods.NAME}</a></div>
						  <span class="new_prod">Хит</span>
						  <div class="price">
							{% IF index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT>index_page_favorites_goods.MIN_PRICE_NOW %}
							  <span class="price-old">{index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT | money_format}</span>
							{% ELSEIF index_page_favorites_goods.MIN_PRICE_OLD>index_page_goods.MIN_PRICE_NOW %}
							  <span class="price-old">{index_page_favorites_goods.MIN_PRICE_OLD | money_format}</span>
							{% ENDIF %}
							<span class="price-new">{index_page_favorites_goods.MIN_PRICE_NOW | money_format}</span>
						  </div>
						  <div class="prod-info-fly">
							<div class="name"><a title="{index_page_favorites_goods.NAME}" href="{index_page_favorites_goods.URL_MIN_PRICE_NOW | url_amp}" style="*height:;">{index_page_favorites_goods.NAME}</a></div>
							<div class="price">
							  {% IF index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT>index_page_favorites_goods.MIN_PRICE_NOW %}
								<span class="price-old">{index_page_favorites_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT | money_format}</span>
							  {% ELSEIF index_page_favorites_goods.MIN_PRICE_OLD>index_page_favorites_goods.MIN_PRICE_NOW %}
								<span class="price-old">{index_page_favorites_goods.MIN_PRICE_OLD | money_format}</span>
							  {% ENDIF %}
							  <span class="price-new">{index_page_favorites_goods.MIN_PRICE_NOW | money_format}</span>
							  <div class="clear"></div>
							</div>
							<div class="cart">
								<form action="{CART_ADD_GOODS_MODIFICATION_URL | url_amp}" method="post" class="goodsListItemCatalogueAddToCartButton product-form-{index_page_favorites_goods.MIN_PRICE_NOW_ID}">
								  <input type="hidden" name="hash" value="{HASH}" />
								  <input type="hidden" name="form[goods_from]" value="{index_page_favorites_goods.GOODS_FROM}" />
								  <input type="hidden" name="form[goods_mod_id]" value="{index_page_favorites_goods.MIN_PRICE_NOW_ID}" />
								  <div class="plus_minus_quantity">
									<span class="qty-minus">-</span>
												<input type="text" value="1"  size="2" maxlength="5" class="quantity" name="form[goods_mod_quantity]">
														<span class="qty-plus">+</span>
														</div>
								  <a class="add_to_cart_small" onclick="quickorder('.product-form-{index_page_favorites_goods.MIN_PRICE_NOW_ID}');return false;" title="Быстро оформить заказ">Купить</a>
								  <!--a class="add_to_cart_small" onclick="$('.product-form-{index_page_favorites_goods.MIN_PRICE_NOW_ID}').attr('rel', 'quick').submit();return false;" title="Быстро оформить заказ">Добавить в корзину</a-->
								</form>
							   
								<!-- Если есть возможность добавить товар в избранное -->
								{% IF index_page_favorites_goods.IS_HAS_IN_FAVORITES_LIST %}
								  <a class="add_to_wishlist_small added"
									data-action-is-add="0"
									data-action-add-url="{FAVORITES_ADD_URL}"
									data-action-delete-url="{FAVORITES_DELETE_URL}"
									data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в избранное"
									data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из избранного"
									title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из избранного"
									href="{FAVORITES_DELETE_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;return_to={CURRENT_URL | urlencode}"
								  >Удалить из избранного</a>
								{% ELSE %}
								  <a class="add_to_wishlist_small"
									data-action-is-add="1"
									data-action-add-url="{FAVORITES_ADD_URL}"
									data-action-delete-url="{FAVORITES_DELETE_URL}"
									data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в избранное"
									data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из избранного"
									title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в избранное" href="{FAVORITES_ADD_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;return_to={CURRENT_URL | urlencode}"
								  >Добавить в избранное</a>
								{% ENDIF %}
								<!-- END Если есть возможность добавить товар в избранное -->
							   
								<!-- Если в тарифном плане подключен модуль сравнения товаров и он не выключен в настройках магазина -->
								{% IF TARIFF_FEATURE_GOODS_COMPARE && SETTINGS_COMPARE_DISABLE=0 %}
								  {% IF index_page_favorites_goods.IS_HAS_IN_COMPARE_LIST %}
									<a class="add_to_compare_small added"
									  data-action-is-add="0"
									  data-action-add-url="{COMPARE_ADD_URL}"
									  data-action-delete-url="{COMPARE_DELETE_URL}"
									  data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в список сравнения с другими товарами"
									  data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из списка сравнения с другими товарами"
									  title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из списка сравнения с другими товарами"
									  href="{COMPARE_DELETE_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;from={index_page_favorites_goods.GOODS_FROM}&amp;return_to={CURRENT_URL | urlencode}"
									>убрать из сравнения</a>
								  {% ELSE %}
									<a class="add_to_compare_small"
									  data-action-is-add="1"
									  data-action-add-url="{COMPARE_ADD_URL}"
									  data-action-delete-url="{COMPARE_DELETE_URL}"
									  data-action-add-title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в список сравнения с другими товарами"
									  data-action-delete-title="Убрать &laquo;{index_page_favorites_goods.NAME}&raquo; из списка сравнения с другими товарами"
									  title="Добавить &laquo;{index_page_favorites_goods.NAME}&raquo; в список сравнения с другими товарами"
									  href="{COMPARE_ADD_URL}?id={index_page_favorites_goods.MIN_PRICE_NOW_ID}&amp;from={index_page_favorites_goods.GOODS_FROM}&amp;return_to={CURRENT_URL | urlencode}"
									>Сравнить</a>
								  {% ENDIF %}
								{% ENDIF %}
								<!-- END Если в тарифном плане подключен модуль сравнения товаров и он не выключен в настройках магазина -->
							 
							  </div>
						</div>
					  </div>
					</div> 
					{% ENDFOR index_page_favorites_goods %}
				  </div>



#132715 Усовершенствование Для Корзины

Отправлено Castiel на 10 Апрель 2014 - 09:57

Просмотр сообщенияotstoyman (09 Апрель 2014 - 19:22) писал:

Добрый день!

Интересует возможность доработки корзины, как показано на рисунке. Возможно ли на этом движке сделать что то подобное?

Здравствуйте, такое можно реализовать.

В шаблоне "HTML"
Находим:
<div class="content">
<div class="empty">Ваша корзина покупок пуста!</div>
</div>

Заменяем на:
<div id="cart_block">
<div id="cart_block_bottom">
<div id="cart_block_other_costs">
<div class="other_cost_wrapper" style="width: 100%">
<div class="box-content">
{% IF cart_count_empty %}
<p id="cart_block_no_products">Ваша корзина пуста</p>
{% ELSE %}
{% FOR cart_items %}
{% IF cart_items.index > 3 %}{break}{% ENDIF %}
<div class="prod_hold_cart">
<div>
<div class="image goods-image-icon-square" style="float:left;margin-right:10px;"><a href="{cart_items.GOODS_URL}"><img class="goods-image-icon" src="{% IF cart_items.GOODS_IMAGE_EMPTY %}{ASSETS_IMAGES_PATH}no-photo-icon.png{% ELSE %}{cart_items.GOODS_IMAGE_ICON}{% ENDIF %}"></a></div>
<div class="prod_hold_right">
<div class="name">
<a title="Перейти на страницу &laquo;{cart_items.GOODS_NAME}&raquo;" href="{cart_items.GOODS_URL}" style="*height:;">
{cart_items.GOODS_NAME}
<!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара -->
{% IFNOT cart_items.distinctive_properties_empty %}<span>({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</span>{% ENDIF %}
</a>
</div>
<div class="price">
<span class="price-new">{cart_items.GOODS_MOD_PRICE_NOW | money_format}</span>
</div>
<div class="countcart">
<span>Количество:&nbsp;&nbsp;<span style="color:#f00;">{cart_items.ORDER_LINE_QUANTITY}</span></span>
<a href="{cart_items.ORDER_LINE_DELETE_URL}" title="Удалить позицию" class="close">×</a>
</div>
</div>
</div>
</div>
{% ENDFOR %}
{% ENDIF %}
</div>
</div>
</div>
<div class="buttons">
<a class="button" style="margin-left:40px;" title="Перейти к оформлению заказа" href="{CART_URL}">Оформить заказ</a>
</div>
</div>
</div>


Здравствуйте,
В файле "main.css".
Перед
/* END Шапка */

Добавить код:
/* Корзина с картинками */
#header #cart_block {
z-index:10;display:none;position:absolute;right:5%;float:right;height:auto;width:250px !important;background:#ffffff;*border: solid 1px #c0c0c0;
-moz-border-bottom-right-radius:3px;-moz-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;box-shadow:0 1px 0 #C6C6C6;
-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-moz-box-shadow:0 0 0 1px rgba(0,0,0,0.095) ,0 1.5px 1.5px 0 rgba(0,0,0,0.2),0 2px 1.5px 0 rgba(0,0,0,0.1) ;
-webkit-box-shadow:0 0 0 1px rgba(0,0,0,0.095) ,0 1.5px 1.5px 0 rgba(0,0,0,0.2),0 2px 1.5px 0 rgba(0,0,0,0.1) ;box-shadow:0 0 0 1px rgba(0,0,0,0.095) ,0 1.5px 1.5px 0 rgba(0,0,0,0.2),0 2px 1.5px 0 rgba(0,0,0,0.1);
}
#cart_block .price{color:#da3b44;line-height:30px;margin-right:10px;float:none}
#cart_block_bottom{background:#ffffff;overflow:hidden;border-top:1px solid #eaeaea;border:1px solid #cecece\0/;padding:10px 20px;}
#cart_block #cart_block_shipping_cost{float:none;font-weight:bold;}
#cart_block #cart_block_total_checkout{display:block;position:relative;overflow:hidden;padding:0 20px 10px; text-align: center;}
#cart_block #cart_block_total{color:#da3b44;font-size:16px;float:right;margin:0;*float: none; *text-align: right;}
#cart_block #cart_block_other_costs{clear:both;padding-bottom:5px}
#cart_block #cart_block_other_costs span{font-weight:400}
#cart_block #cart_block_other_costs span.price{font-weight:600; float:none !important;}
.prod_hold_cart {width:200px;display: inline-block;display: -moz-inline-stack;vertical-align: top;padding: 5px;background-color: #ffffff;position: relative;text-align: center;border: 1px solid #f5f5f5;z-index: 100;}
/* END Корзина с картинками */

Перед
/* Адаптивность шаблона ==============================*/

Добавить
@media only screen and (min-width: 1500px) and (max-width: 2400px) {
#header #cart_block {right:15%;}
}


В шаблоне "Быстрый заказ".
Добавить в самый конец:
<!-- Блок для обновления данных корзины. Не виден пользователю -->
<div style="display:none;" id="newCartDataBlock">
<div id="cart_block_bottom" style="display:block">
<div id="cart_block_other_costs">
<div class="other_cost_wrapper" style="width: 100%">
<div class="box-content">
{% IF cart_count_empty %}
<p id="cart_block_no_products">Ваша корзина пуста</p>
{% ELSE %}
{% FOR cart_items %}
{% IF cart_items.index > 3 %}{break}{% ENDIF %}
<div class="prod_hold_cart">
<div>
<div class="image goods-image-icon-square" style="float:left;margin-right:10px;"><a href="{cart_items.GOODS_URL}"><img class="goods-image-icon" src="{% IF cart_items.GOODS_IMAGE_EMPTY %}{ASSETS_IMAGES_PATH}no-photo-icon.png{% ELSE %}{cart_items.GOODS_IMAGE_ICON}{% ENDIF %}"></a></div>
<div class="prod_hold_right">
<div class="name">
<a title="Перейти на страницу &laquo;{cart_items.GOODS_NAME}&raquo;" href="{cart_items.GOODS_URL}" style="*height:;">
{cart_items.GOODS_NAME}
<!-- Если у товара есть отличительные свойства для модификации товара, допишем их к названию товара -->
{% IFNOT cart_items.distinctive_properties_empty %}<span>({% FOR distinctive_properties %}{cart_items.distinctive_properties.NAME}: {cart_items.distinctive_properties.VALUE}{% IFNOT cart_items.distinctive_properties.last %}, {% ENDIF %}{% ENDFOR %})</span>{% ENDIF %}
</a>
</div>
<div class="price">
<span class="price-new">{cart_items.GOODS_MOD_PRICE_NOW | money_format}</span>
</div>
<div class="countcart">
<span>Количество:&nbsp;&nbsp;<span style="color:#f00;">{cart_items.ORDER_LINE_QUANTITY}</span></span>
<a href="{cart_items.ORDER_LINE_DELETE_URL}" title="Удалить позицию" class="close">×</a>
</div>
</div>
</div>
</div>
{% ENDFOR %}
{% ENDIF %}
</div>
</div>
</div>
<div class="buttons">
<a class="button" style="margin-left:40px;" title="Перейти к оформлению заказа" href="{CART_URL}">Оформить заказ</a>
</div>
</div>

</div>
<!-- JS обновление данных корзины -->
<script>$('#cart_block:first').html($('#newCartDataBlock').html());</script>
<!-- end Блок для обновления данных корзины. Не виден пользователю -->


В файле "main.js".
Добавить в самый конец:
$(document).ready(function(){

$(".heading").hover(
function () {
$("#cart_block").css("display","block");
},
function () {
$("#cart_block").css("display","none");
}
);

$("#cart_block").hover(
function () {
$(this).css("display","block");
},
function () {
$(this).css("display","none");
});
});


Пример работы вы можете наблюдать тут


#140961 Карусель (Слайдер) Сопутки

Отправлено MikDark на 30 Май 2014 - 08:59

Просмотр сообщенияtega4 (30 Май 2014 - 08:43) писал:

подскажите, а что надо сделать чтобы блок с товаром не становился меньше в карусели?
уже все значения пересмотрела, но все равно на втором круге сужается, у получается что все товары смещаются.
SL-268427

В main.css есть код:
.text-center {
margin-top: -38px;
background: #359395;
width: 210px;
height: 20px;
position: relative;
text-align: center;
}

уберите оттуда width: 210px;


#140801 Фиксированные Элементы

Отправлено Castiel на 29 Май 2014 - 11:30

Просмотр сообщенияtega4 (29 Май 2014 - 09:08) писал:

спасибо,не подскажите как конкретно это прописать?



В файле "HTML".
После кода:
<!-- end Корзина -->

Добавить:
<!-- Корзина2 -->
	  <div id="cartInfo2">
		 <a href="{CART_URL}"><img src="{ASSETS_IMAGES_PATH}korzina.png" style="width: 68px; height: 64px; padding-left:30px; padding-top: 0px;"></a>
		<div class="tecst">Корзина:<br />
					 <span id="cartSum">
						 {% IF cart_count_empty %}
					  <span class="cartSum1">0 {CURRENCY_NAME} </span>
					 {% ELSE %}
						{% FOR cart_sum %}
					  <span class="cartSum1">{cart_sum.NOW | money_format}<br /></span>
						 {% ENDFOR %}
					  {% ENDIF %}</div>
		 <div class="ofzak">
		  <a href="{CART_URL}">Оформить заказ</a>
		</div>
	  </div>
		 <!-- end Корзина2 -->


В конец файла "main.css".
Добавить код:
/*cartInfo2*/
#cartInfo2 {
  display:none;
  z-index:999999;
  float:right;
  position:fixed;
  font-size: 15px;
  top: 0px;
  right: 0px;
  white-space:nowrap;
  overflow:hidden;
  height:171px;
  width: 284px;
  text-align: left;
  vertical-align: bottom;
  background:url({ASSETS_IMAGES_PATH}bg-korzina.png) no-repeat;
}
#cartInfo2:hover {
  background:url({ASSETS_IMAGES_PATH}bg-korzina-hov.png) no-repeat;
}
#cartInfo2 .tecst {
  padding-left: 65px;
  margin-top: -60px;
  text-align: center;
  vertical-align: bottom;
  color:#000;
  font-size:16px;
}
#cartInfo2 .ofzak {
  margin-top:-5px;
  margin-left:40px;
  padding-top: 10px;
  text-align: center;
  vertical-align: bottom;
}
#cartInfo2 a {
  color:#ff0;
  text-transform: uppercase;
  font: 18px Times New Roman, sans-serif;
  font-weight:bolder;

}
#cartInfo2 a:hover {
  color:#000;
  text-transform: uppercase;
  font: 18px Times New Roman, sans-serif;
  font-weight:bolder;

}



В файле "main.js".
Добавить в конце:
// hide #cart2
  $("#cartInfo2").hide();

  // fade in #back-top
$(window).scroll(function () {
if ($(this).scrollTop() > 120) {
$('#cartInfo2').fadeIn();
} else {
$('#cartInfo2').fadeOut();
}
});


В файле "Ajax добавление товара в корзину".
Найти:
$('#cartSum').html($('.newCartSum').html());
$('#cartSum1').html($('.newCartCount').html());

Заменить:
$('#cartSum').html($('.newCartSum').html());
$('#cartSum1').html($('.newCartCount').html());
$('.cartSum1').html($('.newCartSum').html());



#139499 Коррекция Страницы Товара

Отправлено Сake на 21 Май 2014 - 12:44

У вас не работает код из-за изменения типа модификации. Используйте следующий код

function updatePriceQuantity() {
$('[name="form[goods_mod_quantity]"]').keyup(function() {
var mod = $('.goodsDataMainModificationsRadio input:checked').val();
var list = $('.goodsDataMainModificationsList[rel="' + mod + '"]');
if(list.length) {
		 var price = parseFloat(list.find('.price_now_formated .num')
		 .text().replace(/\W+/, ''));
		 var total = (price * parseInt($(this).val()));
		 $('.goodsDataMainModificationPriceNow .num')
		 .text(number_format(total, 0, ',', ' '));
}
});
}
$(function() {
  updatePriceQuantity();
});

добавьте данный код в конец файла main.js, а так же там найдите

applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);
visibleModificationsColor();

и замените на

applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);
visibleModificationsColor();
updatePriceQuantity();



#139414 Изменение Цены От Кол-Ва Товаров

Отправлено Vaccina на 21 Май 2014 - 01:57

Подобная тема обсуждалась на форуме и имеет инструкцию:
http://forum.storela...ра/#entry137429


#139429 Изменение Типа Выбора Модификации

Отправлено Сake на 21 Май 2014 - 03:35

Сам по себе дубликат ошибок не вызовет, просто один и тот же код обрабатывается 2 раза.

Цитата

если удалить дубль, то тогда функция работает либо только в быстром просмотре, либо только в карточке товара.

После удаления дубликата замените строку

visibleModificationsColor();

на

$(function() {
  visibleModificationsColor();
});

тогда подобной проблемы не возникнет.


#139396 Изменение Типа Выбора Модификации

Отправлено Сake на 20 Май 2014 - 23:29

У вас выполнено изменение не полностью, вероятно вы производили изменение вручную и не заметили что изменяется свойство

'backgroundColor': colors[name],

на

'background': colors[name],

Вам необходимо произвести данное изменение, а так же удалить дубликат который у вас имеется в файле main.js

$(function() {
  var colors = {'коричневый': '#885a09', 'серый': 'gray','Чернение': 'black', 'Черная': 'black', 'Черный': 'black', 'черные': 'black', 'Белая': '#fff', 'белые': '#fff', 'Кремовая': '#f8daa5', 'Фиолетовый': '#530dd2',
  'зеленый': '#13a50c', 'Зеленый': '#13a50c','синий': '#0c1ea5', 'Синий': '#0c1ea5', 'красный': '#a50c25', 'желтый': '#e9ec0a', 'Желтый': '#e9ec0a', 'Розовые': '#f594ab','Металл': '#6e7f80', 'Золото!': '#dbda71', 
  'Камуфляж': 'url("http://design.steep-toys.ru/kamyf.png")'};
  $('.goodsDataMainModificationsBlockProperty label').each(function() {
		var name = $.trim($(this).text());
		if(name in colors) {
		  $(this).css({
				'backgroundColor': colors[name],
				'text-indent': '-9999px'
		  }).attr('title', name);
		}
  });
});

так как ранее данную анонимную функцию необходимо было заменить на функцию visibleModificationsColor() которую вместо замены вы добавили чуть ниже.


#138387 Изменение Типа Выбора Модификации

Отправлено Сake на 15 Май 2014 - 01:32

Для быстрого просмотра понадобиться сделать небольшие изменения с javascript. Найдите в вашем файле main.js ранее добавленный код

$(function() {
  var colors = {'Коричневый': 'brown', 'Серый': 'gray', 'Черный': 'black'};
  $('.goodsDataMainModificationsBlockProperty label').each(function() {
		var name = $.trim($(this).text());
		if(name in colors) {
		  $(this).css({
				'backgroundColor': colors[name]
		  });
		}
  });
});

и замените его на

function visibleModificationsColor() {
  var colors = {'Коричневый': 'brown', 'Серый': 'gray', 'Черный': 'black'};
  $('.goodsDataMainModificationsBlockProperty label').each(function() {
		var name = $.trim($(this).text());
		if(name in colors) {
		  $(this).css({
				'backgroundColor': colors[name],
				'text-indent': '-9999px'
		  });
		}
  });
}
visibleModificationsColor();

далее найдите код

setTimeout(function() {
  var goodsDataProperties = c.find('form.goodsDataForm .goodsDataMainModificationsRadio');
  var goodsDataModifications = c.find('div.goodsDataMainModificationsList');
  updateVisibility (0, goodsDataProperties, goodsDataModifications);
  updateVisibility (1, goodsDataProperties, goodsDataModifications);
  applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);
}, 800);

и замените его на

setTimeout(function() {
  var goodsDataProperties = c.find('form.goodsDataForm .goodsDataMainModificationsRadio');
  var goodsDataModifications = c.find('div.goodsDataMainModificationsList');
  updateVisibility (0, goodsDataProperties, goodsDataModifications);
  updateVisibility (1, goodsDataProperties, goodsDataModifications);
  applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);
  visibleModificationsColor();
}, 800);

После данных изменений текст для модификаций с цветом отображаться не будет.


#138210 Изменение Типа Выбора Модификации

Отправлено Сake на 14 Май 2014 - 01:31

Далее вы можете сделать следующее изменение - найдите в шаблоне "Товар" следующий код

<!-- Выдаем списки со свойствами для модификаций, чтобы определить какую модификацию товара хочет пользователь -->
														 {% FOR values %}
															
																 <!-- Если это первый элемент в списке -->
																 {% IF goods_modifications_properties.values.first %}
																	 <span class="goodsDataMainModificationsRadio">
																	 <strong>{goods_modifications_properties.NAME}:</strong><br />
																 {% ENDIF %}
																 <input type="radio" name="form[properties][{goods_modifications_properties.ID}]" value="{goods_modifications_properties.values.ID}" {% IF goods_modifications_properties.values.SELECTED %}checked="checked"{% ENDIF %} /> {goods_modifications_properties.values.NAME} <br />
																 {% IF goods_modifications_properties.values.last %}
																	 </span>
																 {% ENDIF %}
															
														 {% ENDFOR %}
						
													 </td>
																		
													 {goods_modifications_properties.index | is_divided("2","</tr><tr>","")}

и замените его на код

<!-- Выдаем списки со свойствами для модификаций, чтобы определить какую модификацию товара хочет пользователь -->
														 {% FOR values %}
															
																 <!-- Если это первый элемент в списке -->
																 {% IF goods_modifications_properties.values.first %}
																	 <span class="goodsDataMainModificationsRadio">
																	 <strong>{goods_modifications_properties.NAME}:</strong><br />
																 {% ENDIF %}
																 <input type="radio" id="{goods_modifications_properties.values.ID}" name="form[properties][{goods_modifications_properties.ID}]" value="{goods_modifications_properties.values.ID}" {% IF goods_modifications_properties.values.SELECTED %}checked="checked"{% ENDIF %} /> <label for="{goods_modifications_properties.values.ID}">{goods_modifications_properties.values.NAME}</label>
																 {% IF goods_modifications_properties.values.last %}
																	 </span>
																 {% ENDIF %}
															
														 {% ENDFOR %}
						
													 </td>
																		
													 {goods_modifications_properties.index | is_divided("2","</tr><tr>","")}

далее в ваш файл стилей main.css добавьте

.goodsDataMainModificationsBlockProperty input:checked + label {
border: 1px solid #72d300;
}
.goodsDataMainModificationsBlockProperty input + label {
border: 1px solid #ccc;
cursor: pointer;
display: inline-block;
height: 45px;
line-height: 45px;
margin: 4px;
text-align: center;
width: 85px;
}
.goodsDataMainModificationsBlockProperty input {
display: none;
}

а после в файл main.js добавьте

$(function() {
  var colors = {'Коричневый': 'brown', 'Серый': 'gray', 'Черный': 'black'};
  $('.goodsDataMainModificationsBlockProperty label').each(function() {
	var name = $.trim($(this).text());
	if(name in colors) {
	  $(this).css({
		'backgroundColor': colors[name]
	  });
	}
  });
});

Проверить можете на товаре /goods/Пальто


#138043 Страница Ошибки

Отправлено Сake на 13 Май 2014 - 03:09

Добавить список товаров на страницу ошибки можно, например выполнив дополнительный запрос на страницу какой-то категории или товара для получения необходимого списка товаров. В качестве примера можете разместить в шаблоне "Страница ошибки" следующий код (например после заголовка)

<div class="notFoundRel" style="display: none;"><h2>Возможно вы искали?</h2></div>
<script>
$(function() {
  $.get('/catalog/Dlya-puteshestviya', function(html) {
	$('.notFoundRel').show().append($(html).find('.pad-box > table'));
  });
});
</script>

Если вам необходим другой список товаров, то пожалуйста, уточните какой именно список товаров вы бы хотели отображать на странице ошибки (категория или рекомендуемые товары какого-то товара), а так же сообщите номер аккаунта для предполагаемых изменений.


#137521 Не Работают Кнопки Модификации Товара

Отправлено Сake на 09 Май 2014 - 05:32

Вы зря начали делать другое изменение с модификациями, не закончив при этом другое изменение. Сейчас судя по странице на аккаунте 268427 у вас уже реализовано отображение модификаций в виде radio. Для данного типа строка

var goodsDataProperties = c.find('form.goodsDataForm select[name="form[properties][]"]');

уже работать не будет. С учетом внесенных изменений понадобиться данную строку заменить на

var goodsDataProperties = c.find('form.goodsDataForm .goodsDataMainModificationsRadio');

так же заметил, что при переносе функции applyGoodsDataProperties вы перенесли лишний код, а именно строки

var
		// Запоминаем поля выбора свойств, для ускорения работы со значениями свойств
		goodsDataProperties = $('form.goodsDataForm select[name="form[properties][]"]'),
  
		// Запоминаем блоки с информацией по модификациям, для ускорения работы
		goodsDataModifications = $('div.goodsDataMainModificationsList');


далее строки

// Обновляем возможность выбора модификации товара по свойствам. Для тех свойств, выбор по которым не возможен, отключаем такую возможность.
  // Проверяем возможность выбора на всех полях кроме первого, чтобы отключить во всех остальных варианты, которые не возможно выбрать
  updateVisibility (0, goodsDataProperties, goodsDataModifications);
  // Проверяем возможность выбора на всех полях кроме второго, чтобы в первом поле так же отключилась возможность выбора не существующих модификаций
  updateVisibility (1, goodsDataProperties, goodsDataModifications);

и строку

applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);

Для исправления проблемы - вам необходимо в файле main.js найти код

var
		// Запоминаем поля выбора свойств, для ускорения работы со значениями свойств
		goodsDataProperties = $('form.goodsDataForm select[name="form[properties][]"]'),
  
		// Запоминаем блоки с информацией по модификациям, для ускорения работы
		goodsDataModifications = $('div.goodsDataMainModificationsList');


  // Обновляет возможность выбора свойств модификации, для отключения возможности выбора по характеристикам модификации которой не существует.
  function updateVisibility (y, goodsDataProperties, goodsDataModifications) {
		// Проверяем в каждом соседнем поле выбора модификаций, возможно ли подобрать модификацию для указанных свойств
		goodsDataProperties.each(function(j){
		  // Если мы сравниваем значения свойства не с самим собой, а с другим списком значений свойств
		  if( j != y ) {
				// Проходим по всем значениям текущего свойства модификации товара
				$(this).find('option').each(function(){
				  // Записываем временный массив свойств, которые будем использовать для проверки существования модификации
				  var checkProperties = new Array();
				  $(goodsDataProperties).each(function(i){
						checkProperties[i] = parseInt($(this).val());
				  });
				  // Пытаемся найти модификацию соответствующую выбранным значениям свойств
				  checkProperties[j] = parseInt($(this).attr('value'));
				  // Собираем хэш определяющий модификацию по свойствам
				  slug = checkProperties.sort(function(a,B){return a - b}).join('_');
				  // Ищем модификацию по всем выбранным значениям свойств товара. Если модификации нет в возможном выборе, отмечаем потенциальное значение выбора как не доступное для выбора, т.к. такой модификации нет.
				  if(!goodsDataModifications.filter('[rel="'+slug+'"]').length) {
				   $(this).attr('disabled', true);
				  // Если выбрав данное значение свойства товара можно подобрать модификацию, то выделяем вариант выбора как доступный.
				  } else {
						$(this).attr('disabled', false);
				  }
				});
		  }
		});
  }
  // Обновляем возможность выбора модификации товара по свойствам. Для тех свойств, выбор по которым не возможен, отключаем такую возможность.
  // Проверяем возможность выбора на всех полях кроме первого, чтобы отключить во всех остальных варианты, которые не возможно выбрать
  updateVisibility (0, goodsDataProperties, goodsDataModifications);
  // Проверяем возможность выбора на всех полях кроме второго, чтобы в первом поле так же отключилась возможность выбора не существующих модификаций
  updateVisibility (1, goodsDataProperties, goodsDataModifications);

  // Изменение цены товара при изменении у товара свойства для модификации
function applyGoodsDataProperties(goodsDataProperties, goodsDataModifications) {
  goodsDataProperties.each(function(y){
		$(this).change(function(){
		  var slug = getSlugFromGoodsDataFormModificationsProperties(goodsDataProperties),
				  modificationBlock					  = goodsDataModifications.filter('[rel="'+slug+'"]'),
				  modificationId								= parseInt(modificationBlock.find('[name="id"]').val()),
				  modificationArtNumber		  = modificationBlock.find('[name="art_number"]').val(),
				  modificationPriceNow			= parseFloat(modificationBlock.find('[name="price_now"]').val()),
				  modificationPriceNowFormated  = modificationBlock.find('.price_now_formated').html(),
				  modificationPriceOld			= parseFloat(modificationBlock.find('[name="price_old"]').val()),
				  modificationPriceOldFormated  = modificationBlock.find('.price_old_formated').html(),
				  modificationRestValue		  = parseFloat(modificationBlock.find('[name="rest_value"]').val()),
				  modificationDescription		  = modificationBlock.find('.description').html(),
				  modificationMeasureId		  = parseInt(modificationBlock.find('[name="measure_id"]').val()),
				  modificationMeasureName		  = modificationBlock.find('[name="measure_name"]').val(),
				  modificationMeasureDesc		  = modificationBlock.find('[name="measure_desc"]').val(),
				  modificationMeasurePrecision  = modificationBlock.find('[name="measure_precision"]').val(),
				  modificationIsHasInCompareList= modificationBlock.find('[name="is_has_in_compare_list"]').val(),
				  goodsModificationId			  = $('.goodsDataMainModificationId'),
				  goodsPriceNow						  = $('.goodsDataMainModificationPriceNow'),
				  goodsPriceOld						  = $('.goodsDataMainModificationPriceOld'),
				  goodsAvailable								= $('.goodsDataMainModificationAvailable'),
				  goodsAvailableTrue					= goodsAvailable.find('.available-true'),
				  goodsAvailableFalse			  = goodsAvailable.find('.available-false'),
				  goodsArtNumberBlock			  = $('.goodsDataMainModificationArtNumber'),
				  goodsArtNumber								= goodsArtNumberBlock.find('span');
				  goodsCompareAddButton		  = $('.goodsDataCompareButton.add');
				  goodsCompareDeleteButton		= $('.goodsDataCompareButton.delete');
				  goodsModDescriptionBlock		= $('.goodsDataMainModificationsDescriptionBlock');
		 
		 
		   // Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
		   if(modificationBlock.length) {
				 // Цена товара
				 goodsPriceNow.html(modificationPriceNowFormated);

				 // Старая цена товара
				 if(modificationPriceOld>modificationPriceNow) {
				  goodsPriceOld.html(modificationPriceOldFormated);
				 } else {
				   goodsPriceOld.html('');
				 }
			   
				 // Есть ли товар есть в наличии
				 if(modificationRestValue>0) {
				   goodsAvailableTrue.show();
				   goodsAvailableFalse.hide();
				 // Если товара нет в наличии
				 } else {
				   goodsAvailableTrue.hide();
				   goodsAvailableFalse.show();
				 }
				 // Если товар есть в списке сравнения
				 if(modificationIsHasInCompareList>0) {
				   goodsCompareAddButton.hide();
				   goodsCompareDeleteButton.show();
				 // Если товара нет в списке сравнения
				 } else {
				   goodsCompareAddButton.show();
				   goodsCompareDeleteButton.hide();
				 }
			   
				 // Покажем артикул модификации товара, если он указан
				 if(modificationArtNumber.length>0) {
				   goodsArtNumberBlock.show();
				   goodsArtNumber.html(modificationArtNumber);
				 // Скроем артикул модификации товара, если он не указан
				 } else {
				   goodsArtNumberBlock.hide();
				   goodsArtNumber.html('');
				 }
				 // Описание модификации товара. Покажем если оно есть, спрячем если его у модификации нет
				 if(modificationDescription.length > 0) {
				   goodsModDescriptionBlock.show().html('<div>' + modificationDescription + '</div>');
				 } else {
				   goodsModDescriptionBlock.hide().html();
				 }
			   
			   
				 // Идентификатор товарной модификации
				 goodsModificationId.val(modificationId);
		   } else {
				 // Отправим запись об ошибке на сервер
				 sendError('no modification by slug '+slug);
				 alert('К сожалению сейчас не получается подобрать модификацию соответствующую выбранным параметрам.');
		   }
		 
		   // Обновляем возможность выбора другой модификации для текущих значений свойств модификации товара.
		   updateVisibility(y, goodsDataProperties, goodsDataModifications);
		});
  });
}
applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);

и заменить его на

// Функция собирает свойства в строку, для определения модификации товара
  function getSlugFromGoodsDataFormModificationsProperties(obj) {
		var properties = new Array();
		var reset_arr = new Array();
		$(obj).find('input[type="radio"]').each(function(i){
		  if($(this).is(':checked')){
				properties[i] = parseInt($(this).val());}
		});
		for(var i in properties) {
		 if(properties[i]) {
		  reset_arr.push(properties[i]);
		 }
		}
		return reset_arr.sort(function(a,f){return a - f}).join('_');
  }

  // Обновляет возможность выбора свойств модификации, для отключения возможности выбора по характеристикам модификации которой не существует.
  function updateVisibility (y, goodsDataProperties, goodsDataModifications) {
		// Проверяем в каждом соседнем поле выбора модификаций, возможно ли подобрать модификацию для указанных свойств
		goodsDataProperties.each(function(j){
		  // Если мы сравниваем значения свойства не с самим собой, а с другим списком значений свойств
		  if( j != y ) {
				// Проходим по всем значениям текущего свойства модификации товара
				$(this).find('input[type="radio"]').each(function(){
				  // Записываем временный массив свойств, которые будем использовать для проверки существования модификации
				  //var checkProperties = new Array();
				  /*$(goodsDataProperties).each(function(i){
						if($(this).is(':checked'))
						  checkProperties[i] = parseInt($(this).val());
				  });*/
				  // Пытаемся найти модификацию соответствующую выбранным значениям свойств
				  //checkProperties[j] = parseInt($(this).attr('value'));
				  // Собираем хэш определяющий модификацию по свойствам
				  //slug = checkProperties.sort(function(a,f){return a - f}).join('_');
slug = getSlugFromGoodsDataFormModificationsProperties(goodsDataProperties);
				  // Ищем модификацию по всем выбранным значениям свойств товара. Если модификации нет в возможном выборе, отмечаем потенциальное значение выбора как не доступное для выбора, т.к. такой модификации нет.
				  if(!goodsDataModifications.filter('[rel="'+slug+'"]').length) {
				   $(this).attr('disabled', 'disabled');
				  // Если выбрав данное значение свойства товара можно подобрать модификацию, то выделяем вариант выбора как доступный.
				  } else {
						$(this).removeAttr('disabled');
				  }
				});
		  }
		});
  }

  // Изменение цены товара при изменении у товара свойства для модификации
function applyGoodsDataProperties(goodsDataProperties, goodsDataModifications) {
  goodsDataProperties.each(function(y){
		$(this).find('input[type="radio"]').click(function(){
		  var slug = getSlugFromGoodsDataFormModificationsProperties(goodsDataProperties),
				  modificationBlock					  = goodsDataModifications.filter('[rel="'+slug+'"]'),
				  modificationId								= parseInt(modificationBlock.find('[name="id"]').val()),
				  modificationArtNumber		  = modificationBlock.find('[name="art_number"]').val(),
				  modificationPriceNow			= parseFloat(modificationBlock.find('[name="price_now"]').val()),
				  modificationPriceNowFormated  = modificationBlock.find('.price_now_formated').html(),
				  modificationPriceOld			= parseFloat(modificationBlock.find('[name="price_old"]').val()),
				  modificationPriceOldFormated  = modificationBlock.find('.price_old_formated').html(),
				  modificationRestValue		  = parseFloat(modificationBlock.find('[name="rest_value"]').val()),
				  modificationDescription		  = modificationBlock.find('.description').html(),
				  modificationMeasureId		  = parseInt(modificationBlock.find('[name="measure_id"]').val()),
				  modificationMeasureName		  = modificationBlock.find('[name="measure_name"]').val(),
				  modificationMeasureDesc		  = modificationBlock.find('[name="measure_desc"]').val(),
				  modificationMeasurePrecision  = modificationBlock.find('[name="measure_precision"]').val(),
				  modificationIsHasInCompareList= modificationBlock.find('[name="is_has_in_compare_list"]').val(),
				  goodsModificationId			  = $('.goodsDataMainModificationId'),
				  goodsPriceNow						  = $('.goodsDataMainModificationPriceNow'),
				  goodsPriceOld						  = $('.goodsDataMainModificationPriceOld'),
				  goodsAvailable								= $('.goodsDataMainModificationAvailable'),
				  goodsAvailableTrue					= goodsAvailable.find('.available-true'),
				  goodsAvailableFalse			  = goodsAvailable.find('.available-false'),
				  goodsArtNumberBlock			  = $('.goodsDataMainModificationArtNumber'),
				  goodsArtNumber								= goodsArtNumberBlock.find('span');
				  goodsCompareAddButton		  = $('.goodsDataCompareButton.add');
				  goodsCompareDeleteButton		= $('.goodsDataCompareButton.delete');
				  goodsModDescriptionBlock		= $('.goodsDataMainModificationsDescriptionBlock');
		 
		 
		   // Изменяем данные товара для выбранных параметров. Если нашлась выбранная модификация
		   if(modificationBlock.length) {
				 // Цена товара
				 goodsPriceNow.html(modificationPriceNowFormated);

				 // Старая цена товара
				 if(modificationPriceOld>modificationPriceNow) {
				  goodsPriceOld.html(modificationPriceOldFormated);
				 } else {
				   goodsPriceOld.html('');
				 }
			   
				 // Есть ли товар есть в наличии
				 if(modificationRestValue>0) {
				   goodsAvailableTrue.show();
				   goodsAvailableFalse.hide();
				 // Если товара нет в наличии
				 } else {
				   goodsAvailableTrue.hide();
				   goodsAvailableFalse.show();
				 }
				 // Если товар есть в списке сравнения
				 if(modificationIsHasInCompareList>0) {
				   goodsCompareAddButton.hide();
				   goodsCompareDeleteButton.show();
				 // Если товара нет в списке сравнения
				 } else {
				   goodsCompareAddButton.show();
				   goodsCompareDeleteButton.hide();
				 }
			   
				 // Покажем артикул модификации товара, если он указан
				 if(modificationArtNumber.length>0) {
				   goodsArtNumberBlock.show();
				   goodsArtNumber.html(modificationArtNumber);
				 // Скроем артикул модификации товара, если он не указан
				 } else {
				   goodsArtNumberBlock.hide();
				   goodsArtNumber.html('');
				 }
				 // Описание модификации товара. Покажем если оно есть, спрячем если его у модификации нет
				 if(modificationDescription.length > 0) {
				   goodsModDescriptionBlock.show().html('<div>' + modificationDescription + '</div>');
				 } else {
				   goodsModDescriptionBlock.hide().html();
				 }
			   
			   
				 // Идентификатор товарной модификации
				 goodsModificationId.val(modificationId);
		   } else {
				 // Отправим запись об ошибке на сервер
				 sendError('no modification by slug '+slug);
				 alert('К сожалению сейчас не получается подобрать модификацию соответствующую выбранным параметрам.');
		   }
		 
		   // Обновляем возможность выбора другой модификации для текущих значений свойств модификации товара.
		   updateVisibility(y, goodsDataProperties, goodsDataModifications);
		});
  });
}
$(function() {
  var
		// Запоминаем поля выбора свойств, для ускорения работы со значениями свойств
		goodsDataProperties = $('form.goodsDataForm .goodsDataMainModificationsRadio'),
  
		// Запоминаем блоки с информацией по модификациям, для ускорения работы
		goodsDataModifications = $('div.goodsDataMainModificationsList');
  // Обновляем возможность выбора модификации товара по свойствам. Для тех свойств, выбор по которым не возможен, отключаем такую возможность.
  // Проверяем возможность выбора на всех полях кроме первого, чтобы отключить во всех остальных варианты, которые не возможно выбрать
  updateVisibility (0, goodsDataProperties, goodsDataModifications);
  // Проверяем возможность выбора на всех полях кроме второго, чтобы в первом поле так же отключилась возможность выбора не существующих модификаций
  updateVisibility (1, goodsDataProperties, goodsDataModifications);
  applyGoodsDataProperties(goodsDataProperties, goodsDataModifications);
});

изменения внесены уже с учетом типа radio.


#136026 Добавить Виджет "Комментарии Вконтакте"

Отправлено Сake на 29 Апрель 2014 - 01:15

В вашем случае проблема возникает из-за адреса страницы. При использовании vk виджета комментариев - желательно изначально определять его местоположение путем определения адреса страницы. На странице документации http://vk.com/dev/widget_comments данный параметр имеет имя page_id, а запись должны выглядеть примерно так

<div id="vk_comments"></div>
<script type="text/javascript">
window.onload = function () {
VK.init({apiId: 111, onlyWidgets: true});
VK.Widgets.Comments('vk_comments', {width: 500, limit: 15}, '{% IF PAGE_CANONICAL %}{PAGE_CANONICAL}{% ELSE %}{CURRENT_URL}{% ENDIF %}');
}
</script>

Вам необходимо в шаблоне "Товар" добавить к вашему виджету третий параметр как

{% IF PAGE_CANONICAL %}{PAGE_CANONICAL}{% ELSE %}{CURRENT_URL}{% ENDIF %}

по выше приведенному примеру. После этого виджет будет иметь четкий идентификатор страницы.