From d435778a7424222120a0ffedd0f45c41bf836be1 Mon Sep 17 00:00:00 2001
From: Amber Elferink <a.s.elferink@students.uu.nl>
Date: Sun, 8 Apr 2018 02:33:27 +0200
Subject: [PATCH] logout success

---
 public/javascripts/login.js  |  2 +-
 public/javascripts/navbar.js | 17 +++++++++++++++++
 routes/checkLogin.js         |  8 +++++++-
 views/partials/header.hbs    |  3 ++-
 4 files changed, 27 insertions(+), 3 deletions(-)
 create mode 100644 public/javascripts/navbar.js

diff --git a/public/javascripts/login.js b/public/javascripts/login.js
index 26a9fda..46b6684 100644
--- a/public/javascripts/login.js
+++ b/public/javascripts/login.js
@@ -47,7 +47,7 @@ function validate() {
 function postLogin(callback, un, pw) {
     $.ajax({
         type: 'POST',
-        url: '/api/checkLogin',
+        url: '/api/checkLogin/login',
         dataType: 'json',
         data: {
             "username": un,
diff --git a/public/javascripts/navbar.js b/public/javascripts/navbar.js
new file mode 100644
index 0000000..20bfc82
--- /dev/null
+++ b/public/javascripts/navbar.js
@@ -0,0 +1,17 @@
+$('#logout').click(function () {
+    $.ajax({
+        type: 'GET',
+        url: '/api/checkLogin/logout',
+        dataType: 'text',
+    })//als deze asynchronous ajax call klaar is, is het of gefaald, of goed gegaan.
+    //als het goed is gegaan, callt hij de .done hieronder.
+        .done(function (data) {
+            //deze done functie logt het naar de javascript console en print het op de pagina als txt
+            //console.log('GET response:', JSON.stringify(data, "", 2));
+            console.log(data);
+        })
+        //als het niet goed is gegaan, doet hij de fail hieronder
+        .fail(function (jqXHR, textStatus, err) {
+            console.log('AJAX error response:', textStatus);
+        });
+});
\ No newline at end of file
diff --git a/routes/checkLogin.js b/routes/checkLogin.js
index b175158..cccd26b 100644
--- a/routes/checkLogin.js
+++ b/routes/checkLogin.js
@@ -17,7 +17,7 @@ app.use(session({
 }));
 
 /* GET home page. */
-router.post('/', function (req, res) {
+router.post('/login', function (req, res) {
 
     //dit function deel is hetgene waarmee de callback(undefined, rows) wordt aangeroepen
     //alles binnen deze functie doet hij pas nadat de callback is uitgevoerd. Als je res.send(data);
@@ -30,6 +30,12 @@ router.post('/', function (req, res) {
     },req.body);
 });
 
+router.get('/logout', function (req, res) {
+    console.log("I am logging out");
+    req.session.destroy();
+    res.send("logout success!");
+});
+
 module.exports = router;
 
 
diff --git a/views/partials/header.hbs b/views/partials/header.hbs
index f259ad6..e277f89 100644
--- a/views/partials/header.hbs
+++ b/views/partials/header.hbs
@@ -23,13 +23,14 @@
                     <li><a href="#">Order History</a></li>
                     <li><a href="#"></a>Blabla</li>
                     <li role="separator" class="divider"></li>
-                    <li><a href="#">Log out</a></li>
+                    <li><a id="logout">Log out</a></li>
                 </ul>
             </li>
         </ul>
     </div>
 </nav>
 
+<script type=text/javascript src="javascripts/navbar.js"></script>
 <!--
 <nav class="navbar navbar-default">
     <div class="container-fluid">
-- 
GitLab