From 0677a9904970704a4f85c4cc6cbc0dba2d44e55d Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Mon, 10 Apr 2017 11:52:54 +0200 Subject: [PATCH] minerva creates connection to google maps statistics during minerva.create --- frontend-js/src/main/js/ConfigurationType.js | 5 ++-- frontend-js/src/main/js/minerva.js | 26 ++++++++++++++++++- frontend-js/src/test/js/minerva-test.js | 6 ++++- .../getAllValues/token=MOCK_TOKEN_ID& | 2 +- web/src/main/webapp/index.xhtml | 2 -- 5 files changed, 34 insertions(+), 7 deletions(-) diff --git a/frontend-js/src/main/js/ConfigurationType.js b/frontend-js/src/main/js/ConfigurationType.js index 146de1567d..59a19146ab 100644 --- a/frontend-js/src/main/js/ConfigurationType.js +++ b/frontend-js/src/main/js/ConfigurationType.js @@ -2,11 +2,12 @@ var ConfigurationType = { DEFAULT_MAP : "DEFAULT_MAP", + GOOGLE_ANALYTICS_IDENTIFIER : "GOOGLE_ANALYTICS_IDENTIFIER", LOGO_IMG : "LOGO_IMG", LOGO_LINK : "LOGO_LINK", LEGEND_FILES : "LEGEND_FILES", - MIN_COLOR_VAL: "MIN_COLOR_VAL", - MAX_COLOR_VAL: "MAX_COLOR_VAL", + MIN_COLOR_VAL : "MIN_COLOR_VAL", + MAX_COLOR_VAL : "MAX_COLOR_VAL", }; module.exports = ConfigurationType; diff --git a/frontend-js/src/main/js/minerva.js b/frontend-js/src/main/js/minerva.js index 5bdc7b08a3..4dcf234e2b 100644 --- a/frontend-js/src/main/js/minerva.js +++ b/frontend-js/src/main/js/minerva.js @@ -99,6 +99,7 @@ function createLegendIndicator(file, index) { return result; } + function createLegendSlide(file, index) { var result = document.createElement("div"); if (index ===0) { @@ -128,6 +129,27 @@ function createLegend(element) { }); } +function insertGoogleAnalyticsCode(customMap) { + return new Promise(function(resolve,reject){ + return ServerConnector.getConfigurationParam(ConfigurationType.GOOGLE_ANALYTICS_IDENTIFIER).then(function(identifier){ + if (identifier === "" || identifier === undefined || identifier === null) { + resolve(); + } else { + global._gaq = global._gaq || []; + _gaq.push(['_setAccount', identifier]); + _gaq.push(['_trackPageview']); + + (function() { + var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; + ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; + var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); + })(); + resolve(); + } + }) + }); +} + function create(params) { var project = params.project; if (project===undefined) { @@ -230,7 +252,9 @@ function create(params) { return new Promise(function(resolve, reject) { - restoreSearchQuery(result).then(function(){ + insertGoogleAnalyticsCode(result).then(function(){ + return restoreSearchQuery(result); + }).then(function(){ return restoreDrugQuery(result); }).then(function(){ return restoreChemicalQuery(result); diff --git a/frontend-js/src/test/js/minerva-test.js b/frontend-js/src/test/js/minerva-test.js index 8a3499805c..2bcd259a46 100644 --- a/frontend-js/src/test/js/minerva-test.js +++ b/frontend-js/src/test/js/minerva-test.js @@ -27,12 +27,16 @@ describe('minerva global', function() { global.dialogsDiv = helper.createDialogsDiv(); document.body.appendChild(global.dialogsDiv); - }); + + global.scriptDiv = document.createElement("script"); + document.body.appendChild(global.scriptDiv); +}); afterEach(function() { document.body.removeChild(global.leftPanelTab); document.body.removeChild(global.menuDiv); document.body.removeChild(global.dialogsDiv); + document.body.removeChild(global.scriptDiv); }); it('create', function() { diff --git a/frontend-js/testFiles/apiCalls/configuration/getAllValues/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/configuration/getAllValues/token=MOCK_TOKEN_ID& index cb7b0754fa..a027ad2bf1 100644 --- a/frontend-js/testFiles/apiCalls/configuration/getAllValues/token=MOCK_TOKEN_ID& +++ b/frontend-js/testFiles/apiCalls/configuration/getAllValues/token=MOCK_TOKEN_ID& @@ -1 +1 @@ -[{"type":"EMAIL_ADDRESS","value":"your.account@domain.com","idObject":9},{"type":"EMAIL_LOGIN","value":"your@login","idObject":10},{"type":"EMAIL_PASSWORD","value":"email.secret.password","idObject":11},{"type":"EMAIL_IMAP_SERVER","value":"your.imap.domain.com","idObject":13},{"type":"EMAIL_SMTP_SERVER","value":"your.smtp.domain.com","idObject":12},{"type":"EMAIL_SMTP_PORT","value":"25","idObject":14},{"type":"DEFAULT_MAP","value":"sample","idObject":6},{"type":"LOGO_IMG","value":"udl.png","idObject":4},{"type":"LOGO_LINK","value":"http://wwwen.uni.lu/","idObject":3},{"type":"SEARCH_DISTANCE","value":"10","idObject":7},{"type":"REQUEST_ACCOUNT_EMAIL","value":"your.email@domain.com","idObject":1},{"type":"SEARCH_RESULT_NUMBER","value":"100","idObject":8},{"type":"GOOGLE_ANALYTICS_IDENTIFIER","value":"","idObject":2},{"type":"LOGO_TEXT","value":"University of Luxembourg","idObject":5},{"type":"X_FRAME_DOMAIN","value":"http://localhost:8080/","idObject":56},{"type":"BIG_FILE_STORAGE_DIR","value":"minerva-big/","idObject":131},{"type":"LENGEND_FILE_1","value":"resources/images/legend_a.png","idObject":138},{"type":"LENGEND_FILE_2","value":"resources/images/legend_b.png","idObject":139},{"type":"LENGEND_FILE_3","value":"resources/images/legend_c.png","idObject":140},{"type":"LENGEND_FILE_4","value":"resources/images/legend_d.png","idObject":141},{"type":"USER_MANUAL_FILE","value":"resources/other/user_guide.pdf","idObject":142},{"type":"MIN_COLOR_VAL","value":"FF0000","idObject":205},{"type":"MAX_COLOR_VAL","value":"fbff00","idObject":206}] \ No newline at end of file +[{"type":"EMAIL_ADDRESS","value":"your.account@domain.com","idObject":9},{"type":"EMAIL_LOGIN","value":"your@login","idObject":10},{"type":"EMAIL_PASSWORD","value":"email.secret.password","idObject":11},{"type":"EMAIL_IMAP_SERVER","value":"your.imap.domain.com","idObject":13},{"type":"EMAIL_SMTP_SERVER","value":"your.smtp.domain.com","idObject":12},{"type":"EMAIL_SMTP_PORT","value":"25","idObject":14},{"type":"DEFAULT_MAP","value":"sample","idObject":6},{"type":"LOGO_IMG","value":"udl.png","idObject":4},{"type":"LOGO_LINK","value":"http://wwwen.uni.lu/","idObject":3},{"type":"SEARCH_DISTANCE","value":"10","idObject":7},{"type":"REQUEST_ACCOUNT_EMAIL","value":"your.email@domain.com","idObject":1},{"type":"SEARCH_RESULT_NUMBER","value":"100","idObject":8},{"type":"GOOGLE_ANALYTICS_IDENTIFIER","value":"google_analytics_id","idObject":2},{"type":"LOGO_TEXT","value":"University of Luxembourg","idObject":5},{"type":"X_FRAME_DOMAIN","value":"http://localhost:8080/","idObject":56},{"type":"BIG_FILE_STORAGE_DIR","value":"minerva-big/","idObject":131},{"type":"LENGEND_FILE_1","value":"resources/images/legend_a.png","idObject":138},{"type":"LENGEND_FILE_2","value":"resources/images/legend_b.png","idObject":139},{"type":"LENGEND_FILE_3","value":"resources/images/legend_c.png","idObject":140},{"type":"LENGEND_FILE_4","value":"resources/images/legend_d.png","idObject":141},{"type":"USER_MANUAL_FILE","value":"resources/other/user_guide.pdf","idObject":142},{"type":"MIN_COLOR_VAL","value":"FF0000","idObject":205},{"type":"MAX_COLOR_VAL","value":"fbff00","idObject":206}] \ No newline at end of file diff --git a/web/src/main/webapp/index.xhtml b/web/src/main/webapp/index.xhtml index e29d05997a..b65efd69fc 100644 --- a/web/src/main/webapp/index.xhtml +++ b/web/src/main/webapp/index.xhtml @@ -28,8 +28,6 @@ <h:outputScript library="js" name="minerva.js" /> - <ui:include src="/WEB-INF/components/admin/statistics.xhtml" /> - <script type="text/javascript"> //<![CDATA[ -- GitLab