b1068f0e360e52c5b2411e2306f20434069698df
5 var callLuciDHCPLeases
= rpc
.declare({
7 method
: 'getDHCPLeases',
11 return L
.Class
.extend({
12 title
: _('Active DHCP Leases'),
16 L
.resolveDefault(callLuciDHCPLeases(), {}),
17 network
.getHostHints()
21 render: function(data
) {
22 var leases
= Array
.isArray(data
[0].dhcp_leases
) ? data
[0].dhcp_leases
: [],
23 leases6
= Array
.isArray(data
[0].dhcp6_leases
) ? data
[0].dhcp6_leases
: [],
24 machints
= data
[1].getMACHints(false);
26 var table
= E('div', { 'class': 'table' }, [
27 E('div', { 'class': 'tr table-titles' }, [
28 E('div', { 'class': 'th' }, _('Hostname')),
29 E('div', { 'class': 'th' }, _('IPv4-Address')),
30 E('div', { 'class': 'th' }, _('MAC-Address')),
31 E('div', { 'class': 'th' }, _('Lease time remaining'))
35 cbi_update_table(table
, leases
.map(function(lease
) {
38 if (lease
.expires
=== false)
39 exp
= E('em', _('unlimited'));
40 else if (lease
.expires
<= 0)
41 exp
= E('em', _('expired'));
43 exp
= '%t'.format(lease
.expires
);
46 lease
.hostname
|| '-',
51 }), E('em', _('There are no active leases')));
53 var table6
= E('div', { 'class': 'table' }, [
54 E('div', { 'class': 'tr table-titles' }, [
55 E('div', { 'class': 'th' }, _('Host')),
56 E('div', { 'class': 'th' }, _('IPv6-Address')),
57 E('div', { 'class': 'th' }, _('DUID')),
58 E('div', { 'class': 'th' }, _('Lease time remaining'))
62 cbi_update_table(table6
, leases6
.map(function(lease
) {
65 if (lease
.expires
=== false)
66 exp
= E('em', _('unlimited'));
67 else if (lease
.expires
<= 0)
68 exp
= E('em', _('expired'));
70 exp
= '%t'.format(lease
.expires
);
72 var hint
= lease
.macaddr
? machints
.filter(function(h
) { return h
[0] == lease
.macaddr
})[0] : null,
75 if (hint
&& lease
.hostname
&& lease
.hostname
!= hint
[1] && lease
.ip6addr
!= hint
[1])
76 host
= '%s (%s)'.format(lease
.hostname
, hint
[1]);
77 else if (lease
.hostname
)
78 host
= lease
.hostname
;
84 lease
.ip6addrs
? lease
.ip6addrs
.join(' ') : lease
.ip6addr
,
88 }), E('em', _('There are no active leases')));
92 E('h3', _('Active DHCPv6 Leases')),