[Mapbender-commits] r6096 - trunk/mapbender/http/plugins

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Fri May 7 08:20:46 EDT 2010


Author: verenadiewald
Date: 2010-05-07 08:20:45 -0400 (Fri, 07 May 2010)
New Revision: 6096

Added:
   trunk/mapbender/http/plugins/mb_metadata_showOriginal.html
   trunk/mapbender/http/plugins/mb_metadata_showOriginal.js
   trunk/mapbender/http/plugins/mb_original_metadata_server.php
Log:
new module show original metadata

Added: trunk/mapbender/http/plugins/mb_metadata_showOriginal.html
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_showOriginal.html	                        (rev 0)
+++ trunk/mapbender/http/plugins/mb_metadata_showOriginal.html	2010-05-07 12:20:45 UTC (rev 6096)
@@ -0,0 +1,83 @@
+<fieldset class="ui-widget">
+
+	<legend>Original Service Level Metadata: </legend>
+	<p>
+		<label for="original_wms_title">WMS Title (OWS):</label>
+		<input name="original_wms_title" id="original_wms_title" class="required"/>
+	</p>
+	<p>
+    	<label for="original_wms_abstract">WMS Abstract (OWS):</label>
+    	<input name="original_wms_abstract" id="original_wms_abstract"/>
+	</p>
+	<p>
+		<label for="">WMS Keywords (OWS):</label>
+    	<input name=" "id=""/>
+	</p>
+	<p>
+		<label for="original_fees">WMS Fees (OWS):</label>
+    	<input name="original_fees" id="original_fees"/>
+	</p>
+	<p>
+		<label for="original_accessconstraints">WMS AccessConstraints (OWS):</label>
+		<input name="original_accessconstraints" id="original_accessconstraints"/>
+	</p>
+	<p>
+		<label for="">WMS Predefined Licence (Registry):</label>
+    	<input name="" id""/>
+	</p>
+	<p>
+		<label>WMS Provider Section (OWS):</label>
+	</p>
+	<p>
+		<label for="original_contactperson">Contact Individual Name (OWS):</label>
+    	<input name="original_contactperson" id="original_contactperson"/>
+	</p>
+	<p>
+		<label for="original_contactposition">Contact Position Name (OWS):</label>
+    	<input name="original_contactposition" id="original_contactposition"/>
+	</p>
+	<p>
+		<label for="original_contactvoicetelephone">Contact Phone Voice (OWS):</label>
+    	<input name="original_contactvoicetelephone" id="original_contactvoicetelephone"/>
+	</p>
+	<p>
+		<label for="original_contactfacsimiletelephone">Contact Phone Fax (OWS):</label>
+    	<input name="original_contactfacsimiletelephone" id="original_contactfacsimiletelephone"/>
+	</p>
+	<p>
+		<label for="original_contactorganization">Contact Organisation (WMS):</label>
+    	<input name="original_contactorganization" id="contactorganization"/>
+    </p>
+	<p>
+		<label for="original_address">Contact Address (WMS):</label>
+    	<input name="original_address" id="original_address"/>
+	</p>
+	<p>
+		<label for="original_city">Contact City (WMS):</label>
+     	<input name="original_city" id="original_city"/>
+	</p>
+	<p>
+	  	<label for="original_stateorprovince">Contact State or Province (WMS) - ISO 3166-II:</label>
+      	<input name="original_stateorprovince" id="original_stateorprovince"/>
+	</p>
+	<p>
+	  	<label for="original_postcode">Contact Post Code (WMS):</label>
+      	<input name="original_postcode" id="original_postcode"/>
+	</p>
+	<p>
+	  	<label for="original_country">Contact Post Country (WMS) - ISO 3166:</label>
+      	<input name="original_country" id="original_country"/>
+	</p>
+	<p>
+	  	<label for="original_contactelectronicmailaddress">Contact Electronic Mail Address (WMS):</label>
+      	<input name="original_contactelectronicmailaddress" id="original_contactelectronicmailaddress"/>
+ 	</p>
+	<p>
+	  	<label for="">Date of first registration (Registry):</label>
+      	<input name="" id=""/>
+	</p>
+	<p>
+	  	<label for="">Date of last revision (Registry):</label>
+      	<td><input name="" id=""/>
+	</p>
+</fieldset>

Added: trunk/mapbender/http/plugins/mb_metadata_showOriginal.js
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_showOriginal.js	                        (rev 0)
+++ trunk/mapbender/http/plugins/mb_metadata_showOriginal.js	2010-05-07 12:20:45 UTC (rev 6096)
@@ -0,0 +1,59 @@
+var $showOriginalDiv = $(this);
+var $originalMetadataForm = $("<form></form>").appendTo($showOriginalDiv);
+var $originalMetadataPopup = $("<div></div>");
+
+var ShowOriginalApi = function() {
+	var that = this;
+	
+	this.events = {
+		replaceMetadata : new Mapbender.Event()
+	};
+	
+	var mergeOriginalWithCurrentMetadata = function (originalObj,currentObj) {
+		//console.log(originalObj);
+		//console.log(currentObj);
+	};
+	
+	var getOriginalMetadata = function (currentWmsId, currentWmsData) {
+		// get original metadata from server
+		var req = new Mapbender.Ajax.Request({
+			url: "../plugins/mb_original_metadata_server.php",
+			method: "getOriginalMetadata",
+			parameters: {
+				"id": currentWmsId
+			},
+			callback: function (obj, result, message) {
+				if (!result) {
+					return;
+				}
+				return obj;
+			}
+		});
+		req.send();	
+	};
+	
+	var fillForm = function (obj) {
+		$originalMetadataForm.easyform("reset");
+		$originalMetadataForm.easyform("fill", obj);
+		$originalMetadataPopup.append($originalMetadataForm);
+		$originalMetadataPopup.dialog({
+			title : "Show original metadata", 
+			autoOpen : false, 
+			draggable : true,
+			width : 600,
+			position : [600, 75]
+		});
+		$originalMetadataPopup.dialog("open");
+		
+	};
+	
+	this.init = function (obj) {
+		$originalMetadataForm.load("../plugins/mb_metadata_showOriginal.html", function () {
+			var originalMetadata = getOriginalMetadata(obj.wmsId, obj.wmsData);
+			//mergeOriginalWithCurrentMetadata(originalMetadata,obj.wmsData);
+			//fillForm(obj.wmsData);
+		});
+	}
+};
+
+$showOriginalDiv.mapbender(new ShowOriginalApi());
\ No newline at end of file

Added: trunk/mapbender/http/plugins/mb_original_metadata_server.php
===================================================================
--- trunk/mapbender/http/plugins/mb_original_metadata_server.php	                        (rev 0)
+++ trunk/mapbender/http/plugins/mb_original_metadata_server.php	2010-05-07 12:20:45 UTC (rev 6096)
@@ -0,0 +1,147 @@
+<?php
+require_once dirname(__FILE__) . "/../../core/globalSettings.php";
+require_once dirname(__FILE__) . "/../classes/class_user.php";
+require_once dirname(__FILE__) . "/../classes/class_wms.php";
+
+$ajaxResponse = new AjaxResponse($_POST);
+
+function abort ($message) {
+	global $ajaxResponse;
+	$ajaxResponse->setSuccess(false);
+	$ajaxResponse->setMessage($message);
+	$ajaxResponse->send();
+	die;
+};
+
+function parseCapabilitiesDoc($capabilitiesDoc) {
+	$xmlDoc = new DOMDocument();
+	$xmlDoc->encoding = CHARSET;
+	$xmlDoc->preserveWhiteSpace = false;
+	$xmlDoc->loadXML($capabilitiesDoc);
+	
+	$resultObj = array();
+	
+	$service_node = $xmlDoc->getElementsByTagName('Service'); 
+	foreach ($service_node as $node) {
+		$children = $node->childNodes;
+		foreach($children as $child) {
+			if (strtoupper($child->nodeName) == "TITLE"){
+				$resultObj["original_wms_title"] = $child->nodeValue;
+			}
+			if (strtoupper($child->nodeName) == "ABSTRACT"){
+				$resultObj["original_wms_abstract"] = $child->nodeValue;
+			}
+			if (strtoupper($child->nodeName) == "ACCESSCONSTRAINTS"){
+				$resultObj["original_accessconstraints"] = $child->nodeValue;
+			}
+			if (strtoupper($child->nodeName) == "FEES"){
+				$resultObj["original_fees"] = $child->nodeValue;
+			}
+			
+			//"Service"-childnode ContactInformation	
+			if (strtoupper($child->nodeName) == "CONTACTINFORMATION"){
+				$contactinfo_list = $child->childNodes;
+				foreach ($contactinfo_list as $contact_child_node) {
+					if (strtoupper($contact_child_node->nodeName) == "CONTACTPOSITION"){
+						$wms_contactposition = $contact_child_node->nodeValue;
+						$resultObj["original_contactposition"] = $contact_child_node->nodeValue;
+					}
+					if (strtoupper($contact_child_node->nodeName) == "CONTACTELECTRONICMAILADDRESS"){
+						$resultObj["original_contactelectronicmailaddress"] = $contact_child_node->nodeValue;
+					}
+					if (strtoupper($contact_child_node->nodeName) == "CONTACTFACSIMILETELEPHONE"){
+						$wms_fax = $contact_child_node->nodeValue;	
+						$resultObj["original_contactfacsimiletelephone"] = $contact_child_node->nodeValue;
+					}
+					if (strtoupper($contact_child_node->nodeName) == "CONTACTVOICETELEPHONE"){
+						$wms_telephone = $contact_child_node->nodeValue;
+						$resultObj["original_contactvoicetelephone"] = $contact_child_node->nodeValue;
+					}
+					
+					//"ContactInformation"-childnode ContactpersonPrimary
+					if (strtoupper($contact_child_node->nodeName) == "CONTACTPERSONPRIMARY"){
+						$contactpersoninfo_list = $contact_child_node->childNodes;
+						foreach($contactpersoninfo_list as $contactperson_child) {
+							if (strtoupper($contactperson_child->nodeName) == "CONTACTPERSON"){
+								$resultObj["original_contactperson"] = $contactperson_child->nodeValue;
+							}
+							if (strtoupper($contactperson_child->nodeName) == "CONTACTORGANIZATION"){
+								$resultObj["original_contactorganization"] = $contactperson_child->nodeValue;
+							}
+						}
+					}
+					
+					//"ContactInformation"-childnode ContactAddress	
+					if (strtoupper($contact_child_node->nodeName) == "CONTACTADDRESS"){
+						$contactaddress_list = $contact_child_node->childNodes;
+						foreach($contactaddress_list as $contactaddress_child) {
+							if (strtoupper($contactaddress_child->nodeName) == "ADDRESS"){
+								$resultObj["original_address"] = $contactaddress_child->nodeValue;
+							}
+							if (strtoupper($contactaddress_child->nodeName) == "CITY"){
+								$resultObj["original_city"] = $contactaddress_child->nodeValue;
+							}
+							if (strtoupper($contactaddress_child->nodeName) == "STATEORPROVINCE"){
+								$resultObj["original_stateorprovince"] = $contactaddress_child->nodeValue;
+							}
+							if (strtoupper($contactaddress_child->nodeName) == "POSTCODE"){
+								$resultObj["original_postcode"] = $contactaddress_child->nodeValue;
+							}
+							if (strtoupper($contactaddress_child->nodeName) == "COUNTRY"){
+								$resultObj["original_country"] = $contactaddress_child->nodeValue;
+							}		
+						}	
+					}		
+				}
+			}						
+		}
+	}
+	return $resultObj;
+}
+
+switch ($ajaxResponse->getMethod()) {
+	case "getOriginalMetadata" :
+		$wmsId = $ajaxResponse->getParameter("id");
+		$sql = <<<SQL
+	
+SELECT wms_getcapabilities_doc FROM wms WHERE wms_id = $wmsId;
+
+SQL;
+		$res = db_query($sql);
+		$row = db_fetch_array($res);
+		$wms_getcapabilities_doc = $row["wms_getcapabilities_doc"];
+		$resultObj = parseCapabilitiesDoc($wms_getcapabilities_doc);
+
+		$ajaxResponse->setResult($resultObj);
+		$ajaxResponse->setSuccess(true);
+		
+		break;
+	case "getLayerMetadata" :
+		$layerId = $ajaxResponse->getParameter("id");
+		getLayer($layerId);
+
+		$sql = <<<SQL
+	
+SELECT layer_id, layer_title, layer_abstract, layer_searchable 
+FROM layer WHERE wms_id = $wmsId;
+
+SQL;
+		$res = db_query($sql);
+
+		$resultObj = array();
+		while ($row = db_fetch_assoc($res)) {
+			foreach ($row as $key => $value) {
+				$resultObj["layer:".$key] = $value;
+			}
+		}
+		$ajaxResponse->setResult($resultObj);
+		$ajaxResponse->setSuccess(true);
+		break;
+	default: 
+		$ajaxResponse->setSuccess(false);
+		$ajaxResponse->setMessage(_mb("An unknown error occured."));
+		break;
+}
+
+$ajaxResponse->send();
+?>
\ No newline at end of file



More information about the Mapbender_commits mailing list