From 08dfb08114d509ea50e55b87a1cd4511b4595b88 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Tue, 2 Apr 2019 16:38:12 +0200 Subject: [PATCH] MapModel contains information about authors --- frontend-js/src/main/js/map/data/MapModel.js | 33 +++++++++++++++++++ .../js/gui/admin/EditProjectDialog-test.js | 2 +- .../src/test/js/map/data/MapModel-test.js | 15 ++++----- .../models/all/token=MOCK_TOKEN_ID& | 2 +- .../models/all/token=MOCK_TOKEN_ID& | 2 +- .../models/all/token=MOCK_TOKEN_ID& | 2 +- .../empty/models/all/token=MOCK_TOKEN_ID& | 2 +- .../sample/models/all/token=ADMIN_TOKEN_ID& | 2 +- .../sample/models/all/token=MOCK_TOKEN_ID& | 2 +- 9 files changed, 47 insertions(+), 15 deletions(-) diff --git a/frontend-js/src/main/js/map/data/MapModel.js b/frontend-js/src/main/js/map/data/MapModel.js index d8ea172a0a..851a82f0cd 100644 --- a/frontend-js/src/main/js/map/data/MapModel.js +++ b/frontend-js/src/main/js/map/data/MapModel.js @@ -11,6 +11,14 @@ var PointData = require('./PointData'); var Point = require('../canvas/Point'); var Reaction = require('./Reaction'); +/** + * @typedef {Object} Author + * @property {string} firstName + * @property {string} lastName + * @property {string} [organisation] + * @property {string} [email] + */ + /** * @typedef {Object} MapModelOptions * @property {number} idObject @@ -25,6 +33,7 @@ var Reaction = require('./Reaction'); * @property {number} defaultCenterY * @property {number} defaultZoomLevel * @property {Annotation[]|AnnotationOptions[]} references + * @property {Author[]} authors */ /** @@ -58,6 +67,7 @@ function MapModel(configuration) { this._sbmlFunctions = []; this._sbmlParameters = []; this._references = []; + this._authors = []; if (configuration !== undefined) { @@ -74,6 +84,7 @@ function MapModel(configuration) { this.setDefaultCenterY(configuration.getDefaultCenterY()); this.setDefaultZoomLevel(configuration.getDefaultZoomLevel()); this.setReferences(configuration.getReferences()); + this.setAuthors(configuration.getAuthors()); } else { this.setId(configuration.idObject); this.setName(configuration.name); @@ -87,6 +98,7 @@ function MapModel(configuration) { this.setDefaultCenterY(configuration.defaultCenterY); this.setDefaultZoomLevel(configuration.defaultZoomLevel); this.setReferences(configuration.references); + this.setAuthors(configuration.authors); } } } @@ -898,5 +910,26 @@ MapModel.prototype.setReferences = function (references) { } }; +/** + * + * @returns {Author[]} + */ +MapModel.prototype.getAuthors = function () { + return this._authors; +}; + +/** + * + * @param {Author[]} authors + */ +MapModel.prototype.setAuthors = function (authors) { + if (authors === undefined) { + throw new Error("authors must be defined"); + } + this._authors = []; + for (var i = 0; i < authors.length; i++) { + this._authors.push(authors[i]); + } +}; module.exports = MapModel; diff --git a/frontend-js/src/test/js/gui/admin/EditProjectDialog-test.js b/frontend-js/src/test/js/gui/admin/EditProjectDialog-test.js index 840128d973..52ea725632 100644 --- a/frontend-js/src/test/js/gui/admin/EditProjectDialog-test.js +++ b/frontend-js/src/test/js/gui/admin/EditProjectDialog-test.js @@ -125,7 +125,7 @@ describe('EditProjectDialog', function () { return dialog.openAddOverlayDialog(); }).then(function (overlayDialog) { overlayDialog.setFileContent("Xyz"); - return $("button:contains('UPLOAD')").click(); + return $("button:contains('UPLOAD')", dialog.getElement()).click(); }).then(function () { return dialog.destroy(); }); diff --git a/frontend-js/src/test/js/map/data/MapModel-test.js b/frontend-js/src/test/js/map/data/MapModel-test.js index 38a9cafcd4..102a312eb9 100644 --- a/frontend-js/src/test/js/map/data/MapModel-test.js +++ b/frontend-js/src/test/js/map/data/MapModel-test.js @@ -16,22 +16,21 @@ var assert = require('chai').assert; var logger = require('../../logger'); describe('MapModel', function () { + var emptyData = { + idObject: 123, + references: [], + authors: [] + }; it("constructor", function () { - var model = new MapModel({ - idObject: 123, - references: [] - }); + var model = new MapModel(emptyData); assert.equal(123, model.getId()); }); it("setReferences", function () { - var model = new MapModel({ - idObject: 123, - references: [] - }); + var model = new MapModel(emptyData); model.setReferences([new Annotation({type: "", resource: ""})]); assert.equal(1, model.getReferences().length); diff --git a/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/models/all/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/models/all/token=MOCK_TOKEN_ID& index 5d9c3b8fd0..e474cf25d2 100644 --- a/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/models/all/token=MOCK_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/models/all/token=MOCK_TOKEN_ID& @@ -1 +1 @@ -[{"version":null,"name":"main","idObject":19397,"tileSize":256,"width":495,"height":357,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[]},{"version":null,"name":"s1","idObject":19398,"tileSize":256,"width":571,"height":276,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[]},{"version":null,"name":"s3","idObject":19399,"tileSize":256,"width":421,"height":315,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[]},{"version":null,"name":"s2","idObject":19400,"tileSize":256,"width":451,"height":253,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[]}] \ No newline at end of file +[{"version":null,"name":"main","idObject":19397,"tileSize":256,"width":495,"height":357,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]},{"version":null,"name":"s1","idObject":19398,"tileSize":256,"width":571,"height":276,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]},{"version":null,"name":"s3","idObject":19399,"tileSize":256,"width":421,"height":315,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]},{"version":null,"name":"s2","idObject":19400,"tileSize":256,"width":451,"height":253,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]}] \ No newline at end of file diff --git a/frontend-js/testFiles/apiCalls/projects/complex_model_with_submaps/models/all/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/complex_model_with_submaps/models/all/token=MOCK_TOKEN_ID& index b433d77a29..419fd0d3dc 100644 --- a/frontend-js/testFiles/apiCalls/projects/complex_model_with_submaps/models/all/token=MOCK_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/projects/complex_model_with_submaps/models/all/token=MOCK_TOKEN_ID& @@ -1 +1 @@ -[{"version":null,"name":"main","idObject":16728,"tileSize":256,"width":515,"height":362,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[]},{"version":null,"name":"s1","idObject":16729,"tileSize":256,"width":571,"height":276,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[]},{"version":null,"name":"s3","idObject":16730,"tileSize":256,"width":421,"height":315,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[]},{"version":null,"name":"s2","idObject":16731,"tileSize":256,"width":451,"height":253,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[]}] \ No newline at end of file +[{"version":null,"name":"main","idObject":16728,"tileSize":256,"width":515,"height":362,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]},{"version":null,"name":"s1","idObject":16729,"tileSize":256,"width":571,"height":276,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]},{"version":null,"name":"s3","idObject":16730,"tileSize":256,"width":421,"height":315,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]},{"version":null,"name":"s2","idObject":16731,"tileSize":256,"width":451,"height":253,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":3,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]}] \ No newline at end of file diff --git a/frontend-js/testFiles/apiCalls/projects/drug_target_sample/models/all/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/drug_target_sample/models/all/token=MOCK_TOKEN_ID& index 9cdb9611d0..86aec4034d 100644 --- a/frontend-js/testFiles/apiCalls/projects/drug_target_sample/models/all/token=MOCK_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/projects/drug_target_sample/models/all/token=MOCK_TOKEN_ID& @@ -1 +1 @@ -[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":20637,"tileSize":256,"width":1305,"height":473,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":5,"submodelType":"UNKNOWN","references":[]}] \ No newline at end of file +[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":20637,"tileSize":256,"width":1305,"height":473,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":5,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]}] \ No newline at end of file diff --git a/frontend-js/testFiles/apiCalls/projects/empty/models/all/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/empty/models/all/token=MOCK_TOKEN_ID& index a1f313d102..b579158bcd 100644 --- a/frontend-js/testFiles/apiCalls/projects/empty/models/all/token=MOCK_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/projects/empty/models/all/token=MOCK_TOKEN_ID& @@ -1 +1 @@ -[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":20638,"tileSize":256,"width":600,"height":400,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[]}] \ No newline at end of file +[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":20638,"tileSize":256,"width":600,"height":400,"defaultCenterX":null,"defaultCenterY":null,"defaultZoomLevel":null,"minZoom":2,"maxZoom":4,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]}] \ No newline at end of file diff --git a/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=ADMIN_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=ADMIN_TOKEN_ID& index 8219bb7863..4bb549946f 100644 --- a/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=ADMIN_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=ADMIN_TOKEN_ID& @@ -1 +1 @@ -[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":15781,"tileSize":256,"width":1305,"height":473,"defaultCenterX":100.0,"defaultCenterY":4.0,"defaultZoomLevel":5,"minZoom":2,"maxZoom":5,"submodelType":"UNKNOWN","references":[]}] \ No newline at end of file +[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":15781,"tileSize":256,"width":1305,"height":473,"defaultCenterX":100.0,"defaultCenterY":4.0,"defaultZoomLevel":5,"minZoom":2,"maxZoom":5,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]}] \ No newline at end of file diff --git a/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=MOCK_TOKEN_ID& index 8219bb7863..4bb549946f 100644 --- a/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=MOCK_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/projects/sample/models/all/token=MOCK_TOKEN_ID& @@ -1 +1 @@ -[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":15781,"tileSize":256,"width":1305,"height":473,"defaultCenterX":100.0,"defaultCenterY":4.0,"defaultZoomLevel":5,"minZoom":2,"maxZoom":5,"submodelType":"UNKNOWN","references":[]}] \ No newline at end of file +[{"version":null,"name":"UNKNOWN DISEASE MAP","idObject":15781,"tileSize":256,"width":1305,"height":473,"defaultCenterX":100.0,"defaultCenterY":4.0,"defaultZoomLevel":5,"minZoom":2,"maxZoom":5,"submodelType":"UNKNOWN","references":[],"authors":[],"creationDate":null,"modificationDates":[]}] \ No newline at end of file -- GitLab