diff options
Diffstat (limited to 'weblog-controller.lua')
-rw-r--r-- | weblog-controller.lua | 69 |
1 files changed, 55 insertions, 14 deletions
diff --git a/weblog-controller.lua b/weblog-controller.lua index 26a69ae..48448ae 100644 --- a/weblog-controller.lua +++ b/weblog-controller.lua @@ -50,37 +50,63 @@ function deletewatchlistentry(self) end function viewweblog(self) - return self.model.getweblog(self.clientdata.clientuserid, self.clientdata.starttime, self.clientdata.endtime, self.clientdata.clientip, clientdata.focus) + return self.model.getweblog(self.clientdata.activelog, self.clientdata.clientuserid, self.clientdata.starttime, self.clientdata.endtime, self.clientdata.clientip, self.clientdata.badyesno, self.clientdata.deniedyesno, self.clientdata.bypassyesno, self.clientdata.score, self.clientdata.urisearch, self.clientdata.sortby, self.clientdata.selected, clientdata.focus) end function downloadweblog(self) self.conf.viewtype = "stream" local retval = viewweblog(self) - local file = cfe({ type="longtext", value="", label=retval.value.clientuserid.value .. ".log" }) - local content = {"sourcename\tclientip\tclientuserid\tlogdatetime\turi\tbytes\treason\tscore"} + local file = cfe({ type="longtext", value="", label=retval.value.clientuserid.value .. ".csv" }) + local content = {"clientuserid,clientip,logdatetime,uri,bytes,reason,score,reason,badyesno,deniedyesno,bypassyesno"} for i,log in ipairs(retval.value.log.value) do - content[#content+1] = string.format("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t", - log.sourcename, log.clientip, log.clientuserid, log.logdatetime, - log.uri, log.bytes, log.reason or "", log.score or "0") + content[#content+1] = string.format("%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,", + log.clientuserid, log.clientip, log.logdatetime, log.uri, log.bytes, log.reason, log.score or "0", log.reason, log.badyesno, log.deniedyesno, log.bypassyesno ) + end file.value = table.concat(content, "\n") return file end -function viewblocklog(self) - return self.model.getblocklog(self.clientdata.clientuserid, self.clientdata.starttime, self.clientdata.endtime, self.clientdata.clientip, clientdata.focus) +function downloadlogview(self) + thisdate=os.date() + self.conf.viewtype = "stream" + local retval = viewweblog(self) + local file = cfe({ type="longtext", value="", label="Weblog-resnet-"..thisdate..".tab" }) + local content = {"clientuserid\tclientip\tlogdatetime\turi\tbytes\treason\tscore\treason\tbadyesno\tdeniedyesno\tbypassyesno"} + for i,log in ipairs(retval.value.log.value) do + content[#content+1] = string.format("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t", + log.clientuserid, log.clientip, log.logdatetime, log.uri, log.bytes, log.reason, log.score or "0", log.reason, log.badyesno, log.deniedyesno, log.bypassyesno ) + end + file.value = table.concat(content, "\n") + return file end -function viewusagestats(self) - return self.model.getusagestats() +function downloadselected(self) + thisdate=os.date() + self.conf.viewtype = "stream" + local retval = viewselected(self) + local file = cfe({ type="longtext", value="", label="Weblog-resnet-selected-"..thisdate..".tab" }) + local content = {"clientuserid\tclientip\tlogdatetime\turi\tbytes\treason\tscore\treason\tbadyesno\tdeniedyesno\tbypassyesno"} + for i,log in ipairs(retval.value.log.value) do + content[#content+1] = string.format("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t", + log.clientuserid, log.clientip, log.logdatetime, log.uri, log.bytes, log.reason, log.score or "0", log.reason, log.badyesno, log.deniedyesno, log.bypassyesno ) + end + file.value = table.concat(content, "\n") + return file end -function viewauditstats(self) - return self.model.getauditstats() +function checkselected(self) + self.conf.viewtype = "silent" + return self.model.editselected(self.clientdata.chkdata) + --return file +end +function clearselected(self) + return self:redirect_to_referrer(self.model.clearselected()) end -function completeaudit(self) - return self:redirect_to_referrer(self.model.completeaudit(self.clientdata.auditend)) +function viewselected(self) + --return self.model.getselected(self.clientdata.csvdata, self.clientdata.starttime, self.clientdata.endtime) + return self.model.getweblog(self.clientdata.activelog, self.clientdata.clientuserid, self.clientdata.starttime, self.clientdata.endtime, self.clientdata.clientip, self.clientdata.badyesno, self.clientdata.deniedyesno, self.clientdata.bypassyesno, self.clientdata.score, self.clientdata.urisearch, self.clientdata.sortby, self.clientdata.getselected, clientdata.focus) end function adhocquery(self) @@ -120,3 +146,18 @@ end function createdatabase(self) return controllerfunctions.handle_form(self, self.model.getnewdatabase, self.model.create_database, self.clientdata, "Create", "Create New Database", "Database Created") end + +function listfiles(self) + return self.model.listfiles(self) +end +function createfile(self) + return controllerfunctions.handle_form(self, self.model.getnewfile, self.model.createfile, self.clientdata, "Create", "Create New Weblog File", "Weblog File Created") +end + +function editfile(self) + return controllerfunctions.handle_form(self, function() return self.model.readfile(self.clientdata.filename) end, self.model.updatefile, self.clientdata, "Save", "Edit Weblog File", "Weblog File Saved" ) +end + +function deletefile(self) + return self:redirect_to_referrer(self.model.deletefile(self.clientdata.filename)) +end |