[Mapbender-commits] r9520 - in trunk/mapbender/http: html javascripts php plugins
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Fri Jun 10 03:30:18 PDT 2016
Author: pschmidt
Date: 2016-06-10 03:30:18 -0700 (Fri, 10 Jun 2016)
New Revision: 9520
Added:
trunk/mapbender/http/plugins/mod_jsonAutocompleteGazetteerOL.php
Modified:
trunk/mapbender/http/html/mod_treefolderPlain.php
trunk/mapbender/http/javascripts/mod_addWMS.php
trunk/mapbender/http/javascripts/mod_addWMSgeneralFunctions.js
trunk/mapbender/http/javascripts/mod_gazetteerSQL_client.php
trunk/mapbender/http/php/mod_createJSObjFromXML.php
trunk/mapbender/http/plugins/kmlTree.php
trunk/mapbender/http/plugins/mb_digitize_widget.php
Log:
DE:
Prompt-Box in HTML-Box umge?\195?\164ndert;URL-Pr?\195?\188fung eingebaut; Paramter werden drangeh?\195?\164ngt, wenn sie fehlen; Geladenes WMS ist direkt aktiv
Modified: trunk/mapbender/http/html/mod_treefolderPlain.php
===================================================================
--- trunk/mapbender/http/html/mod_treefolderPlain.php 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/html/mod_treefolderPlain.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -27,6 +27,7 @@
<?php
echo "mod_treeGDE_map = '".$e_target[0]."';";
?>
+// <script language="JavaScript">
var msgObj = {};
msgObj.tooltipHandleWms = '<?php echo _mb("(De)activate this service");?>';
msgObj.tooltipLayerVisible = '<?php echo _mb("Toggles the visibility of this service");?>';
Modified: trunk/mapbender/http/javascripts/mod_addWMS.php
===================================================================
--- trunk/mapbender/http/javascripts/mod_addWMS.php 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/javascripts/mod_addWMS.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -17,6 +17,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
?>
+// <script language="JavaScript">
var mod_addWMS_data = options.requires;
var mod_addWMS_target1 = options.target[0];
var mod_addWMS_target2 = options.target[1];
@@ -32,18 +33,64 @@
this.src = options.src;
}
});
+//var mod = new function(){
+// var title = "URL:";
+//
+// this.addWMS = function(url){
+// console.log(title + url);
+// }
+//};
-function mod_addWMS(){
- var load = prompt("Capabilities - URL:","");
- if(load){
- //mod_addWMS_load(base64_encode(load));
- mod_addWMS_load((load));
- //mod_addWMS_load(base64_encode('http://www.google.de'));
- }
+function validateUrl(value){
+ return /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900
-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
}
+function paramterbuild(url){
+ if(url.indexOf("?") == -1){
+ url += '?';
+ }
+ //if (url.indexOf("VERSION=") == -1) {
+ // url += '&VERSION=9.9.9';
+ //}
+ if(url.indexOf("REQUEST=") == -1){
+ url += '&REQUEST=GetCapabilities';
+ }
+ if (url.indexOf("SERVICE=") == -1){
+ url += '&SERVICE=WMS';
+ }
+
+ return url;
+}
+
+function mod_addWMS() {
+ var dialogContainer = $("<form/>")
+ var input = $("<input type='text' name='test'/>");
+ var label = "<div>Capabilities - URL:</div>";
+ var submitButton = $("<input type='submit' title='Speichern'/>");
+
+ submitButton.click(function ( event ) {
+ dialogContainer.dialog("close");
+ event.preventDefault();
+ var url = input.val().trim();
+ if (validateUrl(url)) {
+ mod_addWMS_load(paramterbuild(url));
+ } else {
+ input.css({border: '1px solid #FF435C'});
+ //input.addClass()
+ //debugger;
+ dialogContainer.dialog({title: "Es handelt sich nicht um eine URL."});
+ }
+ });
+
+ dialogContainer.append(label);
+ dialogContainer.append(input);
+ dialogContainer.append(submitButton);
+
+ dialogContainer.dialog({title: "WebMapService hinzufügen"});
+}
+
function base64_encode(data) {
- // Encodes string using MIME base64 algorithm
+ // Encodes string using MIME base64 algorithm
//
// version: 909.322
// discuss at: http://phpjs.org/functions/base64_encode
@@ -61,34 +108,34 @@
//if (typeof this.window['atob'] == 'function') {
// return atob(data);
//}
-
+
var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
var o1, o2, o3, h1, h2, h3, h4, bits, i = 0, ac = 0, enc="", tmp_arr = [];
-
+
if (!data) {
return data;
}
-
+
data = utf8_encode(data+'');
-
+
do { // pack three octets into four hexets
o1 = data.charCodeAt(i++);
o2 = data.charCodeAt(i++);
o3 = data.charCodeAt(i++);
-
+
bits = o1<<16 | o2<<8 | o3;
-
+
h1 = bits>>18 & 0x3f;
h2 = bits>>12 & 0x3f;
h3 = bits>>6 & 0x3f;
h4 = bits & 0x3f;
-
+
// use hexets to index into b64, and append result to encoded string
tmp_arr[ac++] = b64.charAt(h1) + b64.charAt(h2) + b64.charAt(h3) + b64.charAt(h4);
} while (i < data.length);
-
+
enc = tmp_arr.join('');
-
+
switch (data.length % 3) {
case 1:
enc = enc.slice(0, -2) + '==';
@@ -97,12 +144,12 @@
enc = enc.slice(0, -1) + '=';
break;
}
-
+
return enc;
}
function utf8_encode ( argString ) {
- // Encodes an ISO-8859-1 string to UTF-8
+ // Encodes an ISO-8859-1 string to UTF-8
//
// version: 909.322
// discuss at: http://phpjs.org/functions/utf8_encode
@@ -117,17 +164,17 @@
// * example 1: utf8_encode('Kevin van Zonneveld');
// * returns 1: 'Kevin van Zonneveld'
var string = (argString+''); // .replace(/\r\n/g, "\n").replace(/\r/g, "\n");
-
+
var utftext = "";
var start, end;
var stringl = 0;
-
+
start = end = 0;
stringl = string.length;
for (var n = 0; n < stringl; n++) {
var c1 = string.charCodeAt(n);
var enc = null;
-
+
if (c1 < 128) {
end++;
} else if (c1 > 127 && c1 < 2048) {
@@ -143,11 +190,11 @@
start = end = n+1;
}
}
-
+
if (end > start) {
utftext += string.substring(start, string.length);
}
-
+
return utftext;
}
Modified: trunk/mapbender/http/javascripts/mod_addWMSgeneralFunctions.js
===================================================================
--- trunk/mapbender/http/javascripts/mod_addWMSgeneralFunctions.js 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/javascripts/mod_addWMSgeneralFunctions.js 2016-06-10 10:30:18 UTC (rev 9520)
@@ -1,217 +1,232 @@
-function mb_mapObjaddWMS(obj){
- var cnt_layers = 0;
- var cnt_querylayers = 0;
- var styles = "";
- var layers = "";
- var querylayers = "";
- var ind = getMapObjIndexByName(obj);
- //is the id valid?
+function mb_mapObjaddWMS(obj) {
+ var cnt_layers = 0;
+ var cnt_querylayers = 0;
+ var styles = "";
+ var layers = "";
+ var querylayers = "";
+ var ind = getMapObjIndexByName(obj);
+ //is the id valid?
// for( var i=0; i<(wms.length-1); i++){
// if(parseInt(wms[i].wms_id, 10) >= parseInt(wms[wms.length-1].wms_id, 10)){
// wms[wms.length-1].wms_id = parseInt(mb_mapObj[ind].wms[i].wms_id, 10) + 1;
// }
// }
-
-
- mb_mapObj[ind].wms[mb_mapObj[ind].wms.length] = wms[wms.length-1];
- mb_mapObj[ind].layers[mb_mapObj[ind].layers.length] = layers;
- mb_mapObj[ind].styles[mb_mapObj[ind].styles.length] = styles;
- mb_mapObj[ind].querylayers[mb_mapObj[ind].querylayers.length] = querylayers;
- var extArray = mb_mapObj[ind].extent.toString().split(",");
- var newExt = new Extent(
- parseFloat(extArray[0]),
- parseFloat(extArray[1]),
- parseFloat(extArray[2]),
- parseFloat(extArray[3])
- );
- mb_mapObj[ind].setSrs({
- srs: mb_mapObj[ind].epsg,
- extent: new Extent(
- parseFloat(newExt.minx),
- parseFloat(newExt.miny),
- parseFloat(newExt.maxx),
- parseFloat(newExt.maxy)
- ),
- displayWarning: true
- });
- return true;
+ mb_mapObj[ind].wms[mb_mapObj[ind].wms.length] = wms[wms.length - 1];
+ mb_mapObj[ind].layers[mb_mapObj[ind].layers.length] = layers;
+ mb_mapObj[ind].styles[mb_mapObj[ind].styles.length] = styles;
+ mb_mapObj[ind].querylayers[mb_mapObj[ind].querylayers.length] = querylayers;
+ var extArray = mb_mapObj[ind].extent.toString().split(",");
+ var newExt = new Extent(
+ parseFloat(extArray[0]),
+ parseFloat(extArray[1]),
+ parseFloat(extArray[2]),
+ parseFloat(extArray[3])
+ );
+ mb_mapObj[ind].setSrs({
+ srs: mb_mapObj[ind].epsg,
+ extent: new Extent(
+ parseFloat(newExt.minx),
+ parseFloat(newExt.miny),
+ parseFloat(newExt.maxx),
+ parseFloat(newExt.maxy)
+ ),
+ displayWarning: true
+ });
+ return true;
}
-
function mod_addWMS_load(caps, param) {
-
- var options = {
- caps: caps,
- noHtml: 1
- };
-
- options[mb_session_name] = mb_nr;
-
- $.get("../php/mod_createJSObjFromXML.php", options, function (js, status) {
- var opt = {};
-
- if (typeof param !== "undefined") {
- opt = {
- callback: typeof param.callback === "function" ? param.callback : function(){
- },
- options: {
- visible: typeof param.visible === "number" ? param.visible : 0,
- zoomToExtent: typeof param.zoomToExtent === "number" ? param.zoomToExtent : 0
- }
- };
- }
- mod_addWms_general(js, opt);
- });
-
+ var options = {
+ caps: caps,
+ noHtml: 1
+ };
+ options[mb_session_name] = mb_nr;
+ $.get("../php/mod_createJSObjFromXML.php", options, function (js, status) {
+ var opt = {};
+ if (typeof param !== "undefined") {
+ opt = {
+ callback: typeof param.callback === "function" ? param.callback : function () {
+ },
+ options: {
+ visible: typeof param.visible === "number" ? param.visible : 0,
+ zoomToExtent: typeof param.zoomToExtent === "number" ? param.zoomToExtent : 0
+ }
+ };
+ }
+ mod_addWms_general(js, opt);
+ });
}
-
-function mod_addLayer_load(caps, layer_name, param){
- var options = {
- caps: caps,
- layerName: layer_name,
- noHtml: 1
- };
-
- options[mb_session_name] = mb_nr;
-
- $.get("../php/mod_createJSLayerObjFromXML.php", options, function (js, status) {
-
- var opt = {};
-
- if (typeof param !== "undefined") {
- opt = {
- callback: typeof param.callback === "function" ? param.callback : function () {},
- options: {
- visible: typeof param.visible === "number" ? param.visible : 0,
- zoomToExtent: typeof param.zoomToExtent === "number" ?
- param.zoomToExtent : 0
- }
- };
- }
- mod_addWms_general(js, opt);
- });
+function mod_addLayer_load(caps, layer_name, param) {
+ var options = {
+ caps: caps,
+ layerName: layer_name,
+ noHtml: 1
+ };
+ options[mb_session_name] = mb_nr;
+ $.get("../php/mod_createJSLayerObjFromXML.php", options, function (js, status) {
+ var opt = {};
+ if (typeof param !== "undefined") {
+ opt = {
+ callback: typeof param.callback === "function" ? param.callback : function () {
+ },
+ options: {
+ visible: typeof param.visible === "number" ? param.visible : 0,
+ zoomToExtent: typeof param.zoomToExtent === "number" ?
+ param.zoomToExtent : 0
+ }
+ };
+ }
+ mod_addWms_general(js, opt);
+ });
}
-
-function mod_addWMSById_load(gui_id, wms_id){
- window.frames.loadData.document.location.href = "../php/mod_createJSObjFromDBByWMS.php?wms_id=" + wms_id + "&gui_id=" + gui_id;
+function mod_addWMSById_load(gui_id, wms_id) {
+ window.frames.loadData.document.location.href = "../php/mod_createJSObjFromDBByWMS.php?wms_id=" + wms_id + "&gui_id=" + gui_id;
}
-
+// prüfen ob es sich um eine Adresse handelt
+function validateUrl(value) {
+ return /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900
-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
+}
+//baut die URL zusammen, wenn sie fehlerhaft ist
+function paramterbuild(url) {
+ if (url.indexOf("?") == -1) {
+ url += '?';
+ }
+ if (url.indexOf("VERSION=") == -1) {
+ url += '&VERSION=9.9.9';
+ }
+ if (url.indexOf("REQUEST=") == -1) {
+ url += '&REQUEST=GetCapabilities';
+ }
+ if (url.indexOf("SERVICE=") == -1) {
+ url += '&SERVICE=WMS';
+ }
+ return url;
+}
var mod_addWms_general = function (js, param) {
- var ind = getMapObjIndexByName('mapframe1');
- var map = mb_mapObj[ind];
-
- var success = false;
- if (js) {
- var oldWmsCount = wms.length;
- eval(js);
- var newWmsCount = wms.length;
- if (newWmsCount > oldWmsCount) {
- success = true;
- mb_mapObjaddWMS('mapframe1');
- var lastwms = map.wms[map.wms.length - 1];
- if (param && param.options && typeof param.options.zoomToExtent === "number" && param.options.zoomToExtent === 1) {
- // zoom to bbox
- var bbox_minx, bbox_miny, bbox_maxx, bbox_maxy;
- for (var i = 0; i < lastwms.gui_epsg.length; i++) {
- if (map.epsg == lastwms.gui_epsg[i]) {
- bbox_minx = parseFloat(lastwms.gui_minx[i]);
- bbox_miny = parseFloat(lastwms.gui_miny[i]);
- bbox_maxx = parseFloat(lastwms.gui_maxx[i]);
- bbox_maxy = parseFloat(lastwms.gui_maxy[i]);
- if (bbox_minx === null || bbox_miny === null || bbox_maxx === null || bbox_maxy === null) {
- continue;
- }
-
- map.calculateExtent(new Mapbender.Extent(bbox_minx, bbox_miny, bbox_maxx, bbox_maxy));
- map.setMapRequest();
- break;
- }
- }
- }
- }
- }
- if (typeof param === "object"
- && typeof param.callback === "function"
- && typeof param.options === "object"
- ) {
- param.options.success = success;
- param.callback(param.options);
- }
- mb_execloadWmsSubFunctions({
- wms: map.wms.length > 0 ? map.wms[map.wms.length - 1] : null
- });
+ var ind = getMapObjIndexByName('mapframe1');
+ var map = mb_mapObj[ind];
+ var success = false;
+ if (js) {
+ var oldWmsCount = wms.length;
+ eval(js);
+ if (errorcall) {
+ var errorcall = errorcall.split("|");
+ var dialogContainer = $("<form/>");
+ if (errorcall[0] == "null") {
+ errorcall[0] = "Fehler";
+ }
+ var input = $("<input type='text' value='" + errorcall[1] + "' name='test'/>");
+ var label = "<div>" + errorcall[0] + "</div>";
+ var submitButton = $("<input type='submit' title='Speichern'/>");
+ submitButton.click(function (event) {
+ dialogContainer.dialog("close");
+ event.preventDefault();
+ var urlError = input.val();
+ if (validateUrl(urlError)) {
+ mod_addWMS_load(paramterbuild(url));
+ } else {
+ input.css({border: '1px solid #FF435C'});
+ dialogContainer.dialog({title: "Es handelt sich nicht um eine URL."});
+ }
+ });
+ dialogContainer.append(label);
+ dialogContainer.append(input);
+ dialogContainer.append(submitButton);
+ dialogContainer.dialog({title: "WebMapService konnte nicht geladen werden"});
+ }
+ var newWmsCount = wms.length;
+ if (newWmsCount > oldWmsCount) {
+ success = true;
+ mb_mapObjaddWMS('mapframe1');
+ var lastwms = map.wms[map.wms.length - 1];
+ if (param && param.options && typeof param.options.zoomToExtent === "number" && param.options.zoomToExtent === 1) {
+ // zoom to bbox
+ var bbox_minx, bbox_miny, bbox_maxx, bbox_maxy;
+ for (var i = 0; i < lastwms.gui_epsg.length; i++) {
+ if (map.epsg == lastwms.gui_epsg[i]) {
+ bbox_minx = parseFloat(lastwms.gui_minx[i]);
+ bbox_miny = parseFloat(lastwms.gui_miny[i]);
+ bbox_maxx = parseFloat(lastwms.gui_maxx[i]);
+ bbox_maxy = parseFloat(lastwms.gui_maxy[i]);
+ if (bbox_minx === null || bbox_miny === null || bbox_maxx === null || bbox_maxy === null) {
+ continue;
+ }
+ map.calculateExtent(new Mapbender.Extent(bbox_minx, bbox_miny, bbox_maxx, bbox_maxy));
+ map.setMapRequest();
+ break;
+ }
+ }
+ }
+ }
+ }
+ if (typeof param === "object"
+ && typeof param.callback === "function"
+ && typeof param.options === "object"
+ ) {
+ param.options.success = success;
+ param.callback(param.options);
+ }
+ mb_execloadWmsSubFunctions({
+ wms: map.wms.length > 0 ? map.wms[map.wms.length - 1] : null
+ });
};
-
-function mod_addWMSById_ajax (gui_id, wms_id, param) {
- var options = {
- wms_id: wms_id,
- gui_id: gui_id,
- noHtml: 1
- };
-
- // abort if WMS is already loaded
- var map = getMapObjByName('mapframe1');
- var wms = map.getWmsById(wms_id);
-
- var originalI18nObject = {
- "messageHint": "Hint",
- "messageMsg": "The selected service is already activated in your application and will not be included again:"
- };
-
- var translatedI18nObject = Mapbender.cloneObject(originalI18nObject);
-
- if (wms !== null) {
- try {
-
- var $msg = $('<div>' + translatedI18nObject.messageMsg + '<br /><b>' + wms.wms_title + '</b></div>');
- $msg.dialog({
- title: translatedI18nObject.messageHint,
- bgiframe: true,
- autoOpen: true,
- modal: false,
- width: 300,
- height: 200,
- pos: [100,50]
- });
- }
- catch (e) {
- new Mb_warning(e.message + ". " + translatedI18nObject.messageMsg);
- }
- return;
- }
-
-
- options[mb_session_name] = mb_nr;
-
- $.get("../php/mod_createJSObjFromDBByWMS.php", options, function (js, status) {
- var opt = {};
-
- if (typeof param !== "undefined") {
- opt = {
- callback: typeof param.callback === "function" ? param.callback : function(){
- },
- options: {
- wmsId: wms_id,
- appId: gui_id,
- visible: typeof param.visible === "number" ? param.visible : 0,
- zoomToExtent: typeof param.zoomToExtent === "number" ? param.zoomToExtent : 0
- }
- };
- }
- mod_addWms_general(js, opt);
- });
-
- Mapbender.events.localize.register(function(){
- Mapbender.modules.i18n.queue(options.id, originalI18nObject, function(translatedI18nObject){
- $('.labelLoadError').text(translatedI18nObject.labelLoadError);
- $('.labelUrlBox').text(translatedI18nObject.labelUrlBox);
- });
- });
+function mod_addWMSById_ajax(gui_id, wms_id, param) {
+ var options = {
+ wms_id: wms_id,
+ gui_id: gui_id,
+ noHtml: 1
+ };
+ // abort if WMS is already loaded
+ var map = getMapObjByName('mapframe1');
+ var wms = map.getWmsById(wms_id);
+ var originalI18nObject = {
+ "messageHint": "Hint",
+ "messageMsg": "The selected service is already activated in your application and will not be included again:"
+ };
+ var translatedI18nObject = Mapbender.cloneObject(originalI18nObject);
+ if (wms !== null) {
+ try {
+ var $msg = $('<div>' + translatedI18nObject.messageMsg + '<br /><b>' + wms.wms_title + '</b></div>');
+ $msg.dialog({
+ title: translatedI18nObject.messageHint,
+ bgiframe: true,
+ autoOpen: true,
+ modal: false,
+ width: 300,
+ height: 200,
+ pos: [100, 50]
+ });
+ }
+ catch (e) {
+ new Mb_warning(e.message + ". " + translatedI18nObject.messageMsg);
+ }
+ return;
+ }
+ options[mb_session_name] = mb_nr;
+ $.get("../php/mod_createJSObjFromDBByWMS.php", options, function (js, status) {
+ var opt = {};
+ if (typeof param !== "undefined") {
+ opt = {
+ callback: typeof param.callback === "function" ? param.callback : function () {
+ },
+ options: {
+ wmsId: wms_id,
+ appId: gui_id,
+ visible: typeof param.visible === "number" ? param.visible : 0,
+ zoomToExtent: typeof param.zoomToExtent === "number" ? param.zoomToExtent : 0
+ }
+ };
+ }
+ mod_addWms_general(js, opt);
+ });
+ Mapbender.events.localize.register(function () {
+ Mapbender.modules.i18n.queue(options.id, originalI18nObject, function (translatedI18nObject) {
+ $('.labelLoadError').text(translatedI18nObject.labelLoadError);
+ $('.labelUrlBox').text(translatedI18nObject.labelUrlBox);
+ });
+ });
}
-
-
-
-function mod_addWMS_refresh(){
- mb_mapObjaddWMS('mapframe1');
- mb_execloadWmsSubFunctions();
- zoom('mapframe1', true, 0.999);
+function mod_addWMS_refresh() {
+ mb_mapObjaddWMS('mapframe1');
+ mb_execloadWmsSubFunctions();
+ zoom('mapframe1', true, 0.999);
}
Modified: trunk/mapbender/http/javascripts/mod_gazetteerSQL_client.php
===================================================================
--- trunk/mapbender/http/javascripts/mod_gazetteerSQL_client.php 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/javascripts/mod_gazetteerSQL_client.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -20,7 +20,7 @@
?>
<!--
// --- begin: expected element vars ---
-// var scale
+// var scale
// var numberOfResults
// var profile = "adresse" | "alk" | "alb" | "adresse2"
@@ -37,7 +37,7 @@
var e = new parent.Mb_warning("mod_gazetteerSQL: element var tooManyResultsString is missing.");
}
if (typeof(profile) == 'undefined' || (profile != "alb" && profile != "alk" && profile != "adresse" && profile != "adresse2")) {
- profile = "adresse"
+ profile = "adresse";
var e = new parent.Mb_exception("mod_gazetteerSQL: element var profile is missing.");
}
@@ -200,7 +200,7 @@
for (var communeId in json.communes) {
if (typeof(json.communes[communeId]) != 'function') {
var currentNode = document.createElement("option");
-
+
if (document.getElementById('selectCommune').childNodes.length == 0) {
currentNode.selected = "selected";
}
@@ -216,7 +216,7 @@
function updateStreets() {
executeFunctions(generalPreFunctions);
var communeId = document.getElementById('selectCommune').value;
-
+
parent.mb_ajax_json(phpUrl, {"command":"getStreets", "communeId":communeId}, function (json, status) {
executeFunctions(generalSubFunctions);
@@ -225,11 +225,11 @@
for (var streetId in json.streets) {
if (typeof(json.streets[streetId]) != 'function') {
var currentNode = document.createElement("option");
-
+
if (document.getElementById('selectStreet').childNodes.length == 0) {
currentNode.selected = "selected";
}
-
+
currentNode.value = json.streets[streetId];
currentNode.innerHTML = json.streets[streetId];
document.getElementById('selectStreet').appendChild(currentNode);
@@ -243,7 +243,7 @@
executeFunctions(generalPreFunctions);
var communeId = document.getElementById('selectCommune').value;
-
+
parent.mb_ajax_json(phpUrl, {"command":"getDistricts", "communeId":communeId}, function (districtObject, status) {
executeFunctions(generalSubFunctions);
@@ -252,13 +252,13 @@
for (var districtId in districtObject.districts) {
if (typeof(districtObject.districts[districtId]) != 'function') {
var currentNode = document.createElement("option");
-
+
currentNode.value = districtId;
-
+
if (document.getElementById('selectDistrict').childNodes.length == 0) {
currentNode.selected = "selected";
}
-
+
currentNode.value = districtObject.districts[districtId];
currentNode.innerHTML = districtObject.districts[districtId];
document.getElementById('selectDistrict').appendChild(currentNode);
@@ -299,7 +299,7 @@
function updateParcels() {
executeFunctions(generalPreFunctions);
-
+
var districtId = document.getElementById('selectDistrict').value;
var inputParcel1 = document.getElementById('inputParcel1').value;
var inputParcel2 = document.getElementById('inputParcel2').value;
@@ -339,7 +339,7 @@
document.getElementById('selectCommune').removeAttribute("disabled");
document.getElementById('inputOwner').removeAttribute("disabled");
document.getElementById('inputOwnerButton').removeAttribute("disabled");
-
+
if (ownerQueryString != "") {
executeFunctions(generalPreFunctions);
parent.mb_ajax_json(phpUrl, {"command":"getLandparcelsByOwner", "communeId":communeId, "ownerQueryString":ownerQueryString, "numberOfResults":numberOfResults}, function (json, status) {
@@ -364,7 +364,7 @@
}
document.getElementById("divResults").innerHTML = resultString;
executeFunctions(numberSubFunctions);
-
+
});
}
}
Modified: trunk/mapbender/http/php/mod_createJSObjFromXML.php
===================================================================
--- trunk/mapbender/http/php/mod_createJSObjFromXML.php 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/php/mod_createJSObjFromXML.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -1,7 +1,7 @@
<?php
# $Id$
# http://www.mapbender.org/index.php/mod_createJSObjFromXML.php
-# Copyright (C) 2002 CCGIS
+# Copyright (C) 2002 CCGIS
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,55 +17,42 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-require_once(dirname(__FILE__)."/../php/mb_validateSession.php");
-require_once(dirname(__FILE__)."/../classes/class_wms.php");
-require_once(dirname(__FILE__)."/../classes/class_administration.php");
+require_once(dirname(__FILE__) . "/../php/mb_validateSession.php");
+require_once(dirname(__FILE__) . "/../classes/class_wms.php");
+require_once(dirname(__FILE__) . "/../classes/class_administration.php");
#require_once(dirname(__FILE__)."/../classes/class_mb_exception.php");
$capabilitiesURL = $_REQUEST['caps'];
$noHtml = intval($_GET["noHtml"]);
-
$output = "";
$charset = CHARSET;
-
$mywms = new wms();
-
-#$e = new mb_exception("mod_createJSObjFromXML: CapUrl encoded to load: ".$capabilitiesURL);
$caps = $capabilitiesURL;
-#$e = new mb_exception("mod_createJSObjFromXML: CapUrl decodes to load: ".$caps);
$caps = html_entity_decode($_REQUEST['caps']);
-//$caps = html_entity_decode(base64_decode($_REQUEST['caps']));
$result = $mywms->createObjFromXML($caps);
if (!$result['success']) {
- $output .= "try {" .
- "Mapbender.Modules.dialogManager.openDialog({" .
- "content: '" . $result['message'] . "<br><br><b>" . $capabilitiesURL .
- "', modal: false, effectShow: 'puff'});" .
- "} catch (e) {" .
- "prompt('" . $result['message'] . "', '" . $capabilitiesURL . "');" .
- "}";
+
+ $output .= "try {" .
+ "Mapbender.Modules.dialogManager.openDialog({" .
+ "content: '" . $result['message'] . "<br><br><b>" . $capabilitiesURL .
+ "', modal: false, effectShow: 'puff'});" .
+ "} catch (e) {" .
+ "var errorcall = '" . json_encode($result['massage']) . "|" . $capabilitiesURL . "';" .
+ "}";
}
-/*
-$errorMessage = _mb("Error: The Capabilities Document could not be accessed. " .
- "Please check whether the server is responding and accessible to " .
- "Mapbender.");
-if (!$mywms->wms_status) {
- $output .= "try {" .
- "Mapbender.Modules.dialogManager.openDialog({" .
- "content: '" . $errorMessage . "<br><br><b>" . $capabilitiesURL .
- "', modal: false, effectShow: 'puff'});" .
- "} catch (e) {" .
- "prompt('" . $errorMessage . "', '" . $capabilitiesURL . "');" .
- "}";
-}*/
+
else {
- if ($noHtml) {
- $output .= $mywms->createJsObjFromWMS_(false);
- }
- else {
- $output .= $mywms->createJsObjFromWMS_(true);
- }
+ // Setzt das geledene WMS in Sichtbar
+ $mywms->gui_wms_visible = 1;
+ for($i=0; $i<count($mywms->objLayer); $i++){
+ $mywms->objLayer[$i]->gui_layer_visible = 1;
+ }
+ if ($noHtml) {
+ $output .= $mywms->createJsObjFromWMS_(false);
+ } else {
+ $output .= $mywms->createJsObjFromWMS_(true);
+ }
}
$js = administration::convertOutgoingString($output);
unset($output);
@@ -74,25 +61,3 @@
echo $js;
}
-else {
-/*
- $js .= "parent.mod_addWMS_refresh();";
- echo <<<HTML
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
-<title>Load WMS</title>
-<meta http-equiv="cache-control" content="no-cache">
-<meta http-equiv="pragma" content="no-cache">
-<meta http-equiv="expires" content="0">
-<meta http-equiv="Content-Type" content="text/html; charset='$charset'">
-<script type='text/javascript'>
-$js
-</script>
-</head>
-<body>
-</body>
-</html>
-HTML;
-*/
-}
Modified: trunk/mapbender/http/plugins/kmlTree.php
===================================================================
--- trunk/mapbender/http/plugins/kmlTree.php 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/plugins/kmlTree.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -1,6 +1,7 @@
<?php
require_once dirname(__FILE__) . "/../../core/globalSettings.php";
?>
+// <script language="JavaScript">
/**
* Package: kmlTree
*
@@ -160,10 +161,11 @@
.find('.exportImage').bind('click', function(event) { // add click event to the link image
// stop event propagation beacause the following bind has to catch the click events on the 'tr'
event.stopPropagation();
- if ($('#dataExportDialog').dialog('isOpen') === true) {
+ var dialog = $('#dataExportDialog');
+ if (dialog.dialog('isOpen') === true) {
- $('#dataExportDialog').dialog('close');
- $('#dataExportDialog').remove();
+ dialog.dialog('close');
+ dialog.remove();
$(this).trigger('click');
} else {
@@ -181,9 +183,8 @@
of: window
},
close: function() {
-
- $('#dataExportDialog').dialog('destroy');
- $('#dataExportDialog').remove();
+ dialog.dialog('destroy');
+ dialog.remove();
}
});
// var exportHtmlsdfdsf = '<div id="exportHtml">' + '<form>' + '<label class="export-format-kml">KML<input type="radio" name="export-format" value="kml" checked="checked"></input></label>' + '<label class="export-format-kml">KML<input type="radio" name="export-format" value="kml" checked="checked"></input></label>' + '<label class="export-format-kml">KML<input type="radio" name="export-format" value="kml" checked="checked"></input></label><br><br>' +
@@ -811,30 +812,27 @@
});
$("button.toggle", $kmlEntry).bind('click', function() {
- if ($(this).parent().hasClass("open")) {
- $(this).parent().removeClass("open");
- $(this).parent().addClass("closed");
+ var parent = $(this).parent();
+ if (parent.hasClass("open")) {
+ parent.removeClass("open");
+ parent.addClass("closed");
} else {
- $(this).parent().removeClass("closed");
- $(this).parent().addClass("open");
+ parent.removeClass("closed");
+ parent.addClass("open");
}
// IE8 workaround to make style previews visible...
- $(this).parent().find('ul.ui-sortable li .rvml').removeClass('rvml').addClass('rvml');
+ parent.find('ul.ui-sortable li .rvml').removeClass('rvml').addClass('rvml');
});
-
- $('#tabs_kmlTree').bind('click', function() {
- window.setTimeout(function() {
+ $('#tabs_kmlTree').bind('click', function () {
+ window.setTimeout(function () {
// IE8 workaround to make style previews visible...
$('#kmlTree').find('ul.ui-sortable li .rvml').removeClass('rvml').addClass('rvml');
}, 1000);
});
-
});
-
- var setFeatureAttr = function(data) {
+ var setFeatureAttr = function (data) {
var simpleStyleDefaults = {
-
"title": "",
"description": "",
"marker-size": "medium",
@@ -846,46 +844,29 @@
"fill": "#555555",
"fill-opacity": 0.5
};
-
if (data.type == 'Feature') {
-
if (Object.getOwnPropertyNames(data.properties).length === 0 || data.properties === null) {
-
data.properties = simplyStyleDefaults;
-
} else {
-
- $.each(simpleStyleDefaults, function(index, val) {
-
+ $.each(simpleStyleDefaults, function (index, val) {
if (!data.properties.hasOwnProperty(index)) {
-
data.properties[index] = value;
}
-
});
-
}
-
} else if (data.type == 'FeatureCollection') {
// get all features in the featureCollection and set the default properties if they are not set
- $.each(data.features, function(index, val) {
-
- $.each(simpleStyleDefaults, function(prop, propVal) {
-
+ $.each(data.features, function (index, val) {
+ $.each(simpleStyleDefaults, function (prop, propVal) {
if (!val.properties.hasOwnProperty(prop)) {
//TODO: get index in this scope
data.features[index].properties[prop] = propVal;
}
-
});
});
-
}
-
return data;
-
-
};
};
Modified: trunk/mapbender/http/plugins/mb_digitize_widget.php
===================================================================
--- trunk/mapbender/http/plugins/mb_digitize_widget.php 2016-06-10 07:03:17 UTC (rev 9519)
+++ trunk/mapbender/http/plugins/mb_digitize_widget.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -1,7 +1,6 @@
<?php
require_once dirname(__FILE__) . "/../../core/globalSettings.php";
?>
-// -*- mode: js3;-*-
/**
* Package: digitize_widget
*
@@ -67,6 +66,7 @@
* and Simplified BSD license.
* http://svn.osgeo.org/mapbender/trunk/mapbender/license/license.txt
*/
+ // <script language="JavaScript">
var $digitize = $(this);
Added: trunk/mapbender/http/plugins/mod_jsonAutocompleteGazetteerOL.php
===================================================================
--- trunk/mapbender/http/plugins/mod_jsonAutocompleteGazetteerOL.php (rev 0)
+++ trunk/mapbender/http/plugins/mod_jsonAutocompleteGazetteerOL.php 2016-06-10 10:30:18 UTC (rev 9520)
@@ -0,0 +1,282 @@
+<?php
+/**
+ * Package: mod_jsonAutocompleteGazetteer
+ *
+ * Description:
+ * This module is a client for a json gazetteer webservice as used by http://www.geonames.org. The default
+ * service is the service from geonames.org which allows searching for
+ *
+ *
+ * Files:
+ * - http/plugins/mod_jsonAutocompleteGazetteer.php
+ *
+ * SQL:
+ * >
+ * > INSERT INTO gui_element(fkey_gui_id, e_id, e_pos, e_public, e_comment, e_title, e_element, e_src,
+ * > e_attributes, e_left, e_top, e_width, e_height, e_z_index, e_more_styles, e_content, e_closetag,
+ * > e_js_file, e_mb_mod, e_target, e_requires, e_url) VALUES('<app_id>','jq_ui_autocomplete',5,1,
+ * > 'Module to manage jQuery UI autocomplete module','','div','','',-1,-1,15,15,NULL ,'','','div',
+ * > '','../extensions/jquery-ui-1.8.16.custom/development-bundle/ui/jquery.ui.autocomplete.js',
+ * > '','jq_ui,jq_ui_widget,jq_ui_position','');
+ * >
+ * > INSERT INTO gui_element(fkey_gui_id, e_id, e_pos, e_public, e_comment, e_title, e_element,
+ * > e_src, e_attributes, e_left, e_top, e_width, e_height, e_z_index, e_more_styles, e_content,
+ * > e_closetag, e_js_file, e_mb_mod, e_target, e_requires, e_url) VALUES('<app_id>',
+ * > 'jsonAutocompleteGazetteer',12,1,'Client for json webservices like geonames.org','Gazetteer',
+ * > 'div','','',230,30,NULL ,NULL ,999,'','','div','../plugins/mod_jsonAutocompleteGazetteer.php',
+ * > '','mapframe1','','http://www.mapbender.org/index.php/mod_jsonAutocompleteGazetteer');
+ * >
+ * > INSERT INTO gui_element_vars(fkey_gui_id, fkey_e_id, var_name, var_value, context, var_type)
+ * > VALUES('<app_id>', 'jsonAutocompleteGazetteer', 'gazetteerUrl', 'http://ws.geonames.org/searchJSON?lang=de&',
+ * > '' ,'var');
+ * >
+ * > INSERT INTO gui_element_vars(fkey_gui_id, fkey_e_id, var_name, var_value, context, var_type)
+ * > VALUES('<app_id>', 'jsonAutocompleteGazetteer', 'isGeonames', 'true', '' ,'var');
+ * >
+ * Help:
+ * http://www.mapbender.org/mod_jsonAutocompleteGazetteer
+ *
+ * Maintainer:
+ * http://www.mapbender.org/User:Armin_Retterath
+ *
+ * Parameters:
+ * none
+ *
+ *
+ * License:
+ * Copyright (c) 2009, Open Source Geospatial Foundation
+ * This program is dual licensed under the GNU General Public License
+ * and Simplified BSD license.
+ * http://svn.osgeo.org/mapbender/trunk/mapbender/license/license.txt
+ */
+require_once(dirname(__FILE__)."/../php/mb_validateSession.php");
+?>
+
+var options = "options";
+var standingHighlight = null;
+
+
+//initialize modul
+
+ options.gazetteerUrl = 'http://www.geoportal.rlp.de/mapbender/geoportal/gaz_geom_mobile.php?';
+
+ options.isGeonames = false;
+
+ options.latLonZoomExtension = 0.1;
+
+ options.minLength = 3;
+
+ options.delay = 400;
+
+ options.isDraggable = true;
+
+ options.maxResults = 15;
+
+ options.inputWidth = 250;
+
+ options.searchEpsg = "4326";
+
+ options.drawCentrePoint = true;
+
+ options.gazetteerFrontImageOn = "../img/button_blue_red/gazetteer3_on.png";
+
+ options.gazetteerFrontImageOff = "../img/button_blue_red/gazetteer3_off.png";
+
+ options.helpText = "";
+
+var JsonAutocompleteGazetteer = function() {
+ var that = this;
+ var targetName = options.target;
+ //var ind = getMapObjIndexByName(targetName);
+ var my = mb_mapObj[ind];
+
+ this.zoomToExtent = function(fromSrs,minx,miny,maxx,maxy) {
+ var parameters = {
+ fromSrs: fromSrs,
+ toSrs: Mapbender.modules[targetName].epsg
+ };
+
+ parameters.bbox = parseFloat(minx)+ "," +parseFloat(miny)+ "," +parseFloat(maxx)+ "," +parseFloat(maxy);
+
+ //function to transform from one crs to another
+ var req = new Mapbender.Ajax.Request({
+ url: "../php/mod_coordsLookup_server.php",
+ method: "transform",
+ parameters: parameters,
+ callback: function (obj, success, message) {
+ if (!success) {
+ new Mapbender.Exception(message);
+ return;
+ }
+ if (options.drawCentrePoint) {
+ //generate layer for visualization of point
+ if(standingHighlight !== null){
+ standingHighlight.clean();
+ }else{
+ standingHighlight = new Highlight(
+ [options.target],
+ "standingHighlight",
+ {"position":"absolute", "top":"0px", "left":"0px", "z-index":999},
+ 2);
+ }
+ var point0 = new Point(obj.points[0].x,obj.points[0].y);
+ var point1 = new Point(obj.points[1].x,obj.points[1].y);
+ var x = point0.x + (point1.x - point0.x)/2;
+ var y = point0.y + (point1.y - point0.y)/2;
+ var point = new Point(x,y);
+ var ga = new GeometryArray();
+ ga.importPoint({
+ coordinates:[x,y,null]
+ },Mapbender.modules[targetName].epsg)
+ var m = ga.get(-1,-1);
+ standingHighlight.add(m, "#ff0000");
+ //alert(m);
+ standingHighlight.paint();
+ }
+ if (obj.points) {
+ if (obj.points.length === 2) {
+ var newExtent = new Extent(
+ obj.points[0].x,
+ obj.points[0].y,
+ obj.points[1].x,
+ obj.points[1].y
+ );
+ my.calculateExtent(newExtent);
+ }
+ my.setMapRequest();
+ }
+ }
+ });
+ req.send();
+ };
+ this.showSearchHelp = function(){
+
+
+ }
+ this.toggleInput = function(){
+ if ($("#geographicName").css("display") == 'none') {
+ $("#geographicName").show();
+ $("#helpSymbolId").show();
+ $("#symboldForInputId").attr({'src':options.gazetteerFrontImageOn});
+ } else {
+ $("#geographicName").hide();
+ $("#helpSymbolId").hide();
+ $("#symboldForInputId").attr({'src':options.gazetteerFrontImageOff});
+ }
+ }
+
+ this.initForm = function() {
+ epsg = Mapbender.modules[targetName].epsg.replace('EPSG:', '');
+ this.formContainer = $(document.createElement('form')).attr({'id':'json-autocomplete-gazetteer'}).appendTo('#' + options.id);
+ this.formContainer.submit(function() {
+ return false;
+ });
+ if (options.isDraggable){
+ //this.formContainer.draggable();//problem with print module
+ }
+ this.symbolForInput = $(document.createElement('img')).appendTo(this.formContainer);
+ this.symbolForInput.attr({'id':'symboldForInputId'});
+ this.symbolForInput.attr({'src':options.gazetteerFrontImageOn});
+ this.symbolForInput.attr({'title':''});
+ $("#symboldForInputId").click(function() {
+ that.toggleInput();
+ });
+ this.inputAddress = $(document.createElement('input')).appendTo(this.formContainer);
+
+ //do the following things only if
+ if (options.helpText != '') {
+ this.helpSymbol = $(document.createElement('img')).appendTo(this.formContainer);
+
+ this.helpText = $(document.createElement('div')).appendTo(this.formContainer);
+ this.helpText.attr({'id':'helpTextId'});
+ $("#helpTextId").hide();
+ $("#helpTextId").append(options.helpText);
+
+ this.helpSymbol.attr({'id':'helpSymbolId'});
+ this.helpSymbol.attr({'src':'../img/questionmark.png'});
+ this.helpSymbol.attr({'width':'17'});
+ this.helpSymbol.attr({'height':'17'});
+
+ $("#helpSymbolId").hover(
+ function () {
+ //create dialog
+ $("#helpTextId").dialog({ title: "Help for address search" });
+ },
+ function () {
+ //create dialog
+ $("#helpTextId").dialog('close');
+ }
+ );
+ }
+ this.inputAddress.attr({'id':'geographicName'});
+ //default value
+ this.inputAddress.val('Search for addresses');
+ this.inputAddress.click(function() {
+ that.inputAddress.val('');
+ });
+ this.inputAddress.css('width',options.inputWidth);
+ $('.ui-menu').css('width','100px');
+ $('.ui-menu-item').css('width','100px');
+ //set the loading symbol for autoloader class
+ //$('.ui-autocomplete-loading').css('background','white url("../img/indicator_wheel.gif") right center no-repeat');
+ //http://stackoverflow.com/questions/622122/how-can-i-change-the-css-class-rules-using-jquery
+ //$("<style type='text/css'> .ui-autocomplete { position: absolute; cursor: default; background:black; color:white} </style>").appendTo("head");
+ $(function() {
+ $( "#geographicName" ).autocomplete({
+ source: function( request, response ) {
+ $.ajax({
+ url: options.gazetteerUrl,
+ dataType: "jsonp",
+ data: {
+ outputFormat: 'json',
+ resultTarget: 'web',
+ searchEPSG: options.searchEpsg,
+ maxResults: options.maxResults,
+ maxRows: options.maxResults,
+ searchText: request.term,
+ featureClass: "P",
+ style: "full",
+ name_startsWith: request.term
+
+ },
+ success: function( data ) {
+ if (options.isGeonames) {
+ response( $.map( data.geonames, function( item ) {
+ return {
+ label: item.name+" - "+item.fclName+" - "+item.countryName,
+ minx: item.lng-options.latLonZoomExtension,
+ miny: item.lat-options.latLonZoomExtension,
+ maxx: item.lng+options.latLonZoomExtension,
+ maxy: item.lat+options.latLonZoomExtension
+ }
+ }));
+ } else {
+ response( $.map( data.geonames, function( item ) {
+ return {
+ label: item.title,
+ minx: item.minx,
+ miny: item.miny,
+ maxx: item.maxx,
+ maxy: item.maxy
+ }
+ }));
+ }
+ }
+ });
+ },
+ minLength: options.minLength,
+ delay: options.delay,
+ select: function( event, ui ) {
+ that.zoomToExtent("EPSG:"+options.searchEpsg,ui.item.minx,ui.item.miny,ui.item.maxx,ui.item.maxy);
+ },
+ open: function() {
+ $( this ).removeClass( "ui-corner-all" ).addClass( "ui-corner-top" );
+ },
+ close: function() {
+ $( this ).removeClass( "ui-corner-top" ).addClass( "ui-corner-all" );
+ }
+ });
+ });
+ }
+ this.initForm();
+}
\ No newline at end of file
More information about the Mapbender_commits
mailing list