roousage(); } // list of properties or events. // gets xns+xtype+list $ff = HTML_FlexyFramework::get(); $cls = $_REQUEST['xns'] . '.' . $_REQUEST['xtype']; $data = json_decode(file_get_contents($ff->rootDir . '/roojs1/docs/json/roodata.json')); //echo '
'; print_R($data); $out = $data->data->{ $cls } -> {$_REQUEST['list'] }; if ($sub == 'Prop') { foreach(array( array( 'name' => "builder.sharedname", 'desc' => "This is a shared part, between different parts (modifying it will change other pages", 'memberOf' => "Builder", 'type' => "Boolean" ), array( 'name' => "flexy:foreach", 'desc' => "Loop foreach (array,key,val|array,val)", 'memberOf' => "Flexy", 'type' => "String" ), array( 'name' => "flexy:if", 'desc' => "if condition - put 0 to always disable it", 'memberOf' => "Flexy", 'type' => "String" ), array( 'name' => "flexy:nameuses", 'desc' => "nameuses", 'memberOf' => "Flexy", 'type' => "String" ), ) as $add) { array_push($out,$add); } } $this->jdata($out ); // } function roousage() // list of what elements, can have what as children.. { // use file.. // this is our hand made file at present.. shared with app.Builders code. $lines = file(dirname(__FILE__).'/RooUsage.txt'); $s = -1; $res = array(); $left = array(); foreach($lines as $l) { $l = preg_replace('#//.*#', '', $l); $l = trim($l); if (!strlen(trim($l))){ continue; } if (preg_match('/left:$/', $l)) { $s = 0; $left = array(); continue; } if (preg_match('/right:$/', $l)) { $s = 1; continue; } switch($s) { case 0: $left[] = $l; continue 2; case 1: if (!isset($res[$l])) { $res[$l] = array(); } foreach($left as $ll) { $res[$l][$ll] = true; } continue 2; default: continue 2; } } $ret = array(); ksort($res); foreach($res as $k=>$v) { $ret[] = array( 'name' => $k, 'parents' => array_keys($v) ); } // echo '';print_r($ret); $this->jdata($ret); //echo '';print_R($ret);exit; } }