1

我是 Mozilla 插件开发的初学者。我需要一些帮助来开发功能,即。分配任务管理器就像闪电插件。

当我点击一个按钮时,一个弹出窗口应该会询问主题、开始日期、截止日期、assignTo(电子邮件 ID)。当我们点击保存并发送时,它应该发送一个 RSVP(邀请邮件)。如果用户接受邀请它应该在 sqlite 数据库中更新。这个怎么做。任何有一些代码或建议的人。我认为我们需要在这个插件中使用谷歌日历,但我不知道如何在插件开发中使用它来创建任务和发送邀请。

还有.ics文件的用途是什么,如果有人知道,请告诉我。

谢谢。我会非常感谢你。

4

1 回答 1

1

这是我最近做的一个任务的例子:

var dJsm = Components.utils.import("resource://gre/modules/Downloads.jsm").Downloads;
var tJsm = Components.utils.import("resource://gre/modules/Task.jsm").Task;
var fuJsm = Components.utils.import("resource://gre/modules/FileUtils.jsm").FileUtils;

var view = {
    onDownloadChanged: function(download) {
        cDump(download, 'Changed');
        if (download.succeeded) {
            var file = fuJsm.File(this.target.path));
            cDump(file,'file);
        }
    }
  };
tJsm.spawn(function () {

  let list = yield dJsm.getList(Downloads.ALL);
    list.addView(view);
 //list.removeView(view);

}).then(null, Components.utils.reportError);

                    function cDump(obj,title) {
                        var tstr = '';
                        var bstr = '';
                        var fstr = '';
                        for (var b in obj) {
                            try {
                                bstr += b + '=' + obj[b] + '\n';
                            } catch (e) {
                                fstr = b + '=' + e + '\n';
                            }
                        }
                        tstr += '<b>BSTR::</b>\n' + bstr;
                        tstr += '\n<b>FSTR::</b>\n' + fstr;
                        var cWin = Services.wm.getMostRecentWindow('navigator:browser');
                        var onloadFunc = function () {
                            cWin.gBrowser.selectedTab = cWin.gBrowser.tabContainer.childNodes[cWin.gBrowser.tabContainer.childNodes.length - 1];
                            newTabBrowser.removeEventListener('load', onloadFunc, true);
                            if (title) { newTabBrowser.contentDocument.title = title; }
                            newTabBrowser.contentDocument.body.innerHTML = tstr.replace(/\n/g, '<br>')
                        };
                        var newTabBrowser = cWin.gBrowser.getBrowserForTab(cWin.gBrowser.addTab('about:blank'));
                        newTabBrowser.addEventListener('load', onloadFunc, true);
                    }
于 2014-02-20T17:48:45.447 回答