function _valid_perform() { $chat_user_data = chat_user::get_chat_user_data(); $form_data = $this->dataspace->export(); $chat_user_data['color'] = $form_data['color']; $chat_user_data['status'] = $chat_user_data['status'] & ~3 ^ $form_data['sex']; chat_user::update_chat_user($chat_user_data); return new close_popup_response(RESPONSE_STATUS_FORM_SUBMITTED); }
function perform(&$request, &$response) { $chat_room_data =& fetch_requested_object(); session::destroy('last_message_ids'); setcookie('chat_room_id', $chat_room_data['object_id'], time() + 365 * 24 * 3600); if ($chat_user_data = chat_user::get_chat_user_data()) { if ($chat_user_data['chat_room_id'] != $chat_room_data['object_id']) { chat_system::leave_chat_room($chat_user_data['id'], $chat_user_data['nickname'], $chat_user_data['chat_room_id']); chat_system::enter_chat_room($chat_user_data['id'], $chat_user_data['nickname'], $chat_room_data['object_id']); } $this->view->set('nickname', $chat_user_data['nickname']); } parent::perform(&$request, &$response); }
<?php /********************************************************************************** * Copyright 2004 BIT, Ltd. http://www.0x00.ru, mailto: bit@0x00.ru * * Released under the LGPL license (http://www.gnu.org/copyleft/lesser.html) *********************************************************************************** * * $Id$ * ***********************************************************************************/ require_once LIMB_DIR . 'core/lib/session/session.class.php'; require_once LIMB_DIR . 'core/model/chat/chat_system.class.php'; require_once LIMB_DIR . 'core/model/chat/chat_user.class.php'; start_user_session(); $chat_user_data = chat_user::get_chat_user_data(); if ($_REQUEST['ignorant_id'] && $chat_user_data) { chat_system::toggle_ignore_user($chat_user_data['id'], $chat_user_data['nickname'], $_REQUEST['ignorant_id'], $chat_user_data['chat_room_id']); } //$_COOKIE['chat_room_id'] $chat_room_id = $chat_user_data['chat_room_id']; $chat_users = chat_system::get_users_for_room($chat_room_id, $chat_user_data['id']); if (sizeof($chat_users)) { $users = ''; foreach ($chat_users as $chat_user) { $users[] = "['{$chat_user['id']}','{$chat_user['nickname']}','{$chat_user['status']}', '{$chat_user['ignored']}']"; } $users = '[' . implode(',', $users) . ']'; $header = sprintf(strings::get('users_header', 'chat'), count($chat_users)); echo "<script>\n"; echo "top.set_active_users({$users});\n";
function logout() { if (!($chat_user_data = chat_user::get_chat_user_data())) { return true; } chat_system::leave_chat_room($chat_user_data['id'], $chat_user_data['nickname'], $chat_user_data['chat_room_id']); chat_user::_session_destroy(); return true; }
<?php /********************************************************************************** * Copyright 2004 BIT, Ltd. http://www.0x00.ru, mailto: bit@0x00.ru * * Released under the LGPL license (http://www.gnu.org/copyleft/lesser.html) *********************************************************************************** * * $Id$ * ***********************************************************************************/ require_once LIMB_DIR . 'core/lib/session/session.class.php'; require_once LIMB_DIR . 'core/model/chat/chat_user.class.php'; require_once LIMB_DIR . 'core/model/chat/chat_system.class.php'; start_user_session(); if (!isset($_POST['recipient_id']) || !isset($_POST['message'])) { exit; } if (!($chat_user_data = chat_user::get_chat_user_data())) { exit; } $file = $_FILES['file'] ? $_FILES['file'] : null; chat_system::send_message($_POST['message'], $chat_user_data['chat_room_id'], $chat_user_data['id'], $_POST['recipient_id'], $file); ?> <script> top.send_message_finished(); </script>
function get_user_attribute($attribute) { $chat_user_data = chat_user::get_chat_user_data(); if ($attribute == 'status') { return chat_user::decode_status($chat_user_data[$attribute]); } return $chat_user_data[$attribute]; }