modules/freifunk: Make display of ipv4 default route in public status work with freif...
[project/luci.git] / modules / freifunk / luasrc / controller / freifunk / freifunk.lua
index 89cd0ff..1d0175f 100644 (file)
@@ -51,7 +51,7 @@ function index()
        page.order    = 20
        page.i18n     = "base"
        page.setuser  = false
        page.order    = 20
        page.i18n     = "base"
        page.setuser  = false
-    page.setgroup = false
+       page.setgroup = false
 
        entry({"freifunk", "status.json"}, call("jsonstatus"))
        entry({"freifunk", "status", "zeroes"}, call("zeroes"), "Testdownload")
 
        entry({"freifunk", "status.json"}, call("jsonstatus"))
        entry({"freifunk", "status", "zeroes"}, call("zeroes"), "Testdownload")
@@ -292,7 +292,18 @@ function public_status_json()
                dest = dr4.dest:string(),
                dev = dr4.device,
                metr = dr4.metric }
                dest = dr4.dest:string(),
                dev = dr4.device,
                metr = dr4.metric }
-       end
+       else
+               local dr = sys.exec("ip r s t olsr-default")
+               if dr then
+                       local dest, gateway, dev, metr = dr:match("^(%w+) via (%d+.%d+.%d+.%d+) dev (%w+) +metric (%d+)")
+                       def4 = {
+                               dest = dest,
+                               gateway = gateway,
+                               dev = dev,
+                               metr = metr
+                       }
+               end
+        end
        
        rv[#rv+1] = {
                time = os.date("%a, %d %b %Y, %H:%M:%S"),
        
        rv[#rv+1] = {
                time = os.date("%a, %d %b %Y, %H:%M:%S"),