OSDN Git Service

グローバル変数の数を減らした
authorkonekoneko <jbh03215@hotmail.co.jp>
Fri, 30 May 2014 16:09:28 +0000 (01:09 +0900)
committerkonekoneko <jbh03215@hotmail.co.jp>
Fri, 30 May 2014 16:09:28 +0000 (01:09 +0900)
chat.js

diff --git a/chat.js b/chat.js
index 4370bbe..dbdd35e 100644 (file)
--- a/chat.js
+++ b/chat.js
@@ -8,17 +8,6 @@ $log_directory = "log";        //ログファイルを置くフォルダー
 $log_file_name = "logfile%d.txt";      //ログファイル名(%dはそのままにしておくこと)\r
 $splited_log_file_name = "logfile%d_%s.txt"    //分割後のファイル名(%dと%sはそのままにしておくこと)\r
 \r
-var resource = require("./resources.js");\r
-var config = require("./configure.js");\r
-var security = require("./security.js");\r
-var lazy = require("lazy");\r
-var fs = require("fs");\r
-var async = require("async");\r
-var path = require("path");\r
-var util = require("util");\r
-var cookie = require("express/node_modules/cookie");\r
-var connectUtils = require("express/node_modules/connect/lib/utils");\r
-\r
 var clients = new Array();\r
 \r
 var sessionStore;\r
@@ -32,6 +21,7 @@ module.exports = function(app,server,express,session){
        app.get("/chat/admin", admin_proc);\r
        app.post("/chat/admin",admin_postproc);\r
 \r
+       var config = require("./configure.js");\r
        var io = require("socket.io").listen(server);\r
        io.configure("production", function(){\r
                io.set("transports", config.transports);\r
@@ -50,6 +40,7 @@ module.exports = function(app,server,express,session){
 };\r
 \r
 function chat_proc(req, res){\r
+       var security = require("./security.js");\r
        var info = new security.SessionInfomation(false);\r
        req.session.items = info;\r
 \r
@@ -60,6 +51,7 @@ function chat_proc(req, res){
 }\r
 \r
 function auth_proc(user, pass) {\r
+       var config = require("./configure.js");\r
        return user === config.username && pass === config.password;\r
 }\r
 \r
@@ -90,9 +82,11 @@ function admin_postproc(req,res){
 \r
 function admin_proc(req,res)\r
 {\r
+       var security = require("./security.js");\r
        var info = new security.SessionInfomation(true);\r
        req.session.items = info;\r
        var iplist = ipbanlist.GetText();\r
+       var fs = require("fs");\r
 \r
        fs.readdir($log_directory,function(err,list){\r
                res.setHeader("X-FRAME-OPTIONS","DENY");\r
@@ -114,9 +108,10 @@ function removeLog(files,callback)
                        callback();\r
                return;\r
        }\r
-\r
+       var async = require("async");\r
        async.map(files,\r
        function(item,callback){\r
+               var fs = require("fs");\r
                fs.unlink($log_directory + "/" + item,callback);\r
        },\r
        function(err,results){\r
@@ -128,6 +123,7 @@ function removeLog(files,callback)
 //RoomInfomationCollecionクラス\r
 function RoomInfomationCollection()\r
 {\r
+       var config = require("./configure.js");\r
        var MySQLPool = new require("./mysql_pool.js");\r
        var pool = new MySQLPool({\r
                                host     : config.db_host,\r
@@ -167,11 +163,13 @@ function RoomInfomationCollection()
        }\r
        this.Update = function(data,callfunc){\r
                Clear();\r
+               var async = require("async");\r
                async.waterfall([\r
                        function(next){\r
                                pool.query("TRUNCATE TABLE rooms",null,next);\r
                        },\r
                        function(result,next){\r
+                               var util = require("util");\r
                                console.log(util.inspect(data));\r
                                var items = new Array();\r
                                var config = data.config;\r
@@ -201,6 +199,7 @@ function RoomInfomationCollection()
        }\r
        function GetRoomList(callback){\r
                Clear();\r
+               var async = require("async");\r
                async.waterfall([\r
                        function(next){\r
                                pool.query("SELECT * FROM rooms",null,next);\r
@@ -217,6 +216,7 @@ function RoomInfomationCollection()
        }\r
        function Clear(){\r
                collection = {};\r
+               var config = require("./configure.js");\r
                for(var i = 0; i < config.max_room_number; i++)\r
                        Add(i,null,null);\r
        };\r
@@ -345,6 +345,7 @@ function RoomInfomation(pass,hiddenlogflag)
 //IPBANクラス\r
 function IpBanCollecion()\r
 {\r
+       var config = require("./configure.js");\r
        var MySQLPool = new require("./mysql_pool.js");\r
        var pool = new MySQLPool({\r
                                host     : config.db_host,\r
@@ -373,6 +374,7 @@ function IpBanCollecion()
        }\r
        this.Update = function(text,callfunc){\r
                collection = {};\r
+               var async = require("async");\r
                async.waterfall([\r
                        function(next){\r
                                pool.query("TRUNCATE TABLE ipbanlist",null,next);\r
@@ -398,6 +400,7 @@ function IpBanCollecion()
        }\r
        function GetIpBanList(callfunc)\r
        {\r
+               var async = require("async");\r
                async.waterfall([\r
                        function(next){\r
                                pool.query("SELECT * FROM ipbanlist",null,next);\r
@@ -419,6 +422,7 @@ createLogDirectory();
 \r
 function createLogDirectory()\r
 {\r
+       var fs = require("fs");\r
        fs.exists($log_directory,function(exists){\r
                if(exists == false)\r
                        fs.mkdirSync($log_directory);\r
@@ -465,7 +469,9 @@ function ParseConnect(socket)
 \r
 function ParseAuthorization(handshakeData, callback)\r
 {\r
+       var connectUtils = require("express/node_modules/connect/lib/utils");\r
        if(handshakeData.headers.cookie) {\r
+               var cookie = require("express/node_modules/cookie");\r
                var signedCookie = cookie.parse(handshakeData.headers.cookie);\r
                var sessionID = connectUtils.parseSignedCookies(signedCookie, $secret)["connect.sid"];\r
                sessionStore.get(sessionID, function (err, session) {\r
@@ -507,6 +513,7 @@ function ParseSetPassword(socket,msg)
                name:$system_name,\r
                message:null,\r
        };\r
+       var resource = require("./resources.js");\r
        if($rooms.Get(rno).IsVolatile() == false && $rooms.Get(rno).SetPassword(msg.owner,msg.password))\r
                newMeg.message = resource.password_setted_message;\r
        else\r
@@ -520,6 +527,7 @@ function ParseJoin(socket,msg)
 \r
        if(ipbanlist.IsBlockedToWrite(ip))\r
        {\r
+               var resource = require("./resources.js");\r
                socket.emit("error",resource.block_message);\r
                return;\r
        }\r
@@ -532,6 +540,7 @@ function ParseJoin(socket,msg)
        socket.json.emit("send romcount",romcount);\r
        socket.json.broadcast.emit("send romcount",romcount);\r
 \r
+       var util = require("util");\r
        if($rooms.Get(rno).IsVolatile() == false)\r
        {\r
                if($rooms.Get(rno).IsTimeout() ||\r
@@ -546,6 +555,7 @@ function ParseJoin(socket,msg)
                }\r
                else\r
                {\r
+                       var resource = require("./resources.js");\r
                        socket.emit("error",resource.unmatch_password);\r
                        return;\r
                }\r
@@ -562,6 +572,7 @@ function ParseQuit(socket,msg)
 {\r
        var ip = GetClientIPAdress(socket);\r
 \r
+       var resource = require("./resources.js");\r
        if(ipbanlist.IsBlockedToWrite(ip))\r
        {\r
                socket.emit("error",resource.block_message);\r
@@ -595,6 +606,7 @@ function ParseQuit(socket,msg)
                        $rooms.Get(rno).RemoveAuth(msg.name);\r
        }\r
 \r
+       var util = require("util");\r
        newMeg.message = util.format("/quitedby %s",msg.name);\r
        ParseSendMsg(socket,newMeg);\r
 }\r
@@ -607,6 +619,7 @@ function ParseSendMsg(socket,msg)
 \r
        if(ip in ipbanlist)\r
        {\r
+               var resource = require("./resources.js");\r
                socket.emit("error",resource.block_message);\r
                return;\r
        }\r
@@ -632,6 +645,7 @@ function ParseSendMsg(socket,msg)
 \r
        socket.json.broadcast.emit("req msg", repacked_msg);\r
 \r
+       var util = require("util");\r
        var path = $log_directory + "/" + util.format($log_file_name,rno);\r
        var log = new ChatLog(path);\r
        log.Save(repacked_msg,ip,rno);\r
@@ -655,6 +669,7 @@ function ParseGetPastLog(socket,file)
                return;\r
        var path = $log_directory + "/" + file;\r
        var log = new ChatLog(path);\r
+       var config = require("./configure.js");\r
        log.ToArray(config.showip,function(array){\r
                socket.json.emit("req pastlog",array);\r
        });\r
@@ -664,11 +679,13 @@ function ChatLog(path)
 {\r
        this.ToArray = function(hasIp,callback)\r
        {\r
+               var fs = require("fs");\r
                var state = fs.stat(path,function(err,state){\r
                        if(err)\r
                                return;\r
                        var array = new Array();\r
                        var stream = fs.createReadStream(path);\r
+                       var lazy = require("lazy");\r
                        new lazy(stream)\r
                                .lines\r
                                .forEach(function(line){\r
@@ -703,6 +720,8 @@ function ChatLog(path)
 \r
        function SplitLog(rno,callback)\r
        {\r
+               var util = require("util");\r
+               var fs = require("fs");\r
                var state = fs.stat(path,function(err,state){\r
                        if(err && typeof(callback) == "function")\r
                        {\r
@@ -726,6 +745,8 @@ function ChatLog(path)
 \r
        function WritePastLog(path,text)\r
        {\r
+               var fs = require("fs");\r
+               var async = require("async");\r
                async.waterfall([\r
                        function(callback){\r
                                fs.open(path,"a",callback);\r