2 Copyright (C)
2017 Steven Hessing
<steven.hessing@gmail.com
>
3 This is free software, licensed under the GNU General Public License v3.
4 /usr/lib/lua/luci/view/clients.htm
12 local last_modified =
"<boottime>"
17 if nixio.fs.access(
"/var/lib/noddos/DeviceDump.json") then
18 last_modified = os.date(
"%c", nixio.fs.stat(
"/var/lib/noddos/DeviceDump.json")['mtime'])
19 io.input(
"/var/lib/noddos/DeviceDump.json")
21 devdump = luci.jsonc.parse(t)
22 io.input(
"/var/lib/noddos/DeviceProfiles.json")
24 temp = luci.jsonc.parse(t)
26 for i, v in ipairs(temp) do
27 devicevalues[v.DeviceProfileUuid] = v
34 <div class=
"cbi-map" id=
"cbi-network">
35 <h2 name=
"content"><%:Clients%
></h2>
36 <div class=
"cbi-map-descr"><%:The following clients have been discovered on the network. The last discovery was completed at %
><%=last_modified%
></div>
38 <fieldset class=
"cbi-section">
39 <legend><%:Recognized Clients%
></legend>
40 <div class=
"cbi-section-node">
41 <div class=
"table cbi-section-table">
42 <div class=
"tr cbi-section-table-titles">
43 <div class=
"th cbi-section-table-cell"><%:Hostname%
></div>
44 <div class=
"th cbi-section-table-cell"><%:IPv4%
></div>
45 <div class=
"th cbi-section-table-cell"><%:MAC%
></div>
46 <div class=
"th cbi-section-table-cell"><%:Manufacturer%
></div>
47 <div class=
"th cbi-section-table-cell"><%:Model%
></div>
48 <div class=
"th cbi-section-table-cell"><%:Class%
></div>
52 for i,v in ipairs(devdump) do
53 if v.DeviceProfileUuid ~=
"" then
55 <div class=
"tr cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
56 <div class=
"td cbi-value-field"><%=v.Hostname%
></div>
57 <div class=
"td cbi-value-field"><%=v.Ipv4Address%
></div>
58 <div class=
"td cbi-value-field"><a href=
"/cgi-bin/clientdetails?mac=<%=v.MacAddress%>"><%=v.MacAddress%
></a></div>
59 <div class=
"td cbi-value-field"><%=devicevalues[v.DeviceProfileUuid].Manufacturer%
></div>
60 <div class=
"td cbi-value-field"><%=devicevalues[v.DeviceProfileUuid].Model%
></div>
61 <div class=
"td cbi-value-field"><%=devicevalues[v.DeviceProfileUuid].ThingClass%
></div>
72 <fieldset class=
"cbi-section">
73 <legend><%:Unrecognized Clients%
></legend>
74 <div class=
"cbi-section-node">
75 <div class=
"table cbi-section-table">
76 <div class=
"tr cbi-section-table-titles">
77 <div class=
"th cbi-section-table-cell"><%:Hostname%
></div>
78 <div class=
"th cbi-section-table-cell"><%:IPv4%
></div>
79 <div class=
"th cbi-section-table-cell"><%:MAC%
></div>
80 <div class=
"th cbi-section-table-cell"><%:Manufacturer%
></div>
81 <div class=
"th cbi-section-table-cell"><%:Model%
></div>
82 <div class=
"th cbi-section-table-cell"><%:DHCP Vendor%
></div>
83 <div class=
"th cbi-section-table-cell"><%:DHCP Hostname%
></div>
87 for i,v in ipairs(devdump) do
88 if v.DeviceProfileUuid ==
"" then
90 <div class=
"tr cbi-section-table-row cbi-rowstyle-<%=(style and 1 or 2)%>">
91 <div class=
"td cbi-value-field"><%=v.Hostname%
></div>
92 <div class=
"td cbi-value-field"><%=v.Ipv4Address%
></div>
93 <div class=
"td cbi-value-field"><a href=
"/cgi-bin/clientdetails?mac=<%=v.MacAddress%>"><%=v.MacAddress%
></a></div>
94 <div class=
"td cbi-value-field"><%=v.SsdpManufacturer%
></div>
95 <div class=
"td cbi-value-field"><%=v.SsdpModelName%
></div>
96 <div class=
"td cbi-value-field"><%=v.DhcpVendor1%
></div>
97 <div class=
"td cbi-value-field"><%=v.DhcpHostname%
></div>