コード例 #1
0
 protected function getLeaveDurationObject($parameters)
 {
     $durationObj = new LeaveDuration();
     $type = $parameters['duration'];
     $durationObj->setType($type);
     if ($type == LeaveDuration::HALF_DAY) {
         $durationObj->setAmPm($parameters['ampm']);
     } else {
         if ($type == LeaveDuration::SPECIFY_TIME) {
             $durationObj->setFromTime($parameters['time']['from']);
             $durationObj->setToTime($parameters['time']['to']);
         }
     }
     return $durationObj;
 }
コード例 #2
0
 protected function getApplicableLeaveDuration($leaveAssignmentData, $firstDay, $lastDay)
 {
     // Default to full day
     $duration = new LeaveDuration();
     $duration->setType(LeaveDuration::FULL_DAY);
     if ($leaveAssignmentData->isMultiDayLeave()) {
         $partialDayOption = $leaveAssignmentData->getMultiDayPartialOption();
         if ($partialDayOption == 'all' || $firstDay && ($partialDayOption == 'start' || $partialDayOption == 'start_end')) {
             $duration = $leaveAssignmentData->getFirstMultiDayDuration();
         } else {
             if ($lastDay && ($partialDayOption == 'end' || $partialDayOption == 'start_end')) {
                 $duration = $leaveAssignmentData->getSecondMultiDayDuration();
             }
         }
     } else {
         // Single day leave:
         $duration = $leaveAssignmentData->getSingleDayDuration();
     }
     return $duration;
 }