Spinner eingebaut

Fehlermeldungen pro TAB getrennt
This commit is contained in:
2024-08-28 15:28:37 +00:00
parent 41d252d564
commit 080a5dad1c
16 changed files with 124 additions and 37 deletions
+20 -12
View File
@@ -2,10 +2,10 @@ import * as utils from "./chart_utilities.js";
import { DateTime } from './luxon.min.js'
import * as map from "./map.js";
import {fetchfromserver, showError} from "./chart_utilities.js";
import * as spin from './spinner.js'
// table to distribute the different charts
export const tabtable = [
{id: 'kartentab', type: 'map', container: 'map', func: map.showMap, div: null, dformat: null},
{id: 'maptab', type: 'map', container: 'map', func: map.showMap, div: null, dformat: null},
{id: 'livetab', type: 'live', container: 'dlive', func: showChart, div: 2, dformat: "dd.LL - HH:mm:ss"},
{id: 'houravgtab', type: 'havg', container: 'dhour', func: showChart, div: 1, dformat: "dd.LL - HH'h'"},
{id: 'dayavgtab', type: 'davg', container: 'dday', func: showChart, div: 1, dformat: "dd.LL"},
@@ -13,7 +13,11 @@ export const tabtable = [
{id: 'ldentab', type: 'lden', container: 'dlden', func: showChart, div: 1, dformat: "dd.LL"},
]
export async function showChart(params, typ, container) {
export async function showChart(params, index) {
let container = tabtable[index].container
let typ = tabtable[index].type
let id = tabtable[index].id
function form() {
for (let item of tabtable) {
if (item.type === typ) {
@@ -60,6 +64,10 @@ export async function showChart(params, typ, container) {
url += `&peak=${params.peak}`
}
console.log(`fetch ${typ} from server ${url}`)
let errdiv = document.querySelector(`#${id}err`)
errdiv.innerHTML = ''
let erg = await fetchfromserver(url)
if(sysparams.category === 'noise') {
utils.showTabs()
@@ -93,14 +101,12 @@ export async function showChart(params, typ, container) {
})
return {error: false}
} else {
if(typ === 'live') {
showError(erg.err)
}
return {error: erg.err}
errdiv.innerHTML = erg.err
return {error: true}
}
}
export const loadAll = async (params, start = 2) => {
export const loadAll = async (params, start = 2, curtab = '') => {
console.log('now load all in Background')
let messzeit = DateTime.now()
if (start == 0) {
@@ -109,10 +115,12 @@ export const loadAll = async (params, start = 2) => {
}
if (params.sid !== -1) {
for (let i = start; i < tabtable.length; i++) {
let err = await showChart(params, tabtable[i].type, tabtable[i].container)
if (err.error) {
if(tabtable[i].type !== 'live') {
break;
let err = await showChart(params, i)
if(tabtable[i].id === curtab) {
spin.spinner.stop()
let errtxt = document.querySelector(`#${tabtable[i].id}err`).innerHTML
if (errtxt !== '') {
showError(errtxt)
}
}
}