diff options
author | Ted Trask <ttrask01@yahoo.com> | 2010-01-21 13:12:12 +0000 |
---|---|---|
committer | Ted Trask <ttrask01@yahoo.com> | 2010-01-21 13:12:12 +0000 |
commit | f669bf6ec4bb0b49b123dd31db6998c4be914454 (patch) | |
tree | 0506e9ae3ae8c398516522135be99a0c93242a54 /app | |
parent | 6518f55980acc9f1e763978eff5dae532eaeb227 (diff) | |
download | acf-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.lsp | 2 | ||||
-rw-r--r-- | app/acf-util/roles-viewroles-html.lsp | 4 | ||||
-rw-r--r-- | app/acf-util/skins-model.lua | 21 | ||||
-rw-r--r-- | app/acf_www-controller.lua | 2 | ||||
-rw-r--r-- | app/template-html.lsp | 6 |
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> |