function vafDoLevel( $level, $parent_id = 0 ) { $schema = new VF_Schema(); $finder = new VF_Level( $level ); $parentLevel = $schema->getPrevLevel( $level ); if( $parentLevel ) { $entities = $finder->listInUse( array( $parentLevel => $parent_id ) ); } else { $entities = $finder->listInUse(); } echo $level . '["' . $parent_id . '"] = new Array();'; foreach( $entities as $entity ) { ?> var obj = new Array(); obj["title"] = "<?=$entity->getTitle()?>"; obj["id"] = "<?=$entity->getId()?>"; <?=$level?>["<?=$parent_id?>"].push( obj ); <?php if( $level != $schema->getLeafLevel() ) { vafDoLevel( $schema->getNextLevel($level), $entity->getId() ); } echo "\n"; } }
function testNextLevelYear() { $schema = new VF_Schema(); $this->assertFalse( $schema->getNextLevel('year') ); }