$products ) { $col = 1; $nb = 1; $row = 1; if($dynamic){ $rowsHeight[$row]['product_s_desc'] = 1; $rowsHeight[$row]['price'] = 1; $rowsHeight[$row]['customfields'] = 1; $col = 2; $nb = 2; } else { $rowsHeight = shopFunctionsF::calculateProductRowsHeights($products,$currency,$products_per_row); } if((!empty($type) and count($products)>0) or (count($viewData['products'])>1 and count($products)>0)){ $productTitle = vmText::_('COM_VIRTUEMART_'.strtoupper($type).'_PRODUCT'); ?>
link)) { vmdebug('$product is not object or link empty',$product); continue; } // Show the horizontal seperator if ($col == 1 && $nb > $products_per_row) { ?>
$showRating, 'product'=>$product)); if ( VmConfig::get ('display_stock', 1)) { ?>

product_s_desc)) { ?>

product_s_desc, 60, ' ...') ?>

link)? $product->canonical:$product->link; echo JHtml::link($link,vmText::_ ( 'COM_VIRTUEMART_PRODUCT_DETAILS') . ' …', array ('title' => $product->product_name, 'class' => 'product-details margin-top-15' ) ); ?>
$product,'currency'=>$currency)); ?>
$product,'rowHeights'=>$rowsHeight[$row], 'position' => array('ontop', 'addtocart'))); ?>
$BrowseTotalProducts) { ?>
0) or (count($viewData['products'])>1 and count($products)>0) ){ // Do we need a final closing row tag? //if ($col != 1) { ?>