public function setSubmissionArchiveByRelation(\DataContainer &$dc) { if ($dc->objModule === null || !$dc->objModule->addSubmissionRelation || $dc->objModule->type != \HeimrichHannot\Submissions\Creator\SubmissionCreator::MODULE_SUBMISSION_READER) { return; } $objSubmission = SubmissionModel::findByPk($dc->id); if ($objSubmission === null) { return; } $arrRelation = $GLOBALS['SUBMISSION_RELATIONS'][$dc->objModule->submissionRelation]; if (!is_array($arrRelation)) { return; } if (!$arrRelation['table'] || !$arrRelation['submissionField']) { return; } if (($objRelatedItem = SubmissionCreator::findRelatedEntity($objSubmission->{$arrRelation['submissionField']}, $arrRelation, $dc->objModule)) === null) { return; } if (!$objRelatedItem->addSubmissionRelation) { return; } if (($objArchive = SubmissionArchiveModel::findByPk($objRelatedItem->submissionRelation)) === null) { return; } // overwrite submission archive by related item submission archive $objSubmission->pid = $objArchive->id; $objSubmission->save(); }
public function onCreate($strTable, $insertID, $arrSet, \DataContainer $dc) { if (($objModel = SubmissionArchiveModel::findByPk($insertID)) === null) { return; } if (($uuid = Submissions::getDefaultAttachmentSRC()) !== null && \Validator::isUuid($uuid)) { $objModel->attachmentUploadFolder = class_exists('Contao\\StringUtil') ? \StringUtil::uuidToBin($uuid) : \String::uuidToBin($uuid); } $objModel->save(); }