1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
'use strict';
'require form';
'require uci';
'require view';
return view.extend({
load: function () {
return Promise.all([
uci.load('rpcd')
]);
},
render: function () {
let m, s, o;
if (!uci.get('rpcd', 'policy'))
uci.add('rpcd', 'policy', 'policy');
m = new form.Map('rpcd', _('Policy'));
m.readonly = !L.hasViewPermission();
s = m.section(form.NamedSection, 'policy')
s.addremove = false;
s.anonymous = true;
o = s.option(form.Flag, 'enabled',
_('Enable password policy'));
o.default = o.disabled;
o = s.option(form.Value, 'pw_length',
_('Require a minimum password length'));
o.datatype = 'uinteger';
o.rmempty = true;
o.depends('enabled', '1');
o = s.option(form.Flag, 'digits',
_('Require digits'));
o.default = o.disabled;
o.rmempty = true;
o.depends('enabled', '1');
o = s.option(form.Flag, 'uc_lc',
_('Require upper/lower case'));
o.default = o.disabled;
o.rmempty = true;
o.depends('enabled', '1');
o = s.option(form.Flag, 'special_characters',
_('Require special characters <br/> (e.g., !, @, #, $, %, &)'));
o.default = o.disabled;
o.rmempty = true;
o.depends('enabled', '1');
return m.render();
}
});
|