示例#1
0
 function __MPF_ImageResizeHandler(&$arCustomFile, $params = array(), $result = array())
 {
     static $arParams = array();
     if (!empty($params)) {
         $arParams = $params;
     }
     static $arResult = array();
     if (!empty($result)) {
         $arResult = $result;
     }
     $fileIdForDelete = 0;
     $arFields = array();
     foreach (array("MELODY_WELCOME", "MELODY_WAIT", "MELODY_HOLD", "MELODY_VOICEMAIL") as $controlID => $inputName) {
         if ($_REQUEST["controlID"] == "voximplant" . $controlID) {
             $fileIdForDelete = $arResult["ITEM"][$inputName];
             $arFields = array($inputName => $arCustomFile["fileID"]);
             break;
         }
     }
     if (!empty($arFields)) {
         $arFile = CFile::GetFileArray($arCustomFile['fileID']);
         $arCustomFile["fileURL"] = CHTTP::URN2URI($arFile["SRC"]);
         Bitrix\Voximplant\ConfigTable::update($arParams["ID"], $arFields);
         CFile::Delete($fileIdForDelete);
     }
 }
示例#2
0
 public function getFriendsList($limit, &$next)
 {
     if (IsModuleInstalled('bitrix24') && defined('BX24_HOST_NAME')) {
         $redirect_uri = static::CONTROLLER_URL . "/redirect.php";
     } else {
         $redirect_uri = \CHTTP::URN2URI("/bitrix/tools/oauth/google.php");
     }
     $ob = $this->getEntityOAuth();
     if ($ob->GetAccessToken($redirect_uri) !== false) {
         $res = $ob->getCurrentUserFriends($limit, $next);
         foreach ($res["items"] as $key => $contact) {
             $contact["uid"] = $contact["id"];
             if (array_key_exists("name", $contact)) {
                 $contact["first_name"] = $contact["name"]["givenName"];
                 $contact["last_name"] = $contact["name"]["familyName"];
             } else {
                 list($contact["first_name"], $contact["last_name"]) = explode(" ", $contact["displayName"], 2);
             }
             if (array_key_exists("image", $contact)) {
                 $contact["picture"] = preg_replace("/\\?.*\$/", "", $contact["image"]["url"]);
             }
             $res["items"][$key] = $contact;
         }
         return $res["items"];
     }
     return false;
 }
示例#3
0
                    $arHandlers[$name]["CHARSBACK"] = true;
                }
            }
        }
    }
}
$arResult["HANDLERS_ALL"] = $arHandlers;
if (!is_array($arParams["HANDLERS"])) {
    if (LANGUAGE_ID != 'ru') {
        unset($arHandlers["vk"]);
        unset($arHandlers["mailru"]);
    }
    $arParams["HANDLERS"] = array_keys($arHandlers);
}
$arResult["BOOKMARKS"] = array();
$arResult["PAGE_URL"] = CHTTP::URN2URI($arParams["PAGE_URL"]);
$arResult["PAGE_TITLE"] = $arParams["PAGE_TITLE"];
foreach ($arResult["HANDLERS_ALL"] as $name => $arHandler) {
    if (in_array($name, $arParams["HANDLERS"])) {
        $PageTitle = $arResult["PAGE_TITLE"];
        if (array_key_exists("CHARSBACK", $arHandler) && $arHandler["CHARSBACK"]) {
            $PageTitleBack = htmlspecialcharsback($PageTitle);
        }
        $arHandler["ICON"] = str_replace("#PAGE_URL#", $arResult["PAGE_URL"], $arHandler["ICON"]);
        $arHandler["ICON"] = str_replace("#PAGE_URL_ENCODED#", urlencode($arResult["PAGE_URL"]), $arHandler["ICON"]);
        if (array_key_exists("CHARSBACK", $arHandler) && $arHandler["CHARSBACK"]) {
            $arHandler["ICON"] = str_replace("#PAGE_TITLE#", CUtil::JSEscape($PageTitleBack), $arHandler["ICON"]);
            $arHandler["ICON"] = str_replace("#PAGE_TITLE_ENCODED#", urlencode($PageTitleBack), $arHandler["ICON"]);
            $arHandler["ICON"] = str_replace("#PAGE_TITLE_ORIG#", CUtil::addslashes($PageTitle), $arHandler["ICON"]);
            $utfTitle = $APPLICATION->ConvertCharset($PageTitleBack, LANG_CHARSET, "UTF-8");
            $arHandler["ICON"] = str_replace("#PAGE_TITLE_UTF_ENCODED#", urlencode($utfTitle), $arHandler["ICON"]);
示例#4
0
	function DisplayExcel()
	{
		/** @global CMain $APPLICATION */
		global $APPLICATION;
		echo '
		<html>
		<head>
		<title>'.$APPLICATION->GetTitle().'</title>
		<meta http-equiv="Content-Type" content="text/html; charset='.LANG_CHARSET.'">
		<style>
			td {mso-number-format:\@;}
			.number0 {mso-number-format:0;}
			.number2 {mso-number-format:Fixed;}
		</style>
		</head>
		<body>';

		echo "<table border=\"1\">";
		echo "<tr>";

		foreach($this->aVisibleHeaders as $header)
		{
			echo '<td>';
			echo $header["content"];
			echo '</td>';
		}
		echo "</tr>";


		foreach($this->aRows as $row)
		{
			echo "<tr>";
			foreach($this->aVisibleHeaders as $id=>$header_props)
			{
				$field = $row->aFields[$id];
				if(!is_array($row->arRes[$id]))
					$val = trim($row->arRes[$id]);
				else
					$val = $row->arRes[$id];

				switch($field["view"]["type"])
				{
					case "checkbox":
						if($val=='Y')
							$val = htmlspecialcharsex(GetMessage("admin_lib_list_yes"));
						else
							$val = htmlspecialcharsex(GetMessage("admin_lib_list_no"));
						break;
					case "select":
						if($field["edit"]["values"][$val])
							$val = htmlspecialcharsex($field["edit"]["values"][$val]);
						break;
					case "file":
						$arFile = CFile::GetFileArray($val);
						if(is_array($arFile))
							$val = htmlspecialcharsex(CHTTP::URN2URI($arFile["SRC"]));
						else
							$val = "";
						break;
					case "html":
						$val = $field["view"]['value'];
						break;
					default:
						$val = htmlspecialcharsex($val);
						break;
				}

				echo '<td'.($header_props['align']?' align="'.$header_props['align'].'"':'').($header_props['valign']?' valign="'.$header_props['valign'].'"':'').'>';
				echo ($val<>""? $val:'&nbsp;').'</td>';
			}
			echo "</tr>";
		}

		echo "</table>";
		echo '</body></html>';
	}
示例#5
0
				$FileType = "flv";
		}
		else
		{
			$FileSize = "";
			$FileType = "flv";
		}

		if (!$arResult['FIRST_FLV_ITEM'] && $FileType == 'flv')
			$arResult['FIRST_FLV_ITEM'] = $PathToFile;
		if (!$arResult['FIRST_WMV_ITEM'] && $FileType == 'wmv')
			$arResult['FIRST_WMV_ITEM'] = $PathToFile;

		if (strpos($_SERVER['HTTP_HOST'], 'xn--') !== false) // It's cyrilyc site
		{
			$PathToFile = CHTTP::URN2URI($PathToFile);
		}


		$arResult["SECTIONS"][$SectionId]["ELEMENTS"][$arItem["ID"]] = array(
			"NAME" => $arItem["NAME"],
			"PREVIEW_TEXT" => $arItem["PREVIEW_TEXT"],
			"PREVIEW_PICTURE" => CFile::GetPath($arItem["PREVIEW_PICTURE"]),
			"DETAIL_PICTURE" => CFile::GetPath($arItem["DETAIL_PICTURE"]),
			"DURATION" => $Duration,
			"FILE_SIZE" => $FileSize,
			"FILE" => $PathToFile,
			"TYPE" => $FileType,
			"ID" => $arItem["ID"],
			"IBLOCK_SECTION_ID" => $arItem["IBLOCK_SECTION_ID"],
		);
示例#6
0
$arResult["FILE"]["~SRC"] = $arResult["FILE"]["SRC"];
if (intVal($arResult["FILE"]["ID"]) > 0) {
    $arResult["FILE"]["SRC"] = "/bitrix/components/bitrix/forum.interface/show_file.php?fid=" . htmlspecialcharsbx($arResult["FILE"]["ID"]) . (!empty($arParams["ADDITIONAL_URL"]) ? "&" . $arParams["ADDITIONAL_URL"] : "");
}
if ($arResult["FILE"]["USER_ID"] > 0) {
    $forumUser = CForumUser::GetByUSER_ID($arResult["FILE"]["USER_ID"]);
    $db_res = CUser::GetById($arResult["FILE"]["USER_ID"]);
    if ($db_res && ($arUser = $db_res->Fetch())) {
        $arResult["FILE"]["OWNER"] = $forumUser && $forumUser["SHOW_NAME"] != "Y" ? $arUser["LOGIN"] : CUser::FormatName($arParams["NAME_TEMPLATE"], $arUser, true, false);
    }
}
$arResult["RETURN_DATA"] = "";
$arResult["RETURN_DATA_ARRAY"] = array();
// *************************/Default params*************************************************************
if (is_array($arResult["FILE"]) && !empty($arResult["FILE"]["SRC"])) {
    $arResult["FILE"]["FULL_SRC"] = CHTTP::URN2URI($arResult["FILE"]["SRC"], $arParams["SERVER_NAME"]);
    $ct = strToLower($arResult["FILE"]["CONTENT_TYPE"]);
    if ($arParams["SHOW_MODE"] == "LINK") {
        // do nothing
    } elseif ($arParams["MAX_FILE_SIZE"] >= $arResult["FILE"]["FILE_SIZE"] && substr($ct, 0, 6) == "image/") {
        $arResult["RETURN_DATA"] = $GLOBALS["APPLICATION"]->IncludeComponent("bitrix:forum.interface", "popup_image", array("URL" => $arParams["SHOW_MODE"] == "RSS" ? $arResult["FILE"]["FULL_SRC"] : $arResult["FILE"]["SRC"], "SIZE" => $arParams["SIZE"], "MAX_SIZE" => $arParams["MAX_SIZE"], "HTML_SIZE" => $arParams["HTML_SIZE"], "MODE" => $arParams["SHOW_MODE"] == "RSS" ? "RSS" : "SHOW2IMAGES", "IMG_WIDTH" => $arResult["FILE"]["WIDTH"], "IMG_HEIGHT" => $arResult["FILE"]["HEIGHT"], "IMG_NAME" => $arResult["FILE"]["ORIGINAL_NAME"], "IMG_SIZE" => $arResult["FILE"]["FILE_SIZE"], "CONVERT" => $arParams["CONVERT"], "FAMILY" => $arParams["FAMILY"], "RETURN" => "Y"), $this->__component->__parent !== null ? $this->__component->__parent : $this->__component, array("HIDE_ICONS" => "Y"));
    }
    $arResult["RETURN_DATA_ARRAY"]["DATA"] = $arResult["RETURN_DATA"];
    $arData = array();
    $size = intVal($arResult["FILE"]["FILE_SIZE"]) > 0 ? CFile::FormatSize(intval($arResult['FILE']['FILE_SIZE'])) : '';
    $sTitle = !empty($arResult["FILE"]["ORIGINAL_NAME"]) ? $arResult["FILE"]["ORIGINAL_NAME"] : GetMessage("FRM_DOWNLOAD");
    $file_ext = GetFileExtension($arResult["FILE"]["ORIGINAL_NAME"]);
    $arData["TITLE"] = "<a href=\"" . $arResult["FILE"]["SRC"] . "&action=download" . "\" class=\"forum-file forum-file-" . $file_ext . "\" " . (!empty($arResult["RETURN_DATA"]) ?: (substr($ct, 0, 6) == "image/" ? " data-bx-viewer=\"image\" data-bx-src=\"" . $arResult["FILE"]["SRC"] . "\" " . " data-bx-title=\"" . htmlspecialcharsbx($arResult["FILE"]["ORIGINAL_NAME"]) . "\" " . " data-bx-owner=\"" . htmlspecialcharsbx($arResult["FILE"]["OWNER"]) . "\" " . " data-bx-dateModify=\"" . htmlspecialcharsbx($arResult["FILE"]["TIMESTAMP_X"]) . "\" " . " data-bx-size=\"" . htmlspecialcharsbx($arResult["FILE"]["FILE_SIZE"]) . "\" " . " data-bx-download=\"" . $arResult["FILE"]["SRC"] . "&action=download\" " . " data-bx-width=\"" . htmlspecialcharsbx($arResult["FILE"]["WIDTH"]) . "\" " . " data-bx-height=\"" . htmlspecialcharsbx($arResult["FILE"]["HEIGHT"]) . "\" " : " data-bx-viewer=\"unknown\" data-bx-src=\"" . $arResult["FILE"]["SRC"] . "\" " . " data-bx-title=\"" . htmlspecialcharsbx($arResult["FILE"]["ORIGINAL_NAME"]) . "\" " . " data-bx-owner=\"" . htmlspecialcharsbx($arResult["FILE"]["OWNER"]) . "\" " . " data-bx-dateModify=\"" . htmlspecialcharsbx($arResult["FILE"]["TIMESTAMP_X"]) . "\" data-bx-tooBigSizeMsg=\"\" " . " data-bx-size=\"" . $size . "\" " . " data-bx-download=\"" . $arResult["FILE"]["SRC"] . "&action=download\" ")) . "title=\"" . str_replace("#FILE_NAME#", $arResult["FILE"]["ORIGINAL_NAME"], GetMessage("FRM_DOWNLOAD_TITLE")) . '" target="_blank">' . '<span>' . $arResult["FILE"]["ORIGINAL_NAME"] . '</span></a>';
    if ($size != '') {
        $arData["SIZE"] = "<span class=\"forum-file-size\">(" . $size . ")</span>";
    }
示例#7
0
 public static function getUFForPostForm($arParams)
 {
     $arFileData = array();
     $arUF = $GLOBALS["USER_FIELD_MANAGER"]->GetUserFields($arParams["ENTITY_TYPE"], $arParams["ENTITY_ID"], LANGUAGE_ID);
     $ufCode = $arParams["UF_CODE"];
     if (!empty($arUF[$ufCode]) && !empty($arUF[$ufCode]["VALUE"])) {
         if ($arParams["IS_DISK_OR_WEBDAV_INSTALLED"]) {
             if (\Bitrix\Main\Config\Option::get('disk', 'successfully_converted', false) && CModule::IncludeModule('disk')) {
                 $userFieldManager = \Bitrix\Disk\Driver::getInstance()->getUserFieldManager();
                 $urlManager = \Bitrix\Disk\Driver::getInstance()->getUrlManager();
                 $userFieldManager->loadBatchAttachedObject($arUF[$ufCode]["VALUE"]);
                 foreach ($arUF[$ufCode]["VALUE"] as $attachedId) {
                     $attachedObject = $userFieldManager->getAttachedObjectById($attachedId);
                     if ($attachedObject) {
                         $file = $attachedObject->getObject();
                         $fileName = $file->getName();
                         $fileUrl = $urlManager->getUrlUfController('download', array('attachedId' => $attachedId));
                         $fileUrl = str_replace("/bitrix/tools/disk/uf.php", SITE_DIR . "mobile/ajax.php", $fileUrl);
                         $fileUrl = $fileUrl . (strpos($fileUrl, "?") === false ? "?" : "&") . "mobile_action=disk_uf_view&filename=" . $fileName;
                         if (\Bitrix\Disk\TypeFile::isImage($file) && ($realFile = $file->getFile())) {
                             $previewImageUrl = $urlManager->getUrlUfController('show', array('attachedId' => $attachedId, 'width' => 144, 'height' => 144, 'exact' => 'Y', 'signature' => \Bitrix\Disk\Security\ParameterSigner::getImageSignature($attachedId, 144, 144)));
                         } else {
                             $previewImageUrl = false;
                         }
                         $icon = CMobileHelper::mobileDiskGetIconByFilename($fileName);
                         $iconUrl = CComponentEngine::makePathFromTemplate('/bitrix/components/bitrix/mobile.disk.file.detail/images/' . $icon);
                         $fileFata = array('type' => $file->getExtension(), 'ufCode' => $ufCode, 'id' => $attachedId, 'extension' => $file->getExtension(), 'name' => $fileName, 'url' => $fileUrl, 'iconUrl' => $iconUrl);
                         if ($previewImageUrl) {
                             $fileFata['previewImageUrl'] = CHTTP::URN2URI($previewImageUrl);
                         }
                         $arFileData[] = $fileFata;
                     }
                 }
             } else {
                 $data = CWebDavIblock::getRootSectionDataForUser($GLOBALS["USER"]->GetID());
                 if (is_array($data)) {
                     $ibe = new CIBlockElement();
                     $dbWDFile = $ibe->GetList(array(), array('ID' => $arUF[$ufCode]["VALUE"], 'IBLOCK_ID' => $data["IBLOCK_ID"]), false, false, array('ID', 'IBLOCK_ID', 'PROPERTY_FILE'));
                     while ($arWDFile = $dbWDFile->Fetch()) {
                         if ($arFile = CFile::GetFileArray($arWDFile["PROPERTY_FILE_VALUE"])) {
                             if (CFile::IsImage($arFile["FILE_NAME"], $arFile["CONTENT_TYPE"])) {
                                 $imageResized = CFile::ResizeImageGet($arFile["ID"], array("width" => 144, "height" => 144), BX_RESIZE_IMAGE_EXACT, false, true);
                                 $previewImageUrl = $imageResized["src"];
                             } else {
                                 $previewImageUrl = false;
                             }
                             $fileExtension = GetFileExtension($arFile["FILE_NAME"]);
                             $fileData = array('type' => $fileExtension, 'ufCode' => $ufCode, 'id' => $arWDFile["ID"], 'extension' => $fileExtension, 'name' => $arFile["FILE_NAME"], 'url' => $arFile["SRC"]);
                             if ($previewImageUrl) {
                                 $fileData['previewImageUrl'] = CHTTP::URN2URI($previewImageUrl);
                             }
                             $arFileData[] = $fileData;
                         }
                     }
                 }
             }
         } else {
             $dbRes = CFile::GetList(array(), array("@ID" => implode(",", $arUF[$ufCode]["VALUE"])));
             while ($arFile = $dbRes->GetNext()) {
                 if (CFile::IsImage($arFile["FILE_NAME"], $arFile["CONTENT_TYPE"])) {
                     $imageResized = CFile::ResizeImageGet($arFile["ID"], array("width" => 144, "height" => 144), BX_RESIZE_IMAGE_EXACT, false, true);
                     $previewImageUrl = $imageResized["src"];
                 } else {
                     $previewImageUrl = false;
                 }
                 $fileExtension = GetFileExtension($arFile["FILE_NAME"]);
                 $fileData = array('type' => $fileExtension, 'ufCode' => $ufCode, 'id' => $arFile["ID"], 'extension' => $fileExtension, 'name' => $arFile["FILE_NAME"], 'downloadUrl' => $arFile["SRC"]);
                 if ($previewImageUrl) {
                     $fileData['previewImageUrl'] = CHTTP::URN2URI($previewImageUrl);
                 }
                 $arFileData[] = $fileData;
             }
         }
     }
     return $arFileData;
 }
示例#8
0
 /**
  * @param string $hash
  * @param string $act
  * @return string
  */
 public function getUrl($hash, $act = "view")
 {
     return \CHTTP::URN2URI($this->script . (strpos($this->script, "?") === false ? "?" : "&") . \CHTTP::PrepareData(array(self::INFO_NAME => array("CID" => $this->CID, "mode" => $act, "hash" => $hash))));
 }
示例#9
0
$arParams['MULTIPLE'] = $arParams['MULTIPLE'] == 'N' ? 'N' : 'Y';

if (!$arParams['INPUT_NAME'])
{
	showError(GetMessage('MFI_ERR_NO_INPUT_NAME'));
	return false;
}

$arResult['CONTROL_UID'] = md5(randString(15));

$_SESSION["MFI_UPLOADED_FILES_".$arResult['CONTROL_UID']] = array();
$arResult['FILES'] = array();

if (is_array($arParams['INPUT_VALUE']) && strlen(implode(",", $arParams["INPUT_VALUE"])) > 0)
{
	$dbRes = CFile::GetList(array(), array("@ID" => implode(",", $arParams["INPUT_VALUE"])));
	while ($arFile = $dbRes->GetNext())
	{
		$arFile['URL'] = CHTTP::URN2URI($APPLICATION->GetCurPageParam("mfi_mode=down&fileID=".$arFile['ID']."&cid=".$arResult['CONTROL_UID']."&".bitrix_sessid_get(), array("mfi_mode", "fileID", "cid")));
		$arFile['FILE_SIZE_FORMATTED'] = CFile::FormatSize($arFile['FILE_SIZE']);
		$arResult['FILES'][$arFile['ID']] = $arFile;
		$_SESSION["MFI_UPLOADED_FILES_".$arResult['CONTROL_UID']][] = $arFile['ID'];
	}
}

CUtil::InitJSCore(array('ajax'));

$this->IncludeComponentTemplate();

return $arParams['CONTROL_ID'];
示例#10
0
    die;
}
global $APPLICATION, $USER;
$APPLICATION->SetAdditionalCSS('/bitrix/js/crm/css/crm.css');
$APPLICATION->SetAdditionalCSS("/bitrix/themes/.default/crm-entity-show.css");
if (SITE_TEMPLATE_ID === 'bitrix24') {
    $APPLICATION->SetAdditionalCSS("/bitrix/themes/.default/bitrix24/crm-entity-show.css");
}
//CrmContact
$obRes = CCrmContact::GetList(array('LAST_NAME' => 'ASC', 'NAME' => 'ASC'), array(), array('ID', 'FULL_NAME', 'COMPANY_TITLE', 'PHOTO'), 50);
$arFiles = array();
$arContacts = array();
while ($arRes = $obRes->Fetch()) {
    if (!empty($arRes['PHOTO']) && !isset($arFiles[$arRes['PHOTO']])) {
        if ($arFile = CFile::GetFileArray($arRes['PHOTO'])) {
            $arFiles[$arRes['PHOTO']] = CHTTP::URN2URI($arFile["SRC"]);
        }
    }
    $arContacts[] = array('id' => $arRes['ID'], 'url' => CComponentEngine::MakePathFromTemplate(COption::GetOptionString('crm', 'path_to_contact_show'), array('contact_id' => $arRes['ID'])), 'title' => str_replace(array(';', ','), ' ', $arRes['FULL_NAME']), 'desc' => empty($arRes['COMPANY_TITLE']) ? '' : $arRes['COMPANY_TITLE'], 'image' => isset($arFiles[$arRes['PHOTO']]) ? $arFiles[$arRes['PHOTO']] : '', 'type' => 'contact', 'selected' => false);
}
$arResult['PREFIX'] = isset($arResult['PREFIX']) ? strval($arResult['PREFIX']) : 'activity_list';
$editorCfg = array('OWNER_TYPE' => $arResult['OWNER_TYPE'], 'OWNER_ID' => $arResult['OWNER_ID'], 'READ_ONLY' => $arResult['READ_ONLY'], 'ENABLE_UI' => true, 'ENABLE_TASK_ADD' => $arResult['ENABLE_TASK_ADD'], 'ENABLE_CALENDAR_EVENT_ADD' => $arResult['ENABLE_CALENDAR_EVENT_ADD'], 'ENABLE_EMAIL_ADD' => $arResult['ENABLE_EMAIL_ADD']);
if (!function_exists('__CrmActivityListRenderItems')) {
    function __CrmActivityListRenderItems($items, $showMode, $showTop, &$editorCfg)
    {
        $editorItems = array();
        $count = count($items);
        $now = time() + CTimeZone::GetOffset();
        $toolbarID = '';
        if ($editorCfg['ENABLE_TOOLBAR']) {
            $toolbarID = $editorCfg['EDITOR_ID'] . '_toolbar';
示例#11
0
 $VALUE_NAME = 'FIELDS[' . $f_ID . '][PROPERTY_' . $prop['ID'] . '][' . $prop['PROPERTY_VALUE_ID'] . '][VALUE]';
 $DESCR_NAME = 'FIELDS[' . $f_ID . '][PROPERTY_' . $prop['ID'] . '][' . $prop['PROPERTY_VALUE_ID'] . '][DESCRIPTION]';
 //View part
 if (array_key_exists("GetAdminListViewHTML", $arUserType)) {
     $arViewHTML[] = call_user_func_array($arUserType["GetAdminListViewHTML"], array($prop, array("VALUE" => $prop["~VALUE"], "DESCRIPTION" => $prop["~DESCRIPTION"]), array("VALUE" => $VALUE_NAME, "DESCRIPTION" => $DESCR_NAME, "MODE" => "iblock_element_admin", "FORM_NAME" => "form_" . $sTableID)));
 } elseif ($prop['PROPERTY_TYPE'] == 'N') {
     $arViewHTML[] = $bExcel && isset($_COOKIE[$dsc_cookie_name]) ? number_format($prop["VALUE"], 4, chr($_COOKIE[$dsc_cookie_name]), '') : $prop["VALUE"];
 } elseif ($prop['PROPERTY_TYPE'] == 'S') {
     $arViewHTML[] = $prop["VALUE"];
 } elseif ($prop['PROPERTY_TYPE'] == 'L') {
     $arViewHTML[] = $prop["VALUE_ENUM"];
 } elseif ($prop['PROPERTY_TYPE'] == 'F') {
     if ($bExcel) {
         $arFile = CFile::GetFileArray($prop["VALUE"]);
         if (is_array($arFile)) {
             $arViewHTML[] = CHTTP::URN2URI($arFile["SRC"]);
         } else {
             $arViewHTML[] = "";
         }
     } else {
         $arViewHTML[] = CFileInput::Show('NO_FIELDS[' . $prop['PROPERTY_VALUE_ID'] . ']', $prop["VALUE"], array("IMAGE" => "Y", "PATH" => "Y", "FILE_SIZE" => "Y", "DIMENSIONS" => "Y", "IMAGE_POPUP" => "Y", "MAX_SIZE" => $maxImageSize, "MIN_SIZE" => $minImageSize), array('upload' => false, 'medialib' => false, 'file_dialog' => false, 'cloud' => false, 'del' => false, 'description' => false));
     }
 } elseif ($prop['PROPERTY_TYPE'] == 'G') {
     if (intval($prop["VALUE"]) > 0) {
         $rsSection = CIBlockSection::GetList(array(), array("ID" => $prop["VALUE"]), false, array('ID', 'NAME', 'IBLOCK_ID'));
         if ($arSection = $rsSection->GetNext()) {
             $arViewHTML[] = $arSection['NAME'] . ' [<a href="' . htmlspecialcharsbx(CIBlock::GetAdminSectionEditLink($arSection['IBLOCK_ID'], $arSection['ID'])) . '" title="' . GetMessage("IBEL_A_SEC_EDIT") . '">' . $arSection['ID'] . '</a>]';
         }
     }
 } elseif ($prop['PROPERTY_TYPE'] == 'E') {
     if ($t = GetElementName($prop["VALUE"])) {
示例#12
0
			$arItem["description"] = str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["description"]);
		else
			$arItem["description"]=htmlspecialcharsbx(($arElement["PREVIEW_TEXT"] || $arParams["YANDEX"]) ? $arElement["PREVIEW_TEXT"] : $arElement["DETAIL_TEXT"]);

		if(strlen($arResult["NODES"]["enclosure"])>0)
		{
			$arItem["enclosure"] = array(
				"url" => str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["enclosure"]),
				"length" => str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["enclosure_length"]),
				"type" => str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["enclosure_type"]),
			);
		}
		elseif(is_array($arElement["arr_PREVIEW_PICTURE"]))
		{
			$arItem["enclosure"] = array(
				"url" => CHTTP::URN2URI($arElement["arr_PREVIEW_PICTURE"]["SRC"], $arResult["SERVER_NAME"]),
				"length" => $arElement["arr_PREVIEW_PICTURE"]["FILE_SIZE"],
				"type" => $arElement["arr_PREVIEW_PICTURE"]["CONTENT_TYPE"],
			);
		}
		else
		{
			$arItem["enclosure"]=false;
		}

		if(strlen($arResult["NODES"]["category"])>0)
		{
			$arItem["category"] = str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["category"]);
		}
		else
		{
示例#13
0
    public function gadgetAuthorize()
    {
        global $APPLICATION;
        $APPLICATION->RestartBuffer();
        if (isset($_REQUEST["code"]) && $_REQUEST["code"] != '' && CSocServAuthManager::CheckUniqueKey()) {
            CUserOptions::SetOption('socialservices', 'bitrix24_task_planer_gadget_code', $_REQUEST["code"]);
        }
        $url = \CHTTP::URN2URI(BX_ROOT);
        $mode = 'opener';
        $url = CUtil::JSEscape($url);
        $location = $mode == "opener" ? 'if(window.opener) window.opener.location = \'' . $url . '\'; window.close();' : ' window.location = \'' . $url . '\';';
        $JSScript = '
		<script type="text/javascript">
		' . $location . '
		</script>
		';
        echo $JSScript;
        die;
    }
示例#14
0
 public function getFriendsList($limit = 0, $offset = 0)
 {
     $li = new CLiveIDOAuthInterface();
     if (IsModuleInstalled('bitrix24') && defined('BX24_HOST_NAME')) {
         $redirect_uri = self::CONTROLLER_URL . "/redirect.php";
     } else {
         $redirect_uri = \CHTTP::URN2URI("/bitrix/tools/oauth/liveid.php");
     }
     if ($li->GetAccessToken($redirect_uri) !== false) {
         $res = $li->GetCurrentUserFriends($limit, $offset);
     }
     if (is_array($res) && is_array($res['data'])) {
         foreach ($res['data'] as $key => $contact) {
             $res['data'][$key]['uid'] = $contact['id'];
             $res['data'][$key]['url'] = $this->getProfileUrl($contact['id']);
         }
         return $res['data'];
     }
     return false;
 }
示例#15
0
    ?>
" title="<?php 
    echo GetMessage("P_SLIDE_SHOW_TITLE");
    ?>
"><span><?php 
    echo GetMessage("P_SLIDE_SHOW");
    ?>
</span></a>
				</li>
			<?php 
}
?>

		<?php 
if (!empty($arResult["ELEMENT"]["REAL_PICTURE"]["SRC"])) {
    $url = CHTTP::URN2URI($arResult["ELEMENT"]["REAL_PICTURE"]["SRC"]);
    ?>
			<li class="photo-control photo-control-photo-original">
				<a rel="nofollow" href="<?php 
    echo $url;
    ?>
"  title="<?php 
    echo GetMessage("P_ORIGINAL_TITLE");
    ?>
"  onclick="ShowOriginal('<?php 
    echo CUtil::JSEscape(htmlspecialcharsex($url));
    ?>
', '<?php 
    echo CUtil::JSEscape($arResult["ELEMENT"]["NAME"]);
    ?>
'); return false;"><span><?php 
示例#16
0
 function GetAttachmentCollection($listName, $listItemID)
 {
     $start = microtime(true);
     if (!($listName_original = CIntranetUtils::checkGUID($listName))) {
         return new CSoapFault('Data error', 'Wrong GUID - ' . $listName);
     }
     $listName = ToUpper(CIntranetUtils::makeGUID($listName_original));
     $listItemID = intval($listItemID);
     $dbRes = CUser::GetByID($listItemID);
     //$dbRes = CUser::GetList(($by="id"), ($order="asc"), array("ID_EQUAL_EXACT"=>IntVal($listItemID)));
     //$dbRes = $GLOBALS['DB']->Query('SELECT PERSONAL_PHOTO FROM b_user WHERE id=\''.$listItemID.'\'');
     $obData = new CXMLCreator('Attachments');
     if (($arUser = $dbRes->Fetch()) && $arUser['PERSONAL_PHOTO']) {
         $arImage = self::InitImage($arUser['PERSONAL_PHOTO'], 100, 100);
         $obData->addChild($obAttachment = new CXMLCreator('Attachment'));
         $obAttachment->setData(CHTTP::URN2URI($arImage['CACHE']['src']));
         //$data = '<Attachments><Attachment>http://'.$_SERVER['SERVER_NAME'].$arImage['CACHE']['src'].'</Attachment></Attachments>';
     }
     // else
     // {
     // $data = '<Attachments></Attachments>';
     // }
     //return array('GetAttachmentCollectionResult' => $data);
     return array('GetAttachmentCollectionResult' => $obData);
 }
示例#17
0
    function UndoNewFile($Params, $type)
    {
        global $APPLICATION;
        $documentRoot = CSite::GetSiteDocRoot($Params['site']);
        $io = CBXVirtualIo::GetInstance();
        // Delete file
        $f = $io->GetFile($Params['absPath']);
        $f->MarkWritable();
        if (COption::GetOptionInt("main", "disk_space") > 0) {
            $file_size = $f->GetFileSize();
            $quota = new CDiskQuota();
            $quota->UpdateDiskQuota("file", $file_size, "delete");
        }
        $sucess = $io->Delete($Params['absPath']);
        if (!$sucess) {
            return;
        }
        $APPLICATION->RemoveFileAccessPermission(array($Params['site'], $Params['path']));
        if (CModule::IncludeModule("search")) {
            CSearch::DeleteIndex("main", $Params['site'] . "|" . $Params['path']);
        }
        // Find and clean file from menu
        if ($Params['menu']) {
            $arMenu = CFileman::GetMenuArray($documentRoot . $Params['menu']['menuFile']);
            if (!empty($arMenu["aMenuLinks"])) {
                $found = false;
                foreach ($arMenu["aMenuLinks"] as $menuIndex => $arItem) {
                    if ($arItem[1] == $Params['menu']['menuPath'] && $arItem[0] == $Params['menu']['menuName']) {
                        unset($arMenu["aMenuLinks"][$menuIndex]);
                        $found = true;
                        break;
                    }
                }
                if ($found) {
                    CFileMan::SaveMenu(array($Params['site'], $Params['menu']['menuFile']), $arMenu["aMenuLinks"], $arMenu["sMenuTemplate"]);
                }
            }
        }
        if (isset($Params['public']) && $Params['public'] == 'Y') {
            ?>
			<script type="text/javascript">
				window.location = '<?php 
            echo CUtil::JSEscape(CHTTP::URN2URI(GetDirPath($Params['path'])));
            ?>
';
			</script>
		<?php 
        }
        $GLOBALS["CACHE_MANAGER"]->CleanDir("menu");
    }
示例#18
0
 public static function InviteUser($arUser, $messageText, $SITE_ID)
 {
     global $USER;
     $bExtranet = !isset($arUser["UF_DEPARTMENT"]) || is_array($arUser["UF_DEPARTMENT"]) && intval($arUser["UF_DEPARTMENT"][0]) <= 0 || !is_array($arUser["UF_DEPARTMENT"]) && intval($arUser["UF_DEPARTMENT"]) <= 0;
     $SiteIdToSend = $bExtranet && CModule::IncludeModule("extranet") ? CExtranet::GetExtranetSiteID() : CSite::GetDefSite();
     $rsSites = CSite::GetByID($SiteIdToSend);
     $arSite = $rsSites->Fetch();
     $serverName = strlen($arSite["SERVER_NAME"]) > 0 ? $arSite["SERVER_NAME"] : (defined("SITE_SERVER_NAME") && strlen(SITE_SERVER_NAME) > 0 ? SITE_SERVER_NAME : COption::GetOptionString("main", "server_name", ""));
     $event = new CEvent();
     if (IsModuleInstalled("bitrix24")) {
         $event->SendImmediate("BITRIX24_USER_INVITATION", $SITE_ID, array("EMAIL_FROM" => $USER->GetEmail(), "EMAIL_TO" => $arUser["EMAIL"], "LINK" => CHTTP::URN2URI("/bitrix/tools/intranet_invite_dialog.php?user_id=" . $arUser['ID'] . "&checkword=" . urlencode($arUser["CONFIRM_CODE"]), $serverName), "USER_TEXT" => $messageText));
     } else {
         $event->SendImmediate("INTRANET_USER_INVITATION", $SITE_ID, array("EMAIL_TO" => $arUser["EMAIL"], "LINK" => CHTTP::URN2URI("/bitrix/tools/intranet_invite_dialog.php?user_id=" . $arUser['ID'] . "&checkword=" . urlencode($arUser["CONFIRM_CODE"]), $serverName), "USER_TEXT" => $messageText));
     }
 }
示例#19
0
文件: cml2.php 项目: nycmic/bittest
 function ExportFile($FILE_ID)
 {
     if ($this->work_dir) {
         $arFile = CFile::GetFileArray($FILE_ID);
         if ($arFile) {
             if (!$this->download_files && $arFile["HANDLER_ID"] > 0) {
                 return array(GetMessage("IBLOCK_XML2_BX_ORIGINAL_NAME") => $arFile["ORIGINAL_NAME"], GetMessage("IBLOCK_XML2_DESCRIPTION") => $arFile["DESCRIPTION"], GetMessage("IBLOCK_XML2_BX_URL") => urldecode($arFile["SRC"]), GetMessage("IBLOCK_XML2_BX_FILE_SIZE") => $arFile["FILE_SIZE"], GetMessage("IBLOCK_XML2_BX_FILE_WIDTH") => $arFile["WIDTH"], GetMessage("IBLOCK_XML2_BX_FILE_HEIGHT") => $arFile["HEIGHT"], GetMessage("IBLOCK_XML2_BX_FILE_CONTENT_TYPE") => $arFile["CONTENT_TYPE"]);
             } else {
                 $arTempFile = CFile::MakeFileArray($FILE_ID);
                 if (isset($arTempFile["tmp_name"]) && $arTempFile["tmp_name"] != "") {
                     $strFile = $arFile["SUBDIR"] . "/" . $arFile["FILE_NAME"];
                     $strNewFile = str_replace("//", "/", $this->work_dir . $this->file_dir . $strFile);
                     CheckDirPath($strNewFile);
                     if (@copy($arTempFile["tmp_name"], $strNewFile)) {
                         return $this->file_dir . $strFile;
                     }
                 }
             }
         }
     } elseif ($this->export_as_url) {
         $arFile = CFile::GetFileArray($FILE_ID);
         if ($arFile) {
             return CHTTP::URN2URI($arFile["SRC"]);
         }
     }
     return "";
 }
示例#20
0
                $photo['author_name'] = $GLOBALS["APPLICATION"]->ConvertCharset($photo['author_name'], 'Windows-1251', 'UTF-8');
                $detailUrl = $GLOBALS["APPLICATION"]->ConvertCharset($detailUrl, 'Windows-1251', 'UTF-8');
                $photo['src'] = $GLOBALS["APPLICATION"]->ConvertCharset($photo['src'], 'Windows-1251', 'UTF-8');
            }
            ?>
		<track>
			<title><?php 
            echo $title;
            ?>
</title>
			<creator><?php 
            echo $photo['author_name'];
            ?>
</creator>
			<location><?php 
            echo CHTTP::URN2URI($photo['src']);
            ?>
</location>
			<info><?php 
            echo $detailUrl;
            ?>
</info>
		</track>
<?php 
        }
    }
    ?>
	</trackList>
</playlist>
<?php 
    die;
示例#21
0
 function Set($arFields, $BANNER_ID, $CHECK_RIGHTS = "Y")
 {
     $err_mess = CAdvBanner_all::err_mess() . "<br>Function: Set<br>Line: ";
     global $DB, $USER;
     $BANNER_ID = intval($BANNER_ID);
     if (CAdvBanner::CheckFields($arFields, $BANNER_ID, $CHECK_RIGHTS)) {
         if ($CHECK_RIGHTS == "Y") {
             $USER_ID = intval($USER->GetID());
             $isAdmin = CAdvContract::IsAdmin();
             $isManager = CAdvContract::IsManager();
             $CHECK_CONTRACT_RIGHTS = "Y";
             if ($isManager) {
                 $CHECK_CONTRACT_RIGHTS = "N";
             }
         } else {
             $USER_ID = 0;
             $isAdmin = $isManager = true;
             $CHECK_CONTRACT_RIGHTS = "N";
         }
         $arFields_i = array();
         $arrKeys = array_keys($arFields);
         $arBanner = array();
         if ($BANNER_ID > 0) {
             $rsBanner = CAdvBanner::GetByID($BANNER_ID, $CHECK_RIGHTS);
             $arBanner = $rsBanner->Fetch();
             if (!in_array("CONTRACT_ID", $arrKeys)) {
                 $CONTRACT_ID = intval($arBanner["CONTRACT_ID"]);
             } else {
                 $CONTRACT_ID = intval($arFields["CONTRACT_ID"]);
             }
         } else {
             $CONTRACT_ID = intval($arFields["CONTRACT_ID"]);
         }
         $modify_status = "N";
         if ($CONTRACT_ID > 0) {
             if ($BANNER_ID <= 0 && (!$isAdmin || !$isManager || in_array("STATUS_SID", $arrKeys))) {
                 $modify_status = "Y";
             }
             $rsContract = CAdvContract::GetByID($CONTRACT_ID, $CHECK_CONTRACT_RIGHTS);
             $arContract = $rsContract->Fetch();
             if (($isAdmin || $isManager) && in_array("RESET_VISITOR_COUNT", $arrKeys) && $arFields["RESET_VISITOR_COUNT"]) {
                 $arFields_i["VISITOR_COUNT"] = 0;
                 // если баннер уже показывался то
                 if (intval($arBanner["VISITOR_COUNT"]) > 0) {
                     // уменьшим счетчик у контракта
                     $value = intval($arContract["VISITOR_COUNT"]) - intval($arBanner["VISITOR_COUNT"]);
                     $value = $value < 0 ? 0 : $value;
                     CAdvContract::Set(array("VISITOR_COUNT" => $value), $arContract["ID"], $CHECK_CONTRACT_RIGHTS);
                 }
             }
             if (($isAdmin || $isManager) && in_array("RESET_SHOW_COUNT", $arrKeys) && $arFields["RESET_SHOW_COUNT"]) {
                 $arFields_i["SHOW_COUNT"] = 0;
                 // если баннер уже показывался то
                 if (intval($arBanner["SHOW_COUNT"]) > 0) {
                     // уменьшим счетчик у контракта
                     $value = intval($arContract["SHOW_COUNT"]) - intval($arBanner["SHOW_COUNT"]);
                     $value = $value < 0 ? 0 : $value;
                     CAdvContract::Set(array("SHOW_COUNT" => $value), $arContract["ID"], $CHECK_CONTRACT_RIGHTS);
                 }
             }
             if (($isAdmin || $isManager) && in_array("FIX_CLICK", $arrKeys) && ($arFields["FIX_CLICK"] == "Y" || $arFields["FIX_CLICK"] == "N")) {
                 $arFields_i["FIX_CLICK"] = "'" . $arFields["FIX_CLICK"] . "'";
             }
             if (($isAdmin || $isManager) && in_array("FIX_SHOW", $arrKeys) && ($arFields["FIX_SHOW"] == "Y" || $arFields["FIX_SHOW"] == "N")) {
                 $arFields_i["FIX_SHOW"] = "'" . $arFields["FIX_SHOW"] . "'";
             }
             if (($isAdmin || $isManager) && in_array("FLYUNIFORM", $arrKeys) && ($arFields["FLYUNIFORM"] == "Y" || $arFields["FLYUNIFORM"] == "N")) {
                 $arFields_i["FLYUNIFORM"] = "'" . $arFields["FLYUNIFORM"] . "'";
             }
             if (($isAdmin || $isManager) && in_array("RESET_CLICK_COUNT", $arrKeys) && $arFields["RESET_CLICK_COUNT"]) {
                 $arFields_i["CLICK_COUNT"] = 0;
                 // если на баннер уже кликали то
                 if (intval($arBanner["CLICK_COUNT"]) > 0) {
                     // уменьшим счетчик у контракта
                     $value = intval($arContract["CLICK_COUNT"]) - intval($arBanner["CLICK_COUNT"]);
                     $value = $value < 0 ? 0 : $value;
                     CAdvContract::Set(array("CLICK_COUNT" => $value), $arContract["ID"], $CHECK_CONTRACT_RIGHTS);
                 }
             }
             if (($isAdmin || $isManager) && in_array("KEYWORDS", $arrKeys)) {
                 $arFields_i["KEYWORDS"] = "'" . $DB->ForSql($arFields["KEYWORDS"], 2000) . "'";
             }
             if (in_array("CONTRACT_ID", $arrKeys) && intval($arFields["CONTRACT_ID"]) > 0) {
                 $arFields_i["CONTRACT_ID"] = intval($arFields["CONTRACT_ID"]);
             }
             if (in_array("TYPE_SID", $arrKeys) && strlen($arFields["TYPE_SID"]) > 0) {
                 $arFields_i["TYPE_SID"] = "'" . $DB->ForSql($arFields["TYPE_SID"], 255) . "'";
                 if ("'" . $DB->ForSql($arBanner["TYPE_SID"], 255) . "'" != $arFields_i["TYPE_SID"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("NAME", $arrKeys)) {
                 $arFields_i["NAME"] = "'" . $DB->ForSql($arFields["NAME"], 255) . "'";
             }
             if (in_array("GROUP_SID", $arrKeys)) {
                 $arFields_i["GROUP_SID"] = "'" . $DB->ForSql($arFields["GROUP_SID"], 255) . "'";
             }
             if (in_array("ACTIVE", $arrKeys) && ($arFields["ACTIVE"] == "Y" || $arFields["ACTIVE"] == "N")) {
                 $arFields_i["ACTIVE"] = "'" . $arFields["ACTIVE"] . "'";
             }
             if (in_array("WEIGHT", $arrKeys)) {
                 $arFields_i["WEIGHT"] = intval($arFields["WEIGHT"]);
             }
             if (in_array("MAX_VISITOR_COUNT", $arrKeys)) {
                 if (strlen($arFields["MAX_VISITOR_COUNT"]) > 0) {
                     $arFields_i["MAX_VISITOR_COUNT"] = intval($arFields["MAX_VISITOR_COUNT"]);
                 } else {
                     $arFields_i["MAX_VISITOR_COUNT"] = "null";
                 }
             }
             if (in_array("SHOWS_FOR_VISITOR", $arrKeys)) {
                 if (strlen($arFields["SHOWS_FOR_VISITOR"]) > 0) {
                     $arFields_i["SHOWS_FOR_VISITOR"] = intval($arFields["SHOWS_FOR_VISITOR"]);
                 } else {
                     $arFields_i["SHOWS_FOR_VISITOR"] = "null";
                 }
             }
             if (in_array("MAX_SHOW_COUNT", $arrKeys)) {
                 if (strlen($arFields["MAX_SHOW_COUNT"]) > 0) {
                     $arFields_i["MAX_SHOW_COUNT"] = intval($arFields["MAX_SHOW_COUNT"]);
                 } else {
                     $arFields_i["MAX_SHOW_COUNT"] = "null";
                 }
             }
             if (in_array("MAX_CLICK_COUNT", $arrKeys)) {
                 if (strlen($arFields["MAX_CLICK_COUNT"]) > 0) {
                     $arFields_i["MAX_CLICK_COUNT"] = intval($arFields["MAX_CLICK_COUNT"]);
                 } else {
                     $arFields_i["MAX_CLICK_COUNT"] = "null";
                 }
             }
             if (in_array("DATE_SHOW_FROM", $arrKeys)) {
                 if (strlen($arFields["DATE_SHOW_FROM"]) > 0) {
                     $arFields_i["DATE_SHOW_FROM"] = $DB->CharToDateFunction($arFields["DATE_SHOW_FROM"]);
                 } else {
                     $arFields_i["DATE_SHOW_FROM"] = "null";
                 }
             }
             if (in_array("DATE_SHOW_TO", $arrKeys)) {
                 if (strlen($arFields["DATE_SHOW_TO"]) > 0) {
                     $time = "";
                     if (defined("FORMAT_DATE") && strlen($arFields["DATE_SHOW_TO"]) <= strlen(FORMAT_DATE)) {
                         $time = " 23:59:59";
                     }
                     $arFields_i["DATE_SHOW_TO"] = $DB->CharToDateFunction($arFields["DATE_SHOW_TO"] . $time);
                 } else {
                     $arFields_i["DATE_SHOW_TO"] = "null";
                 }
             }
             if (in_array("DATE_SHOW_FIRST", $arrKeys)) {
                 $arFields_i["DATE_SHOW_FIRST"] = "null";
             }
             if (in_array("arrIMAGE_ID", $arrKeys) && is_array($arFields["arrIMAGE_ID"])) {
                 $arIMAGE = $arFields["arrIMAGE_ID"];
                 $arIMAGE["MODULE_ID"] = "advertising";
                 if ($BANNER_ID > 0) {
                     $z = $DB->Query("SELECT IMAGE_ID FROM b_adv_banner WHERE ID='{$BANNER_ID}'", false, $err_mess . __LINE__);
                     $zr = $z->Fetch();
                     $arIMAGE["old_file"] = $zr["IMAGE_ID"];
                 }
                 if (strlen($arIMAGE["name"]) > 0 || strlen($arIMAGE["del"]) > 0) {
                     $subdir = COption::GetOptionString("advertising", "UPLOAD_SUBDIR");
                     $fid = CFile::SaveFile($arIMAGE, $subdir);
                     if (intval($fid) > 0) {
                         $arFields_i["IMAGE_ID"] = intval($fid);
                     } else {
                         $arFields_i["IMAGE_ID"] = "null";
                     }
                     if (intval($arBanner["IMAGE_ID"]) != intval($arFields_i["IMAGE_ID"])) {
                         $modify_status = "Y";
                     }
                 }
             }
             if (in_array("IMAGE_ALT", $arrKeys)) {
                 $arFields_i["IMAGE_ALT"] = "'" . $DB->ForSql($arFields["IMAGE_ALT"], 255) . "'";
                 if ("'" . $DB->ForSql($arBanner["IMAGE_ALT"], 255) . "'" != $arFields_i["IMAGE_ALT"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("URL", $arrKeys)) {
                 $arFields_i["URL"] = "'" . $DB->ForSql($arFields["URL"], 2000) . "'";
                 if ("'" . $DB->ForSql($arBanner["URL"], 2000) . "'" != $arFields_i["URL"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("URL_TARGET", $arrKeys)) {
                 $arFields_i["URL_TARGET"] = "'" . $DB->ForSql($arFields["URL_TARGET"], 255) . "'";
                 if ("'" . $DB->ForSql($arBanner["URL_TARGET"], 255) . "'" != $arFields_i["URL_TARGET"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("NO_URL_IN_FLASH", $arrKeys) && ($arFields["NO_URL_IN_FLASH"] == "Y" || $arFields["NO_URL_IN_FLASH"] == "N")) {
                 $arFields_i["NO_URL_IN_FLASH"] = "'" . $arFields["NO_URL_IN_FLASH"] . "'";
                 if ($arBanner["NO_URL_IN_FLASH"] != $arFields_i["NO_URL_IN_FLASH"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("CODE", $arrKeys)) {
                 $arFields_i["CODE"] = $arFields["CODE"];
                 if ($arBanner["CODE"] != $arFields_i["CODE"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("FLASH_JS", $arrKeys) && ($arFields["FLASH_JS"] == "Y" || $arFields["FLASH_JS"] == "N")) {
                 $arFields_i["FLASH_JS"] = "'" . $arFields["FLASH_JS"] . "'";
                 if ("'" . $arBanner["FLASH_JS"] . "'" != $arFields_i["FLASH_JS"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("FLASH_VER", $arrKeys)) {
                 $arFields_i["FLASH_VER"] = "'" . $DB->ForSQL($arFields["FLASH_VER"], 20) . "'";
                 if ("'" . $DB->ForSQL($arBanner["FLASH_VER"], 20) . "'" != $arFields_i["FLASH_VER"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("arrFlashIMAGE_ID", $arrKeys) && is_array($arFields["arrFlashIMAGE_ID"])) {
                 $arrFlashIMAGE = $arFields["arrFlashIMAGE_ID"];
                 $arrFlashIMAGE["MODULE_ID"] = "advertising";
                 if ($BANNER_ID > 0) {
                     $z = $DB->Query("SELECT FLASH_IMAGE FROM b_adv_banner WHERE ID='{$BANNER_ID}'", false, $err_mess . __LINE__);
                     if ($zr = $z->Fetch()) {
                         $arrFlashIMAGE["old_file"] = $zr["FLASH_IMAGE"];
                     }
                 }
                 if (strlen($arrFlashIMAGE["name"]) > 0 || strlen($arrFlashIMAGE["del"]) > 0) {
                     $subdir = COption::GetOptionString("advertising", "UPLOAD_SUBDIR");
                     $fid = CFile::SaveFile($arrFlashIMAGE, $subdir);
                     if (intval($fid) > 0) {
                         $arFields_i["FLASH_IMAGE"] = intval($fid);
                     } else {
                         $arFields_i["FLASH_IMAGE"] = "null";
                     }
                     if (intval($arBanner["FLASH_IMAGE"]) != intval($arFields_i["FLASH_IMAGE"])) {
                         $modify_status = "Y";
                     }
                 }
             }
             if (in_array("AD_TYPE", $arrKeys)) {
                 $arFields_i["AD_TYPE"] = "'" . $DB->ForSql($arFields["AD_TYPE"], 20) . "'";
                 if ("'" . $DB->ForSql($arBanner["AD_TYPE"], 20) . "'" != $arFields_i["AD_TYPE"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("FLASH_TRANSPARENT", $arrKeys)) {
                 $arFields_i["FLASH_TRANSPARENT"] = "'" . $DB->ForSql($arFields["FLASH_TRANSPARENT"], 11) . "'";
                 if ("'" . $DB->ForSql($arBanner["FLASH_TRANSPARENT"], 11) . "'" != $arFields_i["FLASH_TRANSPARENT"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("CODE_TYPE", $arrKeys)) {
                 $arFields_i["CODE_TYPE"] = $arFields["CODE_TYPE"] == "text" ? "'text'" : "'html'";
                 $value = $arBanner["CODE_TYPE"] == "text" ? "'text'" : "'html'";
                 if ($value != $arFields_i["CODE_TYPE"]) {
                     $modify_status = "Y";
                 }
             }
             if (in_array("STAT_EVENT_1", $arrKeys)) {
                 $arFields_i["STAT_EVENT_1"] = "'" . $DB->ForSql($arFields["STAT_EVENT_1"], 255) . "'";
             }
             if (in_array("STAT_EVENT_2", $arrKeys)) {
                 $arFields_i["STAT_EVENT_2"] = "'" . $DB->ForSql($arFields["STAT_EVENT_2"], 255) . "'";
             }
             if (in_array("STAT_EVENT_3", $arrKeys)) {
                 $arFields_i["STAT_EVENT_3"] = "'" . $DB->ForSql($arFields["STAT_EVENT_3"], 255) . "'";
             }
             if (in_array("FOR_NEW_GUEST", $arrKeys)) {
                 if ($arFields["FOR_NEW_GUEST"] == "Y" || $arFields["FOR_NEW_GUEST"] == "N") {
                     $arFields_i["FOR_NEW_GUEST"] = "'" . $arFields["FOR_NEW_GUEST"] . "'";
                 } elseif ($arFields["FOR_NEW_GUEST"] == "NOT_REF" || $arFields["FOR_NEW_GUEST"] == "ALL" || strlen($arFields["FOR_NEW_GUEST"]) <= 0) {
                     $arFields_i["FOR_NEW_GUEST"] = "null";
                 }
             }
             if (in_array("COMMENTS", $arrKeys)) {
                 $arFields_i["COMMENTS"] = "'" . $DB->ForSql($arFields["COMMENTS"], 2000) . "'";
             }
             if (($isAdmin || $isManager) && in_array("STATUS_COMMENTS", $arrKeys)) {
                 $arFields_i["STATUS_COMMENTS"] = "'" . $DB->ForSql($arFields["STATUS_COMMENTS"], 2000) . "'";
             }
             $email_notify = "N";
             if ($modify_status == "Y" || in_array("STATUS_SID", $arrKeys) && ($isAdmin || $isManager)) {
                 $new_status = $isAdmin || $isManager ? $arFields["STATUS_SID"] : $arContract["DEFAULT_STATUS_SID"];
                 $arFields_i["STATUS_SID"] = "'" . $DB->ForSql($new_status, 255) . "'";
                 // если статус изменился то
                 if ("'" . $DB->ForSql($arBanner["STATUS_SID"], 255) . "'" != $arFields_i["STATUS_SID"]) {
                     $email_notify = "Y";
                 }
             }
             if (in_array("arrSITE", $arrKeys)) {
                 $arFields_i["FIRST_SITE_ID"] = "''";
                 if (is_array($arFields["arrSITE"])) {
                     $arrSITE = array_unique($arFields["arrSITE"]);
                     reset($arrSITE);
                     list(, $site_id) = each($arrSITE);
                     $arFields_i["FIRST_SITE_ID"] = "'" . $DB->ForSql($site_id, 2) . "'";
                 }
             }
             if (in_array("SHOW_USER_GROUP", $arrKeys)) {
                 if ($arFields["SHOW_USER_GROUP"] == "Y" && (in_array("arrUSERGROUP", $arrKeys) && count($arFields["arrUSERGROUP"]) > 0)) {
                     $SHOW_USER_GROUP = "Y";
                 } else {
                     $SHOW_USER_GROUP = "N";
                 }
                 $arFields_i["SHOW_USER_GROUP"] = "'" . $DB->ForSql($SHOW_USER_GROUP, 1) . "'";
             }
             if (in_array("STAT_TYPE", $arrKeys)) {
                 if ($arFields["STAT_TYPE"] === "CITY") {
                     $arFields_i["STAT_TYPE"] = "'CITY'";
                 } elseif ($arFields["STAT_TYPE"] === "REGION") {
                     $arFields_i["STAT_TYPE"] = "'REGION'";
                 } else {
                     $arFields_i["STAT_TYPE"] = "'COUNTRY'";
                 }
             }
             if (intval($BANNER_ID) > 0) {
                 if (in_array("DATE_MODIFY", $arrKeys) && CheckDateTime($arFields["DATE_MODIFY"])) {
                     $arFields_i["DATE_MODIFY"] = $DB->CharToDateFunction($arFields["DATE_MODIFY"]);
                 } else {
                     $arFields_i["DATE_MODIFY"] = $DB->GetNowFunction();
                 }
                 if (in_array("MODIFIED_BY", $arrKeys)) {
                     $arFields_i["MODIFIED_BY"] = intval($arFields["MODIFIED_BY"]);
                 } else {
                     $arFields_i["MODIFIED_BY"] = $USER_ID;
                 }
                 CAdvBanner::Update($arFields_i, $BANNER_ID);
             } else {
                 if (in_array("DATE_CREATE", $arrKeys) && CheckDateTime($arFields["DATE_CREATE"])) {
                     $arFields_i["DATE_CREATE"] = $DB->CharToDateFunction($arFields["DATE_CREATE"]);
                 } else {
                     $arFields_i["DATE_CREATE"] = $DB->GetNowFunction();
                 }
                 if (in_array("CREATED_BY", $arrKeys)) {
                     $arFields_i["CREATED_BY"] = intval($arFields["CREATED_BY"]);
                 } else {
                     $arFields_i["CREATED_BY"] = $USER_ID;
                 }
                 if (in_array("DATE_MODIFY", $arrKeys) && CheckDateTime($arFields["DATE_MODIFY"])) {
                     $arFields_i["DATE_MODIFY"] = $DB->CharToDateFunction($arFields["DATE_MODIFY"]);
                 } else {
                     $arFields_i["DATE_MODIFY"] = $DB->GetNowFunction();
                 }
                 if (in_array("MODIFIED_BY", $arrKeys)) {
                     $arFields_i["MODIFIED_BY"] = intval($arFields["MODIFIED_BY"]);
                 } else {
                     $arFields_i["MODIFIED_BY"] = $USER_ID;
                 }
                 $BANNER_ID = CAdvBanner::Add($arFields_i);
             }
             $BANNER_ID = intval($BANNER_ID);
             if ($BANNER_ID > 0) {
                 if (in_array("arrSITE", $arrKeys)) {
                     CAdvBanner::DeleteSiteLink($BANNER_ID);
                     if (is_array($arFields["arrSITE"])) {
                         $arrSITE = array_unique($arFields["arrSITE"]);
                         reset($arrSITE);
                         foreach ($arrSITE as $sid) {
                             if (strlen(trim($sid)) > 0) {
                                 $strSql = "INSERT INTO b_adv_banner_2_site (BANNER_ID, SITE_ID) VALUES ({$BANNER_ID}, '" . $DB->ForSql($sid, 2) . "')";
                                 $DB->Query($strSql, false, $err_mess . __LINE__);
                             }
                         }
                     }
                 }
                 if (in_array("arrSHOW_PAGE", $arrKeys)) {
                     CAdvBanner::DeletePageLink($BANNER_ID, " and SHOW_ON_PAGE='Y'");
                     if (is_array($arFields["arrSHOW_PAGE"])) {
                         $arrPage = array_unique($arFields["arrSHOW_PAGE"]);
                         foreach ($arrPage as $page) {
                             $page = trim($page);
                             if (strlen($page) > 0) {
                                 $arFields_i = array("BANNER_ID" => $BANNER_ID, "PAGE" => "'" . $DB->ForSql($page, 255) . "'", "SHOW_ON_PAGE" => "'Y'");
                                 $DB->Insert("b_adv_banner_2_page", $arFields_i, $err_mess . __LINE__);
                             }
                         }
                     }
                 }
                 if (in_array("arrNOT_SHOW_PAGE", $arrKeys)) {
                     CAdvBanner::DeletePageLink($BANNER_ID, " and SHOW_ON_PAGE='N'");
                     if (is_array($arFields["arrNOT_SHOW_PAGE"])) {
                         $arrPage = array_unique($arFields["arrNOT_SHOW_PAGE"]);
                         foreach ($arrPage as $page) {
                             $page = trim($page);
                             if (strlen($page) > 0) {
                                 $arFields_i = array("BANNER_ID" => $BANNER_ID, "PAGE" => "'" . $DB->ForSql($page, 255) . "'", "SHOW_ON_PAGE" => "'N'");
                                 $DB->Insert("b_adv_banner_2_page", $arFields_i, $err_mess . __LINE__);
                             }
                         }
                     }
                 }
                 if (in_array("arrCOUNTRY", $arrKeys)) {
                     $iCounter = 0;
                     CAdvBanner::DeleteCountryLink($BANNER_ID);
                     if (is_array($arFields["arrCOUNTRY"])) {
                         $arrCOUNTRY = array();
                         foreach ($arFields["arrCOUNTRY"] as $COUNTRY) {
                             if (is_array($COUNTRY)) {
                                 $COUNTRY["COUNTRY_ID"] = trim($COUNTRY["COUNTRY_ID"]);
                                 if (strlen($COUNTRY["COUNTRY_ID"]) <= 0) {
                                     continue;
                                 }
                                 $key = $COUNTRY["COUNTRY_ID"] . "|" . $COUNTRY["REGION"] . "|" . $COUNTRY["CITY_ID"];
                                 $strInsert = "'" . $DB->ForSQL($COUNTRY["COUNTRY_ID"], 2) . "', " . (strlen($COUNTRY["REGION"]) <= 0 ? "null" : "'" . $DB->ForSQL($COUNTRY["REGION"], 200) . "'") . ", " . (intval($COUNTRY["CITY_ID"]) <= 0 ? "null" : intval($COUNTRY["CITY_ID"])) . "";
                             } else {
                                 $COUNTRY = trim($COUNTRY);
                                 if (strlen($COUNTRY) <= 0) {
                                     continue;
                                 }
                                 $key = $COUNTRY . "||";
                                 $strInsert = "'" . $DB->ForSQL($COUNTRY, 2) . "', null, null";
                             }
                             $arrCOUNTRY[$key] = $strInsert;
                         }
                         foreach ($arrCOUNTRY as $strInsert) {
                             $strSql = "INSERT INTO b_adv_banner_2_country (BANNER_ID, COUNTRY_ID, REGION, CITY_ID) VALUES ({$BANNER_ID}, " . $strInsert . ")";
                             $DB->Query($strSql, false, $err_mess . __LINE__);
                             $iCounter++;
                         }
                     }
                     $DB->Query("UPDATE b_adv_banner SET STAT_COUNT = " . $iCounter . " WHERE ID = " . $BANNER_ID);
                 }
                 if (in_array("arrSTAT_ADV", $arrKeys)) {
                     CAdvBanner::DeleteStatAdvLink($BANNER_ID);
                     if (is_array($arFields["arrSTAT_ADV"])) {
                         $arrSTAT_ADV = array_unique($arFields["arrSTAT_ADV"]);
                         foreach ($arrSTAT_ADV as $aid) {
                             if (intval($aid) > 0) {
                                 $strSql = "INSERT INTO b_adv_banner_2_stat_adv (BANNER_ID, STAT_ADV_ID) VALUES ({$BANNER_ID}, '" . intval($aid) . "')";
                                 $DB->Query($strSql, false, $err_mess . __LINE__);
                             }
                         }
                     }
                 }
                 if (in_array("arrWEEKDAY", $arrKeys)) {
                     CAdvBanner::DeleteWeekdayLink($BANNER_ID);
                     if (is_array($arFields["arrWEEKDAY"])) {
                         $arrWeekday = array_keys($arFields["arrWEEKDAY"]);
                         $arrWeekday = array_unique($arrWeekday);
                         if (is_array($arrWeekday) && count($arrWeekday) > 0) {
                             foreach ($arrWeekday as $weekday) {
                                 if (is_array($arFields["arrWEEKDAY"][$weekday]) && count($arFields["arrWEEKDAY"][$weekday]) > 0) {
                                     $arrHour = $arFields["arrWEEKDAY"][$weekday];
                                     array_walk($arrHour, create_function("&\$item", "\$item=intval(\$item);"));
                                     $arrHour = array_unique($arrHour);
                                     foreach ($arrHour as $hour) {
                                         if ($hour >= 0 && $hour <= 23) {
                                             $strSql = "INSERT INTO b_adv_banner_2_weekday (BANNER_ID, C_WEEKDAY, C_HOUR) VALUES ({$BANNER_ID}, '" . $DB->ForSql($weekday, 10) . "', {$hour})";
                                             $DB->Query($strSql, false, $err_mess . __LINE__);
                                         }
                                     }
                                 }
                             }
                         }
                     }
                 }
                 if (in_array("arrUSERGROUP", $arrKeys)) {
                     CAdvBanner::DeleteGroupLink($BANNER_ID);
                     if (is_array($arFields["arrUSERGROUP"])) {
                         $arrGROUPS = array_unique($arFields["arrUSERGROUP"]);
                         foreach ($arrGROUPS as $uid) {
                             if (intval($uid) > 0) {
                                 $strSql = "INSERT INTO b_adv_banner_2_group (BANNER_ID, GROUP_ID) VALUES ({$BANNER_ID}, " . IntVal($uid) . ")";
                                 $DB->Query($strSql, false, $err_mess . __LINE__);
                             }
                         }
                     }
                 }
                 // если необходимо оповестить
                 $SEND_EMAIL = $arFields["SEND_EMAIL"] == "N" ? "N" : "Y";
                 if ($email_notify == "Y" && (!$isAdmin || !$isManager || $SEND_EMAIL == "Y")) {
                     // получаем данные по баннеру
                     CTimeZone::Disable();
                     $rsBanner = CAdvBanner::GetByID($BANNER_ID, $CHECK_RIGHTS);
                     CTimeZone::Enable();
                     if ($arBanner = $rsBanner->Fetch()) {
                         $BCC = array();
                         $OWNER_EMAIL = array();
                         $ADD_EMAIL = array();
                         $STAT_EMAIL = array();
                         $EDIT_EMAIL = array();
                         $MANAGER_EMAIL = CAdvContract::GetManagerEmails();
                         $ADMIN_EMAIL = CAdvContract::GetAdminEmails();
                         $ADMIN_EMAIL = array_merge($MANAGER_EMAIL, $ADMIN_EMAIL);
                         $ADMIN_EMAIL = array_unique($ADMIN_EMAIL);
                         CAdvContract::GetOwnerEmails($CONTRACT_ID, $OWNER_EMAIL, $ADD_EMAIL, $STAT_EMAIL, $EDIT_EMAIL);
                         $CREATED_BY = $MODIFIED_BY = 0;
                         if (intval($arBanner["CREATED_BY"]) > 0) {
                             $rsUser = CUser::GetByID($arBanner["CREATED_BY"]);
                             if ($arUser = $rsUser->Fetch()) {
                                 $CREATED_BY = "[" . $arUser["ID"] . "] (" . $arUser["LOGIN"] . ") " . $arUser["NAME"] . " " . $arUser["LAST_NAME"];
                             }
                         }
                         if (intval($arBanner["MODIFIED_BY"]) == intval($arBanner["CREATED_BY"]) && intval($arBanner["CREATED_BY"]) > 0) {
                             $MODIFIED_BY = $CREATED_BY;
                         } elseif (intval($arBanner["MODIFIED_BY"]) > 0) {
                             $rsUser = CUser::GetByID($arBanner["MODIFIED_BY"]);
                             if ($arUser = $rsUser->Fetch()) {
                                 $MODIFIED_BY = "[" . $arUser["ID"] . "] (" . $arUser["LOGIN"] . ") " . $arUser["NAME"] . " " . $arUser["LAST_NAME"];
                             }
                         }
                         $arImage = CFile::GetFileArray($arBanner["IMAGE_ID"]);
                         if ($arImage) {
                             $IMAGE_LINK = CHTTP::URN2URI($arImage["SRC"]);
                         } else {
                             $IMAGE_LINK = "";
                         }
                         $arImage = CFile::GetFileArray($arBanner["FLASH_IMAGE"]);
                         if ($arImage) {
                             $FLASHIMAGE_LINK = CHTTP::URN2URI($arImage["SRC"]);
                         } else {
                             $FLASHIMAGE_LINK = "";
                         }
                         $EMAIL_TO = $OWNER_EMAIL;
                         if (count($EMAIL_TO) <= 0) {
                             $EMAIL_TO = $ADMIN_EMAIL;
                         } else {
                             $BCC = $ADMIN_EMAIL;
                         }
                         $arEventFields = array("ID" => $arBanner["ID"], "EMAIL_TO" => implode(",", $EMAIL_TO), "ADMIN_EMAIL" => implode(",", $ADMIN_EMAIL), "ADD_EMAIL" => implode(",", $ADD_EMAIL), "STAT_EMAIL" => implode(",", $STAT_EMAIL), "EDIT_EMAIL" => implode(",", $EDIT_EMAIL), "OWNER_EMAIL" => implode(",", $OWNER_EMAIL), "BCC" => implode(",", $BCC), "CONTRACT_ID" => $CONTRACT_ID, "CONTRACT_NAME" => $arContract["NAME"], "TYPE_SID" => $arBanner["TYPE_SID"], "TYPE_NAME" => $arBanner["TYPE_NAME"], "STATUS" => strlen($arBanner["STATUS_SID"]) > 0 ? GetMessage("AD_STATUS_" . $arBanner["STATUS_SID"]) : "", "STATUS_COMMENTS" => $arBanner["STATUS_COMMENTS"], "NAME" => $arBanner["NAME"], "GROUP_SID" => $arBanner["GROUP_SID"], "INDICATOR" => GetMessage("AD_" . strtoupper($arBanner["LAMP"]) . "_BANNER_STATUS"), "ACTIVE" => $arBanner["ACTIVE"], "MAX_SHOW_COUNT" => $arBanner["MAX_SHOW_COUNT"], "SHOW_COUNT" => $arBanner["SHOW_COUNT"], "MAX_CLICK_COUNT" => $arBanner["MAX_CLICK_COUNT"], "CLICK_COUNT" => $arBanner["CLICK_COUNT"], "DATE_LAST_SHOW" => $arBanner["DATE_LAST_SHOW"], "DATE_LAST_CLICK" => $arBanner["DATE_LAST_CLICK"], "DATE_SHOW_FROM" => $arBanner["DATE_SHOW_FROM"], "DATE_SHOW_TO" => $arBanner["DATE_SHOW_TO"], "IMAGE_LINK" => $IMAGE_LINK, "IMAGE_ALT" => $arBanner["IMAGE_ALT"], "URL" => $arBanner["URL"], "URL_TARGET" => $arBanner["URL_TARGET"], "NO_URL_IN_FLASH" => $arBanner["NO_URL_IN_FLASH"], "CODE" => $arBanner["CODE"], "CODE_TYPE" => $arBanner["CODE_TYPE"], "COMMENTS" => $arBanner["COMMENTS"], "DATE_CREATE" => $arBanner["DATE_CREATE"], "CREATED_BY" => $CREATED_BY, "DATE_MODIFY" => $arBanner["DATE_MODIFY"], "MODIFIED_BY" => $MODIFIED_BY, "AD_TYPE" => $arBanner["AD_TYPE"], "FLASH_TRANSPARENT" => $arBanner["FLASH_TRANSPARENT"], "FLASH_IMAGE_LINK" => $FLASHIMAGE_LINK, "FLASH_JS" => $arBanner["FLASH_JS"], "FLASH_VER" => $arBanner["FLASH_VER"]);
                         $arrSITE = CAdvBanner::GetSiteArray($arBanner["ID"]);
                         CEvent::Send("ADV_BANNER_STATUS_CHANGE", $arrSITE, $arEventFields);
                     }
                 }
             }
         }
     }
     return $BANNER_ID;
 }
示例#22
0
	function findCorrectFile($path, &$strWarn, $warning = false)
	{
		$arUrl = CHTTP::ParseURL($path);
		if ($arUrl && is_array($arUrl))
		{
			if (isset($arUrl['host'], $arUrl['scheme'])) // abs path
			{
				if (strpos($arUrl['host'], 'xn--') !== false) // Cyrilyc url - punycoded
				{
					// Do nothing
				}
				else
				{
					$originalPath = $path;
					$path = $arUrl['scheme'].'://'.$arUrl['host'];

					$arErrors = array();
					if(defined("FX_UTF"))
						$punicodedPath = CBXPunycode::ToUnicode($path, $arErrors);
					else
						$punicodedPath = CBXPunycode::ToASCII($path, $arErrors);

					if ($pathPunicoded == $path)
						return $originalPath;
					else
						$path = $punicodedPath;

					if (($arUrl['port'] && ($arUrl['scheme'] != 'http' || $arUrl['port'] != 80) && ($arUrl['scheme'] != 'https' || $arUrl['port'] != 443)))
						$path .= ':'.$arUrl['port'];
					$path .= $arUrl['path_query'];
				}
			}
			else // relative path
			{
				$DOC_ROOT = $_SERVER["DOCUMENT_ROOT"];
				$path = Rel2Abs("/", $path);
				$path_ = $path;

				$io = CBXVirtualIo::GetInstance();

				if (!$io->FileExists($DOC_ROOT.$path))
				{
					if(CModule::IncludeModule('clouds'))
					{
						$path = CCloudStorage::FindFileURIByURN($path, "component:player");
						if($path == "")
						{
							if ($warning)
								$strWarn .= $warning."<br />";
							$path = $path_;
						}
					}
					else
					{
						if ($warning)
							$strWarn .= $warning."<br />";
						$path = $path_;
					}
				}
				elseif (strpos($_SERVER['HTTP_HOST'], 'xn--') !== false) // It's cyrilyc site
				{
					$path = CHTTP::URN2URI($path);
				}
			}
		}

		return $path;
	}
示例#23
0
 function convert_attachment($fileID = "", $p = "", $type = "", $text = "")
 {
     if (is_array($fileID)) {
         $text = $fileID[0];
         $p = $fileID[3];
         $fileID = $fileID[2];
     }
     $fileID = intval($fileID);
     $type = strtolower(empty($type) ? $this->type : $type);
     $type = in_array($type, array("html", "mail", "bbcode", "rss")) ? $type : "html";
     $this->arFiles = is_array($this->arFiles) ? $this->arFiles : array($this->arFiles);
     if ($fileID <= 0 || !array_key_exists($fileID, $this->arFiles) && !in_array($fileID, $this->arFiles)) {
         return $text;
     }
     if (!array_key_exists($fileID, $this->arFiles) && in_array($fileID, $this->arFiles)) {
         // array(fileID10, fileID12, fileID14)
         unset($this->arFiles[array_search($fileID, $this->arFiles)]);
         $this->arFiles[$fileID] = $fileID;
         // array(fileID10 => fileID10, fileID12 => fileID12, fileID14 => fileID14)
     }
     if (!is_array($this->arFiles[$fileID])) {
         $this->arFiles[$fileID] = CFile::GetFileArray($fileID);
     }
     // array(fileID10 => array about file, ....)
     if (!is_array($this->arFiles[$fileID])) {
         // if file does not exist
         unset($this->arFiles[$fileID]);
         return $text;
     }
     if (!array_key_exists($fileID, $this->arFilesParsed) || empty($this->arFilesParsed[$fileID][$type])) {
         $arFile = $this->arFiles[$fileID];
         if ($type == "html" || $type == "rss") {
             $width = 0;
             $height = 0;
             if (preg_match_all("/width\\=(?P<width>\\d+)|height\\=(?P<height>\\d+)/is" . BX_UTF_PCRE_MODIFIER, $p, $matches)) {
                 $width = intval(!empty($matches["width"][0]) ? $matches["width"][0] : $matches["width"][1]);
                 $height = intval(!empty($matches["height"][0]) ? $matches["height"][0] : $matches["height"][1]);
             }
             $arFile[$type] = $GLOBALS["APPLICATION"]->IncludeComponent("bitrix:forum.interface", "show_file", array("FILE" => $arFile, "SHOW_MODE" => $type == "html" ? "THUMB" : "RSS", "SIZE" => array("width" => $width, "height" => $height), "MAX_SIZE" => array("width" => $this->imageWidth, "height" => $this->imageHeight), "HTML_SIZE" => array("width" => $this->imageHtmlWidth, "height" => $this->imageHtmlHeight), "CONVERT" => "N", "NAME_TEMPLATE" => $this->userNameTemplate, "FAMILY" => "FORUM", "SINGLE" => "Y", "RETURN" => "Y"), $this->component, array("HIDE_ICONS" => "Y"));
         } else {
             $path = '/bitrix/components/bitrix/forum.interface/show_file.php?fid=' . $arFile["ID"];
             $bIsImage = CFile::CheckImageFile(CFile::MakeFileArray($fileID)) === null;
             //				$path = ($bIsImage && !empty($arFile["SRC"]) ? $arFile["SRC"] : !$bIsImage && !empty($arFile["URL"]) ? $arFile["URL"] : $path);
             $path = preg_replace("'(?<!:)/+'s", "/", substr($path, 0, 1) == "/" ? CHTTP::URN2URI($path, $this->serverName) : $path);
             switch ($type) {
                 case "bbcode":
                     $arFile["bbcode"] = $bIsImage ? '[IMG]' . $path . '[/IMG]' : '[URL=' . $path . ']' . $arFile["ORIGINAL_NAME"] . '[/URL]';
                     break;
                 case "mail":
                     $arFile["mail"] = $arFile["ORIGINAL_NAME"] . ($bIsImage ? " (IMAGE: " . $path . ")" : " (URL: " . $path . ")");
                     break;
             }
         }
         $this->arFilesParsed[$fileID] = $arFile;
     }
     $this->arFilesIDParsed[] = $fileID;
     return $this->arFilesParsed[$fileID][$type];
 }
示例#24
0
 public function GetAttachmentCollection($listName, $listItemID)
 {
     $start = microtime(true);
     if (!($listName_original = self::checkGUID($listName))) {
         return new CSoapFault('Data error', 'Wrong GUID - ' . $listName);
     }
     $listName = ToUpper(self::makeGUID($listName_original));
     $listItemID = intval($listItemID);
     $obData = new CXMLCreator('Attachments');
     $dbRes = CCrmContact::GetListEx(array(), array('ID' => $listItemID), false, false, array('PHOTO'));
     if (($arContact = $dbRes->Fetch()) && $arContact['PHOTO']) {
         $arImage = self::InitImage($arContact['PHOTO'], 100, 100);
         $obData->addChild($obAttachment = new CXMLCreator('Attachment'));
         $obAttachment->setData(CHTTP::URN2URI($arImage['CACHE']['src']));
     }
     return array('GetAttachmentCollectionResult' => $obData);
 }
示例#25
0
 if (strlen($arResult["NODES"]["link"]) > 0) {
     $arItem["link"] = str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["link"]);
 } elseif ($arProperties["DOC_LINK"]["VALUE"]) {
     $arItem["link"] = CHTTP::URN2URI($arProperties["DOC_LINK"]["VALUE"], $arResult["SERVER_NAME"]);
 } else {
     $arItem["link"] = CHTTP::URN2URI($arElement["DETAIL_PAGE_URL"], $arResult["SERVER_NAME"]);
 }
 if (strlen($arResult["NODES"]["description"]) > 0) {
     $arItem["description"] = str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["description"]);
 } else {
     $arItem["description"] = htmlspecialcharsbx($arElement["PREVIEW_TEXT"] || $arParams["YANDEX"] ? $arElement["PREVIEW_TEXT"] : $arElement["DETAIL_TEXT"]);
 }
 if (strlen($arResult["NODES"]["enclosure"]) > 0) {
     $arItem["enclosure"] = array("url" => str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["enclosure"]), "length" => str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["enclosure_length"]), "type" => str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["enclosure_type"]));
 } elseif (is_array($arElement["arr_PREVIEW_PICTURE"])) {
     $arItem["enclosure"] = array("url" => CHTTP::URN2URI($arElement["arr_PREVIEW_PICTURE"]["SRC"], $arResult["SERVER_NAME"]), "length" => $arElement["arr_PREVIEW_PICTURE"]["FILE_SIZE"], "type" => $arElement["arr_PREVIEW_PICTURE"]["CONTENT_TYPE"]);
 } else {
     $arItem["enclosure"] = false;
 }
 if (strlen($arResult["NODES"]["category"]) > 0) {
     $arItem["category"] = str_replace($arNodesSearch, $arNodesReplace, $arResult["NODES"]["category"]);
 } else {
     $arItem["category"] = "";
     $rsNavChain = CIBlockSection::GetNavChain($arResult["ID"], $arElement["IBLOCK_SECTION_ID"]);
     while ($arNavChain = $rsNavChain->Fetch()) {
         $arItem["category"] .= htmlspecialcharsbx($arNavChain["NAME"]) . "/";
     }
 }
 if ($arParams["YANDEX"]) {
     $arItem["full-text"] = htmlspecialcharsbx(htmlspecialcharsback($arElement["DETAIL_TEXT"]));
 }
示例#26
0
 /**
  * Sends product subscription letter
  *
  * @param integer $ID - code product
  * @param string $MODULE - module product
  * @return bool
  */
 function ProductSubscribe($ID, $MODULE)
 {
     $ID = (int) $ID;
     $MODULE = trim($MODULE);
     if ($ID <= 0 || $MODULE == '') {
         return false;
     }
     $arSubscribeProd = array();
     $subscribeProd = COption::GetOptionString("sale", "subscribe_prod", "");
     if ($subscribeProd != '') {
         $arSubscribeProd = unserialize($subscribeProd);
     }
     $rsItemsBasket = CSaleBasket::GetList(array("USER_ID" => "DESC", "LID" => "ASC"), array("PRODUCT_ID" => $ID, "SUBSCRIBE" => "Y", "CAN_BUY" => "N", "ORDER_ID" => "NULL", ">USER_ID" => "0", "MODULE" => $MODULE), false, false, array('ID', 'FUSER_ID', 'USER_ID', 'MODULE', 'PRODUCT_ID', 'CURRENCY', 'DATE_INSERT', 'QUANTITY', 'LID', 'DELAY', 'CALLBACK_FUNC', 'SUBSCRIBE', 'PRODUCT_PROVIDER_CLASS'));
     while ($arItemsBasket = $rsItemsBasket->Fetch()) {
         $LID = $arItemsBasket["LID"];
         if (isset($arSubscribeProd[$LID]) && $arSubscribeProd[$LID]["use"] == "Y") {
             $sendEmailList = array();
             $USER_ID = $arItemsBasket['USER_ID'];
             $arMailProp = array();
             $arPayerProp = array();
             // select person type
             $dbPersonType = CSalePersonType::GetList(array("SORT" => "ASC"), array("LID" => $LID), false, false, array('ID'));
             while ($arPersonType = $dbPersonType->Fetch()) {
                 // select ID props is mail
                 $dbProperties = CSaleOrderProps::GetList(array(), array("PERSON_TYPE_ID" => $arPersonType["ID"], "IS_EMAIL" => "Y", "ACTIVE" => "Y"), false, false, array('ID', 'PERSON_TYPE_ID'));
                 while ($arProperties = $dbProperties->Fetch()) {
                     $arMailProp[$arProperties["PERSON_TYPE_ID"]] = $arProperties["ID"];
                 }
                 // select ID props is name
                 $arPayerProp = array();
                 $dbProperties = CSaleOrderProps::GetList(array(), array("PERSON_TYPE_ID" => $arPersonType["ID"], "IS_PAYER" => "Y", "ACTIVE" => "Y"), false, false, array('ID', 'PERSON_TYPE_ID'));
                 while ($arProperties = $dbProperties->Fetch()) {
                     $arPayerProp[$arProperties["PERSON_TYPE_ID"]] = $arProperties["ID"];
                 }
             }
             //end while
             // load user profiles
             $arUserProfiles = CSaleOrderUserProps::DoLoadProfiles($USER_ID);
             $rsUser = CUser::GetByID($USER_ID);
             $arUser = $rsUser->Fetch();
             $userName = $arUser["LAST_NAME"];
             if ($userName != '') {
                 $userName .= " ";
             }
             $userName .= $arUser["NAME"];
             // select of user name to be sent
             $arUserSendName = array();
             if (!empty($arUserProfiles) && !empty($arPayerProp)) {
                 foreach ($arPayerProp as $personType => $namePropID) {
                     if (isset($arUserProfiles[$personType])) {
                         foreach ($arUserProfiles[$personType] as $profiles) {
                             if (isset($profiles["VALUES"][$namePropID]) && $profiles["VALUES"][$namePropID] != '') {
                                 $arUserSendName[$personType] = trim($profiles["VALUES"][$namePropID]);
                                 break;
                             }
                         }
                     }
                 }
             } else {
                 $arUserSendName[] = $userName;
             }
             // select of e-mail to be sent
             $arUserSendMail = array();
             if (!empty($arUserProfiles) && !empty($arMailProp)) {
                 foreach ($arMailProp as $personType => $mailPropID) {
                     if (isset($arUserProfiles[$personType])) {
                         foreach ($arUserProfiles[$personType] as $profiles) {
                             if (isset($profiles["VALUES"][$mailPropID]) && $profiles["VALUES"][$mailPropID] != '') {
                                 $arUserSendMail[$personType] = trim($profiles["VALUES"][$mailPropID]);
                                 break;
                             }
                         }
                     } else {
                         $arUserSendMail[$personType] = $arUser["EMAIL"];
                     }
                 }
             } else {
                 $arUserSendMail[] = $arUser["EMAIL"];
             }
             /** @var $productProvider IBXSaleProductProvider */
             if ($productProvider = CSaleBasket::GetProductProvider($arItemsBasket)) {
                 $arCallback = $productProvider::GetProductData(array("PRODUCT_ID" => $ID, "QUANTITY" => 1, "RENEWAL" => "N", "USER_ID" => $USER_ID, "SITE_ID" => $LID, "BASKET_ID" => $arItemsBasket["ID"]));
             } elseif (isset($arItemsBasket["CALLBACK_FUNC"]) && !empty($arItemsBasket["CALLBACK_FUNC"])) {
                 $arCallback = CSaleBasket::ExecuteCallbackFunction(trim($arItemsBasket["CALLBACK_FUNC"]), $MODULE, $ID, 1, "N", $USER_ID, $LID);
             }
             if (!empty($arCallback)) {
                 $arCallback["QUANTITY"] = 1;
                 $arCallback["DELAY"] = "N";
                 $arCallback["SUBSCRIBE"] = "N";
                 CSaleBasket::Update($arItemsBasket["ID"], $arCallback);
             }
             //send mail
             if (!empty($arUserSendMail) && !empty($arCallback)) {
                 $eventName = "SALE_SUBSCRIBE_PRODUCT";
                 $event = new CEvent();
                 foreach ($arUserSendMail as $personType => $mail) {
                     $checkMail = strtolower($mail);
                     if (isset($sendEmailList[$checkMail])) {
                         continue;
                     }
                     $sendName = $userName;
                     if (isset($arUserSendName[$personType]) && $arUserSendName[$personType] != '') {
                         $sendName = $arUserSendName[$personType];
                     }
                     $arFields = array("EMAIL" => $mail, "USER_NAME" => $sendName, "NAME" => $arCallback["NAME"], "PAGE_URL" => CHTTP::URN2URI($arCallback["DETAIL_PAGE_URL"]), "SALE_EMAIL" => COption::GetOptionString("sale", "order_email", "order@" . $_SERVER["SERVER_NAME"]));
                     $event->Send($eventName, $LID, $arFields, "N");
                     $sendEmailList[$checkMail] = true;
                 }
             }
         }
         // end if bSend
     }
     // end while $arItemsBasket
     return true;
 }
示例#27
0
}
$arResult['PERMS']['ADD'] = !$CCrmPerms->HavePerm('CONTACT', BX_CRM_PERM_NONE, 'ADD');
$arResult['PERMS']['WRITE'] = !$CCrmPerms->HavePerm('CONTACT', BX_CRM_PERM_NONE, 'WRITE');
$arResult['PERMS']['DELETE'] = !$CCrmPerms->HavePerm('CONTACT', BX_CRM_PERM_NONE, 'DELETE');
$bDeal = !$CCrmPerms->HavePerm('DEAL', BX_CRM_PERM_NONE, 'WRITE');
$arResult['PERM_DEAL'] = $bDeal;
$bQuote = !$CCrmContact->cPerms->HavePerm('QUOTE', BX_CRM_PERM_NONE, 'ADD');
$arResult['PERM_QUOTE'] = $bQuote;
$bInvoice = !$CCrmPerms->HavePerm('INVOICE', BX_CRM_PERM_NONE, 'ADD');
$arResult['PERM_INVOICE'] = $bInvoice;
$now = time() + CTimeZone::GetOffset();
foreach ($arResult['CONTACT'] as &$arContact) {
    if (!empty($arContact['PHOTO'])) {
        if ($isInExportMode) {
            if ($arFile = CFile::GetFileArray($arContact['PHOTO'])) {
                $arContact['PHOTO'] = CHTTP::URN2URI($arFile["SRC"]);
            }
        } else {
            $arFileTmp = CFile::ResizeImageGet($arContact['PHOTO'], array('width' => 50, 'height' => 50), BX_RESIZE_IMAGE_PROPORTIONAL, false);
            $arContact['PHOTO'] = CFile::ShowImage($arFileTmp['src'], 50, 50, 'border=0');
        }
    }
    $arContact['PATH_TO_COMPANY_SHOW'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_COMPANY_SHOW'], array('company_id' => $arContact['COMPANY_ID']));
    if ($bDeal) {
        $arContact['PATH_TO_DEAL_EDIT'] = CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_DEAL_EDIT'], array('deal_id' => 0)), array('contact_id' => $arContact['ID'], 'company_id' => $arContact['COMPANY_ID']));
    }
    $arContact['PATH_TO_CONTACT_SHOW'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_CONTACT_SHOW'], array('contact_id' => $arContact['ID']));
    $arContact['PATH_TO_CONTACT_EDIT'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_CONTACT_EDIT'], array('contact_id' => $arContact['ID']));
    $arContact['PATH_TO_CONTACT_COPY'] = CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_CONTACT_EDIT'], array('contact_id' => $arContact['ID'])), array('copy' => 1));
    $arContact['PATH_TO_CONTACT_DELETE'] = CHTTP::urlAddParams($bInternal ? $APPLICATION->GetCurPage() : $arParams['PATH_TO_CONTACT_LIST'], array('action_' . $arResult['GRID_ID'] => 'delete', 'ID' => $arContact['ID'], 'sessid' => $arResult['SESSION_ID']));
    $arContact['PATH_TO_USER_PROFILE'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_USER_PROFILE'], array('user_id' => $arContact['ASSIGNED_BY']));
示例#28
0
						$found = true;
						break;
					}
				}

				if ($found)
					CFileMan::SaveMenu(Array($Params['site'], $Params['menu']['menuFile']), $arMenu["aMenuLinks"], $arMenu["sMenuTemplate"]);
			}
		}

		if (isset($Params['public']) && $Params['public'] == 'Y')
		{
			?>
			<script type="text/javascript">
				window.location = '<?php 
echo CUtil::JSEscape(CHTTP::URN2URI(GetDirPath($Params['path'])));
?>
';
			</script>
		<?
		}

		$GLOBALS["CACHE_MANAGER"]->CleanDir("menu");
	}

	function UndoEditFile($Params, $type)
	{
		global $APPLICATION;

		// Restore file
		if (strlen($Params['absPath']) > 0)
示例#29
0
    function NewMediaObject($params)
    {
        global $USER, $DB;
        $blogId = IntVal(CBlogMetaWeblog::DecodeParams($params[0]["#"]["value"][0]["#"]));
        $user = CBlogMetaWeblog::DecodeParams($params[1]["#"]["value"][0]["#"]);
        $password = CBlogMetaWeblog::DecodeParams($params[2]["#"]["value"][0]["#"]);
        $arImage = $params[3]["#"]["value"][0]["#"]["struct"][0]["#"]["member"];
        foreach ($arImage as $val) {
            $arImageInfo[$val["#"]["name"][0]["#"]] = CBlogMetaWeblog::DecodeParams($val["#"]["value"][0]["#"]);
        }
        if (CBlogMetaWeblog::Authorize($user, $password)) {
            $result = '';
            $userId = $USER->GetID();
            if (IntVal($blogId) > 0) {
                $dbBlog = CBlog::GetList(array(), array("GROUP_SITE_ID" => SITE_ID, "ACTIVE" => "Y", "ID" => $blogId), false, false, array("ID", "URL", "NAME"));
                if ($arBlog = $dbBlog->GetNext()) {
                    $filename = trim(str_replace("\\", "/", trim($arImageInfo["name"])), "/");
                    $DIR_NAME = CTempFile::GetDirectoryName(12);
                    $FILE_NAME = rel2abs($DIR_NAME, "/" . $filename);
                    if (strlen($FILE_NAME) > 1 && $FILE_NAME === "/" . $filename) {
                        $ABS_FILE_NAME = $DIR_NAME . $FILE_NAME;
                    } else {
                        $ABS_FILE_NAME = "";
                    }
                    CheckDirPath($DIR_NAME);
                    if (strlen($ABS_FILE_NAME) > 0 && ($fp = fopen($ABS_FILE_NAME, "ab"))) {
                        $result = fwrite($fp, $arImageInfo["bits"]);
                        if ($result !== (function_exists("mb_strlen") ? mb_strlen($arImageInfo["bits"], 'latin1') : strlen($arImageInfo["bits"]))) {
                            return '<fault>
									<value>
										<struct>
											<member>
												<name>faultCode</name>
												<value><int>3</int></value>
												</member>
											<member>
												<name>faultString</name>
												<value><string>Error on saving media object</string></value>
												</member>
											</struct>
										</value>
									</fault>';
                        }
                        fclose($fp);
                    } else {
                        return '<fault>
								<value>
									<struct>
										<member>
											<name>faultCode</name>
											<value><int>3</int></value>
											</member>
										<member>
											<name>faultString</name>
											<value><string>Error on saving media object</string></value>
											</member>
										</struct>
									</value>
								</fault>';
                    }
                    $arFields = array("BLOG_ID" => $arBlog["ID"], "USER_ID" => $userId, "=TIMESTAMP_X" => $DB->GetNowFunction(), "FILE_ID" => array("name" => $arImageInfo["name"], "tmp_name" => $ABS_FILE_NAME, "MODULE_ID" => "blog", "type" => $arImageInfo["type"]));
                    $imageId = CBlogImage::Add($arFields);
                    $arImg = CBlogImage::GetByID($imageId);
                    $arFile = CFile::GetFileArray($arImg["FILE_ID"]);
                    $path = $arFile["SRC"];
                    $dbSite = CSite::GetByID(SITE_ID);
                    $arSite = $dbSite->Fetch();
                    $serverName = htmlspecialcharsEx($arSite["SERVER_NAME"]);
                    if (strlen($serverName) <= 0) {
                        if (defined("SITE_SERVER_NAME") && strlen(SITE_SERVER_NAME) > 0) {
                            $serverName = SITE_SERVER_NAME;
                        } else {
                            $serverName = COption::GetOptionString("main", "server_name", "www.bitrixsoft.com");
                        }
                    }
                    if (strlen($path) > 0) {
                        return '<params>
							<param>
								<value>
									<struct>
									<member>
									<name>url</name>
									<value>
									<string>' . CHTTP::URN2URI($path, $serverName) . '</string>
									</value>
									</member>
									</struct>
								</value>
							</param>
						</params>';
                    }
                }
            }
            return '<fault>
				<value>
					<struct>
						<member>
							<name>faultCode</name>
							<value><int>3</int></value>
							</member>
						<member>
							<name>faultString</name>
							<value><string>Error on saving media object</string></value>
							</member>
						</struct>
					</value>
				</fault>';
        } else {
            return '<fault>
				<value>
					<struct>
						<member>
							<name>faultCode</name>
							<value><int>3</int></value>
							</member>
						<member>
							<name>faultString</name>
							<value><string>' . $arAuthResult["MESSAGE"] . '</string></value>
							</member>
						</struct>
					</value>
				</fault>';
        }
    }
示例#30
0
 public function sendMessage($uid, $message)
 {
     $vk = $this->getEntityOAuth();
     if (IsModuleInstalled('bitrix24') && defined('BX24_HOST_NAME')) {
         $redirect_uri = self::CONTROLLER_URL . "/redirect.php";
     } else {
         $redirect_uri = \CHTTP::URN2URI($GLOBALS['APPLICATION']->GetCurPage()) . '?auth_service_id=' . self::ID;
     }
     if ($vk->GetAccessToken($redirect_uri) !== false) {
         $res = $vk->sendMessage($uid, $message);
     }
     return $res;
 }