- Модуль: webdav
- Путь к файлу: ~/bitrix/modules/webdav/classes/iblock.php
- Класс: CWebDavIblock
- Вызов: CWebDavIblock::findHistoryDocumentByFileId
function findHistoryDocumentByFileId($elementId, $fileId, $documentId)
{
$elementId = (int)$elementId;
$fileId = (int)$fileId;
if($fileId <= 0 || $elementId <= 0 || empty($documentId))
{
return array();
}
if(($this->workflow != 'bizproc' && $this->workflow != 'bizproc_limited'))
{
return array();
}
$by = "modified";
$order = "desc";
$history = new CBPHistoryService();
$dbDocumentHistory = $history->GetHistoryList(
array(mb_strtoupper($by) => mb_strtoupper($order)),
array(
"DOCUMENT_ID" => $documentId,
),
false,
array('nTopCount' => 20), //todo we search by OLD_FILE_ID this is not true. 20 - magic. And we trust in him
array(
"ID",
"DOCUMENT_ID",
"NAME",
"MODIFIED",
"USER_ID",
"USER_NAME",
"USER_LAST_NAME",
"USER_LOGIN",
"DOCUMENT",
"USER_SECOND_NAME"
)
);
while($document = $dbDocumentHistory->fetch())
{
if(!empty($document['DOCUMENT']['OLD_FILE_ID']) && $document['DOCUMENT']['OLD_FILE_ID'] == $fileId)
{
return $document;
}
}
return $document;
}