public function generate($generator)
{
$this->genEnvironment = $generator->genEnvironment;
// API / POST
$this->userSettings = $generator->getUserSettings();
$csvDelimiter = $this->getCSVDelimiter();
$newline = $this->getLineEndingChar();
$data = $generator->generateExportData();
$content = "";
if ($data["isFirstBatch"]) {
$content .= implode($csvDelimiter, $data["colData"]);
}
$numCols = count($data["colData"]);
foreach ($data["rowData"] as $row) {
// see if any of the cells contains the delimiter. If it does, wrap it in double quotes.
$cleanRow = array();
for ($i = 0; $i < $numCols; $i++) {
if (strpos($row[$i], $csvDelimiter) !== false) {
$cleanRow[] = "\"" . preg_replace("/\"/", "\\\"", $row[$i]) . "\"";
} else {
$cleanRow[] = $row[$i];
}
}
$content .= $newline . implode($csvDelimiter, $cleanRow);
}
return array("success" => true, "content" => $content);
}