libs/web: introduce firewall_zoneforwards widget
[project/luci.git] / libs / web / luasrc / dispatcher.lua
index e3d7ec9..8d5c02e 100644 (file)
@@ -34,6 +34,9 @@ local nixio = require "nixio", require "nixio.util"
 
 module("luci.dispatcher", package.seeall)
 context = util.threadlocal()
+uci = require "luci.model.uci"
+i18n = require "luci.i18n"
+_M.fs = fs
 
 authenticator = {}
 
@@ -146,7 +149,7 @@ function dispatch(request)
        assert(conf.main,
                "/etc/config/luci seems to be corrupt, unable to find section 'main'")
 
-       local lang = conf.main.lang
+       local lang = conf.main.lang or "auto"
        if lang == "auto" then
                local aclang = http.getenv("HTTP_ACCEPT_LANGUAGE") or ""
                for lpat in aclang:gmatch("[%w-]+") do
@@ -156,7 +159,7 @@ function dispatch(request)
                                break
                        end
                end
-        end
+       end
        require "luci.i18n".setlanguage(lang)
 
        local c = ctx.tree
@@ -234,6 +237,7 @@ function dispatch(request)
                   write       = luci.http.write;
                   include     = function(name) tpl.Template(name):render(getfenv(2)) end;
                   translate   = function(...) return require("luci.i18n").translate(...) end;
+                  export      = function(k, v) if tpl.context.viewns[k] == nil then tpl.context.viewns[k] = v end end;
                   striptags   = util.striptags;
                   pcdata      = util.pcdata;
                   media       = media;