diff options
author | korelstar <korelstar@users.noreply.github.com> | 2021-06-27 16:15:06 +0300 |
---|---|---|
committer | korelstar <korelstar@users.noreply.github.com> | 2021-06-27 16:29:47 +0300 |
commit | 7976ac032dc26c4956073bdc025248facbc3cef2 (patch) | |
tree | 6b65be56720bac1ea9d80e9742217dee0405f0b4 | |
parent | 1e54f549dc636c85de96b82e360d77df65c0a14c (diff) |
error handling: send errorType
-rw-r--r-- | lib/Service/Note.php | 7 | ||||
-rw-r--r-- | src/NotesService.js | 6 | ||||
-rw-r--r-- | src/components/Note.vue | 4 | ||||
-rw-r--r-- | src/store/notes.js | 2 |
4 files changed, 10 insertions, 9 deletions
diff --git a/lib/Service/Note.php b/lib/Service/Note.php index 29aa88f1..a7979a51 100644 --- a/lib/Service/Note.php +++ b/lib/Service/Note.php @@ -108,7 +108,7 @@ class Note { $data['readonly'] = $this->getReadOnly(); } $data['error'] = false; - $data['errorMessage'] = ''; + $data['errorType'] = ''; if (!in_array('content', $exclude)) { try { $data['content'] = $this->getContent(); @@ -117,10 +117,11 @@ class Note { 'Could not read content for file: '.$this->file->getPath(), [ 'exception' => $e ] ); - $message = $this->util->l10n->t('Error').': ('.$this->file->getName().') '.$e->getMessage(); + $message = $this->util->l10n->t('Error').': '.get_class($e); $data['content'] = $message; $data['error'] = true; - $data['errorMessage'] = $message; + $data['errorType'] = get_class($e); + $data['readonly'] = true; } } return $data; diff --git a/src/NotesService.js b/src/NotesService.js index 4d166cf5..f949ea55 100644 --- a/src/NotesService.js +++ b/src/NotesService.js @@ -77,8 +77,8 @@ export const fetchNotes = () => { if (response.data.noteIds !== null) { store.dispatch('updateNotes', { noteIds: response.data.noteIds, notes: response.data.notesData }) } - if (response.data.errorMessage) { - showError(t('notes', 'Error from Nextcloud server: {msg}', { msg: response.data.errorMessage })) + if (response.data.error) { + showError(t('notes', 'Error from Nextcloud server: {msg}', { msg: response.data.errorType })) } else { store.commit('setSyncETag', response.headers.etag) store.commit('setSyncLastModified', response.headers['last-modified']) @@ -115,7 +115,7 @@ export const fetchNote = noteId => { console.error(err) const msg = t('notes', 'Fetching note {id} has failed.', { id: noteId }) store.commit('setNoteAttribute', { noteId, attribute: 'error', value: true }) - store.commit('setNoteAttribute', { noteId, attribute: 'errorMessage', value: msg }) + store.commit('setNoteAttribute', { noteId, attribute: 'errorType', value: msg }) return store.getter.getNote(noteId) } }) diff --git a/src/components/Note.vue b/src/components/Note.vue index 62caa563..f8df87d6 100644 --- a/src/components/Note.vue +++ b/src/components/Note.vue @@ -215,8 +215,8 @@ export default { this.preview = false fetchNote(parseInt(this.noteId)) .then((note) => { - if (note.errorMessage) { - showError(note.errorMessage) + if (note.error) { + showError(t('notes', 'Error from Nextcloud server: {msg}', { msg: note.errorType })) } this.startRefreshTimer() }) diff --git a/src/store/notes.js b/src/store/notes.js index 7d2897eb..45395f88 100644 --- a/src/store/notes.js +++ b/src/store/notes.js @@ -84,7 +84,7 @@ const mutations = { note.etag = updated.etag Vue.set(note, 'unsaved', updated.unsaved) Vue.set(note, 'error', updated.error) - Vue.set(note, 'errorMessage', updated.errorMessage) + Vue.set(note, 'errorType', updated.errorType) } } else { state.notes.push(updated) |