Как использовать несколько источников с плагином jQuery fullCalendar? - PullRequest
6 голосов
/ 10 ноября 2009

У меня есть функционал fullCalendar http://arshaw.com/fullcalendar/, работающий с извлечением единственного источника из Календаря Google для таких событий:

$('#calendar').fullCalendar({

   events: $.fullCalendar.gcalFeed(
      "http://www.google.com/calendar/feeds/etc",   // feed URL
      { className: 'gcal-events' }                  // optional options
   )

     });

Однако моя задача состоит в том, чтобы иметь несколько фидов. Полная документация в календаре гласит:

eventSources: Array Аналогичен опциям 'events', за исключением того, что можно указать несколько источников. Например, можно указать массив URL-адресов JSON, массив пользовательских функций, массив жестко закодированных массивов событий или любую комбинацию.

Но нет никакого примера, и этот новичок в JSON немного застрял.

Есть какие-нибудь идеи о том, что для этого нужно использовать eventSources и массив каналов?

Ответы [ 2 ]

9 голосов
/ 27 ноября 2009

Нашли решение здесь; http://code.google.com/p/fullcalendar/issues/detail?id=192&q=eventSources

eventSources:
[
    'msCal.txt', // location of Cal JSON script
    'msLogBook.txt', // location of LogBook JSON object
    'msEvents.txt' //location of the Events JSON object
]

Уж больно просто в ретроспективе. На моей тестовой странице работает следующее:

eventSources:
[
    $.fullCalendar.gcalFeed('http://www.google.com/calendar/feeds/en.australian%23holiday%40group.v.calendar.google.com/public/basic'),
    $.fullCalendar.gcalFeed('http://www.google.com/calendar/feeds/usa__en%40holiday.calendar.google.com/public/basic'),
    $.fullCalendar.gcalFeed('http://www.google.com/calendar/feeds/en.indonesian%23holiday%40group.v.calendar.google.com/public/basic')
],  
1 голос
/ 19 июня 2012

У меня возникла та же проблема, и идея выше сработала для меня с небольшой модификацией. Мне нужно было показать 5 календарей на странице, но только 1 календарь на другой странице, поэтому я сделал это.

<?php if (is_page("calendar")):?>
 events:'...google calendar url #1...',
<?php endif; ?>

<?php if (is_page("meeting-schedule")):?>
  eventSources: [
    $.fullCalendar.gcalFeed('...google calendar url #1...'),
    $.fullCalendar.gcalFeed('...google calendar url #2...'),
    $.fullCalendar.gcalFeed('...google calendar url #3...'),
    $.fullCalendar.gcalFeed('...google calendar url #4...'),
    $.fullCalendar.gcalFeed('...google calendar url #5...')
  ],
<?php endif; ?>

Работает отлично !!!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...