|
|
Модератор форума: Yuri_G |
Сообщество uCoz » Модули uCoz » Интернет-магазин » Скрыть условным оператором |
Скрыть условным оператором |
Здравствуйте, нужно скрыть условным оператором блок. Код с модуля "Интернет-Магазин" а
точнее корзина. И когда в ней нечего нету, я хочу что бы блока не было. Код <!-- Блок корзина --> <div class="wblock bvote"><div class="dbg"><div class="dtop"><div class="dbtm"><div style="padding-top: 10px; margin-left: 25px; color: #FF0000; text-shadow: 0 1px 0 #FFFFFF; font-size: 12px; "><b>Неоплаченные товары<br></b></div> <div class="bcont"> <center> <div align="left">$BASKET$ </div></center> </div> </div></div> </div> </div> <!-- /Блок корзина --> |
<?if $NUM_ENTRIES$?> код корзины <?endif?>
При этом корзина не должна иметь явно заданных размеров, иначе она не исчезнет |
HETPE3B, А можете скинуть готовый уже, то я что-то по пробовал, не чего не получается.
Сообщение отредактировал Aleksey1488 - Вторник, 24 Сен 2013, 18:38:59
|
Aleksey1488, настраивается индивидуально для сайта, давайте код своей корзины
|
HETPE3B, а где его взять ?
|
Aleksey1488, ПУ - Управление дизайном - Корзина
|
HETPE3B, вот код, буду рад, если поможете.
Код <?if($BODY$)?><ul>$BODY$</ul><?endif?> <?if($NUM_ENTRIES$)?> <div class="total">Итого: $ORDER_AMOUNT$</div> <?if($ORDER_DISCOUNT$)?> <div class="disc"> Скидка: $ORDER_DISCOUNT$</div> <?if($DISCOUNT_INFO$)?> <hr> <div class="disc-info">$DISCOUNT_INFO$</div> <?endif?> <?endif?> <hr> <a class="basketclear" href="javascript://" rel="nofollow" onclick="return clearBasket();">Очистить</a> | <a class="basketorder" href="/shop/checkout">Оформить заказ</a> <?else?> <div class="empty">Ваша корзина пуста</div> <?endif?> <style> #shop-basket ul { margin:0; padding:0; text-align:left; list-style:none } #shop-basket li { margin:0 0 5px 0; padding-left:35px } #shop-basket .sb-name { margin-right:18px; } #shop-basket .sb-cost { margin-right:18px; color: gray; } #shop-basket .sb-func { float:right; cursor:pointer; width:16px; height:16px; margin:0;} #shop-basket a.remove { background:url('/.s/img/sh/del.png') no-repeat 3px 0; } #shop-basket a.remove:hover { background:url('/.s/img/sh/del.png') no-repeat 3px -16px; } #shop-basket .empty { text-align:center; } #shop-basket .total {font-weight: bold;} #shop-basket .total, #shop-basket .disc { text-align:right; } #shop-basket .disc-info { font-style: italic; } </style> <script language="Javascript"><!-- var lock_buttons = 0; function clearBasket(){ if(lock_buttons) return false; else lock_buttons = 1; var el = $('#shop-basket'); if(el.length){ var g=document.createElement("div"); $(g).addClass('myWinGrid').attr("id",'shop-basket-fade').css({"left":"0","top":"0","position":"absolute","border":"#CCCCCC 1px solid","width":$(el).width()+'px',"height":$(el).height()+'px',"z-index":5}).hide().bind('mousedown',function(e){e.stopPropagation();e.preventDefault();_uWnd.globalmousedown();}).html('<div class="myWinLoad" style="margin:5px;"></div>'); $(el).append(g); $(g).show(); } _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'clear'}}); return false; } function removeBasket(id){ if(lock_buttons) return false; else lock_buttons = 1; $('#basket-item-'+id+' .sb-func').removeClass('remove').addClass('myWinLoadS').attr('title',''); _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'del', 'id':id}}); return false; } function add2Basket(id,pref){ if(lock_buttons) return false; else lock_buttons = 1; var opt = new Array(); $('#b'+pref+'-'+id+'-basket').attr('disabled','disabled'); $('#'+pref+'-'+id+'-basket').removeClass('done').removeClass('err').removeClass('add').addClass('wait').attr('title',''); $('#'+pref+'-'+id+'-options-selectors').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+(parseInt(this.value) ? '-'+this.value :''));}); _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value')}}); return false; } function buyNow(id,pref){ if(lock_buttons) return false; else lock_buttons = 1; var opt = new Array(); $('#b'+pref+'-'+id+'-buynow').attr('disabled','disabled'); $('#'+pref+'-'+id+'-buynow').removeClass('done').removeClass('err').removeClass('now').addClass('wait').attr('title',''); $('#'+pref+'-'+id+'-options-selectors').find('input:checked, select').each(function(){ opt.push(this.id.split('-')[3]+(parseInt(this.value) ? '-'+this.value :''));}); _uPostForm('',{type:'POST',url:'/shop/basket',data:{'mode':'add', 'id':id, 'pref':pref, 'opt':opt.join(':'), 'cnt':$('#q'+pref+'-'+id+'-basket').attr('value'), 'now':1}}); return false; } //--></script> |
Aleksey1488, вместо
Код <div class="empty">Ваша корзина пуста</div> поставьте Код <script> $(document).ready(function () { $("#shop-basket").hide(); }); </script> Если у Вас корзина находится в боковой колонке, тогда дайте код шаблона боковой колонки, там где находится $BASKET$. Или просто дайте посмотреть на Ваш магазин с рабочей корзиной. А то, что Вы прислали мне в ЛС не отображает корзины (по крайней мере я ее не нашел) |
HETPE3B, подскажите, хочу добавить корзину на свой сайт дополнительно в виде панели снизу или сверху (чтобы была фиксированная строка постоянно навиду у покупателя), но отображала только сумму товаров в корзине и кнопку Оформить заказ. Тег $BASKET$ использовать не получается, так как с ним выводится еще и значек корзины (сверху он мне нужен). Скриптами я так понимаю это можно сделать, но где взять их ? Спасибо.
Сообщение отредактировал uvl - Четверг, 03 Окт 2013, 10:36:40
|
uvl, дублирую, может кому-то еще пригодится
Тут нужно получить значение суммы и кнопку оформить заказ, а потом вывести их в нужном месте и настроить внешний вид. Попробуйте так: Для начала надо задать идентификатор суммы заказа. В шаблоне корзины вместо Код <div class="total">Итого: $ORDER_AMOUNT$</div> Поставьте Код <div class="total">Итого: <span id="order-amount">$ORDER_AMOUNT$</span></div> Ниже ставим скрипт Код <script> $(document).ready(function () { basketSum = $("#order-amount").html(); if (basketSum) { $("#fixed-basket-sum").html(basketSum); } else { $("#fixed-basket-sum").html("0 руб."); } }); </script> Теперь идем в шаблон глобального блока (шапки или подвала) и ставим там блок в который поместим сумму заказа: Код <div id="fixed-basket"> Сумма: <span id="fixed-basket-sum"></span> <a href="/shop/checkout">Оформить заказ</a> </div> Стили для этой корзины Код <style> #fixed-basket { position: fixed; bottom: 0; } </style> Далее настраиваете по своему вкусу внешний вид Да, и не забудьте на странице оформления заказа скрыть все это дело условными операторами, фиксированная корзина там будет только мешать и отвлекать. |
uvl, не будет мешать.
Цитата можно ли как то количество товаров (или хотя бы позиций в корзине) сюда же считать, типа "В корзине 5 шт. на сумму....." ? можно, аналогичным образом. помещаете $NUM_ENTRIES$ в span с id="#order-quantity" Код <script> $(document).ready(function () { basketSum = $("#order-amount").html(); basketQuantity = $("#order-quantity").html(); if (basketSum && basketQuantity) { $("#fixed-basket-sum").html(basketSum); $("#fixed-basket-quantity").html(basketQuantity); } else { $("#fixed-basket-sum").html("0 руб."); } }); </script> Код <div id="fixed-basket"> Кол-во: <span id="fixed-basket-quantity"></span> Сумма: <span id="fixed-basket-sum"></span> <a href="/shop/checkout">Оформить заказ</a> </div> |
| |||
| |||