summaryrefslogtreecommitdiffstats
path: root/firefox-addon/lib/main.js
blob: 2c2786dd2c35764d82fc20a2214bde607ed6c967 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
var windows = require("sdk/windows").browserWindows;
var tabs = require("sdk/tabs");
var Request = require("sdk/request").Request;
var prefs = require("sdk/simple-prefs").prefs;

function logUrl(tab) {
    if (tab !== tabs.activeTab) {
        return;
    }
    Request({
        url: prefs.callbackUrl,
        headers: {
            "url": unescape(encodeURIComponent(tab.url)),
            "time": Date.now(),
            "title": unescape(encodeURIComponent(tab.title)),
        }
    }).post();
};

function logDesactivate() {
    Request({
        url: prefs.callbackUrl,
        headers: {
            "url": null,
            "time": Date.now(),
            "title": null,
        }
    }).post();
}

tabs.on("activate", function () { logUrl(tabs.activeTab) });
tabs.on("pageshow", function(tab) { logUrl(tab) });
windows.on("activate", function () { logUrl(tabs.activeTab) });
windows.on("deactivate", function () { logDesactivate() });