Merged in bugfix/HOR-3622 (pull request #6160)

HOR-3622

Approved-by: Paula Quispe <paula.quispe@processmaker.com>
Approved-by: Julio Cesar Laura Avendaño <contact@julio-laura.com>
This commit is contained in:
Roly
2017-11-01 20:30:46 +00:00
committed by Julio Cesar Laura Avendaño

View File

@@ -2,6 +2,10 @@
namespace ProcessMaker\BusinessModel;
use \G;
use Criteria;
use ProcessFilesPeer;
use ProcessPeer;
use TaskPeer;
class FilesManager
{
@@ -397,26 +401,27 @@ class FilesManager
*
* @param string $path
* @param string $fileName the name of template
* @throws Exception
*
* return array
* @return array
*/
public function getFileManagerUid($path, $fileName = '')
{
try {
if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') {
$path = str_replace("/", DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR, $path);
$path = str_replace("/", DIRECTORY_SEPARATOR . DIRECTORY_SEPARATOR, $path);
}
$path = explode(DIRECTORY_SEPARATOR,$path);
$baseName = $path[count($path)-2]."\\\\".$path[count($path)-1];
$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);
$path = explode(DIRECTORY_SEPARATOR, $path);
$baseName = $path[count($path) - 2] . "\\\\" . $path[count($path) - 1];
$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::LEFT_JOIN);
$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);
$row = array();
while ($rsCriteria->next()) {
@@ -430,7 +435,7 @@ class FilesManager
}
}
return $row;
} catch (\Exception $e) {
} catch (Exception $e) {
throw $e;
}
}