You are here

public function TimelineSlide::buildArray in Views TimelineJS integration 7.3

Creates an array representing the TimelineJS javascript object.

Return value

array The formatted array.

Overrides TimelineObjectInterface::buildArray

1 method overrides TimelineSlide::buildArray()
TimelineTitleSlide::buildArray in src/TimelineTitleSlide.php
Creates an array representing the TimelineJS javascript object.

File

src/TimelineSlide.php, line 133

Class

TimelineSlide
Defines a TimelineJS3 slide.

Code

public function buildArray() {
  $slide = array(
    'start_date' => $this->start_date
      ->buildArray(),
  );

  // Don't render end dates that are the same as the start date.  TimelineJS
  // won't display them anyway, but skipping them can make the rendered data
  // array smaller.
  if (!empty($this->end_date) && $this->start_date != $this->end_date) {
    $slide['end_date'] = $this->end_date
      ->buildArray();
  }
  if (!empty($this->text)) {
    $slide['text'] = $this->text
      ->buildArray();
  }
  if (!empty($this->media)) {
    $slide['media'] = $this->media
      ->buildArray();
  }
  if (!empty($this->group)) {
    $slide['group'] = $this->group;
  }
  if (!empty($this->display_date)) {
    $slide['display_date'] = $this->display_date;
  }
  if (!empty($this->background)) {
    $slide['background'] = $this->background
      ->buildArray();
  }
  if (!$this->autolink) {
    $slide['autolink'] = FALSE;
  }
  if (!empty($this->unique_id)) {
    $slide['unique_id'] = $this->unique_id;
  }

  // Filter any empty values before returning.
  return array_filter($slide);
}