You are here

public function Exporter::formatColumn in Loft Data Grids 6.2

Same name and namespace in other branches
  1. 7.2 vendor/aklump/loft_data_grids/src/AKlump/LoftDataGrids/Exporter.php \AKlump\LoftDataGrids\Exporter::formatColumn()

Format a single column with format by string

Parameters

string $column:

string $format_code:

  • USD

Return value

$this

Overrides ExporterInterface::formatColumn

1 call to Exporter::formatColumn()
XLSXExporter::formatColumn in vendor/aklump/loft_data_grids/src/AKlump/LoftDataGrids/XLSXExporter.php
Format a single column with a number format
1 method overrides Exporter::formatColumn()
XLSXExporter::formatColumn in vendor/aklump/loft_data_grids/src/AKlump/LoftDataGrids/XLSXExporter.php
Format a single column with a number format

File

vendor/aklump/loft_data_grids/src/AKlump/LoftDataGrids/Exporter.php, line 197

Class

Exporter
Class Exporter

Namespace

AKlump\LoftDataGrids

Code

public function formatColumn($column, $format_code) {
  $formatter = NULL;
  switch ($format_code) {
    case 'USD':
      $formatter = new DollarFormatter();
      break;
  }
  if (empty($formatter)) {
    return;
  }

  // Iterate all pages, all records on column and format cell
  $data = $this
    ->getData();
  foreach ($data
    ->getAllPageIds() as $page_id) {
    $page = $data
      ->getPage($page_id);
    foreach ($page as $record_id => $row) {
      if (isset($row[$column])) {
        $formatter
          ->set($row[$column]);
        $data
          ->setPage($page_id);
        $data
          ->setPointer($record_id);
        $data
          ->add($column, $formatter
          ->get());
      }
    }
  }
  return $this
    ->compile();
}