miyako (22 Май 2013 - 15:29) писал:
Попробуйте так:
{%IF goods.COUNT_MODIFICATION <= 1 || GOODS_MOD_REST_VALUE>0 %}<a style="position: relative; left: 0px;" class="readmore" onclick="$('#goodsListFormId{goods.MIN_PRICE_NOW_ID}').submit(); return false;" title="Положить «{goods.NAME}» в корзину" href="#">В корзину</a>{%ENDIF%}
</p>
</form>
</div>
<div class="clr"></div>
</div>
{% ENDFOR goods %}
Изначально было условие такое -
{%IFNOT goods.COUNT_MODIFICATION > 1%}
Если ifnot меняем на if то > 1 логично поменять на <=1
все равно второе условие не срабатывает: на товаре при одной базовой модификации и нулевом остатке кнопка в корзину отображается и работает!
Решил оставить только одно второе условие:
{%IF GOODS_MOD_REST_VALUE = 0 %}<a style="position: relative; left: 0px;" class="readmore" onclick="$('#goodsListFormId{goods.MIN_PRICE_NOW_ID}').submit(); return false;" title="Положить «{goods.NAME}» в корзину" href="#">В корзину</a>{%ENDIF%}
условие не срабатывает!
Наверное в этом месте программы еще нет данных о наличии?
Я это делаю (выделил красным) прямо в штатном месте кода шаблона Товары:
<!-- Цена сейчас: <a href="{goods.URL_MIN_PRICE_NOW}">{goods.MIN_PRICE_NOW | money_format}</a><br /> эту штатную строчку заменяю следующей строчкой ради ссылки Подробнее -->
Цена сейчас: <a href="{goods.URL_MIN_PRICE_NOW}">{goods.MIN_PRICE_NOW | money_format}</a><a style="position: relative;top: 0px;left: 100px;" title="{goods.NAME}" href="{goods.URL}"><strong>Подробнее >>></strong></a><br />
{% IF goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT>goods.MIN_PRICE_NOW %}
Цена без учёта скидки: <a href="{goods.URL_MIN_PRICE_NOW_WITHOUT_DISCOUNT}" class="lineThrough">{goods.MIN_PRICE_NOW_WITHOUT_DISCOUNT | money_format}</a><br />
<span class="listingDiscountInfo">До {goods.MAX_DISCOUNT_EXPIRED_AT | date} скидка составляет: {goods.MAX_DISCOUNT}%</span>
{% ELSEIF goods.MIN_PRICE_OLD>goods.MIN_PRICE_NOW %}
Старая цена: <a href="{goods.URL_MIN_PRICE_OLD}" class="lineThrough">{goods.MIN_PRICE_OLD | money_format}</a>
{% ENDIF %}
</p>
<!-- Здесь добавляю кнопку В корзину в каталоге товаров -->
<form action="{CART_ADD_GOODS_MODIFICATION_URL | url_amp}" method="post" id="goodsListFormId{goods.MIN_PRICE_NOW_ID}" class="goodsListForm">
<p>
<input type="hidden" name="hash" value="{HASH}" />
<input type="hidden" name="form[goods_from]" value="{goods.GOODS_FROM}" />
<input type="hidden" name="form[goods_mod_id]" value="{goods.MIN_PRICE_NOW_ID}" />
<!-- <a class="readmore" href="{goods.URL}" title="Подробнее">Подробнее</a> заменяю штатную строчку ссылкой выше -->
{%IFNOT goods.COUNT_MODIFICATION > 1%}<a class="readmore" onclick="$('#goodsListFormId{goods.MIN_PRICE_NOW_ID}').submit(); return false;" title="Положить «{goods.NAME}» в корзину" href="#">В корзину</a>{%ENDIF%} <!-- Условие, что если Модификаций больше чем 1, то кнопка В корзину не отображается -->
</p>
</form>
</div>
<div class="clr"></div>
</div>
{% ENDFOR goods %}
Может сделать код с раздельными условиями? Первое которое есть оставляет кнопку только на базовой модификации, а потом в каком-то другом месте проверять наличие товара...
а может код самой переменной
GOODS_MOD_REST_VALUE я указываю не верно ?