* Generalized dispatcher handling
authorSteven Barth <steven@midlink.org>
Sat, 17 May 2008 10:00:44 +0000 (10:00 +0000)
committerSteven Barth <steven@midlink.org>
Sat, 17 May 2008 10:00:44 +0000 (10:00 +0000)
applications/sgi-haserl/root/www/cgi-bin/ffluci-upload
applications/sgi-haserl/src/sgi/haserl.lua
applications/sgi-webuci/src/sgi/webuci.lua
core/src/dispatcher.lua
core/src/template.lua
modules/admin-core/src/view/admin_system/upgrade.htm

index 0128c2dd73b46b75a247bfdb4eead684407ea055..c31ddb82243d9840260c261909b17d80fe0049db 100755 (executable)
@@ -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")
\ No newline at end of file
index 0e388391dbe976095c5aa2ff2ca5658d77532ac6..f3a6ee613dacd8e7332465117f0be3a1c11f5572 100644 (file)
@@ -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()
index d3d4cd4dc2ef932fda57c54be96ad3cea0a02f06..f05fd2b0d5f26be27346dfa6ef61db6e77e68974 100644 (file)
@@ -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
index c60e5dcd175b42e5d2add0584ddbfdf77e8d3bda..0a66ccd3adc23ffb08e7189bddb6883b832bee63 100644 (file)
@@ -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
 
index e74db7d64f43730835bf29476a4ddcf05ea96710..6f4e4adb03808f2cb9a30fdae6ef928b93837cf6 100644 (file)
@@ -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,
index 5980028900ffb7d49e5ba49da6fe533cc85d580f..185e03124f26bd25156175b61478d37bb3fb4e76 100644 (file)
@@ -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>