diff --git a/workflow/engine/classes/triggers/class.pmAlfrescoFunctions.php b/workflow/engine/classes/triggers/class.pmAlfrescoFunctions.php index fee5e5835..abf399874 100755 --- a/workflow/engine/classes/triggers/class.pmAlfrescoFunctions.php +++ b/workflow/engine/classes/triggers/class.pmAlfrescoFunctions.php @@ -342,10 +342,22 @@ function uploadDoc($alfrescoServerUrl, $fileSource, $title, $description, $docTy $xmlData = '' . $title . '' . $description . '' . $fileContent . 'cmis:document'; $alfresco_exec = RestClient::post($alfresco_url, $xmlData, $user, $pwd, "application/atom+xml"); - $sXmlArray = $alfresco_exec->getResponse(); - $sXmlArray = trim($sXmlArray); - $xXmlArray = simplexml_load_string($sXmlArray); - $aXmlArray = @G::json_decode(@G::json_encode($xXmlArray), 1); - + $response = $alfresco_exec->getHeaders(); + switch ($response['code']) { + case '201': + //Created + $sXmlArray = $alfresco_exec->getResponse(); + $sXmlArray = trim($sXmlArray); + $xXmlArray = simplexml_load_string($sXmlArray); + $aXmlArray = @G::json_decode(@G::json_encode($xXmlArray), 1); + break; + case '409': + //file exists + $aXmlArray = 'There is already a file with the same name: ' . $title; + break; + default: + $aXmlArray = $response['message']; + break; + } return $aXmlArray; }