diff options
Diffstat (limited to 'dnscache-model.lua')
-rw-r--r-- | dnscache-model.lua | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/dnscache-model.lua b/dnscache-model.lua index 89685e3..2b0ee44 100644 --- a/dnscache-model.lua +++ b/dnscache-model.lua @@ -192,7 +192,8 @@ function setNewDomain(self, domain) return domain end -function getDomain(getdomainname) +function getDomain(self, clientdata) + local getdomainname = clientdata.domain local domain = cfe({ value=getdomainname, label="Domain", errtxt="Invalid domain" }) local iplist = cfe({ type="list", value={}, label="List of DNS servers" }) local domains = getDomains() @@ -222,20 +223,26 @@ function setDomain(self, domain) return domain end -function deleteDomain(domainname) - local cmdresult = cfe({ value="Domain not deleted", label="Delete domain result", errtxt="Invalid domain" }) +function getDeleteDomain(self, clientdata) + local domain = cfe({ value=clientdata.domain or "", label="Domain" }) + return cfe({ type="group", value={domain=domain}, label="Delete Domain" }) +end + +function deleteDomain(self, domain) + domain.errtxt = "Domain not deleted" + domain.value.domain.errtxt = "Invalid domain" local domains = getDomains() - if domainname == "@" then - cmdresult.errtxt = "Cannot delete root domain" + if domain.value.domain.value == "@" then + domain.value.domain.errtxt = "Cannot delete root domain" else for i,name in ipairs(domains.value) do - if name == domainname then + if name == domain.value.domain.value then os.remove(baseurl.."servers/"..name) - cmdresult.errtxt = nil - cmdresult.value = "Domain deleted" + domain.errtxt = nil + domain.value.domain.errtxt = nil break end end end - return cmdresult + return domain end |