Вход Регистрация
Файл: include/player_chat.php
Строк: 101
<?php

include_once("table_name.php");
include_once(
"base.php");
include_once(
"player.php");
include_once(
"common_func.php");

/**
    class for work player cha messages
*/

class CPlayerChat extends CBase
{
    
/**
        Constructor
    */
    
function CPlayerChat($database,$vnum 0)
    {
        global 
$table_chat_msg;
        
        
$this->db $database;
        
$this->table_name=$table_chat_msg;
        
$this->vnum $vnum;
    }
    
    function 
addMessage($room,$msg,$type_msg=CHAT_COMMON_MSG)
    {
        
$msg=trim($msg);
        
        if(
strlen($msg)<2) return;
    
        
$msg=substr($msg,0,150);
        
        
$msg str_replace("<""&lt;"$msg); 
    
        
$pdata time();
        
        
$sql "insert into $this->table_name(vnum_player,vnum_room,type,pdata,msg) VALUES('$this->vnum','$room','$type','$pdata','$msg')";
        
        
$this->execSQL($sql);
    }
    
    function 
getLastMessage($room,$limit=10)
    {
        
$zone_id=(int)($room/1000);
        
$zone_begin=$zone_id*1000;
        
$zone_end=$zone_begin+100;
        
        
$sql "select t1.vnum_msg,t1.pdata,t2.vnum,t1.msg,t2.name from $this->table_name as t1, data_player as t2 where t1.vnum_room>='$zone_begin' and t1.vnum_room<='$zone_end' and t2.vnum=t1.vnum_player order by t1.pdata desc limit $limit";

        
$chat_message $this->db->getAll($sql,DB_FETCHMODE_ASSOC);

        return 
$chat_message;
    }
    
    function 
getLastMessageUser($room)
    {
        
$zone_id=(int)($room/1000);
        
$zone_begin=$zone_id*1000;
        
$zone_end=$zone_begin+100;
        
        
$sql "select msg from $this->table_name where vnum_room>='$zone_begin' and vnum_room<='$zone_end' order by pdata desc limit 1";
        
        
$result $this->execSQL($sql);
        
        if(
$result->numRows()==0) return false;
        
        
$row $result->fetchRow();
        
        return 
$row[0];
    }
    
    function 
getMessage($vnum_msg)
    {
        
$sql "SELECT * FROM $this->table_name WHERE vnum_msg='$vnum_msg' LIMIT 1";
        
        
$msg $this->db->getAll($sql,DB_FETCHMODE_ASSOC);
        
        return 
$msg[0];
    }
    
    function 
hideMsg($vnum_msg$name_chat_angel)
    {
        
$msg=$this->getMessage($vnum_msg);
        
        if(
$msg=="") return;
        
        
$new_msg="<font color="red">иТБОЙФЕМШ $name_chat_angel ХДБМЙМ ДБООПЕ УППВЭЕОЙЕ</font>";
        
$old_msg=$msg['msg'];
        
        
$sql "UPDATE $this->table_name SET msg='$new_msg',old_msg='$old_msg' WHERE vnum_msg='$vnum_msg'";
        
        
$this->execSQL($sql);
    }
}

?>
Онлайн: 2
Реклама