Пример #1
0
     $chatId = 0;
     if (substr($_POST['USER_ID'], 0, 4) == 'chat') {
         $chatId = intval(substr($_POST['USER_ID'], 4));
         $CIMChat = new CIMChat();
         $arMessage = $CIMChat->GetLastMessage($chatId, false, $_POST['USER_LOAD'] == 'Y' ? true : false, false);
         if (isset($arMessage['message'])) {
             foreach ($arMessage['message'] as $id => $ar) {
                 $arMessage['message'][$id]['recipientId'] = 'chat' . $ar['recipientId'];
             }
             $arMessage['usersMessage']['chat' . $chatId] = $arMessage['usersMessage'][$chatId];
             unset($arMessage['usersMessage'][$chatId]);
         }
     } else {
         if (CIMContactList::AllowToSend(array('TO_USER_ID' => $_POST['USER_ID']))) {
             $CIMMessage = new CIMMessage();
             $arMessage = $CIMMessage->GetLastMessage(intval($_POST['USER_ID']), false, $_POST['USER_LOAD'] == 'Y' ? true : false, false);
         }
     }
     echo CUtil::PhpToJsObject(array('USER_ID' => $chatId > 0 ? htmlspecialcharsbx($_POST['USER_ID']) : intval($_POST['USER_ID']), 'MESSAGE' => isset($arMessage['message']) ? $arMessage['message'] : array(), 'USERS_MESSAGE' => isset($arMessage['message']) ? $arMessage['usersMessage'] : array(), 'USERS' => isset($arMessage['users']) ? $arMessage['users'] : array(), 'USER_IN_GROUP' => isset($arMessage['userInGroup']) ? $arMessage['userInGroup'] : array(), 'WO_USER_IN_GROUP' => isset($arMessage['woUserInGroup']) ? $arMessage['woUserInGroup'] : array(), 'CHAT' => isset($arMessage['chat']) ? $arMessage['chat'] : array(), 'USER_IN_CHAT' => isset($arMessage['userInChat']) ? $arMessage['userInChat'] : array(), 'ERROR' => ''));
 } else {
     if ($_POST['IM_HISTORY_LOAD_MORE'] == 'Y') {
         $arMessage = array();
         if (CIMContactList::AllowToSend(array('TO_USER_ID' => $_POST['USER_ID']))) {
             $CIMHistory = new CIMHistory(false, array('hide_link' => isset($_POST['MOBILE']) ? true : false));
             if (substr($_POST['USER_ID'], 0, 4) == 'chat') {
                 $chatId = substr($_POST['USER_ID'], 4);
                 $arMessage = $CIMHistory->GetMoreChatMessage(intval($_POST['PAGE_ID']), $chatId, false);
                 if (!empty($arMessage['message'])) {
                     foreach ($arMessage['message'] as $id => $ar) {
                         $arMessage['message'][$id]['recipientId'] = 'chat' . $ar['recipientId'];
                     }
Пример #2
0
			{
				foreach ($arMessage['message'] as $id => $ar)
					$arMessage['message'][$id]['recipientId'] = 'chat'.$ar['recipientId'];

				$arMessage['usersMessage']['chat'.$chatId] = $arMessage['usersMessage'][$chatId];
				unset($arMessage['usersMessage'][$chatId]);
			}
			$dialogId = 'chat'.$chatId;
		}
		else
		{
			$dialogId = intval($_POST['USER_ID']);
			if (CIMContactList::AllowToSend(Array('TO_USER_ID' => $dialogId)))
			{
				$CIMMessage = new CIMMessage();
				$arMessage = $CIMMessage->GetLastMessage($dialogId, false, ($_POST['USER_LOAD'] == 'Y'? true: false), false, false);

				$chatId = $arMessage['chatId'];
				if ($chatId <= 0)
				{
					$chatId = CIMMessage::GetChatId($USER->GetId(), $dialogId);
				}
			}
		}
		echo CUtil::PhpToJsObject(Array(
			'CHAT_ID' => $chatId,
			'USER_ID' => $dialogId,
			'MESSAGE' => isset($arMessage['message'])? $arMessage['message']: Array(),
			'USERS_MESSAGE' => isset($arMessage['message'])? $arMessage['usersMessage']: Array(),
			'USERS' => isset($arMessage['users'])? $arMessage['users']: Array(),
			'USER_IN_GROUP' => isset($arMessage['userInGroup'])? $arMessage['userInGroup']: Array(),