%PDF- %PDF-
Direktori : /home/bitrix/www/local/components/p4/user.profile.avatar/ |
Current File : /home/bitrix/www/local/components/p4/user.profile.avatar/component.php |
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); /* @global CUser $USER */ $arResult[] = array(); $arResult['APP_RESULT'] = array('OK' => true, 'ERROR_MESSAGE' => ''); // AddMessage2Log('AVATAR_SESSID '.bitrix_sessid().' '.print_r($_REQUEST, true).' '.print_r($_COOKIE, true)); if ($USER->IsAuthorized() && $_SERVER["REQUEST_METHOD"]=="POST") { $userID = $USER->GetID(); if (count($_FILES['AVATAR'])>0) { CFile::ResizeImage($_FILES['AVATAR']['tmp_name'], array("width" => 400, "height" => 400),BX_RESIZE_IMAGE_PROPORTIONAL_ALT); $arFields['PERSONAL_PHOTO'] = $_FILES['AVATAR']; $user = new CUser(); if (!$user->Update($userID, $arFields)) { $arResult['APP_RESULT']['OK'] = false; $arResult['APP_RESULT']['ERROR_MESSAGE'] = $user->LAST_ERROR; // todo Код ошибки и логирование } else { $rsProfile = CIBlockElement::GetList(array(), array("IBLOCK_ID" => IBLOCK_PROFILE_ID, 'PROPERTY_ACCOUNT' => $userID, 'ACTIVE' => 'Y', 'SHOW_NEW' => 'Y'), false, false, array('IBLOCK_ID', 'ID')); if ($arProfile = $rsProfile->Fetch()) { $el = new CIBlockElement; if (!$el->Update($arProfile['ID'], array('DETAIL_PICTURE' => $_FILES['AVATAR']), true)) { $arResult['APP_RESULT']['OK'] = false; $arResult['APP_RESULT']['ERROR_MESSAGE'] = $el->LAST_ERROR; // todo Код ошибки и логирование } else { $rsProfile = CIBlockElement::GetList(array(), array("IBLOCK_ID" => IBLOCK_PROFILE_ID, 'ID' => $arProfile['ID']), false, false, array('IBLOCK_ID', 'ID', 'DETAIL_PICTURE')); if ($arProfile = $rsProfile->Fetch()) { $arResult['APP_RESULT']['AVATAR'] = CFile::GetPath($arProfile['DETAIL_PICTURE']); ProfileTypeHelper::runModerate($arProfile['ID'], true); } } } else { $arResult['APP_RESULT']['OK'] = false; $arResult['APP_RESULT']['ERROR_MESSAGE'] = GetMessage('PROFILE_NOT_FOUND'); } } } } else { $arResult['APP_RESULT']['OK'] = false; $arResult['APP_RESULT']['ERROR_MESSAGE'] = GetMessage('USER_NOT_AUTHORIZED'); } $this->IncludeComponentTemplate();