From a0f64cff3dfc675ed5ea641c10be72c842b693d5 Mon Sep 17 00:00:00 2001 From: Ted Trask Date: Fri, 4 Jul 2008 14:54:19 +0000 Subject: Modified lbu to use controllerfunctions, modelfunctions, and common lsp files. Moved basicstatus->status and status->listchanges. git-svn-id: svn://svn.alpinelinux.org/acf/alpine-conf/trunk@1276 ab2d0c66-481e-0410-8bed-d214d4d58bed --- lbu-controller.lua | 113 ++++++----------------------------------------------- 1 file changed, 11 insertions(+), 102 deletions(-) (limited to 'lbu-controller.lua') diff --git a/lbu-controller.lua b/lbu-controller.lua index d70dde7..3db860d 100644 --- a/lbu-controller.lua +++ b/lbu-controller.lua @@ -1,123 +1,34 @@ module(..., package.seeall) +require("controllerfunctions") --- ################################################################################ --- PUBLIC FUNCTIONS +default_action = "listchanges" -default_action = "status" - -function basicstatus (self) +function status (self) return self.model.getstatus() end -function status (self) +function listchanges (self) return self.model.list() end function config (self) - local config = self.model.getconfig() - if self.clientdata.Save then - config.errtxt = nil - for name,value in pairs(config.value) do - value.errtxt = nil - if value.type == "boolean" then - value.value = (self.clientdata[name]~=nil) - else - value.value = self.clientdata[name] or value.value - end - end - config = self.model.setconfig(config) - if not config.errtxt then - config.descr = "Configuration Set" - end - end - config.type = "form" - config.option = "Save" - config.label = "Edit Config" - - return config + return controllerfunctions.handle_form(self, self.model.getconfig, self.model.setconfig, self.clientdata, "Save", "Edit Config", "Configuration Set") end function editincluded (self) - local errtxt, descr - local included = self.model.getincluded() - if self.clientdata.Save then - included.errtxt = nil - included.value = self.clientdata.included - included = self.model.setincluded(included) - if included.errtxt then - errtxt = "Failed to set included files" - else - descr = "Included files set" - redirect_to_referrer(self) - end - end - - return cfe({ type="form", value={included=included}, option="Save", label="Edit included files", errtxt=errtxt, descr=descr }) + return controllerfunctions.handle_form(self, self.model.getincluded, self.model.setincluded, self.clientdata, "Save", "Edit Included Files", "Included files set") end function editexcluded (self) - local errtxt, descr - local excluded = self.model.getexcluded() - if self.clientdata.Save then - excluded.errtxt = nil - excluded.value = self.clientdata.excluded - excluded = self.model.setexcluded(excluded) - if excluded.errtxt then - errtxt = "Failed to set excluded files" - else - descr = "Excluded files set" - redirect_to_referrer(self) - end - end - - return cfe({ type="form", value={excluded=excluded}, option="Save", label="Edit excluded files", errtxt=errtxt, descr=descr }) + return controllerfunctions.handle_form(self, self.model.getexcluded, self.model.setexcluded, self.clientdata, "Save", "Edit Excluded Files", "Excluded files set") end function commit(self) - local comm = self.model.getcommit() - if self.clientdata.Commit then - comm.errtxt = nil - for name,value in pairs(comm.value) do - value.errtxt = nil - value.value = (self.clientdata[name]~=nil) - end - comm = self.model.commit(comm) - self.sessiondata.commitresult = cfe({ value=comm.descr or "", errtxt=comm.errtxt }) - redirect_to_referrer(self) - end - - if self.sessiondata.commitresult then - comm.descr = self.sessiondata.commitresult.value - comm.errtxt = self.sessiondata.commitresult.errtxt - self.sessiondata.commitresult = nil - end - - comm.type = "form" - comm.option = "Commit" - comm.label = "Commit changes" - - return comm + return controllerfunctions.handle_form(self, self.model.getcommit, self.model.commit, self.clientdata, "Commit", "Commit Changes") end function expert (self) - local filedetails = self.model.get_filedetails() - if self.clientdata.Save then - filedetails.value.filecontent.errtxt = nil - filedetails.value.filecontent.value = self.clientdata.filecontent - filedetails.value.filecontent = self.model.set_filecontent(filedetails.value.filecontent) - if filedetails.value.filecontent.errtxt then - filedetails.errtxt = "Failed to save config" - else - filedetails = self.model.get_filedetails() - filedetails.descr = "Saved config" - end - end - - filedetails.type = "form" - filedetails.option = "Save" - filedetails.label = "Edit config file" - - return filedetails + return controllerfunctions.handle_form(self, self.model.get_filedetails, self.model.set_filedetails, self.clientdata, "Save", "Edit Config File", "Configuration saved") end function listbackups(self) @@ -125,11 +36,9 @@ function listbackups(self) end --[[ function deletebackup(self) - self.model.deletebackupfile(self.clientdata.backup) - redirect_to_referrer(self) + return self:redirect_to_referrer(self.model.deletebackupfile(self.clientdata.backup)) end --]] function selectbackup(self) - self.model.selectbackupfile(self.clientdata.backup) - redirect_to_referrer(self) + return self:redirect_to_referrer(self.model.selectbackupfile(self.clientdata.backup)) end -- cgit v1.2.3