diff --git a/backend/api/tournament.js b/backend/api/tournament.js index a4122e13b11c55a3a95cb28bea2bc26528f7c069..d1ecf57bb9d5d87bd96a7bd71686c7f1e274c35d 100644 --- a/backend/api/tournament.js +++ b/backend/api/tournament.js @@ -3,8 +3,8 @@ const router = express.Router(); const mongo = require("mongodb"); const MongoClient = mongo.MongoClient; const connectionUrl = process.env.MONGO_CONNECTION_STRING; -/* -router.post("/new/:host/:games/:name/:tpr/:players/:rpg", (req, res) => { + +router.post("/join", (req, res) => { MongoClient.connect( connectionUrl, { useNewUrlParser: true, useUnifiedTopology: true }, @@ -15,37 +15,25 @@ router.post("/new/:host/:games/:name/:tpr/:players/:rpg", (req, res) => { return; } - const games = req.params.games.split("&"); - const db = client.db("gameWare"); const collection = "tournaments"; - const tournamentid; - db.collection(collection).insertOne( - { - gameid: req.body.gameid, - players: [req.body.userid], - games: "todo", - name: req.body.name, - timePerRound: parseInt(req.body.timePerRound), - maxPlayers: parseInt(req.body.maxPlayers), - roundsPerGame: parseInt(req.body.roundsPerGame), - currentRound: 1, - dateCreated: new Date() - }, - (err, result) => { + db.collection(collection) + .find({ + $expr: { $lt: ["$maxPlayers", "$players.length"] } + }) + .toArray((err, result) => { if (err) { - res.sendStatus(500); // Internal server error + res.sendStatus(500); + console.log(err); return; } - tournamentid = result._id; - } - ); - db.collection("rounds").insertOne( - { - - } - ) + res.json(result); + }); + db.collection("rounds").insertOne({}); } ); -});*/ +}); + +// Export API routes +module.exports = router; diff --git a/backend/index.js b/backend/index.js index 9bfedb31e46a41002466353beaa0f2de09b9fdc1..4c3115e3904d47c5cc2b0be77e6aa40ee9d562bc 100644 --- a/backend/index.js +++ b/backend/index.js @@ -13,7 +13,7 @@ app.disable("x-powered-by"); // Minium security app.use("/api/games", require("./api/games")); // Use games.js for route /api/games app.use("/api/highscores", require("./api/highscores")); app.use("/api/players", require("./api/players")); -//app.use("/api/tournament", require("./api/tournament")); +app.use("/api/tournament", require("./api/tournament")); // Default route app.get("/api", (req, res) => {