| Server IP : 61.19.30.66 / Your IP : 216.73.216.59 Web Server : Apache/2.2.22 (Ubuntu) System : Linux klw 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:39:31 UTC 2014 x86_64 User : www-data ( 33) PHP Version : 5.3.10-1ubuntu3.48 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : OFF | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /var/www/gpa/chat/ |
Upload File : |
//สีประจำตัว icon ของ user เรียงตามลำดับตามชื่อของรูป icon u1.gif...u6.gif
//ถ้าเปลี่ยนหรือเพิ่มต้องเพิ่มไอคอน u?.gif ด้วย ในไดเรคทอรี่ skin/img
//และต้องเปลี่ยนใน config.php ด้วย
color= new Array("#F31A1F", "#386CD5", "#D5BE38", "#A638D5", "#F0671C", "#38D54E");
//ชื่อย่อของ smile icon ต่างๆ
var smile= new Array(":)", ":D", ";)", ":-O", ":P", "(H)", ":@", ":S", ":$", ":(", ":-#", ":-*", "^o)", "8-)", "(L)", "(U)");
var smiles= new Array(/:\)/g, /:D/g, /;\)/g, /:-O/g, /:P/g, /\(H\)/g, /:@/g, /:S/g, /:\$/g, /:\(/g, /:-\#/g, /:-\*/g, /\^o\)/g, /8-\)/g, /\(L\)/g, /\(U\)/g);
smileicon=new Array(16)
var sending=false;
//AJAX Chat
function Inint_AJAX() {
try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {}
try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}
try { return new XMLHttpRequest(); } catch(e) {}
alert("XMLHttpRequest not supported");
return null;
}
function checknewmsg() {
if (sending==true) return;
var id = document.getElementById("id").innerHTML;
var user = document.getElementById("user").innerHTML;
var room = document.getElementById("room").innerHTML;
var time = document.getElementById("time").innerHTML;
var data = document.getElementById("data").innerHTML;
var req = Inint_AJAX();
req.open('GET', 'check.php?user='+user+'&id='+id+'&room='+room+'&time='+time+'&data='+data, true);
req.onreadystatechange = function() {
if (req.readyState==4) {
if (req.status==200) {
var data=req.responseText;
var datas=data.split(String.fromCharCode(6)); //แยกออกเป็นแต่ละข้อมูล time|users|event
//แสดงข้อมูล user ถ้ามี
if (datas[0]!="0") {
var users=datas[1].split(String.fromCharCode(5)); //รายชื่อ user ทั้งหมด
var userlist="";
for (i=0; i<users.length; i++) {
var d=users[i].split("|");
if (d[0]==user) {
userlist=userlist+"<img src=skin/img/u"+d[1]+".gif align=absmiddle> <font color="+color[parseInt(d[1])]+">"+d[0]+"</font><br>";
document.getElementById("id").innerHTML=d[1];
} else userlist=userlist+'<img src=skin/img/u'+d[1]+'.gif align=absmiddle border=0> <a href=javascript:sendPM("'+d[0]+'");>'+d[0]+'</a><br>';
}
document.getElementById("users").innerHTML=userlist;
document.getElementById("time").innerHTML=datas[0];
}
//แสดงข้อมูล content ถ้ามี
if (datas[2]!="0") {
var content = document.getElementById("content");
datas[3]=String(datas[3]);
datas[3]=datas[3].replace(/\|\%\|/g, "&"); //เครื่องหมาย &
datas[3]=datas[3].replace(/\|\!\|/g, "#"); //เครื่องหมาย #
datas[3]=datas[3].replace(/\\\\/g, "\"); //เครื่องหมาย \
datas[3]=datas[3].replace(/\|@\|/g, "+"); //เครื่องหมาย +
for (n=0; n<smiles.length; n++) {
datas[3]=datas[3].replace(smiles[n], "<img src=skin/img/"+n+".gif align=absmiddle>");
}
var contents=datas[3].split("\n"); //รายการ content ทั้งหมด
var data="<table>";
for (i=0; i<contents.length; i++) {
if (contents[i]!="") {
var d=contents[i].split(String.fromCharCode(4));
var duser=d[0];
var dc=color[parseInt(d[1])]
if (d[3]==1) data=data+"<tr><td class=user><font class=time>("+d[5]+")</font> ::</td><td class=content>ยินดีต้อนรับ คุณ <font color="+dc+">"+duser+"</font> เข้าห้อง</td></tr>";
else if (d[3]==2) data=data+"<tr><td class=user><font class=time>("+d[5]+")</font> ::</td><td class=content>คุณ <font color="+dc+">"+duser+"</font> ออกจากห้อง</td></tr>";
else if (d[2]==0) data=data+"<tr><td class=user><font class=time>("+d[5]+")</font> <font color="+dc+">"+duser+"</font> ::</td><td class=content>"+d[4]+"</td></tr>";
else if (d[2]==user) data=data+"<tr><td class=user><font class=time>("+d[5]+")</font> จาก <font color=maroon>"+duser+"</font> ::</td><td class=content>"+d[4]+"</td></tr>";
else if (duser==user) data=data+"<tr><td class=user><font class=time>("+d[5]+")</font> ไป <font color=maroon>"+d[2]+"</font> ::</td><td class=content>"+d[4]+"</td></tr>";
}
}
content.innerHTML=data+"</table>";
//เลื่อนข้อความล่าสุดให้เห็น
content.scrollTop = content.scrollHeight;
var beep=document.getElementById("beep").src;
if (d!=null && beep.indexOf("/beep.gif")>-1) { //ยอมให้มีเสียง
//ตรวจสอบ event รายการสุดท้าย เพื่อดูว่ามีเสียงหรือไม่
if (d[3]==1) playSnd("online");
else if (d[3]==2) playSnd("logout");
else if (d[3]==3) playSnd("type");
};
document.getElementById("data").innerHTML=datas[2];
}
document.getElementById("servertime").innerHTML=datas[4];
};
//Auto Refresh อัปเดทข้อมูลทุก 10 วินาที
setTimeout("checknewmsg()", document.getElementById("refreshtime").innerHTML);
}
};
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); // set Header
req.send(null);
}
function Inint() {
if(document.images) {
//load smileicon
var smilelayer="";
for (i=0; i<smileicon.length; i++) {
smileicon[i]=new Image(19, 19);
smileicon[i].src="skin/"+i+".gif";
smilelayer=smilelayer+"<a href=javascript:addSmile('"+smile[i]+"'); title="+smile[i]+"><img src=skin/img/"+i+".gif border=0></a>";
}
}
document.getElementById("smile").innerHTML=" "+smilelayer;
checknewmsg();
document.getElementById("txt").focus();
}
function sendPM(name) {
var obj=document.getElementById("txt");
obj.value="/pm "+name+' '+obj.value;
obj.focus();
}
function addSmile(name) {
var obj=document.getElementById("txt");
obj.value=obj.value+name;
obj.focus();
}
function doPost() {
doSubmit();
return false;
}
function doSubmit() {
var obj=document.getElementById("txt");
var txt=obj.value;
if (txt!='' && sending==false) {
sending=true;
//ตรวจสอบเครื่องหมายพิเศษ
txt=txt.replace(/&/g, "|%|"); //เครื่องหมาย &
txt=txt.replace(/#/g, "|!|"); //เครื่องหมาย #
txt=txt.replace(/\+/g, "|@|"); //เครื่องหมาย +
//disabled ปุ่ม Send และ Text เมื่อกดส่ง ป้องกันการส่งซ้ำ
document.form_post.txt.disabled="disabled";
document.form_post.send.disabled="disabled";
//รูป disabled ของปุ่มส่ง
document.images['send'].src='skin/img/send3.gif';
var id = document.getElementById("id").innerHTML;
var user = document.getElementById("user").innerHTML;
var room = document.getElementById("room").innerHTML;
//ทำการส่งข้อความที่โพสต์
var req = Inint_AJAX();
req.open('GET', 'send.php?user='+user+'&id='+id+'&txt='+txt+'&room='+room, true);
req.onreadystatechange = function() {
if (req.readyState==4) {
sending=false;
document.form_post.txt.disabled="";
document.form_post.send.disabled="";
document.images['send'].src='skin/img/send1.gif';
obj.value="";
obj.focus();
//เริ่มต้นการตรวจสอบข้อมูลใหม่
checknewmsg();
}
};
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); // set Header
req.send(null);
}
}
function ToggleBeep() {
var beep=document.getElementById("beep");
if (beep.src.indexOf("nobeep.gif")>-1) {
beep.src="skin/img/beep.gif";
beep.alt="คลิก เพื่อปิดเสียง";
} else {
beep.src="skin/img/nobeep.gif";
beep.alt="คลิก เพื่อเปิดเสียง";
}
}
//เล่นเสียง ตามชื่อที่กำหนด
//wave=type(มี message),online(เข้าห้อง),logout(ออกจากห้อง)
function playSnd(wav) {
if (navigator.userAgent.indexOf("Firefox")!=-1 || navigator.userAgent.indexOf("Netscap")!=-1) { //Firefox, Netscap
obj = document.embeds[wav];
if (obj.Play) obj.Play();
} else { //Other
document.getElementById("sound").innerHTML= "<embed src='skin/"+wav+".wav' hidden=true autostart=true loop=false volume=100 type=audio/midi>";
}
};
Inint();