Index: branches/RC/core/units/general/cat_dbitem_export.php =================================================================== diff -u -N -r10024 -r11685 --- branches/RC/core/units/general/cat_dbitem_export.php (.../cat_dbitem_export.php) (revision 10024) +++ branches/RC/core/units/general/cat_dbitem_export.php (.../cat_dbitem_export.php) (revision 11685) @@ -214,6 +214,11 @@ if ( $automatic_fields && ($this->exportOptions['SkipFirstRow']) ) { $this->openFile($event); $this->exportOptions['ExportColumns'] = $this->readRecord(); + + if (!$this->exportOptions['ExportColumns']) { + $this->exportOptions['ExportColumns'] = Array (); + } + $this->closeFile(); // remove additional (non-parseble columns) @@ -1268,10 +1273,10 @@ } /** - * Export form validation & processing - * - * @param kEvent $event - */ + * Export form validation & processing + * + * @param kEvent $event + */ function OnExportBegin(&$event) { $items_info = $this->Application->GetVar( $event->getPrefixSpecial(true) ); @@ -1313,7 +1318,7 @@ if( $export_object->verifyOptions($event) ) { - if ($object->GetDBField('ExportSavePreset')) { + if ($this->_getExportSavePreset($object)) { $name = $object->GetDBField('ExportPresetName'); $export_settings = $this->Application->RecallPersistentVar('export_settings'); @@ -1350,6 +1355,21 @@ } /** + * Returns export save preset name, when used at all + * + * @param kDBItem $object + * @return string + */ + function _getExportSavePreset(&$object) + { + if (!array_key_exists('ExportSavePreset', $object->Fields)) { + return ''; + } + + return $object->GetDBField('ExportSavePreset'); + } + + /** * set required fields based on import or export params * * @param kEvent $event @@ -1361,7 +1381,7 @@ $required_fields['export'] = Array('ExportFormat', 'ExportFilename','ExportColumns'); $object =& $event->getObject(); - if ($object->GetDBField('ExportSavePreset')) { + if ($this->_getExportSavePreset($object)) { $required_fields['export'][] = 'ExportPresetName'; }