summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMika Havela <mika.havela@gmail.com>2007-11-05 14:24:40 +0000
committerMika Havela <mika.havela@gmail.com>2007-11-05 14:24:40 +0000
commit13fad609b59645185154a9e9b04199dcc6e92287 (patch)
treec79399184f03f9b16b031486f9773364dae313cc
parent6eaad4b6b39953aa5cbb37a78cbe55588dbadaf7 (diff)
downloadacf-alpine-baselayout-13fad609b59645185154a9e9b04199dcc6e92287.tar.bz2
acf-alpine-baselayout-13fad609b59645185154a9e9b04199dcc6e92287.tar.xz
Added view functionallity for logfiles
git-svn-id: svn://svn.alpinelinux.org/acf/alpine-baselayout/trunk@269 ab2d0c66-481e-0410-8bed-d214d4d58bed
-rw-r--r--Makefile3
-rw-r--r--logfiles-controller.lua4
-rw-r--r--logfiles-model.lua22
-rw-r--r--logfiles-read-html.lsp6
-rw-r--r--logfiles-view-html.lsp8
5 files changed, 37 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index 24e1e07..44771df 100644
--- a/Makefile
+++ b/Makefile
@@ -17,7 +17,8 @@ APP_DIST=hostname-controller.lua \
logfiles.menu \
logfiles-model.lua \
logfiles-read-html.lsp \
- logfiles-delete-html.lsp
+ logfiles-delete-html.lsp \
+ logfiles-view-html.lsp
EXTRA_DIST=README Makefile config.mk
diff --git a/logfiles-controller.lua b/logfiles-controller.lua
index b35ac3b..3ae668e 100644
--- a/logfiles-controller.lua
+++ b/logfiles-controller.lua
@@ -31,4 +31,8 @@ delete = function (self)
return ({deletedfile = self.model:delete(filetodelete)} )
end
+view = function (self)
+ local filetoview = self.clientdata.name or ""
+ return ({logfile = self.model:view(filetoview)} )
+end
--create = update
diff --git a/logfiles-model.lua b/logfiles-model.lua
index 6c03ac7..9ca2e1f 100644
--- a/logfiles-model.lua
+++ b/logfiles-model.lua
@@ -54,7 +54,7 @@ local function checkfilefordelete ( filetodelete )
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}
+ deletedfile = cfe{value="File '" .. filetodelete .. "' has been successfully deleted!", type="text", option=nil, errtxt=err}
end
else
end
@@ -69,6 +69,22 @@ local function checkfilefordelete ( filetodelete )
return deletedfile
end
+local function checkfileforview ( path )
+ local file = {}
+ local available_files = get()
+ filecontent = cfe{value="", type="longtext", option=nil, errtxt="You are not allowed to view this file!"}
+ for k,v in pairs(available_files) do
+ if ( available_files[k].name == path ) then
+ local file = io.open( path )
+ local file_result = file:read("*a") or "unknown"
+ file:close()
+ err=nil
+ filecontent = cfe{value=file_result, type="longtext", option=nil, errtxt=err}
+ end
+ end
+ return filecontent
+end
+
get = function (self)
return list_files( "/var/log /tmp/squid/log" )
end
@@ -77,3 +93,7 @@ delete = function (self,filetodelete)
return checkfilefordelete( filetodelete )
end
+view = function (self,filetoview)
+ return checkfileforview( filetoview )
+end
+
diff --git a/logfiles-read-html.lsp b/logfiles-read-html.lsp
index a878f28..697a097 100644
--- a/logfiles-read-html.lsp
+++ b/logfiles-read-html.lsp
@@ -1,11 +1,10 @@
<? local view = ... ?>
<html>
<body>
-<h1>Logfiles</h1>
+<h1>Available Logfiles</h1>
<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>
@@ -20,8 +19,7 @@
<? else ?>
<?= view.logfile[i].inuse ?>
<? end ?></TD>
- <TD>Save</TD>
- <TD>View</TD>
+ <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 style="padding-left:10px"><?= view.logfile[i].name ?></TD>
diff --git a/logfiles-view-html.lsp b/logfiles-view-html.lsp
new file mode 100644
index 0000000..e88996c
--- /dev/null
+++ b/logfiles-view-html.lsp
@@ -0,0 +1,8 @@
+<? local view = ... ?>
+<html>
+<body>
+<h1>View file</h1>
+<?= html.form[view.logfile.type](view.logfile) ?>
+ <p class="error"><?= view.logfile.errtxt ?></p>
+</body>
+</html>