protected function _getNodeJson(JR_CleverCms_Model_Cms_Page $page) { $item = array(); $selres = $this->getSelectedResources(); $item['text'] = $page->getTitle(); $item['sort_order'] = $page->getPosition(); $item['id'] = $page->getId(); if (in_array($item['id'], $selres)) { $item['checked'] = true; } $children = $page->getChildren(); if (empty($children)) { return $item; } if ($children) { $item['children'] = array(); foreach ($children as $child) { $item['children'][] = $this->_getNodeJson($child); } if (!empty($item['children'])) { usort($item['children'], array($this, '_sortTree')); } } return $item; }
/** * @param JR_CleverCms_Model_Cms_Page $cmsPage * @return JR_CleverCms_Model_Resource_Cms_Page_Collection */ protected function _getChildren(JR_CleverCms_Model_Cms_Page $cmsPage) { $childCollection = $cmsPage->getChildren(); $childCollection->addFieldToFilter('is_active', 1); $childCollection->addFieldToFilter('include_in_menu', 1); if (Mage::helper('cms/page')->isPermissionsEnabled(Mage::app()->getStore())) { $childCollection->addPermissionsFilter(Mage::getSingleton('customer/session')->getCustomerGroupId()); } // if ($level = Mage::getStoreConfig('catalog/navigation/max_depth')) { // $childCollection->addFieldToFilter('level', array('lteq' => $level + 1)); // } return $childCollection; }