diff --git a/src/assets/scripts/app/index.js b/src/assets/scripts/app/index.js index 7fb359b..4d4d0dc 100644 --- a/src/assets/scripts/app/index.js +++ b/src/assets/scripts/app/index.js @@ -8,6 +8,7 @@ angular.module('NomitWisp', 'NomitWisp-Sidebar', 'NomitWisp-Footer', 'nwDashboard', + 'nwLogout', ngRoute ]) @@ -16,7 +17,7 @@ angular.module('NomitWisp', .when('/', { controller: 'DashboardController', templateUrl: 'assets/scripts/dashboard/dashboard.html' - }) + }) .otherwise({ redirectTo: '/' }); diff --git a/src/assets/scripts/dashboard/dashboard.html b/src/assets/scripts/dashboard/dashboard.html index ce5bf0b..bdc149e 100644 --- a/src/assets/scripts/dashboard/dashboard.html +++ b/src/assets/scripts/dashboard/dashboard.html @@ -2,7 +2,7 @@
- Dashboard + Welcome {{ user.fullname }}
diff --git a/src/assets/scripts/dashboard/index.js b/src/assets/scripts/dashboard/index.js index c7b5954..02d842e 100644 --- a/src/assets/scripts/dashboard/index.js +++ b/src/assets/scripts/dashboard/index.js @@ -1,14 +1,23 @@ -import angular from 'angular'; +import * as angular from 'angular'; +import ngCookies from 'angular-cookies'; -angular.module('nwDashboard', []) +angular.module('nwDashboard', [ngCookies]) .controller('DashboardController', DashboardController); /** @ngInject */ -function DashboardController($scope){ +function DashboardController($scope, $cookies){ // service carica dashboard // jquery per grafici - $scope.user = { - role : 'admin' - }; + const token = $cookies.get('access_token'); + console.log(token); + + if(typeof(token) !== "undefined"){ + $scope.user = parseJwt( token ); + } +} -} \ No newline at end of file +function parseJwt(token) { + var base64Url = token.split('.')[1]; + var base64 = base64Url.replace('-', '+').replace('_', '/'); + return JSON.parse(window.atob(base64)); +}; \ No newline at end of file diff --git a/src/assets/scripts/index.js b/src/assets/scripts/index.js index 3d66609..6ebe8fe 100755 --- a/src/assets/scripts/index.js +++ b/src/assets/scripts/index.js @@ -18,6 +18,7 @@ import './googleMaps'; import './utils'; import './user-form'; import './login'; +import './logout'; import './nwFooter'; import './nwSidebar'; import './nwTopbar'; diff --git a/src/assets/scripts/logout/controller.js b/src/assets/scripts/logout/controller.js new file mode 100644 index 0000000..5d85af9 --- /dev/null +++ b/src/assets/scripts/logout/controller.js @@ -0,0 +1,12 @@ +const LogoutController = ($scope, LogoutService, $cookies) => { + $scope.userLogged = false; + + $scope.userLogout = async () => { + console.log("Logout"); + const result = await LogoutService.logoutUserService($scope.user); + $cookies.remove('access_token'); + console.log(result); + } +}; + +export default LogoutController; \ No newline at end of file diff --git a/src/assets/scripts/logout/index.js b/src/assets/scripts/logout/index.js new file mode 100644 index 0000000..6fc9ff8 --- /dev/null +++ b/src/assets/scripts/logout/index.js @@ -0,0 +1,8 @@ +import angular from 'angular'; +import ngCookies from 'angular-cookies'; +import LogoutController from './controller'; +import LogoutService from './service'; + +angular.module('nwLogout', [ngCookies]) + .controller(LogoutController.name, LogoutController) + .factory(LogoutService.name, LogoutService); \ No newline at end of file diff --git a/src/assets/scripts/logout/service.js b/src/assets/scripts/logout/service.js new file mode 100644 index 0000000..c2188c7 --- /dev/null +++ b/src/assets/scripts/logout/service.js @@ -0,0 +1,22 @@ +const LogoutService = ($http) => { + let serv = {}; + + serv.logoutUserService = (user) =>{ + return $http({ + method: 'POST', + url: 'https://nomitwisp-restapi.herokuapp.com/logout', + data: user, + headers: { 'Content-Type': 'application/json' } + }) + .then( (result) => { + console.log(result); + return result; + }, (err) => { + console.log(err.data); + return err.data; + }); + } + return serv; +} + +export default LogoutService; \ No newline at end of file diff --git a/src/assets/scripts/nwTopbar/nwTopbar.html b/src/assets/scripts/nwTopbar/nwTopbar.html index e2efc89..63637e1 100644 --- a/src/assets/scripts/nwTopbar/nwTopbar.html +++ b/src/assets/scripts/nwTopbar/nwTopbar.html @@ -58,8 +58,8 @@ -
  • - +
  • + Logout