mirror of
https://github.com/mdn/webextensions-examples.git
synced 2026-04-16 06:18:35 +02:00
* Adding send message and on message functions * moving table displaying into a new function * updating rootCertStats from var to let * updating comments * Apply Linter change, unused const Co-authored-by: Rob Wu <rob@robwu.nl> --------- Co-authored-by: Rob Wu <rob@robwu.nl> Co-authored-by: rebloor <git@sherpa.co.nz>
This commit is contained in:
@@ -1,9 +1,6 @@
|
||||
"use strict";
|
||||
|
||||
// Note: declared with "var" because popup.js references this global variable.
|
||||
// If this were to be declared with "const" or "let", then the variable would
|
||||
// still be available to this file, but not to popup.js.
|
||||
var rootCertStats = {};
|
||||
let rootCertStats = {};
|
||||
|
||||
/*
|
||||
On an onHeadersReceived event, if there was a successful TLS connection
|
||||
@@ -39,3 +36,12 @@ browser.webRequest.onHeadersReceived.addListener(logRootCert,
|
||||
{urls: ["<all_urls>"]},
|
||||
["blocking"]
|
||||
);
|
||||
|
||||
/*
|
||||
Send the rootCertStats object to popup.js when requested.
|
||||
*/
|
||||
browser.runtime.onMessage.addListener((message, sender, sendResponse) => {
|
||||
if (message.action === "getRootCertStats") {
|
||||
sendResponse({ rootCertStats: rootCertStats });
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,19 +1,22 @@
|
||||
"use strict";
|
||||
|
||||
/*
|
||||
Get the background page to access the rootCertStats object
|
||||
Send message to the background page to get the rootCertStats object
|
||||
*/
|
||||
const backgroundPage = browser.extension.getBackgroundPage();
|
||||
browser.runtime.sendMessage({ action: "getRootCertStats" }, response => {
|
||||
displayTable(response.rootCertStats);
|
||||
});
|
||||
|
||||
let entries = Object.keys(backgroundPage.rootCertStats);
|
||||
|
||||
function displayTable(rootCertStats) {
|
||||
/*
|
||||
If there are any stats, show the table, and append one row for each entry.
|
||||
Each row contains the name of the CA and the number of times it has been
|
||||
used as a trust root.
|
||||
*/
|
||||
if (entries.length > 0) {
|
||||
let entries = Object.keys(rootCertStats);
|
||||
|
||||
if (entries.length > 0) {
|
||||
let noData = document.querySelector(".no-data");
|
||||
noData.classList.add("hidden");
|
||||
let entryTable = document.querySelector(".root-cert-table");
|
||||
@@ -24,10 +27,11 @@ if (entries.length > 0) {
|
||||
let entryName = document.createElement("td");
|
||||
let entryValue = document.createElement("td");
|
||||
entryName.textContent = entry;
|
||||
entryValue.textContent = backgroundPage.rootCertStats[entry];
|
||||
entryValue.textContent = rootCertStats[entry];
|
||||
|
||||
entryTR.appendChild(entryName);
|
||||
entryTR.appendChild(entryValue);
|
||||
entryTable.appendChild(entryTR);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user