summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-commands
diff options
context:
space:
mode:
Diffstat (limited to 'applications/luci-commands')
-rw-r--r--applications/luci-commands/luasrc/controller/commands.lua5
-rw-r--r--applications/luci-commands/luasrc/view/commands.htm37
2 files changed, 36 insertions, 6 deletions
diff --git a/applications/luci-commands/luasrc/controller/commands.lua b/applications/luci-commands/luasrc/controller/commands.lua
index cd921f9f2c..9fbde94c6a 100644
--- a/applications/luci-commands/luasrc/controller/commands.lua
+++ b/applications/luci-commands/luasrc/controller/commands.lua
@@ -195,6 +195,7 @@ function action_run(...)
end
function action_download(...)
+ local fs = require "nixio.fs"
local argv = parse_cmdline(...)
if argv then
local fd = io.popen(table.concat(argv, " ") .. " 2>/dev/null")
@@ -203,11 +204,11 @@ function action_download(...)
local name
if chunk:match("[%z\1-\8\14-\31]") then
luci.http.header("Content-Disposition", "attachment; filename=%s"
- % argv[1]:gsub("%W+", ".") .. ".bin")
+ % fs.basename(argv[1]):gsub("%W+", ".") .. ".bin")
luci.http.prepare_content("application/octet-stream")
else
luci.http.header("Content-Disposition", "attachment; filename=%s"
- % argv[1]:gsub("%W+", ".") .. ".txt")
+ % fs.basename(argv[1]):gsub("%W+", ".") .. ".txt")
luci.http.prepare_content("text/plain")
end
diff --git a/applications/luci-commands/luasrc/view/commands.htm b/applications/luci-commands/luasrc/view/commands.htm
index 888033c271..83792a91fd 100644
--- a/applications/luci-commands/luasrc/view/commands.htm
+++ b/applications/luci-commands/luasrc/view/commands.htm
@@ -10,6 +10,35 @@ You may obtain a copy of the License at
-%>
+<% css = [[
+
+.commandbox {
+ height: 12em;
+ width: 30%;
+ float: left;
+ height: 12em;
+ margin: 5px;
+ position: relative;
+}
+
+.commandbox h3 {
+ font-size: 1.5em !important;
+ line-height: 2em !important;
+ margin: 0 !important;
+}
+
+.commandbox input[type="text"] {
+ width: 50% !important;
+}
+
+.commandbox div {
+ position: absolute;
+ left: 0;
+ bottom: 1.5em;
+}
+
+]] -%>
+
<%+header%>
<script type="text/javascript" src="<%=resource%>/cbi.js"></script>
@@ -94,7 +123,7 @@ You may obtain a copy of the License at
legend.style.display = 'none';
output.parentNode.style.display = 'block';
output.innerHTML = String.format(
- '<div class="alert-message warning"><%:Access command with%> <a href="%s">%s</a></div>',
+ '<div class="alert-message"><%:Access command with%> <a href="%s">%s</a></div>',
link, link
);
@@ -117,13 +146,13 @@ You may obtain a copy of the License at
<fieldset class="cbi-section">
<% local _, command; for _, command in ipairs(commands) do %>
- <div style="width:30%; float:left; height:150px; position:relative">
+ <div class="commandbox">
<h3><%=pcdata(command.name)%></h3>
<p><%:Command:%> <code><%=pcdata(command.command)%></code></p>
<% if command.param == "1" then %>
- <p><%:Arguments:%> <input style="width: 50%" type="text" id="<%=command['.name']%>" /></p>
+ <p><%:Arguments:%> <input type="text" id="<%=command['.name']%>" /></p>
<% end %>
- <div style="position:absolute; left:0; bottom:20px">
+ <div>
<input type="button" value="<%:Run%>" class="cbi-button cbi-button-apply" onclick="command_run('<%=command['.name']%>')" />
<input type="button" value="<%:Download%>" class="cbi-button cbi-button-download" onclick="command_download('<%=command['.name']%>')" />
<% if command.public == "1" then %>