/** FUNCIONA */ public static function getHoursDD($start, $end, $start_2, $end_2, $start_3, $end_3, $count) { $q = explode(' ', $start); $w = explode(' ', $end); $q2 = explode(' ', $start_2); $w2 = explode(' ', $end_2); $q3 = explode(' ', $start_3); $w3 = explode(' ', $end_3); $ff_count = $count - 1; list($y_s, $m_s, $d_s) = explode('-', $q[0]); list($h_s, $mm_s, $s_s) = explode(':', $q[1]); list($y_e, $m_e, $d_e) = explode('-', $w[0]); list($h_e, $mm_e, $s_e) = explode(':', $w[1]); list($y_s2, $m_s2, $d_s2) = explode('-', $q2[0]); list($h_s2, $mm_s2, $s_s2) = explode(':', $q2[1]); list($y_e2, $m_e2, $d_e2) = explode('-', $w2[0]); list($h_e2, $mm_e2, $s_e2) = explode(':', $w2[1]); list($y_s3, $m_s3, $d_s3) = explode('-', $q3[0]); list($h_s3, $mm_s3, $s_s3) = explode(':', $q3[1]); list($y_e3, $m_e3, $d_e3) = explode('-', $w3[0]); list($h_e3, $mm_e3, $s_e3) = explode(':', $w3[1]); $dt_start = Carbon::create($y_s, $m_s, $d_s, $h_s, $mm_s, $s_s); $dt_start2 = Carbon::create($y_s, $m_s, $d_s, $h_s, $mm_s, $s_s); $dt_start3 = Carbon::create($y_e, $m_e, $d_e, $h_e, $mm_e, $s_e); $dt_start_2 = Carbon::create($y_s2, $m_s2, $d_s2, $h_s2, $mm_s2, $s_s2); $dt_start2_2 = Carbon::create($y_s2, $m_s2, $d_s2, $h_s2, $mm_s2, $s_s2); $dt_start3_2 = Carbon::create($y_e2, $m_e2, $d_e2, $h_e2, $mm_e2, $s_e2); $dt_start_3 = Carbon::create($y_s3, $m_s3, $d_s3, $h_s3, $mm_s3, $s_s3); $dt_start2_3 = Carbon::create($y_s3, $m_s3, $d_s3, $h_s3, $mm_s3, $s_s3); $dt_start3_3 = Carbon::create($y_e3, $m_e3, $d_e3, $h_e3, $mm_e3, $s_e3); $f = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; $hora_end = $dt_start3->toTimeString(); $hora_end_2 = $dt_start3_2->toTimeString(); $hora_end_3 = $dt_start3_3->toTimeString(); $la = array(); $fq = 0; if ($q[1] != '00:00:00') { foreach ($f as $a) { if ($a == 1) { $dt_start2->addMinutes($ff_count)->addSeconds(60)->toTimeString(); $la[$fq] = array('paciente' => 'Hora Disponible', 'motivo' => '', 'inicio_hora' => Helpers::hora_min($dt_start->toTimeString()), 'final_hora' => Helpers::hora_min($dt_start2->toTimeString()), 'color' => '#CCCCCC', 'fecha' => $dt_start2->toDateString(), 'estado' => 'disponible'); } else { $dt_start->addMinutes($count)->toTimeString(); $dt_start2->addMinutes($ff_count)->addSeconds(59)->toTimeString(); $la[$fq] = array('paciente' => 'Hora Disponible', 'motivo' => '', 'inicio_hora' => Helpers::hora_min($dt_start->toTimeString()), 'final_hora' => Helpers::hora_min($dt_start2->toTimeString()), 'color' => '#CCCCCC', 'fecha' => $dt_start2->toDateString(), 'estado' => 'disponible'); } if ($hora_end < $dt_start2->toTimeString()) { break; } $fq++; } } if ($q2[1] != '00:00:00') { foreach ($f as $am) { if ($am == 1) { $dt_start_2->toTimeString(); $dt_start2_2->addMinutes($ff_count)->addSeconds(60)->toTimeString(); $la[$fq] = array('paciente' => 'Hora Disponible', 'motivo' => '', 'inicio_hora' => Helpers::hora_min($dt_start_2->toTimeString()), 'final_hora' => Helpers::hora_min($dt_start2_2->toTimeString()), 'color' => '#CCCCCC', 'fecha' => $dt_start2_2->toDateString(), 'estado' => 'disponible'); } else { $dt_start_2->addMinutes($count)->toTimeString(); $dt_start2_2->addMinutes($ff_count)->addSeconds(59)->toTimeString(); $la[$fq] = array('paciente' => 'Hora Disponible', 'motivo' => '', 'inicio_hora' => Helpers::hora_min($dt_start_2->toTimeString()), 'final_hora' => Helpers::hora_min($dt_start2_2->toTimeString()), 'color' => '#CCCCCC', 'fecha' => $dt_start2_2->toDateString(), 'estado' => 'disponible'); } if ($hora_end_2 < $dt_start2_2->toTimeString()) { break; } $fq++; } } if ($q3[1] != '00:00:00') { foreach ($f as $am) { if ($am == 1) { $la[$fq] = array('paciente' => 'Hora Disponible', 'motivo' => '', 'inicio_hora' => Helpers::hora_min($dt_start_3->toTimeString()), 'final_hora' => Helpers::hora_min($dt_start2_3->addMinutes($ff_count)->addSeconds(60)->toTimeString()), 'color' => '#CCCCCC', 'fecha' => $dt_start_3->toDateString(), 'estado' => 'disponible'); } else { $la[$fq] = array('paciente' => 'Hora Disponible', 'motivo' => '', 'inicio_hora' => Helpers::hora_min($dt_start_3->addMinutes($count)->toTimeString()), 'final_hora' => Helpers::hora_min($dt_start2_3->addMinutes($ff_count)->addSeconds(59)->toTimeString()), 'color' => '#CCCCCC', 'fecha' => $dt_start2_3->toDateString(), 'estado' => 'disponible'); } if ($hora_end_3 < $dt_start2_3->toTimeString()) { break; } $fq++; } } #return Response::json($la); return $la; }