mirror of
https://github.com/itsdave-de/msp.git
synced 2025-05-06 15:35:12 +02:00
Link IP Addresses and IT Objects to doctypes
This commit is contained in:
parent
b49b98851d
commit
571e644afb
@ -14,11 +14,6 @@ frappe.ui.form.on('IP Network', {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
},
|
|
||||||
onload_post_render(frm) {
|
|
||||||
getUsedIpsInNetwork(frm);
|
|
||||||
},
|
|
||||||
after_save(frm) {
|
|
||||||
getUsedIpsInNetwork(frm);
|
getUsedIpsInNetwork(frm);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -32,8 +27,20 @@ function getUsedIpsInNetwork(frm) {
|
|||||||
response?.message?.forEach((element) => {
|
response?.message?.forEach((element) => {
|
||||||
tableBody += `
|
tableBody += `
|
||||||
<tr>
|
<tr>
|
||||||
<td style="border: 1px solid #000; padding: 0.5rem 1rem; text-align: left;">${element?.ip_address ?? "-"}</td>
|
<td
|
||||||
<td style="border: 1px solid #000; padding: 0.5rem 1rem; text-align: left;">${element?.title ?? "-"}</td>
|
style="border: 1px solid #000; padding: 0.5rem 1rem; text-align: left; ${element?.ip_address_name ? 'cursor: pointer;' : ''}"
|
||||||
|
data-doctype-name="${element?.ip_address_name ?? ''}"
|
||||||
|
data-doctype-type="IP Address"
|
||||||
|
>
|
||||||
|
${element?.ip_address ?? "-"}
|
||||||
|
</td>
|
||||||
|
<td
|
||||||
|
style="border: 1px solid #000; padding: 0.5rem 1rem; text-align: left; ${element?.ip_address_name ? 'cursor: pointer;' : ''}"
|
||||||
|
data-doctype-name="${element?.it_object_name ?? ''}"
|
||||||
|
data-doctype-type="IT Object"
|
||||||
|
>
|
||||||
|
${element?.title ?? "-"}
|
||||||
|
</td>
|
||||||
<td style="border: 1px solid #000; padding: 0.5rem 1rem; text-align: left;">${element?.type ?? "-"}</td>
|
<td style="border: 1px solid #000; padding: 0.5rem 1rem; text-align: left;">${element?.type ?? "-"}</td>
|
||||||
</tr>
|
</tr>
|
||||||
`;
|
`;
|
||||||
@ -55,5 +62,16 @@ function getUsedIpsInNetwork(frm) {
|
|||||||
` : 'No IPs used for this network';
|
` : 'No IPs used for this network';
|
||||||
|
|
||||||
container.innerHTML = table;
|
container.innerHTML = table;
|
||||||
|
|
||||||
|
document.querySelectorAll('[data-doctype-name]').forEach(element => {
|
||||||
|
element.addEventListener('click', (event) => {
|
||||||
|
event.preventDefault();
|
||||||
|
if (event.target.dataset?.doctypeName === '') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
frappe.set_route('Form', event.target.dataset?.doctypeType, event.target.dataset?.doctypeName);
|
||||||
|
});
|
||||||
|
});
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,9 @@ class IPNetwork(Document):
|
|||||||
result = []
|
result = []
|
||||||
result = frappe.db.sql("""
|
result = frappe.db.sql("""
|
||||||
SELECT
|
SELECT
|
||||||
|
ipa.name as ip_address_name,
|
||||||
ipa.ip_address,
|
ipa.ip_address,
|
||||||
|
ito.name as it_object_name,
|
||||||
ito.title,
|
ito.title,
|
||||||
ito.type
|
ito.type
|
||||||
FROM `tabIP Address` ipa
|
FROM `tabIP Address` ipa
|
||||||
|
Loading…
x
Reference in New Issue
Block a user