* Generalized dispatcher handling
This commit is contained in:
parent
357ba22175
commit
6eae1a0103
6 changed files with 24 additions and 4 deletions
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/haserl --shell=luac --upload-limit=6144
|
||||
#!/usr/bin/haserl --shell=luac --upload-limit=16384
|
||||
-- This is a bit hacky: remove -upload from SCRIPT_NAME
|
||||
ENV.SCRIPT_NAME = ENV.SCRIPT_NAME:sub(1, #ENV.SCRIPT_NAME - 7)
|
||||
dofile("ffluci")
|
|
@ -29,6 +29,15 @@ require("ffluci.fs")
|
|||
-- Environment Table
|
||||
ffluci.http.env = ENV
|
||||
|
||||
-- Returns the main dispatcher URL
|
||||
function ffluci.http.dispatcher()
|
||||
return ffluci.http.env.SCRIPT_NAME or ""
|
||||
end
|
||||
|
||||
-- Returns the upload dispatcher URL
|
||||
function ffluci.http.dispatcher_upload()
|
||||
return ffluci.http.dispatcher() .. "-upload"
|
||||
end
|
||||
|
||||
-- Returns a table of all COOKIE, GET and POST Parameters
|
||||
function ffluci.http.formvalues()
|
||||
|
|
|
@ -31,6 +31,16 @@ ffluci.http.env = webuci.env
|
|||
|
||||
local status_set = false
|
||||
|
||||
-- Returns the main dispatcher URL
|
||||
function ffluci.http.dispatcher()
|
||||
return ffluci.http.env.SCRIPT_NAME or ""
|
||||
end
|
||||
|
||||
-- Returns the upload dispatcher URL
|
||||
function ffluci.http.dispatcher_upload()
|
||||
-- To be implemented
|
||||
end
|
||||
|
||||
-- Returns a table of all COOKIE, GET and POST Parameters
|
||||
function ffluci.http.formvalues()
|
||||
return webuci.vars
|
||||
|
|
|
@ -104,7 +104,7 @@ function build_url(category, module, action)
|
|||
module = module or "index"
|
||||
action = action or "index"
|
||||
|
||||
local pattern = ffluci.http.env.SCRIPT_NAME .. "/%s/%s/%s"
|
||||
local pattern = ffluci.http.dispatcher() .. "/%s/%s/%s"
|
||||
return pattern:format(category, module, action)
|
||||
end
|
||||
|
||||
|
|
|
@ -52,7 +52,8 @@ compiler_enable_bytecode = false
|
|||
viewns = {
|
||||
translate = function(...) return require("ffluci.i18n").translate(...) end,
|
||||
config = function(...) return require("ffluci.model.uci").get(...) or "" end,
|
||||
controller = ffluci.http.env.SCRIPT_NAME or "",
|
||||
controller = ffluci.http.dispatcher(),
|
||||
uploadctrl = ffluci.http.dispatcher_upload(),
|
||||
media = ffluci.config.main.mediaurlbase,
|
||||
images = ffluci.config.main.imagebase,
|
||||
write = io.write,
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
Das Format der Firmware ist plattformabhängig.%></p>
|
||||
<br />
|
||||
<% if sysupgrade and not ret then %>
|
||||
<form method="post" action="<%=controller%>-upload/admin/system/upgrade" enctype="multipart/form-data">
|
||||
<form method="post" action="<%=uploadctrl%>/admin/system/upgrade" enctype="multipart/form-data">
|
||||
<div class="cbi-section-node">
|
||||
<div class="cbi-value clear">
|
||||
<div class="cbi-value-title left"><%:fwimage Firmwareimage%></div>
|
||||
|
|
Loading…
Reference in a new issue