applications/luci-qos: revert accidentally committed tbl layout change
[project/luci.git] / applications / luci-qos / luasrc / model / cbi / qos / qos.lua
index 707d98a..8d852e7 100644 (file)
@@ -11,77 +11,86 @@ You may obtain a copy of the License at
 
 $Id$
 ]]--
-require("luci.tools.webadmin")
-m = Map("qos")
 
-s = m:section(TypedSection, "interface", translate("interfaces"))
+local wa = require "luci.tools.webadmin"
+local fs = require "nixio.fs"
+
+m = Map("qos", translate("Quality of Service"),
+       translate("With <abbr title=\"Quality of Service\">QoS</abbr> you " ..
+               "can prioritize network traffic selected by addresses, " ..
+               "ports or services."))
+
+s = m:section(TypedSection, "interface", translate("Interfaces"))
 s.addremove = true
+s.anonymous = false
 
-s:option(Flag, "enabled", translate("enable"))
+e = s:option(Flag, "enabled", translate("Enable"))
+e.rmempty = false
 
-c = s:option(ListValue, "classgroup")
-c:value("Default", "standard")
+c = s:option(ListValue, "classgroup", translate("Classification group"))
+c:value("Default", translate("default"))
 c.default = "Default"
 
-s:option(Flag, "overhead")
+s:option(Flag, "overhead", translate("Calculate overhead"))
+
+s:option(Flag, "halfduplex", translate("Half-duplex"))
 
-s:option(Value, "download", nil, "kb/s")
+s:option(Value, "download", translate("Download speed (kbit/s)"))
 
-s:option(Value, "upload", nil, "kb/s")
+s:option(Value, "upload", translate("Upload speed (kbit/s)"))
 
-s = m:section(TypedSection, "classify")
+s = m:section(TypedSection, "classify", translate("Classification Rules"))
 s.template = "cbi/tblsection"
 s.anonymous = true
 s.addremove = true
 
-t = s:option(ListValue, "target")
-t:value("Priority", translate("qos_priority"))
-t:value("Express", translate("qos_express"))
-t:value("Normal", translate("qos_normal"))
-t:value("Bulk", translate("qos_bulk"))
+t = s:option(ListValue, "target", translate("Target"))
+t:value("Priority", translate("priority"))
+t:value("Express", translate("express"))
+t:value("Normal", translate("normal"))
+t:value("Bulk", translate("low"))
 t.default = "Normal"
 
-srch = s:option(Value, "srchost")
+srch = s:option(Value, "srchost", translate("Source host"))
 srch.rmempty = true
 srch:value("", translate("all"))
-luci.tools.webadmin.cbi_add_knownips(srch)
+wa.cbi_add_knownips(srch)
 
-dsth = s:option(Value, "dsthost")
+dsth = s:option(Value, "dsthost", translate("Destination host"))
 dsth.rmempty = true
 dsth:value("", translate("all"))
-luci.tools.webadmin.cbi_add_knownips(dsth)
+wa.cbi_add_knownips(dsth)
 
-l7 = s:option(ListValue, "layer7", translate("service"))
+l7 = s:option(ListValue, "layer7", translate("Service"))
 l7.rmempty = true
 l7:value("", translate("all"))
-local pats = luci.fs.dir("/etc/l7-protocols")
+
+local pats = io.popen("find /etc/l7-protocols/ -type f -name '*.pat'")
 if pats then
-       for i,f in ipairs(pats) do
-               if f:sub(-4) == ".pat" then
-                       l7:value(f:sub(1, #f-4))
+       local l
+       while true do
+               l = pats:read("*l")
+               if not l then break end
+
+               l = l:match("([^/]+)%.pat$")
+               if l then
+                       l7:value(l)
                end
        end
+       pats:close()
 end
 
-p2p = s:option(ListValue, "ipp2p", "P2P")
-p2p:value("", "-")
-p2p:value("all", translate("all"))
-p2p:value("bit", "BitTorrent")
-p2p:value("dc", "DirectConnect")
-p2p:value("edk", "eDonkey")
-p2p:value("gnu", "Gnutella")
-p2p:value("kazaa", "Kazaa")
-p2p.rmempty = true
-
-p = s:option(Value, "proto", translate("protocol"))
+p = s:option(Value, "proto", translate("Protocol"))
 p:value("", translate("all"))
 p:value("tcp", "TCP")
 p:value("udp", "UDP")
 p:value("icmp", "ICMP")
 p.rmempty = true
 
-ports = s:option(Value, "ports", translate("ports"))
+ports = s:option(Value, "ports", translate("Ports"))
 ports.rmempty = true
-ports:value("", translate("allf", translate("all")))
+ports:value("", translate("all"))
+
+bytes = s:option(Value, "connbytes", translate("Number of bytes"))
 
 return m