[Mapbender-commits] r1766 - trunk/mapbender/http/javascripts
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Mon Oct 29 08:25:10 EDT 2007
Author: christoph
Date: 2007-10-29 08:25:10 -0400 (Mon, 29 Oct 2007)
New Revision: 1766
Modified:
trunk/mapbender/http/javascripts/map_obj.js
Log:
bug fix scalehint
jslinted
Modified: trunk/mapbender/http/javascripts/map_obj.js
===================================================================
--- trunk/mapbender/http/javascripts/map_obj.js 2007-10-29 11:16:25 UTC (rev 1765)
+++ trunk/mapbender/http/javascripts/map_obj.js 2007-10-29 12:25:10 UTC (rev 1766)
@@ -96,11 +96,13 @@
if (!wms_id) {
var id_ok = false;
- while (id_ok == false) {
+ while (id_ok === false) {
wms_id = "a"+Math.round(10000*Math.random());
id_ok = true;
- for (var i=0; i < wms.length && id_ok == true; i++) {
- if (wms_id == wms[i].wms_id) id_ok = false;
+ for (var i=0; i < wms.length && id_ok === true; i++) {
+ if (wms_id == wms[i].wms_id) {
+ id_ok = false;
+ }
}
}
}
@@ -141,7 +143,6 @@
* @type String
*/
wms_const.prototype.getMapRequest = function(mapObj){
- //console.log()
//check visible layers first
var layers = this.getLayers(mapObj);
if(!layers){
@@ -158,17 +159,16 @@
}
rq += "&LAYERS=" + layers.join(",");
- rq += "&STYLES=" + this.getLayerstyles(mapObj).join(",");
+ rq += "&WIDTH=" + mapObj.getWidth();
+ rq += "&HEIGHT=" + mapObj.getHeight();
rq += "&SRS=" + mapObj.getSRS();
rq += "&BBOX=" + mapObj.getExtent();
- rq += "&WIDTH=" + mapObj.getWidth();
- rq += "&HEIGHT=" + mapObj.getHeight();
+ rq += "&STYLES=" + this.getLayerstyles(mapObj).join(",");
rq += "&FORMAT=" + this.gui_wms_mapformat;
- rq += "&BGCOLOR=0xffffff&TRANSPARENT=TRUE";
rq += "&EXCEPTIONS=" + this.gui_wms_exceptionformat;
//Todo: error occurs:
//var throwNotice = new Mb_notice("getMapRequest: " + rq);
- window.console.log("wms.getMapRequest: " + rq);
+ //window.console.log("getMapRequest: " + rq);
return rq;
};
@@ -224,6 +224,7 @@
*/
wms_const.prototype.getLayers = function(mapObj){
+ try {
//visibility of the wms
var wmsIsVisible = (this.gui_wms_visible > 0);
if(!wmsIsVisible){
@@ -231,7 +232,9 @@
}
visibleLayers = [];
for(var i=0; i< this.objLayer.length; i++){
- if(this.objLayer[i].gui_layer_visible === 1 && ! this.objLayer[i].has_childs){
+ var isVisible = (this.objLayer[i].gui_layer_visible === 1);
+ var hasNoChildren = (!this.objLayer[i].has_childs);
+ if (isVisible && hasNoChildren){
if(this.objLayer[i].checkScale(mapObj)){
//console.log("checkLayer: " + this.objLayer[i].layer_name);
visibleLayers.push(this.objLayer[i].layer_name);
@@ -242,9 +245,12 @@
return false;
}
return visibleLayers;
+ }
+ catch (e) {
+ alert(e);
+ }
};
-
/**
* get the actual style of all visible layers
*
@@ -328,13 +334,14 @@
wms_const.prototype.getLegendUrlByGuiLayerStyle = function(layername,guiLayerStyle){
for(var i=0; i< this.objLayer.length; i++){
if(this.objLayer[i].layer_name == layername){
- if(this.objLayer[i].layer_style.length==0){
+ if(this.objLayer[i].layer_style.length === 0){
return false;
}
for(var k=0; k< this.objLayer[i].layer_style.length; k++){
- if(this.objLayer[i].layer_style[k]["name"]==guiLayerStyle){
- if(this.objLayer[i].layer_style[k]["legendurl"]!=''){
- return this.objLayer[i].layer_style[k]["legendurl"];
+ if(this.objLayer[i].layer_style[k].name == guiLayerStyle){
+ var legendUrl = this.objLayer[i].layer_style[k].legendurl;
+ if(legendUrl !=='' && legendUrl !== null && typeof(legendUrl) != 'undefined'){
+ return legendUrl;
}
else {
return false;
@@ -343,6 +350,7 @@
}
}
}
+ return false;
};
/**
@@ -373,8 +381,9 @@
wms_const.prototype.getLayerByLayerPos = function(layer_pos){
for(var i=0;i<this.objLayer.length;i++){
- if(this.objLayer[i].layer_pos == layer_pos)
+ if(this.objLayer[i].layer_pos == layer_pos) {
return this.objLayer[i];
+ }
}
return null;
};
@@ -390,22 +399,28 @@
var i;
var state=-1,value;
for(i = 0; i < this.objLayer.length; i++){
- if(this.objLayer[i].layer_id==layer_id)
+ if(this.objLayer[i].layer_id==layer_id) {
break;
+ }
}
//go throught sublayers
for(var j = i+1; j < this.objLayer.length; j++){
- if(this.objLayer[i].parent_layer == this.objLayer[j].parent_layer)
+ if(this.objLayer[i].parent_layer == this.objLayer[j].parent_layer) {
break;
- if(type == "visible")
+ }
+ if(type == "visible") {
value = this.objLayer[j].gui_layer_visible;
- else if(type == "querylayer")
+ }
+ else if(type == "querylayer") {
value = this.objLayer[j].gui_layer_querylayer;
- if(state == -1)
+ }
+ if(state == -1) {
state = value;
- if(state != value)
+ }
+ if(state != value) {
return -1;
+ }
}
return state;
@@ -420,18 +435,22 @@
wms_const.prototype.handleLayer = function(layer_name, type, value){
var i;
for(i = 0; i < this.objLayer.length; i++){
- if(this.objLayer[i].layer_name==layer_name)
+ if(this.objLayer[i].layer_name==layer_name) {
break;
+ }
}
//Set visibility/queryability of Layer and Sublayers
for(var j = i; j < this.objLayer.length; j++){
- if(i != j && this.objLayer[i].layer_parent == this.objLayer[j].layer_parent)
+ if (i != j && this.objLayer[i].layer_parent == this.objLayer[j].layer_parent) {
break;
- if(type == "visible")
+ }
+ if(type == "visible") {
this.objLayer[j].gui_layer_visible = parseInt(value);
- else if(type=="querylayer")
+ }
+ else if(type=="querylayer") {
this.objLayer[j].gui_layer_querylayer = parseInt(value);
+ }
}
//Update visibility/queryability of parent layer
@@ -439,10 +458,12 @@
if(parentLayer){
var state = this.getSublayerState(parentLayer.layer_id, type);
if(state!=-1){
- if(type == "visible")
+ if(type == "visible") {
this.objLayer[j].gui_layer_visible = state;
- else if(type=="querylayer")
+ }
+ else if(type=="querylayer") {
this.objLayer[j].gui_layer_querylayer = state;
+ }
}
}
};
@@ -467,8 +488,9 @@
break;
}
}
- if(iLayer==-1)
+ if(iLayer==-1) {
return false;
+ }
var upperLayer = -1;
var lowerLayer = -1;
@@ -530,7 +552,7 @@
}
return true;
-}
+};
function wms_add_data_type_format(datatype,dataformat){
var insertDataFormat = true;
@@ -539,7 +561,7 @@
insertDataFormat = false;
}
}
- if (insertDataFormat == true) {
+ if (insertDataFormat === true) {
wms[wms.length-1].data_type[wms[wms.length-1].data_type.length] = datatype;
wms[wms.length-1].data_format[wms[wms.length-1].data_format.length] = dataformat;
}
@@ -554,11 +576,11 @@
function wms_addLayerStyle(styleName, styleTitle, count, layerCount, styleLegendUrl, styleLegendUrlFormat){
var currentLayer = wms[wms.length-1].objLayer[layerCount];
if (currentLayer) {
- currentLayer.layer_style[count] = [];
- currentLayer.layer_style[count]["name"] = styleName;
- currentLayer.layer_style[count]["title"] = styleTitle;
- currentLayer.layer_style[count]["legendurl"] = styleLegendUrl;
- currentLayer.layer_style[count]["legendurlformat"] = styleLegendUrlFormat;
+ currentLayer.layer_style[count] = {};
+ currentLayer.layer_style[count].name = styleName;
+ currentLayer.layer_style[count].title = styleTitle;
+ currentLayer.layer_style[count].legendurl = styleLegendUrl;
+ currentLayer.layer_style[count].legendurlformat = styleLegendUrlFormat;
}
}
//TODO: add layerstyle handling....
@@ -607,19 +629,20 @@
parseInt(gui_layer_maxscale),
gui_layer_wfs_featuretype );
var parentLayer = wms[wms.length-1].getLayerByLayerPos(parseInt(layer_parent));
- if(parentLayer)
+ if(parentLayer) {
parentLayer.has_childs = true;
+ }
}
function layer_addEpsg(epsg,minx,miny,maxx,maxy){
var j = wms[wms.length-1].objLayer.length-1;
var k = wms[wms.length-1].objLayer[j].layer_epsg.length;
var currentLayer = wms[wms.length-1].objLayer[j];
- currentLayer.layer_epsg[k]=[];
- currentLayer.layer_epsg[k]["epsg"]=epsg;
- currentLayer.layer_epsg[k]["minx"]=minx;
- currentLayer.layer_epsg[k]["miny"]=miny;
- currentLayer.layer_epsg[k]["maxx"]=maxx;
- currentLayer.layer_epsg[k]["maxy"]=maxy;
+ currentLayer.layer_epsg[k]={};
+ currentLayer.layer_epsg[k].epsg = epsg;
+ currentLayer.layer_epsg[k].minx = minx;
+ currentLayer.layer_epsg[k].miny = miny;
+ currentLayer.layer_epsg[k].maxx = maxx;
+ currentLayer.layer_epsg[k].maxy = maxy;
}
function wms_layer(
layer_parent,
@@ -664,7 +687,7 @@
this.gui_layer_maxscale = gui_layer_maxscale;
this.gui_layer_style = gui_layer_style;
this.gui_layer_wfs_featuretype = gui_layer_wfs_featuretype;
- this.gui_layer_style;
+ this.gui_layer_style = null;
this.has_childs = false;
this.layer_style = [];
wms_layer_count++;
@@ -677,22 +700,17 @@
* @type boolean
*/
wms_layer.prototype.checkScale = function(mapObj){
- //Todo!
- if(mapObj.getSRS() == "EPSG:4326"){
- return true;
- }
-
- var minScale = this.gui_layer_minscale;
- var maxScale = this.gui_layer_maxscale;
- var currentScale = mapObj.getScale();
+ var minScale = parseInt(this.gui_layer_minscale);
+ var maxScale = parseInt(this.gui_layer_maxscale);
+ var currentScale = parseInt(mapObj.getScale());
if(minScale === 0 && maxScale === 0){
return true;
}
- if((minScale != 0 && minScale > currentScale) || (maxScale != 0 && maxScale < currentScale)){
+ if(minScale > currentScale || (maxScale !== 0 && maxScale < currentScale)) {
return false;
}
return true;
-}
+};
/**
* set visibility of the layer
* @param boolean visible visibility on/off
@@ -700,7 +718,7 @@
wms_layer.prototype.setVisible = function(visible){
this.gui_layer_visible = parseInt(visible);
//console.log("setVisible(%i) for Layer %s",visible, this.layer_name);
-}
+};
/**
* set queryability of the layer
More information about the Mapbender_commits
mailing list