# HG changeset patch # User Alain Mazy # Date 1632221080 -7200 # Node ID 9290d291615098d17ca6a5e351ed277f33b5d4c4 # Parent b8f54ab47b3b43522722f999e463c6d9f725a492 SeriesList: order series by SeriesNumber + hide non displayable series diff -r b8f54ab47b3b -r 9290d2916150 Applications/StoneWebViewer/NEWS --- a/Applications/StoneWebViewer/NEWS Tue Sep 21 12:29:48 2021 +0200 +++ b/Applications/StoneWebViewer/NEWS Tue Sep 21 12:44:40 2021 +0200 @@ -1,7 +1,10 @@ Pending changes in the mainline =============================== -* SeriesList: display the SeriesNumber tag in front of image count. +* SeriesList: + - display the SeriesNumber tag in front of image count. + - order series by SeriesNumber + - hide non displayable series (PR, SR) * In the top right overlay, display ContentDate/ContentTime if they are available in the instance. If not, StudyDate is displayed (previous behavior) diff -r b8f54ab47b3b -r 9290d2916150 Applications/StoneWebViewer/WebApplication/app.js --- a/Applications/StoneWebViewer/WebApplication/app.js Tue Sep 21 12:29:48 2021 +0200 +++ b/Applications/StoneWebViewer/WebApplication/app.js Tue Sep 21 12:44:40 2021 +0200 @@ -33,6 +33,7 @@ var SERIES_DESCRIPTION = '0008,103e'; var MODALITY = '0008,0060'; var PATIENT_BIRTH_DATE = '0010,0030'; +var NON_DISPLAYABLE_MODALITIES = ['PR', 'SR'] // Registry of the PDF series for which the instance metadata is still waiting var pendingSeriesPdf_ = {}; @@ -567,6 +568,12 @@ var studies = []; var posColor = 0; + // order series by SeriesNumber + sourceSeries.sort((a, b) => {return a[SERIES_NUMBER] - b[SERIES_NUMBER];}) + + // discard non displayable series + sourceSeries = sourceSeries.filter((s) => {return NON_DISPLAYABLE_MODALITIES.indexOf(s[MODALITY]) == -1; } ) + for (var i = 0; i < sourceStudies.length; i++) { var studyInstanceUid = sourceStudies[i][STUDY_INSTANCE_UID]; if (studyInstanceUid !== undefined) {