Example #1
0
 /**
  * Retrives frame object
  * @param Varien_Object $object Category Tree Node
  * @return Varien_Object
  */
 protected function _getFrame(Varien_Object $object, $level = 1)
 {
     $frame = new Varien_Object();
     $frame->setFrameId('category' . $object->getId());
     $frame->setFrameCategoryId($object->getId());
     $frame->setHeader($object->getName());
     $frame->setLevel($level + 1);
     if (Mage::getStoreConfig('catalog/frontend/flat_catalog_category')) {
         $frame->setChildren($object->getChildrenNodes());
     } else {
         $frame->setChildren($object->getChildren());
     }
     $frame->setChildrenCount($this->__getChildrenCount($object));
     if (Mage::getStoreConfig('catalog/frontend/flat_catalog_category')) {
         if (is_array($frame->getChildrenNodes()) || is_object($frame->getChildrenNodes()) && get_class($frame->getChildrenNodes()) == 'Varien_Data_Tree_Node_Collection') {
             foreach ($frame->getChildrenNodes() as $child) {
                 $this->_frames[] = $this->_getFrame($child, $level + 1);
             }
         }
     } else {
         if (is_array($frame->getChildren()) || is_object($frame->getChildren()) && get_class($frame->getChildren()) == 'Varien_Data_Tree_Node_Collection') {
             foreach ($frame->getChildren() as $child) {
                 $this->_frames[] = $this->_getFrame($child, $level + 1);
             }
         }
     }
     return $frame;
 }