не работает функция сравнения товаров на сайте. Что исправить?
1
Не Работает Функция Сравнения Товаров На Сайте
Автор Flor@@, 19 июля 2012 03:44
Сообщений в теме: 6
#1
Отправлено 19 Июль 2012 - 03:44
#2
Отправлено 19 Июль 2012 - 16:06
Пожалуйста, приведите ваш полный шаблон "Товар", а так же файл main.js
#3
Отправлено 19 Июль 2012 - 19:19
<div class="page-headline"> <h1>{GOODS_NAME}</h1> </div> <div class="pad-box"> <!-- Строка пути --> <div id="site-path"> <p> <a href="http://{NET_DOMAIN}/">Главная</a> » <a href="{CATALOG_URL}" >Каталог товаров</a> {% FOR upper_navigation %} {% IF upper_navigation.CURRENT %} » <a href="{upper_navigation.URL}" >{upper_navigation.NAME}</a>{% ELSEIF upper_navigation.CURRENT_PARENT %} » <a href="{upper_navigation.URL}" >{upper_navigation.NAME}</a>{% ENDIF %} {% ENDFOR %} » <span class="current">{GOODS_NAME}</span> </p> </div> <!-- end Строка пути --> <div class="goodsData"> <form action="{CART_ADD_GOODS_MODIFICATION_URL}" method="post" class="goodsDataForm cont700 hiden" > <div> <input type="hidden" name="hash" value="{HASH}" /> <input type="hidden" name="form[goods_from]" value="{GOODS_FROM}" /> <table class="goodsDataMain"> <tr> <td class="goodsDataMainImageBlock"> <!-- Большое изображение --> <div class="goodsDataMainImage"> {% IF GOODS_IMAGE_EMPTY %} <img src="{ASSETS_IMAGES_PATH}no-photo-medium.jpg" alt="{GOODS_NAME}" title="Увеличить {GOODS_NAME}" /> {% ELSE %} <a href="{GOODS_IMAGE_LARGE}" target="_blank" title="Увеличить {GOODS_NAME}"><img class="cornerAll withBorder" src="{GOODS_IMAGE_MEDIUM}" alt="{GOODS_NAME}" /></a> {% ENDIF %} <!-- Идентификатор изображения товара, используется для галереи изображений --> <input type="hidden" rel="{GOODS_IMAGE_ID}" /> </div> <!-- Ссылка на увеличение среднего изображения товара до большого. Появляется если у товара указано изображение --> {% IFNOT GOODS_IMAGE_EMPTY %} <div class="goodsDataMainImageZoom"> <a href="{GOODS_IMAGE_LARGE}" target="_blank">Увеличить изображение</a> </div> {% ENDIF %} <!-- Другие изображения товара. Отображаются если есть изображения товара --> {% IFNOT goods_images_empty %} {% FOR goods_images %} <!-- Заголовок и обёртка для изображений, которая позволяет не показывать уменьшенное изображение товара если оно у него лишь одно --> {% IF goods_images.first %} <div {% IF goods_images.length=1 %}style="display:none;"{% ENDIF %}> <h5>Другие фото {GOODS_NAME}</h5> {% ENDIF %} <!-- Уменьшенное изображение товара --> <div class="goodsDataMainImagesIcon left"> <a href="{goods_images.LARGE}" rel="gallery" target="_blank" title="{goods_images.NAME}"><img class="cornerAll withBorder" rel="{goods_images.MEDIUM}" src="{goods_images.ICON}" alt="{goods_images.NAME}" /></a> <!-- Идентификатор изображения товара, используется для галереи изображений --> <input type="hidden" rel="{goods_images.ID}" /> </div> <!-- В самом конце закрываем обёртку для списка маленьких изображений товара --> {% IF goods_images.last %} </div> {% ENDIF %} {% ENDFOR %} {% ENDIF %} </td> <td> <div class="goodsDataMainOrder cornerAll"> <table> <!-- Блок с данными товара при выбранных параметрах. Берутся из модификаций товара --> <tr> <td class="goodsDataMainModificationDataBlock" style="width: 180px;"> <!-- По этому значению производится заказ товара --> <input type="hidden" name="form[goods_mod_id]" value="{GOODS_MOD_ID}" class="goodsDataMainModificationId" /> <!-- Цена сейчас --> <span class="goodsDataMainModificationPriceNow" title="Цена сейчас"> {GOODS_MOD_PRICE_NOW | money_format} </span> <!-- Старая цена --> <span class="goodsDataMainModificationPriceOld lineThrough" title="Старая цена"> <!-- Если на товар действует скидка --> {% IF GOODS_MOD_PRICE_NOW_WITHOUT_DISCOUNT>GOODS_MOD_PRICE_NOW %} {% IF GOODS_MOD_MAX_DISCOUNT>1 %} {GOODS_MOD_PRICE_NOW_WITHOUT_DISCOUNT | money_format} {% ENDIF %} <!-- Если старая цена была больше новой --> {% ELSEIF GOODS_MOD_PRICE_OLD>GOODS_MOD_PRICE_NOW %} {GOODS_MOD_PRICE_OLD | money_format} {% ENDIF %} </span> <!-- Доступность товара --> <div class="goodsDataMainModificationAvailable"> <div rel="true" class="available-true" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}>В магазине</div> <div rel="false" class="available-false" {% IF GOODS_MOD_REST_VALUE>0 %}style="display:none;"{% ENDIF %}>Только на складе</div> </div> <!-- Добавление в корзину --> <div class="goodsDataMainModificationQuantity"> <label for="quantity_wanted">Количество :</label> <input type="text" name="form[goods_mod_quantity]" id="quantity_wanted" style="width:43px;" maxlength="12" value="1" title="Количество" class="text" /> </div> </td> <td class="goodsDataFormSubmitButton"> <input type="submit" value="Купить" style="width:200px;" /> <!-- Если в тарифном плане подключен модуль сравнения товаров --> {% IF TARIFF_FEATURE_GOODS_COMPARE %} <!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров --> {% IFNOT SETTINGS_COMPARE_DISABLE %} <div style="padding-bottom:1em;"> <a href="#" title="Добавить товарную модификацию к списку сравнения с другими товарами" rel="http://otdyh-i-son.ru/compare/add?return_to=http%3A%2F%2Fotdyh-i-son.ru%2Fgoods%2F%25D0%259D%25D0%25B0%25D0%25BC%25D0%25B0%25D1%2582%25D1%2580%25D0%25B0%25D1%2581%25D0%25BD%25D0%25B8%25D0%25BA-Aquastop-D%3Ffrom%3DMTRi" class="goodsDataCompareButton delete" onclick="javascript:$(this).closest('form').submit();">Сравнить</a> <p> <a href="http://otdyh-i-son.ru/compare" title="Таблица сравнения">Таблица сравнения</a> <p> </p> <p> <a href="{FEEDBACK_URL}?form[feedback_message]=%D0%A3%D0%B2%D0%B5%D0%B4%D0%BE%D0%BC%D0%B8%D1%82%D1%8C%20%D0%BE%20%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D0%B8">Мне нравится товар, но не подошла цена на него. Какую скидку возможно сделать?</a> </p> {% ENDIF %} {% ENDIF %} </td> </tr> <!-- Блок информации по акции действующей на товар, если таковая есть --> {% IF GOODS_MOD_MAX_DISCOUNT_ID %} <tr> <td class="goodsDataMainDiscountBlock" colspan="2"> <div> <!-- Акция на товар --> <strong>Товар участвует в акции «{GOODS_MOD_MAX_DISCOUNT_CAMPAIGN_NAME}»:</strong><br /> Скидка составляет <strong>{GOODS_MOD_MAX_DISCOUNT}%</strong>, Акция проводится до {GOODS_MOD_MAX_DISCOUNT_EXPIRED_AT | date} <p><strong><a href="{GOODS_MOD_MAX_DISCOUNT_URL}" style="color: green">Посмотреть полные условия акции: «{GOODS_MOD_MAX_DISCOUNT_CAMPAIGN_NAME}»</a></strong><br /> </div> </div> </td> </tr> {% ENDIF %} <!-- Блок выбора модификаций для текущей товарной позиции --> <tr> <td class="goodsDataMainModificationsBlock" {% IF GOODS_NO_CHOISE_IN_PROPERTIES_FOR_MODIFICATIONS %}style="display:none;"{% ENDIF %} colspan="2"> <div> <table> <tr> {% FOR goods_modifications_properties %} <td class="goodsDataMainModificationsBlockProperty"> <!-- Выдаем списки со свойствами для модификаций, чтобы определить какую модификацию товара хочет пользователь --> {% 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>","")} {% ENDFOR %} </tr> </table> <!-- Данные по модификациям для текущей товарной позиции --> {% FOR goods_modifications %} <div class="goodsDataMainModificationsList" rel="{goods_modifications.PROPERTIES_SLUG}"> <input type="hidden" name="id" value="{goods_modifications.ID}" /> <input type="hidden" name="art_number" value="{goods_modifications.ART_NUMBER}" /> <input type="hidden" name="price_now" value="{goods_modifications.PRICE_NOW}" /> <div class="price_now_formated" style="display:none">{goods_modifications.PRICE_NOW | money_format}</div> <input type="hidden" name="price_old" value="{% IF goods_modifications.PRICE_NOW_WITHOUT_DISCOUNT>goods_modifications.PRICE_NOW %}{goods_modifications.PRICE_NOW_WITHOUT_DISCOUNT}{% ELSE %}{goods_modifications.PRICE_OLD}{% ENDIF %}" /> <div class="price_old_formated" style="display:none">{% IF goods_modifications.PRICE_NOW_WITHOUT_DISCOUNT>goods_modifications.PRICE_NOW %}{goods_modifications.PRICE_NOW_WITHOUT_DISCOUNT | money_format}{% ELSE %}{goods_modifications.PRICE_OLD | money_format}{% ENDIF %}</div> <input type="hidden" name="rest_value" value="{goods_modifications.REST_VALUE}" /> <input type="hidden" name="measure_id" value="{goods_modifications.MEASURE_ID}" /> <input type="hidden" name="measure_name" value="{goods_modifications.MEASURE_NAME}" /> <input type="hidden" name="measure_desc" value="{goods_modifications.MEASURE_DESC}" /> <input type="hidden" name="measure_precision" value="{goods_modifications.MEASURE_PRECISION}" /> <input type="hidden" name="is_has_in_compare_list" value="{goods_modifications.IS_HAS_IN_COMPARE_LIST}" /> <div class="description" style="display:none">{goods_modifications.DESCRIPTION}</div> </div> {% ENDFOR %} </div> </td> </tr> <!-- Блок описания модификации --> <tr> <td class="goodsDataMainModificationsDescriptionBlock" {% IFNOT GOODS_MOD_DESCRIPTION %}style="display:none;"{% ENDIF %} colspan="2"> {GOODS_MOD_DESCRIPTION} </td> </tr> <!-- Блок описания вариантов доставки --> <tr style="display:none;"> <td class="goodsDataMainDeliveryBlock" colspan="2"> <h4>Условия доставки</h4> {% FOR goods_delivery %} <br /><h5 rel="{goods_delivery.ID}" class="goodsDataMainDeliveryItemHeader">Вариант {goods_delivery.index}: {goods_delivery.NAME}</h5> <div class="goodsDataMainDeliveryItem" > <p>{goods_delivery.DESC}</p> {% IF goods_delivery.rules_empty %} Стоимость доставки: {goods_delivery.PRICE | money_format} {% ELSE %} <div class="goodsDataMainDeliveryItemRules"> <table> <thead> <tr> <td colspan="2"><h5>Стоимость доставки зависит от суммы заказа</h5></td> </tr> <tr> <td>Для заказов больше</td> <td>Стоимость доставки</td> </tr> </thead> <tbody class="num"> {% FOR rules %} <tr> <td><p><span>{goods_delivery.rules.SUM_MORE_PRICE | money_format}</span></p></td> <td>{goods_delivery.rules.PRICE | money_format}</td> </tr> {% ENDFOR %} <tr> <td><p><span>Для заказов меньше {goods_delivery.SUM_LESS_PRICE | money_format}</span></p></td> <td>{goods_delivery.PRICE | money_format}</td> </tr> </tbody> </table> </div> {% ENDIF %} </div> {% ENDFOR %} </td> </tr> </table> </div> </td> </tr> </table> </div> </form> <script type="text/javascript" src="//yandex.st/share/share.js" charset="utf-8"></script> <div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="button" data-yashareQuickServices="yaru,vkontakte,facebook,twitter,odnoklassniki,moimir,lj,friendfeed,moikrug"></div> <!-- Блок описания товара. Показываем его есть описание товара --> {% IF GOODS_DESCRIPTION_LARGE %} <h3> {GOODS_NAME}</h3> <div class="htmlDataBlock"> {GOODS_DESCRIPTION_LARGE} </div> {% ENDIF %} <!-- END Блок описания товара. Показываем его есть описание товара --> {%IF user_login%} <!-- Короткое SEO-описание --> {% IF GOODS_SEO_DESCRIPTION_SHORT %} <p> {GOODS_SEO_DESCRIPTION_SHORT} </p> {% ENDIF %} <!-- END Короткое SEO-описание --> {%ENDIF%} <!-- Полное SEO-описание --> {% IF GOODS_SEO_DESCRIPTION_LARGE %} <div style="padding-top:1em;" class="htmlDataBlock">{GOODS_SEO_DESCRIPTION_LARGE}</div> {% ENDIF %} <!-- END Полное SEO-описание --> </div> <!-- Блок характеристик товара. Показываем его если указаны характеристики --> {% IFNOT goods_features_empty %} <h3>Характеристики {GOODS_NAME}</h3><br /> <table class="goodsDataFeatures"> <tr> {% FOR goods_features%} <td> <p><span>{goods_features.NAME}</span></p> </td> <td> {goods_features.VALUE} </td> {goods_features.index | is_divided("2","</tr><tr>","")} {% ENDFOR %} </tr> </table><br /><br /> <a href="http://otdyh-i-son.ru/page/Доставка" target="_blank">Узнать условия доставки.</a> {% ENDIF %} <!-- END Блок характеристик товара. Показываем его если указаны характеристики --> <!-- Сопутствующие товары --> {% IFNOT related_goods_empty %} <h3>Сопутствующие товары</h3><br /> <table class="related_goods_product"> <tr> {% FOR related_goods %} <td class="goodsListItem"> <div class="goodsListItemBlock withBorder cornerAll"> <table class="goodsListItemImage"> <tr> <td> <a href="{related_goods.URL}" title="Перейти на страницу «{related_goods.NAME}»"><img src="{% IF related_goods.IMAGE_EMPTY %}{ASSETS_IMAGES_PATH}no-photo-other.png{% ELSE %}{related_goods.IMAGE_OTHER}{% ENDIF %}" alt="{related_goods.NAME}" /></a> </td> </tr> </table> <h3 class="goodsListItemName"><a href="{related_goods.URL}" title="Перейти на страницу «{related_goods.NAME}»">{related_goods.NAME}</a></h3> <div class="goodsListItemPriceNew"> <a href="{related_goods.URL_MIN_PRICE_NOW}">{related_goods.MIN_PRICE_NOW | money_format}</a> </div> <div class="goodsListItemPriceOld"> {% IF related_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT>related_goods.MIN_PRICE_NOW %} <a href="{related_goods.URL_MIN_PRICE_NOW_WITHOUT_DISCOUNT}" class="lineThrough">{related_goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT | money_format}</a> {% ELSEIF related_goods.MIN_PRICE_OLD>related_goods.MIN_PRICE_NOW %} <a href="{related_goods.URL_MIN_PRICE_OLD}" class="lineThrough">{related_goods.MIN_PRICE_OLD | money_format}</a> {% ENDIF %} </div> </div> </td> {% IFNOT related_goods.last %}{related_goods.index | is_divided("5","</tr><tr>","")}{% ENDIF %} {% ENDFOR goods %} </tr> </table><br /><br /> {% ENDIF %} <!-- END Сопутствующие товары --> <!-- Если в тарифном плане подключен модуль отзывов о товаре --> {% IF TARIFF_FEATURE_GOODS_OPINION %} <!-- Если не выключен модуль отзывов о товаре --> {% IFNOT SETTINGS_OPINION_DISABLE %} <div class="goodsDataOpinion"> <h3>Отзывы о {GOODS_NAME}</h3><br /> <!-- Если отзывов по товару вообще нет, ни положительных ни отрицательных --> {% IF opinion_list_empty_without_filter %} <div class="goodsDataOpinionMessage empty">Отзывов пока не было. Вы можете <a href="#goodsDataOpinionAdd" class="jsAction goodsDataOpinionShowAddForm">оставить его первым</a></div> <!-- Если по товару есть хотя бы один отзыв --> {% ELSE %} <table> <!-- Верхняя навигация (Фильтры и страницы) --> <thead> <tr class="goodsDataOpinionListNavigateTop"> <td> <!-- Среднее значение по результатам всех отзывов об этом товаре --> {% IF GOODS_OPINION_RATING_VALUE_ROUND %} <img src="{FORALL_IMAGES_PATH}stars/{GOODS_OPINION_RATING_VALUE_ROUND}.gif" alt="{GOODS_OPINION_RATING_VALUE_ROUND}" class="valignMiddle" style="padding-right:1em;" /> {% ELSE %} <img src="{FORALL_IMAGES_PATH}stars/10.gif" alt="Рейтинг не определён" class="valignMiddle" style="padding-right:1em;" /> {% ENDIF %} <!-- Фильтры отзывов --> <span class="goodsDataOpinionAverageInfo"> {% IF GOODS_OPINION_GENERALLY_IS_GOOD=-1 %} Все ({GOODS_OPINION_RATING_CNT_ALL}) | {% ELSE %} <a href="{GOODS_OPINION_ALL_URL}">Все ({GOODS_OPINION_RATING_CNT_ALL})</a> | {% ENDIF %} {% IF GOODS_OPINION_GENERALLY_IS_GOOD=1 %} Положительные ({GOODS_OPINION_RATING_CNT_GOOD}) | {% ELSE %} <a href="{GOODS_OPINION_GOOD_URL}">Положительные ({GOODS_OPINION_RATING_CNT_GOOD})</a> | {% ENDIF %} {% IF GOODS_OPINION_GENERALLY_IS_GOOD=0 %} Отрицательные ({GOODS_OPINION_RATING_CNT_BAD}) | {% ELSE %} <a href="{GOODS_OPINION_BAD_URL}">Отрицательные ({GOODS_OPINION_RATING_CNT_BAD})</a> | {% ENDIF %} <a href="#goodsDataOpinionAdd" class="jsAction goodsDataOpinionShowAddForm AddNewOpinionLinkAfterList">Оставить отзыв</a> </span> </td> <td> <!-- Страницы отзывов --> {% IF opinion_show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR opinion_pages_list %} {% IF opinion_pages_list.CURRENT %} <b>{opinion_pages_list.PAGE}</b> {% ELSE %} <a href="{GOODS_OPINION_PAGINATE_URL}&page={opinion_pages_list.PAGE}">{opinion_pages_list.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </td> </tr> </thead> <!-- END Верхняя навигация (Фильтры и страницы) --> <!-- Если отзывов по товару не было с учетом фильтра по настроению отзыва --> {% IF opinion_list_empty %} <tbody> <tr> <td colspan="2"> <div class="goodsDataOpinionMessage empty"> {% IF GOODS_OPINION_GENERALLY_IS_GOOD=1 %} Положительных {% ELSEIF GOODS_OPINION_GENERALLY_IS_GOOD=0 %} Отрицательных {% ENDIF %} отзывов пока не было. Вы можете <a href="#goodsDataOpinionAdd" class="jsAction goodsDataOpinionShowAddForm">оставить его первым</a> </div> </td> </tr> </tbody> <!-- Если отзывы по товару уже есть, покажем их список --> {% ELSE %} <!-- Список отзывов о товарах --> <tbody> <tr> <td colspan="2"> <table class="goodsDataOpinionListTable"> <tbody> {% FOR opinion_list %} <tr class="{% IF opinion_list.GENERALLY_IS_GOOD %}good{% ELSE %}bad{% ENDIF %}"> <td class="ceil1"> <span class="goodsDataOpinionListTableClient {% IF opinion_list.CLIENT_ID %}auth{% ENDIF %}">{opinion_list.NAME}</span> <span class="goodsDataOpinionListTableDate">{opinion_list.DATE}</span> {% IF opinion_list.DELETE_URL %} <a href="{opinion_list.DELETE_URL}">Удалить</a> {% ENDIF %} </td> <td class="ceil2"> {% IF opinion_list.TITLE %}<strong class="valignMiddle">{opinion_list.TITLE}</strong>{% ENDIF %} {% IF opinion_list.RATING %}<img class="valignMiddle" src="{FORALL_IMAGES_PATH}stars/{opinion_list.RATING}.gif" alt="{opinion_list.RATING}"/>{% ENDIF %}<br /> {% IF opinion_list.ACCOMPLISHMENTS %}<strong>Достоинства:</strong> {opinion_list.ACCOMPLISHMENTS | nl2br}<br />{% ENDIF %} {% IF opinion_list.LIMITATIONS %}<strong>Недостатки:</strong> {opinion_list.LIMITATIONS | nl2br}<br />{% ENDIF %} {% IF opinion_list.COMMENT %}<strong>Комментарий:</strong> {opinion_list.COMMENT | nl2br}<br />{% ENDIF %} {% IF opinion_list.ANSWER %} <div class="goodsDataOpinionListTableAnswer"> {opinion_list.ANSWER | nl2br}<br /> </div> {% ENDIF %} </td> </tr> {% ENDFOR %} </tbody> </table> </td> </tr> </tbody> <!-- END Список отзывов о товаре --> <!-- Нижняя навигация (страницы) --> <tfoot> <tr class="goodsDataOpinionListNavigateBottom"> <td colspan="2"> <!-- Страницы отзывов --> {% IF opinion_show_pages %} <div class="square_pages"> <span>Страницы: </span> {% FOR opinion_pages_list %} {% IF opinion_pages_list.CURRENT %} <b>{opinion_pages_list.PAGE}</b> {% ELSE %} <a href="{GOODS_OPINION_PAGINATE_URL}&page={opinion_pages_list.PAGE}">{opinion_pages_list.PAGE}</a> {% ENDIF %} {% ENDFOR %} </div> {% ENDIF %} </td> </tr> </tfoot> <!-- END Нижняя навигация (страницы) --> {% ENDIF %} </table> {% ENDIF %} <!-- END Если по товару есть хотя бы один отзыв --> <!-- Форма добавления нового отзыва о товаре --> <form action="" method="post" class="goodsDataOpinionAddForm"> <div id="goodsDataOpinionAdd"> {% IF FORM_NOTICE %} <h3 class="{% IF FORM_NOTICE_IS_GOOD %}green{% ELSE %}red{% ENDIF %}">{FORM_NOTICE}</h3> {% ENDIF %} <div id="goodsDataOpinionAddBlock" {% IFNOT FORM_GOODS_ID %}style="display:none"{% ENDIF%}> <input type="hidden" name="hash" value="{HASH}" /> <input type="hidden" name="form[goods_from]" value="{GOODS_FROM}" /> <input type="hidden" name="form[goods_id]" value="{GOODS_ID}" /> <h3>Новый отзыв о «{GOODS_NAME}»</h3> <table class="goodsDataOpinionAddTable"> {% IF TARIFF_FEATURE_CLIENT_ROOM %} {% IFNOT CLIENT_IS_LOGIN %} <thead> <tr> <td colspan="2"> <div class="goodsDataOpinionMessage auth">Ваши знания будут оценены посетителями сайта, если Вы <a href="{USER_LOGIN_URL}">авторизируетесь</a> перед написанием отзыва.</div> </td> </tr> </thead> {% ENDIF %} {% ENDIF %} <!-- Тело таблицы. Форма добавления отзыва о товаре --> <tbody> {% IFNOT CLIENT_IS_LOGIN %} <tr> <td><label for="goods_opinion_name" class="required">Ваше имя</label></td> <td><input id="goods_opinion_name" name="form[goods_opinion_name]" value="{FORM_GOODS_OPINION_NAME}" maxlength="255" class="required cornerAll"/></td> </tr> {% ENDIF %} <tr> <td><label for="goods_opinion_title">Заголовок</label></td> <td><input id="goods_opinion_title" name="form[goods_opinion_title]" value="{FORM_GOODS_OPINION_TITLE}" maxlength="255" class="cornerAll" /></td> </tr> <tr> <td class="valignTop"><label>Оценка товара</label></td> <td> <div class="goodsDataOpinionTableRating"> <input name="form[goods_opinion_rating]" type="radio" value="1" {% IF FORM_GOODS_OPINION_RATING=1 %}checked="checked"{% ENDIF %} title="Ужасный" /> <input name="form[goods_opinion_rating]" type="radio" value="2" {% IF FORM_GOODS_OPINION_RATING=2 %}checked="checked"{% ENDIF %} title="Очень плохой"/> <input name="form[goods_opinion_rating]" type="radio" value="3" {% IF FORM_GOODS_OPINION_RATING=3 %}checked="checked"{% ENDIF %} title="Плохой"/> <input name="form[goods_opinion_rating]" type="radio" value="4" {% IF FORM_GOODS_OPINION_RATING=4 %}checked="checked"{% ENDIF %} title="ниже среднего"/> <input name="form[goods_opinion_rating]" type="radio" value="5" {% IF FORM_GOODS_OPINION_RATING=5 %}checked="checked"{% ENDIF %} title="Средний"/> <input name="form[goods_opinion_rating]" type="radio" value="6" {% IF FORM_GOODS_OPINION_RATING=6 %}checked="checked"{% ENDIF %} title="Выше среднего"/> <input name="form[goods_opinion_rating]" type="radio" value="7" {% IF FORM_GOODS_OPINION_RATING=7 %}checked="checked"{% ENDIF %} title="Хороший"/> <input name="form[goods_opinion_rating]" type="radio" value="8" {% IF FORM_GOODS_OPINION_RATING=8 %}checked="checked"{% ENDIF %} title="Очень хороший"/> <input name="form[goods_opinion_rating]" type="radio" value="9" {% IF FORM_GOODS_OPINION_RATING=9 %}checked="checked"{% ENDIF %} title="Отличный"/> <input name="form[goods_opinion_rating]" type="radio" value="10" {% IF FORM_GOODS_OPINION_RATING=10 %}checked="checked"{% ENDIF %} title="Превосходный"/> </div> <span class="goodsDataOpinionMsg"></span> </td> </tr> <tr> <td><label for="goods_opinion_accomplishments">Достоинства</label></td> <td><textarea id="goods_opinion_accomplishments" name="form[goods_opinion_accomplishments]" cols="100" rows="7" class="cornerAll">{FORM_GOODS_OPINION_ACCOMPLISHMENTS}</textarea></td> </tr> <tr> <td><label for="goods_opinion_limitations">Недостатки</label></td> <td><textarea id="goods_opinion_limitations" name="form[goods_opinion_limitations]" cols="100" rows="7" class="cornerAll">{FORM_GOODS_OPINION_LIMITATIONS}</textarea></td> </tr> <tr> <td><label for="goods_opinion_comment" class="required">Комментарий</label></td> <td><textarea id="goods_opinion_comment" name="form[goods_opinion_comment]" cols="100" rows="7" class="required cornerAll">{FORM_GOODS_OPINION_COMMENT}</textarea></td> </tr> <tr> <td><label for="goods_opinion_generally_is_good1">В целом Ваш отзыв</label></td> <td> <div class="generally"> <input id="goods_opinion_generally_is_good1" name="form[goods_opinion_generally_is_good]" type="radio" value="1" {% IF FORM_GOODS_OPINION_GENERALLY_IS_GOOD=1 %}checked="checked"{% ENDIF %}/> <label for="goods_opinion_generally_is_good1">Положительный</label> <input id="goods_opinion_generally_is_good0" name="form[goods_opinion_generally_is_good]" type="radio" value="0" {% IF FORM_GOODS_OPINION_GENERALLY_IS_GOOD=0 %}checked="checked"{% ENDIF %}/> <label for="goods_opinion_generally_is_good0">Отрицательный</label> </div> </td> </tr> {% IF USE_CAPTCHA %} <tr> <td><label for="opinion_captcha_string" class="required">Введите цифры</label></td> <td class="goodsDataOpinionCaptcha"> <table> <tr> <td rowspan="2"><img src="{CAPTCHA_URL}" class="goodsDataOpinionCaptchaImg" alt="Цифры" /></td> <td><img src="{FORALL_IMAGES_PATH}icon/refresh/1.gif" rel="{FORALL_IMAGES_PATH}" alt="Обновить" title="Обновить" class="goodsDataOpinionCaptchaRefresh" /></td> </tr> <tr> <td><input id="opinion_captcha_string" name="form[captcha_string]" class="required captcha cornerAll" value="{FORM_}" /></td> </tr> </table> </td> </tr> {% ENDIF %} </tbody> <!-- Низ таблицы. Кнопка отправки формы --> <tfoot> <tr> <td></td> <td><input type="submit" value="Добавить отзыв" /> <input type="reset" class="button" value="Отменить" /> </td> </tr> </tfoot> </table> </div> </div> </form> <!-- Дабы добавляющий увидел результат добавления изменим хэш --> {% IF FORM_GOODS_ID %}<script type="text/javascript">document.location.hash="goodsDataOpinionAdd"</script>{% ENDIF %} </div> {% ENDIF %} <!-- END Если не выключен модуль отзывов о товаре --> {% ENDIF %} <!-- END Если в тарифном плане подключен модуль отзывов о товаре --> <a href="http://clck.yandex.ru/redir/dtype=stred/pid=47/cid=2508/*http://grade.market.yandex.ru/?id=83830&action=link"><img src="http://clck.yandex.ru/redir/dtype=stred/pid=47/cid=2505/*http://grade.market.yandex.ru/?id=83830&action=image&size=0" border="0" width="88" height="31" alt="Читайте отзывы покупателей и оценивайте качество магазина на Яндекс.Маркете" /></a>
// Отправляет ошибку на сервер, для того чтобы служба тех поддержки могла разобраться в проблеме как можно быстрее. function sendError (desc, page, line) { var img=document.createElement('img'); img.src = 'http://storeland.ru/error/js?desc='+encodeURIComponent(desc)+'&page='+encodeURIComponent(window.location)+'&line=0'; img.style.position = 'absolute'; img.style.top = '-9999px'; try { document.getElementsByTagName('head').appendChild(img) } catch (e){} return false; } // Форматирует цену function number_format(number,decimals,dec_point,thousands_sep){var n=number,prec=decimals;var toFixedFix=function(n,prec){var k=Math.pow(10,prec);return(Math.round(n*k)/k).toString();};n=!isFinite(+n)?0:+n;prec=!isFinite(+prec)?0:Math.abs(prec);var sep=(typeof thousands_sep==='undefined')?',':thousands_sep;var dec=(typeof dec_point==='undefined')?'.':dec_point;var s=(prec>0)?toFixedFix(n,prec):toFixedFix(Math.round(n),prec);var abs=toFixedFix(Math.abs(n),prec);var _,i;if(abs>=1000){_=abs.split(/D/);i=_[0].length%3||3;_[0]=s.slice(0,i+(n<0))+ _[0].slice(i).replace(/(d{3})/g,sep+'$1');s=_.join(dec);}else{s=s.replace('.',dec);} var decPos=s.indexOf(dec);if(prec>=1&&decPos!==-1&&(s.length-decPos-1)<prec){s+=new Array(prec-(s.length-decPos-1)).join(0)+'0';} else if(prec>=1&&decPos===-1){s+=dec+new Array(prec).join(0)+'0';} return s;} // Превращает поле пароля в текстовое поле и обратно // @LinkObject - ссылка по которой кликнули // @InputObject - объект у которого нужно изменить тип поля function ChangePasswordFieldType (LinkObject, InputObject) { var // Ссылка по которой кликнули LObject = $(LinkObject), // Объект у которого изменяем тип с password на text IObject = $(InputObject), // Старый текст ссылки txtOld = LObject.text(), // Новый текст ссылки txtNew = LObject.attr('rel'); // Если объекты не получены, завершим работу функции if( LObject.length==0 || IObject.length==0 ) { return false; } // Изменяем у ссылки текст со старого на новый LObject.html(txtNew); // Старый текст ссылки сохраняем в атрибуте rel LObject.attr('rel', txtOld); // Изменяем тип input поля if(IObject[0].type == 'text') { IObject[0].type = 'password'; } else { IObject[0].type = 'text'; } } // Крутит изображение при обновлении картинки защиты от роботов function RefreshImageAction(img,num,cnt) { if(cnt>13) { return false; } $(img).attr('src', $(img).attr('rel') + 'icon/refresh/' + num + '.gif'); num = (num==6)?0:num; setTimeout(function(){RefreshImageAction(img, num+1, cnt+1);}, 50); } $(document).ready(function(){ $.nyroModalSettings({ content: 'contentCall', width: 400, minHeight: 230, gallery: null, showCloseButton: false }); // Валидация формы на странице оформления заказа, а так же формы на страницы связи с администрацией $('.order form, .feedbackForm, .clientForm, .goodsDataOpinionAddForm').validate(); // В форме оформления заказа при клике на кнопку назад просто переходим на предыдущую страницу $('.order form input:submit[name="toprev"]').click(function(){ var act = this.form.action; this.form.action = act + ( act.indexOf( '?' ) > -1 ? '&' : '?' ) + 'toprev=1'; this.form.submit(); return false; }); // Настройки галереи изображений $.nyroModalSettings({ // из всех элементов с атрибут rel="gallery" будем создавать галерею gallery: 'gallery', // Включаем прокрутку с последнего изображения на первое galleryLoop: true }); // Увеличение изображение при клике на него и открытие галереи изображений $('.goodsDataMainImage a, .goodsDataMainImageZoom a').click(function(){ // Идентификатор главной картинки var goodsImageId = $('.goodsDataMainImage input').attr("rel"), // Маленькое изображение, по которому на самом деле будем кликать goodsImageIconElement = $('.goodsDataMainImagesIcon input[rel="'+goodsImageId+'"]').parent().find('a'); // Для иконки изображения запустим галерею goodsImageIconElement.nyroModalManual(); return false; }); // Добавление товара в корзину через ajax $('.goodsDataForm, .goodsToCartFromCompareForm').submit(function(){ $(this).nyroModalManual({ formIndicator: 'ajax_q', // Value added when a form is sent minWidth: 450, // Minimum width minHeight: 140, // Minimum height gallery: null // Gallery name if provided }); return false; }); // Изменение главного изображения товара при нажатии на миниатюру $('.goodsDataMainImagesIcon a').click(function(){ // Путь к среднему изображению var MediumImageUrl = $(this).find('img').attr('rel'), // Главное изображение, в которое будем вставлять новое изображение MainImage = $('.goodsDataMainImage img'), // В этом объекте хранится идентификатор картинки главного изображения для коректной работы галереи изображений MainImageIdObject = $('.goodsDataMainImage input'), // Получаем идентификатор этого изображения из соседнего input поля GoodsImageIconId = $(this).parent().find('input').attr("rel"); // Изменяем главное изображение MainImage.attr('src',MediumImageUrl); // Изменяем идентификатор главного изображения MainImageIdObject.attr("rel",GoodsImageIconId); return false; }); // Функция собирает свойства в строку, для определения модификации товара 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,B){return a - b}).join('_'); } var // Запоминаем поля выбора свойств, для ускорения работы со значениями свойств goodsDataProperties = $('.goodsDataMainModificationsBlock .goodsDataMainModificationsRadio'), // Запоминаем блоки с информацией по модификациям, для ускорения работы goodsDataModifications = $('div.goodsDataMainModificationsList'); // Изменение цены товара при изменении у товара свойства для модификации goodsDataProperties.each(function(y){ $(this).find('input[type="radio"]').click(function(){ var slug = getSlugFromGoodsDataFormModificationsProperties(goodsDataProperties), modificationBlock = $('.goodsDataMainModificationsList[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(); $('.goodsDataFormSubmitButton .more-link.submit').html('В корзину'); // Если товара нет в наличии } else { goodsAvailableTrue.hide(); goodsAvailableFalse.show(); $('.goodsDataFormSubmitButton .more-link.submit').html('Уведомить меня'); } // Если товар есть в списке сравнения 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); window.location.hash = '?modification='+modificationId; } else { // Отправим запись об ошибке на сервер sendError('no modification by slug '+slug); alert('К сожалению сейчас не получается подобрать модификацию соответствующую выбранным параметрам.'); } }); }); // Кнопка добавления товара на сравнение сравнения товаров $('.goodsDataCompareButton').click(function(){ window.location.href = $(this).attr('rel') + ($(this).attr('rel').indexOf( '?' ) > -1 ? '&' : '?') + 'id='+ $('.goodsDataMainModificationId').val()+ '&from='+ $('input[name="form[goods_from]"]').val(); return false; }); // Сравнение товаров. Увеличение изображение при клике на ссылку увеличения и открытие галереии с изображениями этого товара $('.CompareGoodsImageZoom').click(function(){ // Галлерея фотографий для данной модификации товаров var galleryBlock = $('.galleryBlock' + $(this).attr('rel')), // Главное изображение товара, которое сейчас стоит у товара galleryMainImage = $('.CompareGoodsImageMain' + $(this).attr('rel')), // Изображение по которому нужно кликнуть в галлерее изображений ImageIngallery = galleryBlock.find('.CompareGoodsImageGallery'+galleryMainImage.attr('rel')); // Запускаем галлерею изображений от изображения товара, чтобы если например кликнули по гайке, то и открылись гайка, а не еще какой-либо изображение этого товара ImageIngallery.nyroModalManual({ gallery: 'gallery' + $(this).attr('rel') }); return false; }); // Сравнение товаров. Инвертирование свойств для сравнения товара $('.CompareCheckbox.invert').click(function(){ var checked = true, checkboxes = $('.CompareCheckbox:not(.invert)'); checkboxes.each(function(){ if($(this).attr('checked')) { checked = false; return false; } }); checkboxes.each(function(){ $(this).attr('checked', checked); }); $(this).attr('checked', checked); }); // Сравнение товаров. Скрытие характеристик товара, которые выделил пользователь $('.CompareGoodsHideSelected').click(function(){ $('.CompareGoodsTableTbodyComparisonLine').each(function(){ var CheckedCheckbox = $(this).find('.CompareCheckbox:checked:not(.invert)'); if(CheckedCheckbox.length>0) { $(this).hide(); } }); // отменяем выделение характеристик товаров $('.CompareCheckbox').attr('checked',false); return false; }); // Сравнение товаров. Отображение скрытых характеристик товара $('.CompareGoodsShowAll').click(function(){ $('.CompareGoodsTableTbodyComparisonLine:hidden').show(); return false; }); // Сравнение товаров. Верхняя навигация изменение фильтра на отображение всех характеристик товаров $('.CompareGoodsTableFilterShowAll').click(function(){ $('.CompareGoodsTableFilterSelected').removeClass('CompareGoodsTableFilterSelected'); $('.CompareGoodsTableTbodyComparisonLine:hidden').show(); $(this).addClass('CompareGoodsTableFilterSelected'); return false; }); // Сравнение товаров. Фильтр в верхней навигации. Отображение только различающихся характеристик товара $('.CompareGoodsTableFilterShowOnlyDifferent').click(function(){ $('.CompareGoodsTableFilterSelected').removeClass('CompareGoodsTableFilterSelected'); $('.CompareGoodsTableTbodyComparisonLine:not(.same)').show(); $('.CompareGoodsTableTbodyComparisonLine.same').hide(); $(this).addClass('CompareGoodsTableFilterSelected'); return false; }); // Сравнение товаров. При наведении на строку сравнения, она выделяется цветом $('.CompareGoodsTableTbodyComparisonLine').hover( function () { $(this).addClass('hover'); }, function () { $(this).removeClass('hover'); } ); // При клике по строке выделяем свойство $('.CompareGoodsTableTbodyComparisonLine td:not(.ceil1)').click(function(){ var CompareCheckbox = $(this).parent().find('.CompareCheckbox'); if(CompareCheckbox.attr('checked')) { CompareCheckbox.attr('checked', false); } else { CompareCheckbox.attr('checked', true); } }); // Форма регистрации нового пользователя, действие ссылки "показать пароль" $('.clientForm .showPass').click(function(){ ChangePasswordFieldType(this, $('#sites_client_pass')); return false; }); // Форма регистрации нового пользователя, при оформлении заказа $('.OrderShowPass').click(function(){ ChangePasswordFieldType(this, $('#contactPassWord')); return false; }); // При вводе пароля с caps lockом, покажет блок с сообщением для пользователя $('#sites_client_pass, #contactPassWord').capslock({ caps_lock_on:function(){$("#caps_lock").show();}, caps_lock_off:function(){$("#caps_lock").hide();} }); // При оформлении заказа дадим возможность зарегистрироваться пользователю $('#contactWantRegister').click(function(){ if($(this).attr("checked")) { $('.contactRegisterNeedElement').show(); $('#contactEmail, #contactPassWord').addClass('required'); } else { $('.contactRegisterNeedElement').hide(); $('#contactEmail, #contactPassWord').removeClass('required'); } }); // Добавление отзыва о товаре. Рейтинг if(typeof($('.goodsDataOpinionTableRating').stars) == "function" ) { $('.goodsDataOpinionTableRating').stars({ inputType: "input", split: 2, captionEl: $(".goodsDataOpinionMsg"), cancelShow: false }); } // Список отзывов о товаре. Ссылка на отображение формы для добавление отзыва о товаре $('.goodsDataOpinionShowAddForm').click(function(){ if(0 == $('#goodsDataOpinionAddBlock:visible').length) { $('#goodsDataOpinionAddBlock').show('blind'); } else { $('#goodsDataOpinionAddBlock').hide('blind'); return false; } }); // Добавление отзыва о товаре. кнопка reset скрывающая форму добавления отзыва о товаре $('.goodsDataOpinionAddForm input:reset').click(function(){ $('#goodsDataOpinionAddBlock').hide('blind'); }); // Иконка для обновления изображение капчи $('.goodsDataOpinionCaptchaRefresh').click(function(){ RefreshImageAction(this,1,1); $('.goodsDataOpinionCaptchaImg').attr('src',$('.goodsDataOpinionCaptchaImg').attr('src')+'&rand'+Math.random(0,10000)); return false; }); // Действия при выборе варианта доставки на этапе оформления заказа $('.deliveryRadio').click(function(){ // Если текущая выделенная зона доставки не относится к выбранному варианту доставки, снимаем выделение с зоны доставки if($('.deliveryZoneRadio:checked').attr('deliveryid') != $(this).val()) { $('.deliveryZoneRadio:checked').click().attr('checked', false); } }); // Действия при выборе зоны внутри варианта доставки на этапе оформления заказа $('.deliveryZoneRadio').click(function(){ var deliveryId = $(this).attr('deliveryid') ,deliveryZonePrice = $(this).parent().find('.deliveryZonePrice') ,deliveryTbody = $('.orderStageDeliveryListTable tbody[rel="' + deliveryId + '"]') ,deliveryBlock = deliveryTbody.find('#deliveryId' + deliveryId) ,deliveryZonePriceBlock = deliveryTbody.find('.orderStageDeliveryZonePrice') ,deliveryDefaultPriceBlock = deliveryTbody.find('.orderStageDeliveryDefaultPrice') ; // Если этот пункт уже выбран, при повторном клике пользователь видимо хочет снять выделение зоны доставки if('true' == $(this).attr('rel')) { $(this).attr('checked', false); $(this).attr('rel', 'false'); // Показываем цену по умолчанию deliveryDefaultPriceBlock.show(); // Скрываем цену образованную от зоны deliveryZonePriceBlock.hide(); // Отмечаем у всех радио баттонов зон доставки свойство говорящее что они не отмечены } else { $('.deliveryZoneRadio').attr('rel', 'false'); $(this).attr('rel', 'true'); // Показываем цену по умолчанию deliveryDefaultPriceBlock.hide(); // Скрываем цену образованную от зоны deliveryZonePriceBlock.show().html(deliveryZonePrice.html()); // Выделяем вариант доставки к которому относится зона доставки deliveryBlock.attr('checked', true); } }); $("#deliveryConvenientDate").datepicker({ dayNames : ['Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота', 'Воскресенье'], dayNamesMin : ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб' ], closeText : 'Готово', currentText : 'Сегодня' , duration : '', monthNames : ['Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Окрябрь','Ноябрь','Декабрь'], monthNamesShort : ['Янв','Фев','Март','Апр','Май','Июнь','Июль','Авг','Сен','Окт','Ноя','Дек'], yearRange : "-6:+6", dateFormat : 'dd.mm.yy', minDate : new Date(), firstDay : 1 }); $(document).ready(function(){ // Действие при наведении на меню категорий, для возможности отображения вложенного подменю $('#nav li').hover( function () { $(this).addClass('over'); }, function () { $(this).removeClass('over'); } ); }); }); $(document).ready(function(){ // Навигация стрелочками по страницам со списками document.onkeyup = NavigateThrough; function NavigateThrough (event) { if (!document.getElementById) return; if (window.event) event = window.event; if (event.ctrlKey) { var link = null; switch (event.keyCode ? event.keyCode : event.which ? event.which : null) { case 0x25: link = $('.previous_page')[0]; break; case 0x27: link = $('.next_page')[0]; break; } if (link && link.href) document.location = link.href; } } // Обозначаем переменные для более удобного доступа // Поле выбора времени "с" var OrderDeliveryTimeFrom = $('select[name="form[delivery][convenient_time_from]"]'); // Поле выбора времени "По" var OrderDeliveryTimeTo = $('select[name="form[delivery][convenient_time_to]"]'); // Минимальный диапазон для доставки var OrderDeliveryTimeMinRange = 6; // Функция сверки правильности дат function OrderDeliveryTimeVerify () { if(OrderDeliveryTimeTo.val() > 0 && OrderDeliveryTimeFrom.val() > 0 && OrderDeliveryTimeTo.val() - OrderDeliveryTimeMinRange < OrderDeliveryTimeFrom.val()) { alert('Минимальный диапазон для доставки составляет ' + OrderDeliveryTimeMinRange + ' часа. Пожалуйста укажите другое время.'); return false; } else { return true; } } // Действие при смене поля удобного времени, с которого можно производить доставку OrderDeliveryTimeFrom.change(function(){ // Изменение возможной выбираемой даты в зависимости от выбранного минимального времени доставки if(OrderDeliveryTimeFrom.val()>0) { var min = parseInt(OrderDeliveryTimeFrom.val()) + OrderDeliveryTimeMinRange; // Проставляем блокировки полей выбора OrderDeliveryTimeTo.find('option').each(function(){ if( $(this).attr('value') < min ) { $(this).attr('disabled', true); } else { $(this).attr('disabled', false); } }) } else { // Снимаем блокировки полей выбора максимально даты OrderDeliveryTimeTo.find('option').attr('disabled', false); } // Собственно возвращаем результат проверки валидности данных. return OrderDeliveryTimeVerify(); }); // Действие при смене поля удобного времени, до которого можно производить доставку OrderDeliveryTimeTo.change(function(){ // Изменение возможной выбираемой даты в зависимости от выбранного максимального времени доставки if(OrderDeliveryTimeTo.val()>0) { var max = parseInt(OrderDeliveryTimeTo.val()) - OrderDeliveryTimeMinRange; // Проставляем блокировки полей выбора OrderDeliveryTimeFrom.find('option').each(function(){ if( $(this).attr('value') > max ) { $(this).attr('disabled', true); } else { $(this).attr('disabled', false); } }) } else { // Снимаем блокировки полей выбора максимально даты OrderDeliveryTimeFrom.find('option').attr('disabled', false); } // Собственно возвращаем результат проверки валидности данных. return OrderDeliveryTimeVerify(); }); }); $(document).ready(function(){ var max_random_product = $('.random_block_product').size(); var random_int = Math.floor(Math.random() * max_random_product); $('.random_block_product:eq(' + random_int + ')').show(); });
#4
Отправлено 20 Июль 2012 - 17:35
У вас по какой-то причине в шаблон встроена уже отработанная ссылка
Попробуйте заменить ваш блок
на
<a href="#" title="Добавить товарную модификацию к списку сравнения с другими товарами" rel="http://otdyh-i-son.ru/compare/add?return_to=http%3A%2F%2Fotdyh-i-son.ru%2Fgoods%2F%25D0%259D%25D0%25B0%25D0%25BC%25D0%25B0%25D1%2582%25D1%2580%25D0%25B0%25D1%2581%25D0%25BD%25D0%25B8%25D0%25BA-Aquastop-D%3Ffrom%3DMTRi" class="goodsDataCompareButton delete" onclick="javascript:$(this).closest('form').submit();">Сравнить</a>
Попробуйте заменить ваш блок
<!-- Если в тарифном плане подключен модуль сравнения товаров --> {% IF TARIFF_FEATURE_GOODS_COMPARE %} <!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров --> {% IFNOT SETTINGS_COMPARE_DISABLE %} <div style="padding-bottom:1em;"> <a href="#" title="Добавить товарную модификацию к списку сравнения с другими товарами" rel="http://otdyh-i-son.ru/compare/add?return_to=http%3A%2F%2Fotdyh-i-son.ru%2Fgoods%2F%25D0%259D%25D0%25B0%25D0%25BC%25D0%25B0%25D1%2582%25D1%2580%25D0%25B0%25D1%2581%25D0%25BD%25D0%25B8%25D0%25BA-Aquastop-D%3Ffrom%3DMTRi" class="goodsDataCompareButton delete" onclick="javascript:$(this).closest('form').submit();">Сравнить</a> <p> <a href="http://otdyh-i-son.ru/compare" title="Таблица сравнения">Таблица сравнения</a> <p> </p> <p> <a href="{FEEDBACK_URL}?form[feedback_message]=%D0%A3%D0%B2%D0%B5%D0%B4%D0%BE%D0%BC%D0%B8%D1%82%D1%8C%20%D0%BE%20%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D0%B8">Мне нравится товар, но не подошла цена на него. Какую скидку возможно сделать?</a> </p> {% ENDIF %} {% ENDIF %}
на
<!-- Если в тарифном плане подключен модуль сравнения товаров --> {% IF TARIFF_FEATURE_GOODS_COMPARE %} <!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров --> {% IFNOT SETTINGS_COMPARE_DISABLE %} <div style="padding-bottom:1em;"> <a class="goodsDataCompareButton add" {% IF GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_ADD_URL}?return_to={CURRENT_URL | urlencode}" title="Добавить «{GOODS_NAME}» к списку сравнения с другими товарами" href="#" onclick="javascript:$(this).closest('form').submit();">Добавить к сравнению</a> <a class="goodsDataCompareButton delete" {% IFNOT GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_DELETE_URL}?return_to={CURRENT_URL | urlencode}" title="Убрать «{GOODS_NAME}» из списка сравнения с другими товарами" href="#" onclick="javascript:$(this).closest('form').submit();">Убрать из сравнения</a> <p> <a href="http://otdyh-i-son.ru/compare" title="Таблица сравнения">Таблица сравнения</a> <p> </p> <p> <a href="{FEEDBACK_URL}?form[feedback_message]=%D0%A3%D0%B2%D0%B5%D0%B4%D0%BE%D0%BC%D0%B8%D1%82%D1%8C%20%D0%BE%20%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D0%B8">Мне нравится товар, но не подошла цена на него. Какую скидку возможно сделать?</a> </p> {% ENDIF %} {% ENDIF %}
#5
Отправлено 21 Июль 2012 - 23:50
да, Вы правы, что-то я напортачила в коде.. спасибо большое, правда, все равно выскакивает какая-то ошибка пр добавлении к сравнению, но само сравнение заработало.
Как убрать эту ошибку?
Как убрать эту ошибку?
#6
Отправлено 23 Июль 2012 - 10:57
Вероятно эта ошибка связана с событием onclick у ссылки. У стандартных ссылок это событие отсутствует. Попробуйте использовать следующий вариант
Данный вариант должен корректно работать, и не вызывать ошибочное диалоговое окно.
<!-- Если в тарифном плане подключен модуль сравнения товаров --> {% IF TARIFF_FEATURE_GOODS_COMPARE %} <!-- Если не выключен модуль сравнения товаров, то покажем кнопку сравнения товаров --> {% IFNOT SETTINGS_COMPARE_DISABLE %} <div style="padding-bottom:1em;"> <a class="goodsDataCompareButton add" {% IF GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_ADD_URL}?return_to={CURRENT_URL | urlencode}" title="Добавить «{GOODS_NAME}» к списку сравнения с другими товарами" href="#" >Добавить к сравнению</a> <a class="goodsDataCompareButton delete" {% IFNOT GOODS_MOD_IS_HAS_IN_COMPARE_LIST %}style="display:none;"{% ENDIF %} rel="{COMPARE_DELETE_URL}?return_to={CURRENT_URL | urlencode}" title="Убрать «{GOODS_NAME}» из списка сравнения с другими товарами" href="#" >Убрать из сравнения</a> <p> <a href="http://otdyh-i-son.ru/compare" title="Таблица сравнения">Таблица сравнения</a> <p> </p> <p> <a href="{FEEDBACK_URL}?form[feedback_message]=%D0%A3%D0%B2%D0%B5%D0%B4%D0%BE%D0%BC%D0%B8%D1%82%D1%8C%20%D0%BE%20%D0%BD%D0%B0%D0%BB%D0%B8%D1%87%D0%B8%D0%B8">Мне нравится товар, но не подошла цена на него. Какую скидку возможно сделать?</a> </p> {% ENDIF %} {% ENDIF %}
Данный вариант должен корректно работать, и не вызывать ошибочное диалоговое окно.
#7
Отправлено 29 Июль 2012 - 02:18
Заменить на:
Данный вариант должен корректно работать, и не вызывать ошибочное диалоговое окно.
[/quote]
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных