if (isset($_GET['TASK_ID'])) { $arParams['TASK_ID'] = (int) $_GET['TASK_ID']; } $bFound = false; if ($arParams["FILE_ID"] > 0) { if ($arParams["TEMPLATE_ID"]) { $rsTemplate = CTaskTemplates::GetList(array(), array("ID" => $arParams["TEMPLATE_ID"], "CREATED_BY" => $USER->GetID())); if ($arTemplate = $rsTemplate->Fetch()) { $arTemplate["FILES"] = unserialize($arTemplate["FILES"]); if (is_array($arTemplate["FILES"]) && in_array($arParams["FILE_ID"], $arTemplate["FILES"])) { $bFound = true; } } } else { if ($arParams['TASK_ID']) { if (CTaskFiles::isUserfieldFileAccessibleByUser($arParams['TASK_ID'], $arParams['FILE_ID'], $USER->GetID())) { $bFound = true; } } if (!$bFound && CTaskFiles::isFileAccessibleByUser((int) $arParams["FILE_ID"], $USER->GetID())) { $bFound = true; } } } if ($bFound) { $arResult["FILE"] = CFile::GetFileArray($arParams["FILE_ID"]); } } if (!$arResult["FILE"]) { require $_SERVER["DOCUMENT_ROOT"] . BX_ROOT . "/modules/main/include/prolog_after.php"; ShowError("File not found");