1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
'use strict';
import { showDiv, hideDiv } from './helpers.js';
import { ConsoleLog } from './app_functions.js';
import { showAlertModal, showLoader, hideLoader } from './overlays.js';
const api_base = '/api';
const errorMessages = {
'': 'Unbekannter Fehler',
'REQUEST_NOT_FOUND': 'Ungültige Reise',
'JOURNEY_NOT_FOUND': 'Verbindung nicht verfügbar',
'TRY_AGAIN_LATER': 'Versuche es zu einem späteren Zeitpunkt erneut',
'MISSING_VALUES': 'Benötigte Felder nicht ausgefüllt',
'INVALID_DATE': 'Ungültiges Datum',
'UNKNOWN_FROM': 'Unbekannter Abfahrtspunkt',
'UNKNOWN_TO': 'Unbekannter Ankunftspunkt',
'TOO_CLOSE': 'Abfahrts- und Ankunftspunkt zu nah',
'NO_TRIPS': 'Keine Verbindungen gefunden',
};
export const get = async (endpoint, params, noLoader) => {
if (!noLoader) showLoader();
let data;
try {
data = await fetch(api_base+endpoint, {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify(params)
}).then(resp => resp.json());
} catch(e) {
data = {
msg: "Failed to fetch. Please check your network connection.",
};
}
if (!noLoader) hideLoader();
if (data.status !== 'success') {
showAlertModal(errorMessages[data.msg] || data.msg);
throw new Error(data.msg);
} else {
return data.data;
}
}