module (..., package.seeall) require("posix") -- Cause an http redirect to our "read" action -- We use the self.conf table because it already has prefix,controller,etc -- The redir code is defined in the application error handler (acf-controller) local list_redir = function (self) self.conf.action = "read" self.conf.type = "redir" error (self.conf) end mvc={} mvc.on_load = function(self, parent) if (self.worker[self.conf.action] == nil ) or ( self.conf.action == "init" ) then self.worker[self.conf.action] = list_redir(self) end end function status(self) local srvcmdresult = nil local srvcmd = self.clientdata.srvcmd if (srvcmd ~= nil) then srvcmdresult = self.model:startstop_service(srvcmd) end local alerts,alertresult = self.model:read_alert() return ({status = self.model:getstatus(), srvcmdresult=srvcmdresult, alerts=alerts, alertresult=alertresult, url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) end function expert(self) local modifications = self.clientdata.modifications or "" local cmd = self.clientdata.cmd local url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller if ( modifications ~= "") then modifications = self.model:update_filecontent(modifications) end if ( cmd ~= nil ) then startstop = self.model:startstop_service( cmd ) end return ( {startstop = startstop, status = self.model:getstatus(), file = self.model:get_filedetails(), modifications = modifications, url = url, } ) end