我正在尝试创建为用户订阅公司日历的简单脚本。它将嵌入到谷歌网站中。到目前为止,我有:
function doGet(e) {
var app = UiApp.createApplication();
var mainPanel = app.createVerticalPanel();
var mainButton = app.createButton("Push Me");
var clickHandler = app.createServerHandler("addCalendar");
mainButton.addClickHandler(clickHandler);
mainPanel.add(mainButton);
app.add(mainPanel);
return app;
}
function addCalendar(e) {
var app = UiApp.getActiveApplication();
var CAL_ID = (calendar's ID);
CalendarApp.subscribeToCalendar(CAL_ID);
var successLabel = app.createLabel("You have successfully added the Calendar.");
app.add(successLabel);
return app;
}
addCalendar() 在显示 successLabel 时被调用,但它似乎跳过了订阅日历。在添加 GUI 之前,我能够订阅日历,所以问题一定与此有关。
谢谢你的帮助!
编辑 - 在https://developers.google.com/apps-script/guide_user_interfaces的谷歌文档中,有一个表格显示显示为独立 servlet 的 UI 以作者身份运行,而电子表格中显示的 UI 以用户身份运行剧本。这可能是问题的根源吗?