92 lines
2.2 KiB
JavaScript
92 lines
2.2 KiB
JavaScript
var list=[];
|
|
const dns_template = document.getElementById('dns');
|
|
const dns_items = document.getElementById('dns_items');
|
|
function delete_item(item)
|
|
{
|
|
dns_items.removeChild(item.root);
|
|
for( var i = 0; i < arr.length; i++){
|
|
|
|
if ( list[i] === item) {
|
|
list.splice(i, 1);
|
|
break;
|
|
}
|
|
}
|
|
fetch(`api/remove?id=${item.id}`).then(e=>e.text()).then(e=>{
|
|
//removed entry
|
|
});
|
|
}
|
|
function save(item)
|
|
{
|
|
|
|
var data={
|
|
Id: item.id,
|
|
Key: item.key.value,
|
|
Value: item.key.value,
|
|
Type: item.type.value,
|
|
TTL: item.ttl.value,
|
|
};
|
|
fetch("api/save",{
|
|
method: "POST",
|
|
mode: "cors",
|
|
cache: "no-cache",
|
|
credentials: "same-origin",
|
|
headers: {
|
|
"Content-Type": "application/json",
|
|
},
|
|
redirect: "follow",
|
|
referrer: "no-referrer",
|
|
body: JSON.stringify(data)
|
|
}).then(e=>e.text()).then(e=>{});
|
|
}
|
|
function saveAll()
|
|
{
|
|
list.forEach(e=>{
|
|
save(e);
|
|
});
|
|
}
|
|
function add()
|
|
{
|
|
fetch('api/new').then(e=e.text()).then(e=>{
|
|
load();
|
|
});
|
|
}
|
|
function load()
|
|
{
|
|
list=[];
|
|
dns_items.innerHTML="";
|
|
|
|
|
|
fetch("api/entries.json").then(e=>e.json()).this(e=>{
|
|
var dns_entry = dns_template.content.cloneNode(true);
|
|
var key = dns_entry.getElementById('key');
|
|
key.value = e.Key;
|
|
var value = dns_entry.getElementById('value');
|
|
value.value= e.Value;
|
|
var type = dns_entry.getElementById('type');
|
|
type.value = e.Type;
|
|
var ttl = dns_entry.getElementById('ttl');
|
|
ttl.value = e.TTL;
|
|
var saveBtn = dns_entry.getElementById('save');
|
|
var deleteBtn = dns_entry.getElementById('delete');
|
|
var item={
|
|
id: e.Id,
|
|
root: dns_entry,
|
|
key: key,
|
|
value: value,
|
|
type: type,
|
|
ttl: ttl,
|
|
saveBtn: saveBtn,
|
|
deleteBtn: deleteBtn
|
|
|
|
};
|
|
list.push(item);
|
|
saveBtn.onclick += (sender,e)=>{
|
|
save(item);
|
|
};
|
|
deleteBtn.onclick += (sender,e)=>{
|
|
delete_item(item);
|
|
};
|
|
dns_items.appendChild(dns_entry);
|
|
});
|
|
}
|
|
load(); |