Merged in feature/PMCORE-3538 (pull request #8306)

PMCORE-3538 BE: Change the API for save and return the header and footer properties

Approved-by: Julio Cesar Laura Avendaño
This commit is contained in:
Roly Gutierrez
2021-12-03 16:47:31 +00:00
committed by Julio Cesar Laura Avendaño
5 changed files with 144 additions and 169 deletions

View File

@@ -38,6 +38,8 @@ $factory->define(OutputDocument::class, function(Faker $faker) {
'OUT_DOC_PDF_SECURITY_OPEN_PASSWORD' => '', 'OUT_DOC_PDF_SECURITY_OPEN_PASSWORD' => '',
'OUT_DOC_PDF_SECURITY_OWNER_PASSWORD' => '', 'OUT_DOC_PDF_SECURITY_OWNER_PASSWORD' => '',
'OUT_DOC_PDF_SECURITY_PERMISSIONS' => '', 'OUT_DOC_PDF_SECURITY_PERMISSIONS' => '',
'OUT_DOC_OPEN_TYPE' => 1 'OUT_DOC_OPEN_TYPE' => 1,
'OUT_DOC_HEADER' => null,
'OUT_DOC_FOOTER' => null
]; ];
}); });

View File

@@ -378,6 +378,8 @@ class ProcessesTest extends TestCase
'OUT_DOC_PDF_SECURITY_PERMISSIONS' => '', 'OUT_DOC_PDF_SECURITY_PERMISSIONS' => '',
'OUT_DOC_OPEN_TYPE' => 1, 'OUT_DOC_OPEN_TYPE' => 1,
'__OUT_DOC_ID_UPDATE__' => false, '__OUT_DOC_ID_UPDATE__' => false,
'OUT_DOC_FOOTER' => null,
'OUT_DOC_HEADER' => null
], ],
[ [
'OUT_DOC_UID' => G::generateUniqueID(), 'OUT_DOC_UID' => G::generateUniqueID(),
@@ -407,6 +409,8 @@ class ProcessesTest extends TestCase
'OUT_DOC_PDF_SECURITY_PERMISSIONS' => '', 'OUT_DOC_PDF_SECURITY_PERMISSIONS' => '',
'OUT_DOC_OPEN_TYPE' => 1, 'OUT_DOC_OPEN_TYPE' => 1,
'__OUT_DOC_ID_UPDATE__' => false, '__OUT_DOC_ID_UPDATE__' => false,
'OUT_DOC_FOOTER' => null,
'OUT_DOC_HEADER' => null
] ]
]; ];
$this->sortArrayByColumn($expected, 'OUT_DOC_UID'); $this->sortArrayByColumn($expected, 'OUT_DOC_UID');

View File

@@ -280,33 +280,35 @@ class EmailServerTest extends TestCase
public function it_should_test_the_send_test_mail_method() public function it_should_test_the_send_test_mail_method()
{ {
$string = ini_get("sendmail_path"); $string = ini_get("sendmail_path");
if (!is_executable($string)) { //in current versions this value has extra parameters and must be cleaned
$this->markTestIncomplete($string . " not found"); $result = explode(" ", $string);
$path = $result[0];
if (is_executable($path)) {
// The data that will be sent to the method
$data = [
"FROM_EMAIL" => "admin@processmaker.com",
"FROM_NAME" => "Administrator",
"MESS_ENGINE" => "MAIL",
"MESS_SERVER" => "localhost",
"MESS_PORT" => 25,
"MESS_ACCOUNT" => "admin@processmaker.com",
"MESS_PASSWORD" => "",
"TO" => "admin@processmaker.com",
"MESS_RAUTH" => true
];
// Create the EmailServer object
$emailServer = new EmailServer();
// Call the sendTestMail method
$result = $emailServer->sendTestMail($data);
// Assert the status is true
$this->assertTrue($result['status']);
// Assert the success is true
$this->assertTrue($result['success']);
// Assert the message of the result
$this->assertEquals('**ID_MAIL_TEST_SUCCESS**', $result['msg']);
} }
// The data that will be sent to the method
$data = [
"FROM_EMAIL" => "admin@processmaker.com",
"FROM_NAME" => "Administrator",
"MESS_ENGINE" => "MAIL",
"MESS_SERVER" => "localhost",
"MESS_PORT" => 25,
"MESS_ACCOUNT" => "admin@processmaker.com",
"MESS_PASSWORD" => "",
"TO" => "admin@processmaker.com",
"MESS_RAUTH" => true
];
// Create the EmailServer object
$emailServer = new EmailServer();
// Call the sendTestMail method
$result = $emailServer->sendTestMail($data);
// Assert the status is true
$this->assertTrue($result['status']);
// Assert the success is true
$this->assertTrue($result['success']);
// Assert the message of the result
$this->assertEquals('**ID_MAIL_TEST_SUCCESS**', $result['msg']);
} }
/** /**

View File

@@ -13,6 +13,7 @@ use ProcessMaker\GmailOAuth\GmailOAuth;
use ProcessMaker\Model\User; use ProcessMaker\Model\User;
use RBAC; use RBAC;
use Tests\TestCase; use Tests\TestCase;
use BadMethodCallException;
class GmailOAuthTest extends TestCase class GmailOAuthTest extends TestCase
{ {
@@ -248,7 +249,6 @@ class GmailOAuthTest extends TestCase
*/ */
public function it_should_send_an_email_test_with_PHPMailerOAuth() public function it_should_send_an_email_test_with_PHPMailerOAuth()
{ {
$this->markTestIncomplete('Please solve the error related to Exception');
$faker = $this->faker; $faker = $this->faker;
$gmailOauth = new GmailOAuth(); $gmailOauth = new GmailOAuth();
@@ -273,8 +273,11 @@ class GmailOAuthTest extends TestCase
$gmailOauth->setSenderEmail($faker->email); $gmailOauth->setSenderEmail($faker->email);
$gmailOauth->setMailTo($faker->email); $gmailOauth->setMailTo($faker->email);
$gmailOauth->setSendTestMail(1); $gmailOauth->setSendTestMail(1);
$result = $gmailOauth->sendTestMailWithPHPMailerOAuth();
$this->assertTrue($result instanceof PHPMailerOAuth); //We cannot get a valid 'refresh token', therefore we wait for an exception
//when trying to send a email.
$this->expectException(BadMethodCallException::class);
$gmailOauth->sendTestMailWithPHPMailerOAuth();
} }
/** /**

View File

@@ -1,87 +1,57 @@
<?php <?php
namespace ProcessMaker\BusinessModel; namespace ProcessMaker\BusinessModel;
use \G; use Exception;
use G;
use ProcessMaker\Model\OutputDocument as ModelOutputDocument;
class OutputDocument class OutputDocument
{ {
/** /**
* Return output documents of a project * Return output documents of a project.
* @param string $sProcessUID * @param string $proUid
* @return array * @return array
*
* @access public * @access public
*/ */
public function getOutputDocuments($sProcessUID = '') public function getOutputDocuments($proUid = '')
{ {
try { try {
$sDelimiter = \DBAdapter::getStringDelimiter(); $result = [];
$oCriteria = new \Criteria('workflow'); $outputDocuments = ModelOutputDocument::select()
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_UID); ->where('PRO_UID', '=', $proUid)
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TYPE); ->get();
$oCriteria->addSelectColumn(\OutputDocumentPeer::PRO_UID); foreach ($outputDocuments as $value) {
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_REPORT_GENERATOR); if (!empty($value->OUT_DOC_TITLE)) {
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_LANDSCAPE); $result[] = [
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_MEDIA); 'out_doc_uid' => $value->OUT_DOC_UID,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_LEFT_MARGIN); 'out_doc_title' => $value->OUT_DOC_TITLE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_RIGHT_MARGIN); 'out_doc_description' => $value->OUT_DOC_DESCRIPTION,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TOP_MARGIN); 'out_doc_filename' => $value->OUT_DOC_FILENAME,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_BOTTOM_MARGIN); 'out_doc_template' => $value->OUT_DOC_TEMPLATE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_GENERATE); 'out_doc_report_generator' => $value->OUT_DOC_REPORT_GENERATOR,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TYPE); 'out_doc_landscape' => $value->OUT_DOC_LANDSCAPE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_CURRENT_REVISION); 'out_doc_media' => $value->OUT_DOC_MEDIA,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_FIELD_MAPPING); 'out_doc_left_margin' => $value->OUT_DOC_LEFT_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_VERSIONING); 'out_doc_right_margin' => $value->OUT_DOC_RIGHT_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_DESTINATION_PATH); 'out_doc_top_margin' => $value->OUT_DOC_TOP_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TAGS); 'out_doc_bottom_margin' => $value->OUT_DOC_BOTTOM_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_ENABLED); 'out_doc_generate' => $value->OUT_DOC_GENERATE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_OPEN_PASSWORD); 'out_doc_type' => $value->OUT_DOC_TYPE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_OWNER_PASSWORD); 'out_doc_current_revision' => $value->OUT_DOC_CURRENT_REVISION,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_PERMISSIONS); 'out_doc_field_mapping' => $value->OUT_DOC_FIELD_MAPPING,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_OPEN_TYPE); 'out_doc_versioning' => $value->OUT_DOC_VERSIONING,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TITLE); 'out_doc_destination_path' => $value->OUT_DOC_DESTINATION_PATH,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_DESCRIPTION); 'out_doc_tags' => $value->OUT_DOC_TAGS,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_FILENAME); 'out_doc_pdf_security_enabled' => $value->OUT_DOC_PDF_SECURITY_ENABLED,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TEMPLATE); 'out_doc_pdf_security_permissions' => $value->OUT_DOC_PDF_SECURITY_PERMISSIONS,
$oCriteria->add(\OutputDocumentPeer::PRO_UID, $sProcessUID); 'out_doc_open_type' => $value->OUT_DOC_OPEN_TYPE,
$oDataset = \OutputDocumentPeer::doSelectRS($oCriteria); 'out_doc_header' => json_decode($value->OUT_DOC_HEADER),
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC); 'out_doc_footer' => json_decode($value->OUT_DOC_FOOTER)
$oDataset->next(); ];
$outputDocArray = array();
while ($aRow = $oDataset->getRow()) {
if (($aRow['OUT_DOC_TITLE'] == null) || ($aRow['OUT_DOC_TITLE'] == "")) {
// There is no transaltion for this Document name, try to get/regenerate the label
$outputDocument = new \OutputDocument();
$outputDocumentObj = $outputDocument->load($aRow['OUT_DOC_UID']);
$aRow['OUT_DOC_TITLE'] = $outputDocumentObj['OUT_DOC_TITLE'];
$aRow['OUT_DOC_DESCRIPTION'] = $outputDocumentObj['OUT_DOC_DESCRIPTION'];
} else {
$outputDocArray[] = array('out_doc_uid' => $aRow['OUT_DOC_UID'],
'out_doc_title' => $aRow['OUT_DOC_TITLE'],
'out_doc_description' => $aRow['OUT_DOC_DESCRIPTION'],
'out_doc_filename' => $aRow['OUT_DOC_FILENAME'],
'out_doc_template' => $aRow['OUT_DOC_TEMPLATE'],
'out_doc_report_generator' => $aRow['OUT_DOC_REPORT_GENERATOR'],
'out_doc_landscape' => $aRow['OUT_DOC_LANDSCAPE'],
'out_doc_media' => $aRow['OUT_DOC_MEDIA'],
'out_doc_left_margin' => $aRow['OUT_DOC_LEFT_MARGIN'],
'out_doc_right_margin' => $aRow['OUT_DOC_RIGHT_MARGIN'],
'out_doc_top_margin' => $aRow['OUT_DOC_TOP_MARGIN'],
'out_doc_bottom_margin' => $aRow['OUT_DOC_BOTTOM_MARGIN'],
'out_doc_generate' => $aRow['OUT_DOC_GENERATE'],
'out_doc_type' => $aRow['OUT_DOC_TYPE'],
'out_doc_current_revision' => $aRow['OUT_DOC_CURRENT_REVISION'],
'out_doc_field_mapping' => $aRow['OUT_DOC_FIELD_MAPPING'],
'out_doc_versioning' => $aRow['OUT_DOC_VERSIONING'],
'out_doc_destination_path' => $aRow['OUT_DOC_DESTINATION_PATH'],
'out_doc_tags' => $aRow['OUT_DOC_TAGS'],
'out_doc_pdf_security_enabled' => $aRow['OUT_DOC_PDF_SECURITY_ENABLED'],
'out_doc_pdf_security_permissions' => $aRow['OUT_DOC_PDF_SECURITY_PERMISSIONS'],
"out_doc_open_type" => $aRow["OUT_DOC_OPEN_TYPE"]);
} }
$oDataset->next();
} }
return $outputDocArray; return $result;
} catch (Exception $e) { } catch (Exception $e) {
throw $e; throw $e;
} }
@@ -89,83 +59,51 @@ class OutputDocument
/** /**
* Return a single output document of a project * Return a single output document of a project
* @param string $sProcessUID * @param string $proUid
* @param string $sOutputDocumentUID * @param string $outDocUid
* @return array * @return array
* *
* @access public * @access public
*/ */
public function getOutputDocument($sProcessUID = '', $sOutputDocumentUID = '') public function getOutputDocument($proUid = '', $outDocUid = '')
{ {
try { try {
$sDelimiter = \DBAdapter::getStringDelimiter(); $result = [];
$oCriteria = new \Criteria('workflow'); $outputDocuments = ModelOutputDocument::select()
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_UID); ->where('PRO_UID', '=', $proUid)
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TYPE); ->where('OUT_DOC_UID', '=', $outDocUid)
$oCriteria->addSelectColumn(\OutputDocumentPeer::PRO_UID); ->get();
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_REPORT_GENERATOR); foreach ($outputDocuments as $value) {
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_LANDSCAPE); if (!empty($value->OUT_DOC_TITLE)) {
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_MEDIA); $result = [
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_LEFT_MARGIN); 'out_doc_uid' => $value->OUT_DOC_UID,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_RIGHT_MARGIN); 'out_doc_title' => $value->OUT_DOC_TITLE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TOP_MARGIN); 'out_doc_description' => $value->OUT_DOC_DESCRIPTION,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_BOTTOM_MARGIN); 'out_doc_filename' => $value->OUT_DOC_FILENAME,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_GENERATE); 'out_doc_template' => $value->OUT_DOC_TEMPLATE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TYPE); 'out_doc_report_generator' => $value->OUT_DOC_REPORT_GENERATOR,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_CURRENT_REVISION); 'out_doc_landscape' => $value->OUT_DOC_LANDSCAPE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_FIELD_MAPPING); 'out_doc_media' => $value->OUT_DOC_MEDIA,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_VERSIONING); 'out_doc_left_margin' => $value->OUT_DOC_LEFT_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_DESTINATION_PATH); 'out_doc_right_margin' => $value->OUT_DOC_RIGHT_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TAGS); 'out_doc_top_margin' => $value->OUT_DOC_TOP_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_ENABLED); 'out_doc_bottom_margin' => $value->OUT_DOC_BOTTOM_MARGIN,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_OPEN_PASSWORD); 'out_doc_generate' => $value->OUT_DOC_GENERATE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_OWNER_PASSWORD); 'out_doc_type' => $value->OUT_DOC_TYPE,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_PDF_SECURITY_PERMISSIONS); 'out_doc_current_revision' => $value->OUT_DOC_CURRENT_REVISION,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_OPEN_TYPE); 'out_doc_field_mapping' => $value->OUT_DOC_FIELD_MAPPING,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TITLE); 'out_doc_versioning' => $value->OUT_DOC_VERSIONING,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_DESCRIPTION); 'out_doc_destination_path' => $value->OUT_DOC_DESTINATION_PATH,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_FILENAME); 'out_doc_tags' => $value->OUT_DOC_TAGS,
$oCriteria->addSelectColumn(\OutputDocumentPeer::OUT_DOC_TEMPLATE); 'out_doc_pdf_security_enabled' => $value->OUT_DOC_PDF_SECURITY_ENABLED,
$oCriteria->add(\OutputDocumentPeer::OUT_DOC_UID, $sOutputDocumentUID); 'out_doc_pdf_security_permissions' => $value->OUT_DOC_PDF_SECURITY_PERMISSIONS,
$oCriteria->add(\OutputDocumentPeer::PRO_UID, $sProcessUID); 'out_doc_open_type' => $value->OUT_DOC_OPEN_TYPE,
$oDataset = \OutputDocumentPeer::doSelectRS($oCriteria); 'out_doc_header' => json_decode($value->OUT_DOC_HEADER),
$oDataset->setFetchmode(\ResultSet::FETCHMODE_ASSOC); 'out_doc_footer' => json_decode($value->OUT_DOC_FOOTER)
$oDataset->next(); ];
$outputDocArray = array();
while ($aRow = $oDataset->getRow()) {
if (($aRow['OUT_DOC_TITLE'] == null) || ($aRow['OUT_DOC_TITLE'] == "")) {
// There is no transaltion for this Document name, try to get/regenerate the label
$outputDocument = new \OutputDocument();
$outputDocumentObj = $outputDocument->load($aRow['OUT_DOC_UID']);
$aRow['OUT_DOC_TITLE'] = $outputDocumentObj['OUT_DOC_TITLE'];
$aRow['OUT_DOC_DESCRIPTION'] = $outputDocumentObj['OUT_DOC_DESCRIPTION'];
} else {
$outputDocArray = array('out_doc_uid' => $aRow['OUT_DOC_UID'],
'out_doc_title' => $aRow['OUT_DOC_TITLE'],
'out_doc_description' => $aRow['OUT_DOC_DESCRIPTION'],
'out_doc_filename' => $aRow['OUT_DOC_FILENAME'],
'out_doc_template' => $aRow['OUT_DOC_TEMPLATE'],
'out_doc_report_generator' => $aRow['OUT_DOC_REPORT_GENERATOR'],
'out_doc_landscape' => $aRow['OUT_DOC_LANDSCAPE'],
'out_doc_media' => $aRow['OUT_DOC_MEDIA'],
'out_doc_left_margin' => $aRow['OUT_DOC_LEFT_MARGIN'],
'out_doc_right_margin' => $aRow['OUT_DOC_RIGHT_MARGIN'],
'out_doc_top_margin' => $aRow['OUT_DOC_TOP_MARGIN'],
'out_doc_bottom_margin' => $aRow['OUT_DOC_BOTTOM_MARGIN'],
'out_doc_generate' => $aRow['OUT_DOC_GENERATE'],
'out_doc_type' => $aRow['OUT_DOC_TYPE'],
'out_doc_current_revision' => $aRow['OUT_DOC_CURRENT_REVISION'],
'out_doc_field_mapping' => $aRow['OUT_DOC_FIELD_MAPPING'],
'out_doc_versioning' => $aRow['OUT_DOC_VERSIONING'],
'out_doc_destination_path' => $aRow['OUT_DOC_DESTINATION_PATH'],
'out_doc_tags' => $aRow['OUT_DOC_TAGS'],
'out_doc_pdf_security_enabled' => $aRow['OUT_DOC_PDF_SECURITY_ENABLED'],
'out_doc_pdf_security_permissions' => $aRow['OUT_DOC_PDF_SECURITY_PERMISSIONS'],
"out_doc_open_type" => $aRow["OUT_DOC_OPEN_TYPE"]);
} }
$oDataset->next();
} }
return $outputDocArray; return $result;
} catch (Exception $e) { } catch (Exception $e) {
throw $e; throw $e;
} }
@@ -181,6 +119,19 @@ class OutputDocument
*/ */
public function addOutputDocument($sProcessUID, $outputDocumentData) public function addOutputDocument($sProcessUID, $outputDocumentData)
{ {
if (empty($outputDocumentData['out_doc_header'])) {
$outputDocumentData['out_doc_header'] = [];
}
if (isset($outputDocumentData['out_doc_header'])) {
$outputDocumentData['out_doc_header'] = json_encode($outputDocumentData['out_doc_header']);
}
if (empty($outputDocumentData['out_doc_footer'])) {
$outputDocumentData['out_doc_footer'] = [];
}
if (isset($outputDocumentData['out_doc_footer'])) {
$outputDocumentData['out_doc_footer'] = json_encode($outputDocumentData['out_doc_footer']);
}
$pemission = $outputDocumentData['out_doc_pdf_security_permissions']; $pemission = $outputDocumentData['out_doc_pdf_security_permissions'];
$pemission = explode("|", $pemission); $pemission = explode("|", $pemission);
foreach ($pemission as $row) { foreach ($pemission as $row) {
@@ -244,6 +195,19 @@ class OutputDocument
*/ */
public function updateOutputDocument($sProcessUID, $outputDocumentData, $sFlag, $sOutputDocumentUID = '') public function updateOutputDocument($sProcessUID, $outputDocumentData, $sFlag, $sOutputDocumentUID = '')
{ {
if (empty($outputDocumentData['out_doc_header'])) {
$outputDocumentData['out_doc_header'] = [];
}
if (isset($outputDocumentData['out_doc_header'])) {
$outputDocumentData['out_doc_header'] = json_encode($outputDocumentData['out_doc_header']);
}
if (empty($outputDocumentData['out_doc_footer'])) {
$outputDocumentData['out_doc_footer'] = [];
}
if (isset($outputDocumentData['out_doc_footer'])) {
$outputDocumentData['out_doc_footer'] = json_encode($outputDocumentData['out_doc_footer']);
}
$oConnection = \Propel::getConnection(\OutputDocumentPeer::DATABASE_NAME); $oConnection = \Propel::getConnection(\OutputDocumentPeer::DATABASE_NAME);
$pemission = $outputDocumentData['out_doc_pdf_security_permissions']; $pemission = $outputDocumentData['out_doc_pdf_security_permissions'];
$pemission = explode("|", $pemission); $pemission = explode("|", $pemission);