diff options
author | Stanislau Wolski <stanislau.wolski@gmail.com> | 2013-08-28 15:12:25 +0300 |
---|---|---|
committer | Stanislau Wolski <stanislau.wolski@gmail.com> | 2013-08-28 15:12:25 +0300 |
commit | 3aa4511823e830d895c56ae1ca002d20ff9eb1bf (patch) | |
tree | 7662b7c64e1a59bc487be389c6c3f46bff93b3c9 /codebase/strategy.php | |
parent | 7db8ad5ff3dcfe12e9c2044c55b93322f980f6a8 (diff) | |
parent | 351c266ee5165fd2588f96282dcff697c31d6e19 (diff) | |
download | connector-php-3aa4511823e830d895c56ae1ca002d20ff9eb1bf.zip connector-php-3aa4511823e830d895c56ae1ca002d20ff9eb1bf.tar.gz connector-php-3aa4511823e830d895c56ae1ca002d20ff9eb1bf.tar.bz2 |
Merge branch 'master' of 192.168.3.251:connector-php
Diffstat (limited to 'codebase/strategy.php')
-rw-r--r-- | codebase/strategy.php | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/codebase/strategy.php b/codebase/strategy.php index eb579b8..92deadc 100644 --- a/codebase/strategy.php +++ b/codebase/strategy.php @@ -153,6 +153,7 @@ class TreeRenderStrategy extends RenderStrategy { $output=""; $index=0; $conn = $this->conn; + $config_copy = new DataConfig($config); $this->mix($config, $mix); while ($data=$conn->sql->get_next($res)){ $data = $this->simple_mix($mix, $data); @@ -166,8 +167,9 @@ class TreeRenderStrategy extends RenderStrategy { $output.=$data->to_xml_start(); if ($data->has_kids()===-1 || ( $data->has_kids()==true && !$dload)){ $sub_request = new DataRequestConfig($conn->get_request()); + $sub_request->set_fieldset(implode(",",$config_copy->db_names_list($conn->sql))); $sub_request->set_relation($data->get_id()); - $output.=$this->render_set($conn->sql->select($sub_request), $name, $dload, $sep, $config); + $output.=$this->render_set($conn->sql->select($sub_request), $name, $dload, $sep, $config_copy, $mix); } $output.=$data->to_xml_end(); $index++; @@ -205,6 +207,7 @@ class JSONTreeRenderStrategy extends TreeRenderStrategy { $output=array(); $index=0; $conn = $this->conn; + $config_copy = new DataConfig($config); $this->mix($config, $mix); while ($data=$conn->sql->get_next($res)){ $data = $this->complex_mix($mix, $data); @@ -218,8 +221,10 @@ class JSONTreeRenderStrategy extends TreeRenderStrategy { $record = $data->to_xml_start(); if ($data->has_kids()===-1 || ( $data->has_kids()==true && !$dload)){ $sub_request = new DataRequestConfig($conn->get_request()); + $sub_request->set_fieldset(implode(",",$config_copy->db_names_list($conn->sql))); $sub_request->set_relation($data->get_id()); - $temp = $this->render_set($conn->sql->select($sub_request), $name, $dload, $sep, $config, $mix); + $sub_request->set_filters(array()); + $temp = $this->render_set($conn->sql->select($sub_request), $name, $dload, $sep, $config_copy, $mix); if (sizeof($temp)) $record["data"] = $temp; } |