/** * Category Combobox * * @return Zend_Form_Element_Select */ protected function _category() { $element = new Zend_Form_Element_Select('categoryId'); $element->setLabel('Category')->setRequired(true)->addDecorators($this->_inputDecorators)->setAttribs(array('class' => 'span4')); $categories = new Blog_Model_Category_Manager(); $select = $categories->getDbTable()->select()->order('path'); $select->order('path'); $select->where('path LIKE (?)', Blog_Model_Category_Manager::CATEGORY_ALIAS . '/%'); foreach ($categories->getDbTable()->fetchAll($select) as $row) { $element->addMultiOption($row->id, str_repeat("…", $row->level - 1) . " " . $row->title); } return $element; }
public function testEditWithDataAction() { $table = new Blog_Model_Post_Table(); $manager = new Blog_Model_Category_Manager(); $rootCat = $manager->getRoot(); $cat = $manager->getDbTable()->createRow($this->_fixture['category']); $rootCat->addChild($cat); $post = $table->createRow($this->_fixture['post']); $post->save(); $this->_doLogin(); $this->request->setMethod('POST')->setPost(array('title' => 'tttttttt', 'body' => 'tttttttt', 'categoryId' => 93, 'status' => 'draft')); $this->dispatch('/blog/post/edit/alias/' . $this->_fixture['post']['alias']); $this->assertModule('blog'); $this->assertController('post'); $this->assertAction('edit'); $post->delete(); $cat->delete(); }