public function indexAction() { // Only blog or user as subject if (Engine_Api::_()->core()->hasSubject('blog')) { $this->view->blog = $blog = Engine_Api::_()->core()->getSubject('blog'); $this->view->owner = $owner = $blog->getOwner(); } else { if (Engine_Api::_()->core()->hasSubject('user')) { $this->view->blog = null; $this->view->owner = $owner = Engine_Api::_()->core()->getSubject('user'); } else { return $this->setNoRender(); } } // Prepare data $blogTable = Engine_Api::_()->getDbtable('blogs', 'blog'); // Make form $this->view->form = $form = new Blog_Form_Search(); $form->removeElement('show'); // Populate form $categories = Engine_Api::_()->getDbtable('categories', 'blog')->getCategoriesAssoc(); if (!empty($categories) && is_array($categories) && $form->getElement('category')) { $form->getElement('category')->addMultiOptions($categories); } // Process form $p = Zend_Controller_Front::getInstance()->getRequest()->getParams(); $form->isValid($p); $values = $form->getValues(); $this->view->formValues = array_filter($values); $values['user_id'] = $owner->getIdentity(); $values['draft'] = "0"; $values['visible'] = "1"; $this->view->assign($values); // Other stuff $this->view->archiveList = $blogTable->getArchiveList($owner); $this->view->userTags = Engine_Api::_()->getDbtable('tags', 'core')->getTagsByTagger('blog', $owner); $this->view->userCategories = Engine_Api::_()->getDbtable('categories', 'blog')->getUserCategoriesAssoc($owner->getIdentity()); }
public function indexAction() { $viewer = Engine_Api::_()->user()->getViewer(); // Make form $this->view->form = $form = new Blog_Form_Search(); $form->removeElement('draft'); if (!$viewer->getIdentity()) { $form->removeElement('show'); } // Populate form $categories = Engine_Api::_()->getDbtable('categories', 'blog')->getCategoriesAssoc(); if (!empty($categories) && is_array($categories) && $form->getElement('category')) { $form->getElement('category')->addMultiOptions($categories); } // Process form $p = Zend_Controller_Front::getInstance()->getRequest()->getParams(); $form->isValid($p); $values = $form->getValues(); $this->view->formValues = array_filter($values); $values['draft'] = "0"; $values['visible'] = "1"; // Do the show thingy if (@$values['show'] == 2) { // Get an array of friend ids $table = Engine_Api::_()->getItemTable('user'); $select = $viewer->membership()->getMembersSelect('user_id'); $friends = $table->fetchAll($select); // Get stuff $ids = array(); foreach ($friends as $friend) { $ids[] = $friend->user_id; } //unset($values['show']); $values['users'] = $ids; } $this->view->assign($values); }
public function manageAction() { if (!$this->_helper->requireUser()->isValid()) { return; } // Render $this->_helper->content->setEnabled(); // Prepare data $viewer = Engine_Api::_()->user()->getViewer(); $this->view->form = $form = new Blog_Form_Search(); $this->view->canCreate = $this->_helper->requireAuth()->setAuthParams('blog', null, 'create')->checkRequire(); $form->removeElement('show'); // Populate form $categories = Engine_Api::_()->getDbtable('categories', 'blog')->getCategoriesAssoc(); if (!empty($categories) && is_array($categories) && $form->getElement('category')) { $form->getElement('category')->addMultiOptions($categories); } // Process form $form->isValid($this->_getAllParams()); $values = $form->getValues(); $this->view->formValues = array_filter($values); $values['user_id'] = $viewer->getIdentity(); // Get paginator $this->view->paginator = $paginator = Engine_Api::_()->getItemTable('blog')->getBlogsPaginator($values); $items_per_page = Engine_Api::_()->getApi('settings', 'core')->blog_page; $paginator->setItemCountPerPage($items_per_page); $this->view->paginator = $paginator->setCurrentPageNumber($values['page']); }