From 80a76bc4038f2f64ceab6756a2472f733f0b724c Mon Sep 17 00:00:00 2001 From: Konstantin Dimow Date: Mon, 25 Jul 2016 10:28:40 +0200 Subject: [PATCH 1/3] debug mapbender.element.clickcoordinate.js --- .../mapbender.element.clickcoordinate.js | 50 ++++++++++++------- 1 file changed, 31 insertions(+), 19 deletions(-) diff --git a/Resources/public/mapbender.element.clickcoordinate.js b/Resources/public/mapbender.element.clickcoordinate.js index 0e04123..14a2158 100644 --- a/Resources/public/mapbender.element.clickcoordinate.js +++ b/Resources/public/mapbender.element.clickcoordinate.js @@ -129,37 +129,48 @@ defaultAction: function(callback) { this.activate(callback); }, - activate: function(callback) { + activate: function(callback) { + var lastSrs = $('.inputSrs', this.element).val(); var self = this; var select = $('.inputSrs', this.element); - select.html(''); - var tmp = {}; - for (var i = 0; i < this.options.srsDefs.length; i++) { - tmp[this.options.srsDefs[i].name] = this.options.srsDefs[i].title; - select.append($('').val(this.options.srsDefs[i].name).html(this.options.srsDefs[i].title)); - } - var allSrs = this.mbMap.getAllSrs(); - for (var i = 0; this.options.add_map_srs_list && i < allSrs.length; i++) { - if(!tmp[allSrs[i].name]){ - select.append($('').val(allSrs[i].name).html(allSrs[i].title)); + + if (select.children().length === 0) { + select.html(''); + var tmp = {}; + for (var i = 0; i < this.options.srsDefs.length; i++) { + tmp[this.options.srsDefs[i].name] = this.options.srsDefs[i].title; + select.append($('').val(this.options.srsDefs[i].name).html(this.options.srsDefs[i].title)); + } + var allSrs = this.mbMap.getAllSrs(); + for (var i = 0; this.options.add_map_srs_list && i < allSrs.length; i++) { + if(!tmp[allSrs[i].name]){ + select.append($('').val(allSrs[i].name).html(allSrs[i].title)); + } } + var current = this.mbMap.getModel().getCurrentProj(); + + if(this.options.srsDefs.length){ + select.val(this.options.srsDefs[0].name); + } else { + select.val(current.projCode); + } + + $('input.mapSrs', this.element).val(current.projCode); } - var current = this.mbMap.getModel().getCurrentProj(); - if(this.options.srsDefs.length){ - select.val(this.options.srsDefs[0].name); - } else { - select.val(current.projCode); + + if (lastSrs !== null) { + select.val(lastSrs); } - - $('input.mapSrs', this.element).val(current.projCode); + if (this.options.type === 'element') { this._activateElement(); } else if (this.options.type === 'dialog') { this._activateDialog(); } + initDropdown.call($('.dropdown', this.element).get(0)); this.callback = callback ? callback : null; - + $(document).on('mbmapsrschanged', $.proxy(this._onSrsChanged, this)); $(document).on('mbmapsrsadded', $.proxy(this._onSrsAdded, this)); $('.copyClipBoard', this.element).on('click', $.proxy(this._copyToClipboard, this)); @@ -167,6 +178,7 @@ this.mbMap.map.element.addClass('crosshair'); this._resetFields(); + $('select.inputSrs', self.element).on('change', $.proxy(this._srsChanged, this)); if(!this.mapClickHandler) { From 8a4cc654ecd502ccfe0a0f49be920aef9b3da8c3 Mon Sep 17 00:00:00 2001 From: Konstantin Dimow Date: Mon, 25 Jul 2016 10:29:27 +0200 Subject: [PATCH 2/3] debug mapbender.element.mapcoordinate.js --- .../public/mapbender.element.mapcoordinate.js | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/Resources/public/mapbender.element.mapcoordinate.js b/Resources/public/mapbender.element.mapcoordinate.js index ee30f65..22787f0 100644 --- a/Resources/public/mapbender.element.mapcoordinate.js +++ b/Resources/public/mapbender.element.mapcoordinate.js @@ -226,22 +226,33 @@ defaultAction: function(callback) { this.activate(callback); }, - activate: function(callback) { + activate: function(callback) { + var lastSrs = $('.inputSrs', this.element).val(); var self = this; var allSrs = this.mbMap.getAllSrs(); var select = $('.inputSrs', this.element); - select.html(''); - for (var i = 0; i < allSrs.length; i++) { - select.append($('').val(allSrs[i].name).html(allSrs[i].title)); + + if (select.children().length === 0) { + select.html(''); + for (var i = 0; i < allSrs.length; i++) { + select.append($('').val(allSrs[i].name).html(allSrs[i].title)); + } + var current = this.mbMap.getModel().getCurrentProj(); + select.val(current.projCode); + $('input.mapSrs', this.element).val(current.projCode); + } + + if (lastSrs !== null) { + select.val(lastSrs); } - var current = this.mbMap.getModel().getCurrentProj(); - select.val(current.projCode); - $('input.mapSrs', this.element).val(current.projCode); + + if (this.options.type === 'element') { this._activateElement(); } else if (this.options.type === 'dialog') { this._activateDialog(); } + this.callback = callback ? callback : null; $('.buttonGroup [data-modelname]', this.element).each(function(idx, item){ var $item = $(item); @@ -274,7 +285,6 @@ $('.buttonGroup [data-modelname="InputModel"]', this.element).data('model').activate(); } }, - _copyToClipboard: function(e){ $(e.target).parent().find('input').select(); document.execCommand("copy"); From b95b0c9ec0d2910208ed40cdb4ea11aaab6cf89e Mon Sep 17 00:00:00 2001 From: Konstantin Dimow Date: Wed, 3 Aug 2016 12:04:53 +0200 Subject: [PATCH 3/3] remove empty spaces --- Resources/public/mapbender.element.clickcoordinate.js | 2 +- Resources/public/mapbender.element.mapcoordinate.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Resources/public/mapbender.element.clickcoordinate.js b/Resources/public/mapbender.element.clickcoordinate.js index 14a2158..1dfe66d 100644 --- a/Resources/public/mapbender.element.clickcoordinate.js +++ b/Resources/public/mapbender.element.clickcoordinate.js @@ -129,7 +129,7 @@ defaultAction: function(callback) { this.activate(callback); }, - activate: function(callback) { + activate: function(callback) { var lastSrs = $('.inputSrs', this.element).val(); var self = this; var select = $('.inputSrs', this.element); diff --git a/Resources/public/mapbender.element.mapcoordinate.js b/Resources/public/mapbender.element.mapcoordinate.js index 22787f0..bb86db8 100644 --- a/Resources/public/mapbender.element.mapcoordinate.js +++ b/Resources/public/mapbender.element.mapcoordinate.js @@ -226,7 +226,7 @@ defaultAction: function(callback) { this.activate(callback); }, - activate: function(callback) { + activate: function(callback) { var lastSrs = $('.inputSrs', this.element).val(); var self = this; var allSrs = this.mbMap.getAllSrs();