summaryrefslogtreecommitdiffstats
path: root/awall-controller.lua
blob: 9e356f81bc495d89efd9b4f23109a6e4c089cf60 (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
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.clientdata)
end

function listpolicies(self)
	return self.model.list_policies()
end

function viewpolicy(self)
	return self.model.read_policyfile(self.clientdata.filename)
end

function createpolicy(self)
	return controllerfunctions.handle_form(self, self.model.get_newpolicy, self.model.create_policy, self.clientdata, "Create", "Create New Policy File", "Policy File Created")
end

function deletepolicy(self)
	return controllerfunctions.handle_form(self, self.model.get_delete_policy, self.model.delete_policy, self.clientdata, "Delete", "Delete Policy File", "Policy File Deleted")
end

function editpolicy(self)
	return controllerfunctions.handle_form(self, function() return self.model.get_policyfile(self.clientdata.filename) end, self.model.update_policyfile, self.clientdata, "Save", "Edit Policy", "Policy File Saved")
end

function enablepolicy(self)
	return controllerfunctions.handle_form(self, self.model.get_enablepolicy, self.model.enable_policy, self.clientdata, "Enable", "Enable Policy", "Policy Enabled")
end

function disablepolicy(self)
	return controllerfunctions.handle_form(self, self.model.get_enablepolicy, self.model.disable_policy, self.clientdata, "Disable", "Disable Policy", "Policy Disabled")
end