a pretty comprehensive xml import module
[openemr.git] / library / classes / CategoryTree.class.php
blobf7338c91e8b04a8de53b43702eb263ac90905072
1 <?php
3 require_once("Tree.class.php");
5 /**
6 * class CategoryTree
7 * This is a class for storing document categories using the MPTT implementation
8 */
10 class CategoryTree extends Tree {
14 * This just sits on top of the parent constructor, only a shell so that the _table var gets set
16 function CategoryTree($root,$root_type = ROOT_TYPE_ID) {
17 $this->_table = "categories";
18 parent::Tree($root,$root_type);
21 function _get_categories_array($patient_id) {
22 $categories = array();
23 $sql = "SELECT c.id, c.name, d.id AS document_id, d.type, d.url, d.docdate"
24 . " FROM categories AS c, documents AS d, categories_to_documents AS c2d"
25 . " WHERE c.id = c2d.category_id"
26 . " AND c2d.document_id = d.id";
28 if (is_numeric($patient_id)) {
29 $sql .= " AND d.foreign_id = '" . $patient_id . "'";
31 $sql .= " ORDER BY c.id ASC, d.docdate DESC, d.url ASC";
33 //echo $sql;
34 $result = $this->_db->Execute($sql);
36 while ($result && !$result->EOF) {
37 $categories[$result->fields['id']][$result->fields['document_id']] = $result->fields;
38 $result->MoveNext();
41 return $categories;