private function calculateDiscounts() { $freeCDDiscount = 0.0; $preorderDiscount = 0.0; //$unit_price_list = array(); $unit_price_list = Config::get('workshop.unit_price_list'); $itemCount = OrdersController::getCountOfItems(TRUE, TRUE); // Exclude count of disks from sets and only CDs from current workshop year. if (strtotime(date('Y-m-d')) <= strtotime(Config::get('workshop.last_free_cd_discount_date'))) { $numberFreeCDs = (int) floor($itemCount['CD']['count'] / (double) Config::get('workshop.free_cd_count')); $freeCDDiscount = (double) $unit_price_list['CD'] * $numberFreeCDs; } // Pre-order discount applies ***ONLY*** to CDs/DVDs from current year's workshop! if (strtotime(date('Y-m-d')) <= strtotime(Config::get('workshop.last_preorder_discount_date'))) { $preorderDiscount = (double) Config::get('workshop.preorder_discount') * ($itemCount['CD']['sub_total_amt'] - $freeCDDiscount + $itemCount['DVD']['sub_total_amt'] + $itemCount['MP3']['sub_total_amt'] + $itemCount['SET']['sub_total_amt']); } return $freeCDDiscount + $preorderDiscount; }