diff options
-rw-r--r-- | samba-controller.lua | 24 | ||||
-rw-r--r-- | samba-model.lua | 32 |
2 files changed, 30 insertions, 26 deletions
diff --git a/samba-controller.lua b/samba-controller.lua index 3450ed5..f42d438 100644 --- a/samba-controller.lua +++ b/samba-controller.lua @@ -1,39 +1,41 @@ -module(..., package.seeall) +local mymodule = {} -default_action = "status" +mymodule.default_action = "status" -function status(self) +function mymodule.status(self) return self.model.getstatus() end -function startstop(self) +function mymodule.startstop(self) return self.handle_form(self, self.model.get_startstop, self.model.startstop_service, self.clientdata) end -function listfiles(self) +function mymodule.listfiles(self) return self.model.listconfigfiles() end -function expert(self) +function mymodule.expert(self) return self.handle_form(self, function() return self.model.getconfigfile(self.clientdata.filename) end, self.model.setconfigfile, self.clientdata, "Save", "Edit Samba File", "File Saved") end -function join(self) +function mymodule.join(self) return self.handle_form(self, self.model.get_join, self.model.set_join, self.clientdata, "Join", "Join Domain") end -function listshares(self) +function mymodule.listshares(self) return self.model.list_shares() end -function editshare(self) +function mymodule.editshare(self) return self.handle_form(self, self.model.read_share, self.model.update_share, self.clientdata, "Save", "Edit Share", "Share Saved") end -function deleteshare(self) +function mymodule.deleteshare(self) return self.handle_form(self, self.model.get_delete_share, self.model.delete_share, self.clientdata, "Delete", "Delete Share", "Share Deleted") end -function createshare(self) +function mymodule.createshare(self) return self.handle_form(self, self.model.read_share, self.model.create_share, self.clientdata, "Create", "Create Share", "Share Created") end + +return mymodule diff --git a/samba-model.lua b/samba-model.lua index 2b62e5c..70ddb67 100644 --- a/samba-model.lua +++ b/samba-model.lua @@ -1,4 +1,4 @@ -module(..., package.seeall) +local mymodule = {} -- Load libraries modelfunctions = require("modelfunctions") @@ -102,19 +102,19 @@ end -- ################################################################################ -- PUBLIC FUNCTIONS -function get_startstop(self, clientdata) +function mymodule.get_startstop(self, clientdata) return modelfunctions.get_startstop(processname) end -function startstop_service(self, startstop, action) +function mymodule.startstop_service(self, startstop, action) return modelfunctions.startstop_service(startstop, action) end -function getstatus() +function mymodule.getstatus() return modelfunctions.getstatus(processname, packagename, "Samba Status") end -function listconfigfiles() +function mymodule.listconfigfiles() local listed_files = {} for i,name in ipairs(filelist) do local filedetails = fs.stat(name) or {} @@ -125,15 +125,15 @@ function listconfigfiles() return cfe({ type="list", value=listed_files, label="Samba File List" }) end -function getconfigfile(filename) +function mymodule.getconfigfile(filename) return modelfunctions.getfiledetails(filename, filelist) end -function setconfigfile(self, filedetails) +function mymodule.setconfigfile(self, filedetails) return modelfunctions.setfiledetails(self, filedetails, filelist) end -function get_join() +function mymodule.get_join() local connect = {} connect.login = cfe({ label="Domain Controller login", seq=1 }) connect.password = cfe({ type="password", label="Domain Controller password", seq=2 }) @@ -164,7 +164,7 @@ function get_join() return cfe({ type="group", value=connect, label="Join a Domain", descr=table.concat(status, "\n"), errtxt=errtxt }) end -function set_join(self, connect) +function mymodule.set_join(self, connect) configcontent = configcontent or fs.read_file(configfile) or "" config = config or format.parse_ini_file(configcontent) or {} @@ -186,7 +186,7 @@ function set_join(self, connect) return connect end -function list_shares() +function mymodule.list_shares() local shares = {} configcontent = configcontent or fs.read_file(configfile) or "" config = config or format.parse_ini_file(configcontent) or {} @@ -203,7 +203,7 @@ function list_shares() return cfe({ type="structure", value=shares, label="Shares" }) end -function read_share(self, clientdata) +function mymodule.read_share(self, clientdata) local name = clientdata.name local share = {} configcontent = configcontent or fs.read_file(configfile) or "" @@ -245,7 +245,7 @@ function read_share(self, clientdata) return cfe({ type="group", value=share, label="Samba Share" }) end -function update_share(self, share) +function mymodule.update_share(self, share) local success, share = validate_share(share) configcontent = configcontent or fs.read_file(configfile) or "" @@ -264,7 +264,7 @@ function update_share(self, share) return share end -function create_share(self, share) +function mymodule.create_share(self, share) local success, share = validate_share(share) configcontent = configcontent or fs.read_file(configfile) or "" @@ -283,13 +283,13 @@ function create_share(self, share) return share end -function get_delete_share(self, clientdata) +function mymodule.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) +function mymodule.delete_share(self, delshare) local name = delshare.value.name.value delshare.ertxt = "Failed to delete share" @@ -312,3 +312,5 @@ function delete_share(self, delshare) return delshare end + +return mymodule |