diff --git a/spatial/static/spatial/js/slidingMap.js b/spatial/static/spatial/js/slidingMap.js
index 4fd425f176899f79c17cf665518f3ab585f045e0..185c8d53e1fd302ac4f3fd320d43ef303db9a2c2 100644
--- a/spatial/static/spatial/js/slidingMap.js
+++ b/spatial/static/spatial/js/slidingMap.js
@@ -59,9 +59,11 @@ async function initSlidingMap(lonLat, zoomLevel, mapAttribution) {
     // Get layers from WMS service
     let parser = new ol.format.WMSCapabilities();
     let response = await fetch(mapserverURL + modelId + "?service=WMS&version=1.3.0&request=GetCapabilities");
-    let result = parser.read(await response.text());
-    let WMSLayers = result.Capability.Layer.Layer;
-    //console.info(WMSLayers[0]);
+    let capabilities = parser.read(await response.text());
+    let WMSLayers = capabilities.Capability.Layer.Layer;
+    document.getElementById("modelTitle").innerHTML = capabilities.Service.Title;
+    document.getElementById("modelAbstract").innerHTML = capabilities.Service.Abstract.replaceAll("\n\n","XXX");
+    //console.info(capabilities.Service.Abstract);
 
     // Analyze and organize layers
     // First dimension: Time
@@ -190,12 +192,26 @@ async function displayQueryResult(evt)
     let response = await fetch(url);
     let responseXML = await response.text();
 
+    // User clicked outside of layer extent
+    if(responseXML.trim().length == 0)
+    {
+        let popupElement = popup.getElement();
+        $(popupElement).popover('destroy');
+        return;
+    }
+
     const parser = new DOMParser();
     const xmlDOM = parser.parseFromString(responseXML,"text/xml");
     const result = xmlDOM.getElementsByTagName("vipsResult")[0]
     if(result) {
         // We may or may not have warning status included
         let warningStatus = xmlDOM.getElementsByTagName("warningStatus").length == 1 ? xmlDOM.getElementsByTagName("warningStatus")[0].getAttribute("value") : null;
+        if(warningStatus == -1)
+        {
+            let popupElement = popup.getElement();
+            $(popupElement).popover('destroy');
+            return;
+        }
         let parameters = {};
         let parameterElements = xmlDOM.getElementsByTagName("parameter");
         for(let i=0;i<parameterElements.length;i++)
@@ -232,4 +248,7 @@ async function displayQueryResult(evt)
           });
           $(popupElement).popover('show');
     }
+    else{
+        alert("An error occured. No model data was returned from the server. This is what the server returned: " + responseXML);
+    }
 }
\ No newline at end of file
diff --git a/spatial/templates/spatial/slidingMap.html b/spatial/templates/spatial/slidingMap.html
index 3b2b777d9eeeb7e20b02b51c34c9aa2058977f04..94657173a987783f34e0e5164ecc1110ae8d3b13 100644
--- a/spatial/templates/spatial/slidingMap.html
+++ b/spatial/templates/spatial/slidingMap.html
@@ -34,5 +34,9 @@
 			</div>
         </div>
 		<div id="popup" title="Location details"></div>
+		<div class="col-md-12">
+			<h2 id="modelTitle"></h2>
+			<div id="modelAbstract"></div>
+		</div>
        
 {% endblock %}
\ No newline at end of file