[Mapbender-commits] r6059 - trunk/mapbender/http/plugins
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Mon May 3 06:28:45 EDT 2010
Author: christoph
Date: 2010-05-03 06:28:45 -0400 (Mon, 03 May 2010)
New Revision: 6059
Modified:
trunk/mapbender/http/plugins/mb_metadata_layer.js
trunk/mapbender/http/plugins/mb_metadata_server.php
trunk/mapbender/http/plugins/mb_pane.js
Log:
Modified: trunk/mapbender/http/plugins/mb_metadata_layer.js
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_layer.js 2010-05-03 10:28:08 UTC (rev 6058)
+++ trunk/mapbender/http/plugins/mb_metadata_layer.js 2010-05-03 10:28:45 UTC (rev 6059)
@@ -36,14 +36,31 @@
initialized: new Mapbender.Event()
};
+ var initialized = function (obj, result, message) {
+ that.events.initialized.trigger({
+ wmsId: obj
+ });
+ that.events.initialized.done = true;
+ if (!result) {
+ return;
+ }
+ };
+
this.init = function (obj) {
if (!that.events.initialized.done) {
$metadataForm.load("../plugins/mb_metadata_layer.html", function () {
validator = $metadataForm.validate();
- that.events.initialized.trigger({
- wmsId: obj
+
+ var req = new Mapbender.Ajax.Request({
+ url: "../plugins/mb_metadata_server.php",
+ method: "getCategories",
+ parameters: {
+ "id": obj
+ },
+ callback: initialized
});
- that.events.initialized.done = true;
+ req.send();
+
});
return;
}
Modified: trunk/mapbender/http/plugins/mb_metadata_server.php
===================================================================
--- trunk/mapbender/http/plugins/mb_metadata_server.php 2010-05-03 10:28:08 UTC (rev 6058)
+++ trunk/mapbender/http/plugins/mb_metadata_server.php 2010-05-03 10:28:45 UTC (rev 6059)
@@ -24,6 +24,19 @@
return $wmsIdArray;
}
+function getLayer ($layerId = null) {
+ $user = new User(Mapbender::session()->get("mb_user_id"));
+ $wmsIdArray = $user->getOwnedWms();
+ if (!is_array($wmsIdArray) || count($wmsIdArray) === 0) {
+ abort(_mb("No metadata sets available."));
+ }
+ $wmsId = wms::getWmsIdByLayerId($layerId);
+ if (is_null($wmsId) || !in_array($wmsId, $wmsIdArray)) {
+ abort(_mb("You are not allowed to access this WMS."));
+ }
+ return;
+}
+
switch ($ajaxResponse->getMethod()) {
case "getWms" :
$wmsIdArray = getWms();
@@ -71,14 +84,80 @@
$resultObj = array();
while ($row = db_fetch_assoc($res)) {
-
- $resultObj = $row;
+ foreach ($row as $key => $value) {
+ $resultObj["wms:".$key] = $value;
+ }
}
$ajaxResponse->setResult($resultObj);
$ajaxResponse->setSuccess(true);
break;
+
+ case "getCategories":
+ $resultObj = array(
+ "inspire" => array(),
+ "custom" => array()
+ );
+
+
+ $sql = "SELECT inspire_category_id, inspire_category_code_en FROM inspire_category";
+ $res = db_query($sql);
+ while ($row = db_fetch_row($res)) {
+ $resultObj["inspire"][]= $row;
+ }
+
+ $sql = "SELECT custom_category_id, custom_category_code_en FROM custom_category";
+ $res = db_query($sql);
+ $resultObj = array();
+ while ($row = db_fetch_row($res)) {
+ $resultObj["custom"][]= $row;
+ }
+ $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;
+ case "getLayerKeywords" :
+ $layerId = $ajaxResponse->getParameter("id");
+ getLayer($layerId);
+
+ $sql = <<<SQL
+
+SELECT keyword FROM keyword, layer_keyword
+WHERE keyword_id = fkey_keyword_id AND fkey_layer_id = $layerId
+
+SQL;
+ $res = db_query($sql);
+
+ $resultObj = array();
+ while ($row = db_fetch_assoc($res)) {
+ foreach ($row as $key => $value) {
+ $resultObj["keyword:".$key] = $value;
+ }
+ }
+ $ajaxResponse->setResult($resultObj);
+ $ajaxResponse->setSuccess(true);
+ break;
case "getLayerByWms" :
$wmsId = $ajaxResponse->getParameter("id");
// getWms($wmsId);
Modified: trunk/mapbender/http/plugins/mb_pane.js
===================================================================
--- trunk/mapbender/http/plugins/mb_pane.js 2010-05-03 10:28:08 UTC (rev 6058)
+++ trunk/mapbender/http/plugins/mb_pane.js 2010-05-03 10:28:45 UTC (rev 6059)
@@ -25,12 +25,16 @@
$(element).mapbender("setDimensions", $(element).innerWidth(), $(element).innerHeight());
}
catch (e) {
- console.log(e);
+// console.log(e);
}
}
}, o.layoutOptions);
var layout = $pane.layout(myOptions);
layout.resizeAll();
+
+ this.resizeAll = function () {
+ layout.resizeAll();
+ };
};
$pane.mapbender(new PaneApi(options));
More information about the Mapbender_commits
mailing list