X-Git-Url: http://git.inspyration.org/?a=blobdiff_plain;f=module%2FGalerie%2Fsrc%2FGalerie%2FController%2FIndexController.php;h=66892fa49027710d4176d6b26d97bf66fd3bd754;hb=58235318254494ae496425c78f076bf26ba1266c;hp=48b3b61b68d02859d25232eb61693614cad2e0cf;hpb=82ecfb3e24417c3f3b37bad291715260b63ed9fb;p=zf2.biz%2Fgalerie.git diff --git a/module/Galerie/src/Galerie/Controller/IndexController.php b/module/Galerie/src/Galerie/Controller/IndexController.php index 48b3b61..66892fa 100644 --- a/module/Galerie/src/Galerie/Controller/IndexController.php +++ b/module/Galerie/src/Galerie/Controller/IndexController.php @@ -3,13 +3,39 @@ namespace Galerie\Controller; use Zend\Mvc\Controller\AbstractActionController; - +use Zend\View\Model\ViewModel; class IndexController extends AbstractActionController -{ +{ + + private $_galerieTable; + private $_galerieInfoTable; + + + private function _getGalerieTable() + { + if (!$this->_galerieTable) { + $sm = $this->getServiceLocator(); + $this->_galerieTable = $sm->get('Galerie\Model\GalerieTable'); + } + return $this->_galerieTable; + } + + private function _getGalerieInfoTable() + { + if (!$this->_galerieInfoTable) { + $sm = $this->getServiceLocator(); + $this->_galerieInfoTable = $sm->get('Galerie\Model\GalerieInfoTable'); + } + return $this->_galerieInfoTable; + } + + public function indexAction() { - return array(); + return new ViewModel(array( + 'galeries' => $this->_getGalerieInfoTable()->all(), + )); } public function editAction() @@ -23,7 +49,16 @@ class IndexController extends AbstractActionController } public function viewAction() - { - return array(); + { + $galerie = $this->_getGalerieInfoTable()->any( + $this->params()->fromRoute('id', null) + ); + if (!$galerie) { + $this->getResponse()->setStatusCode(404); + return; + } + return new ViewModel(array( + 'galerie' => $galerie, + )); } }