--- nfo/php/libs/org.netfrag.app/WebExplorer/AbstractExplorer.php 2003/04/18 16:21:37 1.19 +++ nfo/php/libs/org.netfrag.app/WebExplorer/AbstractExplorer.php 2003/04/19 16:24:49 1.20 @@ -1,9 +1,15 @@ register_gui_module("content", "data", "tree", "WebExplorer::Module::DataTree" ); - + // 2003-04-18 - Nav.Tree + $this->register_gui_module("nav", "nav", "tree", "WebExplorer::Module::NavigationTree" ); + + // 2003-04-18 - UserManagment Nav.Tree (we need only a different 'label' as Nav.Tree yet..) + $this->register_gui_module("UMnav", "nav", "tree", "WebExplorer::Module::NavigationTree" ); + } function register_source_module($label, $args) { @@ -298,7 +309,7 @@ } //print Dumper($ecom); - // NOW[2003-18-04] done at via args(prepare args!) to pass at constructor + // NEW[2003-04-18] done via args(prepare args!) passed at constructor // (needed for non-real objects instanced at some child of AbstractGUIModule, eg. NavigationList) /* // add hidden vars, needed for explorer control @@ -413,7 +424,7 @@ if($val['ecom_abstract_type'] == "list") { if($val['ecom_data_locator_key'] == "rpc") { //$data_locator_meta = array( transport => 'rpc', metatype => 'data', vartype => 'objects', nodename => $val['ecom_data_ident']); - $data_locator_meta = array( transport => 'rpc', metatype => 'data', abstract_type => 'list', nodename => $val['ecom_data_ident']); + $data_locator_meta = array( transport => 'rpc', metatype => 'data', abstract_type => 'list', nodename => $val['ecom_data_ident'], list_meta => $val['ecom_data_meta']); } else { user_error("AbstractExplorer::_prepare_component_args - Cannot build query for data_locator_key $val[ecom_data_locator_key] !"); } @@ -536,10 +547,18 @@ user_error("AbstractExplorer::_prepare_component_args - Cannot build schema query for data_locator_key $val[ecom_data_locator_key] !"); } - // tree + // NEW [2003-04-18]: Abstract navigation tree } elseif ($val['ecom_abstract_type'] == "tree") { $args = array(); - print "TREE!
"; + if($label == "nav") { + //$args[options][data_locator_meta] = array( transport => 'rpc', metatype => 'schema', abstract_type => 'tree', ident => $val['ecom_data_ident'], nodename => $val['ecom_data_meta']); + $args[options][data_locator_meta] = array( transport => 'rpc', metatype => 'schema', filter => 'nodes.root:concrete' ); + $args['caption'] = $val['ecom_data_source_key']; + } elseif($label == "UMnav") { + //$args[options][data_locator_meta] = array( transport => 'rpc', metatype => 'schema', abstract_type => 'tree', ident => $val['ecom_data_ident'], nodename => $val['ecom_data_meta']); + $args[options][data_locator_meta] = array( transport => 'rpc', metatype => 'method', method => 'UserManagmentSchema' ); + $args['caption'] = "Benutzerverwaltung"; + } // NEW [2003-04-18]: transparent nav - argument pass-through mode } elseif ($val['ecom_abstract_type'] == "transparent") { @@ -586,7 +605,7 @@ } - // add hidden items to args + // NEW[2003-04-18]: add hidden items to args $args['hidden_elements'] = $this->_get_hidden_items($label); return $args;