Add switch to download full context results or not.

This commit is contained in:
Stephan Porada
2020-09-15 17:18:22 +02:00
parent 27f40b98a3
commit c0472eb6c5
5 changed files with 123 additions and 8 deletions

View File

@ -245,6 +245,7 @@ document.addEventListener("DOMContentLoaded", () => {
'#show-meta-data',
'#sub-results-create',
'#sub-results-export',
'#export-full-inspect-context',
]);
/**
@ -322,6 +323,19 @@ document.addEventListener("DOMContentLoaded", () => {
}
};
/**
* Checks if resultsList.exportFullInspectContext switch is changed.#
* If it has been changed reset all Download buttons.
*/
resultsList.exportFullInspectContext.onchange = (event) => {
// Hide all download buttons.
resultsList.fullResultsExport.classList.toggle('hide', true);
resultsList.subResultsExport.classList.toggle('hide', true);
// Show result create buttons.
resultsList.fullResultsCreate.classList.toggle('hide', false);
resultsList.subResultsCreate.classList.toggle('hide', false);
}
/**
* The following event listeners are handeling the data export.
* 1. Create full-results
@ -338,7 +352,9 @@ document.addEventListener("DOMContentLoaded", () => {
loadingSpinnerHTML);
let dataIndexes = [...Array(results.data.match_count).keys()];
resultsList.notifyClient('get-results', { resultsType: 'full-results',
dataIndexes: dataIndexes});
dataIndexes: dataIndexes,
resultsList: resultsList,
});
}
// 2. Add events for sub-results create
resultsList.subResultsCreate.onclick = (event) => {
@ -351,14 +367,20 @@ document.addEventListener("DOMContentLoaded", () => {
resultsList.subResultsCreate.insertAdjacentHTML('afterbegin',
loadingSpinnerHTML);
resultsList.notifyClient('get-results', { resultsType: 'sub-results',
dataIndexes: dataIndexes});
dataIndexes: dataIndexes,
resultsList: resultsList,
});
}
// 3. Open download modal when full results export button is pressed
resultsList.fullResultsExport.onclick = (event) => {
resultsList.queryResultsDownloadModal.open();
// add onclick to download JSON button and download the file
resultsList.downloadResultsJson.onclick = (event) => {
let filename = results.fullResultsData.createDownloadFilename('full-results');
let suffix = 'full-results'
if (resultsList.exportFullInspectContext.checked) {
suffix += '_full-context';
}
let filename = results.fullResultsData.createDownloadFilename(suffix);
results.fullResultsData.addData(results.metaData);
results.fullResultsData.downloadJSONRessource(filename,
results.fullResultsData,
@ -369,7 +391,11 @@ document.addEventListener("DOMContentLoaded", () => {
resultsList.queryResultsDownloadModal.open();
// add onclick to download JSON button and download the file
resultsList.downloadResultsJson.onclick = (event) => {
let filename = results.subResultsData.createDownloadFilename('sub-results');
let suffix = 'sub-results'
if (resultsList.exportFullInspectContext.checked) {
suffix += '_full-context';
}
let filename = results.subResultsData.createDownloadFilename(suffix);
results.subResultsData.addData(results.metaData);
results.subResultsData.downloadJSONRessource(filename,
results.subResultsData,
@ -380,7 +406,7 @@ document.addEventListener("DOMContentLoaded", () => {
resultsList.queryResultsDownloadModal.open();
// add onclick to download JSON button and download the file
resultsList.downloadResultsJson.onclick = (event) => {
let filename = results.subResultsData.createDownloadFilename('inspect-results');
let filename = results.subResultsData.createDownloadFilename('inspect-results_full-context');
results.subResultsData.addData(results.metaData);
results.subResultsData.downloadJSONRessource(filename,
results.inspectResultsData,