Current File : /home/karenpetzb/application/models/Category2.php
<?php
class Category2 extends Zend_Db_Table
{
	protected $_name = 'category2';
	protected $_primary = 'ID';

    public function updateTreeInLineAsPathOfChilds($idParent, $updateCurrent) { 
        
        $i = 0;
        if ($updateCurrent){
            $sqlCurrent = "SELECT c.ID ID, c.NAVNOM_URLPARENTS NAVNOM_URLPARENTS, c.IDPARENT IDPARENT, c.NAVNOM NAVNOM FROM category2 c WHERE c.ID = ".$idParent." ORDER BY c.NOM ASC ";
            $dataCurrent = $this->getAdapter()->fetchRow($sqlCurrent);  
            if ($dataCurrent) {
                $dataCurrent['NAVNOM_URLPARENTS'] = $this->getTreeInLineAsPathOf($idParent);
                $this->update($dataCurrent, 'ID = '.$idParent);
                $i++;
            }
        }
        
        $sql = "SELECT c.ID ID, c.NAVNOM_URLPARENTS NAVNOM_URLPARENTS, c.IDPARENT IDPARENT, c.NAVNOM NAVNOM FROM category2 c WHERE c.IDPARENT = ".$idParent." ORDER BY c.NOM ASC ";
        $cats =  $this->getAdapter()->fetchAll($sql);
        foreach($cats as $row)
        { 
            $row['NAVNOM_URLPARENTS'] = $this->getTreeInLineAsPathOf($row['ID']);
            $this->update($row, 'ID = '.$row['ID']);
            
            $i += $this->updateTreeInLineAsPathOfChilds($row['ID'], false);            
            $i++;
        }   
        return $i;
    }
	
	public function generateAllCategoriesMenu($idCat) {
		$dataResult = $this->computeCategoryChildToArray($idCat, 0);
		return $dataResult;
	}

	private function computeCategoryChildsOneArray($idParent, $result) {
		$dataChilds = $this->getCategoryByParent($idParent);

		$dataResult = array(
			'PARENT' => $idParent,
			'CHILDS' => $dataChilds
		);
		array_push($result, $dataResult);
		if (!empty($dataChilds) && sizeof($dataChilds) > 0) {
			foreach($dataChilds as $row) { 
				$result = $this->computeCategoryChildsOneArray($row['ID'], $result);
			}
		}
		return $result;
	}

	private function computeCategoryChildToArray($idParent, $level) {
		$dataChilds = $this->getCategoryByParent($idParent);  
		if (!empty($dataChilds) && sizeof($dataChilds) > 0) { 
			$dataReturn = array(); 
			foreach($dataChilds as $row) {                 
				$data = array(
					'CHILDS' => $this->computeCategoryChildToArray($row['ID'], $level + 1),
					'CATEGORIE' => $row,
					'LEVEL' => $level
				);
				array_push($dataReturn, $data);
			} 
			return $dataReturn;
		} else { return array(); }
	}

	private function getCategoryByParent($idParent) {
		$sql = "SELECT c.ID ID, c.NOM NOM, c.URL URL, c.NAVNOM NAVNOM,c.DESCRIPTION DESCRIPTION, c.isACTIVE isACTIVE, c.IDPARENT IDPARENT, c.NAVNOM_URLPARENTS NAVNOM_URLPARENTS FROM category2 c WHERE c.IDPARENT = ".$idParent." AND c.isACTIVE = 1";
		if ($idParent == 0) {
			$sql .= " ORDER BY c.ID ASC";
		} else {
			$sql .= " ORDER BY c.NOM ASC";
		} 
		return $this->getAdapter()->fetchAll($sql);
	}

	/**
     *
     * Getters
     *
     */
	public function getParentFirstOf($idCat) {
		$sql = "SELECT DISTINCT c0.ID ID, c0.NOM NOM, c0.IDPARENT IDPARENT , c0.NAVNOM NAVNOM
				FROM category2 AS c0
				LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
				LEFT JOIN category2 AS c2 ON c2.IDPARENT = c1.ID
				LEFT JOIN category2 AS c3 ON c3.IDPARENT = c2.ID 
				LEFT JOIN category2 AS c4 ON c4.IDPARENT = c3.ID 
				LEFT JOIN category2 AS c5 ON c5.IDPARENT = c4.ID 
				LEFT JOIN category2 AS c6 ON c6.IDPARENT = c5.ID 
				LEFT JOIN category2 AS c7 ON c7.IDPARENT = c6.ID 
				LEFT JOIN category2 AS c8 ON c8.IDPARENT = c7.ID 
				LEFT JOIN category2 AS c9 ON c9.IDPARENT = c8.ID 
				LEFT JOIN category2 AS c10 ON c10.IDPARENT = c9.ID 
				WHERE ( c0.ID = ".$idCat."  
				OR c1.ID = ".$idCat." 
				OR c2.ID = ".$idCat." 
				OR c3.ID = ".$idCat." 
				OR c4.ID = ".$idCat." 
				OR c5.ID = ".$idCat." 
				OR c6.ID = ".$idCat." 
				OR c7.ID = ".$idCat." 
				OR c8.ID = ".$idCat." 
				OR c9.ID = ".$idCat." 
				OR c10.ID = ".$idCat." )
				ORDER BY c0.IDPARENT ASC 
				";
        
		return $this->getAdapter()->fetchRow($sql);
	}
    
    public function getTreeInLineAsPathOf($idCat) {
		$sql = "SELECT DISTINCT c0.ID ID, c0.NOM NOM, c0.IDPARENT IDPARENT , c0.NAVNOM NAVNOM, c0.NAVNOM_URLPARENTS NAVNOM_URLPARENTS
				FROM category2 AS c0
				LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
				LEFT JOIN category2 AS c2 ON c2.IDPARENT = c1.ID
				LEFT JOIN category2 AS c3 ON c3.IDPARENT = c2.ID 
				LEFT JOIN category2 AS c4 ON c4.IDPARENT = c3.ID 
				LEFT JOIN category2 AS c5 ON c5.IDPARENT = c4.ID 
				LEFT JOIN category2 AS c6 ON c6.IDPARENT = c5.ID 
				LEFT JOIN category2 AS c7 ON c7.IDPARENT = c6.ID 
				LEFT JOIN category2 AS c8 ON c8.IDPARENT = c7.ID 
				LEFT JOIN category2 AS c9 ON c9.IDPARENT = c8.ID 
				LEFT JOIN category2 AS c10 ON c10.IDPARENT = c9.ID 
				WHERE ( c0.ID = ".$idCat."  
				OR c1.ID = ".$idCat." 
				OR c2.ID = ".$idCat." 
				OR c3.ID = ".$idCat." 
				OR c4.ID = ".$idCat." 
				OR c5.ID = ".$idCat." 
				OR c6.ID = ".$idCat." 
				OR c7.ID = ".$idCat." 
				OR c8.ID = ".$idCat." 
				OR c9.ID = ".$idCat." 
				OR c10.ID = ".$idCat." )
				ORDER BY c0.IDPARENT ASC 
				";      
		$mylinks = array();
		$links = $this->getAdapter()->fetchAll($sql);

        $result = $links[0]['NAVNOM'];
        
        if ($links[0]['IDPARENT'] == 0) {
            $result = $links[0]['NAVNOM_URLPARENTS'];
        }
        
		$mylinks[0]['ID'] = $links[0]['ID'];
		$j=0;
		for ($i=1;$i<sizeof($links);$i++) {
			foreach ($links as $link) {
				if($link['IDPARENT'] == $mylinks[$j]['ID'] && $link['ID'] != $idCat) {
					$mylinks[$i]['ID'] = $link['ID'];
					$result .= "/".$link['NAVNOM'];
					$j++;
					break;
				}
			}
		}
		return $result;
	}
    
	public function getTreeInLineOf($idCat) {
		$sql = "SELECT DISTINCT c0.ID ID, c0.NOM NOM, c0.IDPARENT IDPARENT , c0.NAVNOM NAVNOM, c0.NAVNOM_URLPARENTS NAVNOM_URLPARENTS
				FROM category2 AS c0
				LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
				LEFT JOIN category2 AS c2 ON c2.IDPARENT = c1.ID
				LEFT JOIN category2 AS c3 ON c3.IDPARENT = c2.ID 
				LEFT JOIN category2 AS c4 ON c4.IDPARENT = c3.ID 
				LEFT JOIN category2 AS c5 ON c5.IDPARENT = c4.ID 
				LEFT JOIN category2 AS c6 ON c6.IDPARENT = c5.ID 
				LEFT JOIN category2 AS c7 ON c7.IDPARENT = c6.ID 
				LEFT JOIN category2 AS c8 ON c8.IDPARENT = c7.ID 
				LEFT JOIN category2 AS c9 ON c9.IDPARENT = c8.ID 
				LEFT JOIN category2 AS c10 ON c10.IDPARENT = c9.ID 
				WHERE ( c0.ID = ".$idCat."  
				OR c1.ID = ".$idCat." 
				OR c2.ID = ".$idCat." 
				OR c3.ID = ".$idCat." 
				OR c4.ID = ".$idCat." 
				OR c5.ID = ".$idCat." 
				OR c6.ID = ".$idCat." 
				OR c7.ID = ".$idCat." 
				OR c8.ID = ".$idCat." 
				OR c9.ID = ".$idCat." 
				OR c10.ID = ".$idCat." )
				ORDER BY c0.IDPARENT ASC 
				";
		$mylinks = array();
		$links = $this->getAdapter()->fetchAll($sql);

		$mylinks[0]['ID'] = $links[0]['ID'];
		$mylinks[0]['NOM'] = $links[0]['NOM'];
		$mylinks[0]['IDPARENT'] = $links[0]['IDPARENT'];
		$mylinks[0]['NAVNOM'] = $links[0]['NAVNOM'];
		$mylinks[0]['NAVNOM_URLPARENTS'] = $links[0]['NAVNOM_URLPARENTS'];
		$j=0;
		for ($i=1;$i<sizeof($links);$i++) {
			foreach ($links as $link) {
				if($link['IDPARENT'] == $mylinks[$j]['ID']) {
					$mylinks[$i]['ID'] = $link['ID'];
					$mylinks[$i]['NOM'] = $link['NOM'];
					$mylinks[$i]['IDPARENT'] = $link['IDPARENT'];
					$mylinks[$i]['NAVNOM'] = $link['NAVNOM'];
					$mylinks[$i]['NAVNOM_URLPARENTS'] = $link['NAVNOM_URLPARENTS'];
					$j++;
					break;
				}
			}
		}
		return $mylinks;
	}
	public function getTreeCatsOfParent($idCat) {
        
		$sql = "SELECT c0.NOM NOM0, c1.NOM NOM1,
						c0.URL URL0, c1.URL URL1,
						c0.ID ID0, c1.ID ID1,
						c0.isACTIVE isACTIVE0, c1.isACTIVE isACTIVE1,
						c0.IDPARENT IDPARENT0, c1.IDPARENT IDPARENT1,
						c0.NAVNOM NAVNOM0, c1.NAVNOM NAVNOM1,
						c0.DESCRIPTION DESCRIPTION0, c1.DESCRIPTION DESCRIPTION1,
						c0.NAVNOM_URLPARENTS NAVNOM_URLPARENTS0, c1.NAVNOM_URLPARENTS NAVNOM_URLPARENTS1
				FROM category2 AS c0
				LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
				WHERE c0.IDPARENT = ".$idCat."
				ORDER BY c0.ID,c1.ID ASC;
				";
		$results = $this->getAdapter()->fetchAll($sql);
        
		$listCat = array();
		$i = 0;
		$j = 0;
		$idParent = 0;
		$isNew = true;
		$isFirst = true;
		foreach($results as $row) {
			if ($row['ID0'] != $idParent) {
				$idParent = $row['ID0'];
				$isNew = true;
				$i++;
				$j = 0 ;
				if ($isFirst) {$i = 0; $isFirst = false;}
			} else {
				$isNew = false;
			}
			if ($isNew) {
				if ($row['isACTIVE0'] == true) {
					$listCat[$i]['NOM'] = $row['NOM0'];
					$listCat[$i]['ID'] = $row['ID0'];
					$listCat[$i]['URL'] = $row['URL0'];
					$listCat[$i]['NAVNOM'] = $row['NAVNOM0'];
					$listCat[$i]['DESCRIPTION'] = $row['DESCRIPTION0'];
					$listCat[$i]['isACTIVE'] = $row['isACTIVE0'];
					$listCat[$i]['NAVNOM_URLPARENTS'] = $row['NAVNOM_URLPARENTS0'];
					$listCat[$i]['SUBS'] = array();
				}
			}

			if ($row['isACTIVE1'] == true) {
				$listCat[$i]['SUBS'][$j]['NOM'] = $row['NOM1'];
				$listCat[$i]['SUBS'][$j]['ID'] = $row['ID1'];
				$listCat[$i]['SUBS'][$j]['URL'] = $row['URL1'];
				$listCat[$i]['SUBS'][$j]['DESCRIPTION'] = $row['DESCRIPTION1'];
				$listCat[$i]['SUBS'][$j]['NAVNOM'] = $row['NAVNOM1'];
				$listCat[$i]['SUBS'][$j]['isACTIVE'] = $row['isACTIVE1'];
				$listCat[$i]['SUBS'][$j]['NAVNOM_URLPARENTS'] = $row['NAVNOM_URLPARENTS1'];
				$j++;
			}
		}
		return $listCat;
        
	}
	public function getTreeCatsOf($idCat) {
		$sql = "SELECT c0.NOM NOM0, c1.NOM NOM1,
						c0.NAVTITRENOM NAVTITRENOM0, c1.NAVTITRENOM NAVTITRENOM1,
						c0.NAVDESCRIPTION NAVDESC0, c1.NAVDESCRIPTION NAVDESC1,
						c0.URL URL0, c1.URL URL1,
						c0.ID ID0, c1.ID ID1,
						c0.IDPARENT IDPARENT0, c1.IDPARENT IDPARENT1,
						c0.NAVNOM NAVNOM0, c1.NAVNOM NAVNOM1,
						c0.DESCRIPTION DESCRIPTION0, c1.DESCRIPTION DESCRIPTION1,
						c0.KEYWORDS KEYWORDS0, c1.KEYWORDS KEYWORDS1,
						c0.CHOICEURL CHOICEURL0, c1.CHOICEURL CHOICEURL1,
						c0.CHOICEDOC CHOICEDOC0, c1.CHOICEDOC CHOICEDOC1,
						c0.isACTIVE isACTIVE0, c1.isACTIVE isACTIVE1,
						c0.NAVNOM_URLPARENTS NAVNOM_URLPARENTS0, c1.NAVNOM_URLPARENTS NAVNOM_URLPARENTS1,
						(Select count(1) from product as p where p.idcategory = c1.id and p.isactive = 0) NBPRODUCT
				FROM category2 AS c0
				LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
				WHERE c0.ID = ".$idCat."  
				ORDER BY c0.NOM,c1.NOM ASC;
				";
		$results = $this->getAdapter()->fetchAll($sql);
		$listCat = array();
		$j = 0;
		$isNew = true;
		foreach($results as $row) {
			if ($isNew == true) {
				$listCat['NOM'] = $row['NOM0'];
				$listCat['NAVTITRENOM'] = $row['NAVTITRENOM0'];
				$listCat['NAVDESCRIPTION'] = $row['NAVDESC0'];
				$listCat['ID'] = $row['ID0'];
				$listCat['URL'] = $row['URL0'];
				$listCat['NAVNOM'] = $row['NAVNOM0'];
				$listCat['KEYWORDS'] = $row['KEYWORDS0'];
				$listCat['DESCRIPTION'] = $row['DESCRIPTION0'];
				$listCat['CHOICEURL'] = $row['CHOICEURL0'];
				$listCat['CHOICEDOC'] = $row['CHOICEDOC0'];
				$listCat['isACTIVE'] = $row['isACTIVE0'];
				$listCat['NAVNOM_URLPARENTS'] = $row['NAVNOM_URLPARENTS0'];
				$listCat['IDPARENT'] = $row['IDPARENT0'];
				$listCat['SUBS'] = array();
				if (!empty($row['isACTIVE1']) && $row['isACTIVE1'] == true) {
					if (!empty($row['NOM1'])) {
						$listCat['SUBS'][$j]['NOM'] = $row['NOM1'];
						$listCat['SUBS'][$j]['NAVTITRENOM'] = $row['NAVTITRENOM1'];
						$listCat['SUBS'][$j]['NAVDESCRIPTION'] = $row['NAVDESC1'];
						$listCat['SUBS'][$j]['ID'] = $row['ID1'];
						$listCat['SUBS'][$j]['URL'] = $row['URL1'];
						$listCat['SUBS'][$j]['DESCRIPTION'] = $row['DESCRIPTION1'];
						$listCat['SUBS'][$j]['KEYWORDS'] = $row['KEYWORDS1'];
						$listCat['SUBS'][$j]['NAVNOM'] = $row['NAVNOM1'];
						$listCat['SUBS'][$j]['CHOICEURL'] = $row['CHOICEURL1'];
						$listCat['SUBS'][$j]['CHOICEDOC'] = $row['CHOICEDOC1'];
						$listCat['SUBS'][$j]['isACTIVE'] = $row['isACTIVE1'];
						$listCat['SUBS'][$j]['NAVNOM_URLPARENTS'] = $row['NAVNOM_URLPARENTS1'];
						$listCat['SUBS'][$j]['NBPRODUCT'] = $row['NBPRODUCT'];
						$listCat['SUBS'][$j]['IDPARENT'] = $row['IDPARENT1'];
						$j++;
					}
				}
				$isNew = false;
			} else {
				if (!empty($row['isACTIVE1']) && $row['isACTIVE1'] == true) {
					$listCat['SUBS'][$j]['NOM'] = $row['NOM1'];
					$listCat['SUBS'][$j]['NAVTITRENOM'] = $row['NAVTITRENOM1'];
					$listCat['SUBS'][$j]['NAVDESCRIPTION'] = $row['NAVDESC1'];
					$listCat['SUBS'][$j]['ID'] = $row['ID1'];
					$listCat['SUBS'][$j]['URL'] = $row['URL1'];
					$listCat['SUBS'][$j]['DESCRIPTION'] = $row['DESCRIPTION1'];
					$listCat['SUBS'][$j]['KEYWORDS'] = $row['KEYWORDS1'];
					$listCat['SUBS'][$j]['NAVNOM'] = $row['NAVNOM1'];
					$listCat['SUBS'][$j]['CHOICEURL'] = $row['CHOICEURL1'];
					$listCat['SUBS'][$j]['CHOICEDOC'] = $row['CHOICEDOC1'];
					$listCat['SUBS'][$j]['isACTIVE'] = $row['isACTIVE1'];
					$listCat['SUBS'][$j]['NAVNOM_URLPARENTS'] = $row['NAVNOM_URLPARENTS1'];
					$listCat['SUBS'][$j]['NBPRODUCT'] = $row['NBPRODUCT'];
					$listCat['SUBS'][$j]['IDPARENT'] = $row['IDPARENT1'];
					$j++;
				}
			}

		}
		return $listCat;
	}

	public function getAllCategoriesByID ($idParent) {
		$sql = "
		SELECT c0.NOM NOM0, c1.NOM NOM1, c2.NOM NOM2, c3.NOM NOM3, c4.NOM NOM4, c5.NOM NOM5, 
				c6.NOM NOM6, c7.NOM NOM7, c8.NOM NOM8, c9.NOM NOM9, c10.NOM NOM10,
				c0.isACTIVE isACTIVE0, c1.isACTIVE isACTIVE1, c2.isACTIVE isACTIVE2, c3.isACTIVE isACTIVE3, c4.isACTIVE isACTIVE4, c5.isACTIVE isACTIVE5, 
				c6.isACTIVE isACTIVE6, c7.isACTIVE isACTIVE7, c8.isACTIVE isACTIVE8, c9.isACTIVE isACTIVE9, c10.isACTIVE isACTIVE10,
				c0.URL URL0, c1.URL URL1, c2.URL URL2, c3.URL URL3, c4.URL URL4, c5.URL URL5, 
				c6.URL URL6, c7.URL URL7, c8.URL URL8, c9.URL URL9, c10.URL URL10,
				c0.ID ID0, c1.ID ID1, c2.ID ID2, c3.ID ID3, c4.ID ID4, c5.ID ID5, 
				c6.ID ID6, c7.ID ID7, c8.ID ID8, c9.ID ID9, c10.ID ID10,
				c0.IDPARENT IDPARENT0, c1.IDPARENT IDPARENT1, c2.IDPARENT IDPARENT2, c3.IDPARENT IDPARENT3, c4.IDPARENT IDPARENT4, c5.IDPARENT IDPARENT5, 
				c6.IDPARENT IDPARENT6, c7.IDPARENT IDPARENT7, c8.IDPARENT IDPARENT8, c9.IDPARENT IDPARENT9, c10.IDPARENT IDPARENT10
		FROM category2 AS c0
		LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
		LEFT JOIN category2 AS c2 ON c2.IDPARENT = c1.ID
		LEFT JOIN category2 AS c3 ON c3.IDPARENT = c2.ID 
		LEFT JOIN category2 AS c4 ON c4.IDPARENT = c3.ID 
		LEFT JOIN category2 AS c5 ON c5.IDPARENT = c4.ID 
		LEFT JOIN category2 AS c6 ON c6.IDPARENT = c5.ID 
		LEFT JOIN category2 AS c7 ON c7.IDPARENT = c6.ID 
		LEFT JOIN category2 AS c8 ON c8.IDPARENT = c7.ID 
		LEFT JOIN category2 AS c9 ON c9.IDPARENT = c8.ID 
		LEFT JOIN category2 AS c10 ON c10.IDPARENT = c9.ID 
		WHERE c0.IDPARENT = ".$idParent."
		ORDER BY c0.ID,c1.NOM,c2.NOM,c3.NOM,c4.NOM,c5.NOM,c6.NOM,c7.NOM,c8.NOM,c9.NOM,c10.NOM ASC;
    	"; 
		return $this->getAdapter()->fetchAll($sql);
	}
	
    public function getAllCategoriesIDByID ($idParent) {
		$sql = "
		SELECT c0.ID ID0, c1.ID ID1, c2.ID ID2, c3.ID ID3, c4.ID ID4, c5.ID ID5, 
				c6.ID ID6, c7.ID ID7, c8.ID ID8, c9.ID ID9, c10.ID ID10
		FROM category2 AS c0
		LEFT JOIN category2 AS c1 ON c1.IDPARENT = c0.ID
		LEFT JOIN category2 AS c2 ON c2.IDPARENT = c1.ID
		LEFT JOIN category2 AS c3 ON c3.IDPARENT = c2.ID 
		LEFT JOIN category2 AS c4 ON c4.IDPARENT = c3.ID 
		LEFT JOIN category2 AS c5 ON c5.IDPARENT = c4.ID 
		LEFT JOIN category2 AS c6 ON c6.IDPARENT = c5.ID 
		LEFT JOIN category2 AS c7 ON c7.IDPARENT = c6.ID 
		LEFT JOIN category2 AS c8 ON c8.IDPARENT = c7.ID 
		LEFT JOIN category2 AS c9 ON c9.IDPARENT = c8.ID 
		LEFT JOIN category2 AS c10 ON c10.IDPARENT = c9.ID 
		WHERE c0.IDPARENT = ".$idParent;   
		return $this->getAdapter()->fetchAll($sql);
	}
    
	public function getIdCatFromProductId($idProd) {
		$sql = "
		SELECT p.IDCATEGORY ID
		FROM product AS p
		WHERE p.ID = ".$idProd;
		$data = $this->getAdapter()->fetchRow($sql);
		return $data['ID'];
	}
	
	public function getAllSubsIDByIDToString($idCat) {
        if ($idCat != null && (int)$idCat > 0) {
		    $listCat = $this->getAllCategoriesIDByID($idCat);
		    $listTemp = array();
		    $value = 'ID';
		    $listCatString = $idCat;
		
		    //list of sub cats
		    foreach ($listCat as $row) {
			    for ($level=0 ; $level<11; $level++) {
				    if ((!isset($listTemp[$value.$level]) || $listTemp[$value.$level] != $row[$value.$level]) && $row[$value.$level] != null) {
					    $listTemp[$value.$level] = $row[$value.$level];
					    if ($listCatString !="") {
						    $listCatString .= ' ,'.$row[$value.$level];
					    } else {
						    $listCatString = $row[$value.$level];
					    }
				    } 
			    }
		    }
		    return $listCatString;
        }
        return "";
	}


	public function getAllCategoriesProperties() {
		$sql = "SELECT c.ID ID, c.NOM NOM, c.URL URL, c.NAVNOM NAVNOM, c.isACTIVE isACTIVE FROM category2 c ORDER BY c.NOM ASC ";
		$cats = $this->getAdapter()->fetchAll($sql);
		$data = array();
		foreach($cats as $row)
		{
			$data[$row['ID']] = array(
				'ID' => $row['ID'],
				'NOM' => $row['NOM'],
				'URL' => $row['URL'],
				'NAVNOM' => $row['NAVNOM'],
				'isACTIVE' => $row['isACTIVE']
			);
		}
		return $data;
	}

	private function getCategoryById($idCat) {
		$sql = "SELECT c.ID ID, c.NOM NOM, c.URL URL, c.NAVNOM NAVNOM FROM category2 c WHERE c.ID = ".$idCat." ORDER BY c.NOM ASC";
		$cats = $this->getAdapter()->fetchAll($sql);
		$data = array();
		foreach ($cats AS $row) {
			$data[$row['ID']] = $row['NOM'];
		}
		return $data;
	} 
}
?>