From 7e225acb490e78a3509b1db24f8ffcf4e2e90d47 Mon Sep 17 00:00:00 2001
From: Tor-Einar Skog <tor-einar.skog@nibio.no>
Date: Mon, 24 Apr 2017 14:20:07 -0700
Subject: [PATCH] Fireblight web application Path change Minor layout
 adjustment Fixing period selection for visible observations

---
 src/main/webapp/js/util.js                    | 70 ++++++++++---------
 .../fireblight/index.html                     |  6 +-
 .../fireblight/js/map.js                      | 17 +++--
 3 files changed, 53 insertions(+), 40 deletions(-)
 rename src/main/webapp/{test => map_applications}/fireblight/index.html (98%)
 rename src/main/webapp/{test => map_applications}/fireblight/js/map.js (96%)

diff --git a/src/main/webapp/js/util.js b/src/main/webapp/js/util.js
index 92fa45b1..1c7fff4a 100755
--- a/src/main/webapp/js/util.js
+++ b/src/main/webapp/js/util.js
@@ -38,43 +38,45 @@ var compareSelectListOptions = function(a,b)
 /**
  * Depends on the value of currentLanguage and defaultLanguage in /currentLanguage.js
  * @param organism
+ * @param language if you want to override system settings, specify language here
  * @returns {String}
  */
-function getLocalizedOrganismName(organism)
+function getLocalizedOrganismName(organism, language)
 {
-	// Fallback in case nothing works
-	if(organism === null)
-	{
-		return gettext("Unnamed");
-	}
-	// Attempting the following languages (in order): current language, default language, English
-	var languages = [environment.currentLanguage, environment.defaultLanguage, "en"];
-	for(var j in languages)
-	{
-		for(var i in organism.organismLocaleSet)
-		{
-			var localeSet = organism.organismLocaleSet[i];
-			//console.log(localeSet);
-			if(localeSet.organismLocalePK.locale == languages[j])
-			{
-				return localeSet.localName;
-			}
-		}
-	}
-	// Then we try the latin name
-	if(organism.latinName !== null 
-			&& organism.latinName !== "")
-	{
-		return organism.latinName;
-	}
-	// Then the trade name
-	if(organism.tradeName !== null
-			&& organism.tradeName !== "")
-	{
-		return organism.tradeName;
-	}
-	// Then we give up
-	return gettext("Unnamed");
+    var preferredLanguage = language || environment.currentLanguage;
+    // Fallback in case nothing works
+    if(organism === null)
+    {
+            return gettext("Unnamed");
+    }
+    // Attempting the following languages (in order): current language, default language, English
+    var languages = [preferredLanguage, environment.defaultLanguage, "en"];
+    for(var j in languages)
+    {
+            for(var i in organism.organismLocaleSet)
+            {
+                    var localeSet = organism.organismLocaleSet[i];
+                    //console.log(localeSet);
+                    if(localeSet.organismLocalePK.locale == languages[j])
+                    {
+                            return localeSet.localName;
+                    }
+            }
+    }
+    // Then we try the latin name
+    if(organism.latinName !== null 
+                    && organism.latinName !== "")
+    {
+            return organism.latinName;
+    }
+    // Then the trade name
+    if(organism.tradeName !== null
+                    && organism.tradeName !== "")
+    {
+            return organism.tradeName;
+    }
+    // Then we give up
+    return gettext("Unnamed");
 }
 
 /**
diff --git a/src/main/webapp/test/fireblight/index.html b/src/main/webapp/map_applications/fireblight/index.html
similarity index 98%
rename from src/main/webapp/test/fireblight/index.html
rename to src/main/webapp/map_applications/fireblight/index.html
index 48c88a6f..55e115c4 100755
--- a/src/main/webapp/test/fireblight/index.html
+++ b/src/main/webapp/map_applications/fireblight/index.html
@@ -165,7 +165,11 @@
                 
             }
             table {
-                border-spacing: 10px;
+                border-spacing: 5px 15px;
+            }
+            select
+            {
+                font-size: large;
             }
     </style>
   </head>
diff --git a/src/main/webapp/test/fireblight/js/map.js b/src/main/webapp/map_applications/fireblight/js/map.js
similarity index 96%
rename from src/main/webapp/test/fireblight/js/map.js
rename to src/main/webapp/map_applications/fireblight/js/map.js
index f729dae6..2392942a 100755
--- a/src/main/webapp/test/fireblight/js/map.js
+++ b/src/main/webapp/map_applications/fireblight/js/map.js
@@ -1,6 +1,9 @@
 // The globally available map object
 var map, featureOverlay, newFeatureOverlay; 
 
+// Override localization settings for this particular web page
+var hardcodedLanguage = "nb";
+
 function initMap()
 {
     // OpenStreetMap background layer
@@ -11,7 +14,7 @@ function initMap()
         source: new ol.source.OSM({
           attributions: [
             new ol.Attribution({
-              html: mapConstants.MAP_ATTRIBUTION
+              html: "Kartgrunnlag: Statens kartverk (<a href='//creativecommons.org/licenses/by-sa/3.0/no/' target='new'>cc-by-sa-3.0</a>)"
             })
           ]
         })
@@ -43,6 +46,11 @@ function initMap()
     type: 'base',
     visible: true,
     source: new ol.source.TileWMS({
+         attributions: [
+            new ol.Attribution({
+              html: "Kartgrunnlag: Statens kartverk (<a href='//creativecommons.org/licenses/by/4.0/deed.no' target='new'>cc-by-sa-4.0</a>)"
+            })
+          ],
       url: "//opencache.statkart.no/gatekeeper/gk/gk.open?",
       params: {
         LAYERS: 'topo2',
@@ -155,9 +163,8 @@ var styles = {
         })
       });
     
-    // TODO pestId and from/to can't be hard coded
     // TODO feature properties must be synchronized
-    $.getJSON("/rest/observation/filter/1/geoJSON?from=2016-01-01&to=2017-01-01&pestId=" + paerebrann.organismId, function(geoData){
+    $.getJSON("/rest/observation/filter/1/geoJSON?from=2012-01-01&pestId=" + paerebrann.organismId, function(geoData){
         //console.info(geoData)
         var format = new ol.format.GeoJSON();
 
@@ -236,7 +243,7 @@ var displayFeature = function(feature)
         '<button type="button" onclick="deleteFeature(' + feature.getId() + ')">Delete</button>',
         '<h3>Registrering</h3>',
         '<table>',
-        '<tr><td>Type</td><td>',getLocalizedOrganismName(feature.get("cropOrganism")),'</td></tr>',
+        '<tr><td>Type</td><td>',getLocalizedOrganismName(feature.get("cropOrganism"),hardcodedLanguage),'</td></tr>',
         '<tr><td>Størrelse</td><td>',observationData["forekomststorrelse"],'</td></tr>',
         '<tr><td>Symptom</td><td>',observationData["symptom"],'</td></tr>',
         '<tr><td>Tiltak</td><td>',observationData["tiltak"],'</td></tr>',
@@ -455,7 +462,7 @@ var generateCropSelect = function(selectName, cropOrganisms, preselect)
     var retVal = '<select id="' + selectName + '" name="' + selectName + '">';
     for(var i=0; i< cropOrganisms.length; i++)
     {
-        retVal += '<option value="' + cropOrganisms[i].organismId + '"' + (cropOrganisms[i].organismId == preselect ? " selected=\"selected\"" : "") + '">' + getLocalizedOrganismName(cropOrganisms[i])  + '</option>';
+        retVal += '<option value="' + cropOrganisms[i].organismId + '"' + (cropOrganisms[i].organismId == preselect ? " selected=\"selected\"" : "") + '">' + getLocalizedOrganismName(cropOrganisms[i], hardcodedLanguage)  + '</option>';
     }
     retVal += '</select>';
     return retVal;
-- 
GitLab