summaryrefslogtreecommitdiffstats
path: root/dnscache-controller.lua
blob: bed2356fdec8fd2df02f55ec3219ebf1b15511e7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
module(..., package.seeall)

-- Load libraries
require("controllerfunctions")

default_action = "status"

function status(self)
	return self.model.getstatus()
end

function startstop(self)
	return controllerfunctions.handle_startstop(self, self.model.startstop_service, self.model.getstatus, self.clientdata)
end

function config(self)
	return controllerfunctions.handle_form(self, self.model.getconfig, self.model.setconfig, self.clientdata, "Save", "Edit Config", "Configuration Set")
end

function expert(self)
	return controllerfunctions.handle_form(self, self.model.getconfigfile, self.model.setconfigfile, self.clientdata, "Save", "Edit Config File", "Configuration File Set")
end

function editips(self)
	return controllerfunctions.handle_form(self, self.model.getIPs, self.model.setIPs, self.clientdata, "Save", "Edit IP List", "IP List Set")
end

function listdomains(self)
	return self.model.getDomains()
end

function createdomain(self)
	return controllerfunctions.handle_form(self, self.model.getNewDomain, self.model.setNewDomain, self.clientdata, "Create", "Create New Domain", "New Domain Created")
end

function editdomain(self)
	return controllerfunctions.handle_form(self, function(form) return self.model.getDomain(self.clientdata.domain) end,
		self.model.setDomain, self.clientdata, "Save", "Edit Domain Entry", "Domain Saved")
end

function deletedomain(self)
	return self:redirect_to_referrer(self.model.deleteDomain(self.clientdata.domain))
end