summaryrefslogtreecommitdiff
path: root/pse-dashboard/src/api/pse-squared.js
diff options
context:
space:
mode:
authorOrangerot <purple@orangerot.dev>2024-06-19 00:14:49 +0200
committerOrangerot <purple@orangerot.dev>2024-06-27 12:11:14 +0200
commit5b8851b6c268d0e93c158908fbfae9f8473db5ff (patch)
tree7010eb85d86fa2da06ea4ffbcdb01a685d502ae8 /pse-dashboard/src/api/pse-squared.js
Initial commitHEADmain
Diffstat (limited to 'pse-dashboard/src/api/pse-squared.js')
-rw-r--r--pse-dashboard/src/api/pse-squared.js61
1 files changed, 61 insertions, 0 deletions
diff --git a/pse-dashboard/src/api/pse-squared.js b/pse-dashboard/src/api/pse-squared.js
new file mode 100644
index 0000000..641542b
--- /dev/null
+++ b/pse-dashboard/src/api/pse-squared.js
@@ -0,0 +1,61 @@
+import useGPodder from '@/api/gpodder.js'
+import { useLogger } from '@/logger.js'
+
+const logger = useLogger();
+
+function errorHandler(error) {
+ if (error.response) {
+ // The request was made and the server responded with a status code
+ // that falls out of the range of 2xx
+ console.log(error.response.data);
+ console.log(error.response.status);
+ console.log(error.response.headers);
+
+ switch (error.response.status) {
+ case 400: logger.badRequestError(); break;
+ case 401: logger.unauthorizedError(); break;
+ case 404: logger.notFoundError(); break;
+ }
+
+ } else if (error.request) {
+ // The request was made but no response was received
+ // `error.request` is an instance of XMLHttpRequest in the browser and an instance of
+ // http.ClientRequest in node.js
+ logger.connectionLostError()
+
+ console.log(error.request);
+ } else {
+ // Something happened in setting up the request that triggered an Error
+ console.log('Error', error.message);
+ logger.append({
+ type: "danger",
+ message: err.message
+ });
+ }
+}
+
+const backendURL = import.meta.env.VITE_BACKEND_URL || "http://localhost:8080";
+console.log("Backend-URL", backendURL);
+
+const pseSquared = useGPodder({
+ // baseURL: process.env.VUE_APP_BASE_URL || "http://localhost:8080",
+ // baseURL: "http://api.pse-squared.de",
+ baseURL: backendURL,
+ throwHandler: error => errorHandler(error)
+});
+
+export const {
+ changePassword,
+ deleteAccount,
+ forgotPassword,
+ getEpisodeActions,
+ getTitles,
+ login,
+ logout,
+ postEpisodeActions,
+ postSubscriptions,
+ putSubscriptions,
+ register,
+ resetPassword,
+} = pseSquared;
+