endpoints, running cases, export, import, files manager issues

This commit is contained in:
marcelo.cuiza
2015-06-25 14:31:38 -04:00
parent 176597ce1d
commit e72277f964
15 changed files with 648 additions and 94 deletions

View File

@@ -242,6 +242,41 @@ class FilesManager
throw $e;
}
}
public function addProcessFilesManagerInDb($aData)
{
try {
$oProcessFiles = new \ProcessFiles();
$aData = array_change_key_case($aData, CASE_UPPER);
$oProcessFiles->fromArray($aData, \BasePeer::TYPE_FIELDNAME);
if($this->existsProcessFile($aData['PRF_UID'])) {
$sPkProcessFiles = \G::generateUniqueID();
$oProcessFiles->setPrfUid($sPkProcessFiles);
$sDirectory = PATH_DATA_MAILTEMPLATES . $aData['PRO_UID'] . PATH_SEP . basename($aData['PRF_PATH']);
$oProcessFiles->setPrfPath($sDirectory);
$emailEvent = new \ProcessMaker\BusinessModel\EmailEvent();
$emailEvent->updatePrfUid($aData['PRF_UID'], $sPkProcessFiles, $aData['PRO_UID']);
}
$result = $oProcessFiles->save();
} catch (Exception $e) {
throw $e;
}
}
public function existsProcessFile($prfUid)
{
try {
$obj = \ProcessFilesPeer::retrieveByPK($prfUid);
return (!is_null($obj))? true : false;
} catch (\Exception $e) {
throw $e;
}
}
/**
* Return the Process Files Manager
@@ -306,9 +341,11 @@ class FilesManager
public function getFileManagerUid($path)
{
try {
$path = explode("/",$path);
$baseName = $path[count($path)-2].DIRECTORY_SEPARATOR.$path[count($path)-1];
$criteria = new \Criteria("workflow");
$criteria->addSelectColumn(\ProcessFilesPeer::PRF_UID);
$criteria->add(\ProcessFilesPeer::PRF_PATH, $path, \Criteria::EQUAL);
$criteria->add(\ProcessFilesPeer::PRF_PATH, "%" . $baseName . "%", \Criteria::LIKE);
$rsCriteria = \ProcessFilesPeer::doSelectRS($criteria);
$rsCriteria->setFetchmode(\ResultSet::FETCHMODE_ASSOC);
$rsCriteria->next();
@@ -371,6 +408,9 @@ class FilesManager
$oProcessFiles->setPrfUpdateUsrUid($userUID);
$oProcessFiles->setPrfUpdateDate($sDate);
$oProcessFiles->save();
$path = PATH_DATA_MAILTEMPLATES.$sProcessUID.DIRECTORY_SEPARATOR.$sFile;
$fp = fopen($path, 'w');
$content = stripslashes($aData['prf_content']);
$content = str_replace("@amp@", "&", $content);
@@ -417,8 +457,11 @@ class FilesManager
if ($path == '') {
throw new \Exception(\G::LoadTranslation("ID_INVALID_VALUE_FOR", array('prf_uid')));
}
if (file_exists($path)) {
$sFile = end(explode("/",$path));
$path = PATH_DATA_MAILTEMPLATES.$sProcessUID.DIRECTORY_SEPARATOR.$sFile;
if (file_exists($path) && !is_dir($path)) {
unlink($path);
}