This commit is contained in:
Etienne Roudeix
2013-07-15 11:21:25 +02:00
parent 028a5d124e
commit 4ddc7f12b1
3 changed files with 11 additions and 15 deletions

View File

@@ -143,8 +143,6 @@ abstract class BaseLoop
$argument->setValue($value);
}
$this->args->next();
}
if (!empty($faultActor)) {

View File

@@ -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)) {

View File

@@ -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 />