/** * Create the application document registry * @param array $aData * @return string **/ public function create($aData) { $oConnection = Propel::getConnection(InputDocumentPeer::DATABASE_NAME); try { if (isset($aData['INP_DOC_UID']) && $aData['INP_DOC_UID'] == '') { unset($aData['INP_DOC_UID']); } if (!isset($aData['INP_DOC_UID'])) { $aData['INP_DOC_UID'] = G::generateUniqueID(); } $oInputDocument = new InputDocument(); $oInputDocument->fromArray($aData, BasePeer::TYPE_FIELDNAME); if ($oInputDocument->validate()) { $oConnection->begin(); if (isset($aData['INP_DOC_TITLE'])) { $oInputDocument->setInpDocTitle($aData['INP_DOC_TITLE']); } if (isset($aData['INP_DOC_DESCRIPTION'])) { $oInputDocument->setInpDocDescription($aData['INP_DOC_DESCRIPTION']); } $iResult = $oInputDocument->save(); $oConnection->commit(); return $aData['INP_DOC_UID']; } else { $sMessage = ''; $aValidationFailures = $oInputDocument->getValidationFailures(); foreach ($aValidationFailures as $oValidationFailure) { $sMessage .= $oValidationFailure->getMessage() . '<br />'; } throw new Exception('The registry cannot be created!<br />' . $sMessage); } } catch (Exception $oError) { $oConnection->rollback(); throw $oError; } }
/** * Create the application document registry * * @param array $aData * @return string * */ public function create($aData) { $oConnection = Propel::getConnection(InputDocumentPeer::DATABASE_NAME); try { if (isset($aData['INP_DOC_UID']) && $aData['INP_DOC_UID'] == '') { unset($aData['INP_DOC_UID']); } if (!isset($aData['INP_DOC_UID'])) { $aData['INP_DOC_UID'] = G::generateUniqueID(); } $oInputDocument = new InputDocument(); $oInputDocument->fromArray($aData, BasePeer::TYPE_FIELDNAME); if ($oInputDocument->validate()) { $oConnection->begin(); if (isset($aData['INP_DOC_TITLE'])) { $oInputDocument->setInpDocTitle($aData['INP_DOC_TITLE']); } if (isset($aData['INP_DOC_DESCRIPTION'])) { $oInputDocument->setInpDocDescription($aData['INP_DOC_DESCRIPTION']); } $iResult = $oInputDocument->save(); $oConnection->commit(); //Add Audit Log switch ($aData['INP_DOC_FORM_NEEDED']) { case 'VIRTUAL': $docType = 'Digital'; break; case 'REAL': $docType = 'Printed'; break; case 'VREAL': $docType = 'Digital/Printed'; break; } if (isset($aData['INP_DOC_VERSIONING']) && $aData['INP_DOC_VERSIONING'] == 1) { $enableVersion = 'Yes'; } else { $enableVersion = 'No'; } $description = "Input Document Title: " . $aData['INP_DOC_TITLE'] . ", Input Document Uid: " . $aData['INP_DOC_UID'] . ", Document Type: " . $docType; if (!empty($aData['INP_DOC_DESCRIPTION'])) { $description .= ", Description: " . $aData['INP_DOC_DESCRIPTION']; } if (!empty($aData['INP_DOC_DESTINATION_PATH'])) { $description .= ", Destination Path: " . $aData['INP_DOC_DESTINATION_PATH']; } $inputDocMaxFileSize = ""; if (!empty($aData['INP_DOC_MAX_FILESIZE'])) { $inputDocMaxFileSize = $aData['INP_DOC_MAX_FILESIZE'] ? $aData['INP_DOC_MAX_FILESIZE'] . ' ' . $aData['INP_DOC_MAX_FILESIZE_UNIT'] : "256 MB"; $inputDocMaxFileSize = ", Maximum Input Document file size: " . $inputDocMaxFileSize; } if (!empty($aData['INP_DOC_MAX_FILESIZE'])) { $description .= ", Extensions: " . $aData['INP_DOC_TYPE_FILE']; } $description .= $inputDocMaxFileSize; G::auditLog("CreateInputDocument", $description); return $aData['INP_DOC_UID']; } else { $sMessage = ''; $aValidationFailures = $oInputDocument->getValidationFailures(); foreach ($aValidationFailures as $oValidationFailure) { $sMessage .= $oValidationFailure->getMessage() . '<br />'; } throw new Exception('The registry cannot be created!<br />' . $sMessage); } } catch (Exception $oError) { $oConnection->rollback(); throw $oError; } }