<mx:DataGridColumn editable="false" dataField="value" headerText="value" />
</mx:columns>
</mx:DataGrid>
+ <mx:Text text="All the data copied to the main layer? Click 'complete'!" />
+ <mx:Button label="Complete" click="markComplete()"/>
<mx:Script><![CDATA[
import net.systemeD.halcyon.connection.*;
import net.systemeD.halcyon.MapPaint;
+ import net.systemeD.potlatch2.utils.SnapshotConnection;
import mx.collections.*;
private var selectedEntity:Entity;
for each(var tag:Tag in tags) { tagDataProvider.addItem(tag); }
}
+ private function markComplete():void {
+ if (selectedEntity.connection is SnapshotConnection) {
+ SnapshotConnection(selectedEntity.connection).markComplete(selectedEntity);
+ }
+ }
]]>
</mx:Script>
</mx:VBox>
\ No newline at end of file
package net.systemeD.potlatch2.utils {
- import net.systemeD.halcyon.connection.XMLConnection;
+ import net.systemeD.halcyon.connection.*;
+ import flash.events.Event;
+ import flash.net.*;
public class SnapshotConnection extends XMLConnection {
super(cname,api,policy,initparams);
}
- /* todo - stuff about marking nodes/ways as complete */
+ /** Send a "complete" call to the server, and remove it from the current layer */
+ public function markComplete(entity:Entity):void {
+ if (entity is Node) {
+ var node:Node = Node(entity);
+ if (node == getNode(node.id)) { // confirm it's from this connection
+ var urlReq:URLRequest = new URLRequest(apiBaseURL+"node/"+node.id+"/complete");
+ urlReq.method = "POST";
+ urlReq.data = ' ';
+ urlReq.contentType = "application/xml";
+ urlReq.requestHeaders = [ new URLRequestHeader("X_HTTP_METHOD_OVERRIDE", "PUT"),
+ new URLRequestHeader("X-Error-Format", "XML") ];
+ var loader:URLLoader = new URLLoader();
+ loader.addEventListener(Event.COMPLETE, function(e:Event):void { killNode(node.id) });
+ loader.load(urlReq);
+ }
+
+ } else if (entity is Way) {
+ var way:Way = Way(entity);
+ trace("not implemented");
+ }
+ }
}
}
\ No newline at end of file