diff options
author | Dmitry <dmitry@dhtmlx.com> | 2012-05-10 18:04:27 +0200 |
---|---|---|
committer | Dmitry <dmitry@dhtmlx.com> | 2012-05-10 18:04:27 +0200 |
commit | c9fcb91534cb423ec47e1b403c6a1786d6a7cd59 (patch) | |
tree | 8df957c75bf110dde727c19dfae288e57ed46d2a | |
parent | c6f8ad6c0b6a5c6d7c512805dcc93a0f7bc52146 (diff) | |
download | connector-php-c9fcb91534cb423ec47e1b403c6a1786d6a7cd59.zip connector-php-c9fcb91534cb423ec47e1b403c6a1786d6a7cd59.tar.gz connector-php-c9fcb91534cb423ec47e1b403c6a1786d6a7cd59.tar.bz2 |
fix different separator for treegrid
-rw-r--r-- | codebase/strategy.php | 12 | ||||
-rw-r--r-- | codebase/treegridmultitable_connector.php | 4 |
2 files changed, 13 insertions, 3 deletions
diff --git a/codebase/strategy.php b/codebase/strategy.php index e09d82f..3caeaeb 100644 --- a/codebase/strategy.php +++ b/codebase/strategy.php @@ -156,6 +156,10 @@ class MultitableTreeRenderStrategy extends TreeRenderStrategy { $conn->event->attach("afterProcessing", Array($this, 'id_translate_after')); } + public function set_separator($sep) { + $this->sep = $sep; + } + public function render_set($res, $name, $dload, $sep){ $output=""; $index=0; @@ -238,7 +242,7 @@ class MultitableTreeRenderStrategy extends TreeRenderStrategy { $this->max_level = $max_level; } public function parse_id($id, $set_level = true) { - $parts = explode($this->sep, urldecode($id)); + $parts = explode('#', urldecode($id)); if (count($parts) === 2) { $level = $parts[0] + 1; $id = $parts[1]; @@ -285,6 +289,12 @@ class GroupRenderStrategy extends RenderStrategy { private $id_postfix = '__{group_param}'; + public function __construct($conn) { + parent::__construct($conn); + $conn->event->attach("beforeProcessing", Array($this, 'check_id')); + $conn->event->attach("onInit", Array($this, 'replace_postfix')); + } + public function render_set($res, $name, $dload, $sep){ $output=""; $index=0; diff --git a/codebase/treegridmultitable_connector.php b/codebase/treegridmultitable_connector.php index c092382..af32ca2 100644 --- a/codebase/treegridmultitable_connector.php +++ b/codebase/treegridmultitable_connector.php @@ -7,11 +7,11 @@ require_once("treegrid_connector.php"); class TreeGridMultitableConnector extends TreeGridConnector{ - private $max_level = null; public function __construct($res,$type=false,$item_type=false,$data_type=false,$render_type=false){ $data_type="TreeGridMultitableDataProcessor"; if (!$render_type) $render_type="MultitableTreeRenderStrategy"; parent::__construct($res,$type,$item_type,$data_type,$render_type); + $this->render->set_separator("%23"); } public function render(){ @@ -29,7 +29,7 @@ class TreeGridMultitableConnector extends TreeGridConnector{ if (isset($_GET['id'])) { return "<rows parent='".$this->render->level_id($_GET['id'], $this->render->get_level() - 1)."'>"; } else { - return "<rows parent=''>"; + return "<rows parent='0'>"; } } |