-- the dhcpd controller module (..., package.seeall) default_action = "status" status = function ( self ) return self.model.getstatus() end startstop = function ( self ) return self.handle_form(self, self.model.get_startstop, self.model.startstop_service, self.clientdata) end settings = function( self ) return self.handle_form(self, self.model.read_settings, self.model.update_settings, self.clientdata, "Save", "Update Global Settings", "Global Settings Updated") end editsubnet = function ( self ) return self.handle_form(self, function() return self.model.subnet_read(self.clientdata.subnet) end, self.model.subnet_update, self.clientdata, "Save", "Edit Subnet", "Subnet Settings Updated") end createsubnet = function ( self ) return self.handle_form(self, self.model.create_new_subnet, self.model.subnet_create, self.clientdata, "Create", "Create new subnet", "New subnet Created") end delsubnet = function(self) return self:redirect_to_referrer(self.model.subnet_delete(self.clientdata.subnet)) end listsubnets = function ( self ) return self.model.get_subnets() end edithost = function ( self ) return self.handle_form(self, function() return self.model.host_read(self.clientdata.host) end, self.model.host_update, self.clientdata, "Save", "Edit Host", "Host Settings Updated") end createhost = function ( self ) return self.handle_form(self, self.model.create_new_host, self.model.host_create, self.clientdata, "Create", "Create new host", "New host Created") end delhost = function(self) return self:redirect_to_referrer(self.model.host_delete(self.clientdata.host)) end listhosts = function ( self ) return self.model.get_hosts() end viewleases = function ( self ) return self.model.getleases() end listfiles = function(self) return self.model.listconfigfiles() end expert = function(self) return self.handle_form(self, function() return self.model.getconfigfile(self.clientdata.filename) end, self.model.setconfigfile, self.clientdata, "Save", "Edit DHCP File", "File Saved") end