From 6f848f9fda0f9bd45e0f77c6b7312fc51ab1cbc3 Mon Sep 17 00:00:00 2001 From: Arthur Lu Date: Tue, 10 Jan 2023 16:49:57 -0800 Subject: [PATCH] add logic for bus select and device limit --- scripts/config.js | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/scripts/config.js b/scripts/config.js index 6f219f6..d9b8266 100644 --- a/scripts/config.js +++ b/scripts/config.js @@ -60,6 +60,32 @@ async function populateForm (node, type, vmid) { addDiskLine("disks", `${prefix}${element}`, disks[element].includes("media=cdrom") ? "images/resources/disk.svg" : "images/resources/drive.svg", `${type} ${element}`, disks[element]); }); } + + let options = { + lxc: { + mp: {name: "MP", limit: 255} + }, + qemu: { + sata: {name: "SATA", limit: 5} + } + } + + let addDiskBus = document.querySelector("#add-disk #bus"); + Object.keys(options[type]).forEach(element => { + addDiskBus.add(new Option(options[type][element].name, element)); + }); + let def = Object.keys(options[type])[0]; + addDiskBus.value = def; + let addDiskDevice = document.querySelector("#add-disk #device"); + addDiskDevice.max = options[type][def].limit; + + addDiskBus.addEventListener("change", () => { + let value = document.querySelector("#add-disk #bus").value; + document.querySelector("#add-disk #device").max = options[type][value].limit + }); + + let addDiskStorage = document.querySelector("#add-disk #storage"); + let addDiskSize = document.querySelector("#add-disk #size"); } function addMetaLine (fieldset, labelText, inputAttr) {