$apf->setMilestoneRolloverHireDate(FALSE); $apf->setMilestoneRolloverMonth($data['milestone_rollover_month']); $apf->setMilestoneRolloverDayOfMonth($data['milestone_rollover_day_of_month']); } $apf->setMinimumEmployedDays($data['minimum_employed_days']); if ($apf->isValid()) { $ap_id = $apf->Save(); if ($ap_id === TRUE) { $ap_id = $data['id']; } if (($data['type_id'] == 20 or $data['type_id'] == 30) and isset($data['milestone_rows']) and count($data['milestone_rows']) > 0) { foreach ($data['milestone_rows'] as $milestone_row_id => $milestone_row) { Debug::Text('Row ID: ' . $milestone_row_id, __FILE__, __LINE__, __METHOD__, 10); if ($milestone_row['accrual_rate'] > 0) { if ($milestone_row_id > 0) { $apmf->setId($milestone_row_id); } $apmf->setAccrualPolicy($ap_id); $apmf->setLengthOfService($milestone_row['length_of_service']); $apmf->setLengthOfServiceUnit($milestone_row['length_of_service_unit_id']); $apmf->setAccrualRate($milestone_row['accrual_rate']); $apmf->setMaximumTime($milestone_row['maximum_time']); //$apmf->setMinimumTime( $milestone_row['minimum_time'] ); if ($apmf->isValid()) { Debug::Text('Saving Milestone Row ID: ' . $milestone_row_id, __FILE__, __LINE__, __METHOD__, 10); $apmf->Save(); } else { $redirect++; } } }