diff --git a/index.html b/index.html index 3819e89..5b3feee 100644 --- a/index.html +++ b/index.html @@ -53,6 +53,29 @@ serverDataContainer.appendChild(errDiv); } + function parse_storage(num){ + num /= 1024; + if (num < 1024){ + return num.toFixed(2) + " MB"; + } + + num /= 1024; + if (num < 1024){ + return num.toFixed(2) + " GB"; + } + + num /= 1024; + if (num < 1024){ + return num.toFixed(2) + " TB"; + } + } + + function add_bar(serverCard){ + let bar = document.createElement('div'); + bar.innerHTML = "
" + serverCard.appendChild(bar); + } + function displayServerData(data) { // 绘制 ------------------- let serverDataContainer = document.getElementById('server-data'); @@ -73,11 +96,14 @@ let serverCard = document.createElement('div'); serverCard.classList.add('card'); + // 标题 let serverName = document.createElement('div'); serverName.classList.add('server-name'); let updateFlag = serverData[key].updated ? '' : ' - Not updated -'; serverName.textContent = key + updateFlag; serverCard.appendChild(serverName); + // 分割线 + add_bar(serverCard); // 存储空间 if ('storage_info_list' in serverData[key]){ @@ -86,13 +112,23 @@ for (let i = 0; i < serverData[key].storage_info_list.length; i++) { let targetPath = serverData[key].storage_info_list[i].path; - let totalStorage = serverData[key].storage_info_list[i].total; - let availableStorage = serverData[key].storage_info_list[i].available; - storageInfo.innerHTML += targetPath + " : " + availableStorage + " / " + totalStorage + "
"; + let totalNum = serverData[key].storage_info_list[i].total + let availableNum = serverData[key].storage_info_list[i].available + let totalStorage = parse_storage(totalNum); + let availableStorage = parse_storage(totalNum - availableNum); + let tmpColor = "green"; + if (availableNum / totalNum < 0.1) + tmpColor = "red"; + else if (availableNum / totalNum < 0.3) + tmpColor = "orange"; + storageInfo.innerHTML += '' + targetPath + " : " + availableStorage + " / " + totalStorage + "
"; } serverCard.appendChild(storageInfo); } + // 分割线 + add_bar(serverCard); // gpu if ('gpu_info_list' in serverData[key]){ serverData[key].gpu_info_list.forEach(function(gpu){