diff --git a/src-pwa/custom-service-worker.js b/src-pwa/custom-service-worker.js index f03c2e0..f5b24c0 100644 --- a/src-pwa/custom-service-worker.js +++ b/src-pwa/custom-service-worker.js @@ -6,7 +6,7 @@ // Questo è il swSrc -console.log(' [ VER-0.0.21 ] _---------________-----------_________------------__________________________ PAO: this is my custom service worker'); +console.log(' [ VER-0.0.21 ] _---------________------ PAO: this is my custom service worker'); importScripts('https://storage.googleapis.com/workbox-cdn/releases/3.0.0/workbox-sw.js'); //++Todo: Replace with local workbox.js importScripts('../statics/js/idb.js'); @@ -31,7 +31,7 @@ async function readAllData(table) { } async function clearAllData(table) { - console.log('clearAllData', table); + // console.log('clearAllData', table); await idbKeyval.clearalldata(table) } @@ -108,9 +108,9 @@ if (workbox) { return fetch(args.event.request, args.event.headers) .then(function (res) { myres = res - console.log('1° ******* [[[ SERVICE-WORKER ]]] registerRoute fetch: -> ', args.event.request, res) + // console.log('1° ******* [[[ SERVICE-WORKER ]]] registerRoute fetch: -> ', args.event.request, res) // LOAD FROM SERVER , AND SAVE INTO INDEXEDDB - console.log('res.status', res.status) + // console.log('res.status', res.status) if (res.status === 200) { const clonedRes = res.clone(); clearAllData('todos') @@ -333,82 +333,83 @@ if ('serviceWorker' in navigator) { // }); -self.addEventListener('sync', function (event) { - console.log('[Service Worker V5] Background syncing', event.tag); - - let mystrparam = event.tag - let multiparams = mystrparam.split('|') - if (multiparams) { - if (multiparams.length > 3) { - let cmd = multiparams[0] - let table = multiparams[1] - let method = multiparams[2] - let token = multiparams[3] - // let lang = multiparams[3] - - if (cmd === 'sync-todos') { - console.log('[Service Worker] Syncing', cmd, table, method); - - const headers = new Headers() - headers.append('content-Type', 'application/json') - headers.append('Accept', 'application/json') - headers.append('x-auth', token) - - - // console.log('A1) INIZIO.............................................................'); - - event.waitUntil( - readAllData(table) - .then(function (alldata) { - const myrecs = [...alldata] - console.log('----------------------- LEGGO QUALCOSA DAL WAITUNTIL ') - if (myrecs) { - for (let rec of myrecs) { - //console.log('syncing', table, '', rec.descr) - let link = cfgenv.serverweb + '/todos' - - if (method !== 'POST') - link += '/' + rec._id - - console.log('++++++++++++++++++ SYNCING !!!! ', rec.descr, table, 'FETCH: ', method, link, 'data:') - - // console.log('DATATOSAVE:', JSON.stringify(rec)) - - // Insert/Delete/Update table to the server - fetch(link, { - method: method, - headers: headers, - mode: 'cors', // 'no-cors', - body: JSON.stringify(rec) - }) - .then(() => { - deleteItemFromData(table, rec._id) - deleteItemFromData('swmsg', mystrparam) - - // console.log('config WRITE ONLINE') - writeData('config', { _id: 2, stateconn: 'online' }) - }) - .catch(function (err) { - console.log('err', err, err.message) - // console.log('DELETE : ', table, mystrparam) - - if (err.message === 'Failed to fetch') { - // console.log('config WRITE OFFLINE') - writeData('config', { _id: 2, stateconn: 'offline' }) - } - - console.log('!!!!!!!!!!!!!!! Error while sending data', err); - }) - } - } - }) - ); - // console.log('A2) ?????????????????????????? ESCO DAL LOOP !!!!!!!!! err=') - } - } - } -}) -; +// self.addEventListener('sync', function (event) { +// console.log('[Service Worker V5] Background syncing', event.tag); +// +// let mystrparam = event.tag +// let multiparams = mystrparam.split('|') +// if (multiparams) { +// if (multiparams.length > 3) { +// let cmd = multiparams[0] +// let table = multiparams[1] +// let method = multiparams[2] +// let token = multiparams[3] +// // let lang = multiparams[3] +// +// if (cmd === 'sync-todos') { +// console.log('[Service Worker] Syncing', cmd, table, method); +// +// const headers = new Headers() +// headers.append('content-Type', 'application/json') +// headers.append('Accept', 'application/json') +// headers.append('x-auth', token) +// +// +// // console.log('A1) INIZIO.............................................................'); +// +// event.waitUntil( +// readAllData(table) +// .then(function (alldata) { +// const myrecs = [...alldata] +// console.log('----------------------- LEGGO QUALCOSA DAL WAITUNTIL ') +// let errorfromserver = false +// if (myrecs) { +// for (let rec of myrecs) { +// //console.log('syncing', table, '', rec.descr) +// let link = cfgenv.serverweb + '/todos' +// +// if (method !== 'POST') +// link += '/' + rec._id +// +// console.log('++++++++++++++++++ SYNCING !!!! ', rec.descr, table, 'FETCH: ', method, link, 'data:') +// +// // console.log('DATATOSAVE:', JSON.stringify(rec)) +// +// // Insert/Delete/Update table to the server +// fetch(link, { +// method: method, +// headers: headers, +// cache: 'no-cache', +// mode: 'cors', // 'no-cors', +// body: JSON.stringify(rec) +// }) +// .then(() => { +// deleteItemFromData(table, rec._id) +// }) +// .then(() => { +// deleteItemFromData('swmsg', mystrparam) +// }) +// .catch(function (err) { +// console.log('!!!!!!!!!!!!!!! Error while sending data', err, err.message); +// if (err.message === 'Failed to fetch') { +// errorfromserver = true +// } +// }) +// } +// return errorfromserver +// } +// }) +// .then((errorfromserver) => { +// const mystate = !errorfromserver ? 'online' : 'offline' +// writeData('config', { _id: 2, stateconn: mystate }) +// }) +// ); +// // console.log('A2) ?????????????????????????? ESCO DAL LOOP !!!!!!!!! err=') +// } +// } +// } +// }) +// ; /* diff --git a/src/components/Header.vue b/src/components/Header.vue index 2b6b97c..1311774 100644 --- a/src/components/Header.vue +++ b/src/components/Header.vue @@ -191,16 +191,16 @@ console.log('Event LOAD') if (window) { window.addEventListener('load', function () { - console.log('2) ENTERING Event LOAD') + // console.log('2) ENTERING Event LOAD') function updateOnlineStatus(event) { if (navigator.onLine) { - console.log('EVENT ONLINE!') + // console.log('EVENT ONLINE!') // handle online status GlobalStore.mutations.setStateConnection('online') mythis.changeIconConn() } else { - console.log('EVENT OFFLINE!') + // console.log('EVENT OFFLINE!') // handle offline status GlobalStore.mutations.setStateConnection('offline') mythis.changeIconConn() diff --git a/src/components/todos/SingleTodo/SingleTodo.ts b/src/components/todos/SingleTodo/SingleTodo.ts index 1a0f6da..e3e9048 100644 --- a/src/components/todos/SingleTodo/SingleTodo.ts +++ b/src/components/todos/SingleTodo/SingleTodo.ts @@ -264,6 +264,15 @@ export default class SingleTodo extends Vue { } } */ + if (((e.keyCode === 8) || (e.keyCode === 46)) && (this.precDescr === '') && !e.shiftKey) { + e.preventDefault() + this.clickMenu(rescodes.MenuAction.DELETE) + .then(() => { + this.deselectRiga() + this.faiFocus('insertTask', true) + return + }) + } if (((e.key === 'Enter') || (e.key === 'Tab')) && !e.shiftKey) { this.updateTodo() @@ -344,16 +353,16 @@ export default class SingleTodo extends Vue { } - clickMenu(action) { + async clickMenu(action) { console.log('click menu: ', action) if (action === rescodes.MenuAction.DELETE) { - this.askConfirmDelete() + return this.askConfirmDelete() } else if (action === rescodes.MenuAction.TOGGLE_EXPIRING) { - this.enableExpiring() + return this.enableExpiring() } else if (action === rescodes.MenuAction.COMPLETED) { - this.setCompleted() + return this.setCompleted() } else if (action === rescodes.MenuAction.PROGRESS_BAR) { - this.updatedata() + return this.updatedata() } } @@ -369,11 +378,11 @@ export default class SingleTodo extends Vue { // this.$q.notify('setPriority: ' + elem) } - askConfirmDelete() { + async askConfirmDelete() { const deletestr = this.$t('dialog.delete') const cancelstr = this.$t('dialog.cancel') - askConfirm(this.$q, this.$t('dialog.msg.titledeleteTask'), this.$t('dialog.msg.deleteTask').toString(), deletestr, cancelstr) + await askConfirm(this.$q, this.$t('dialog.msg.titledeleteTask'), this.$t('dialog.msg.deleteTask').toString(), deletestr, cancelstr) .then(ris => { console.log('ris', ris) if (ris) diff --git a/src/components/todos/SingleTodo/SingleTodo.vue b/src/components/todos/SingleTodo/SingleTodo.vue index 1c8a0ea..4531097 100644 --- a/src/components/todos/SingleTodo/SingleTodo.vue +++ b/src/components/todos/SingleTodo/SingleTodo.vue @@ -23,7 +23,7 @@ - @@ -33,7 +33,7 @@ -
+
div:nth-child(2) > div > input { + min-width: 30px; + width: 30px; } diff --git a/src/components/todos/SubMenus/SubMenus.ts b/src/components/todos/SubMenus/SubMenus.ts index 2f18756..ffde880 100644 --- a/src/components/todos/SubMenus/SubMenus.ts +++ b/src/components/todos/SubMenus/SubMenus.ts @@ -2,8 +2,8 @@ import Vue from 'vue' import { Component, Prop } from 'vue-property-decorator' import { ITodo } from '../../../model/index' -import { rescodes } from "@src/store/Modules/rescodes" -import { UserStore } from "@store" +import { rescodes } from '@src/store/Modules/rescodes' +import { UserStore } from '@store' @Component({ @@ -14,7 +14,7 @@ export default class SubMenus extends Vue { public selectPriority: [] = rescodes.selectPriority[UserStore.state.lang] @Prop({ required: false }) menuPopupTodo: any[] - @Prop({ required: false }) itemtodo: ITodo[] + @Prop({ required: false }) itemtodo: ITodo $q: any clickMenu (field) { @@ -25,6 +25,15 @@ export default class SubMenus extends Vue { this.$emit('setPriority', field) } + KeychangeProgress (e) { + if (this.itemtodo.progress > 100) { + this.itemtodo.progress = 100 + } + if (this.itemtodo.progress < 0) { + this.itemtodo.progress = 0 + } + } + create () { this.selectPriority = rescodes.selectPriority[UserStore.state.lang] diff --git a/src/components/todos/SubMenus/SubMenus.vue b/src/components/todos/SubMenus/SubMenus.vue index 73c166d..51de6d1 100644 --- a/src/components/todos/SubMenus/SubMenus.vue +++ b/src/components/todos/SubMenus/SubMenus.vue @@ -18,14 +18,28 @@ - + + - -
- {{$parent.percentageProgress}}% + +
+
+ + + + + + @@ -61,6 +75,6 @@ - diff --git a/src/components/todos/todo/todo.ts b/src/components/todos/todo/todo.ts index 020485d..de67750 100644 --- a/src/components/todos/todo/todo.ts +++ b/src/components/todos/todo/todo.ts @@ -43,6 +43,7 @@ export default class Todo extends Vue { itemDragEnd: any = null selrowid: number = 0 polling = null + mytypetransgroup: string = 'crossfade' fieldtochange: String [] = ['descr', 'completed', 'category', 'expiring_at', 'priority', 'id_prev', 'id_next', 'pos', 'enableExpiring', 'progress'] @@ -65,7 +66,10 @@ export default class Todo extends Vue { @Watch('$route.params.category') changecat() { // console.log('changecat') - this.load() + this.mytypetransgroup = 'nessuno' + this.updatetable().then(() => { + this.mytypetransgroup = 'crossfade' + }) } get todos_changed() { @@ -82,7 +86,7 @@ export default class Todo extends Vue { // this.$q.notify('Changed...') - // console.log('Todos.state.todos_changed CHANGED!', value, oldValue) + console.log('Todos.state.todos_changed CHANGED!', value, oldValue) this.updatetable(true) } @@ -600,12 +604,16 @@ export default class Todo extends Vue { } async updatetable(refresh: boolean = false) { - // console.log('updatetable') + console.log('updatetable') this.prevRecords = [...this.todos_arr] return await Todos.actions.getTodosByCategory(this.getCategory()) - .then(arrtemp => { + .then(arrris => { + + this.todos_arr = [] + + let arrtemp = [...arrris] arrtemp = _.orderBy(arrtemp, ['completed', 'priority', 'pos'], ['asc', 'desc', 'asc']) @@ -620,6 +628,8 @@ export default class Todo extends Vue { this.todos_arr = [...arrtemp] // make copy + console.log('AGGIORNA todos_arr') + }) } diff --git a/src/components/todos/todo/todo.vue b/src/components/todos/todo/todo.vue index eb221c3..1e61910 100644 --- a/src/components/todos/todo/todo.vue +++ b/src/components/todos/todo/todo.vue @@ -12,7 +12,7 @@
- +
diff --git a/src/js/storage.js b/src/js/storage.js index 64b4ffe..9905be7 100644 --- a/src/js/storage.js +++ b/src/js/storage.js @@ -86,7 +86,7 @@ export let idbKeyval = (() => { async setdata(table, value) { let req; - console.log('setdata', table, value) + // console.log('setdata', table, value) await withStore('readwrite', table, store => { req = store.put(value); }); @@ -103,7 +103,7 @@ export let idbKeyval = (() => { }); }, async clearalldata(table) { - console.log('clearalldata', table) + // console.log('clearalldata', table) return await withStore('readwrite', table, store => { store.clear(); }); diff --git a/src/statics/js/storage.js b/src/statics/js/storage.js index 8dcbc4b..f9b3841 100644 --- a/src/statics/js/storage.js +++ b/src/statics/js/storage.js @@ -105,7 +105,7 @@ let idbKeyval = (() => { }); }, async clearalldata(table) { - console.log('clearalldata', table) + // console.log('clearalldata', table) return await withStore('readwrite', table, store => { store.clear(); }); diff --git a/src/store/Api/Inst-Pao.ts b/src/store/Api/Inst-Pao.ts index 6afdf65..871d025 100644 --- a/src/store/Api/Inst-Pao.ts +++ b/src/store/Api/Inst-Pao.ts @@ -9,7 +9,7 @@ async function sendRequest(url: string, lang: string, mytok: string, method: str authHeader.append('Accept', 'application/json') if (url !== process.env.MONGODB_HOST + '/users/login') { authHeader.append('x-auth', mytok) - console.log('TOK PASSATO ALLA FETCH:', mytok) + // console.log('TOK PASSATO ALLA FETCH:', mytok) } // authHeader.append('accept-language', lang) diff --git a/src/store/Api/index.ts b/src/store/Api/index.ts index 7ab6b24..1edd040 100644 --- a/src/store/Api/index.ts +++ b/src/store/Api/index.ts @@ -55,11 +55,11 @@ export namespace ApiTool { return sendRequest(url, UserStore.state.lang, UserStore.state.x_auth_token, method, mydata) .then(resreceived => { - console.log('resreceived', resreceived) + // console.log('resreceived', resreceived) ricevuto = true let res = resreceived.clone() if (process.env.DEV) { - console.log('SendReq RES [', res.status, ']', res) + // console.log('SendReq RES [', res.status, ']', res) } UserStore.mutations.setResStatus(res.status) @@ -143,66 +143,73 @@ export namespace ApiTool { // let lang = multiparams[3] if (cmd === 'sync-todos') { - console.log('[Alternative] Syncing', cmd, table, method) + // console.log('[Alternative] Syncing', cmd, table, method) const headers = new Headers() headers.append('content-Type', 'application/json') headers.append('Accept', 'application/json') headers.append('x-auth', token) + let errorfromserver = false + let lettoqualcosa = false + // console.log('A1) INIZIO.............................................................') - await globalroutines(null, 'readall', table, null) + globalroutines(null, 'readall', table, null) .then(function (alldata) { - const myrecs = [...alldata] - // console.log('----------------------- LEGGO QUALCOSA ') - if (myrecs) { - for (let rec of myrecs) { - // console.log('syncing', table, '', rec.descr) - let link = process.env.MONGODB_HOST + '/todos' + const myrecs = [...alldata] + // console.log('----------------------- LEGGO QUALCOSA ') - if (method !== 'POST') - link += '/' + rec._id + const promises = myrecs.map(rec => { + // console.log('syncing', table, '', rec.descr) + let link = process.env.MONGODB_HOST + '/todos' - console.log(' [Alternative] ++++++++++++++++++ SYNCING !!!! ', rec.descr, table, 'FETCH: ', method, link, 'data:') + if (method !== 'POST') + link += '/' + rec._id - let lettoqualcosa = false + // console.log(' [Alternative] ++++++++++++++++++ SYNCING !!!! ', rec.descr, table, 'FETCH: ', method, link, 'data:') - // Insert/Delete/Update table to the server - fetch(link, { - method: method, - headers: headers, - cache: 'no-cache', - mode: 'cors', // 'no-cors', - body: JSON.stringify(rec) - }).then(resData => { - lettoqualcosa = true + // Insert/Delete/Update table to the server + return fetch(link, { + method: method, + headers: headers, + cache: 'no-cache', + mode: 'cors', // 'no-cors', + body: JSON.stringify(rec) + }) + .then(() => { + globalroutines(null, 'delete', table, null, rec._id) + lettoqualcosa = true + }) + .then(() => { + globalroutines(null, 'delete', 'swmsg', null, mystrparam) + }) + .catch(function (err) { + if (err.message === 'Failed to fetch') { + errorfromserver = true + } + // console.log(' [Alternative] !!!!!!!!!!!!!!! Error while sending data', err, errorfromserver, 'lettoqualcosa', lettoqualcosa) + }) + }) - return globalroutines(null, 'delete', 'swmsg', null, mystrparam) - }).then(() => globalroutines(null, 'delete', table, null, rec._id)) - .then((ris) => { - return globalroutines(null, 'write', 'config', { _id: 2, stateconn: 'online' }) - }) - .then(() => { - // console.log('Clear', 'swmsg', method) - GlobalStore.mutations.setStateConnection(lettoqualcosa ? 'online' : 'offline') - }) - .catch(function (err) { - if (err.message === 'Failed to fetch') { - // console.log('config WRITE OFFLINE') - globalroutines(null, 'write', 'config', { _id: 2, stateconn: 'offline' }) - } - console.log(' [Alternative] !!!!!!!!!!!!!!! Error while sending data', err) - GlobalStore.mutations.setStateConnection(lettoqualcosa ? 'online' : 'offline') - }) + // CALL ALL THE PROMISES + return Promise.all(promises).then(() => { + return (errorfromserver && !lettoqualcosa) + }).catch(err => { + return (errorfromserver && !lettoqualcosa) + }) - } - } - } - ).catch(e => { - console.log('ERROR:', e) + }).catch(e => { + // console.log('ERROR:', e) + return (errorfromserver && !lettoqualcosa) + }) + .then((errorfromserver) => { + // console.log('¨¨¨¨¨¨¨¨¨¨¨¨¨¨ errorfromserver:', errorfromserver) + const mystate = errorfromserver ? 'offline' : 'online' + globalroutines(null, 'write', 'config', { _id: 2, stateconn: mystate }) + GlobalStore.mutations.setStateConnection(mystate) }) - console.log(' [Alternative] A2) ?????????????????????????? ESCO DAL LOOP !!!!!!!!! err=') + // console.log(' [Alternative] A2) ?????????????????????????? ESCO DAL LOOP !!!!!!!!!') } } diff --git a/src/store/Modules/GlobalStore.ts b/src/store/Modules/GlobalStore.ts index 7d147ad..425fbb9 100644 --- a/src/store/Modules/GlobalStore.ts +++ b/src/store/Modules/GlobalStore.ts @@ -135,7 +135,7 @@ namespace Actions { mystate.isSubscribed = !(subscription === null) if (mystate.isSubscribed) { - console.log('User is already Subscribed!') + // console.log('User is already Subscribed!') } else { // Create a new subscription let convertedVapidPublicKey = urlBase64ToUint8Array(mykey) diff --git a/src/store/Modules/Todos.ts b/src/store/Modules/Todos.ts index 194801c..8e79f88 100644 --- a/src/store/Modules/Todos.ts +++ b/src/store/Modules/Todos.ts @@ -43,7 +43,7 @@ namespace Mutations { function setTodos_changed(state: ITodosState) { state.todos_changed++ mutations.setTestpao('Cambiato : ' + String(state.todos_changed)) - console.log('******************************* state.todos_changed', state.todos_changed) + console.log('******* state.todos_changed', state.todos_changed) } export const mutations = { @@ -195,16 +195,16 @@ namespace Actions { state.networkDataReceived = false let ris = await Api.SendReq(call, 'GET', null) - .then(({ resData, body, status }) => { + .then(({ res, body, status }) => { state.networkDataReceived = true - // console.log('******* UPDATE TODOS.STATE.TODOS !:', resData.todos) + // console.log('******* UPDATE TODOS.STATE.TODOS !:', res.todos) if (body.todos) { state.todos = [...body.todos] Todos.mutations.setTodos_changed() } - console.log('********** resData', resData, 'state.todos', state.todos, 'checkPending', checkPending) + console.log('********** res', res, 'state.todos', state.todos, 'checkPending', checkPending) // After Login will store into the indexedDb... @@ -216,8 +216,8 @@ namespace Actions { return { status } }) - console.log('ris : ', ris) - console.log('ris STATUS: ', ris.status) + // console.log('ris : ', ris) + // console.log('ris STATUS: ', ris.status) if (!Todos.state.networkDataReceived) { diff --git a/src/store/Modules/UserStore.ts b/src/store/Modules/UserStore.ts index da8f436..3309f98 100644 --- a/src/store/Modules/UserStore.ts +++ b/src/store/Modules/UserStore.ts @@ -111,7 +111,7 @@ namespace Mutations { if (!state.tokens) { state.tokens = [] } - state.tokens.push({ access: 'auth ' + navigator.userAgent, token: data.x_auth_token, data_login: new Date() }) + state.tokens.push({ access: 'auth ' + navigator.userAgent, token: data.x_auth_token, data_login: new Date() }) } function setServerCode(state: IUserState, num: number) { @@ -227,7 +227,7 @@ namespace Actions { }) .catch((error) => { UserStore.mutations.setErrorCatch(error) - return UserStore.getters.getServerCode + return { code: UserStore.getters.getServerCode, msg: error } }) } @@ -366,7 +366,7 @@ namespace Actions { console.log('MYLANG = ' + state.lang) - await navigator.serviceWorker.ready + return await navigator.serviceWorker.ready .then(function (swreg) { const sub = swreg.pushManager.getSubscription() return sub @@ -408,7 +408,26 @@ namespace Actions { Mutations.mutations.setServerCode(myres.status) - if (myres.status === 200) { + if (myres.status !== 200) { + return Promise.reject(rescodes.ERR_GENERICO) + } + return { res, body } + + }).then(({ res, body }) => { + + if (myres.status === serv_constants.RIS_CODE__HTTP_FORBIDDEN_INVALID_TOKEN) { + if (process.env.DEV) { + console.log('CODE = ' + body.code) + } + return body.code + } else if (res.status !== 200) { + if (process.env.DEV) { + console.log('CODE = ' + body.code) + } + return body.code + } + + if (res.status === 200) { let myuser: IUserState = body.usertosend if (myuser) { let userId = myuser.userId @@ -436,24 +455,19 @@ namespace Actions { localStorage.setItem(rescodes.localStorage.isLogged, String(true)) localStorage.setItem(rescodes.localStorage.verified_email, String(verified_email)) - setGlobal(true) + } + } - // dispatch('storeUser', authData); - // dispatch('setLogoutTimer', myres.data.expiresIn); - return rescodes.OK - } else { - return rescodes.ERR_GENERICO - } - } else if (myres.status === serv_constants.RIS_CODE__HTTP_FORBIDDEN_INVALID_TOKEN) { - if (process.env.DEV) { - console.log('CODE = ' + body.code) - } - return body.code + return rescodes.OK + + }).then(code => { + if (code === rescodes.OK) { + return setGlobal(true) + .then(() => { + return code + }) } else { - if (process.env.DEV) { - console.log('CODE = ' + body.code) - } - return body.code + return code } }) .catch((error) => { @@ -507,7 +521,6 @@ namespace Actions { GlobalStore.mutations.setCategorySel(localStorage.getItem(rescodes.localStorage.categorySel)) - await GlobalStore.actions.loadAfterLogin() .then(() => { Todos.actions.dbLoadTodo(true) diff --git a/src/views/login/requestresetpwd.vue b/src/views/login/requestresetpwd.vue index 14033e2..793e5f1 100644 --- a/src/views/login/requestresetpwd.vue +++ b/src/views/login/requestresetpwd.vue @@ -104,8 +104,8 @@ if (ris.code === serv_constants.RIS_CODE_OK) this.emailsent = true; this.$q.loading.hide(); - }).catch(error => { - console.log("ERROR = " + error); + }).catch(err => { + console.log("ERROR = " + err.error); this.$q.loading.hide(); });