[Mapbender-commits] r8204 - trunk/mapbender/http/classes

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Thu Nov 17 03:55:35 EST 2011


Author: armin11
Date: 2011-11-17 00:55:35 -0800 (Thu, 17 Nov 2011)
New Revision: 8204

Modified:
   trunk/mapbender/http/classes/class_wms.php
Log:
Bugfix for new layer - show the right layer_id in the feeds and on twitter

Modified: trunk/mapbender/http/classes/class_wms.php
===================================================================
--- trunk/mapbender/http/classes/class_wms.php	2011-11-17 07:30:30 UTC (rev 8203)
+++ trunk/mapbender/http/classes/class_wms.php	2011-11-17 08:55:35 UTC (rev 8204)
@@ -1673,7 +1673,7 @@
 			//new WMS
 			$twitter_wms = new twitter();
 			//combine text for tweet
-			$tweetText = "NEW WMS: " . $this->wms_title." (".$myWMS.")".self::getWmsMetadataUrl($myWMS).$this->wms_abstract;
+			$tweetText = "NEW WMS: " . $this->wms_title." (".$myWMS.") ".self::getWmsMetadataUrl($myWMS)." ".$this->wms_abstract;
 			//reduce to 140 chars
 			$tweetText = substr($tweetText, 0, 139);
 			//push to twitter
@@ -1732,7 +1732,42 @@
 			#$this->insertLayerDataUrls($i);TODO: in the spec 1.3.0 the schema defines a 1:n relation, but in the table there is only one link possible - maybe we need only this one link
 			# insert metadataurls
 			$this->insertLayerMetadataUrls($i);
-		}
+
+
+			//actualize georss and twitter
+			$currentLayer = $this->objLayer[$i];
+			$geoRssItemNewLayer = new GeoRssItem();
+			if (!is_null($geoRss)) {
+				$geoRssItemNewLayer->setTitle("NEW LAYER: " . $currentLayer->layer_title." (".$currentLayer->db_id.")");
+				$geoRssItemNewLayer->setDescription($currentLayer->layer_abstract);
+				$geoRssItemNewLayer->setUrl(self::getLayerMetadataUrl($currentLayer->db_id));
+				$geoRssItemNewLayer->setPubDate(self::rssDate());
+				for ($j = 0; $j < count($currentLayer->layer_epsg); $j++) {
+					$currentEpsg = $currentLayer->layer_epsg[$j];
+					if ($currentEpsg["epsg"] === "EPSG:4326") {
+						$currentBbox = new Mapbender_bbox(
+							$currentEpsg["minx"],
+							$currentEpsg["miny"],
+							$currentEpsg["maxx"],
+							$currentEpsg["maxy"],
+							$currentEpsg["epsg"]
+						);
+						$geoRssItemNewLayer->setBbox($currentBbox);
+						break;
+					}
+				}
+				$geoRss->appendTop($geoRssItemNewLayer);
+			}
+			if (TWITTER_NEWS == true) {
+				//new LAYER
+				$twitter_layer = new twitter();
+				//combine text for tweet
+				$tweetText = "NEW LAYER: " . $currentLayer->layer_title." (".$currentLayer->db_id.") ".self::getLayerMetadataUrl($currentLayer->db_id)." ".$currentLayer->layer_abstract;
+				//reduce to 140 chars
+				$tweetText = substr($tweetText, 0, 139);
+				//push to twitter
+				$result = $twitter_layer->postTweet($tweetText);
+			}
 	}
 	function updateLayer($i,$myWMS){
 		$sql = "SELECT layer_id FROM layer WHERE fkey_wms_id = $1 AND layer_name = $2";
@@ -2657,8 +2692,8 @@
 				}
 			}
 			$geoRss->appendTop($geoRssItem);
-
-			foreach ($newLayerArray as $newLayer) {
+//the following will be done by insert layer - cause we have no id till now!
+/*			foreach ($newLayerArray as $newLayer) {
 				$currentLayer = $this->objLayer[$newLayer];
 				$geoRssItemNewLayer = new GeoRssItem();
 				$geoRssItemNewLayer->setTitle("NEW LAYER: " . $currentLayer->layer_title." (".$currentLayer->layer_id.")");
@@ -2680,7 +2715,7 @@
 					}
 				}
 				$geoRss->appendTop($geoRssItemNewLayer);
-			}
+			} */
 			foreach ($oldLayerNameArray as $oldLayer) {
 				$geoRssItemOldLayer = new GeoRssItem();
 				$geoRssItemOldLayer->setTitle("DELETED LAYER: " . $oldLayer['title']." (".$oldLayer['id'].")");
@@ -2697,22 +2732,22 @@
 			//updated WMS
 			$twitter_wms = new twitter();
 			//combine text for tweet
-			$tweetText = "UPDATED WMS: " . $this->wms_title." (".$myWMS.")".self::getWmsMetadataUrl($myWMS).$this->wms_abstract;
+			$tweetText = "UPDATED WMS: " . $this->wms_title." (".$myWMS.") ".self::getWmsMetadataUrl($myWMS)." ".$this->wms_abstract;
 			//reduce to 140 chars
 			$tweetText = substr($tweetText, 0, 139);
 			//push to twitter
 			$result = $twitter_wms->postTweet($tweetText);
 			//for each layer
-			foreach ($newLayerArray as $newLayer) {
+			/*foreach ($newLayerArray as $newLayer) {
 				$twitter_layer = new twitter();
-				$tweetText = "NEW LAYER: " . $currentLayer->layer_title." (".$currentLayer->layer_id.")".self::getLayerMetadataUrl($currentLayer->layer_id)."".$currentLayer->layer_abstract;
+				$tweetText = "NEW LAYER: " . $currentLayer->layer_title." (".$currentLayer->layer_id.") ".self::getLayerMetadataUrl($currentLayer->layer_id)." ".$currentLayer->layer_abstract;
 				//reduce to 140 chars
 				$tweetText = substr($tweetText, 0, 139);
 				$result = $twitter_layer->postTweet($tweetText);
-			}
+			}*/
 			foreach ($oldLayerNameArray as $oldLayer) {
 				$twitter_layer = new twitter();
-				$tweetText = "DELETED LAYER: " . $oldLayer['title']." (".$oldLayer['id'].")".self::getLayerMetadataUrl($currentLayer->layer_id)."".$currentLayer->layer_abstract;
+				$tweetText = "DELETED LAYER: " . $oldLayer['title']." (".$oldLayer['id'].") ".self::getLayerMetadataUrl($currentLayer->layer_id)." ".$currentLayer->layer_abstract;
 				//reduce to 140 chars
 				$tweetText = substr($tweetText, 0, 139);
 				$result = $twitter_layer->postTweet($tweetText);



More information about the Mapbender_commits mailing list