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


Изменяем вид добавления количества товара


  • Вы не можете ответить в тему
Сообщений в теме: 2

#1 spot

    Пользователь

  • Download User
  • PipPip
  • 23 сообщений
Репутация: 0
Начинающий
  • ГородНижний Новгород

Отправлено 05 December 2012 - 09:23 AM

Меняем код в product_detailed.tpl

					{if $smarty.const.CONF_SHOW_ADD2CART eq 1 && ( $smarty.const.CONF_CHECKSTOCK==0 || $product_info.in_stock > 0 ) }
<input class="plus" type="button" onclick="set_count_mod('inp_{$product_info.productID}', 1);" />
<input type={if $smarty.const.CONF_MULTYCART==0}hidden{else}text{/if} value="1" name="multyaddcount" id="inp_{$product_info.productID}" {if $smarty.const.CONF_MULTYCART==1} class="num" {/if}>
<input class="minus" type="button" onclick="set_count_mod('inp_{$product_info.productID}', -1);" />
					{/if}

Добавляем внизу в data/default/user.js

function set_count_mod(input_id, step)
{
	var oCountMod = document.getElementById(input_id);
  
	if (!(iCurrCount = parseInt(oCountMod.value))) {
		iCurrCount = 0;
	}
  
	if (!(iCurrCount <= 1 && step < 0)) {
			oCountMod.value = iCurrCount + step;
	}
}

Добавляем стили

.plus {
background:url(../i/p_m.gif) no-repeat 0px 0px;
}
.num {
width:20px;
border:1px solid #cecece;
color:#676556;
text-align:center;
font-weight:bold;
text-shadow:1px 1px 1px #b3b3b3;
margin:0px 4px;
float:left;
height:20px;
}
.minus {
background:url(../i/p_m.gif) no-repeat 0px -22px;
}
.plus, .minus {
height:22px;
width:22px;
border:none;
cursor:pointer;
float:left;
}

Заливаем картинку

Изображение

Получаем:
Изображение
  • 0

#2 spot

    Пользователь

  • Download User
  • PipPip
  • 23 сообщений
Репутация: 0
Начинающий
  • ГородНижний Новгород

Отправлено 06 December 2012 - 12:54 PM

Небольшой хак добавления в корзину в прайс-листе

Файл pricelist.tpl.html

{* шаблон прайс-листа *}
<div class="cat_name">Прайс-лист</div><div class="clr"></div><br>
{* форма сортировки товаров *}
{if $string_product_sort}
   <p class="reg_txt"><strong>{$string_product_sort}</strong></p>
{/if}
{if $pricelist_elements}
<table cellspacing="0" cellpadding="0" width="100%">
  <tr>
    <td class="hmin">
    <table class="tbl_cart">
	  <tr class="bg_thead">
	    <td class="lt pad" align="left" valign="middle" width="99%" nowrap="nowrap">{$smarty.const.STRING_PRICE_PRODUCT_NAME}</td>
	    <td class="lt pad" align="left" valign="middle" width="90%" nowrap="nowrap">{$smarty.const.CURRENT_PRICE}</td>
	    {if $smarty.const.CONF_DISPLAY_PRCODE eq 1}
	    <td class="lt pad" align="left" valign="middle" nowrap="nowrap"></td>
	    {/if}
   </tr>
	  {section name=i loop=$pricelist_elements}
	  {assign var="paddingzn" value=8}
	 {section name=j loop=$pricelist_elements max=($pricelist_elements[i][2]-2)}{assign var="paddingzn" value="`$paddingzn+8`"}{/section}
	  <tr class="ptbl">
	    <td {if $pricelist_elements[i][4] ne 1} colspan="{if $smarty.const.CONF_DISPLAY_PRCODE eq 1}3{else}2{/if}" {/if} {if $pricelist_elements[i][4] ne 1} class="bg_thead" {/if}  style="padding-left: {$paddingzn}px"><a href="{if $smarty.const.CONF_MOD_REWRITE eq 1}{if $pricelist_elements[i][4] eq 1}product_{else}category_{/if}{$pricelist_elements[i][0]}.html{else}index.php?{if $pricelist_elements[i][4] eq 1}productID{else}categoryID{/if}={$pricelist_elements[i][0]}{/if}" class="noline">{$pricelist_elements[i][1]}</a></td>	
	    {if ($pricelist_elements[i][4] eq 1) && ($currencies_count ne 0)}<td nowrap="nowrap">{$pricelist_elements[i][5]}</td>{/if}
	    {if ($pricelist_elements[i][4] eq 1) && ($smarty.const.CONF_DISPLAY_PRCODE eq 1)}
	    <td>
		 <form class="quantity_box" action="index.php?categoryID={$test}&amp;prdID={$pricelist_elements[i][0]}" method=post id="HiddenFieldsForm_{$pricelist_elements[i][0]}" name="HiddenFieldsForm_{$pricelist_elements[i][0]}">
					    {if $smarty.const.CONF_OPEN_SHOPPING_CART_IN_NEW_WINDOW eq 1}
	  {else}
	    {if $smarty.const.CONF_CART_METHOD eq 2}
	    {if $smarty.const.CONF_SHOW_ADD2CART eq 1 && ( $smarty.const.CONF_CHECKSTOCK==0 || $product_info.in_stock > 0 ) }
<a href="#" onclick="doLoad('do=cart&amp;addproduct={$pricelist_elements[i][0]}&amp;xcart=yes&amp;multyaddcount='+document.HiddenFieldsForm_{$pricelist_elements[i][0]}.multyaddcount.value+''); return false"> <img alt="Положить в корзину" src="http://site.ru/i/cart.png"></a>
<input type={if $smarty.const.CONF_MULTYCART==0}hidden{else}text{/if} value="1" name="multyaddcount"  {if $smarty.const.CONF_MULTYCART==1} class="num" {/if}>
<a href="#" id="inp_{$product_info.productID}" onclick="doLoad('do=cart&amp;addproduct={$pricelist_elements[i][0]}&amp;xcart=yes&amp;multyaddcount='+document.HiddenFieldsForm_{$pricelist_elements[i][0]}.multyaddcount.value+''); return false"></a>
	    {else}
	    {/if}
		 {/if}{/if}
	   </form> </td>
	    {/if}
   </tr>
	  {/section}
    </table>
    </td>
  </tr>
</table>
{else}
<table cellspacing="0" cellpadding="0" width="100%">
  <tr>
    <td class="hdbtop" align="center">{$smarty.const.STRING_EMPTY_LIST}</td>
  </tr>
</table>
<table cellspacing="0" cellpadding="0" width="100%">
  <tr>
    <td class="hdbot">&nbsp;</td>
  </tr>
</table>
{/if}
{if $pricelist_elements}
<br>
   <p class="reg_txt"><strong>Скачать прайс-лист в формате Excel</strong></p>
<input type="submit" onClick="location.href='index.php?download_price=yes';" id="btn_login_hor" value="Скачать прайс" />
{/if}
{/if}

Получается:

Изображение

+ картинка корзины в подарок:

Изображение
  • 0

#3 ssergioss25

    Продвинутый пользователь

  • Assistent vsupport.club
  • PipPipPip
  • 56 сообщений
Репутация: 24
Ассистент
  • ГородСПБ

Отправлено 07 December 2012 - 03:20 PM

Помоему, лучше просто по кликам на саму цифру с количеством увеличивать или уменьшать количество. Левый клик увеличивает, правый уменьшает, а при наведении мыши появляется подсказка.

<input type={if $smarty.const.CONF_MULTYCART==0}hidden{else}text{/if} value="1" name="multyaddcount" id="inp_{$product_info.productID}" onclick="set_count_mod('inp_{$product_info.productID}', 1);" oncontextmenu="set_count_mod('inp_{$product_info.productID}', -1);return false" title="используйте кнопки мыши для увеличения или уменьшения количества">

Тогда и стили не нужны никакие и картинки.
  • 0