calendar.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. trait CalendarHomepageItem
  3. {
  4. public function getCalendar()
  5. {
  6. $startDate = date('Y-m-d', strtotime("-" . $this->config['calendarStart'] . " days"));
  7. $endDate = date('Y-m-d', strtotime("+" . $this->config['calendarEnd'] . " days"));
  8. $icalCalendarSources = array();
  9. $calendarItems = array();
  10. // SONARR CONNECT
  11. $items = $this->getSonarrCalendar($startDate, $endDate);
  12. $calendarItems = is_array($items) ? array_merge($calendarItems, $items) : $calendarItems;
  13. unset($items);
  14. // LIDARR CONNECT
  15. $items = $this->getLidarrCalendar($startDate, $endDate);
  16. $calendarItems = is_array($items) ? array_merge($calendarItems, $items) : $calendarItems;
  17. unset($items);
  18. // RADARR CONNECT
  19. $items = $this->getRadarrCalendar($startDate, $endDate);
  20. $calendarItems = is_array($items) ? array_merge($calendarItems, $items) : $calendarItems;
  21. unset($items);
  22. // SICKRAGE/BEARD/MEDUSA CONNECT
  23. $items = $this->getSickRageCalendar();
  24. $calendarItems = is_array($items) ? array_merge($calendarItems, $items) : $calendarItems;
  25. unset($items);
  26. // COUCHPOTATO CONNECT
  27. $items = $this->getCouchPotatoCalendar();
  28. $calendarItems = is_array($items) ? array_merge($calendarItems, $items) : $calendarItems;
  29. unset($items);
  30. // iCal URL
  31. $calendarSources['ical'] = $this->getICalendar();
  32. unset($items);
  33. // Finish
  34. $calendarSources['events'] = $calendarItems;
  35. $this->setAPIResponse('success', null, 200, $calendarSources);
  36. return $calendarSources;
  37. }
  38. }