diff --git a/public/0.js b/public/0.js
index d903661c..39c516a5 100644
--- a/public/0.js
+++ b/public/0.js
@@ -210,7 +210,7 @@ __webpack_require__.r(__webpack_exports__);
exports = module.exports = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
// Module
-exports.push([module.i, "\n.WM-Border[data-v-308d838e] {\r\n border: 1px solid;\n}\n.WM-Border-Black[data-v-308d838e] {\r\n border-color: #2f353b !important;\n}\n.WM-Border-Gray[data-v-308d838e] {\r\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-308d838e] {\r\n background-color : #F5F5F5;\n}\n.WM-Relative[data-v-308d838e] {\r\n position: relative;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-308d838e] {\r\n top: -25px !important;\n}\r\n", ""]);
+exports.push([module.i, "\n.WM-Border[data-v-308d838e] {\n border: 1px solid;\n}\n.WM-Border-Black[data-v-308d838e] {\n border-color: #2f353b !important;\n}\n.WM-Border-Gray[data-v-308d838e] {\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-308d838e] {\n background-color : #F5F5F5;\n}\n.WM-Relative[data-v-308d838e] {\n position: relative;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-308d838e] {\n top: -25px !important;\n}\n", ""]);
diff --git a/public/1.js b/public/1.js
index ce9ff146..f9429ac3 100644
--- a/public/1.js
+++ b/public/1.js
@@ -137,7 +137,7 @@ __webpack_require__.r(__webpack_exports__);
exports = module.exports = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
// Module
-exports.push([module.i, "\n.WM-ActionButton[data-v-1305c16e] {\r\n padding : 8px 22px;\n}\r\n\r\n", ""]);
+exports.push([module.i, "\n.WM-ActionButton[data-v-1305c16e] {\n padding : 8px 22px;\n}\n\n", ""]);
diff --git a/public/2.js b/public/2.js
index 6accb5ec..632dcde4 100644
--- a/public/2.js
+++ b/public/2.js
@@ -423,7 +423,7 @@ __webpack_require__.r(__webpack_exports__);
exports = module.exports = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js")(false);
// Module
-exports.push([module.i, "\n.WM-Border-Gray[data-v-d05735bc] {\r\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-d05735bc] {\r\n background-color : #F5F5F5;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-d05735bc] {\r\n top: -25px !important;\n}\n.v-btn--bottom.v-btn--absolute.v-btn--small[data-v-d05735bc] {\r\n bottom: -24px !important;\n}\r\n", ""]);
+exports.push([module.i, "\n.WM-Border-Gray[data-v-d05735bc] {\n border-color: #aaa !important;\n}\n.WM-Color-LightGrey[data-v-d05735bc] {\n background-color : #F5F5F5;\n}\n.v-btn--top.v-btn--absolute.v-btn--small[data-v-d05735bc] {\n top: -25px !important;\n}\n.v-btn--bottom.v-btn--absolute.v-btn--small[data-v-d05735bc] {\n bottom: -24px !important;\n}\n", ""]);
diff --git a/public/8.js b/public/8.js
index 854bf615..75d2bb03 100644
--- a/public/8.js
+++ b/public/8.js
@@ -250,9 +250,20 @@ var render = function() {
[_vm._v("fas fa-plus")]
),
_vm._v(" "),
- _c("span", { staticClass: "black--text" }, [
- _vm._v("Register")
- ])
+ _c(
+ "span",
+ [
+ _c(
+ "router-link",
+ {
+ staticClass: "black--text",
+ attrs: { to: "register" }
+ },
+ [_vm._v("Register")]
+ )
+ ],
+ 1
+ )
],
1
)
diff --git a/public/vue/js/app.js b/public/vue/js/app.js
index 5e3e989e..c81ae9aa 100644
--- a/public/vue/js/app.js
+++ b/public/vue/js/app.js
@@ -2178,6 +2178,7 @@ module.exports = {
"use strict";
__webpack_require__.r(__webpack_exports__);
+/* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/services */ "./resources/js/vue/services/index.js");
//
//
//
@@ -2190,7 +2191,14 @@ __webpack_require__.r(__webpack_exports__);
//
//
//
-/* harmony default export */ __webpack_exports__["default"] = ({});
+
+/* harmony default export */ __webpack_exports__["default"] = ({
+ data: function data() {
+ return {
+ loggedIn: !!_services__WEBPACK_IMPORTED_MODULE_0__["TokenService"].getToken()
+ };
+ }
+});
/***/ }),
@@ -2556,12 +2564,8 @@ __webpack_require__.r(__webpack_exports__);
data: function data() {
return {
links: [{
- name: 'Home',
- Link: '/dashboard'
- }, // { name: 'Creative Tim', Link: 'https://www.creative-tim.com' },
- {
- name: 'About Us',
- Link: 'https://creative-tim.com/presentation'
+ name: 'Powered By',
+ Link: 'https://www.willamall.com'
}]
};
}
@@ -13467,9 +13471,9 @@ var render = function() {
return _c(
"v-app",
[
- _c("core-toolbar"),
+ _vm.loggedIn ? _c("core-toolbar") : _vm._e(),
_vm._v(" "),
- _c("core-drawer"),
+ _vm.loggedIn ? _c("core-drawer") : _vm._e(),
_vm._v(" "),
_c("core-view")
],
@@ -59027,7 +59031,7 @@ __webpack_require__.r(__webpack_exports__);
Object(vuex_router_sync__WEBPACK_IMPORTED_MODULE_6__["sync"])(_store__WEBPACK_IMPORTED_MODULE_10__["default"], _router__WEBPACK_IMPORTED_MODULE_9__["default"]);
vue__WEBPACK_IMPORTED_MODULE_1___default.a.config.productionTip = false; // Set the base URL of the API
-_services__WEBPACK_IMPORTED_MODULE_11__["ApiService"].init("https://www.cssd-doc.com/api/"); // If token exists set header
+_services__WEBPACK_IMPORTED_MODULE_11__["ApiService"].init("https://www.cssd-doc.com/api"); // If token exists set header
if (_services__WEBPACK_IMPORTED_MODULE_11__["TokenService"].getToken()) {
_services__WEBPACK_IMPORTED_MODULE_11__["ApiService"].setHeader();
@@ -59194,7 +59198,7 @@ function route(options) {
var path = options.path;
var view = options.view;
var name = options.name;
- var meta = path.meta ? path.meta : '';
+ var meta = options.meta ? options.meta : '';
return {
name: name || view,
path: path,
@@ -59240,31 +59244,36 @@ router.beforeEach(function (to, from, next) {
var onlyWhenLoggedOut = to.matched.some(function (record) {
return record.meta.onlyWhenLoggedOut;
});
- var loggedIn = !!_services__WEBPACK_IMPORTED_MODULE_4__["TokenService"].getToken(); // if (!isPublic && !loggedIn) {
- // return next({
- // path:'/login',
- // query: {redirect: to.fullPath} // Store the full path to redirect the user to after login
- // });
- // }
- // Do not allow user to visit login page or register page if they are logged in
- // if (loggedIn && onlyWhenLoggedOut) {
- // return next('/')
- // }
+ var loggedIn = !!_services__WEBPACK_IMPORTED_MODULE_4__["TokenService"].getToken();
+
+ if (!isPublic && !loggedIn) {
+ return next({
+ path: '/login',
+ query: {
+ redirect: to.fullPath // Store the full path to redirect the user to after login
+
+ }
+ });
+ } // Do not allow user to visit login page or register page if they are logged in
+
+
+ if (loggedIn && onlyWhenLoggedOut) {
+ return next('/');
+ }
next();
}); // Bootstrap Analytics
// Set in .env
// https://github.com/MatteoGabriele/vue-analytics
-
-if (Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).GOOGLE_ANALYTICS) {
- vue__WEBPACK_IMPORTED_MODULE_0___default.a.use(vue_analytics__WEBPACK_IMPORTED_MODULE_1___default.a, {
- id: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).GOOGLE_ANALYTICS,
- router: router,
- autoTracking: {
- page: "development" !== 'development'
- }
- });
-}
+// if (process.env.GOOGLE_ANALYTICS) {
+// Vue.use(VueAnalytics, {
+// id: process.env.GOOGLE_ANALYTICS,
+// router,
+// autoTracking: {
+// page: process.env.NODE_ENV !== 'development'
+// }
+// })
+// }
/* harmony default export */ __webpack_exports__["default"] = (router);
@@ -59320,7 +59329,16 @@ __webpack_require__.r(__webpack_exports__);
}, {
path: '/register',
name: 'Register',
- view: 'Register'
+ view: 'Register',
+ meta: {
+ public: true,
+ // Allow access to even if not logged in
+ onlyWhenLoggedOut: true
+ }
+}, {
+ path: '/Adminregister',
+ name: 'AdminRegister',
+ view: 'AdminRegister'
}, {
path: '/submit-test-result',
name: 'Submit Test Result',
@@ -59495,7 +59513,8 @@ var TokenService = {
getToken: function getToken() {
return localStorage.getItem(TOKEN_KEY);
},
- saveToken: function saveToken(accessToken) {
+ saveToken: function saveToken() {
+ var accessToken = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
localStorage.setItem(TOKEN_KEY, accessToken);
},
removeToken: function removeToken() {
@@ -59504,7 +59523,8 @@ var TokenService = {
getRefreshToken: function getRefreshToken() {
return localStorage.getItem(REFRESH_TOKEN_KEY);
},
- saveRefreshToken: function saveRefreshToken(refreshToken) {
+ saveRefreshToken: function saveRefreshToken() {
+ var refreshToken = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
localStorage.setItem(REFRESH_TOKEN_KEY, refreshToken);
},
removeRefreshToken: function removeRefreshToken() {
@@ -59606,8 +59626,8 @@ var UserService = {
grant_type: 'password'
},
auth: {
- username: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_ID,
- password: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET
+ username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api","NODE_ENV":"development"}).VUE_APP_CLIENT_ID,
+ password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET
}
};
_context.prev = 1;
@@ -59665,8 +59685,8 @@ var UserService = {
refresh_token: refreshToken
},
auth: {
- username: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_ID,
- password: Object({"MIX_APP_ROOT_API":"https://www.cssd-doc.com/api/","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_PUSHER_APP_KEY":"","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET
+ username: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api","NODE_ENV":"development"}).VUE_APP_CLIENT_ID,
+ password: Object({"MIX_PUSHER_APP_KEY":"","MIX_PUSHER_APP_CLUSTER":"mt1","MIX_APP_ROOT_API":"https://www.cssd-doc.com/api","NODE_ENV":"development"}).VUE_APP_CLIENT_SECRET
}
};
_context2.prev = 2;
@@ -60297,7 +60317,7 @@ module.exports = webpackAsyncContext;
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
-module.exports = __webpack_require__(/*! D:\Atom\Git\Laravel_CSSD\resources\js\vue\main.js */"./resources/js/vue/main.js");
+module.exports = __webpack_require__(/*! /home/saeid/Projects/Git/CSSD/resources/js/vue/main.js */"./resources/js/vue/main.js");
/***/ })
diff --git a/resources/js/vue/App.vue b/resources/js/vue/App.vue
index c1717d70..abcd957d 100644
--- a/resources/js/vue/App.vue
+++ b/resources/js/vue/App.vue
@@ -2,16 +2,23 @@
-
+
-
+
diff --git a/resources/js/vue/components/core/Footer.vue b/resources/js/vue/components/core/Footer.vue
index 6c03766b..bdc62f18 100644
--- a/resources/js/vue/components/core/Footer.vue
+++ b/resources/js/vue/components/core/Footer.vue
@@ -33,9 +33,10 @@
export default {
data: () => ({
links: [
- { name: 'Home', Link: '/dashboard' },
+ { name: 'Powered By', Link: 'https://www.willamall.com' },
+ // { name: 'Home', Link: '/dashboard' },
// { name: 'Creative Tim', Link: 'https://www.creative-tim.com' },
- { name: 'About Us', Link: 'https://creative-tim.com/presentation' },
+ // { name: 'About Us', Link: 'https://creative-tim.com/presentation' },
// { name: 'Blog', Link: 'https://blog.creative-tim.com' }
]
})
diff --git a/resources/js/vue/router/index.js b/resources/js/vue/router/index.js
index a2ee9ba2..228bba29 100644
--- a/resources/js/vue/router/index.js
+++ b/resources/js/vue/router/index.js
@@ -20,7 +20,7 @@ function route (options) {
let path = options.path;
let view = options.view;
let name = options.name;
- let meta = (path.meta) ? path.meta : '';
+ let meta = (options.meta) ? options.meta : '';
return {
name: name || view,
path,
@@ -56,17 +56,17 @@ router.beforeEach((to, from, next) => {
const isPublic = to.matched.some(record => record.meta.public);
const onlyWhenLoggedOut = to.matched.some(record => record.meta.onlyWhenLoggedOut);
const loggedIn = !!TokenService.getToken();
- // if (!isPublic && !loggedIn) {
- // return next({
- // path:'/login',
- // query: {redirect: to.fullPath} // Store the full path to redirect the user to after login
- // });
- // }
+ if (!isPublic && !loggedIn) {
+ return next({
+ path:'/login',
+ query: {redirect: to.fullPath} // Store the full path to redirect the user to after login
+ });
+ }
// Do not allow user to visit login page or register page if they are logged in
- // if (loggedIn && onlyWhenLoggedOut) {
- // return next('/')
- // }
+ if (loggedIn && onlyWhenLoggedOut) {
+ return next('/')
+ }
next();
});
@@ -74,14 +74,14 @@ router.beforeEach((to, from, next) => {
// Bootstrap Analytics
// Set in .env
// https://github.com/MatteoGabriele/vue-analytics
-if (process.env.GOOGLE_ANALYTICS) {
- Vue.use(VueAnalytics, {
- id: process.env.GOOGLE_ANALYTICS,
- router,
- autoTracking: {
- page: process.env.NODE_ENV !== 'development'
- }
- })
-}
+// if (process.env.GOOGLE_ANALYTICS) {
+// Vue.use(VueAnalytics, {
+// id: process.env.GOOGLE_ANALYTICS,
+// router,
+// autoTracking: {
+// page: process.env.NODE_ENV !== 'development'
+// }
+// })
+// }
export default router
diff --git a/resources/js/vue/router/paths.js b/resources/js/vue/router/paths.js
index 6c51d81b..9a082b82 100644
--- a/resources/js/vue/router/paths.js
+++ b/resources/js/vue/router/paths.js
@@ -46,7 +46,16 @@ export default [
{
path: '/register',
name: 'Register',
- view: 'Register'
+ view: 'Register',
+ meta: {
+ public: true, // Allow access to even if not logged in
+ onlyWhenLoggedOut: true
+ }
+ },
+ {
+ path: '/Adminregister',
+ name: 'AdminRegister',
+ view: 'AdminRegister'
},
{
path: '/submit-test-result',
diff --git a/resources/js/vue/services/auth/storage.service.js b/resources/js/vue/services/auth/storage.service.js
index d7383a29..2e039bff 100644
--- a/resources/js/vue/services/auth/storage.service.js
+++ b/resources/js/vue/services/auth/storage.service.js
@@ -12,7 +12,7 @@ const TokenService = {
return localStorage.getItem(TOKEN_KEY)
},
- saveToken(accessToken) {
+ saveToken(accessToken = null) {
localStorage.setItem(TOKEN_KEY, accessToken)
},
@@ -24,7 +24,7 @@ const TokenService = {
return localStorage.getItem(REFRESH_TOKEN_KEY)
},
- saveRefreshToken(refreshToken) {
+ saveRefreshToken(refreshToken = null) {
localStorage.setItem(REFRESH_TOKEN_KEY, refreshToken)
},
diff --git a/resources/js/vue/views/Login.vue b/resources/js/vue/views/Login.vue
index f463b38e..2f9d6ab6 100644
--- a/resources/js/vue/views/Login.vue
+++ b/resources/js/vue/views/Login.vue
@@ -38,7 +38,7 @@
fas fa-plus
- Register
+ Register