[Mapbender-commits] r9070 - in trunk/mapbender: http/plugins resources/db/pgsql/UTF-8/update
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Thu Sep 11 02:12:44 PDT 2014
Author: verenadiewald
Date: 2014-09-11 02:12:44 -0700 (Thu, 11 Sep 2014)
New Revision: 9070
Modified:
trunk/mapbender/http/plugins/mb_print.php
trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql
Log:
added configuration option "reverseLegend" for printPDF
Modified: trunk/mapbender/http/plugins/mb_print.php
===================================================================
--- trunk/mapbender/http/plugins/mb_print.php 2014-09-10 16:06:40 UTC (rev 9069)
+++ trunk/mapbender/http/plugins/mb_print.php 2014-09-11 09:12:44 UTC (rev 9070)
@@ -473,7 +473,46 @@
scale = parseInt(scale, 10);
var legendUrlArray = [];
+ var legendUrlArrayReverse = [];
f.overview_url.value = '';
+
+ if(options.reverseLegend == 'true') {
+ for(var i=mb_mapObj[ind].wms.length-1; i>=0; i--){
+ var currentWms = mb_mapObj[ind].wms[i];
+ if(mb_mapObj[ind].wms[i].gui_wms_visible > 0){
+ if (mb_mapObj[ind].wms[i].mapURL != false && mb_mapObj[ind].wms[i].mapURL != 'false' && mb_mapObj[ind].wms[i].mapURL != ''){
+ var wmsLegendObj = [];
+
+ var layers = currentWms.getLayers(mb_mapObj[ind], scale);
+ for (var j = 0; j < layers.length; j++) {
+ var currentLayer = currentWms.getLayerByLayerName(layers[j]);
+ // TODO: add only visible layers
+ var isVisible = (currentLayer.gui_layer_visible === 1);
+ var hasNoChildren = (!currentLayer.has_childs);
+ if (isVisible && hasNoChildren){
+ var layerLegendObj = {};
+ layerLegendObj.name = currentLayer.layer_name;
+ layerLegendObj.title = currentWms.getTitleByLayerName(currentLayer.layer_name);
+ var layerStyle = currentWms.getCurrentStyleByLayerName(currentLayer.layer_name);
+ if (layerStyle === false || layerStyle === "") {
+ layerStyle = "default";
+ }
+ layerLegendObj.legendUrl = currentWms.getLegendUrlByGuiLayerStyle(currentLayer.layer_name, layerStyle);
+ if (layerLegendObj.legendUrl !== false) {
+ wmsLegendObj.push(layerLegendObj);
+ }
+ }
+ }
+ if (wmsLegendObj.length > 0) {
+ var tmpObj = {};
+ tmpObj[currentWms.wms_currentTitle] = wmsLegendObj;
+ legendUrlArrayReverse.push(tmpObj);
+ }
+ }
+ }
+ }
+ }
+
for(var i=0; i < mb_mapObj[ind].wms.length; i++){
var currentWms = mb_mapObj[ind].wms[i];
if(mb_mapObj[ind].wms[i].gui_wms_visible > 0){
@@ -515,12 +554,17 @@
if (wmsLegendObj.length > 0) {
var tmpObj = {};
tmpObj[currentWms.wms_currentTitle] = wmsLegendObj;
- legendUrlArray.push(tmpObj);
-
+ if(options.reverseLegend == 'true') {
+ legendUrlArray = legendUrlArrayReverse;
+ }
+ else {
+ legendUrlArray.push(tmpObj);
+ }
}
}
}
}
+
var legendUrlArrayJson = $.toJSON(legendUrlArray);
updateFormField(formData, "legend_url", legendUrlArrayJson);
updateFormField(formData, "map_url", f.map_url.value);
Modified: trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql
===================================================================
--- trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql 2014-09-10 16:06:40 UTC (rev 9069)
+++ trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql 2014-09-11 09:12:44 UTC (rev 9070)
@@ -525,3 +525,12 @@
ON mb_proxy_log
USING btree
(proxy_log_timestamp);
+
+-- printPDF: new element_var reverseLegend for element printPDF
+INSERT INTO gui_element_vars(fkey_gui_id, fkey_e_id, var_name, var_value, context, var_type)
+SELECT gui_element.fkey_gui_id, 'printPDF', 'reverseLegend', 'false', 'define whether the legend should be printed in reverse order' ,'var'
+from gui_element
+WHERE
+gui_element.e_id = 'printPDF' AND
+gui_element.fkey_gui_id
+NOT IN (SELECT fkey_gui_id FROM gui_element_vars WHERE fkey_e_id = 'printPDF' AND var_name = 'reverseLegend');
More information about the Mapbender_commits
mailing list