loops
This commit is contained in:
@@ -143,8 +143,6 @@ abstract class BaseLoop
|
||||
|
||||
$argument->setValue($value);
|
||||
}
|
||||
|
||||
$this->args->next();
|
||||
}
|
||||
|
||||
if (!empty($faultActor)) {
|
||||
|
||||
@@ -79,21 +79,20 @@ class Product extends BaseLoop
|
||||
Argument::createFloatTypeArgument('max_weight'),
|
||||
Argument::createBooleanTypeArgument('current'),
|
||||
Argument::createBooleanTypeArgument('current_category'),
|
||||
Argument::createIntTypeArgument('depth'),
|
||||
Argument::createIntTypeArgument('depth', 1),
|
||||
Argument::createBooleanTypeArgument('visible', 1),
|
||||
new Argument(
|
||||
'order',
|
||||
new TypeCollection(
|
||||
new Type\EnumListType(array('alpha', 'alpha_reverse', 'reverse', 'min_price', 'max_price', 'manual', 'manual_reverse', 'ref', 'promo', 'new'))
|
||||
new Type\EnumListType(array('alpha', 'alpha_reverse', 'reverse', 'min_price', 'max_price', 'manual', 'manual_reverse', 'ref', 'promo', 'new', 'random'))
|
||||
)
|
||||
),
|
||||
Argument::createBooleanTypeArgument('random', 0),
|
||||
Argument::createIntListTypeArgument('exclude'),
|
||||
Argument::createIntListTypeArgument('exclude_category'),
|
||||
new Argument(
|
||||
'feature_available',
|
||||
new TypeCollection(
|
||||
new Type\IntToCombinedIntsListType(array('alpha', 'alpha_reverse', 'reverse', 'min_price', 'max_price', 'manual', 'manual_reverse', 'ref', 'promo', 'new'))
|
||||
new Type\IntToCombinedIntsListType()
|
||||
)
|
||||
)
|
||||
);
|
||||
@@ -243,7 +242,9 @@ class Product extends BaseLoop
|
||||
);
|
||||
}
|
||||
|
||||
$search->filterByVisible($this->getVisible());
|
||||
$visible = $this->getVisible();
|
||||
|
||||
$search->filterByVisible($visible);
|
||||
|
||||
$orders = $this->getOrder();
|
||||
|
||||
@@ -287,6 +288,10 @@ class Product extends BaseLoop
|
||||
case "new":
|
||||
$search->addDescendingOrderByColumn(ProductTableMap::NEWNESS);
|
||||
break;
|
||||
case "random":
|
||||
$search->clearOrderByColumns();
|
||||
$search->addAscendingOrderByColumn('RAND()');
|
||||
break(2);
|
||||
default:
|
||||
$search->orderByPosition();
|
||||
break;
|
||||
@@ -294,13 +299,6 @@ class Product extends BaseLoop
|
||||
}
|
||||
}
|
||||
|
||||
$random = $this->getRandom();
|
||||
|
||||
if ($random === true) {
|
||||
$search->clearOrderByColumns();
|
||||
$search->addAscendingOrderByColumn('RAND()');
|
||||
}
|
||||
|
||||
$exclude = $this->getExclude();
|
||||
|
||||
if (!is_null($exclude)) {
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
weight : #WEIGHT<br />
|
||||
{/loop*}
|
||||
|
||||
{loop name="product" type="product" order="ref" feature_available="1:*"}
|
||||
{loop name="product" type="product" order="ref" feature_available="1: (1 | 2) , 2: 4, 3: 433"}
|
||||
<h3>PRODUCT : #REF / #TITLE</h3>
|
||||
price : #PRICE €<br />
|
||||
promo price : #PROMO_PRICE €<br />
|
||||
|
||||
Reference in New Issue
Block a user