diff options
| author | Thibaut Horel <thibaut.horel@gmail.com> | 2014-07-10 10:24:12 -0400 |
|---|---|---|
| committer | Thibaut Horel <thibaut.horel@gmail.com> | 2014-07-10 10:24:12 -0400 |
| commit | b92928dabbc1a56699a463a201d76bf08a58f818 (patch) | |
| tree | 537666bfe6bf01a4cfb40c5390ea75407b70796e | |
| parent | e6ea3d5ff986d6b7ce2d3d7fb382ad9e8fee5ab4 (diff) | |
| download | browsing-activity-tracker-b92928dabbc1a56699a463a201d76bf08a58f818.tar.gz | |
Get away from the headers madness
| -rw-r--r-- | firefox-addon/lib/main.js | 43 |
1 files changed, 17 insertions, 26 deletions
diff --git a/firefox-addon/lib/main.js b/firefox-addon/lib/main.js index 2c2786d..c5446f2 100644 --- a/firefox-addon/lib/main.js +++ b/firefox-addon/lib/main.js @@ -2,33 +2,24 @@ var windows = require("sdk/windows").browserWindows; var tabs = require("sdk/tabs"); var Request = require("sdk/request").Request; var prefs = require("sdk/simple-prefs").prefs; +var XMLHttpRequest = require("sdk/net/xhr").XMLHttpRequest; -function logUrl(tab) { - if (tab !== tabs.activeTab) { - return; +function log(url, title){ + var xhr = new XMLHttpRequest(); + xhr.open("POST", prefs.callbackUrl); + var data = "url=" + url; + data += "&time=" + Date.now(); + data += "&title=" + title; + xhr.send(data); +} + +function logTab(tab) { + if (tab.id === tabs.activeTab.id) { + log(tab.url, tab.title); } - 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() }); +tabs.on("activate", function () { logTab(tabs.activeTab) }); +tabs.on("pageshow", logTab ); +windows.on("activate", function () { logTab(tabs.activeTab) }); +windows.on("deactivate", function () { log(null, null) }); |
