- Форум владельцев интернет-магазинов
- → Публикации hamer750
Публикации hamer750
55 публикаций создано hamer750 (учитываются публикации только с 26-Апрель 23)
#105062 Как Изменить Вид Ссылок?
Отправлено от hamer750 в 21 Ноябрь 2013 - 08:10 в SEO
И еще вопрос-сайт не выдерживает нагрузку-отключается когда одновременно на него заходит 10-15 человек.
http://loadimpact.co...st/view/1516783
Проверка сайта показала, что при 9-12 одновременных запросах максимальное время загрузки стартовой страницы Вашего сайта, составляет 13,43 секунды. Ваши показатели превышают норму на 200%, что указывает на нестабильную работу сайта, поэтому при значительном росте трафика, Ваш сайт будет недоступен посетителям.
#68443 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 21 Май 2013 - 06:39 в Каталог товаров
Сake (21 Май 2013 - 05:04) писал:
goodsDataProperties = $('.goodsDataMainModificationsBlock .goodsDataMainModificationsRadio'),
и замените на
goodsDataProperties = $('.goodsDataMainModificationsBlock .goodsDataMainModificationsBlockProperty'),
После очистите кэш в вашем браузере.
#68363 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 20 Май 2013 - 17:38 в Каталог товаров
#68361 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 20 Май 2013 - 17:30 в Изменение общей стилистики
Vaccina (16 Май 2013 - 04:36) писал:
<div class="hidden">
и заменить на
<div>
так же найдите и удалите
<tr> <th colspan="4">Online-калькулятор (Монтажные работы по видеонаблюдению)</th> </tr>
Добавьте в ваш файл стилей main.css
#calculate td { padding: 10px 0; font-size: 12px; } #calculate .count { width: 80px } #calculate .count input { width: 40px; display: inline; } #calculate .price { padding-right: 15px; text-align: left; }
#67302 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 15 Май 2013 - 19:33 в Каталог товаров
miyako (15 Май 2013 - 14:44) писал:
то я у вас не нашла изменений в шаблоне Товар, то есть не нашла кода:
<!-- Если это первый элемент в списке --> {% IF goods_modifications_properties.values.first %} <strong>{goods_modifications_properties.NAME}:</strong><br /> {% ENDIF %} <input type="radio" name="form[properties][]" value="{goods_modifications_properties.values.ID}" {% IF goods_modifications_properties.values.SELECTED %}checked="checked"{% ENDIF %} /> {goods_modifications_properties.values.NAME} <br />
#67221 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 15 Май 2013 - 14:21 в Изменение общей стилистики
Taisia (15 Май 2013 - 13:29) писал:
первое.вставьте в ваш файл html после строчки
<script type="text/javascript" src="{ASSETS_JS_PATH}main.js"></script>
код скрипта
<!--// calc //--> <script language="JavaScript"> $(document).ready(function() { $.fn.numeric = function(p) { p = $.extend({ allow: "0123456789" }, p); var input = $(this); return this.each ( function() { $(this).keypress ( function (e) { if (!e.charCode) k = String.fromCharCode(e.which); else k = String.fromCharCode(e.charCode); //zero conditions if (k == 0 && (input.val() == 0) ) e.preventDefault(); if (p.allow.indexOf(k) == -1) e.preventDefault(); if (e.ctrlKey&&k=='v') e.preventDefault(); } ); } ); }; function totalcounter() { var totalprice = 0; $('#calculate .price input').each(function(){ totalprice += $(this).val() * $(this).parent().next().find('input').val(); }); $('#totalprice').html(totalprice.toString()); } totalcounter(); $('#calculate').find('input').each(function(){ var input = $(this); input.numeric(); $(this).prev().click(function(){ if(input.val() > 0) input.val(parseInt(input.val()) - 1); totalcounter(); }); $(this).next().click(function(e){ input.val(parseInt(input.val()) + 1); totalcounter(); }); }); { $('#calculate .count input').each(function(){ $(this).change(function(){ totalcounter(); }); }); } $('#reset').click(function(){ $('#calculate .count').find('input').val(0); totalcounter(); }); $('.toggle').click(function(){ var block = $(this).parent().next(); if(block.hasClass('hidden')) { block.slideDown('slow').toggleClass('hidden'); } else { block.slideUp('slow').toggleClass('hidden'); } $(this).find('>i').toggleClass('active'); return false; }); }); </script> <!--// end calc //-->
создайте новую страницу и вставьте в нее в режиме "источник"
код
<form id="calculate" style="position: relative;"> <h5 id="1"><a class="toggle" href="#">Online-калькулятор (Монтажные работы по видеонаблюдению)</a></h5> <div class="hidden"> <table> <tbody> <tr> <th colspan="4">Online-калькулятор (Монтажные работы по видеонаблюдению)</th> </tr> <tr> <td>Наименование</td> <td>Ед. изм.</td> <td>Цена</td> <td>Кол-во</td> </tr> <tr> <td>1. Монтаж, настройка видеорегистратора (4 канала), установка жесткого диска в регистратор.</td> <td>шт.</td> <td class="price">500 руб. <input type="hidden" value="500" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>2. Монтаж, настройка видеорегистратора (8 каналов), установка жесткого диска в регистратор.</td> <td>шт.</td> <td class="price">800 руб. <input type="hidden" value="800" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>3. Монтаж, настройка видеорегистратора (16 каналов), установка жесткого диска в регистратор.</td> <td>шт.</td> <td class="price">1500 руб. <input type="hidden" value="1500" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>4. Монтаж блока питания для системы видеонаблюдения внутри помещения.</td> <td>шт.</td> <td class="price">750 руб. <input type="hidden" value="750" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>5. Монтаж блока питания для системы видеонаблюдения уличного исполнения.</td> <td>шт.</td> <td class="price">1000 руб. <input type="hidden" value="1000" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>6. Монтаж накладных распределительных (коммутационных) коробок для видеокамер (1 видеокамера-1 коммутационная коробка).</td> <td>шт.</td> <td class="price">250 руб. <input type="hidden" value="250" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>7. Монтаж и настройка видеокамеры уличной.</td> <td>шт.</td> <td class="price">2500 руб. <input type="hidden" value="2500" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>8. Монтаж и настройка видеокамеры внутри помещения.</td> <td>шт.</td> <td class="price">1500 руб. <input type="hidden" value="1500" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>9. Монтаж уличного блока питания для поворотной видеокамеры (в кирпичную стену).</td> <td>шт.</td> <td class="price">1200 руб. <input type="hidden" value="1200" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>10. Монтаж полки для размещения видеорегистратора ( монитора) на стене кирпичной.</td> <td>шт.</td> <td class="price">800 руб. <input type="hidden" value="800" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>11. Монтаж внешнего микрофона для видеокамеры.</td> <td>шт.</td> <td class="price">700 руб. <input type="hidden" value="700" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>12. Монтаж (BNC разъемов) штекеров на концах кабеля (1 видеокамера-1 штекер).</td> <td>шт.</td> <td class="price">150 руб. <input type="hidden" value="150" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>13. Установка ИК датчика для системы видеонаблюдения.</td> <td>шт.</td> <td class="price">500 руб. <input type="hidden" value="500" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>14. Установка и настройка монитора для системы видеонаблюдения на стене.</td> <td>шт.</td> <td class="price">800 руб. <input type="hidden" value="800" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>15. Прокладка проводов для системы видеонаблюдения за подвесным потолком.</td> <td>м.п.</td> <td class="price">50 руб. <input type="hidden" value="50" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>16. Прокладка проводов для системы видеонаблюдения по стенам кирпичным( короб, гофратруба).</td> <td>м.п.</td> <td class="price">130 руб. <input type="hidden" value="130" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>17. Прокладка проводов для системы видеонаблюдения по стенам из гипсокартона( короб, гофратруба).</td> <td>м.п.</td> <td class="price">100 руб. <input type="hidden" value="100" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>18. Прокладка проводки открытой на скобах на кирпич.</td> <td>м.п.</td> <td class="price">100 руб. <input type="hidden" value="100" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>19. Штробление стен кирпичных под провод.</td> <td>м.п.</td> <td class="price">150 руб. <input type="hidden" value="150" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>20. Настройка системы видеонаблюдения(до 4 видеокамер).</td> <td>система</td> <td class="price">5000 руб. <input type="hidden" value="5000" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>21. Настройка системы видеонаблюдения(от 5 до 8 видеокамер).</td> <td>система</td> <td class="price">6000 руб. <input type="hidden" value="6000" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>22. Настройка системы видеонаблюдения(от 8 до 16 видеокамер).</td> <td>система</td> <td class="price">9000 руб. <input type="hidden" value="9000" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>23. Монтаж беспроводных камер видеонаблюдения (монтаж видеокамеры + монтаж беспроводного передатчика видеосигнала + монтаж беспроводного приемника видеосигнала + монтаж электропитания для камеры и приемника/передатчика).</td> <td>шт.</td> <td class="price">5000 руб. <input type="hidden" value="5000" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>24. Монтаж IP видеосервера для системы видеонаблюдения.</td> <td>шт.</td> <td class="price">700 руб. <input type="hidden" value="700" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> <tr> <td>25. Подключение системы видеонаблюдения к сети Интернет.</td> <td>система</td> <td class="price">2000 руб. <input type="hidden" value="2000" /></td> <td class="count"><img height="12" src="/assets/templates/default1/images/design/minus.png" width="12" /> <input type="text" value="0" /> <img height="12" src="/assets/templates/default1/images/design/plus.png" width="12" /></td> </tr> </tbody> </table> </div> <div class="line"> <h2>Общая сумма затрат: <span id="totalprice">0</span> руб.</h2> <a class="button" href="#" id="reset" onclick="this.blur(); return false;"><span>Обнулить заказ</span></a></div> </form>
И как сделать свой дизайн?сss прикрепить?чтобы поуже окна были
#67153 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 15 Май 2013 - 11:16 в Изменение общей стилистики
Vaccina (14 Май 2013 - 05:00) писал:
#67129 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 15 Май 2013 - 09:50 в Каталог товаров
#67125 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 15 Май 2013 - 09:33 в Каталог товаров
Koderhan (15 Май 2013 - 08:28) писал:
<!-- Блок выбора модификаций для текущей товарной позиции --> <div class="span12"> <div class="goodsDataMainModificationsBlock product-options" {% IF GOODS_NO_CHOISE_IN_PROPERTIES_FOR_MODIFICATIONS %}style="display:none;"{% ENDIF %}> {% FOR goods_modifications_properties %} <div class="goodsDataMainModificationsBlockProperty"> <!-- Выдаем списки со свойствами для модификаций, чтобы определить какую модификацию товара хочет пользователь --> {% FOR values %} <!-- Если это первый элемент в списке --> {% IF goods_modifications_properties.values.first %} <strong>{goods_modifications_properties.NAME}:</strong><br /> <select name="form[properties][]"> {% ENDIF %} <option value="{goods_modifications_properties.values.ID}" {% IF goods_modifications_properties.values.SELECTED %}selected="selected"{% ENDIF %}>{goods_modifications_properties.values.NAME}</option> <!-- Если это последний элемент в списке --> {% IF goods_modifications_properties.values.last %} </select> {% ENDIF %} {% ENDFOR %} </div> {goods_modifications_properties.index | is_divided("2","</tr><tr>","")} {% ENDFOR %} <!-- Данные по модификациям для текущей товарной позиции --> {% 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> </div> <!-- /Блок выбора модификаций для текущей товарной позиции -->
#67121 Уменьшить Размер Шрифта В Товарах
Отправлено от hamer750 в 15 Май 2013 - 09:24 в Страница товара
#67103 Уменьшить Размер Шрифта В Товарах
Отправлено от hamer750 в 15 Май 2013 - 08:29 в Страница товара
#67097 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 15 Май 2013 - 07:28 в Каталог товаров
Сake (15 Май 2013 - 01:34) писал:
и внесите необходимые изменения в файл main.js
#67022 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 14 Май 2013 - 18:32 в Каталог товаров
Koderhan (14 Май 2013 - 16:31) писал:
В файле "main.js".
Код:
// Функция собирает свойства в строку, для определения модификации товара function getSlugFromGoodsDataFormModificationsProperties(obj) { var properties = new Array(); var reset_arr = new Array(); $(obj).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 = $('div.goodsDataMainModificationsBlock select[name="form[properties][]"]'), // Запоминаем блоки с информацией по модификациям, для ускорения работы goodsDataModifications = $('div.goodsDataMainModificationsList'); // Обновляет возможность выбора свойств модификации, для отключения возможности выбора по характеристикам модификации которой не существует. function updateVisibility (y) { // Проверяем в каждом соседнем поле выбора модификаций, возможно ли подобрать модификацию для указанных свойств 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); // Проверяем возможность выбора на всех полях кроме второго, чтобы в первом поле так же отключилась возможность выбора не существующих модификаций updateVisibility (1); // Изменение цены товара при изменении у товара свойства для модификации 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); }); });Заменить:
// Функция собирает свойства в строку, для определения модификации товара function getSlugFromGoodsDataFormModificationsProperties(obj) { var properties = new Array(); $(obj).each(function(i){ properties[i] = parseInt($(this).val()); }); return properties.sort(function(a,B){return a - b}).join('_'); } var // Запоминаем поля выбора свойств, для ускорения работы со значениями свойств goodsDataProperties = $('div.goodsDataMainModificationsBlock select[name="form[properties][]"]'), // Запоминаем блоки с информацией по модификациям, для ускорения работы goodsDataModifications = $('div.goodsDataMainModificationsList'); // Обновляет возможность выбора свойств модификации, для отключения возможности выбора по характеристикам модификации которой не существует. function updateVisibility (y) { // Проверяем в каждом соседнем поле выбора модификаций, возможно ли подобрать модификацию для указанных свойств 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); // Проверяем возможность выбора на всех полях кроме второго, чтобы в первом поле так же отключилась возможность выбора не существующих модификаций updateVisibility (1); // Изменение цены товара при изменении у товара свойства для модификации 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); }); });
#66976 При Выборе Модификации Цена Не Изменяется
Отправлено от hamer750 в 14 Май 2013 - 15:43 в Каталог товаров
#66346 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 10 Май 2013 - 17:07 в Изменение общей стилистики
support 2.0 (09 Май 2013 - 19:58) писал:
#66236 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 09 Май 2013 - 17:34 в Изменение общей стилистики
#65892 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 08 Май 2013 - 06:43 в Изменение общей стилистики
support 2.0 (07 Май 2013 - 16:26) писал:
.product-name h2 { display: block; overflow:hidden; position: relative; height: 20px;}измените на
.product-name h2 { display: block; overflow:hidden; position: relative; height: 120px;}
Для такого фона Вам нужно будет сделать картинку размером 1920х100
Таким образом Вы сможете сделать сначала белый фон примерно в 600 пикселей, далее у Вас будет идти Ваша картинка. Выглядеть это будет примерно как на прикрепленном файле
#65736 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 07 Май 2013 - 15:22 в Изменение общей стилистики
Stasya (07 Май 2013 - 13:32) писал:
.phone { font-size: 1.35em; }и замените его на
.phone { font-size: 16px; background: url({ASSETS_IMAGES_PATH}имя картинки.png) no-repeat; }5. В файл main.css добавьте блок
.product-box:hover { border:1px solid red; margin:-1px; }цвет рамки поставьте такой какой Вам больше хочется. Для этого в строке
border:1px solid red;замените red на значение цвета.
2)Как Убрать слева фон,а справа оставить?
#65679 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 07 Май 2013 - 11:49 в Изменение общей стилистики
miyako (07 Май 2013 - 10:42) писал:
2) Найдите код:
.nivo-controlNav { text-align: center; padding: 15px 0; }и замените на:
.nivo-controlNav { text-align: center; padding: 15px 0; border-top: 2px solid black; padding: 0px !important; }в файле - nyro_default.css
3) В файле nyro_default.css - найти код:
.theme-default .nivoSlider { position: relative; background: #fff url(http://design.xn--22-jlcq.xn--p1ai/nyro_loading.gif) no-repeat 50% 50%; margin-bottom: 50px; -webkit-box-shadow: 0px 1px 5px 0px #4a4a4a; -moz-box-shadow: 0px 1px 5px 0px #4a4a4a; box-shadow: 0px 1px 5px 0px #4a4a4a; }и заменить на:
.theme-default .nivoSlider { position: relative; background: #fff url(http://design.xn--22-jlcq.xn--p1ai/nyro_loading.gif) no-repeat 50% 50%; margin-bottom: 25px; -webkit-box-shadow: 0px 1px 5px 0px #4a4a4a; -moz-box-shadow: 0px 1px 5px 0px #4a4a4a; box-shadow: 0px 1px 5px 0px #4a4a4a; }
5)При наведении курсором на товар на главной выделять в рамку
#65667 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 07 Май 2013 - 10:29 в Изменение общей стилистики
miyako (07 Май 2013 - 08:38) писал:
@media (min-width: 768px) .menu_main > ul { background: #fff; }и замените на:
@media (min-width: 768px) .menu_main > ul { }в файле - bootstrap-responsive.min.css
Далее добавьте код в этот же файл:
.span4 { background: url({ASSETS_IMAGES_PATH}название изображение); }Само изображение нужно загрузить через Сайт-Редактор тем-файлы
#65454 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 06 Май 2013 - 15:40 в Изменение общей стилистики
hamer750 (06 Май 2013 - 08:51) писал:
1)Что бы на главной страницы у товара показывалось полное название,а так же цена
2)Добавить на это место разделительную линию
3)Немного сократить расстояние между разд.линией и товарами на главной
4)Добавить иконки к телефонам и часам работы предварительно увеличив шрифт
5)При наведении курсором на товар на главной выделять в рамку
Спасибо!жду ответа
Ещё один вопрос,как слева сделать отдельный фон(вместо белого)-картнку
#65397 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 06 Май 2013 - 09:01 в Изменение общей стилистики
#65394 Помогите Доработать Дизайн Главной
Отправлено от hamer750 в 06 Май 2013 - 08:51 в Изменение общей стилистики
1)Что бы на главной страницы у товара показывалось полное название,а так же цена
2)Добавить на это место разделительную линию
3)Немного сократить расстояние между разд.линией и товарами на главной
4)Добавить иконки к телефонам и часам работы предварительно увеличив шрифт
5)При наведении курсором на товар на главной выделять в рамку
Спасибо!жду ответа
- Форум владельцев интернет-магазинов
- → Публикации hamer750
- Privacy Policy