summaryrefslogtreecommitdiffstats
path: root/app
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2010-01-21 13:12:12 +0000
committerTed Trask <ttrask01@yahoo.com>2010-01-21 13:12:12 +0000
commitf669bf6ec4bb0b49b123dd31db6998c4be914454 (patch)
tree0506e9ae3ae8c398516522135be99a0c93242a54 /app
parent6518f55980acc9f1e763978eff5dae532eaeb227 (diff)
downloadacf-core-f669bf6ec4bb0b49b123dd31db6998c4be914454.tar.bz2
acf-core-f669bf6ec4bb0b49b123dd31db6998c4be914454.tar.xz
Changes to skins to allow user skins to be added
page_info.skindir is no longer available to views, but staticdir is.
Diffstat (limited to 'app')
-rw-r--r--app/acf-util/password-status-html.lsp2
-rw-r--r--app/acf-util/roles-viewroles-html.lsp4
-rw-r--r--app/acf-util/skins-model.lua21
-rw-r--r--app/acf_www-controller.lua2
-rw-r--r--app/template-html.lsp6
5 files changed, 18 insertions, 17 deletions
diff --git a/app/acf-util/password-status-html.lsp b/app/acf-util/password-status-html.lsp
index 4a34fab..a26bdee 100644
--- a/app/acf-util/password-status-html.lsp
+++ b/app/acf-util/password-status-html.lsp
@@ -12,7 +12,7 @@
<H2>Existing account</H2>
<DL>
<% for name,user in pairs(form.value) do %>
- <DT><IMG SRC='/skins/static/tango/16x16/apps/system-users.png' HEIGHT='16' WIDTH='16'> <%= html.html_escape(name) %></DT>
+ <DT><IMG SRC='<%= html.html_escape(page_info.staticdir) %>/tango/16x16/apps/system-users.png' HEIGHT='16' WIDTH='16'> <%= html.html_escape(name) %></DT>
<DD><TABLE>
<TR>
<TD STYLE='border:none;'><B><%= html.html_escape(user.value.userid.label) %></B></TD>
diff --git a/app/acf-util/roles-viewroles-html.lsp b/app/acf-util/roles-viewroles-html.lsp
index b2c5aa7..c7d6fc5 100644
--- a/app/acf-util/roles-viewroles-html.lsp
+++ b/app/acf-util/roles-viewroles-html.lsp
@@ -15,7 +15,7 @@
<TABLE>
<% if view.value.defined_roles then %>
<% for x,role in pairs(view.value.defined_roles.value) do %>
- <TR><TD><dt><img src='/skins/static/tango/16x16/apps/system-users.png' height='16' width='16'> <%= html.html_escape(role) %></dt>
+ <TR><TD><dt><img src='<%= html.html_escape(page_info.staticdir) %>/tango/16x16/apps/system-users.png' height='16' width='16'> <%= html.html_escape(role) %></dt>
<dd>
[<a href='viewroleperms?role=<%= html.html_escape(role) %>'>View this role</a>]
[<a href='editrole?role=<%= html.html_escape(role) %>&redir=<%= html.html_escape(page_info.orig_action) %>'>Edit this role</a>]
@@ -25,7 +25,7 @@
<% end %>
<% if view.value.default_roles then %>
<% for x,role in pairs(view.value.default_roles.value) do %>
- <TR><TD><dt><img src='/skins/static/tango/16x16/categories/applications-system.png' height='16' width='16'> <%= html.html_escape(role) %></dt>
+ <TR><TD><dt><img src='<%= html.html_escape(page_info.staticdir) %>/tango/16x16/categories/applications-system.png' height='16' width='16'> <%= html.html_escape(role) %></dt>
<dd>
[<a href='viewroleperms?role=<%= html.html_escape(role) %>'>View this role</a>]
[<a href='editrole?role=<%= html.html_escape(role) %>&redir=<%= html.html_escape(page_info.orig_action) %>'>Edit this role</a>]
diff --git a/app/acf-util/skins-model.lua b/app/acf-util/skins-model.lua
index 8b5a57e..860a943 100644
--- a/app/acf-util/skins-model.lua
+++ b/app/acf-util/skins-model.lua
@@ -1,4 +1,3 @@
--- acf model for displaying logfiles recusivly
module (..., package.seeall)
require("fs")
@@ -7,9 +6,9 @@ require("format")
local function set_skins(self, skin)
local content = "\n"..(fs.read_file(self.conf.conffile) or "")
local count
- content,count = string.gsub(content, "\n%s*skin%s*=[^\n]*", "\nskin="..format.escapespecialcharacters(skin))
+ content,count = string.gsub(content, "\n%s*skin%s*=[^\n]*", "\nskin="..skin)
if count == 0 then
- content = "\nskin="..format.escapespecialcharacters(skin)..content
+ content = "\nskin="..skin..content
end
fs.write_file(self.conf.conffile, string.sub(content,2))
local cmdoutput = "New skin selected"
@@ -18,13 +17,15 @@ end
local function list_skins(self)
local skinarray = {}
- for i,file in ipairs(posix.dir(self.conf.wwwdir ..self.conf.skindir) or {}) do
- -- Ignore files that begins with a '.' and 'cgi-bin' and only list folders
- if not ((string.match(file, "^%.")) or (string.match(file, "^cgi[-]bin")) or (string.match(file, "^static")) or (posix.stat(self.conf.wwwdir .. self.conf.skindir .. file).type ~= "directory")) then
- local entry = cfe({ value=file, label="Skin name" })
- local current = conf.skin
- entry.inuse = (file == current)
- table.insert(skinarray, entry)
+ for skin in string.gmatch(self.conf.skindir, "[^,]+") do
+ for i,file in ipairs(posix.dir(self.conf.wwwdir ..skin) or {}) do
+ -- Ignore files that begins with a '.' and 'cgi-bin' and only list folders
+ if not ((string.match(file, "^%.")) or (string.match(file, "^cgi[-]bin")) or (string.match(file, "^static")) or (posix.stat(self.conf.wwwdir .. skin .. file).type ~= "directory")) then
+ local entry = cfe({ value=skin..file, label="Skin name" })
+ local current = conf.skin
+ entry.inuse = (file == current)
+ table.insert(skinarray, entry)
+ end
end
end
return cfe({ type="list", value=skinarray, label="Skins" })
diff --git a/app/acf_www-controller.lua b/app/acf_www-controller.lua
index ab6dddb..0b6d80d 100644
--- a/app/acf_www-controller.lua
+++ b/app/acf_www-controller.lua
@@ -221,7 +221,7 @@ local view_resolver = function(self)
prefix = self.conf.prefix,
script = self.conf.script,
appname = self.conf.appname,
- skindir = self.conf.skindir or "",
+ staticdir = self.conf.staticdir or "",
skin = self.conf.skin or "",
orig_action = self.conf.orig_action or self.conf.prefix .. self.conf.controller .. "/" .. self.conf.action,
clientdata = self.clientdata,
diff --git a/app/template-html.lsp b/app/template-html.lsp
index 2b0d58c..0490b0b 100644
--- a/app/template-html.lsp
+++ b/app/template-html.lsp
@@ -23,10 +23,10 @@ if viewlibrary and viewlibrary.dispatch_component then
end
%>
<title><%= html.html_escape(hostname .. " - " .. pageinfo.controller .. "->" .. pageinfo.action) %></title>
-<link rel="stylesheet" type="text/css" href="<%= html.html_escape(pageinfo.skindir) %>static/reset.css">
-<link rel="stylesheet" type="text/css" href="<%= html.html_escape(pageinfo.skindir .. pageinfo.skin.."/"..pageinfo.skin..".css") %>">
+<link rel="stylesheet" type="text/css" href="<%= html.html_escape(pageinfo.staticdir) %>/reset.css">
+<link rel="stylesheet" type="text/css" href="<%= html.html_escape(pageinfo.skin.."/"..posix.basename(pageinfo.skin)..".css") %>">
<!--[if IE]>
-<link rel="stylesheet" type="text/css" href="<%= html.html_escape(pageinfo.skindir .. pageinfo.skin.."/"..pageinfo.skin.."-ie.css") %>">
+<link rel="stylesheet" type="text/css" href="<%= html.html_escape(pageinfo.skin.."/"..posix.basename(pageinfo.skin).."-ie.css") %>">
<![endif]-->
</head>
<body>