有没有办法将fullcalendar插件与只显示忙/闲时间的公开Google日历一起使用?
这个想法不仅仅是显示空闲/忙碌时间,而且真正适用于只显示忙碌和空闲时间的日历。
谢谢!
答案 0 :(得分:5)
Fullcalendar使用Google日历的XML感觉来创建活动。在Google日历中看到“公开但只显示忙/空闲时间”选项不会创建包含足够信息的XML Feed,fullcalendar无法正确读取。所以答案是:不。
但是,还有其他方法可以做到这一点。这就是我所做的(它有魅力)。 使用Google Cal,您可以共享公共XML Feed,但您也可以获得自己的私有XML Feed。使用PHP,我使用非常直观和简单的Coreylib库来解析XML。然后我把想要的信息(startTime和endTime)放在一个数组中。然后在初始化fullcalendar以创建自定义事件时使用此数组。
我发布了PHP位,因为我真的很难让语法正确地从clApi对象获取数据。
// Feed can be grabbed from Google Cal settings -> get private feed, and change the "basic" to "full" at the end of the URL
$XMLfeed = "https://feed";
// Coreylib is used to parse the google cal XML
require_once('coreylib.php');
$api = new clApi($XMLfeed);
$feed = $api->parse();
foreach( $feed->get('entry') as $entry) {
$start = $entry->get('when@startTime');
$end = $entry->get('when@endTime');
$allEvents[] = array('startTime'->$start, 'endTime'->$end);
}
然后我循环使用$ allEvents在JS init中创建事件。
希望这可以帮助某人。