public static function getJoinTablesAndConditions($intExporter) { $arrTables = array(); $objJoins = \HeimrichHannot\FieldPalette\FieldPaletteModel::findPublishedByPidAndTableAndField($intExporter, 'tl_exporter', 'joinTables'); while ($objJoins->next()) { $arrTables[] = array('table' => $objJoins->joinTable, 'condition' => $objJoins->joinCondition); } return $arrTables; }
protected function exportAfterSubmission() { $objExportConfigs = FieldPaletteModel::findPublishedByPidAndTableAndField($this->objModule->id, 'tl_module', 'formHybridExportConfigs'); if ($objExportConfigs !== null) { while ($objExportConfigs->next()) { $objConfig = ExporterModel::findByPk($objExportConfigs->formhybrid_formHybridExportConfigs_config); if ($objConfig !== null) { $objConfig->type = Exporter::TYPE_ITEM; $objConfig->linkedTable = $this->strTable; // prepare fields for exporter $arrExportFields = array(); foreach ($this->arrFields as $objWidget) { $arrData = $GLOBALS['TL_DCA'][$this->strTable]['fields'][$objWidget->name]; $arrExportFields[$objWidget->name] = array('raw' => $this->objActiveRecord->{$objWidget->name}, 'inputType' => $arrData['inputType'], 'formatted' => FormSubmission::prepareSpecialValueForPrint($this->objActiveRecord->{$objWidget->name}, $arrData, $this->strTable, $this)); if ($arrData['inputType'] != 'explanation') { $arrExportFields[$objWidget->name]['label'] = $this->dca['fields'][$objWidget->name]['label'][0] ?: $objWidget->name; } if ($objWidget->subName) { foreach ($this->arrSubFields[$objWidget->subName] as $objSubWidget) { $arrData = $GLOBALS['TL_DCA'][$this->strTable][$objSubWidget->name]; $arrExportFields[$objSubWidget->name] = array('raw' => $this->objActiveRecord->{$objSubWidget->name}, 'inputType' => $arrData['inputType'], 'formatted' => FormSubmission::prepareSpecialValueForPrint($this->objActiveRecord->{$objSubWidget->name}, $arrData, $this->strTable, $this)); if ($arrData['inputType'] != 'explanation') { $arrExportFields[$objSubWidget->name]['label'] = $this->dca['fields'][$objSubWidget->name]['label'][0] ?: $objSubWidget->name; } } } } $objExporter = ModuleExporter::export($objConfig, $this->objActiveRecord, $arrExportFields); if ($objExportConfigs->formhybrid_formHybridExportConfigs_entityField) { $objFile = FilesModel::findByPath($objExporter->getFileDir() . '/' . $objExporter->getFilename()); $this->objActiveRecord->{$objExportConfigs->formhybrid_formHybridExportConfigs_entityField} = $objFile->uuid; $this->objActiveRecord->save(); } } } } }