public function save() { $row = new Invoice(); $row->load($_POST['id']); $returnTask = $_POST['returnTask']; unset($_POST['id']); unset($_POST['returnTask']); if (empty($_POST['coupons'])) { $_POST['coupons'] = array(); } $previous = array(); if (!empty($row->coupons)) { foreach ($row->coupons as $coupon_code) { $id = couponHandler::idFromCode($coupon_code); $previous[] = $id['id']; } } $added = array(); foreach ($_POST['coupons'] as $coupon_id) { if (!in_array($coupon_id, $previous)) { $added[] = $coupon_id; } else { unset($previous[array_search($coupon_id, $previous)]); } } if (!empty($added)) { foreach ($added as $coupon_id) { $row->addCoupon((int) $coupon_id, true); } } if (!empty($previous)) { foreach ($previous as $coupon_id) { $row->removeCoupon((int) $coupon_id, true); } } unset($_POST['coupons']); $row->savePOSTsettings($_POST); $row->storeload(); $this->setMessage(JText::_('AEC_CONFIG_SAVED')); }