Box\Spout\Writer\Style\Style::setFontBold PHP Method

setFontBold() public method

public setFontBold ( ) : Style
return Style
    public function setFontBold()
    {
        $this->fontBold = true;
        $this->hasSetFontBold = true;
        $this->shouldApplyFont = true;
        return $this;
    }

Usage Example

Esempio n. 1
-1
 /**
  * @param $formName string
  * @param $options array of option_name => option_value
  * @return void
  */
 public function export($formName, $options = null)
 {
     $this->setOptions($options);
     $this->setCommonOptions();
     // Security Check
     if (!$this->isAuthorized()) {
         $this->assertSecurityErrorMessage();
         return;
     }
     if (version_compare(phpversion(), '5.4') < 0) {
         $this->echoHeaders(array('Content-Type: text/html'));
         printf('<html><head><title>%s</title></head>', __('PHP Upgrade Needed', 'contact-form-7-to-database-extension'));
         _e('CFDB Excel file export requires PHP 5.4 or later on your server.', 'contact-form-7-to-database-extension');
         echo '<br/>';
         _e('Your server\'s PHP version: ', 'contact-form-7-to-database-extension');
         echo phpversion();
         echo '<br/>';
         printf('<a href="https://wordpress.org/about/requirements/">%s</a>', __('See WordPress Recommended PHP Version', 'contact-form-7-to-database-extension'));
         printf('</body></html');
         return;
     }
     require_once 'Spout-2.4.2/Autoloader/autoload.php';
     // required PHP 5.4
     // Query DB for the data for that form
     $submitTimeKeyName = 'Submit_Time_Key';
     $this->setDataIterator($formName, $submitTimeKeyName);
     $this->clearOutputBuffer();
     $type = Type::XLSX;
     $suffix = 'xlsx';
     if (isset($options['format'])) {
         switch ($options['format']) {
             case 'ods':
                 $type = Type::ODS;
                 $suffix = 'ods';
                 break;
                 //                case 'csv' :
                 //                    $type = Type::CSV;
                 //                    $suffix = 'csv';
                 //                    break;
             //                case 'csv' :
             //                    $type = Type::CSV;
             //                    $suffix = 'csv';
             //                    break;
             default:
                 break;
         }
     }
     $writer = WriterFactory::create($type);
     $writer->openToBrowser("{$formName}.{$suffix}");
     // stream data directly to the browser
     // Column Headers
     if (isset($this->options['header']) && $this->options['header'] != 'true') {
         // do not output column headers
     } else {
         $headerRow = array();
         foreach ($this->dataIterator->getDisplayColumns() as $aCol) {
             $colDisplayValue = $aCol;
             if ($this->headers && isset($this->headers[$aCol])) {
                 $colDisplayValue = $this->headers[$aCol];
             }
             $headerRow[] = $colDisplayValue;
         }
         $headerStyle = new Style();
         $headerStyle->setFontBold();
         $writer->addRowWithStyle($headerRow, $headerStyle);
         // add a row at a time
     }
     // Rows
     //        $showFileUrlsInExport = $this->plugin->getOption('ShowFileUrlsInExport') == 'true';
     while ($this->dataIterator->nextRow()) {
         $dataRow = array();
         $fields_with_file = null;
         if (isset($this->dataIterator->row['fields_with_file']) && $this->dataIterator->row['fields_with_file'] != null) {
             $fields_with_file = explode(',', $this->dataIterator->row['fields_with_file']);
         }
         foreach ($this->dataIterator->getDisplayColumns() as $aCol) {
             $cell = isset($this->dataIterator->row[$aCol]) ? $this->dataIterator->row[$aCol] : '';
             if ($aCol == 'Submitted' && isset($this->dataIterator->row[$submitTimeKeyName])) {
                 // Put date in a format that Excel et. al. understand
                 $timestamp = $this->dataIterator->row[$submitTimeKeyName];
                 $cell = date('Y-m-d H:i:s', $timestamp);
             }
             if ($fields_with_file && $cell && in_array($aCol, $fields_with_file)) {
                 // In the case of file links, we want to create a HYPERLINK formula as a link to download the file.
                 // But the Spout library doesn't support creating formulas.
                 // http://cfdbplugin.com/?p=1430
                 $url = $this->plugin->getFileUrl($this->dataIterator->row[$submitTimeKeyName], $formName, $aCol);
                 if ($type == Type::ODS) {
                     $cell = "=HYPERLINK(\"{$url}\"; \"{$cell}\")";
                 } else {
                     $cell = "=HYPERLINK(\"{$url}\", \"{$cell}\")";
                 }
             }
             $dataRow[] = $cell;
         }
         $writer->addRow($dataRow);
         // add a row at a time
     }
     $writer->close();
 }