From 2083b1459e28178241eb910a566d5c36ef828d23 Mon Sep 17 00:00:00 2001 From: David Hoksza <david.hoksza@uni.lu> Date: Thu, 25 Jan 2018 14:37:10 +0100 Subject: [PATCH] Fixes to the annotations categorization in the frontend --- .../resources/applicationContext-annotation.xml | 1 + frontend-js/src/main/css/global.css | 12 +++++++++++- .../src/main/js/gui/leftPanel/GuiUtils.js | 16 ++++++++++------ frontend-js/src/main/js/map/data/Annotation.js | 10 ++++++++++ 4 files changed, 32 insertions(+), 7 deletions(-) diff --git a/annotation/src/main/resources/applicationContext-annotation.xml b/annotation/src/main/resources/applicationContext-annotation.xml index 15b0210a0f..985de31648 100644 --- a/annotation/src/main/resources/applicationContext-annotation.xml +++ b/annotation/src/main/resources/applicationContext-annotation.xml @@ -21,6 +21,7 @@ <bean id="EntrezAnnotator" class="lcsb.mapviewer.annotation.services.annotators.EntrezAnnotator"/> <bean id="GoAnnotator" class="lcsb.mapviewer.annotation.services.annotators.GoAnnotator"/> <bean id="HgncAnnotator" class="lcsb.mapviewer.annotation.services.annotators.HgncAnnotator"/> + <bean id="KeggAnnotator" class="lcsb.mapviewer.annotation.services.annotators.KeggAnnotator"/> <bean id="ReconAnnotator" class="lcsb.mapviewer.annotation.services.annotators.ReconAnnotator"/> <bean id="PdbAnnotator" class="lcsb.mapviewer.annotation.services.annotators.PdbAnnotator"/> <bean id="StitchAnnotator" class="lcsb.mapviewer.annotation.services.annotators.StitchAnnotator"/> diff --git a/frontend-js/src/main/css/global.css b/frontend-js/src/main/css/global.css index dab4b9ec0f..179c9cfe56 100644 --- a/frontend-js/src/main/css/global.css +++ b/frontend-js/src/main/css/global.css @@ -524,4 +524,14 @@ h1 { .minerva-datatable-toolbar { float: left; -} \ No newline at end of file +} + +.minerva-annotation-group { + padding-bottom: 10px; +} + +.minerva-annotation-group .minerva-annotation-group-header { + font-weight: bold + +} + diff --git a/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js b/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js index 27878f3253..99dae01f55 100644 --- a/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js +++ b/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js @@ -184,19 +184,23 @@ GuiUtils.prototype.createAnnotationList = function (annotations, options) { var grouppedAnnotations = {}; for (var i = 0; i < annotations.length; i++) { - var desc = annotations[i].description; + var desc = annotations[i].getDescription(); + if (desc == "") desc = "Annotated by curator" if (!(desc in grouppedAnnotations)) grouppedAnnotations[desc] = []; grouppedAnnotations[desc].push(annotations[i]) } var cntAnnotations = 0; - for (var i = 0; i < grouppedAnnotations.keys().length; i++) { + // for (var i = 0; i < grouppedAnnotations.keys().length; i++) { + Object.keys(grouppedAnnotations).sort().forEach(function(desc){ - var desc = grouppedAnnotations.keys()[i]; + // var desc = grouppedAnnotations.keys()[i]; var groupContainer = (inline ? document.createElement("span") : document.createElement("div")); var descContainer = (inline ? document.createElement("span") : document.createElement("div")); + descContainer.innerHTML = (inline ? desc + ': ' : desc); - if (inline) groupContainer.className = "minerva-annotation-group"; + descContainer.className = "minerva-annotation-group-header"; + if (!inline) groupContainer.className = "minerva-annotation-group"; groupContainer.appendChild(descContainer); if (inline){ @@ -222,7 +226,7 @@ GuiUtils.prototype.createAnnotationList = function (annotations, options) { var row = document.createElement("div"); row.style.height = "26px"; - if (i % 2 === 0) { + if (j % 2 === 0) { row.className = "minerva-annotation-row-odd"; } else { row.className = "minerva-annotation-row-even"; @@ -249,7 +253,7 @@ GuiUtils.prototype.createAnnotationList = function (annotations, options) { } result.appendChild(groupContainer); - } + }); // for (var i = 0; i < annotations.length; i++) { // var element = annotations[i]; diff --git a/frontend-js/src/main/js/map/data/Annotation.js b/frontend-js/src/main/js/map/data/Annotation.js index 3398556e91..1496051649 100644 --- a/frontend-js/src/main/js/map/data/Annotation.js +++ b/frontend-js/src/main/js/map/data/Annotation.js @@ -15,6 +15,7 @@ function Annotation(javaObject) { } this.setType(javaObject.getType()); this.setResource(javaObject.getResource()); + this.setDescription(javaObject.getDescription()); } else { this.setLink(javaObject.link); this.setId(javaObject.id); @@ -23,6 +24,7 @@ function Annotation(javaObject) { } this.setType(javaObject.type); this.setResource(javaObject.resource); + this.setDescription(javaObject.description); } } @@ -72,4 +74,12 @@ Annotation.prototype.getArticle = function() { return this._article; }; +Annotation.prototype.setDescription = function(description) { + this._description = description; +}; + +Annotation.prototype.getDescription = function() { + return this._description; +}; + module.exports = Annotation; -- GitLab