All messages, which should get administrator/user for chatbox
public static getPendingMessagesChatbox ( $chat_id, $message_id ) |
$timeCurrent = time(); $pollingEnabled = (int) erLhcoreClassModelChatConfig::fetch('sync_sound_settings')->data['long_polling_enabled']; $pollingServerTimeout = (int) erLhcoreClassModelChatConfig::fetch('sync_sound_settings')->data['connection_timeout']; $pollingMessageTimeout = (double) erLhcoreClassModelChatConfig::fetch('sync_sound_settings')->data['polling_chat_message_sinterval']; $content = 'false'; $status = 'true'; $blocked = 'false'; $ott = ''; $LastMessageID = 0; $userOwner = 'true'; $breakSync = false; if (is_object($chat) && $chat->hash == $Params['user_parameters']['hash']) { while (true) { // Check for new messages only if chat last message id is greater than user last message id if ((int) $Params['user_parameters']['message_id'] < $chat->last_msg_id) { $Messages = erLhcoreClassChat::getPendingMessagesChatbox((int) $Params['user_parameters']['chat_id'], (int) $Params['user_parameters']['message_id']); if ($Params['user_parameters']['message_id'] == 0 && count($Messages) > 0 || count($Messages) > 1) { $prevNick = ''; if ($Params['user_parameters']['message_id'] > 0 && count($Messages) > 1) { $lastMessage = array_shift($Messages); if ($lastMessage['id'] == $Params['user_parameters']['message_id']) { $prevNick = $lastMessage['user_id'] == 0 ? $lastMessage['name_support'] : $chat->nick; } else { array_unshift($Messages, $lastMessage); } } $tpl = erLhcoreClassTemplate::getInstance('lhchatbox/syncuser.tpl.php'); $tpl->set('messages', $Messages); $tpl->set('chat', $chat); $tpl->set('prev_nick', $prevNick); $tpl->set('sync_mode', isset($Params['user_parameters_unordered']['mode']) ? $Params['user_parameters_unordered']['mode'] : '');