X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=modules%2Ffreifunk%2Fluasrc%2Fview%2Ffreifunk-services%2Fservices.htm;fp=modules%2Ffreifunk%2Fluasrc%2Fview%2Ffreifunk-services%2Fservices.htm;h=941f85591ad1d7757d397ebd4754f3845babff3f;hp=0000000000000000000000000000000000000000;hb=b05459541234cf4902a57dea0865185210140ad5;hpb=f00bf93f0739040b68fd53499652bcb00307fb8e diff --git a/modules/freifunk/luasrc/view/freifunk-services/services.htm b/modules/freifunk/luasrc/view/freifunk-services/services.htm new file mode 100644 index 000000000..941f85591 --- /dev/null +++ b/modules/freifunk/luasrc/view/freifunk-services/services.htm @@ -0,0 +1,85 @@ +<%+header%> + +<% +require("luci.fs") +require("luci.util") + +-- check if nameservice plugin is enabled and where to find the services file +local has_services = false +local uci = require "luci.model.uci".cursor() +uci:foreach("olsrd", "LoadPlugin", function(s) + if s.library == "olsrd_nameservice.so.0.3" then + if s.services_file then + has_services = true + services_file = s.services_file + else + has_services = true + services_file = "/var/run/services_olsr" + end + end +end) + + +function fetch_services() + local rawdata = luci.fs.readfile(services_file) + + if #rawdata == 0 then + return nil + end + + local data = {} + + local tables = luci.util.split(luci.util.trim(rawdata), "\n", nil, true) + -- remove the first 3 lines + table.remove(tables,1) + table.remove(tables,1) + table.remove(tables,1) + + -- store last line in last_update and remove it, then remove another empty line at the end + last_update=table.remove(tables) + table.remove(tables) + + for i, tbl in ipairs(tables) do + local lines = luci.util.split(tbl, "\n", nil, true) + end + + return tables +end + +%> + +<% if has_services then %> +
<%:Url%> | +<%:Source%> | +
---|---|
+ <%=field[3]%> + | ++ <%=field[4]%> + | +