[Mapbender-commits] r4945 - in trunk/mapbender/http: javascripts php

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Thu Nov 5 09:14:26 EST 2009


Author: christoph
Date: 2009-11-05 09:14:25 -0500 (Thu, 05 Nov 2009)
New Revision: 4945

Modified:
   trunk/mapbender/http/javascripts/mod_loadwmc.js
   trunk/mapbender/http/php/mod_loadwmc_server.php
Log:
load wmc from file

Modified: trunk/mapbender/http/javascripts/mod_loadwmc.js
===================================================================
--- trunk/mapbender/http/javascripts/mod_loadwmc.js	2009-11-05 13:51:38 UTC (rev 4944)
+++ trunk/mapbender/http/javascripts/mod_loadwmc.js	2009-11-05 14:14:25 UTC (rev 4945)
@@ -239,15 +239,23 @@
 	
 	$("#" + options.id + "_wmcUpload").upload({
 		callback: function (filename, success, message) {
-			prompt((success ? "Success." : "Failed!") + " " + message, filename);
+			if (!success) {
+				new Mb_exception(message);
+				alert(message);
+			}
+			executeJavaScript({
+				method: "loadWmcFromFile",
+				parameters: {
+					filename: filename
+				},
+				message: "WMC has been loaded successfully."
+			});
 		}
 	});
 	wmcTable = $("#" + options.id + "_wmclist_table").dataTable({
 		"bPaginate": true,
 		"bJQueryUI": true
 	});
-	console.log(wmcTable);
-
 }
 
 function executeJavaScript (args) {

Modified: trunk/mapbender/http/php/mod_loadwmc_server.php
===================================================================
--- trunk/mapbender/http/php/mod_loadwmc_server.php	2009-11-05 13:51:38 UTC (rev 4944)
+++ trunk/mapbender/http/php/mod_loadwmc_server.php	2009-11-05 14:14:25 UTC (rev 4945)
@@ -73,6 +73,31 @@
 		}
 	break;
 
+	case 'loadWmcFromFile':
+		$serverFilename = $ajaxResponse->getParameter("filename");
+		$wmc = new wmc();
+		$wmcDoc = file_get_contents(TMPDIR . "/" . $serverFilename);
+		if (!$wmcDoc) {
+			$ajaxResponse->setMessage(_mb("WMC could not be loaded."));
+			$ajaxResponse->setSuccess(false);
+		}
+		$wmc->createFromXml($wmcDoc);
+
+		$updatedWMC = $wmc->updateUrlsFromDb();
+        $wmc->createFromXml($updatedWMC);
+		
+        $jsArray = $wmc->toJavaScript();
+		if ($jsArray) {
+			$resultObj["javascript"] = $jsArray;
+			$ajaxResponse->setResult($resultObj); 
+			$ajaxResponse->setSuccess(true);
+		}
+		else {
+			$ajaxResponse->setMessage(_mb("WMC could not be loaded."));
+			$ajaxResponse->setSuccess(false);
+		}
+	break;
+
 	// merges data with WMC and loads it (returns array of JS code)
 	case "mergeWmc":
 		// generate a WMC for the current client state



More information about the Mapbender_commits mailing list