public function testGroupsReservations()
 {
     $now = Date::Parse('2011-03-24');
     // thursday
     Date::_SetNow($now);
     $today = new ReservationItemView('1', $now, $now);
     $tomorrow = new ReservationItemView('2', $now->AddDays(1), $now->AddDays(1));
     // friday
     $thisWeek = new ReservationItemView('3', $now->AddDays(2), $now->AddDays(2));
     // saturday
     $nextWeek = new ReservationItemView('3', $now->AddDays(3), $now->AddDays(3));
     // sunday of next week
     $reservations[] = $today;
     $reservations[] = $tomorrow;
     $reservations[] = $thisWeek;
     $reservations[] = $nextWeek;
     $this->repository->expects($this->once())->method('GetReservationList')->with($this->anything(), $this->anything(), $this->anything())->will($this->returnValue($reservations));
     $this->control->expects($this->once())->method('BindToday')->with($this->equalTo(array($today)));
     $this->control->expects($this->once())->method('BindTomorrow')->with($this->equalTo(array($tomorrow)));
     $this->control->expects($this->once())->method('BindThisWeek')->with($this->equalTo(array($thisWeek)));
     $this->control->expects($this->once())->method('BindNextWeek')->with($this->equalTo(array($nextWeek)));
     $presenter = new UpcomingReservationsPresenter($this->control, $this->repository);
     $presenter->PageLoad();
 }
 public function PageLoad()
 {
     $user = ServiceLocator::GetServer()->GetUserSession();
     $timezone = $user->Timezone;
     $now = Date::Now();
     $today = $now->ToTimezone($timezone)->GetDate();
     $dayOfWeek = $today->Weekday();
     $lastDate = $now->AddDays(13 - $dayOfWeek - 1);
     $reservations = $this->repository->GetReservationList($now, $lastDate, $this->searchUserId, $this->searchUserLevel);
     $tomorrow = $today->AddDays(1);
     $startOfNextWeek = $today->AddDays(7 - $dayOfWeek);
     $todays = array();
     $tomorrows = array();
     $thisWeeks = array();
     $nextWeeks = array();
     /* @var $reservation ReservationItemView */
     /*foreach ($reservations as $reservation)
     		{
     			$start = $reservation->StartDate->ToTimezone($timezone);
     
     			if ($start->DateEquals($today))
     			{
     				$todays[] = $reservation;
     			}
     			else if ($start->DateEquals($tomorrow))
     			{
     				$tomorrows[] = $reservation;
     			}
     			else if ($start->LessThan($startOfNextWeek))
     			{
     				$thisWeeks[] = $reservation;
     			}
     			else
     			{
     				$nextWeeks[] = $reservation;
     			}
     		}*/
     $this->control->SetTotal(count($reservations));
     $this->control->SetTimezone($timezone);
     $this->control->SetUserId($user->UserId);
     $this->control->BindReservations($reservations);
     $this->control->BindExperiment($reservations->experiment);
     $this->control->BindTodayDate();
     /*$this->control->BindToday($todays);
     		$this->control->BindTomorrow($tomorrows);
     		$this->control->BindThisWeek($thisWeeks);
     		$this->control->BindNextWeek($nextWeeks);*/
 }