X-Git-Url: https://dev.renevier.net/?a=blobdiff_plain;f=public%2Fjs%2Fsyj.js;h=05e2134189075747764255a1461d4204b65096ea;hb=672a0b538a6bf16b2b9885a10c9cff148a4826ae;hp=50184b2a6974fe0c97dc8f43db21a78d609166d0;hpb=c57706da408cacae1008851edb650ac33865bd22;p=syj.git diff --git a/public/js/syj.js b/public/js/syj.js index 50184b2..05e2134 100644 --- a/public/js/syj.js +++ b/public/js/syj.js @@ -378,17 +378,17 @@ var SYJView = { var results = null; var content = evt.target.result; - var engine; + var engine, i; var formats = ['KML', 'GPX']; - for (var i = 0; i < formats.length; i++) { + for (i = 0; i < formats.length; i++) { engine = new OpenLayers.Format[formats[i]]({ internalProjection: Mercator, externalProjection: WGS84 }); try { results = engine.read(content); } catch(e) { } if (results || results.length) { - break; + continue; } } if (!results || !results.length) { @@ -404,7 +404,20 @@ var SYJView = { } this.viewLayer.addFeatures([vector]); this.map.zoomToExtent(this.viewLayer.getDataExtent()); - this.editMode(); + + if ($("edit-btn")) { + $("edit-btn").click(); + } else if ($("create-btn")) { + $("create-btn").click(); + } + + if (this.editControl.handler.realPoints.length < 2) { + SyjSaveUI.disable(); + } else { + SyjSaveUI.enable(); + } + + if (vector.data && vector.data.name) { $("geom_title").value = vector.data.name; } @@ -789,7 +802,14 @@ var SYJUserClass = Class.create(SYJModalClass, { }, success: function(transport) { - LoginMgr.login(); + if (!transport.responseJSON || + typeof transport.responseJSON.pseudo !== "string" + ) { + this.messenger.setMessage(SyjStrings.unknownError, "error"); + return; + } + + LoginMgr.login(transport.responseJSON.pseudo); SYJView.messenger.setMessage(SyjStrings.userSuccess, "success"); this.modalbox.hide(); if (SYJView.needsFormResubmit) { @@ -867,14 +887,8 @@ var SYJLoginClass = Class.create(SYJModalClass, { this.messenger.setMessage(SyjStrings.unknownError, "error"); return; } - LoginMgr.login(transport.responseJSON.iscreator); - $$('.logged-pseudo').each(function(elt) { - $A(elt.childNodes).filter(function(node) { - return (node.nodeType === 3 || node.tagName.toLowerCase() === 'br'); - }).each(function(node) { - node.nodeValue = node.nodeValue.replace('%s', transport.responseJSON.pseudo); - }); - }); + LoginMgr.login(transport.responseJSON.pseudo, transport.responseJSON.iscreator); + SYJView.messenger.setMessage(SyjStrings.loginSuccess, "success"); this.modalbox.hide(); if (SYJView.needsFormResubmit) { @@ -957,11 +971,18 @@ var LoginMgr = Object.extend(gLoggedInfo, { } }, - login: function(aIsCreator) { + login: function(aPseudo, aIsCreator) { if (typeof aIsCreator === "boolean") { this.iscreator = aIsCreator; } this.logged = true; + $$('.logged-pseudo').each(function(elt) { + $A(elt.childNodes).filter(function(node) { + return (node.nodeType === 3 || node.tagName.toLowerCase() === 'br'); + }).each(function(node) { + node.nodeValue = node.nodeValue.replace('%s', aPseudo); + }); + }); this.updateUI(); } }); @@ -1118,7 +1139,8 @@ var Nominatim = (function() { }; }; - for (var i = 0; i < transport.responseJSON.length; i++) { + var i; + for (i = 0; i < transport.responseJSON.length; i++) { var item = transport.responseJSON[i]; if (item.display_name && item.boundingbox && item.boundingbox.length === 4) { var li = new Element("li");