*/ class stBlogFrontendComponents extends sfComponents { public function executeIndex() { $config = stConfig::getInstance(sfContext::getInstance(), 'stBlogBackend'); $ids = unserialize($config->get('blog_category_home')); $config->load(); if($config->get('active')==0 || $config->get('active_home')==0) { return sfView::NONE; } $blogs_count = $config->get('number'); $this->config = $config; $this->smarty = new stSmarty('stBlogFrontend'); $c = new Criteria(); $c->add(BlogPeer::ACTIVE, 1); if($ids){ $c->addJoin(BlogHasBlogCategoryPeer::BLOG_ID, BlogPeer::ID); $c->add(BlogHasBlogCategoryPeer::BLOG_CATEGORY_ID, $ids, Criteria::IN); $c->addGroupByColumn(BlogPeer::ID); } $c->setLimit($blogs_count); // if($config->get('date')==1) // { // $c->addDescendingOrderByColumn(BlogPeer::UPDATED_AT); // } // else // { $c->addDescendingOrderByColumn(BlogPeer::CREATED_AT); //} $blogs = BlogPeer::doSelect($c); $this->blogs = $blogs; } public function executeShowNaviCategory() { $this->smarty = new stSmarty('stBlogFrontend'); $config = stConfig::getInstance($this->getContext(), 'stBlogBackend'); $this->config = $config; $c = new Criteria(); $c -> add(BlogCategoryPeer::ACTIVE, 1); $c->addJoin(BlogHasBlogCategoryPeer::BLOG_CATEGORY_ID, BlogCategoryPeer::ID); $c->addGroupByColumn('blog_category_id'); if ($categorys = BlogCategoryPeer::doSelectWithI18n($c)) { foreach ($categorys as $key => $category) { $blog_category[$key]['name'] = $category->getName(); $blog_category[$key]['slug'] = $category->getUrl(); } } $this->blog_category = $blog_category; $this->user_culture = $this->getUser()->getCulture(); } }