Exemple #1
0
 protected function _getNodeJson(Bubble_CmsTree_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;
 }
 public function addChildrenFilter(Bubble_CmsTree_Model_Cms_Page $page)
 {
     $this->setOrder('position', Varien_Data_Collection::SORT_ORDER_ASC);
     $this->getSelect()->where('main_table.store_id = ?', $page->getStoreId())->where('main_table.parent_id = ?', $page->getId());
     $currentStoreId = Mage::app()->getStore()->getId();
     if ($page->getStoreId() == 0 && $currentStoreId) {
         $this->getSelect()->join(array('stores' => $this->getTable('cms/page_store')), 'main_table.page_id = stores.page_id', '')->where('stores.store_id = ?', $currentStoreId);
     }
     return $this;
 }