diff options
Diffstat (limited to 'samba-model.lua')
-rw-r--r-- | samba-model.lua | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/samba-model.lua b/samba-model.lua index 54cd65d..eddbe51 100644 --- a/samba-model.lua +++ b/samba-model.lua @@ -289,11 +289,18 @@ function create_share(self, share) return share end -function delete_share(name) - local retval = cfe({ label="Delete Share result" }) +function get_delete_share(self, clientdata) + local retval = {} + retval.name = cfe({ value=clientdata.name or "", label="Share Name" }) + return cfe({ type="group", value=retval, label="Delete Share" }) +end + +function delete_share(self, delshare) + local name = delshare.value.name.value + delshare.ertxt = "Failed to delete share" if specialsection[name] then - retval.errtxt = "Share not found" + delshare.value.name.errtxt = "Share not found" else configcontent = configcontent or fs.read_file(configfile) or "" config = config or format.parse_ini_file(configcontent) or {} @@ -303,11 +310,11 @@ function delete_share(name) fs.write_file(configfile, configcontent) configcontent = nil config = nil - retval.value = "Share Deleted" + delshare.errtxt = nil else - retval.errtxt = "Share not found" + delshare.value.name.errtxt = "Share not found" end end - return retval + return delshare end |