From 7fd1fb1649424c880e90d09347e213ee00d9cfc8 Mon Sep 17 00:00:00 2001 From: Walamana Date: Wed, 29 Nov 2017 20:05:41 +0100 Subject: [PATCH] Updated attach to ministrand Method Signed-off-by: Walamana --- .gitignore | 2 ++ .vscode/launch.json | 13 +++++++++++++ app.js | 39 +++++++++++++++++++-------------------- 3 files changed, 34 insertions(+), 20 deletions(-) create mode 100644 .gitignore create mode 100644 .vscode/launch.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d7e2a69 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +process.env +test.txt diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..16d535f --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,13 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "type": "node", + "request": "launch", + "name": "Launch Program", + "program": "${workspaceRoot}/app.js", + "env": {"PORT": "3000"}, + "cwd": "${workspaceRoot}" + } + ] + } \ No newline at end of file diff --git a/app.js b/app.js index d0cde56..fbda4b8 100644 --- a/app.js +++ b/app.js @@ -21,12 +21,7 @@ var con = mysql.createConnection({ host: "localhost", user: "minis", password: "Wnc4q_75", - database: "minis"/*, - ssl: { - key: fs.readFileSync(process.cwd() + "/private.key"), - cert: fs.readFileSync(process.cwd() + "/primary.crt"), - ca: fs.readFileSync(process.cwd() + "/mysql-ca.crt") - }*/ + database: "minis" }); con.connect(err => { @@ -105,35 +100,35 @@ app.get("/groups", (req, res) => { }); app.get("/ministranten", (req, res) =>{ - con.query("SELECT UserToken FROM ministranten WHERE UserToken='" + req.cookies.loginToken + "'", (err, result) => { var loggedIn = result.length == 1; con.query("SELECT Name, Username FROM `ministranten`", (err, result) => { if (err) throw err; var minis = result; - if(!loggedIn){ - for(var i = 0; i < minis.length; i++){ - if(minis[i]["Name"] == "admin"){ - minis.splice(0, 1); - i--; - continue; - } - minis[i]["Name"] = minis[i]["Name"].split(" ")[0].substring(0, 1) + ". " + minis[i]["Name"].split(" ")[1]; - } - }else{ - minis.splice(0, 1); - } - + var finished = 0; + + minis.splice(0, 1); for(var i = 0; i < minis.length; i++){ attachToMini(minis[i], i, (mini, pos) => { minis[pos] = mini; finished++; if(finished == minis.length){ + if(!loggedIn){ + for(var i = 0; i < minis.length; i++){ + if(minis[i]["Name"] == "admin"){ + minis.splice(0, 1); + i--; + continue; + } + minis[i]["Name"] = minis[i]["Name"].split(" ")[0].substring(0, 1) + ". " + minis[i]["Name"].split(" ")[1]; + } + } res.send(JSON.stringify(minis)); } }); } + }); }); @@ -142,6 +137,9 @@ app.get("/ministranten", (req, res) =>{ var attachToMini = function(mini, pos, then){ mini.registered = []; con.query("SELECT * FROM `" + mini.Name.toLowerCase() + "` LIMIT 0 , 30", (err, data) => { + if(data == null){ + then(mini, pos); + } for(var j = 0; j < data.length; j++){ mini.registered[j] = { @@ -155,6 +153,7 @@ var attachToMini = function(mini, pos, then){ app.listen(process.env.PORT); +console.log("Starting api-server on " + process.env.PORT);