summaryrefslogtreecommitdiffstats
path: root/codebase/Dhtmlx/Connector/TreeConnector.php
diff options
context:
space:
mode:
authorEgor <egor.26.93@gmail.com>2015-06-11 16:01:20 +0300
committerEgor <egor.26.93@gmail.com>2015-06-11 16:01:20 +0300
commit5992398183bf84c87dd4315d1532d10022718e9b (patch)
treec192dec5f76a7875265659d42dc2a5be22fc319b /codebase/Dhtmlx/Connector/TreeConnector.php
parent388e84730286a153c12a77d9f19215f2b74c5c4f (diff)
downloadconnector-php-5992398183bf84c87dd4315d1532d10022718e9b.zip
connector-php-5992398183bf84c87dd4315d1532d10022718e9b.tar.gz
connector-php-5992398183bf84c87dd4315d1532d10022718e9b.tar.bz2
Changed psr-4 structure to psr-0. Added connectors for phpcake, codeigniter frameworks.
Diffstat (limited to 'codebase/Dhtmlx/Connector/TreeConnector.php')
-rw-r--r--codebase/Dhtmlx/Connector/TreeConnector.php63
1 files changed, 63 insertions, 0 deletions
diff --git a/codebase/Dhtmlx/Connector/TreeConnector.php b/codebase/Dhtmlx/Connector/TreeConnector.php
new file mode 100644
index 0000000..b01e399
--- /dev/null
+++ b/codebase/Dhtmlx/Connector/TreeConnector.php
@@ -0,0 +1,63 @@
+<?php
+
+namespace DHTMLX\Connector;
+
+class TreeConnector extends Connector
+{
+ protected $parent_name = 'id';
+ public $rootId = "0";
+
+ /*! constructor
+
+ Here initilization of all Masters occurs, execution timer initialized
+ @param res
+ db connection resource
+ @param type
+ string , which hold type of database ( MySQL or Postgre ), optional, instead of short DB name, full name of DataWrapper-based class can be provided
+ @param item_type
+ 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 = "TreeDataItem";
+ if (!$data_type) $data_type = "TreeDataProcessor";
+ if (!$render_type) $render_type = "TreeRenderStrategy";
+ parent::__construct($res, $type, $item_type, $data_type, $render_type);
+ }
+
+ //parse GET scoope, all operations with incoming request must be done here
+ public function parse_request()
+ {
+ parent::parse_request();
+
+ if (isset($_GET[$this->parent_name]))
+ $this->request->set_relation($_GET[$this->parent_name]);
+ else
+ $this->request->set_relation($this->rootId);
+
+ $this->request->set_limit(0, 0); //netralize default reaction on dyn. loading mode
+ }
+
+ /*! renders self as xml, starting part
+ */
+ public function xml_start()
+ {
+ $attributes = "";
+ foreach ($this->attributes as $k => $v)
+ $attributes .= " " . $k . "='" . $v . "'";
+
+ return "<tree id='" . $this->request->get_relation() . "'" . $attributes . ">";
+ }
+
+ /*! renders self as xml, ending part
+ */
+ public function xml_end()
+ {
+ $this->fill_collections();
+ return $this->extra_output . "</tree>";
+ }
+}