rendered paste body <mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import flash.net.Responder;
import mx.controls.Alert;
import classes.TreeNode;
/*[Bindable]
public var treeDP:Array;*/
[Bindable]
public var categorie:ArrayCollection = new ArrayCollection;
public var gateway:RemoteConnection;
public function init():void
{
gateway = new RemoteConnection("/amfphp/gateway.php");
gateway.call("gigante.getCategorie1", new Responder(onCategorieResult, onFault));
}
public function onCategorieResult(result:Array):void
{
//treeDP = result;
var Node:TreeNode;
var i:int;
for(i = 0; i < result.length; i++) {
if(result[i][2] == "0") {
Node = new TreeNode();
Node.id = result[i][0];
Node.label = result[i][1];
categorie.addItem(Node);
} else {
addNode(categorie, result[i]);
}
}
}
public function onFault(fault:String):void
{
Alert.show(fault);
}
private function addNode(aCat:ArrayCollection, aArr:Array):void {
var Node:TreeNode;
var i:int;
for(i = 0; i < aCat.length; i++) {
if(aCat[i].id == aArr[2]) {
Node = new TreeNode();
Node.id = aArr[0];
Node.label = aArr[1];
aCat[i].children = new ArrayCollection;
aCat[i].children.addItem(Node);
return;
}
if(aCat[i].children != null) {
addNode(aCat[i].children, aArr);
}
}
}
]]>
</mx:Script>