From 8fcdea6cf2b495ce437543b4bec84982ff24c2e3 Mon Sep 17 00:00:00 2001 From: joewangu Date: Tue, 28 May 2024 15:48:16 +0300 Subject: [PATCH] plp lms web assignment --- .gitignore | 1 + app.js | 20 + course-content.html | 8 +- courses.html | 25 + dashboard.html | 5 + index.html | 13 +- leader-board.html => leaderboard.html | 61 +- package-lock.json | 1124 +++++++++++++++++++++++++ package.json | 21 + server.js | 37 +- update_schema.sql | 7 + 11 files changed, 1272 insertions(+), 50 deletions(-) create mode 100644 .gitignore create mode 100644 app.js create mode 100644 courses.html rename leader-board.html => leaderboard.html (93%) create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 update_schema.sql diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..096746c1 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/node_modules/ \ No newline at end of file diff --git a/app.js b/app.js new file mode 100644 index 00000000..fe0c3a03 --- /dev/null +++ b/app.js @@ -0,0 +1,20 @@ +// Route to select a course +app.post('/select-course', (req, res) => { + const userId = req.user.id; + const courseId = req.body.courseId; + const query = 'INSERT INTO user_courses (user_id, course_id) VALUES (?, ?)'; + db.query(query, [userId, courseId], (err) => { + if (err) throw err; + res.redirect('/courses'); + }); +}); + +// Route to display selected courses +app.get('/my-courses', (req, res) => { + const userId = req.user.id; + const query = 'SELECT * FROM courses WHERE id IN (SELECT course_id FROM user_courses WHERE user_id = ?)'; + db.query(query, [userId], (err, results) => { + if (err) throw err; + res.render('courses', { courses: results }); + }); +}); \ No newline at end of file diff --git a/course-content.html b/course-content.html index d9b262e7..6e1fb9f7 100644 --- a/course-content.html +++ b/course-content.html @@ -12,13 +12,17 @@

Course Name

- +
+

Selected Courses

+ +