refactor: split ui into modules (resources, domains, infra, costs, modals)
This commit is contained in:
@@ -0,0 +1,171 @@
|
||||
/* =========================
|
||||
RESOURCE MODAL
|
||||
========================= */
|
||||
|
||||
window.openCreate = function(){
|
||||
|
||||
document.getElementById("modalTitle").innerText="Create Resource"
|
||||
|
||||
document.getElementById("resource_id").value=""
|
||||
|
||||
document.getElementById("name").value=""
|
||||
document.getElementById("produkt").value=""
|
||||
document.getElementById("provider").value=""
|
||||
document.getElementById("art").value=""
|
||||
document.getElementById("cpu").value=""
|
||||
document.getElementById("ram").value=""
|
||||
document.getElementById("disk").value=""
|
||||
document.getElementById("os").value=""
|
||||
|
||||
document.getElementById("kosten_monat").value=""
|
||||
document.getElementById("kosten_jahr").value=""
|
||||
|
||||
document.getElementById("providername").value=""
|
||||
document.getElementById("ipv6_net").value=""
|
||||
|
||||
document.getElementById("bestelldatum").value=""
|
||||
document.getElementById("kuendbar_ab").value=""
|
||||
document.getElementById("kuendigungsdatum").value=""
|
||||
|
||||
document.getElementById("status").value="aktiv"
|
||||
document.getElementById("bemerkung").value=""
|
||||
|
||||
document.getElementById("resourceModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.openEdit = function(resource){
|
||||
|
||||
document.getElementById("modalTitle").innerText="Edit Resource"
|
||||
|
||||
document.getElementById("resource_id").value=resource.id
|
||||
|
||||
Object.keys(resource).forEach(k=>{
|
||||
const el=document.getElementById(k)
|
||||
if(el) el.value=resource[k] || ""
|
||||
})
|
||||
|
||||
document.getElementById("resourceModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.closeModal = function(){
|
||||
|
||||
document.getElementById("resourceModal").style.display="none"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.openServerDetail = async function(resource){
|
||||
|
||||
const mappings = await api(API+"/domainmap")
|
||||
|
||||
let html = `<b>${resource.name}</b><br><br>`
|
||||
|
||||
const domains = mappings.filter(m => m.resource_id == resource.id)
|
||||
|
||||
domains.forEach(d=>{
|
||||
html += `<div class="ip">🌐 ${d.domain_name}</div>`
|
||||
})
|
||||
|
||||
document.getElementById("serverDetailContent").innerHTML = html
|
||||
document.getElementById("serverDetailModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.closeServerDetail = function(){
|
||||
|
||||
document.getElementById("serverDetailModal").style.display="none"
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* =========================
|
||||
DOMAIN MODAL
|
||||
========================= */
|
||||
|
||||
window.openDomainCreate = function(){
|
||||
|
||||
document.getElementById("domainModalTitle").innerText="Create Domain"
|
||||
|
||||
document.getElementById("domain_id").value=""
|
||||
|
||||
document.getElementById("domain_name").value=""
|
||||
document.getElementById("domain_provider").value=""
|
||||
document.getElementById("domain_ip").value=""
|
||||
document.getElementById("domain_cost").value=""
|
||||
document.getElementById("domain_notes").value=""
|
||||
|
||||
document.getElementById("domainModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.openDomainEdit = function(d){
|
||||
|
||||
document.getElementById("domainModalTitle").innerText="Edit Domain"
|
||||
|
||||
document.getElementById("domain_id").value=d.id
|
||||
|
||||
document.getElementById("domain_name").value=d.domain_name || ""
|
||||
document.getElementById("domain_provider").value=d.provider || ""
|
||||
document.getElementById("domain_ip").value=d.ip_address || ""
|
||||
document.getElementById("domain_cost").value=d.yearly_cost || ""
|
||||
document.getElementById("domain_notes").value=d.notes || ""
|
||||
|
||||
document.getElementById("domainModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.closeDomainModal = function(){
|
||||
|
||||
document.getElementById("domainModal").style.display="none"
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* =========================
|
||||
SUBDOMAIN MODAL
|
||||
========================= */
|
||||
|
||||
window.openSubCreate = function(domainId){
|
||||
|
||||
document.getElementById("sub_domain_id").value=domainId
|
||||
|
||||
document.getElementById("sub_name").value=""
|
||||
document.getElementById("sub_ip").value=""
|
||||
|
||||
document.getElementById("subdomainModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.closeSubModal = function(){
|
||||
|
||||
document.getElementById("subdomainModal").style.display="none"
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* =========================
|
||||
IP MODAL
|
||||
========================= */
|
||||
|
||||
window.openIPManager = function(resourceId){
|
||||
|
||||
document.getElementById("ip_resource_id").value=resourceId
|
||||
|
||||
document.getElementById("ipModal").style.display="block"
|
||||
|
||||
}
|
||||
|
||||
|
||||
window.closeIPModal = function(){
|
||||
|
||||
document.getElementById("ipModal").style.display="none"
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user