0 ) { if ( $image[ 0 ][ 0 ] != '' ) { return $image[ 0 ][ 0 ]; } else { return false; } } } static public function getURLs( $googleEvent ) { preg_match_all( self::$urlMatch, $googleEvent[ 'description' ], $url, PREG_PATTERN_ORDER ); if ( sizeof( $url[ 0 ] ) > 0 ) { if ( $url[ 0 ][ 0 ] != '' ) { return $url[ 0 ][ 0 ]; } else { return false; } } } static public function removeImages( $googleEvent ) { preg_match_all( self::$imageMatch, $googleEvent[ 'description' ], $image, PREG_PATTERN_ORDER ); return preg_replace( self::$imageMatch, '', $googleEvent[ 'description' ] ); } static public function removeURLs( $googleEvent ) { preg_match_all( self::$urlMatch, $googleEvent[ 'description' ], $url, PREG_PATTERN_ORDER ); return preg_replace( self::$urlMatch, '', $googleEvent[ 'description' ] ); } static public function getEvents ( $app ) { $googleCalendar = Helpers::JSON2Array( $app[ 'cache' ][ 'calendar' ][ 'json' ] ); foreach( $googleCalendar[ 'items' ] as $googleEvent ) { unset( $event ); $event = self::getEventDateTime( $googleEvent ); $event[ 'name' ] = $googleEvent[ 'summary' ]; if ( array_key_exists( 'location' , $googleEvent ) ){ $event[ 'location' ] = $googleEvent[ 'location' ]; } $event[ 'image' ] = false; $event[ 'url' ] = false; if ( array_key_exists( 'description' , $googleEvent ) ){ $event[ 'description' ] = $googleEvent[ 'description' ]; $event[ 'image' ] = self::getImages( $event ); $event[ 'description' ] = self::removeImages( $event ); $event[ 'url' ] = self::getURLs( $event ); $event[ 'description' ] = self::removeURLs( $event ); $event[ 'description' ] = nl2br( $event[ 'description' ] ); } $events[] = $event; } return $events; } static public function getEventsByMonth( $events, $year, $month ) { $eventsInMonth = false; foreach( $events as $event ) { if ( ( date( 'Y', $event[ 'start' ] ) == $year ) && ( date( 'm', $event[ 'start' ] ) == $month ) ) { $eventsInMonth[] = $event; } } return $eventsInMonth; } }