Bug 1498169 - Render scalar data from multiple stores r=chutten

Depends on D14579

Differential Revision: https://phabricator.services.mozilla.com/D14580

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Jan-Erik Rediger 2018-12-17 20:30:31 +00:00
parent 2946e8444d
commit 30bbea3547

View File

@ -1676,8 +1676,42 @@ var Scalars = {
let processesSelect = document.getElementById("processes");
let selectedProcess = processesSelect.selectedOptions.item(0).getAttribute("value");
if (!selectedProcess) {
return;
}
let payload = aPayload.stores;
if (payload) { // Check for stores in the current ping data first
let hasData = false;
for (const store of Object.keys(payload)) {
if (!(selectedProcess in payload[store])) {
continue;
}
let scalars = payload[store][selectedProcess].scalars || {};
hasData = hasData || Array.from(processesSelect.options).some((option) => {
let value = option.getAttribute("value");
let sclrs = payload[store][value] && payload[store][value].scalars;
return sclrs && Object.keys(sclrs).length > 0;
});
if (Object.keys(scalars).length > 0) {
const headings = [
"namesHeader",
"valuesHeader",
].map(h => bundle.GetStringFromName(h));
let s = GenericSubsection.renderSubsectionHeader(store, true, "scalars-section");
let table = GenericTable.render(explodeObject(scalars), headings);
let caption = document.createElement("caption");
caption.textContent = store;
table.appendChild(caption);
s.appendChild(table);
scalarsSection.appendChild(s);
}
}
setHasData("scalars-section", hasData);
} else { // Handle archived pings
if (!aPayload.processes ||
!selectedProcess ||
!(selectedProcess in aPayload.processes)) {
return;
}
@ -1688,6 +1722,7 @@ var Scalars = {
let sclrs = aPayload.processes[value].scalars;
return sclrs && Object.keys(sclrs).length > 0;
});
setHasData("scalars-section", hasData);
if (Object.keys(scalars).length > 0) {
const headings = [
@ -1697,6 +1732,7 @@ var Scalars = {
const table = GenericTable.render(explodeObject(scalars), headings);
scalarsSection.appendChild(table);
}
}
},
};