aboutsummaryrefslogtreecommitdiff
path: root/src/js/arching-kaos-fetch.js
diff options
context:
space:
mode:
authorkaotisk <kaotisk@arching-kaos.org>2024-11-29 16:23:39 +0200
committerkaotisk <kaotisk@arching-kaos.org>2024-11-29 16:23:39 +0200
commitafcedd44615d20423d58f4d9c9d8cfa3838a54d4 (patch)
treee16cd7f2eb4040f7b237baa45aa3f8f80516dcc4 /src/js/arching-kaos-fetch.js
parent084e3ce6efc49c2d43ce9b44d96e430f8057848e (diff)
downloadarching-kaos-web-ui-afcedd44615d20423d58f4d9c9d8cfa3838a54d4.tar.gz
arching-kaos-web-ui-afcedd44615d20423d58f4d9c9d8cfa3838a54d4.tar.bz2
arching-kaos-web-ui-afcedd44615d20423d58f4d9c9d8cfa3838a54d4.zip
Major refactoring
Diffstat (limited to 'src/js/arching-kaos-fetch.js')
-rw-r--r--src/js/arching-kaos-fetch.js52
1 files changed, 33 insertions, 19 deletions
diff --git a/src/js/arching-kaos-fetch.js b/src/js/arching-kaos-fetch.js
index 523baff..15394b2 100644
--- a/src/js/arching-kaos-fetch.js
+++ b/src/js/arching-kaos-fetch.js
@@ -5,7 +5,10 @@
* @license magnet:?xt=urn:btih:0b31508aeb0634b347b8270c7bee4d411b5d4109&dn=agpl-3.0.txt AGPL v3.0
*
*/
-function archingKaosFetchJSON( url, callback, params ){
+import { archingKaosLog } from "./arching-kaos-log.js";
+import { httpProgressPlaceholder, progressPlaceholder } from "./app.js";
+
+export function archingKaosFetchJSON( url, callback, params ){
const request = new XMLHttpRequest();
request.addEventListener("load", ()=>{
var json = JSON.parse(request.response);
@@ -16,38 +19,49 @@ function archingKaosFetchJSON( url, callback, params ){
}
});
request.addEventListener("error", ()=>{
- console.log("An error occured.");
+ // console.log("An error occured.");
});
request.addEventListener("progress", (event)=>{
- if (event.lengthComputable && progressPlaceholder){
- httpProgressPlaceholder.value = (event.loaded / event.total) * 100;
+ if (event.lengthComputable && progressPlaceholder()){
+ httpProgressPlaceholder().value = (event.loaded / event.total) * 100;
} else {
- httpProgressPlaceholder.value = 0;
- console.log("Supposingly zeroed progressPlaceholder");
+ httpProgressPlaceholder().value = 0;
+ // console.log("Supposingly zeroed progressPlaceholder");
}
});
request.addEventListener("abort", ()=>{
- console.log("Request aborted.");
+ // console.log("Request aborted.");
});
request.open("GET", url);
request.send();
}
-async function archingKaosFetchText( url, callback ){
- return fetch(url, {
- method:'GET',
- headers:{
- Accept: 'application/json'
+export async function archingKaosFetchText( url, callback, params ){
+ const request = new XMLHttpRequest();
+ request.addEventListener("load", ()=>{
+ var text = request.response;
+ if(request.status !== 404){
+ callback(text, params);
+ } else {
+ archingKaosLog(`ERROR ${request.status} while loading ${url}`);
}
- }).then(response=>{
- if(response.ok){
- response.text().then(text=>{
- return callback(text);
- })
+ });
+ request.addEventListener("error", ()=>{
+ // console.log("An error occured.");
+ });
+ request.addEventListener("progress", (event)=>{
+ if (event.lengthComputable && progressPlaceholder()){
+ httpProgressPlaceholder().value = (event.loaded / event.total) * 100;
} else {
- console.log(e);
+ httpProgressPlaceholder.value = 0;
+ // console.log("Supposingly zeroed progressPlaceholder");
}
- })
+ });
+ request.addEventListener("abort", ()=>{
+ // console.log("Request aborted.");
+ });
+ request.open("GET", url);
+ request.send();
}
// @license-end