chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
console.log("Message from content: " + request);
if (request.method == 'setLicense') {
var messages = {
'error': 'Error parsing RDF',
'unlicensed': 'No machine readable licensing',
'licensed': 'License declared'
};
chrome.pageAction.setTitle({
tabId: sender.tab.id,
title: messages[request.check]
});
var icon = {
'error': 'red',
'unlicensed': 'amber',
'licensed': 'green'
};
chrome.pageAction.show(sender.tab.id);
chrome.pageAction.setIcon({
tabId: sender.tab.id,
path: 'pageIcon-' + icon[request.check] + '.png'
});
sendResponse({text: "ok"});
} else if (request.method == 'isRedirect') {
if (request.url == redirectToUrl) {
sendResponse({redirect: true,
fromUrl: redirectFromUrl});
} else {
sendResponse({redirect: false});
}
}
}
);
redirectToUrl = null;
redirectFromUrl = null;
chrome.webRequest.onBeforeRedirect.addListener(
function(details) {
if (details.statusCode == 303) {
console.log(details.url + " is being redirected to " + details.redirectUrl);
redirectToUrl = details.redirectUrl;
redirectFromUrl = details.url;
}
console.log("redirect");
},
{urls: ["<all_urls>"]}
);