예제 #1
0
            }
        }
    }
    $startWeekDate = getWorkingDates($now->format('Y'), $now->format('W'));
    $endWeekDate = getWorkingDates($now->format('Y'), $now->format('W'), false);
    $courses = CourseFetcher::retrieveAll();
    //TODO: do not fetch all tutors when a tutors is viewing this page.
    $tutors = TutorFetcher::retrieveAll();
    if (!$user->isTutor()) {
        $appointments = AppointmentFetcher::retrieveBetweenDates($startWeekDate, $endWeekDate);
        $countAppointmentsForCurWeek = sizeof($appointments);
        $countAchievedAppointmentsForCurWeek = Appointment::countWithLabelMessage($appointments, Appointment::LABEL_MESSAGE_COMPLETE);
        $canceledLabelMessagesForWeek = [Appointment::LABEL_MESSAGE_STUDENT_NO_SHOW, Appointment::LABEL_MESSAGE_TUTOR_CANCELED, Appointment::LABEL_MESSAGE_TUTOR_NO_SHOW, Appointment::LABEL_MESSAGE_STUDENT_CANCELED];
        $countCanceledAppointmentsForCurWeek = Appointment::countWithLabelMessages($appointments, $canceledLabelMessagesForWeek);
    } else {
        $appointments = AppointmentFetcher::retrieveTutorsBetweenDates($user->getId(), $startWeekDate, $endWeekDate);
        $countAppointmentsForCurWeek = sizeof($appointments);
        $countAchievedAppointmentsForCurWeek = Appointment::countTutorsWithLabelMessage($user->getId(), $appointments, Appointment::LABEL_MESSAGE_COMPLETE);
        $canceledLabelMessagesForWeek = [Appointment::LABEL_MESSAGE_STUDENT_NO_SHOW, Appointment::LABEL_MESSAGE_TUTOR_CANCELED, Appointment::LABEL_MESSAGE_TUTOR_NO_SHOW, Appointment::LABEL_MESSAGE_STUDENT_CANCELED];
        $countCanceledAppointmentsForCurWeek = Appointment::countTutorsWithLabelMessageS($user->getId(), $appointments, $canceledLabelMessagesForWeek);
    }
} catch (Exception $e) {
    $errors[] = $e->getMessage();
}
// viewers
$pageTitle = "Dashboard";
$section = "dashboard";
/**
 * http://stackoverflow.com/a/4128377/2790481
 *
 * @param $findId