aboutsummaryrefslogtreecommitdiffstats
path: root/firefox-addon
diff options
context:
space:
mode:
authorThibaut Horel <thibaut.horel@gmail.com>2014-07-10 10:24:12 -0400
committerThibaut Horel <thibaut.horel@gmail.com>2014-07-10 10:24:12 -0400
commitb92928dabbc1a56699a463a201d76bf08a58f818 (patch)
tree537666bfe6bf01a4cfb40c5390ea75407b70796e /firefox-addon
parente6ea3d5ff986d6b7ce2d3d7fb382ad9e8fee5ab4 (diff)
downloadbrowsing-activity-tracker-b92928dabbc1a56699a463a201d76bf08a58f818.tar.gz
Get away from the headers madness
Diffstat (limited to 'firefox-addon')
-rw-r--r--firefox-addon/lib/main.js43
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) });