} } } } } } } // Get new messages if (!empty($get_last_msgs) && $get_last_msgs > 0) { $messages = $msg->getLastMessages($current_user->id, $get_last_msgs); $messages = array_reverse($messages); } elseif (!empty($first_request)) { $messages = $msg->getLastMessages($current_user->id, $session->_conf_all['init_display_messages_count']); $messages = array_reverse($messages); } else { $messages = $msg->getNewMessages($current_user->id); } if (!empty($messages)) { $msg_array = array(); foreach ($messages as $message_data) { $last_message_id = $last_message_id < $message_data['id'] ? $message_data['id'] : $last_message_id; $msg_parts = explode('/', $message_data['body']); if ($message_data['type'] == '4001') { // Abuse if ($message_data['target_user_id'] == $session->_s_user_id) { $abuse_msg_parts = explode('/', $message_data['body'], 5); if ($room->_db_getList('name', 'id = ' . $abuse_msg_parts[1], 1)) { $room_name = $room->_db_list[0]['name']; $room->_db_freeList(); } else { $room_name = '-';
* along with this program. If not, see <http://www.gnu.org/licenses/>. */ if (!isset($recursion)) { $recursion = 1; } $invitations_arrived = 0; $messages_arrived = 0; $categories_tree = array(); if (!empty($current_user->id)) { $xmlwriter->setHeaderMessage('OK'); $xmlwriter->setHeaderStatus(0); // Get room structure _pcpin_loadClass('category'); $category = new PCPIN_Category($session); $categories_tree = $category->getTree($current_user->id, 0, !empty($recursion)); // Are there any invitations or abuse reports? if (!empty($current_user->id)) { _pcpin_loadClass('invitation'); $invitation = new PCPIN_Invitation($session); $invitations = $invitation->getNewInvitations($current_user->id, true); $invitations_arrived = !empty($invitations) ? 1 : 0; unset($invitations); _pcpin_loadClass('message'); $msg = new PCPIN_Message($session); $messages = $msg->getNewMessages($session->_s_user_id); if (!empty($messages)) { $messages_arrived = 1; } } } $xmlwriter->setData(array('category' => !empty($categories_tree) ? $categories_tree[0] : array(), 'additional_data' => array('new_invitations' => $invitations_arrived, 'new_messages' => $messages_arrived)));