Не работает OpenLayers.Strategy.Save()
Добавлено: 23 авг 2014, 22:54
Подскажите пожалуйста почему не сохранябтся изменения внесенные на векторынй слой podr после нажати
кнопочки сохранить?? не срабатывает OpenLayers.Strategy.Save()??? не могу понять что делаю не так??
function init(){
OpenLayers.Lang.setCode('ru');
OpenLayers.ProxyHost = "/cgi-bin/proxy.cgi?url=";
var options = {
controls: [],
maxResolution: 0.0099459141492844,
projection: new OpenLayers.Projection("EPSG:900913"),
displayProjection: new OpenLayers.Projection("EPSG:4326"),
units: 'degrees',
//allOverlays: true
};
map = new OpenLayers.Map('map', options);
var osm_l = new OpenLayers.Layer.OSM('Карта');
var saveStrategy = new OpenLayers.Strategy.Save();
saveStrategy.events.on({
'success': function(event) {
alert('Changes saved');
},
'fail': function(event) {
alert('Error! Changes not saved');
},
scope: this
});
var style4 = new OpenLayers.Style({
graphicWidth: 40,
graphicHeight: 40,
externalGraphic: "http://lh:80/img/my/vps.png",
//graphicXOffset: 0,
graphicYOffset: -40,
pointRadius: 1,
})
podr = new OpenLayers.Layer.Vector("Подразделения", {
minScale: 500000000000,
styleMap: new OpenLayers.StyleMap(style4),
strategies: [new OpenLayers.Strategy.BBOX(), saveStrategy],
protocol: new OpenLayers.Protocol.WFS({
version: "1.0.0",
url: "http://lh:8080/geoserver/wfs",
featureType: "pdr",
geometryName: "geom"
}),
projection: 'EPSG:4326'
});
map.addLayers([ osm_l, podr]);
var panel = new OpenLayers.Control.Panel({
displayClass: "olControlEditingToolbar"
});
var draw = new OpenLayers.Control.DrawFeature(
podr, OpenLayers.Handler.Point,
{
title: "Draw Feature",
displayClass: "olControlDrawFeaturePolygon",
multi: true
}
);
var drag = new OpenLayers.Control.DragFeature(podr, {title: "drag Feature",
displayClass: "olControlModifyFeature" });
var edit = new OpenLayers.Control.ModifyFeature(podr, {
title: "Modify Feature",
displayClass: "olControlModifyFeature" });
var save = new OpenLayers.Control.Button({displayClass: 'saveButton', trigger: function() {saveStrategy.save()}, title: 'Save changes' });
panel.addControls([
new OpenLayers.Control.Navigation(),
save, draw, edit, drag
]);
map.addControl(panel);
кнопочки сохранить?? не срабатывает OpenLayers.Strategy.Save()??? не могу понять что делаю не так??
function init(){
OpenLayers.Lang.setCode('ru');
OpenLayers.ProxyHost = "/cgi-bin/proxy.cgi?url=";
var options = {
controls: [],
maxResolution: 0.0099459141492844,
projection: new OpenLayers.Projection("EPSG:900913"),
displayProjection: new OpenLayers.Projection("EPSG:4326"),
units: 'degrees',
//allOverlays: true
};
map = new OpenLayers.Map('map', options);
var osm_l = new OpenLayers.Layer.OSM('Карта');
var saveStrategy = new OpenLayers.Strategy.Save();
saveStrategy.events.on({
'success': function(event) {
alert('Changes saved');
},
'fail': function(event) {
alert('Error! Changes not saved');
},
scope: this
});
var style4 = new OpenLayers.Style({
graphicWidth: 40,
graphicHeight: 40,
externalGraphic: "http://lh:80/img/my/vps.png",
//graphicXOffset: 0,
graphicYOffset: -40,
pointRadius: 1,
})
podr = new OpenLayers.Layer.Vector("Подразделения", {
minScale: 500000000000,
styleMap: new OpenLayers.StyleMap(style4),
strategies: [new OpenLayers.Strategy.BBOX(), saveStrategy],
protocol: new OpenLayers.Protocol.WFS({
version: "1.0.0",
url: "http://lh:8080/geoserver/wfs",
featureType: "pdr",
geometryName: "geom"
}),
projection: 'EPSG:4326'
});
map.addLayers([ osm_l, podr]);
var panel = new OpenLayers.Control.Panel({
displayClass: "olControlEditingToolbar"
});
var draw = new OpenLayers.Control.DrawFeature(
podr, OpenLayers.Handler.Point,
{
title: "Draw Feature",
displayClass: "olControlDrawFeaturePolygon",
multi: true
}
);
var drag = new OpenLayers.Control.DragFeature(podr, {title: "drag Feature",
displayClass: "olControlModifyFeature" });
var edit = new OpenLayers.Control.ModifyFeature(podr, {
title: "Modify Feature",
displayClass: "olControlModifyFeature" });
var save = new OpenLayers.Control.Button({displayClass: 'saveButton', trigger: function() {saveStrategy.save()}, title: 'Save changes' });
panel.addControls([
new OpenLayers.Control.Navigation(),
save, draw, edit, drag
]);
map.addControl(panel);