$free_password1 = "最初に入室する人が自由にパスワードを設定できます"; //自由パスワードメッセージ1\r
$free_password2 = "この部屋は使用されています。パスワードを入力してください"; //自由パスワードメッセージ2\r
$fixed_password = "この部屋にはパスワードが設定されています"; //固定パスワードルーム\r
-$hidden_log_to_rom = "この部屋ではROMできないようになっています";\r
+$hidden_log_to_rom = "この部屋ではROMできないようになっています"; //ROM禁止ルーム\r
+$adminmsg = "(管理モード)"; //管理モード\r
+$romcount_msg = "ROM(%d人)" //ROMカウント\r
\r
//ここから先は変更しないでください\r
$prefix_filelist = "!";\r
$names = {};\r
$roominfo = {};\r
$dateFormat = new DateFormat("yyyy/MM/dd HH:mm:ss");\r
+$romcount = 0;\r
//ここまで\r
\r
$(document).ready(function(){\r
$socket = io.connect(location.hostname + "/" + document.chat_form.rno.value + "?token="+ encodeURIComponent(document.chat_form.token.value));\r
$socket.on("error",getErrorMessage);\r
$socket.on("send roominfo",sendRoomInfoListerner);\r
+ $socket.on("send romcount",sendRomCountListerner);\r
$socket.on("connect",function(){\r
$socket.on("req pastlog",pastLogEventListerner);\r
$socket.on("req msg",getMessageEventListerner);\r
});\r
});\r
\r
+function sendRomCountListerner(count)\r
+{\r
+ $romcount = count;\r
+ createNameList();\r
+}\r
+\r
function sendRoomInfoListerner(info)\r
{\r
$roominfo = info;\r
- if(info.type == 0)\r
- {\r
- $socket.json.emit("get pastLogList",{rno:document.chat_form.rno.value});\r
- getCurretLog();\r
- }else if(info.type == 1){\r
+ var logflag = true;\r
+ var msg = "";\r
+ if(info.type == 1){\r
if(info.IsOwned)\r
- {\r
- $("#enter_message").append($free_password2);\r
- }else{\r
- $("#enter_message").append($free_password1);\r
- }\r
+ msg = $free_password2;\r
+ else\r
+ msg = $free_password1;\r
+ logflag = false;\r
}else if(info.type == 2){\r
- $("#enter_message").append($fixed_password);\r
+ msg = $fixed_password;\r
+ logflag = false;\r
}else if(info.type == 3){\r
- $("#enter_message").append($hidden_log_to_rom);\r
+ msg = $hidden_log_to_rom;\r
+ logflag = false;\r
+ }\r
+ if(info.admin)\r
+ {\r
+ logflag = true;\r
+ msg += $adminmsg;\r
+ }\r
+ if(msg != "")\r
+ $("#enter_message").append(msg);\r
+ if(logflag)\r
+ {\r
+ $socket.json.emit("get pastLogList",{rno:document.chat_form.rno.value});\r
+ getCurretLog();\r
}\r
}\r
\r
\r
function pastLogEventListerner(msg)\r
{\r
- if(IsRomMode() && $roominfo.type != 0)\r
+ if(IsRomMode() && $roominfo.type != 0 && $roominfo.admin == false)\r
return;\r
for(var i = 0; i < msg.length; i++)\r
ParseMessage(msg[i]);\r
\r
function getMessageEventListerner(msg)\r
{\r
- if(IsRomMode() && $roominfo.type != 0)\r
+ if(IsRomMode() && $roominfo.type != 0 && $roominfo.admin == false)\r
return;\r
ParseMessage(msg);\r
createNameList();\r
\r
if(childtag == null)\r
return;\r
+ if(typeof(childtag) == "string")\r
+ childtag = $("<span/>").append(childtag);\r
\r
- var ptag = $("<p/>");\r
+ var trtag = $("<tr/>");\r
+ var namepart,msgpart;\r
\r
var color = $system_msg_color;\r
+\r
var mailto = "";\r
var date = new Date(Date.parse(msg.date));\r
if(msg.name != $system_name)\r
{\r
color = $names[msg.name].color;\r
$names[msg.name].time = date.getTime();\r
- var atag = $("<a/>")\r
+ namepart = $("<a/>")\r
.attr("href",GetNameLink(msg.name))\r
.css("color",color)\r
.text(util.htmlspecialchars(msg.name));\r
- ptag.append(atag);\r
}else{\r
- ptag.append(msg.name);\r
+ namepart = $("<span/>").append(msg.name);\r
}\r
- ptag.append(":");\r
- ptag.append(childtag);\r
- ptag.append("(" + $dateFormat.format(date) +")");\r
+ if(msg.ip != "")\r
+ namepart.append("@" + msg.ip);\r
+ trtag.append($("<td/>").append(namepart));\r
\r
- ptag.css("color",color);\r
+ msgpart = childtag\r
+ .append("(" + $dateFormat.format(date) +")")\r
+ .css("color",color);\r
+ trtag.append($("<td/>").append(msgpart));\r
\r
if($messageTag == null)\r
$messageTag = $("#message");\r
\r
- $messageTag.prepend(ptag);\r
+ $messageTag.prepend(trtag);\r
}\r
\r
function GetNameLink(name)\r
var date = new Date();\r
$("#namelist").empty();\r
$("#namelist").append("<ul></ul>");\r
+ $("#namelist > ul").append($("<li/>").append(sprintf($romcount_msg,$romcount)));\r
for(var name in $names)\r
{\r
var diff = date.getTime() - $names[name].time;\r
$("#enter_frame").css("display","block");\r
$("#chat_frame").css("display","none");\r
\r
- if($roominfo.type != 0)\r
+ if($roominfo.type != 0 && $roominfo.admin == false)\r
{\r
$("#message").empty();\r
$("#namelist").empty();\r
+ $names = {};\r
+ createNameList();\r
}\r
else\r
$socket.json.emit("get pastLogList",{rno:document.chat_form.rno.value});\r
}; \r
msg.message = cmd.parse(msg);\r
\r
- if(msg.message != null)\r
+ if(msg.message != null && msg.message != "")\r
$socket.json.emit("send msg",msg);\r
\r
document.chat_form.message.value ="";\r