document.addEventListener('DOMContentLoaded', function() {
var
slugify, popup,
d = document,
detectedApps = d.getElementById('detected-apps');
slugify = function(string) {
return string.toLowerCase().replace(/[^a-z0-9-]/g, '-').replace(/--+/g, '-').replace(/(?:^-|-$)/, '');
};
popup = {
init: function() {
d.getElementById('options').addEventListener('click', function() {
window.open(browser.extension.getURL('options.html'));
});
browser.tabs.query({ active: true }).then(function(tabs) {
if ( tabs[0].url.match(/https?:\/\//) ) {
detectedApps.innerHTML = '
' + browser.i18n.getMessage('noAppsDetected') + '
';
} else {
detectedApps.innerHTML = '' + browser.i18n.getMessage('nothingToDo') + '
';
}
});
popup.displayApps();
},
displayApps: function() {
var appName, confidence, version;
browser.tabs.query({ active: true }).then(function(tabs) {
function sendGetApps(response) {
if ( response.tabCache && response.tabCache.count > 0 ) {
detectedApps.innerHTML = '';
for ( appName in response.tabCache.appsDetected ) {
confidence = response.tabCache.appsDetected[appName].confidenceTotal;
version = response.tabCache.appsDetected[appName].version;
html =
'';
detectedApps.innerHTML = detectedApps.innerHTML + html;
}
}
}
if (typeof chrome === "undefined") {
browser.runtime.sendMessage({ id: 'get_apps', tab: tabs[0] }, sendGetApps);
} else {
chrome.runtime.sendMessage({ id: 'get_apps', tab: tabs[0] }, sendGetApps);
}
});
}
};
popup.init();
});