Pricing rule conditions---"Add or" breaks the rule. Bug or mistake?
I hope someone can tell me if this is a bug or if I'm making a mistake.
I am creating a pricing rule so that if product X, Y or Z is already in the cart, product A, B and C are discounted.
The following works as expected (note that there is only one condition and no disjunctions):
My event is: Calculate the sell price of a product.
My conditions: Order contains a particular product (Data selector: site:current-cart-order). I have input a SKU for product X.
For testing purposes, my Action is: Divide the unit price by some amount (I have it divided by 2). (Data selector: commerce-line-item; Price component type: Discount)
So when I put product X in the cart, the price of every other product is now displaying half of what it did prior to putting X in the cart. So far so good.
However, when I add a disjunction (an "or") to the conditions, the rule stops working. That is, even when X is in the cart, the price adjustment is not made to the other products. This happens if I simply click "Add or" and don't create any other condition, and it also happens if I click "Add or" and then create a condition under the "OR".
If "OR" works as a genuine disjunction, then it shouldn't matter what condition I put under the "OR", so long as the first disjunct is satisfied (the cart contains product X). The conditions should still evaluate to TRUE, and the pricing adjustment should still happen. Yet adding a disjunct breaks the pricing adjustment.
Help!
Thanks.
Comments
Drupal 7.14
Commerce 1.3
Rules 2.1