private function _getExportColumns(AmForms_ExportModel $export, AmForms_FormModel $form)
{
$columns = array();
// Ignore Matrix fields in column name setting
$ignoreMatrixName = craft()->amForms_settings->isSettingValueEnabled('ignoreMatrixFieldAndBlockNames', AmFormsModel::SettingExport);
// Get fields
$fields = $this->getExportFields($form);
// Get column names
foreach ($export->map['fields'] as $fieldHandle => $columnName) {
// Should the field be included?
if ($export->map['included'][$fieldHandle] && isset($fields[$fieldHandle])) {
// Actual field
$field = $fields[$fieldHandle];
if (is_array($field)) {
$field = (object) $field;
// Fix standard fields
}
// Add column based on the field type
switch ($field->type) {
case 'Matrix':
$blockTypes = $field->getFieldType()->getSettings()->getBlockTypes();
foreach ($blockTypes as $blockType) {
$blockTypeFields = $blockType->getFields();
foreach ($blockTypeFields as $blockTypeField) {
$columns[] = (!$ignoreMatrixName ? $columnName . ':' . $blockType->name . ':' : '') . $blockTypeField->name;
}
}
break;
default:
$columns[] = $columnName;
break;
}
}
}
return $columns;
}