From 96a5b903c85a44def8c039f6531ab894ea98ccd6 Mon Sep 17 00:00:00 2001 From: konekoneko Date: Wed, 19 Sep 2012 14:57:26 +0900 Subject: [PATCH] =?utf8?q?join=E3=81=A8quit=E3=83=A1=E3=83=83=E3=82=BB?= =?utf8?q?=E3=83=BC=E3=82=B8=E3=82=92=E6=96=B0=E3=81=97=E3=81=8F=E8=BF=BD?= =?utf8?q?=E5=8A=A0=E3=81=97=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- chatServer.js | 50 +++++++++++++++++++++++++++++++++++++++----- public/scripts/chatclient.js | 7 ++----- 2 files changed, 47 insertions(+), 10 deletions(-) diff --git a/chatServer.js b/chatServer.js index 8dc2f94..e12470d 100644 --- a/chatServer.js +++ b/chatServer.js @@ -17,6 +17,7 @@ $token_length = 32; // $redisHost = "localhost"; //redisƒT[ƒo‚̃AƒhƒŒƒX $redisPort = 6379; //redisƒT[ƒo‚̃|[ƒg $redisPassword = ""; //redisƒT[ƒo‚̃pƒXƒ[ƒh +$system_name = "system"; //ƒVƒXƒeƒ€”­Œ¾‚ð•\‚·–¼‘O /** * Module dependencies. @@ -221,6 +222,12 @@ for(var i = 0; i < $max_room_number; i++) socket.on("get pastLog", function (msg) { ParseGetPastLog(socket,msg); }); + socket.on("join",function(msg){ + ParseJoin(socket,msg); + }); + socket.on("quit",function(msg){ + ParseQuit(socket,msg); + }); socket.on("send msg", function (msg) { ParseSendMsg(socket,msg); }); @@ -290,6 +297,40 @@ function ParseDisconnect(socket,msg) console.log("disconnected"); } +function ParseJoin(socket,msg) +{ + var ip = GetClientIPAdress(socket); + + if(ip in ipbanlist) + { + socket.emit("error",$block_message); + return; + } + + var newMeg = { + name:$system_name, + message:util.format("/enteredby %s %s %s",msg.name,msg.color,msg.mailto), + }; + ParseSendMsg(socket,newMeg); +} + +function ParseQuit(socket,msg) +{ + var ip = GetClientIPAdress(socket); + + if(ip in ipbanlist) + { + socket.emit("error",$block_message); + return; + } + + var newMeg = { + name:$system_name, + message:util.format("/quitedby %s",msg.name), + }; + ParseSendMsg(socket,newMeg); +} + //socket Ú‘±’†‚̃\ƒPƒbƒg //msg msgƒNƒ‰ƒX function ParseSendMsg(socket,msg) @@ -303,9 +344,8 @@ function ParseSendMsg(socket,msg) } var date = new Date(); - //var dateString = date.toFormat("YYYY/MM/DD HH24:MI:SS"); - var repacked_msg = CreateMessage(msg,date); + var repacked_msg = CreateMessage(msg.name,date,msg.message); socket.json.emit("req msg", repacked_msg); @@ -442,11 +482,11 @@ function GetClientIPAdress(socket) } // Message ƒNƒ‰ƒX -function CreateMessage(msg,date) +function CreateMessage(name,date,message) { - var result = {name:msg.name, + var result = {name:name, date:date, - message:msg.message}; + message:message}; return result; } function CreateMessageFromText(text) diff --git a/public/scripts/chatclient.js b/public/scripts/chatclient.js index d0d7aa5..cb0d3cf 100644 --- a/public/scripts/chatclient.js +++ b/public/scripts/chatclient.js @@ -208,14 +208,11 @@ function enterEventListener(){ $.cookie("name",document.enter_form.name.value,{ expires: $expires }); $.cookie("color_index",document.enter_form.color.selectedIndex,{ expires: $expires }); - var text = "/enteredby " + document.enter_form.name.value + " " + color + " " + document.enter_form.mailto.value; - - $socket.json.emit("send msg",{name:$system_name,message:text}); + $socket.json.emit("join",{name:document.enter_form.name.value,color:color,mailto:document.enter_form.mailto.value}); } function quitEventListener(){ - var text = "/quitedby " + document.enter_form.name.value; - $socket.json.emit("send msg",{name:$system_name,message:text}); + $socket.json.emit("quit",{name:document.enter_form.name.value}); $socket.json.emit("get pastLogList",{rno:document.chat_form.rno.value}); $("#enter_frame").css("display","block"); -- 2.11.0