X-Git-Url: http://git.inspyration.org/?p=zf2.biz%2Fgalerie.git;a=blobdiff_plain;f=module%2FGalerie%2Fsrc%2FGalerie%2FController%2FIndexController.php;h=551d046ccd7e0b1a538a7e9266fbca6ac2f6ba04;hp=1f358f35a35032a6466661c247eee7f1abb044bb;hb=5a72cf5caffa5f9b48f42e3be465f0e9d28cb78a;hpb=45e0c4ac133e798683a9333209c9d7824ca96327 diff --git a/module/Galerie/src/Galerie/Controller/IndexController.php b/module/Galerie/src/Galerie/Controller/IndexController.php index 1f358f3..551d046 100644 --- a/module/Galerie/src/Galerie/Controller/IndexController.php +++ b/module/Galerie/src/Galerie/Controller/IndexController.php @@ -14,6 +14,7 @@ class IndexController extends AbstractActionController private $_galerieTable; private $_galerieInfoTable; private $_galerieForm; + private $_galerieInfoExporter; private $_translator; @@ -54,6 +55,16 @@ class IndexController extends AbstractActionController return $this->_galerieForm; } + private function _getGalerieInfoExporter() + { + if (!$this->_galerieInfoExporter) { + $sm = $this->getServiceLocator(); + $this->_galerieInfoExporter = $sm->get('Galerie\Export\GalerieWorkbook'); + } + return $this->_galerieInfoExporter; + } + + public function indexAction() @@ -76,15 +87,30 @@ class IndexController extends AbstractActionController $response = $this->getResponse(); $response->setStatusCode(200); + // Modification des entêtes $headers = $this->getResponse()->getHeaders(); $headers->addHeaderLine('Content-Type', 'text/csv; charset=utf-8'); $headers->addHeaderLine('Content-Disposition', 'attachment; filename="export_galerie.csv"'); - $response->setContent(implode("\r\n", $content)); + return $response; } + + public function excelAction() { + // Récupération des informations brutes + $modelManager = $this->_getGalerieInfoTable(); + $datas = $modelManager->all(); + + $exporter = $this->_getGalerieInfoExporter(); + $exporter->build($datas); + + // Renvoi d'une réponse vide pour désactiver le rendu de la vue + return $this->getResponse(); + } + + public function listAction() { // Récupération de l'objet requête