private function countLeaveAmounts($leaves) { $amount = 0; foreach ($leaves as $leave) { $empLeaveDay = new EmployeeLeaveDay(); $leaveDays = $empLeaveDay->Find("employee_leave = ?", array($leave->id)); foreach ($leaveDays as $leaveDay) { if ($leaveDay->leave_type == 'Full Day') { $amount += 1; } else { if ($leaveDay->leave_type == 'Half Day - Morning') { $amount += 0.5; } else { if ($leaveDay->leave_type == 'Half Day - Afternoon') { $amount += 0.5; } } } } } return floatval($amount); }
public function leaveToEvents($leave, $leaveTypes) { $leaveDay = new EmployeeLeaveDay(); $leaveDays = $leaveDay->Find("employee_leave = ?", array($leave->id)); $events = array(); foreach ($leaveDays as $leaveDay) { $event = array(); $event['id'] = $leaveDay->id; $event['title'] = $leave->employee . " (" . $leave->leave_type . ")"; if ($leaveDay->leave_type == 'Full Day') { $event['allDay'] = true; } else { $event['allDay'] = false; } $time = $this->leaveTypeToTime($leaveDay->leave_date, $leaveDay->leave_type); $event['start'] = $time[0]; $event['end'] = $time[1]; $eventBackgroundColor = ""; if (empty($leaveTypes[$leave->leave_type]->leave_color)) { if ($leave->status == "Pending") { $eventBackgroundColor = "#cc9900"; } else { $eventBackgroundColor = "#336633"; } $event['title'] = $leave->employee . " (" . $leave->leave_type . ")"; } else { $eventBackgroundColor = $leaveTypes[$leave->leave_type]->leave_color; $event['title'] = $leave->employee . " (" . $leave->status . ")"; } $event['color'] = $eventBackgroundColor; $event['backgroundColor'] = $eventBackgroundColor; $event['textColor'] = "#FFF"; $events[] = $event; } return $events; }