From f915d23ac5bcfbc1ff1b7b86f649c97b190ee347 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ole=20Volds=C3=A6ter?= <ole.voldsater@uib.no> Date: Fri, 5 Feb 2021 14:00:17 +0100 Subject: [PATCH] =?UTF-8?q?re=20meta#244=20feilh=C3=A5ndtering=20i=20front?= =?UTF-8?q?end=20ifm.=20ajax-kall?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/src/App.vue b/src/App.vue index 17ed8727..935e27b0 100644 --- a/src/App.vue +++ b/src/App.vue @@ -114,6 +114,26 @@ function navigate_to_search(self, query) { error: "Vi fant ingen resultater for '" + decodeURIComponent(query) + "'. (Søkeforlag kommer i en senere oppatering av Ordbøkene)" } } + }) + .catch(function(error){ + if (error.response && error.response.status == 400) { + self.article = { + lemmas: [], + error: "Søkeuttrykket inneholder feil" + } + } else if (error.response) { + self.article = { + lemmas: [], + error: "Noe gikk galt på serversiden" + } + } else { + self.article = { + lemmas: [], + error: "Nettverksproblemer, prøv igjen" + } + } + }) + .then(function(_){ self.waiting_for_articles = false history.replaceState({article: self.article, search_results: self.search_results, lang: self.lang}, '') }) @@ -123,6 +143,27 @@ function navigate_to_word(self, word) { axios.get(self.api_pref + 'suggest?q=' + word) .then(function(response){ self.search_results = response.data.filter(result => result.match.length == word.length) + if (! self.search_results.length) { + self.article = { + lemmas: [], + error: "Ordet '" + decodeURIComponent(word) + "' finnes ikke i ordbøkene" + } + } + }) + .catch(function(error){ + if (error.response) { + self.article = { + lemmas: [], + error: "Noe gikk galt på serversiden" + } + } else { + self.article = { + lemmas: [], + error: "Nettverksproblemer, prøv igjen" + } + } + }) + .then(function(_){ self.waiting_for_articles = false history.replaceState({article: self.article, search_results: self.search_results, lang: self.lang}, '') }) @@ -223,6 +264,13 @@ export default { axios.get(api_endpoint + '/nob/article/78569').then(function(response){ self.monthly_nn = Object.assign(response.data, {dictionary: 'nob'}) }) + }).catch(function(_){ + self.article = { + lemmas: [], + error: "Et nettverksproblem hindret lasting av siden. Prøv å laste siden på nytt" + } + self.waiting_for_metadata = false + self.waiting_for_articles = false }) }, watch: { -- GitLab