static function reCalculateDay($user_date_id, $enable_exception = FALSE, $enable_premature_exceptions = FALSE, $enable_future_exceptions = TRUE, $enable_holidays = FALSE) { Debug::text('Re-calculating User Date ID: ' . $user_date_id . ' Enable Exception: ' . (int) $enable_exception, __FILE__, __LINE__, __METHOD__, 10); $udtf = new UserDateTotalFactory(); $udtf->setUserDateId($user_date_id); $udtf->calcSystemTotalTime(); if ($enable_holidays == TRUE) { $holiday_user_date_ids = $udtf->getHolidayUserDateIDs(); //var_dump($holiday_user_date_ids); if (is_array($holiday_user_date_ids)) { foreach ($holiday_user_date_ids as $holiday_user_date_id) { Debug::Text('reCalculating Holiday...', __FILE__, __LINE__, __METHOD__, 10); UserDateTotalFactory::reCalculateDay($holiday_user_date_id, FALSE, FALSE, FALSE, FALSE); } } unset($holiday_user_date_ids, $holiday_user_date_id); } if (!isset(self::$calc_exception) and $enable_exception == TRUE) { ExceptionPolicyFactory::calcExceptions($user_date_id, $enable_premature_exceptions, $enable_future_exceptions); } return TRUE; }