summaryrefslogtreecommitdiffstats
path: root/samba-model.lua
diff options
context:
space:
mode:
Diffstat (limited to 'samba-model.lua')
-rw-r--r--samba-model.lua19
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