@@ 365-386 (lines=22) @@ | ||
362 | $exdate_compare = date( 'Ymd\THis', $event_start_timestamp ); |
|
363 | } |
|
364 | ||
365 | if ( in_array( $day, $bydays ) && $event_end_timestamp > $current && $event_start_timestamp < $until && $count_counter <= $rrule_count && $event_start_timestamp >= $date_from_ics && ! in_array( $exdate_compare, $exdates ) ) { |
|
366 | if ( 8 == strlen( $event['DTSTART'] ) ) { |
|
367 | $event['DTSTART'] = date( 'Ymd', $event_start_timestamp ); |
|
368 | $event['DTEND'] = date( 'Ymd', $event_end_timestamp ); |
|
369 | } else { |
|
370 | $event['DTSTART'] = date( 'Ymd\THis', $event_start_timestamp ); |
|
371 | $event['DTEND'] = date( 'Ymd\THis', $event_end_timestamp ); |
|
372 | } |
|
373 | if ( $this->timezone->getName() && 8 != strlen( $event['DTSTART'] ) ) { |
|
374 | try { |
|
375 | $adjusted_time = new DateTime( $event['DTSTART'], new DateTimeZone( $this->timezone->getName() ) ); |
|
376 | $adjusted_time->setTimeZone( new DateTimeZone( 'UTC' ) ); |
|
377 | $event['DTSTART'] = $adjusted_time->format('Ymd\THis'); |
|
378 | ||
379 | $event['DTEND'] = date( 'Ymd\THis', strtotime( $event['DTSTART'] ) + $duration ); |
|
380 | } catch ( Exception $e ) { |
|
381 | // Invalid argument to DateTime |
|
382 | } |
|
383 | } |
|
384 | $upcoming[] = $event; |
|
385 | $count_counter++; |
|
386 | } |
|
387 | ||
388 | // Move forward one day |
|
389 | $byday_event_date_start = strtotime( date( 'Ymd\T', strtotime( '+ 1 day', $event_start_timestamp ) ) . $start_time ); |
|
@@ 407-428 (lines=22) @@ | ||
404 | $exdate_compare = date( 'Ymd\THis', $event_start_timestamp ); |
|
405 | } |
|
406 | ||
407 | if ( $event_end_timestamp > $current && $event_start_timestamp < $until && $count_counter <= $rrule_count && $event_start_timestamp >= $date_from_ics && ! in_array( $exdate_compare, $exdates ) ) { |
|
408 | if ( 8 == strlen( $event['DTSTART'] ) ) { |
|
409 | $event['DTSTART'] = date( 'Ymd', $event_start_timestamp ); |
|
410 | $event['DTEND'] = date( 'Ymd', $event_end_timestamp ); |
|
411 | } else { |
|
412 | $event['DTSTART'] = date( 'Ymd\T', $event_start_timestamp ) . $start_time; |
|
413 | $event['DTEND'] = date( 'Ymd\T', $event_end_timestamp ) . $end_time; |
|
414 | } |
|
415 | if ( $this->timezone->getName() && 8 != strlen( $event['DTSTART'] ) ) { |
|
416 | try { |
|
417 | $adjusted_time = new DateTime( $event['DTSTART'], new DateTimeZone( $this->timezone->getName() ) ); |
|
418 | $adjusted_time->setTimeZone( new DateTimeZone( 'UTC' ) ); |
|
419 | $event['DTSTART'] = $adjusted_time->format('Ymd\THis'); |
|
420 | ||
421 | $event['DTEND'] = date( 'Ymd\THis', strtotime( $event['DTSTART'] ) + $duration ); |
|
422 | } catch ( Exception $e ) { |
|
423 | // Invalid argument to DateTime |
|
424 | } |
|
425 | } |
|
426 | $upcoming[] = $event; |
|
427 | $count_counter++; |
|
428 | } |
|
429 | } |
|
430 | ||
431 | // Set up next interval and reset $event['DTSTART'] and $event['DTEND'], keeping timestamps intact |