public function user_navigation() { $view = new XView(Navigation_View); $view->title = 'Craiglist | ' . 'Main Page'; $model = new CategoryModel(); $view->categories = $model->getCategoryTree(-1); $model = new ArticleModel(); $view->total_groups = ceil($model->getCount() / $this->items_per_group); $this->__common($view); }
public static function getCategoryTree($parent = -1) { $query = mysql_query("SELECT *, (SELECT COUNT(id) FROM categories AS sub WHERE sub.parent_id = prime.id) AS count FROM categories AS prime WHERE parent_id='{$parent}'") or die(mysql_error()); $i = 0; $categories = array(); while ($row = mysql_fetch_assoc($query)) { $category = new Category($row['id'], $row['name']); $category->set('subcategory_count', $row['count']); $category->set('prime', $parent); $category->articles = ArticleModel::getArticleListByCategory($row['id']); $categories[$i] = $category; if ($row['count'] > 0) { $categories[$i]->categories = CategoryModel::getCategoryTree($row['id']); } else { $categories[$i]->categories = array(); } $i++; } return $categories; }
public function tree() { $view = new XView(Category_Accordion_List); $view->categories = CategoryModel::getCategoryTree(-1); $this->__common($view); }