public function getServiceConfig() { return array('factories' => array('Senjata\\Model\\SenjataTable' => function ($sm) { $tableGateway = $sm->get('PrajuritTableGateway'); $table = new SenjataTable($tableGateway); return $table; }, 'SenjataTableGateway' => function ($sm) { $dbAdapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); $resultSetPrototype = new ResultSet(); $resultSetPrototype->setArrayObjectPrototype(new Prajurit()); return new TableGateway('senjata', $dbAdapter, null, $resultSetPrototype); })); }
public function testExceptionIsThrownWhenGettingNonexistentAlbum() { $resultSet = new ResultSet(); $resultSet->setArrayObjectPrototype(new Album()); $resultSet->initialize(array()); $mockTableGateway = $this->getMock('Zend\\Db\\TableGateway\\TableGateway', array('select'), array(), '', false); $mockTableGateway->expects($this->once())->method('select')->with(array('id' => 123))->will($this->returnValue($resultSet)); $albumTable = new AlbumTable($mockTableGateway); try { $albumTable->getAlbum(123); } catch (\Exception $e) { $this->assertSame('Could not find row 123', $e->getMessage()); return; } $this->fail('Expected exception was not thrown'); }
public function getServiceConfig() { return array('factories' => array('NotificationTableGateway' => function ($sm) { $dbAdapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); $resultSetPrototype = new ResultSet(); $resultSetPrototype->setArrayObjectPrototype(new User()); return new TableGateway('notification', $dbAdapter, array(new Feature\MasterSlaveFeature($sm->get('SlaveAdapter')), new Feature\MasterSlaveFeature($sm->get('SlaveAdapter2')), new Feature\MasterSlaveFeature($sm->get('SlaveAdapter3'))), $resultSetPrototype); }, 'NotificationTable' => function ($sm) { $tableGateway = $sm->get('QuestionTableGateway'); $table = new QuestionTable($tableGateway); return $table; }, 'Application\\V1\\Rest\\Notification\\NotificationMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Notification\NotificationMapper($adapter); }, 'Application\\V1\\Rest\\User\\UserMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\User\UserMapper($adapter); }, 'Application\\V1\\Rest\\Address\\AddressMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Address\AddressMapper($adapter); }, 'Application\\V1\\Rest\\Order\\OrderMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Order\OrderMapper($adapter); }, 'Application\\V1\\Rest\\Rate\\RateMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Rate\RateMapper($adapter); }, 'Application\\V1\\Rest\\Offer\\OfferMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Offer\OfferMapper($adapter); }, 'Application\\V1\\Rest\\Package\\PackageMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Package\PackageMapper($adapter); }, 'Application\\V1\\Rest\\Page\\PageMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Page\PageMapper($adapter); }, 'Application\\V1\\Rest\\Service\\ServiceMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Service\ServiceMapper($adapter); }, 'Application\\V1\\Rest\\Category\\CategoryMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Category\CategoryMapper($adapter); }, 'Application\\V1\\Rest\\Location\\LocationMapper' => function ($sm) { $adapter = $sm->get('Zend\\Db\\Adapter\\Adapter'); return new \Application\V1\Rest\Location\LocationMapper($adapter); })); }
public function fetchAllPaginated($itemCountPerPage, $dateYM = false) { // create a new Select object for the table album $select = new Select($this->table); $select->where(array("unpublish=0")); //$select->join("blvd", "blvd.id = gallery.blvd_id", SELECT::SQL_STAR, SELECT::JOIN_INNER); $select->order('date_inserted DESC'); //echo $select->getSqlString($this->dbAdapter->getPlatform()); $resultSetPrototype = new ResultSet(); $resultSetPrototype->setArrayObjectPrototype(new GalleryModel()); // create a new pagination adapter object $paginatorAdapter = new DbSelect($select, $this->dbAdapter, $resultSetPrototype); $paginator = new Paginator($paginatorAdapter); if ($dateYM) { $select = $this->sql->select(); $select->columns(array('num' => new \Zend\Db\Sql\Expression('COUNT(*)'))); $select->where(array("unpublish=0")); $dateUt = mktime(0, 0, 0, date("m", strtotime($dateYM)) + 1, 1, date("Y", strtotime($dateYM))); $select->where(array("date_inserted <= '" . date("Y-m-d 00:00:00", $dateUt) . "'")); //echo "<br><br>".$select->getSqlString($this->dbAdapter->getPlatform());exit; $statement = $this->sql->prepareStatementForSqlObject($select); $result = $statement->execute(); $rows = new ResultSet(); $arr = $rows->initialize($result)->toArray(); $num = $arr[0]['num']; $totalItemCount = $paginator->getTotalItemCount(); $page = ceil(($totalItemCount - $num) / 36); $paginator->setCurrentPageNumber($page); } $paginator->setItemCountPerPage($itemCountPerPage); return $paginator; }