mode: 'view',
init: function() {
- var externalGraphic, baseURL, baseLayer, layerOptions, extent, hidemessenger;
+ var externalGraphic, baseURL, baseLayer, layerOptions, hidemessenger;
// is svg context, opera does not resolve links with base element is svg context
externalGraphic = styleMap.edit.styles.select.defaultStyle.externalGraphic;
if (typeof gInitialGeom !== "undefined" && typeof gInitialGeom.data !== "undefined") {
this.viewLayer.addFeatures([this.wkt.read(gInitialGeom.data)]);
- extent = this.viewLayer.getDataExtent();
// XXX: ie has not guessed height of map main div yet during map
// initialisation. Now, it will read it correctly.
this.map.updateSize();
+ this.map.zoomToExtent(this.viewLayer.getDataExtent());
} else {
- extent = new OpenLayers.Bounds(gMaxExtent.minlon, gMaxExtent.minlat, gMaxExtent.maxlon, gMaxExtent.maxlat)
- .transform(WGS84, Mercator);
+ this.initMaPos(gInitialPos);
}
- this.map.zoomToExtent(extent);
+
document.observe('simplebox:shown', this.observer.bindAsEventListener(this));
SYJPathLength.update();
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) {
}
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;
}
}
},
+ initMaPos: function (aPos) {
+ var extent = null, center = null, zoom = 0;
+
+ if (aPos.hasOwnProperty('lon') && aPos.hasOwnProperty('lat') && aPos.hasOwnProperty('zoom')) {
+ center = new OpenLayers.LonLat(parseFloat(aPos.lon), parseFloat(aPos.lat)).transform(WGS84, Mercator);
+ zoom = parseInt(aPos.zoom);
+ } else if (aPos.hasOwnProperty('minlon') && aPos.hasOwnProperty('minlat')
+ && aPos.hasOwnProperty('maxlon') && aPos.hasOwnProperty('maxlat')) {
+ extent = new OpenLayers.Bounds(aPos.minlon, aPos.minlat, aPos.maxlon, aPos.maxlat)
+ .transform(WGS84, Mercator);
+ } else {
+ extent = new OpenLayers.Bounds(-160, -70, 160, 70).transform(WGS84, Mercator);
+ }
+
+ if (extent) {
+ this.map.zoomToExtent(extent);
+ } else {
+ this.map.setCenter(center, zoom);
+ }
+ },
+
observer: function(evt) {
if (evt.eventName === "simplebox:shown" && evt.memo.element !== $("termsofusearea")) {
this.messenger.hide();
};
};
- 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");