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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
-- the squid controller
module (..., package.seeall)
require("controllerfunctions")
default_action = "status"
dep = function( self )
if self.model.dependancy_ok() then
redirect(self)
end
if self.clientdata.cmd then
if self.clientdata.cmd == "create file" then
self.model.create_cfg_from_template()
redirect(self)
end
end
return
end
status = function( self )
return self.model.getstatus()
end
startstop = function( self )
return controllerfunctions.handle_startstop(self, self.model.startstop_service, self.model.getstatus, self.clientdata)
end
basic = function( self )
local service = {}
if not self.model.dependancy_ok() then
redirect(self, "dep")
end
if self.clientdata.cmd then
local cmd = self.clientdata.cmd
if cmd == "save" then
local newconfig = { proxyip = { value=self.clientdata.proxyip, type="text", label="" },
proxyport = { value=self.clientdata.proxyport, type="text", label="" },
filterip = { value=self.clientdata.filterip, type="text", label="" },
filterport = { value=self.clientdata.filterport, type="text", label="" },
filterregex = { value=self.clientdata.filterregex, type="text", label="" },
safeports = { value=self.clientdata.safeports, type="text", label="" },
sslports = { value=self.clientdata.sslports, type="text", label="" },
accesslog = { value=self.clientdata.accesslog, type="select", label="", option={ "yes", "no" } },
diskcache = { value=self.clientdata.diskcache, type="select", label="", option={ "yes", "no" } },
authmethod = { value=self.clientdata.authmethod, type="text", label="" }
}
self.model.update_basic_config( newconfig )
end
end
service.config, service.error = self.model.get_basic_config()
return ( cfe ({ service = service }) )
end
authentication = function( self )
local service = {}
if self.clientdata.inout then
local newauth = ""
if self.clientdata.inout == " << " then
if self.clientdata.tmpempty then
newauth = self.clientdata.authmethod .. self.clientdata.tmpempty
else
newauth = self.clientdata.authmethod
end
elseif self.clientdata.inout == " >> " then
local tmpauth = self.clientdata.authmethod
local lap = 1
while lap <= #tmpauth do
if string.sub( tmpauth, lap, lap ) ~= self.clientdata.tmpauth then
newauth = newauth .. string.sub( tmpauth, lap, lap )
end
lap = lap + 1
end
end
self.model.upd_authmethod(newauth)
end
service.config, service.error = self.model.get_basic_config()
return ( cfe ({ service = service }) )
end
expert = function( self )
return controllerfunctions.handle_form(self, self.model.get_configfile, self.model.update_configfile, self.clientdata, "Save", "Edit Config", "Configuration Set")
end
digest = function( self )
local service = { message="", status="", config="" }
if self.clientdata.cmd then
if self.clientdata.cmd == "save" then
service.message = self.model.update_digest_userlist( self.clientdata.userlist )
end
end
service.config = self.model.get_digest_userlist()
return ( cfe ({ service = service }) )
end
saccess = function( self )
local service = { message="", status="", config="" }
if self.clientdata.cmd then
if self.clientdata.cmd == "save" then
local config = {}
config.s_ip = self.clientdata.s_ip
config.s_browser = self.clientdata.s_browser
config.s_domain = self.clientdata.s_domain
service.message = self.model.update_saccess( config )
end
end
service.config = self.model.get_saccess()
return ( cfe ({ service = service }) )
end
|