This commit is contained in:
Paula Quispe
2017-02-17 16:24:39 -04:00
parent a40689adb1
commit a593cbc261

View File

@@ -84,12 +84,13 @@ class FilesManager
}
}
foreach ($aFiles as $aFile) {
$arrayFileUid = $this->getFileManagerUid($sDirectory.$aFile['FILE']);
$arrayFileUid = $this->getFileManagerUid($sDirectory.$aFile['FILE'], $aFile['FILE']);
$fcontent = "";
if ($getContent === true) {
$fcontent = file_get_contents($sDirectory . $aFile['FILE']);
}
$fileUid = $arrayFileUid["PRF_UID"];
$fileUid = isset($arrayFileUid["PRF_UID"]) ? $arrayFileUid["PRF_UID"] : '';
$derivationScreen = isset($arrayFileUid["DERIVATION_SCREEN_TPL"]) ? 'true' : 'false';
if ($fileUid != null) {
$oProcessFiles = \ProcessFilesPeer::retrieveByPK($fileUid);
$editable = $oProcessFiles->getPrfEditable();
@@ -107,7 +108,8 @@ class FilesManager
'prf_editable' => $editable,
'prf_create_date' => $oProcessFiles->getPrfCreateDate(),
'prf_update_date' => $oProcessFiles->getPrfUpdateDate(),
'prf_content' => $fcontent);
'prf_content' => $fcontent,
'prf_derivation_screen' => $derivationScreen);
} else {
$extention = end(explode(".", $aFile['FILE']));
if ($extention == 'docx' || $extention == 'doc' || $extention == 'html' || $extention == 'php' || $extention == 'jsp'
@@ -125,7 +127,8 @@ class FilesManager
'prf_editable' => $editable,
'prf_create_date' => '',
'prf_update_date' => '',
'prf_content' => $fcontent);
'prf_content' => $fcontent,
'prf_derivation_screen' => 'false');
}
}
return $aTheFiles;
@@ -389,13 +392,14 @@ class FilesManager
}
/**
* Get data of unique ids of a file
* Get data of unique ids of a file and if the template is used in a derivation screen
*
* @param string $path
* @param string $fileName the name of template
*
* return array
*/
public function getFileManagerUid($path)
public function getFileManagerUid($path, $fileName = '')
{
try {
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
@@ -406,11 +410,25 @@ class FilesManager
$baseName2 = $path[count($path)-2]."/".$path[count($path)-1];
$criteria = new \Criteria("workflow");
$criteria->addSelectColumn(\ProcessFilesPeer::PRF_UID);
$criteria->addSelectColumn(\ProcessPeer::PRO_DERIVATION_SCREEN_TPL);
$criteria->addSelectColumn(\TaskPeer::TAS_DERIVATION_SCREEN_TPL);
$criteria->addJoin(\ProcessFilesPeer::PRO_UID, \ProcessPeer::PRO_UID);
$criteria->addJoin(\ProcessPeer::PRO_UID, \TaskPeer::PRO_UID);
$criteria->add( $criteria->getNewCriterion( \ProcessFilesPeer::PRF_PATH, '%' . $baseName . '%', \Criteria::LIKE )->addOr( $criteria->getNewCriterion( \ProcessFilesPeer::PRF_PATH, '%' . $baseName2 . '%', \Criteria::LIKE )));
$rsCriteria = \ProcessFilesPeer::doSelectRS($criteria);
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
$rsCriteria->next();
return $rsCriteria->getRow();
$row = array();
while ($rsCriteria->next()) {
$row = $rsCriteria->getRow();
if (!empty($row['PRO_DERIVATION_SCREEN_TPL']) && $row['PRO_DERIVATION_SCREEN_TPL'] == $fileName) {
$row['DERIVATION_SCREEN_TPL'] = true;
return $row;
} elseif (!empty($row['TAS_DERIVATION_SCREEN_TPL']) && $row['TAS_DERIVATION_SCREEN_TPL'] == $fileName) {
$row['DERIVATION_SCREEN_TPL'] = true;
return $row;
}
}
return $row;
} catch (\Exception $e) {
throw $e;
}