const mysql = require('mysql'); const con = mysql.createConnection({ host: "localhost", user: "realmsdivided", password: "realmsdivided", database: "realms_divided" }); function connect(){ con.connect(function(err) { if (err) { console.log(err); } else { console.log('DB Connected'); } }); } function disconnect(){ con.end(); } // My DB stuffs function dbGetDecks(){ const dPromise = new Promise((resolve, reject) => { let cards = []; let sql = `SELECT deckId ,playerId ,deckName FROM deck LIMIT 10 `; // TODO: Remove limit when happy/this accepts params con.query(sql, function (err, result, fields) { if (err) { throw err; reject(new Error(err)); } resolve(result); }); }); return dPromise; } function dbGetDeckList(){ const dPromise = new Promise((resolve, reject) => { let cards = []; let sql = `SELECT deckId ,playerId ,cardId ,cardCount FROM deck_cards `; con.query(sql, function (err, result, fields) { if (err) { throw err; reject(new Error(err)); } resolve(result); }); }); return dPromise; } function dbGetCards(){ // Start with basic stuff in card table const dPromise = new Promise((resolve, reject) => { let sql = `SELECT id ,cardName ,cardCost ,cardType ,cardAttack ,cardRarity FROM card `; con.query(sql, function (err, result, fields) { if (err) { throw err; reject(new Error(err)); } resolve(result); }); }); return dPromise; } function dbGetCardClasses(){ // Get the classes assoc. on each card const dPromise = new Promise((resolve, reject) => { let sql = `SELECT cardId ,classId FROM card_class `; con.query(sql, function (err, result, fields) { if (err) { throw err; reject(new Error(err)); } resolve(result); }); }); return dPromise; } function dbGetCardColourRequirement(){ // Get the classes assoc. on each card const dPromise = new Promise((resolve, reject) => { let sql = `SELECT cardId ,colourId ,cost FROM card_colour_requirement `; con.query(sql, function (err, result, fields) { if (err) { throw err; reject(new Error(err)); } resolve(result); }); }); return dPromise; } module.exports = { connect, disconnect // Testing, and trailing , dbGetDecks , dbGetDeckList , dbGetCards , dbGetCardClasses , dbGetCardColourRequirement };