require_once Environment::getBasePath() . 'includes/Interface.inc.php'; //Debug::setVerbosity( 11 ); if (!$permission->Check('holiday_policy', 'enabled') or !($permission->Check('holiday_policy', 'edit') or $permission->Check('holiday_policy', 'edit_own'))) { $permission->Redirect(FALSE); //Redirect } $smarty->assign('title', TTi18n::gettext($title = 'Edit Holiday')); // See index.php /* * Get FORM variables */ extract(FormVariables::GetVariables(array('action', 'holiday_policy_id', 'id', 'data'))); if (isset($data['date_stamp'])) { $data['date_stamp'] = TTDate::parseDateTime($data['date_stamp']); } $hf = new HolidayFactory(); $action = Misc::findSubmitButton(); $action = strtolower($action); switch ($action) { case 'submit': //Debug::setVerbosity(11); Debug::Text('Submit!', __FILE__, __LINE__, __METHOD__, 10); $hf->setId($data['id']); if (isset($data['holiday_policy_id'])) { $hf->setHolidayPolicyId($data['holiday_policy_id']); } //Set datestamp first. $hf->setDateStamp($data['date_stamp']); $hf->setName($data['name']); if ($hf->isValid()) { $hf->Save();
function createHoliday($company_id, $type, $date, $holiday_policy_id) { $hf = new HolidayFactory(); switch ($type) { case 10: $hf->setHolidayPolicyId($holiday_policy_id); $hf->setDateStamp($date); $hf->setName('Test1'); break; } if ($hf->isValid()) { $insert_id = $hf->Save(); Debug::Text('Holiday ID: ' . $insert_id, __FILE__, __LINE__, __METHOD__, 10); return $insert_id; } Debug::Text('Failed Creating Holiday!', __FILE__, __LINE__, __METHOD__, 10); return FALSE; }
foreach ($hplf as $hp_obj) { //Get all recurring holidays $recurring_holiday_ids = $hp_obj->getRecurringHoliday(); if (is_array($recurring_holiday_ids) and count($recurring_holiday_ids) > 0) { Debug::Text('Found Recurring Holidays...', __FILE__, __LINE__, __METHOD__, 10); foreach ($recurring_holiday_ids as $recurring_holiday_id) { $rhlf = new RecurringHolidayListFactory(); $rhlf->getById($recurring_holiday_id); if ($rhlf->getRecordCount() == 1) { $rh_obj = $rhlf->getCurrent(); Debug::Text('Found Recurring Holiday: ' . $rh_obj->getName(), __FILE__, __LINE__, __METHOD__, 10); $next_holiday_date = $rh_obj->getNextDate($epoch); Debug::Text('Next Holiday Date: ' . TTDate::getDate('DATE+TIME', $next_holiday_date), __FILE__, __LINE__, __METHOD__, 10); if ($next_holiday_date <= $epoch + $offset) { Debug::Text('Next Holiday Date is within Time Period (offset) adding...', __FILE__, __LINE__, __METHOD__, 10); $hf = new HolidayFactory(); $hf->setHolidayPolicyId($hp_obj->getId()); $hf->setDateStamp($next_holiday_date); $hf->setName($rh_obj->getName()); if ($hf->isValid()) { $hf->Save(); } } else { Debug::Text('Next Holiday Date is NOT within Time Period (offset)!', __FILE__, __LINE__, __METHOD__, 10); } } } } /* $end_date = NULL;