diff options
Diffstat (limited to 'codebase')
-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'>"; } } |