_dbTable = $dbTable; return $this; } public function getDbTable() { if (null === $this->_dbTable) { $this->setDbTable('Application_Model_DbTable_Filter'); } return $this->_dbTable; } public function save(Application_Model_Filter $filter) { $data = array('filterID'=> $filter->getID() ,'membershipID'=> $filter->getMembershipID() ,'groupID'=> $filter->getGroupID() ,'bootmenuID'=> $filter->getBootmenuID() ,'title'=> $filter->getTitle() ,'description'=> $filter->getDescription() ,'created'=> $filter->getCreated() ,'priority'=> $filter->getPriority() ); if (null === ($id = $filter->getID()) ) { unset($data['id']); $this->getDbTable()->insert($data); } else { $this->getDbTable()->update($data, array('id = ?' => $id)); } } public function find($id, Application_Model_Filter $filter) { $result = $this->getDbTable()->find($id); if (0 == count($result)) { return; } $row = $result->current(); $filter->setID($row->filterID)->setMembershipID($row->membershipID)->setGroupID($row->groupID)->setBootmenuID($row->bootmenuID)->setTitle($row->title)->setDescription($row->description)->setCreated($row->created)->setPriority($row->priority); } public function fetchAll() { $resultSet = $this->getDbTable()->fetchAll(); $entries = array(); foreach ($resultSet as $row) { $entry = new Application_Model_Filter(); $entry->setID($row->filterID)->setMembershipID($row->membershipID) ->setGroupID($row->groupID) ->setBootmenuID($row->bootmenuID) ->setTitle($row->title) ->setDescription($row->description) ->setCreated($row->created) ->setPriority($row->priority); $entries[] = $entry; } return $entries; } }