JSONExporter.php in Loft Data Grids 7.2
File
vendor/aklump/loft_data_grids/src/AKlump/LoftDataGrids/JSONExporter.php
View source
<?php
namespace AKlump\LoftDataGrids;
class JSONExporter extends Exporter implements ExporterInterface {
protected $extension = '.json';
public function getInfo() {
$info = parent::getInfo();
$info = array(
'name' => 'JSON Format',
'shortname' => 'JSON',
'description' => 'Export data in JSON file format. For more information visit: http://www.json.org.',
) + $info;
return $info;
}
public function compile($page_id = null) {
$data = $this
->getDataAsTransformedArray($page_id, null);
if ($this
->getSettings()->prune) {
if (count($data) === 1) {
$data = reset($data);
}
if (count($data) === 1) {
$data = reset($data);
}
}
$this->output = json_encode($data);
return $this;
}
protected function setSettingsDefault() {
parent::setSettingsDefault();
$this->settings->prune = false;
return $this;
}
}