我在这里查看了Mogsdad对一个类似问题的回答,但这并不是特别针对我的问题。我还查看了 Calendar 类及其子类的文档,但是没有将单个事件从 Calendar X复制到 Calendar Y 的方法(在我看来应该实现;有一个待处理的功能请求)。
我想要做的如下:
- 将要移动的日历事件的 ID 存储在某处。
- 当事件 Z 完成时(外部标准,不是基于时间的),为函数提供日历事件 ID。
- 该函数会将事件 Z 从日历 X 移动到日历 Y。
我能想到的唯一方法是草率(下面的半伪):
// y is Calendar Y, z is the ID of Event Z
function moveToNewCalendar(y, z) {
var eventToMove = getEventByID(z);
// eventDetails is an Object
var eventDetails = getAllEventDetails(eventToMove); // This is not fun!
y.createEvent(eventDetails);
eventToMove.deleteEvent();
}
function getAllEventDetails(e) {
var details = {};
details["title"] = e.getTitle();
details["startTime"] = e.getStartTime();
// ... etc
return details;
}
function createEvent(eventDetails) {
// Create event using the information pulled from eventDetails
}
此功能可通过Google Calendar API v3 - move功能使用,但不能通过 GAS。
我想主要问题是复制事件的细节。日历原型中没有函数 to createEvent(Event e)
。有没有更简单的方法可以做到这一点,我只是想念?