2010-06-21 5 views
0

Je souhaite donc pouvoir spécifier plusieurs sources différentes pour mon implémentation FullCalendar, j'ai un certain nombre de flux Google Agenda que je veux dans mon agenda mais aussi un certain nombre de sources locales, tous utilisent le type de données JSON.Spécification de sources multiples et différentes pour jQuery FullCalendar

Je pensais que je pouvais mélanger les sources comme ceci:

eventSources: 
[ 
    $.fullCalendar.gcalFeed('http://www.google.com/calendar/feeds/usa__en%40holiday.calendar.google.com/public/basic'), 
    '/?module=a&controller=b&action=getJSON&id=1'   
] 

Mais quand j'essaie ce rien est tiré sur le calendrier, pas même l'alimentation Google.

Quelqu'un peut-il me dire comment je peux spécifier plusieurs sources, à partir de différents endroits (Google/local)

Répondre

1

Ok donc je suis venu en fait avec moi-même solution ... En fait, cette première solution n'est pas la solution, faites défiler jusqu'à éditez.

<script type="text/javascript"> 
    $(document).ready(function() { 
     $('#calendar').fullCalendar({ events: "/?module=1&controller=2&action=getJSON&id=1" }) 
         .fullCalendar({ events: "/?module=1&controller=2&action=getJSON&id=2" }) 
         .fullCalendar({ events: "/?module=1&controller=2&action=getJSON&id=3" }) 
         .fullCalendar({ events: "/?module=1&controller=2&action=getJSON&id=4" }) 
         .fullCalendar({ events: $.fullCalendar.gcalFeed('http://www.google.com/calendar/feeds/usa__en%40holiday.calendar.google.com/public/basic') }); 

}); 
</script> 

Alors ce que je fais est instancié FullCalendar au début de mon script, puis plus bas ajouter des événements individuellement. Je ne suis pas complètement convaincu que c'est la meilleure méthode pour résoudre le problème, donc si quelqu'un a d'autres suggestions, j'aimerais vraiment les entendre.

EDIT

Je réalise que le code d'origine instancie FullCalendar pour chaque flux, donc dans ce cas, je devrais 5 calendriers sur ma page ... oups, je cam dans this post qui m'a donné la answer:

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#calendar').fullCalendar('addEventSource', "/?module=1&controller=3&action=getJSON&id=1") 
        .fullCalendar('addEventSource', "/?module=1&controller=2&action=getJSON&id=2") 
        .fullCalendar('addEventSource', "/?module=1&controller=2&action=getJSON&id=3") 
        .fullCalendar('addEventSource', "/?module=1&controller=2&action=getJSON&id=4") 
        .fullCalendar('addEventSource', "/?module=1&controller=2&action=getJSON&id=5"); 

}); 
</script> 
Questions connexes