[Mapbender-commits] r7466 - in trunk/mapbender/http: classes geoportal php plugins

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Mon Jan 24 02:36:24 EST 2011


Author: armin11
Date: 2011-01-23 23:36:24 -0800 (Sun, 23 Jan 2011)
New Revision: 7466

Modified:
   trunk/mapbender/http/classes/class_georss.php
   trunk/mapbender/http/classes/class_rss.php
   trunk/mapbender/http/classes/class_rss_factory.php
   trunk/mapbender/http/classes/class_rss_item.php
   trunk/mapbender/http/classes/class_wms.php
   trunk/mapbender/http/geoportal/insertUserDataIntoDb.php
   trunk/mapbender/http/php/mod_deleteWMS.php
   trunk/mapbender/http/plugins/mb_extendedSearch_server.php
Log:
Buggfixes for mapbender wms rss feed, some fixes for geoportal.rlp

Modified: trunk/mapbender/http/classes/class_georss.php
===================================================================
--- trunk/mapbender/http/classes/class_georss.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/classes/class_georss.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -14,7 +14,7 @@
  */
 class GeoRss extends Rss {
 	
-	protected function createItem () {
+	protected function createRssItem () { 
 		return new GeoRssItem();
 	}
 	
@@ -23,4 +23,4 @@
 			' xmlns:georss="http://www.georss.org/georss"';
 	}	
 }
-?>
\ No newline at end of file
+?>

Modified: trunk/mapbender/http/classes/class_rss.php
===================================================================
--- trunk/mapbender/http/classes/class_rss.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/classes/class_rss.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -14,8 +14,7 @@
  */
 class Rss {
     var $filename;
-	
-	var $channel_url;
+    var $channel_url;
     var $channel_title;
     var $channel_description;
     var $channel_lang;
@@ -32,18 +31,30 @@
 	protected function createItem () {
 		return new RssItem();
 	}
-	
+	//function to append item at the end of the item list
 	public function append () {
 		if (func_num_args() === 0) {
 			$item = $this->createItem();
 		}
 		else {
 			$item = func_get_arg(0);
-		}
+		};
 		$this->items[]= $item;
 		$this->nritems++;
 		return $item;
 	}
+	//function to append item at the top of the item list - maybe most recent !
+	public function appendTop () {
+		if (func_num_args() === 0) {
+			$item = $this->createItem();
+		}
+		else {
+			$item = func_get_arg(0);
+		}
+		array_unshift($this->items, $item);
+		$this->nritems++;
+		return $item;
+	}
 	
 	public function saveAsFile() {
 		if (func_num_args() === 1) {
@@ -93,7 +104,11 @@
         $this->channel_description=$description;
         $this->channel_lang=$lang;
         $this->channel_copyright=$copyright;
-        $this->channel_date=date("Y-m-d").'T'.date("H:i:s").'+01:00';
+        //$this->channel_date=date("Y-m-d").'T'.date("H:i:s").'+01:00';
+	$timestamp = ($timestamp==null) ? time() : $timestamp;
+        /*** Mon, 02 Jul 2009 11:36:45 +0000 ***/
+        $this->channel_date = date(DATE_RSS, $timestamp);
+
         $this->channel_creator=$creator;
         $this->channel_subject=$subject;
     }
@@ -104,6 +119,7 @@
 
     public function setItem($rssItem) {
     	if (is_a($rssItem, "RssItem")) {
+		#array_unshift($this->items, $rssItem);
     		$this->items[]= $rssItem;
 	        $this->nritems++;   
 			return true;

Modified: trunk/mapbender/http/classes/class_rss_factory.php
===================================================================
--- trunk/mapbender/http/classes/class_rss_factory.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/classes/class_rss_factory.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -123,7 +123,7 @@
 					$item->setUrl(trim($childNode->nodeValue));
 					break;
 					
-				case "pupDate":
+				case "pubDate":
 					$item->setPubDate(trim($childNode->nodeValue));
 					break;	
 					
@@ -133,4 +133,4 @@
 	}
 }
 
-?>
\ No newline at end of file
+?>

Modified: trunk/mapbender/http/classes/class_rss_item.php
===================================================================
--- trunk/mapbender/http/classes/class_rss_item.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/classes/class_rss_item.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -15,6 +15,10 @@
 	protected $pubDate;
 	
 	public function __construct () {
+		//$this->title = "dummytitle";
+		//$this->description = "dummydescription";
+		//$this->url = "dummyurl";
+		//$this->pubDate = "dummypubdate";
 	}
 	
 	public function setUrl ($url) {
@@ -53,4 +57,4 @@
 //			"\n";
 	}
 }
-?>
\ No newline at end of file
+?>

Modified: trunk/mapbender/http/classes/class_wms.php
===================================================================
--- trunk/mapbender/http/classes/class_wms.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/classes/class_wms.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -96,11 +96,12 @@
     }
     
 	public static function getWmsMetadataUrl ($wmsId) {
-		return preg_replace(
-			"/(.*)frames\/login.php/", 
-			"$1php/mod_layerMetadata.php?id=", 
-			LOGIN
-		) . $wmsId;
+		#return preg_replace(
+		#	"/(.*)frames\/login.php/", 
+		#	"$1php/mod_layerMetadata.php?id=", 
+		#	LOGIN
+		#) . $wmsId;
+		return LOGIN."/../../mapbender/php/mod_showMetadata.php?resource=wms&id=".$wmsId;
 	}
 
 	public static function isOwsProxyUrl ($getmap) {
@@ -1499,7 +1500,7 @@
 		);
 		$t = array(
 			's','s','s','s','s','s','s','s','s','s','s','s','s','s','s','s',
-			's','s','s','s','s','s','i','i','i','s','s','s','s','s','s','s'
+			's','s','s','s','s','s','i','i','i','s','s','s','s','s','s','s','s'
 		);
 		$res = db_prep_query($sql,$v,$t);
 		if(!$res){
@@ -1569,7 +1570,7 @@
 		$geoRss = $geoRssFactory->loadOrCreate(GEO_RSS_FILE);
 		if (!is_null($geoRss)) {
 			$geoRssItem = new GeoRssItem();
-			$geoRssItem->setTitle("NEW: " . $this->wms_title);
+			$geoRssItem->setTitle("NEW WMS: " . $this->wms_title." (".$myWMS.")");
 			$geoRssItem->setDescription($this->wms_abstract);
 			$geoRssItem->setUrl(self::getWmsMetadataUrl($myWMS));
 			$geoRssItem->setPubDate(self::rssDate());
@@ -1588,12 +1589,14 @@
 					break;
 				}
 			}
-
-			$geoRss->append($geoRssItem);
+			//for debugging: 
+			//print_r($geoRss);
+			//die();
+			$geoRss->appendTop($geoRssItem);
 			$geoRss->saveAsFile();
 		}
 	    
-	    #Changes JW
+	    //Changes JW
 	    $this->wms_id = $myWMS;
 	}
 	function insertLayer($i,$myWMS){
@@ -2177,7 +2180,7 @@
 		$v = array($myWMS);
 		$t = array('i');
 		$c = 2;
-		$sql = "SELECT layer_name, layer_title, layer_abstract FROM layer WHERE fkey_wms_id = $1 AND NOT layer_name IN(";
+		$sql = "SELECT layer_id, layer_name, layer_title, layer_abstract FROM layer WHERE fkey_wms_id = $1 AND NOT layer_name IN(";
 		for($i=0; $i<count($this->objLayer); $i++){
 			if($i>0){$sql .= ',';}
 			$sql .= "$".$c;
@@ -2189,6 +2192,7 @@
 		$res = db_prep_query($sql,$v,$t);
 		while ($row = db_fetch_array($res)) {
 			$oldLayerNameArray[]= array(
+				"id" => $row["layer_id"],
 				"name" => $row["layer_name"],
 				"title" => $row["layer_title"],
 				"abstract" => $row["layer_abstract"]
@@ -2261,7 +2265,7 @@
 		if (!is_null($geoRss)) {
 
 			$geoRssItem = new GeoRssItem();
-			$geoRssItem->setTitle("UPDATED WMS: " . $this->wms_title);
+			$geoRssItem->setTitle("UPDATED WMS: " . $this->wms_title." (".$myWMS.")");
 			$geoRssItem->setDescription($this->wms_abstract);
 			$geoRssItem->setUrl(self::getWmsMetadataUrl($myWMS));
 			$geoRssItem->setPubDate(self::rssDate());
@@ -2279,15 +2283,15 @@
 					break;
 				}
 			}
-			$geoRss->append($geoRssItem);
+			$geoRss->appendTop($geoRssItem);
 
 			foreach ($newLayerArray as $newLayer) {
 				$currentLayer = $this->objLayer[$newLayer];
-				$geoRssItem = new GeoRssItem();
-				$geoRssItem->setTitle("ADDED LAYER: " . $currentLayer->layer_title);
-				$geoRssItem->setDescription($currentLayer->layer_abstract);
-				$geoRssItem->setUrl(layer::getLayerMetadataUrl($currentLayer->layer_id));
-				$geoRssItem->setPubDate(self::rssDate());
+				$geoRssItemNewLayer = new GeoRssItem();
+				$geoRssItemNewLayer->setTitle("NEW LAYER: " . $currentLayer->layer_title." (".$currentLayer->layer_id.")");
+				$geoRssItemNewLayer->setDescription($currentLayer->layer_abstract);
+				$geoRssItemNewLayer->setUrl(layer::getLayerMetadataUrl($currentLayer->layer_id));
+				$geoRssItemNewLayer->setPubDate(self::rssDate());
 				for ($j = 0; $j < count($currentLayer->layer_epsg); $j++) {
 					$currentEpsg = $currentLayer->layer_epsg[$j];
 					if ($currentEpsg["epsg"] === "EPSG:4326") {
@@ -2298,19 +2302,19 @@
 							$currentEpsg["maxy"],
 							$currentEpsg["epsg"]
 						);
-						$geoRssItem->setBbox($currentBbox);
+						$geoRssItemNewLayer->setBbox($currentBbox);
 						break;
 					}
 				}
-				$geoRss->append($geoRssItem);
+				$geoRss->appendTop($geoRssItemNewLayer);
 			}
 			foreach ($oldLayerNameArray as $oldLayer) {
-				$geoRssItem = new GeoRssItem();
-				$geoRssItem->setTitle("DELETED LAYER: " . $oldLayer["title"]);
-				$geoRssItem->setDescription($oldLayer["abstract"]);
-				$geoRssItem->setPubDate(self::rssDate());
+				$geoRssItemOldLayer = new GeoRssItem();
+				$geoRssItemOldLayer->setTitle("DELETED LAYER: " . $oldLayer["title"]." (".$oldLayer["id"].")");
+				$geoRssItemOldLayer->setDescription($oldLayer["abstract"]);
+				$geoRssItemOldLayer->setPubDate(self::rssDate());
 //				$geoRssItem->setUrl();
-				$geoRss->append($geoRssItem);
+				$geoRss->appendTop($geoRssItemOldLayer);
 			}
 			$geoRss->saveAsFile();
 		}
@@ -3004,11 +3008,12 @@
 	}
 
 	public static function getLayerMetadataUrl ($layerId) {
-		return preg_replace(
-			"/(.*)frames\/login.php/", 
-			"$1php/mod_layerMetadata.php?id=", 
-			LOGIN
-		) . $layerId;
+		#return preg_replace(
+		#	"/(.*)frames\/login.php/", 
+		#	"$1php/mod_showMetadata.php?resource=layer&id=", 
+		#	LOGIN
+		#) . $layerId;
+		return LOGIN."/../../mapbender/php/mod_showMetadata.php?resource=layer&id=".$layerId;
 	}
 
 	public function __toString () {

Modified: trunk/mapbender/http/geoportal/insertUserDataIntoDb.php
===================================================================
--- trunk/mapbender/http/geoportal/insertUserDataIntoDb.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/geoportal/insertUserDataIntoDb.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -18,9 +18,9 @@
 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 #	require_once(dirname(__FILE__)."/../../conf/mapbender.conf");
-
+	require_once(dirname(__FILE__)."/../../core/globalSettings.php");
 	require_once(dirname(__FILE__)."/../classes/class_administration.php");
-	require_once(dirname(__FILE__)."/../../core/globalSettings.php");	
+	#echo "test<br>";
 	$mb_user_password = '';
 	$adm = new administration();
 	$con = db_connect(DBSERVER,OWNER,PW);
@@ -57,7 +57,7 @@
 			if(!isset($mb_user_postal_code) || $mb_user_postal_code == ''){ $mb_user_postal_code = 0;}
 			$sql = "INSERT INTO mb_user (mb_user_name,mb_user_password,mb_user_digest,mb_user_owner,mb_user_description,mb_user_email,mb_user_phone,mb_user_department,mb_user_organisation_name,mb_user_position_name,mb_user_city,mb_user_postal_code, mb_user_textsize, mb_user_glossar) VALUES ($1, $2,$13, '1', $3, $4, $5, $6, $7, $8, $9, $10,$11,$12)";
 			$v = array($mb_user_name, md5($mb_user_password), $mb_user_description, $mb_user_email, $mb_user_phone, $mb_user_department, $mb_user_organisation_name, $mb_user_position_name, $mb_user_city, $mb_user_postal_code, 'textsize1' ,'ja',md5($mb_user_name.";".$mb_user_email.":".REALM.":".$mb_user_password));
-			$t = array('s', 's', 's', 's', 's', 's', 's', 's', 's', 'i', 's', 's');
+			$t = array('s', 's', 's', 's', 's', 's', 's', 's', 's', 'i', 's', 's', 's');
 			$res = db_prep_query($sql, $v, $t);
 	
 			$sql = "SELECT mb_group_id FROM mb_group WHERE mb_group_name = 'guest' LIMIT 1";
@@ -71,6 +71,7 @@
 	
 			//Mailversand
 			$mailBody=$mailBody1." ".$mb_user_password." ".$mailBody2;
+			#echo $mailBody."<br>";
 			$success = $adm->sendEmail(MAILADMIN, MAILADMINNAME, $mb_user_email, $mb_user_name, 'Ihre Registrierung', $mailBody, $error_msg );
 		}
 		else

Modified: trunk/mapbender/http/php/mod_deleteWMS.php
===================================================================
--- trunk/mapbender/http/php/mod_deleteWMS.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/php/mod_deleteWMS.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -203,9 +203,13 @@
 			$geoRssFactory = new GeoRssFactory();
 			$geoRss = $geoRssFactory->loadOrCreate(GEO_RSS_FILE);
 			$geoRssItem = new GeoRssItem();
-			$geoRssItem->setTitle("DELETED WMS: " . $wms_title);
+			$geoRssItem->setTitle("DELETED WMS: ".$wms_title." (".$wmsList.")");
 			$geoRssItem->setDescription($wms_abstract);
-			$geoRss->append($geoRssItem);
+			//$geoRssItem->setUrl("");
+			//$timestamp = ($timestamp==null) ? time() : $timestamp;
+			$timestamp = date(DATE_RSS,time());
+			$geoRssItem->setPubDate($timestamp);
+			$geoRss->appendTop($geoRssItem);
 			$geoRss->saveAsFile();	   
 		}
 	}

Modified: trunk/mapbender/http/plugins/mb_extendedSearch_server.php
===================================================================
--- trunk/mapbender/http/plugins/mb_extendedSearch_server.php	2011-01-21 06:26:57 UTC (rev 7465)
+++ trunk/mapbender/http/plugins/mb_extendedSearch_server.php	2011-01-24 07:36:24 UTC (rev 7466)
@@ -99,12 +99,12 @@
 			$entries['translations']['classificationsLegend'] = 'Klassifikationen';
 			$entries['translations']['legendActuality'] = 'Zeitliche Einschränkung';
 			$entries['translations']['helpInspireThemes'] = 'Entsprechend der 34 Annex-Themen der EU-INSPIRE-Richtlinie können hier Einzelthemen (auch Mehrfachauswahl) ausgesucht werden.';
-			$entries['translations']['helpSearchText'] = 'Hilfe zur Textsuche. Bitte geben Sie hier kommasepariert eine Liste von Suchbegriffen ein. Die Begriffe werden für eine Volltextsuche über Titel, Beschreibung und Keywords verwendet. Die Verknüpfung der Suchbegriffe geschieht über ein UND. Je mehr Begriffe eingegeben werden, desto weniger Treffer werden gefunden.';
+			$entries['translations']['helpSearchText'] = 'Hilfe zur Textsuche. Bitte geben Sie hier ein oder kommasepariert mehrere Suchbegriffe ein. Die Begriffe werden für eine Volltextsuche über Titel, Beschreibung und Keywords verwendet. Die Verknüpfung der Suchbegriffe geschieht über ein UND. Je mehr Begriffe eingegeben werden, desto weniger Treffer werden gefunden.';
 			# <a href="http://www.geoportal.rlp.de">testlink</a> - can be included in the content of a dialog
 			$entries['translations']['helpIsoCategories'] = 'Die 20 Themen, die in der Norm ISO19115 definiert sind, sind weltweit abgestimmt und sollten bei der Beschreibung von Geodaten immer mit angegeben werden um eine eindeutige Identifizierbarkeit zu ermöglichen. Eine entsprechende Auswahl/Ergebniseinschränkung ist hier möglich.';
 			$entries['translations']['helpCustomCategories'] = 'Falls individuelle Themenkategorien angelegt wurden, sind diese hierrüber anwählbar.';
-			$entries['translations']['helpOrderBy'] = 'Hier können Sie angeben, nach welchen Kriterien die Ergebnisse sortiert werden sollen. „Nachfrage“ bedeutet, dass die am häufigsten aufgerufenen  Ergebnisse an oberste Stelle kommen. „Alphabetisch“ bedeutet eine alphabetische Sortierung. Die „Ident. Nummer“ ist eine automatisch generierte Zahl, über die eine Ressource eindeutig identifiziert werden kann. In der Trefferanzeige werden damit Ressourcen nach Diensten gruppiert.  „Letzte Änderung“ bedeutet eine Sortierung nach der Aktualität der Metainformationen. Die neuesten Informationen werden an erster Stelle angezeigt.';
-			$entries['translations']['helpSpatialFilter'] = 'Hier können Sie eine räumliche Einschränkung festsetzen. Die Einschränkung wird mit ihrem Suchbegriff verknüpft. Sie bekommen nur Treffer, die sowohl den Suchbegriff beinhalten, als auch in dem von Ihnen definierten Gebiet liegen.';
+			$entries['translations']['helpOrderBy'] = 'Hier können Sie angeben, nach welchen Kriterien die Ergebnisse sortiert werden sollen. „Nachfrage“ bedeutet, dass die am häufigsten aufgerufenen  Ergebnisse an oberste Stelle kommen. „Alphabetisch“ bedeutet eine alphabetische Sortierung. Die „Ident. Nummer“ ist eine automatisch generierte Zahl, über die eine Ressource eindeutig identifiziert werden kann. In der Trefferanzeige werden dann die Treffer nach Diensten gruppiert.  „Letzte Änderung“ bedeutet eine Sortierung nach der Aktualität der Metainformationen wodurch die neuesten Informationen an erster Stelle stehen.';
+			$entries['translations']['helpSpatialFilter'] = 'Hier können Sie eine räumliche Einschränkung festsetzen. Die Einschränkung wird mit Ihrem Suchbegriff verknüpft. Sie bekommen nur Treffer, die sowohl den Suchbegriff beinhalten, als auch in dem von Ihnen definierten Gebiet liegen.';
 			$entries['translations']['helpProvider'] = 'Hier finden Sie eine Auflistung aller Anbieter von GeoWebDiensten. Wenn Sie nur Daten eines Anbieters suchen, dann wählen Sie den oder die entsprechenden aus.';
 			$entries['translations']['helpDateOfPublication'] = 'Geben Sie hier das Datum der Veröffentlichung der beschreibenden Informationen (Metadaten) ein bzw. einen Zeitraum, in dem diese Veröffentlichung stattgefunden haben kann. Das Datum bezeichnet dabei den Zeitpunkt der letztmaligen Aktualisierung der beschreibenden Informationen.';
 			$entries['translations']['helpDateOfLastRevision'] = 'Tragen Sie hier den Zeitraum (bzw. nur das Start- oder das Enddatum) ein, auf denen die Daten stammen bzw. in dem sie aktualisiert wurden. <b>Hinweis: Diese Funktion steht erst ab Mitte 2011 zu Verfügung.</b>';
@@ -156,16 +156,16 @@
 			$entries['translations']['deleteSelection4'] = 'Delete current selection';
 			$entries['translations']['classificationsLegend'] = 'Classifications';
 			$entries['translations']['legendActuality'] = 'Temporal Filter';
-			$entries['translations']['helpInspireThemes'] = 'Help for the Inspire Themes';
-			$entries['translations']['helpSearchText'] = 'Help for Fulltextsearch';
-			$entries['translations']['helpIsoCategories'] = 'Help for ISO19115 classification';
-			$entries['translations']['helpCustomCategories'] = 'Help for own classification';
-			$entries['translations']['helpOrderBy'] = 'Help for ordering filter';
-			$entries['translations']['helpSpatialFilter'] = 'Help for spatial Filter';
-			$entries['translations']['helpProvider'] = 'Help for registrating departments';
-			$entries['translations']['helpDateOfPublication'] = 'Help for date of publication';
-			$entries['translations']['helpDateOfLastRevision'] = 'Help for date of last revision';
-			$entries['translations']['helpSearchResources'] = 'Help for types of resources';
+			$entries['translations']['helpInspireThemes'] = 'According to the EU-INSPIRE Directive one or a few of the 34 ANNEX-themes can be selected.';
+			$entries['translations']['helpSearchText'] = 'Please use one or several search words (separated with a comma). These words will be used for a full text search of title, description and keyword. The more words you use, the less results will be found.';
+			$entries['translations']['helpIsoCategories'] = 'These 20 themes which are defined in norm ISO19115 are adjusted worldwide and should be also given with the description of Geodata to allow for a unique identification. An adequate selection/limitation of outputs is possible.';
+			$entries['translations']['helpCustomCategories'] = 'These categories are common to either the SDI of Rhineland-Palatinate or to the SDI of Germany (GDI-DE).';
+			$entries['translations']['helpOrderBy'] = 'You can select the kind of sorting which will be used for the outputs. „Demand“ puts the most selected outputs first. The „identification number“ is an automaticly generated number which makes a specific identification possible. „Last change“ sort the outputs to actuality so the newest information will come first.';
+			$entries['translations']['helpSpatialFilter'] = 'You can appoint regional constraints. The constraint will be attached with your search word. You will just get outputs, which include the search word and which find oneself in this defined area.';
+			$entries['translations']['helpProvider'] = 'You can find a list of all providers of GeoWebServices. If you ar just looking for Services of one provider, please choose this one or these ones.';
+			$entries['translations']['helpDateOfPublication'] = 'You can enter the date of publication of the describing informations (metadata) or a period in which this publication could have been proceeded. This date constitutes the point of the last update of the describing informations.';
+			$entries['translations']['helpDateOfLastRevision'] = 'Please enter in here the period (or just the first or last date) from which the dates come from or in which they were updated. <b>Attention: This function just works from middle 2011.</b>';
+			$entries['translations']['helpSearchResources'] = 'You can select in this category, which kind of ressource you are looking for. According to this assortment only this type of ressource will be enlisted in the output index.';
 
 			$exceptionGroupTitle = "The title for this group have not been defined till now!";
 



More information about the Mapbender_commits mailing list