diff --git a/client/src/App.js b/client/src/App.js index b7ed2ba..721c98b 100644 --- a/client/src/App.js +++ b/client/src/App.js @@ -17,7 +17,7 @@ class App extends Component {
- +
); } diff --git a/client/src/components/header/Header.js b/client/src/components/header/Header.js index f16146f..fc89a09 100644 --- a/client/src/components/header/Header.js +++ b/client/src/components/header/Header.js @@ -76,10 +76,12 @@ class Header extends React.Component { React logo {this.state.message}
+ {/*}
+ */}
diff --git a/index.js b/index.js index 9d384dd..8e10e47 100644 --- a/index.js +++ b/index.js @@ -8,7 +8,6 @@ const cors = require('@koa/cors'); const passport = require('koa-passport'); //const AccessControl = require('accesscontrol'); -//import the Router we defined in articles.js var welcome = require('./routes/welcome.js'); var admin = require('./routes/admin.js'); @@ -23,20 +22,27 @@ app.use(cors()); require('./auth'); app.use(passport.initialize()); - - - -//apply the routes as a middleware -//app.use(activities.routes()); app.use(welcome.routes()); app.use(admin.routes()); app.use(users.routes()); -//app.use(comments.routes()); -//app.use(tags.routes()); app.use(quiz.routes()); app.use(questions.routes()); app.use(answers.routes()); + + +if (process.env.NODE_ENV === 'production') { + // Serve any static files + app.use(express.static(path.join(__dirname, 'client/build'))); + + // Handle React routing, return all requests to React app + app.get('*', function(req, res) { + res.sendFile(path.join(__dirname, 'client/build', 'index.html')); + }); + } + + + var port = process.env.PORT || 3000; //run the server on port 3000 app.listen(port); diff --git a/models/admin.js b/models/admin.js index a07862f..ece1275 100644 --- a/models/admin.js +++ b/models/admin.js @@ -3,7 +3,7 @@ var info = require('../config'); -exports.createTables = async ()=> { +exports.createTables = async () => { try { @@ -24,8 +24,8 @@ exports.createTables = async ()=> { //Create the users table await connection.query(sql); - //Set up the mySQL commands for the quiz table - sql = `CREATE TABLE IF NOT EXISTS quiz ( + //Set up the mySQL commands for the quiz table + sql = `CREATE TABLE IF NOT EXISTS quiz ( ID INT NOT NULL AUTO_INCREMENT, title TEXT, instructions TEXT, @@ -44,12 +44,11 @@ exports.createTables = async ()=> { )`; //Create the quiz table await connection.query(sql); - - //Set up the mySQL commands for the questions table - sql = `CREATE TABLE IF NOT EXISTS questions ( + + //Set up the mySQL commands for the questions table + sql = `CREATE TABLE IF NOT EXISTS questions ( ID INT NOT NULL AUTO_INCREMENT, questionText TEXT, - numAnswers INT, grade INT, quizID INT, PRIMARY KEY (ID) @@ -70,11 +69,13 @@ exports.createTables = async ()=> { - //populate with dummy data to test + //populate with dummy data to test - 3 quizzes - 2 to 4 questions - 3 to six options each sql = `INSERT INTO quiz VALUES (NULL, 'General Knowledge', 'Just answer as many as you can', 003000, 'Josh', 1, TRUE, TRUE, FALSE, FALSE, NULL, 20200101, 20200808, 70)`; await connection.query(sql); - sql = `INSERT INTO questions VALUES (NULL, 'What is the capital of France', 5, 70, 1)`; + + + sql = `INSERT INTO questions VALUES (NULL, 'What is the capital of France', 70, 1)`; await connection.query(sql); sql = `INSERT INTO answers VALUES (NULL, 'London', FALSE, 1)`; await connection.query(sql); @@ -86,7 +87,8 @@ exports.createTables = async ()=> { await connection.query(sql); sql = `INSERT INTO answers VALUES (NULL, 'Amsterdam', FALSE, 1)`; await connection.query(sql); - sql = `INSERT INTO questions VALUES (NULL, 'Do you come here often', 1, 100, 1)`; + + sql = `INSERT INTO questions VALUES (NULL, 'Do you come here often', 100, 1)`; await connection.query(sql); sql = `INSERT INTO answers VALUES (NULL, 'SOMETIMES', FALSE, 2)`; await connection.query(sql); @@ -97,7 +99,128 @@ exports.createTables = async ()=> { - return {message:"created successfully"}; + + + + sql = `INSERT INTO quiz VALUES (NULL, 'Food identification', 'Do you know the difference between foods and other stuff...', + 001000, 'Barry', 1, TRUE, TRUE, FALSE, FALSE, NULL, 20200101, 20200808, 70)`; + await connection.query(sql); + + + sql = `INSERT INTO questions VALUES (NULL, 'Which of these is a red food', 70, 2)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Cabbage', FALSE, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Strawberry', TRUE, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Bricks', FALSE, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Milk', FALSE, 3)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'Which ones of these can you eat', 70, 2)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Televisions', FALSE, 4)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Clouds',FALSE, 4)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'People', FALSE, 4)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Sausages', TRUE, 4)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Doors', FALSE, 4)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'How do you extract Oysters', 70, 2)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Crow bar', FALSE, 5)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Hammer',FALSE, 5)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Shuck', TRUE, 5)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Lick', FALSE, 5)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Tease', FALSE, 5)`; + await connection.query(sql); + + + + sql = `INSERT INTO quiz VALUES (NULL, 'Games', 'Lots of questions about games', + 001200, 'Johnny John John', 1, TRUE, TRUE, FALSE, FALSE, NULL, 20200101, 20200808, 70)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'Which ones of these are board games', 70, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Crapulance', FALSE, 6)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Craps', FALSE, 6)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Poker', FALSE, 6)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Eating green chillie peppers', FALSE, 6)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Monopoly', TRUE, 6)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'How many Queens in a deck of cards', 70, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'One', FALSE, 7)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Two', FALSE, 7)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Three', FALSE, 7)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Four', TRUE, 7)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Five', FALSE, 7)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Six', FALSE, 7)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'What colour is Col Mustard', 70, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Green', FALSE, 8)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Purple', FALSE, 8)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Orange', FALSE, 8)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Yellow', TRUE, 8)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Eat me', FALSE, 8)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Brown', FALSE, 8)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'Which do you play with a ball', 70, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Rounders', TRUE, 9)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Cricket', TRUE, 9)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Monoply', FALSE, 9)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Easter Egg Hunting', FALSE, 9)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Shotput', TRUE, 9)`; + await connection.query(sql); + + sql = `INSERT INTO questions VALUES (NULL, 'Who plays football', 70, 3)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'No one', FALSE, 10)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Gnomes', FALSE, 10)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'People', TRUE, 10)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Monkeys', FALSE, 10)`; + await connection.query(sql); + sql = `INSERT INTO answers VALUES (NULL, 'Bricks', FALSE, 10)`; + await connection.query(sql); + + + return { message: "created successfully" }; } catch (error) { console.log(error); diff --git a/routes/admin.js b/routes/admin.js index 96e7a78..7fdbb27 100644 --- a/routes/admin.js +++ b/routes/admin.js @@ -13,7 +13,7 @@ router.get('/', (cnx, next)=> { }); router.post('/create_db', async (ctx, next) => { - console.log(ctx); + let item = await adminModel.createTables(ctx.params.id); ctx.body = item;