Всем привет! Версия ocStore-2.3.0.2.3 дефолтный шаблон. Не силен в js, но хотелось бы осуществить одну вещь, надеюсь знающие люди подскажут.
Имеем такую часть кода в common.js отвечающую за смену вывода товара list/grid
// Product List
$('#list-view').click(function() {
$('#content .product-grid > .clearfix').remove();
$('#content .product-block > .product-grid').attr('class', 'product-layout product-list col-xs-12 no-padding');
$('#grid-view').removeClass('active');
$('#list-view').addClass('active');
localStorage.setItem('display', 'list');
});
// Product Grid
$('#grid-view').click(function() {
// What a shame bootstrap does not take into account dynamically loaded columns
var cols = $('#column-right, #column-left').length;
if (cols == 2) {
$('#content .product-list').attr('class', 'product-layout product-grid col-lg-6 col-md-6 col-sm-12 col-xs-12');
} else if (cols == 1) {
$('#content .product-list').attr('class', 'product-layout product-grid col-lg-3 col-md-4 col-sm-6 col-xs-12');
} else {
$('#content .product-list').attr('class', 'product-layout product-grid col-lg-3 col-md-3 col-sm-6 col-xs-12');
}
$('#list-view').removeClass('active');
$('#grid-view').addClass('active');
localStorage.setItem('display', 'grid');
});
if (localStorage.getItem('display') == 'list') {
$('#list-view').trigger('click');
$('#list-view').addClass('active');
} else {
$('#grid-view').trigger('click');
$('#grid-view').addClass('active');
}
ну соответственно код дефолтного шаблона категории
<div class="row">
<?php foreach ($products as $product) { ?>
<div class="product-layout product-list col-xs-12">
<div class="product-thumb">
<div class="image"><a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" alt="<?php echo $product['name']; ?>" title="<?php echo $product['name']; ?>" class="img-responsive" /></a></div>
<div>
<div class="caption">
<h4><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></h4>
<p class="description"><?php echo $product['description']; ?></p>
<?php if ($product['price']) { ?>
<p class="price">
<?php if (!$product['special']) { ?>
<?php echo $product['price']; ?>
<?php } else { ?>
<span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span>
<?php } ?>
<?php if ($product['tax']) { ?>
<span class="price-tax"><?php echo $text_tax; ?> <?php echo $product['tax']; ?></span>
<?php } ?>
</p>
<?php } ?>
<?php if ($product['rating']) { ?>
<div class="rating">
<?php for ($i = 1; $i <= 5; $i++) { ?>
<?php if ($product['rating'] < $i) { ?>
<span class="fa fa-stack"><i class="fa fa-star-o fa-stack-2x"></i></span>
<?php } else { ?>
<span class="fa fa-stack"><i class="fa fa-star fa-stack-2x"></i><i class="fa fa-star-o fa-stack-2x"></i></span>
<?php } ?>
<?php } ?>
</div>
<?php } ?>
</div>
<div class="button-group">
<button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>', '<?php echo $product['minimum']; ?>');"><i class="fa fa-shopping-cart"></i> <span class="hidden-xs hidden-sm hidden-md"><?php echo $button_cart; ?></span></button>
<button type="button" data-toggle="tooltip" title="<?php echo $button_wishlist; ?>" onclick="wishlist.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-heart"></i></button>
<button type="button" data-toggle="tooltip" title="<?php echo $button_compare; ?>" onclick="compare.add('<?php echo $product['product_id']; ?>');"><i class="fa fa-exchange"></i></button>
</div>
</div>
</div>
</div>
<?php } ?>
</div>
как видите к краткому описанию товара я добавил класс description. Сделал в отображении grid вывод краткого описания при наведении на <div class="product-thumb">, но получается как-то криво, весь блок товара расширяется и самое главное, что <div class="button-group"> улетает, то есть человек вроде "целится" в кнопку купить , а она от него уезжает вниз. Суть вопроса - как правильно оформить в common.js код, что-бы <p class="description"><?php echo $product['description']; ?></p> был ниже <div class="button-group"> при отображении grid. С помощью обычного CSS ну никак не получается. Спасибо.
P.S. Специально разбирался в старых шаблонах для версий 1,5 там список/сетка как раз были реализованы с заменой положений элементов, но пять же повторюсь не силен в js не "потянул", возможно есть какой нибудь вариант попроще?