diff --git a/src/app/level2/EventsControllerProvider.php b/src/app/level2/EventsControllerProvider.php index 15c5ce2..d7c226b 100644 --- a/src/app/level2/EventsControllerProvider.php +++ b/src/app/level2/EventsControllerProvider.php @@ -65,6 +65,45 @@ }); + $ctr->get('/{year}/{month}/{day}', function( $year, $month, $day ) use ( $app ) { + + if ( strpos( $day, '.' ) !== false ) { + + $arguments = explode( '.', $day ); + $day = $arguments[ 0 ]; + $format = $arguments[ 1 ]; + + if ( $format == 'json' ) { + + return $app->json( + Level2::getEventsByDay( + Level2::getEvents( $app ), + $year, + $month, + $day + ) + ); + + } + + } + + return $app['twig']->render( + 'event-list.twig', + array( + 'page' => 'events', + 'level2' => Level2::getStatus( $app ), + 'events' => Level2::getEventsByDay( + Level2::getEvents( $app ), + $year, + $month, + $day + ) + ) + ); + + }); + $ctr->get('/{parameter}', function( $parameter ) use ( $app ) { if ( $parameter == 'json' ) { diff --git a/src/app/level2/Level2.php b/src/app/level2/Level2.php index 8fc3008..a0ad136 100644 --- a/src/app/level2/Level2.php +++ b/src/app/level2/Level2.php @@ -182,6 +182,28 @@ } + static public function getEventsByDay( $events, $year, $month, $day ) { + + $year = (int) $year; + $month = (int) $month; + $day = (int) $day; + + $eventsInDay = false; + + foreach( $events as $event ) { + + if ( ( date( 'Y', $event[ 'start' ] ) == $year ) && ( date( 'm', $event[ 'start' ] ) == $month ) && ( date( 'd', $event[ 'start' ] ) == $day ) ) { + + $eventsInDay[] = $event; + + } + + } + + return $eventsInDay; + + } + static public function getChartData( $app ) { $dowMap = array( 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun' );