diff options
-rw-r--r-- | Makefile | 6 | ||||
-rw-r--r-- | logfiles-controller.lua | 9 | ||||
-rw-r--r-- | logfiles-model.lua | 36 | ||||
-rw-r--r-- | logfiles-read-html.lsp | 10 |
4 files changed, 46 insertions, 15 deletions
@@ -12,7 +12,11 @@ APP_DIST=hostname-controller.lua \ interfaces-model.lua \ interfaces-read-html.lsp \ interfaces-update-html.lsp \ - interfaces.menu + interfaces.menu \ + logfiles-controller.lua \ + logfiles.menu \ + logfiles-model.lua \ + logfiles-read-html.lsp EXTRA_DIST=README Makefile config.mk diff --git a/logfiles-controller.lua b/logfiles-controller.lua index 86d24b9..b35ac3b 100644 --- a/logfiles-controller.lua +++ b/logfiles-controller.lua @@ -19,15 +19,16 @@ end -- Public methods read = function (self ) - return ({logfile = self.model:get("/var/log /tmp/squid/log"), url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) + return ({logfile = self.model:get(), url = ENV["SCRIPT_NAME"] .. self.conf.prefix .. self.conf.controller} ) end --update = function (self) -- return nil --end ---delete = function (self) --- return nil ---end +delete = function (self) + local filetodelete = self.clientdata.name or "" + return ({deletedfile = self.model:delete(filetodelete)} ) +end --create = update diff --git a/logfiles-model.lua b/logfiles-model.lua index 1d18f3f..6c03ac7 100644 --- a/logfiles-model.lua +++ b/logfiles-model.lua @@ -34,11 +34,11 @@ local function list_files ( path ) if v ~= "" then local lastmod,size,fileinuseresult = file_info(v) if ( fileinuseresult == "Delete" ) then - del="/delete?id=" .. k + del="/delete?name=" .. v else del=nil end - table.insert ( listed_files , cfe{inuse=fileinuseresult, del=del, save="", view="/view?id=" .. k, size=size, lastmod=lastmod, name=v, type="", id=k} ) + table.insert ( listed_files , cfe{inuse=fileinuseresult, del=del, save="", view="/view?name=" .. v, size=size, lastmod=lastmod, name=v, type="", id=k} ) end end files:close() @@ -46,8 +46,34 @@ local function list_files ( path ) return listed_files end -get = function (self,path) - local logfile_result = {} - return list_files( path ) +local function checkfilefordelete ( filetodelete ) + local deletedfile = {} + local available_files = get() + for k,v in pairs(available_files) do + if ( available_files[k].name == filetodelete ) then + if ( available_files[k].del ) then + local status, err = os.remove( filetodelete ) + if not ( err ) then + deletedfile = cfe{value="File '" .. filetodelete .. "' has been successfully deleted!", type="text", option=nil, errtxt=erro} + end + else + end + end + end + if not ( deletedfile.value ) then + if not ( err ) then + err = "The file is not accepted for removal!" + end + deletedfile = cfe{value="File '" .. filetodelete .. "' has not been deleted!", type="text", option=nil, errtxt=err} + end + return deletedfile +end + +get = function (self) + return list_files( "/var/log /tmp/squid/log" ) +end + +delete = function (self,filetodelete) + return checkfilefordelete( filetodelete ) end diff --git a/logfiles-read-html.lsp b/logfiles-read-html.lsp index 5fe6944..9d9fea3 100644 --- a/logfiles-read-html.lsp +++ b/logfiles-read-html.lsp @@ -2,18 +2,18 @@ <html> <body> <h1>Logfiles</h1> -<TABLE border=1> - <TR class=grey> +<TABLE border=0> + <TR style="background:#eee;font-weight:bold;"> <TD "width=55px"><?= view.logfile[1].inuse ?></TD> <TD "width=55px"><?= view.logfile[1].save ?></TD> <TD "width=55px"><?= view.logfile[1].view ?></TD> <TD "width=55px" align="right"><?= view.logfile[1].size ?></TD> <TD align="right" "width=90px"><?= view.logfile[1].lastmod ?></TD> - <TD><?= view.logfile[1].name ?></TD> + <TD style="padding-left:10px"><?= view.logfile[1].name ?></TD> </TR> <? for i = 2, table.maxn(view.logfile) do ?> - <TR> + <TR > <TD> <? if view.logfile[i].del then ?> <?= html.link{value = view.url .. view.logfile[i].del, label=view.logfile[i].inuse } ?> @@ -24,7 +24,7 @@ <TD><?= html.link{value = view.url .. view.logfile[i].view, label="View" } ?></TD> <TD align="right"><?= view.logfile[i].size ?></TD> <TD align="right"><?= view.logfile[i].lastmod ?></TD> - <TD><?= view.logfile[i].name ?></TD> + <TD style="padding-left:10px"><?= view.logfile[i].name ?></TD> </TR> <? end ?> </TABLE> |