$storageTypeId = isset($arSrcElement['STORAGE_TYPE_ID']) ? (int) $arSrcElement['STORAGE_TYPE_ID'] : CCrmQuoteStorageType::Undefined; if ($storageTypeId === CCrmQuoteStorageType::Undefined || !CCrmQuoteStorageType::IsDefined($storageTypeId)) { $storageTypeId = CCrmQuote::GetDefaultStorageTypeID(); } } } $arFields['STORAGE_TYPE_ID'] = $arFields['~STORAGE_TYPE_ID'] = $storageTypeId; // files $arPermittedElements = array(); if ($storageTypeId === CCrmQuoteStorageType::File) { $arPermittedFiles = array(); $arUserFiles = isset($_POST['files']) && is_array($_POST['files']) ? $_POST['files'] : array(); if (!empty($arUserFiles) || $bEdit) { $arPreviousFiles = array(); if ($bEdit) { CCrmQuote::PrepareStorageElementIDs($arSrcElement); $arPreviousFiles = $arSrcElement['STORAGE_ELEMENT_IDS']; if (is_array($arPreviousFiles) && !empty($arPreviousFiles)) { $arPermittedFiles = array_intersect($arUserFiles, $arPreviousFiles); } } $uploadControlCID = isset($_POST['uploadControlCID']) ? strval($_POST['uploadControlCID']) : ''; if ($uploadControlCID !== '' && isset($_SESSION["MFI_UPLOADED_FILES_{$uploadControlCID}"])) { $uploadedFiles = $_SESSION["MFI_UPLOADED_FILES_{$uploadControlCID}"]; if (!empty($uploadedFiles)) { $arPermittedFiles = array_merge(array_intersect($arUserFiles, $uploadedFiles), $arPermittedFiles); } unset($uploadedFiles); } $arFields['STORAGE_ELEMENT_IDS'] = $arPermittedFiles; unset($arPreviousFiles);
$arFields['CREATED_BY_FORMATTED_NAME'] = htmlspecialcharsbx($arFields['~CREATED_BY_FORMATTED_NAME']); $arFields['PATH_TO_USER_CREATOR'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_USER_PROFILE'], array('user_id' => $arFields['ASSIGNED_BY'])); $arFields['~MODIFY_BY_FORMATTED_NAME'] = CUser::FormatName($fullNameFormat, array('LOGIN' => $arFields['~MODIFY_BY_LOGIN'], 'NAME' => $arFields['~MODIFY_BY_NAME'], 'LAST_NAME' => $arFields['~MODIFY_BY_LAST_NAME'], 'SECOND_NAME' => $arFields['~MODIFY_BY_SECOND_NAME']), true, false); $arFields['MODIFY_BY_FORMATTED_NAME'] = htmlspecialcharsbx($arFields['~MODIFY_BY_FORMATTED_NAME']); $arFields['PATH_TO_USER_MODIFIER'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_USER_PROFILE'], array('user_id' => $arFields['MODIFY_BY'])); $arFields['CLIENT_INFO'] = htmlspecialcharsbx(CCrmQuote::MakeClientInfoString($arFields)); // storage type $storageTypeId = isset($arFields['STORAGE_TYPE_ID']) ? (int) $arFields['STORAGE_TYPE_ID'] : CCrmQuoteStorageType::Undefined; if ($storageTypeId === CCrmQuoteStorageType::Undefined || !CCrmQuoteStorageType::IsDefined($storageTypeId)) { $storageTypeId = CCrmQuote::GetDefaultStorageTypeID(); } $arFields['STORAGE_TYPE_ID'] = $arFields['~STORAGE_TYPE_ID'] = $storageTypeId; $arResult['ENABLE_DISK'] = $storageTypeId === StorageType::Disk; $arResult['ENABLE_WEBDAV'] = $storageTypeId === StorageType::WebDav; unset($storageTypeId); CCrmQuote::PrepareStorageElementIDs($arFields); $arResult['ELEMENT'] = $arFields; unset($arFields); if (empty($arResult['ELEMENT']['ID'])) { LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_QUOTE_LIST'], array())); } $contactID = isset($arResult['ELEMENT']['CONTACT_ID']) ? intval($arResult['ELEMENT']['CONTACT_ID']) : 0; $companyID = isset($arResult['ELEMENT']['COMPANY_ID']) ? intval($arResult['ELEMENT']['COMPANY_ID']) : 0; $currentUserPermissions = CCrmPerms::GetCurrentUserPermissions(); $arResult['ERROR_MESSAGE'] = ''; if (intval($_REQUEST["SYNC_ORDER_ID"]) > 0) { $imp = new CCrmExternalSaleImport($arResult['ELEMENT']["ORIGINATOR_ID"]); if ($imp->IsInitialized()) { $r = $imp->GetOrderData($arResult['ELEMENT']["ORIGIN_ID"], false); if ($r != CCrmExternalSaleImport::SyncStatusError) { LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_QUOTE_SHOW'], array('quote_id' => $arResult['ELEMENT']['ID'])));