/var/www/vhosts/ihelp.ro/httpdocs/src/Controller/Component
NameSizeModeActions
MailHelpComponent.php39810644editdlrm
SpreadsheetComponent.php40260644editdlrm
ToolsComponent.php50230644editdlrm
UserAuthComponent.php155410644editdlrm
UserConnectComponent.php61770644editdlrm
Edit: /var/www/vhosts/ihelp.ro/httpdocs/src/Controller/Component/SpreadsheetComponent.php (4026B)
isCli()) { $helper->log(__('This example should only be run from a Web Browser') . PHP_EOL); return; } // Create new Spreadsheet object $spreadsheet = new Spreadsheet(); // Set document properties $spreadsheet->getProperties()->setCreator($author) ->setLastModifiedBy($author) ->setTitle($title . ' :: ' . $category) ->setSubject($category) ->setDescription("Entries from " . $title . " describing {$category}.") ->setKeywords($title . " " . $category) ->setCategory($category); $line = 1; if (empty($data)) { $spreadsheet->setCellValue('A' . $line++, __('No results were returned by the query')); } else { // Add headers $spreadsheet->getActiveSheet()->fromArray(array_keys($data[0]), NULL, 'A' . $line++); // Add content foreach ($data as $key => $value) { // Write the data into the new spreadsheet starting at cell A1 $spreadsheet->getActiveSheet()->fromArray($value, NULL, 'A' . $line++); } } // Print header && footer $spreadsheet->getActiveSheet()->getHeaderFooter() ->setOddHeader('&C&H' . __('Please treat this document as confidential!')); $spreadsheet->getActiveSheet()->getHeaderFooter() ->setOddFooter('&L&B' . $spreadsheet->getProperties()->getTitle() . '&R' . __('Page {0} of {1}', ['&P', '&N'])); // Rename worksheet $spreadsheet->getActiveSheet()->setTitle($title . ' - ' . $category); // Set ORIENTATION_LANDSCAPE for printing. Default is ORIENTATION_PORTRAIT $spreadsheet->getActiveSheet()->getPageSetup()->setOrientation(\PhpOffice\PhpSpreadsheet\Worksheet\PageSetup::ORIENTATION_LANDSCAPE); // Set active sheet index to the first sheet, so Excel opens this as the first sheet $spreadsheet->setActiveSheetIndex(0); $writer = IOFactory::createWriter($spreadsheet, 'Xlsx'); if ($save != 'save') { $filename = \Cake\Utility\Inflector::dasherize(strtolower($title) . '-' . strtolower($category) . '-' . date('Y-m-d_H-i-s')) . ".xlsx"; // Redirect output to a client’s web browser (Xlsx) header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="' . $filename . '"'); header('Cache-Control: max-age=0'); // If you're serving to IE 9, then the following may be needed header('Cache-Control: max-age=1'); // If you're serving to IE over SSL, then the following may be needed header('Expires: Mon, 26 Jul 1997 05:00:00 GMT'); // Date in the past header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); // always modified header('Cache-Control: cache, must-revalidate'); // HTTP/1.1 header('Pragma: public'); // HTTP/1.0 $writer->save('php://output'); } else { $filename = \Cake\Utility\Inflector::dasherize(strtolower($title) . '-' . strtolower($category) . '-' . $options['dateFrom'] . '_' . $options['dateUntil'] . '-' . rand(1, 99999)) . ".xlsx"; $path = ROOT . DS . 'files' . DS . 'Donations' . DS . $filename; $writer->save($path); } exit; } }