OSDN Git Service

バージョンを更新した
[webchat/WebChat.git] / chat.js
diff --git a/chat.js b/chat.js
index 1e697ae..767862e 100644 (file)
--- a/chat.js
+++ b/chat.js
@@ -7,7 +7,6 @@ $system_name = "system";        //システム発言を表す名前
 $log_directory = "log";        //ログファイルを置くフォルダー\r
 $log_file_name = "logfile%d.txt";      //ログファイル名(%dはそのままにしておくこと)\r
 $splited_log_file_name = "logfile%d_%s.txt"    //分割後のファイル名(%dと%sはそのままにしておくこと)\r
-$pastlogfile_pattern = "logfile%d(_+.*)?\.txt";        //過去ログと判定する正規表現\r
 \r
 var resource = require("./resources.js");\r
 var config = require("./configure.js");\r
@@ -29,9 +28,9 @@ module.exports = function(app,server,express,session){
        app.get("/chat", chat_proc);\r
        app.all("/log/*",express.basicAuth(auth_proc));\r
        app.get("/log/*",log_proc);\r
-       app.all("/admin",express.basicAuth(auth_proc));\r
-       app.get("/admin", admin_proc);\r
-       app.post("/admin",admin_postproc);\r
+       app.all("/chat/admin",express.basicAuth(auth_proc));\r
+       app.get("/chat/admin", admin_proc);\r
+       app.post("/chat/admin",admin_postproc);\r
 \r
        var io = require("socket.io").listen(server);\r
        io.configure("production", function(){\r
@@ -72,19 +71,19 @@ function admin_postproc(req,res){
        if(typeof(req.body.erase) != "undefined")\r
        {\r
                removeLog(req.body.file,function(){\r
-                       res.redirect("/admin");\r
+                       res.redirect("/chat/admin");\r
                });\r
        }\r
        if(typeof(req.body.registor) != "undefined")\r
        {\r
                ipbanlist.Update(req.body.newbanlist,function(){\r
-                       res.redirect("/admin");\r
+                       res.redirect("/chat/admin");\r
                });\r
        }\r
        if(typeof(req.body.updateroom) != "undefined")\r
        {\r
                $rooms.Update(req.body,function(){\r
-                       res.redirect("/admin");\r
+                       res.redirect("/chat/admin");\r
                });\r
        }\r
 }\r
@@ -478,9 +477,11 @@ function ParseAuthorization(handshakeData, callback)
                                result = "failed get from session store";\r
                        else if(err)\r
                                result = err;\r
+                       else if(typeof(session) == "undefined" || typeof(session._csrf) == "undefined")\r
+                               result = "session is undefined";\r
                        else if(handshakeData.query.token != session._csrf)\r
                                result = "invaild token";\r
-                       if(typeof(session) != "undefined" && result == null)\r
+                       if(result == null)\r
                                handshakeData.sessionID = sessionID;\r
                        callback(result,result == null && !err);\r
                });\r
@@ -654,16 +655,7 @@ function GetRoomNumberFromName(name)
 function ParseGetPastLogList(socket,msg)\r
 {\r
        var list = fs.readdir($log_directory,function(err,files){\r
-               var text = "";\r
-               var rno = GetRoomNumberFromName(socket.namespace.name);\r
-               var pattern = $pastlogfile_pattern.replace("%d",rno);\r
-               for(var i = 0; i < files.length; i++)\r
-               {\r
-                       var logname = files[i];\r
-                       if(logname.match(pattern))\r
-                               text += files[i] + "\n";\r
-               }\r
-               socket.emit("req pastloglist",text);\r
+               socket.emit("req pastloglist",files);\r
        });\r
 }\r
 \r