Ca serait en effet un idée intéressante pour la suite. J'en ai justement discuté avec certains utilisateurs présent au JoomlaDay de Strasbourg le weekend dernier.
Concernant le fait que les produits utilisent la réduction peut importe leur catégorie je vois qu'il manque tout simple le code vérifiant cela. Il faudrait essayer de rajouter le code:
if($discount->discount_category_childs){
static $childs=array();
if(!isset($childs[$discount->discount_category_id])){
$classCategory = hikashop_get('class.category');
$childs[$discount->discount_category_id]=$classCategory->getChilds($discount->discount_category_id,true,array(),'',0,999,false,'a.category_id');
}
$this->database->setQuery('SELECT category_id FROM #__hikashop_product_category WHERE product_id='.(int)$id);
$categories = $this->database->loadResultArray();
if(empty($categories)){
continue;
}
$found = false;
foreach($childs[$discount->discount_category_id] as $cat){
if(in_array($cat->category,$categories)){
$found = true;
}
}
if(!$found){
continue;
}
}
avant le code:
$categories = $this->_getCategories($id,$discount->discount_category_childs);
dans le fichier administrator/components/com_hikashop/classes/currency.php