/** * Redeem this discount against the passed in cart/cart_item combo. */ protected function add_for_cart($cart, $cart_item = null) { $redemption = new DiscountRedemption(); $redemption->discount_id = $this->id; $redemption->cart_id = $cart->id; if ($cart_item) { $redemption->cart_item_id = $cart_item->id; } $redemption->save(); return $redemption; }