$spf->setStartStopWindow($data['start_stop_window']);
     if ($spf->isValid()) {
         $spf->Save(FALSE);
         if (isset($data['break_policy_ids'])) {
             $spf->setBreakPolicy($data['break_policy_ids']);
         } else {
             $spf->setBreakPolicy(array());
         }
         Redirect::Page(URLBuilder::getURL(NULL, 'SchedulePolicyList.php'));
         break;
     }
 default:
     if (isset($id)) {
         BreadCrumb::setCrumb($title);
         $splf = new SchedulePolicyListFactory();
         $splf->getByIdAndCompanyID($id, $current_company->getID());
         foreach ($splf as $sp_obj) {
             //Debug::Arr($station,'Department', __FILE__, __LINE__, __METHOD__,10);
             $data = array('id' => $sp_obj->getId(), 'name' => $sp_obj->getName(), 'over_time_policy_id' => $sp_obj->getOverTimePolicyID(), 'absence_policy_id' => $sp_obj->getAbsencePolicyID(), 'meal_policy_id' => $sp_obj->getMealPolicyID(), 'break_policy_ids' => $sp_obj->getBreakPolicy(), 'start_stop_window' => $sp_obj->getStartStopWindow(), 'created_date' => $sp_obj->getCreatedDate(), 'created_by' => $sp_obj->getCreatedBy(), 'updated_date' => $sp_obj->getUpdatedDate(), 'updated_by' => $sp_obj->getUpdatedBy(), 'deleted_date' => $sp_obj->getDeletedDate(), 'deleted_by' => $sp_obj->getDeletedBy());
         }
     } elseif ($action != 'submit') {
         $data = array('start_stop_window' => 3600);
     }
     $aplf = new AbsencePolicyListFactory();
     $absence_options = $aplf->getByCompanyIDArray($current_company->getId(), TRUE);
     $otplf = new OverTimePolicyListFactory();
     $over_time_options = $otplf->getByCompanyIDArray($current_company->getId(), TRUE, array('type_id' => '= 200'));
     $mplf = new MealPolicyListFactory();
     $meal_options = $mplf->getByCompanyIDArray($current_company->getId(), TRUE);
     $bplf = new BreakPolicyListFactory();
     $break_options = $bplf->getByCompanyIdArray($current_company->getId(), TRUE);