public function exportAction()
 {
     $this->_helper->viewRenderer->setNoRender(true);
     $this->_helper->layout->disableLayout();
     $pageformProxy = new SxModule_Pageform_Proxy();
     $pageform = $pageformProxy->getById((int) $this->_getParam('id'));
     $subscriptionProxy = new SxModule_Pageform_Subscription_Proxy();
     $results = $subscriptionProxy->getAllAndPageformByPageformId($this->_getParam('id'), false);
     if (count($results) != 0) {
         $arrkeys = array_keys($results);
         $title = $results[$arrkeys[0]]->getPageformname();
         $objPHPExcel = new PHPExcel();
         $objPHPExcel->getProperties()->setCreator("SxModule");
         $objPHPExcel->createSheet(0);
         $objPHPExcel->setActiveSheetIndex(0);
         $objPHPSheet = $objPHPExcel->getActiveSheet();
         $objPHPSheet->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
         $objPHPSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
         $objPHPSheet->getHeaderFooter()->setOddFooter('&R' . $this->admin_tmx->_('page') . ' &P ' . $this->admin_tmx->_('from') . ' &N');
         $objPHPSheet->setShowGridlines(false);
         $objPHPSheet->getDefaultStyle()->getFont()->setSize(12.0);
         $objPHPSheet->getDefaultRowDimension()->setRowHeight(20);
         $objPHPSheet->setTitle($title);
         $margins = new PHPExcel_Worksheet_PageMargins();
         $margins->setLeft(0.2);
         $margins->setRight(0.2);
         $margins->setTop(0.2);
         $margins->setBottom(0.3);
         $objPHPSheet->setPageMargins($margins);
         $startrow = 5;
         $startcol = "E";
         $objPHPSheet->mergeCells('B2:G2');
         $objPHPSheet->mergeCells('B3:G3');
         $objPHPSheet->mergeCells('B4:G4');
         $objPHPSheet->duplicateStyleArray(array('font' => array('size' => 21, 'bold' => TRUE), 'alignment' => array('vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER)), "B2:F2");
         $objPHPSheet->setCellValue("B" . $startrow, "Id");
         $objPHPSheet->setCellValue("C" . $startrow, "Datum/tijd");
         $objPHPSheet->setCellValue("D" . $startrow, "Taal");
         $objPHPSheet->setCellValue("E" . $startrow, "URL");
         foreach ($pageform->getField() as $field) {
             $startcol++;
             $objPHPSheet->setCellValue($startcol . $startrow, $field->getTsl()->getName());
         }
         $objPHPSheet->duplicateStyleArray(array('font' => array('bold' => TRUE), 'alignment' => array('horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER)), "B{$startrow}:" . $startcol . $startrow);
         foreach ($results as $input) {
             $startrow++;
             $startcol = "E";
             $objPHPSheet->setCellValue("B" . $startrow, $input->getId());
             $objPHPSheet->setCellValue("C" . $startrow, $input->getDateCreated());
             $objPHPSheet->setCellValue("D" . $startrow, $input->getLng());
             $objPHPSheet->setCellValue("E" . $startrow, $input->getUrl());
             foreach ($pageform->getField() as $field) {
                 $startcol++;
                 $val = "";
                 foreach ($input->getMeta() as $meta) {
                     if ($field->getId() == $meta->getFieldId()) {
                         $pos = strpos($meta->getValue(), 'pageform_file');
                         if ($pos === false) {
                             $val = $meta->getValue();
                         } else {
                             $val = $this->view->baseUrl('form_files/' . $pageform->getId() . '/' . $meta->getValue());
                         }
                     }
                 }
                 $objPHPSheet->setCellValue($startcol . $startrow, $val);
             }
             $objPHPSheet->duplicateStyleArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN)), 'alignment' => array('vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER, 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_LEFT)), "B" . $startrow . ":" . --$startcol . $startrow);
         }
         $objPHPExcel->getActiveSheet()->getStyle('B2')->getAlignment()->setWrapText(true);
         $objPHPSheet->setCellValue('B2', $title);
         $objPHPSheet->setCellValue('B3', 'Export datum: ' . date('Y-m-d H:i:s'));
         $user = Zend_Auth::getInstance()->getIdentity();
         $objPHPSheet->setCellValue('B4', 'Export door: ' . $user->getFirstName() . ' ' . $user->getLastName());
         $objPHPSheet->getColumnDimension("B")->setAutoSize(true);
         $objPHPSheet->getColumnDimension("C")->setAutoSize(true);
         foreach ($results as $input) {
             $startrow++;
             $col = "D";
             foreach ($input->getMeta() as $meta) {
                 $objPHPSheet->getColumnDimension($col)->setAutoSize(true);
                 $col++;
             }
         }
         $date = date('d-m-Y-h-i-s');
         $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
         header("Pragma: public");
         header("Expires: 0");
         header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
         header("Content-Type: application/force-download");
         header("Content-Type: application/octet-stream");
         header("Content-Type: application/download");
         header("Content-Disposition: attachment; filename=export-" . $this->admin_tmx->_('pageform') . "-" . $title . "-{$date}.xls");
         header("Content-Transfer-Encoding: binary");
         $objWriter->save("php://output");
         die;
     } else {
         $flashMessenger = $this->_helper->getHelper('FlashMessenger');
         $flashMessenger->addMessage("Geen Ingaves");
         $this->_helper->redirector->gotoSimple('index', 'pageform');
     }
 }
 public function toExcel($masterarray, $lngs)
 {
     $this->_helper->viewRenderer->setNoRender(true);
     $this->_helper->layout->disableLayout();
     $title = "Export TMX {$_SERVER['SERVER_NAME']}";
     /* create excel */
     $objPHPExcel = new PHPExcel();
     $objPHPExcel->getProperties()->setCreator("SxCms - Gwen");
     $sheetId = 0;
     foreach ($masterarray as $title => $superarray) {
         $objPHPExcel->createSheet(NULL, $sheetId);
         $objPHPExcel->setActiveSheetIndex($sheetId);
         $objPHPExcel->getActiveSheet()->setTitle($title);
         $objPHPSheet = $objPHPExcel->getActiveSheet();
         /* page setup */
         $objPHPSheet->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
         $objPHPSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
         $objPHPSheet->getHeaderFooter()->setOddFooter('&Rpagina &P van &N');
         $objPHPSheet->setShowGridlines(false);
         $objPHPSheet->getDefaultStyle()->getFont()->setSize(12.0);
         $objPHPSheet->getDefaultRowDimension()->setRowHeight(20);
         $objPHPSheet->setTitle($title);
         /* page margins */
         $margins = new PHPExcel_Worksheet_PageMargins();
         $margins->setLeft(0.2);
         $margins->setRight(0.2);
         $margins->setTop(0.2);
         $margins->setBottom(0.3);
         $objPHPSheet->setPageMargins($margins);
         /* set headers */
         $objPHPSheet->setCellValue('A3', 'LABEL');
         $i = 0;
         $alphabet = range('A', 'Z');
         foreach ($lngs as $lng) {
             $i++;
             $objPHPSheet->setCellValue($alphabet[$i] . '3', $lng);
         }
         /* layout */
         $objPHPSheet->mergeCells('A1:D1');
         $objPHPSheet->duplicateStyleArray(array('font' => array('size' => 21, 'bold' => TRUE)), "A1:F1");
         // title
         $objPHPSheet->duplicateStyleArray(array('font' => array('bold' => TRUE), 'alignment' => array('horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER)), "A3:F3");
         //headers
         /* set data */
         $objPHPSheet->setCellValue('A1', $title);
         $rij = 3;
         foreach ($superarray as $result) {
             $rij++;
             $objPHPSheet->setCellValue('A' . $rij, $result['label']);
             $xi = 0;
             foreach ($lngs as $lng) {
                 $xi++;
                 $objPHPSheet->setCellValue($alphabet[$xi] . $rij, $result[$lng]);
             }
         }
         /* column width */
         for ($ii = 65; $ii < 68; $ii++) {
             $objPHPSheet->getColumnDimension(chr($ii))->setAutoSize(true);
         }
         $sheetId++;
     }
     $objPHPExcel->setActiveSheetIndex(0);
     /* output */
     $date = date('d-m-Y-h-i-s');
     $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
     //$objWriter->save(APPLICATION_ROOT .
     // "\public_html\\tmp\\export-leden-$date.xls");
     //$objWriter->save("/public_html/tmp/export-leden-$date.xls");
     header("Pragma: public");
     header("Expires: 0");
     header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
     header("Content-Type: application/force-download");
     header("Content-Type: application/octet-stream");
     header("Content-Type: application/download");
     header("Content-Disposition: attachment; filename=export-tmx-{$date}.xls");
     header("Content-Transfer-Encoding: binary");
     $objWriter->save("php://output");
     die;
 }
 public function exportAction()
 {
     $this->_helper->viewRenderer->setNoRender(true);
     $this->_helper->layout->disableLayout();
     $title = $this->admin_tmx->_('exportresults');
     $proxy = new SxModule_Subscribe_Proxy();
     $registrations = $proxy->getAllActive();
     $objPHPExcel = new PHPExcel();
     $objPHPExcel->getProperties()->setCreator("SxModule");
     $objPHPExcel->createSheet(0);
     $objPHPExcel->setActiveSheetIndex(0);
     $objPHPSheet = $objPHPExcel->getActiveSheet();
     $objPHPSheet->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);
     $objPHPSheet->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
     $objPHPSheet->getHeaderFooter()->setOddFooter('&R' . $this->admin_tmx->_('page') . ' &P ' . $this->admin_tmx->_('from') . ' &N');
     $objPHPSheet->setShowGridlines(false);
     $objPHPSheet->getDefaultStyle()->getFont()->setSize(12.0);
     $objPHPSheet->getDefaultRowDimension()->setRowHeight(20);
     $objPHPSheet->setTitle($title);
     $margins = new PHPExcel_Worksheet_PageMargins();
     $margins->setLeft(0.2);
     $margins->setRight(0.2);
     $margins->setTop(0.2);
     $margins->setBottom(0.3);
     $objPHPSheet->setPageMargins($margins);
     $objPHPSheet->setCellValue('A3', $this->admin_tmx->_('id'));
     $objPHPSheet->setCellValue('B3', $this->admin_tmx->_('name'));
     $objPHPSheet->setCellValue('C3', $this->admin_tmx->_('firstname'));
     $objPHPSheet->setCellValue('D3', $this->admin_tmx->_('email'));
     $objPHPSheet->setCellValue('E3', $this->admin_tmx->_('language'));
     $objPHPSheet->setCellValue('F3', $this->admin_tmx->_('active'));
     $objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setWrapText(true);
     $objPHPSheet->mergeCells('A1:D1');
     $objPHPSheet->duplicateStyleArray(array('font' => array('size' => 21, 'bold' => TRUE)), "A1:F1");
     $objPHPSheet->duplicateStyleArray(array('font' => array('bold' => TRUE), 'alignment' => array('horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER)), "A3:F3");
     $objPHPSheet->duplicateStyleArray(array('borders' => array('allborders' => array('style' => PHPExcel_Style_Border::BORDER_THIN)), 'alignment' => array('vertical' => PHPExcel_Style_Alignment::VERTICAL_CENTER)), "A4:F" . (count($registrations) + 3));
     $objPHPSheet->duplicateStyleArray(array('alignment' => array('horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER)), "A4:F" . (count($registrations) + 3));
     $objPHPSheet->setCellValue('A1', $title);
     $rij = 3;
     foreach ($registrations as $result) {
         $rij++;
         $objPHPSheet->setCellValue('A' . $rij, $result->getId());
         $objPHPSheet->setCellValue('B' . $rij, $result->getName());
         $objPHPSheet->setCellValue('C' . $rij, $result->getFirstname());
         $objPHPSheet->setCellValue('D' . $rij, $result->getEmail());
         $objPHPSheet->setCellValue('E' . $rij, $result->getLng());
         $objPHPSheet->setCellValue('F' . $rij, $result->getActive());
     }
     for ($ii = 65; $ii < 68; $ii++) {
         $objPHPSheet->getColumnDimension(chr($ii))->setAutoSize(true);
     }
     $objPHPSheet->getColumnDimension("A")->setWidth(5);
     $objPHPSheet->getColumnDimension("B")->setWidth(30);
     $objPHPSheet->getColumnDimension("C")->setWidth(30);
     $objPHPSheet->getColumnDimension("D")->setWidth(30);
     $objPHPSheet->getColumnDimension("E")->setWidth(5);
     $objPHPSheet->getColumnDimension("F")->setWidth(5);
     $date = date('d-m-Y-h-i-s');
     $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
     header("Pragma: public");
     header("Expires: 0");
     header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
     header("Content-Type: application/force-download");
     header("Content-Type: application/octet-stream");
     header("Content-Type: application/download");
     header("Content-Disposition: attachment; filename=export-" . $this->admin_tmx->_('registrations') . "-{$date}.xls");
     header("Content-Transfer-Encoding: binary");
     $objWriter->save("php://output");
     die;
 }