diff options
author | Dmitry <dmitry@dhtmlx.com> | 2012-05-10 16:51:23 +0200 |
---|---|---|
committer | Dmitry <dmitry@dhtmlx.com> | 2012-05-10 16:51:23 +0200 |
commit | c6f8ad6c0b6a5c6d7c512805dcc93a0f7bc52146 (patch) | |
tree | bc857bf3796fee56d59cd2c433b32364af3238ce /codebase/treegrid_connector.php | |
parent | 5ea73eba6ea84547d3e325f075df60ef729168b3 (diff) | |
download | connector-php-c6f8ad6c0b6a5c6d7c512805dcc93a0f7bc52146.zip connector-php-c6f8ad6c0b6a5c6d7c512805dcc93a0f7bc52146.tar.gz connector-php-c6f8ad6c0b6a5c6d7c512805dcc93a0f7bc52146.tar.bz2 |
minimize duplicating using TreeRenderStrategy
Diffstat (limited to 'codebase/treegrid_connector.php')
-rw-r--r-- | codebase/treegrid_connector.php | 40 |
1 files changed, 9 insertions, 31 deletions
diff --git a/codebase/treegrid_connector.php b/codebase/treegrid_connector.php index f1270bf..f074879 100644 --- a/codebase/treegrid_connector.php +++ b/codebase/treegrid_connector.php @@ -52,8 +52,8 @@ class TreeGridDataItem extends GridDataItem{ /*! Connector for dhtmlxTreeGrid **/ class TreeGridConnector extends GridConnector{ - private $id_swap = array(); - + protected $parent_name = 'id'; + /*! constructor Here initilization of all Masters occurs, execution timer initialized @@ -65,50 +65,28 @@ class TreeGridConnector extends GridConnector{ name of class, which will be used for item rendering, optional, DataItem will be used by default @param data_type name of class which will be used for dataprocessor calls handling, optional, DataProcessor class will be used by default. + * @param render_type + * name of class which will provides data rendering */ public function __construct($res,$type=false,$item_type=false,$data_type=false,$render_type=false){ if (!$item_type) $item_type="TreeGridDataItem"; if (!$data_type) $data_type="TreeGridDataProcessor"; if (!$render_type) $render_type="TreeRenderStrategy"; parent::__construct($res,$type,$item_type,$data_type,$render_type); - - $this->event->attach("afterInsert",array($this,"parent_id_correction_a")); - $this->event->attach("beforeProcessing",array($this,"parent_id_correction_b")); } - /*! store info about ID changes during insert operation - @param dataAction - data action object during insert operation - */ - public function parent_id_correction_a($dataAction){ - $this->id_swap[$dataAction->get_id()]=$dataAction->get_new_id(); - } - /*! update ID if it was affected by previous operation - @param dataAction - data action object, before any processing operation - */ - public function parent_id_correction_b($dataAction){ - $relation = $this->config->relation_id["db_name"]; - $value = $dataAction->get_value($relation); - - if (array_key_exists($value,$this->id_swap)) - $dataAction->set_value($relation,$this->id_swap[$value]); - } - - /*! process treegrid specific options in incoming request - */ + /*! process treegrid specific options in incoming request */ public function parse_request(){ parent::parse_request(); - - if (isset($_GET["id"])) - $this->request->set_relation($_GET["id"]); + + if (isset($_GET[$this->parent_name])) + $this->request->set_relation($_GET[$this->parent_name]); else $this->request->set_relation("0"); - + $this->request->set_limit(0,0); //netralize default reaction on dyn. loading mode } - /*! renders self as xml, starting part */ protected function xml_start(){ |