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 {
{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;