Yes it does when only you specified the category and ordered number of products from that category only and no ther order from other category. But try to more products from other categories which are not exempted from discounts. Then click chec out. You will see the problem. I am also experiencing this problem no and it doesnt really work.
It has something to do here...
function check_process_ok() {
$return = true;...
if (MODULE_QTY_DISCOUNT_DISABLED_CATEGORIES != '') {
$excluded_categories = explode(', ', MODULE_QTY_DISCOUNT_DISABLED_CATEGORIES);
foreach ($GLOBALS['order']->products as $product) {
foreach ($excluded_categories as $excluded_category) {
if (zen_product_in_category($product['id'], $excluded_category)) {
$return = false;
break 2;
}
}
}
}
try to make a analysis.... I think this is how it goes.... for each product loop then for each excluded category then loop. if found one then return false.... so i think that's the problem... you will stop and return false when you found exluded category.
From where the function is called, which is:
function process() {
if (!$this->check_process_ok()) {
return false;
}....
from the start of the function it will globally exclude all categories if function check_process_ok() returned false, even if you select only one category. and will compute for the discount for global categories or all categories if it returned true.
This might be confusing but try it. Order product to different categories. With one product belonged to excluded categories.