{"version":3,"sources":["jsdelivr-header.js","/npm/10er10@0.23.0/node/server.js"],"names":[],"mappings":"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","file":"/npm/10er10@0.23.0/node/server.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/10er10@0.23.0/node/server.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var config,\n\tconfigParser = require(__dirname+\"/configParser\");\n\n\nconfigParser.getConfig(function(foo,cfg) {\n\tconfig = cfg;\n\t// production test\n\tvar prod = false;\n\tif ( process.argv.length > 2 && process.argv[2] == \"-p\" ) {\n\t\tprod = true;\n\t\tconfigParser.switchProd();\n\t} else {\n\t\tconfigParser.switchDev();\n\t}\n\trequire(\"./d10\").setConfig(config);\n\tonConfig(prod);\n});\n\n\nvar onConfig = function(isProduction) {\n\n\tvar\tconnect = require(\"connect\");\n    connect.router = require(\"./connect-router\");\n\tvar\thttpHelper = require(__dirname+\"/httpHelper\"),\n\t\thomepage = require(__dirname+\"/d10.router.homepage\"),\n\t\tcookieSession = require(__dirname+\"/cookieSessionMiddleware\"),\n\t\tapi = require(__dirname+\"/d10.router.api\"),\n\t\tplmApi = require(__dirname+\"/d10.router.api.plm\"),\n\t\tlistingApi = require(__dirname+\"/d10.router.api.listing\"),\n\t\tsongStuff = require(__dirname+\"/d10.router.song\"),\n\t\timagesStuff = require(__dirname+\"/d10.router.images\"),\n\t\tinvites = require(__dirname+\"/d10.router.invites\"),\n\t\tdownload = require(__dirname+\"/d10.router.audio.download\"),\n\t\trc = require(__dirname+\"/d10.router.rc\"),\n\t\tinvitesRouter = require(__dirname+\"/invites.router\"),\n\t\tlang = require(__dirname+\"/lang\"),\n\t\tcontextMiddleware = require(__dirname+\"/contextMiddleware\").context,\n\t\twebSocketServer = require(__dirname+\"/lib/websocket-server\"),\n\t\tnodeVersion = require(__dirname+\"/nodeVersion\"),\n\t\tdosWatchdog = require(__dirname+\"/dosWatchdog\");\n\n\n\tprocess.chdir(__dirname);\n\t\n\tvar child = require('child_process').fork(__dirname + '/bgworker.js');\n\tchild.send({type: \"configuration\", production: isProduction});\n\n\tconsole.log(\"Database binding: \"+config.couch.d10.dsn+\"/\"+config.couch.d10.database);\n\n\t// config.production = true;\n\tfunction staticRoutes(app) {\n\t\tapp.get(\"/js/*\",httpHelper.localPathServer(\"/js\",\"../views/10er10.com/js\",{bypass: config.production ? false : true}));\n\t\tapp.get(\"/css/*\",httpHelper.localPathServer(\"/css\",\"../views/10er10.com/css\",{bypass: config.production ? false : true}));\n        app.get(\"/html/rc/*\",httpHelper.localPathServer(\"/html/rc\",\"../views/10er10.com/html/rc\",{bypass: config.production ? false : true}));\n\t};\n\n\tfunction staticAudio (app) {\n      console.log(\"Audio directory:\", config.audio.dir);\n      var connectStatic = connect.static(config.audio.dir);\n      app.get(\"/audio/*\",function(req,res,next) {\n        req.on(\"close\",function() {\n          console.log(\"Audio connection req closed\",req.url);\n        });\n        res.on(\"close\",function() {\n          console.log(\"Audio connection res closed\",req.url);\n        });\n        req.url = req.url.replace(\"/audio\",\"\");\n        connectStatic(req,res,next);\n      }\n      );\n\t};\n\n\tfunction staticImages (app) {\n\t\tapp.get(\"/audioImages/*\",httpHelper.localPathServer(\"/audioImages\",config.images.dir));\n\t};\n\n\tfunction staticInvites(app) {\n\t\tapp.get(\"/static/*\",httpHelper.localPathServer(\"/static\",\"../views/invites.10er10.com/static\"));\n\t};\n\n\n\n\n\tvar d10LangMiddleWare = lang.middleware(\"../views/10er10.com/lang\",config.templates.node, startServer);\n\tvar invitesLangMiddleWare = lang.middleware(\"../views/invites.10er10.com/lang\",config.templates.invites, function(){});\n\n\n\tvar stack = [\n\t\tcontextMiddleware,\n\t\tconnect.router(staticRoutes), \n\t\tcookieSession.cookieSession,\n\t\td10LangMiddleWare,\n\t\tconnect.router(homepage.homepage),\n\t\tconnect.router(rc.publicApi),\n\t\t// from here we need to be logged:\n\t\tfunction(request,response,next) {\n\t\t\tif ( !request.ctx.session || !request.ctx.user || !request.ctx.user._id ) {\n\t\t\t\tresponse.writeHead(404,{\"Content-Type\":\"text/plain\"});\n\t\t\t\tresponse.end(\"Page not found\");\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tnext();\n\t\t\t}\n\t\t},\n\t\tconnect.router(download.api),\n\t\tconnect.router(staticAudio),\n\t\tconnect.router(staticImages),\n\t\tconnect.router(api.api),\n\t\tconnect.router(plmApi.api),\n\t\tconnect.router(listingApi.api),\n\t\tconnect.router(songStuff.api),\n\t\tconnect.router(imagesStuff.api),\n\t\tconnect.router(rc.api),\n\t\tconnect.router(invites.api)\n\t];\n\n\n\n\n\n\n\tfunction startServer() {\n\t\t\n\t\tvar d10Server = connect().use(connect.favicon('../views/10er10.com/favicon.ico'));\n\t\tif ( !config.production ) {\n\t\t\td10Server.use(connect.logger());\n\t\t}\n\n\t\tif ( config.gzipContentEncoding ) {\n            var compressFilter = function(req, res){\n              var type = res.getHeader('Content-Type') || '';\n              return type.match(/css|text|javascript|json|x-font-ttf/);\n            };\n            d10Server.use(connect.compress({filter: compressFilter}));\n\t\t}\n\t\tstack.forEach(function(mw) { d10Server.use(mw); });\n\n\n\t\tvar invitesServer = connect()\n\t\t\t.use(connect.logger())\n\t\t\t.use(contextMiddleware)\n\t\t\t.use(invitesLangMiddleWare)\n\t\t\t.use(connect.router(staticInvites))\n\t\t\t.use(connect.router(invitesRouter.api))\n            .use(\n\t\t\tfunction (request,response) {\n\t\t\t\tresponse.writeHead(404,{\"Content-Type\": \"text/plain\"});\n\t\t\t\tresponse.end(\"The page does not exist\");\n\t\t\t}\n            )\n        ;\n\t\t\n\n\t\tvar globalSrv = connect()\n\t\t\t// 10er10 vhosts\n\t\t\t.use(connect.vhost(config.invites.domain,invitesServer))\n\t\t// \tdefaultServer\n\t\t\t.use(d10Server)\n\t\t;\n\t\tvar nodeHTTPServer = globalSrv.listen(config.port);\n        dosWatchdog.install(nodeHTTPServer);\n        var wsServer = new webSocketServer(nodeHTTPServer, d10Server);\n\n        nodeHTTPServer.on(\"error\", function(err) {\n          console.log(err);\n        });\n        \n        \n\t\td10Server.on(\"clientError\",function() {\n\t\t\tconsole.log(\"CLIENT ERROR\");\n\t\t\tconsole.log(arguments);\n\t\t});\n/*\n\t\td10Server.on(\"error\",function() {\n\t\t\tconsole.log(\"SERVER ERROR\");\n\t\t\tconsole.log(arguments);\n\t\t});\n\t\t\n\t\tglobalSrv.on(\"error\",function() {\n\t\t\tconsole.log(\"SERVER ERROR\");\n\t\t\tconsole.log(arguments);\n\t\t});\n\t\tglobalSrv.on(\"clientError\",function() {\n\t\t\tconsole.log(\"CLIENT ERROR\");\n\t\t\tconsole.log(arguments);\n\t\t});\n\t\t*/\n\t\tconsole.log(\"Production mode ? \",config.production);\n        console.log(\"Server listening on port\", config.port);\n\t};\n};\n"]}