blob: 6ca02a83c118aa3107c26a6280b4889f679f351c (
plain)
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
58
59
|
<%+header%>
<input type="password" aria-hidden="true" style="position:absolute; left:-10000px" />
<script type="text/javascript">
function checkPassword() {
var pw1 = document.body.querySelector('[name="pw1"]');
var view = document.getElementById("passstrength");
var strongRegex = new RegExp("^(?=.{8,})(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?=.*\\W).*$", "g");
var mediumRegex = new RegExp("^(?=.{7,})(((?=.*[A-Z])(?=.*[a-z]))|((?=.*[A-Z])(?=.*[0-9]))|((?=.*[a-z])(?=.*[0-9]))).*$", "g");
var enoughRegex = new RegExp("(?=.{6,}).*", "g");
if (false == enoughRegex.test(pw1.value)) {
view.innerHTML = '<%:Password strength%>: <span style="color:red"><%:More Characters%></span>';
} else if (strongRegex.test(pw1.value)) {
view.innerHTML = '<%:Password strength%>: <span style="color:green"><%:Strong%></span>';
} else if (mediumRegex.test(pw1.value)) {
view.innerHTML = '<%:Password strength%>: <span style="color:orange"><%:Medium%></span>';
} else {
view.innerHTML = '<%:Password strength%>: <span style="color:red"><%:Weak%></span>';
}
return true;
}
</script>
<div class="cbi-map">
<h2><%:Router Password%></h2>
<div class="cbi-section-descr">
<%:Changes the administrator password for accessing the device%>
</div>
<div class="cbi-section-node">
<div class="cbi-value">
<label class="cbi-value-title" for="image"><%:Password%></label>
<div class="cbi-value-field">
<input type="password" name="pw1" onkeyup="checkPassword()"/><!--
--><button class="cbi-button cbi-button-neutral" title="<%:Reveal/hide password%>" aria-label="<%:Reveal/hide password%>" onclick="var e = this.previousElementSibling; e.type = (e.type === 'password') ? 'text' : 'password'">∗</button>
</div>
</div>
<div class="cbi-value">
<label class="cbi-value-title" for="image"><%:Confirmation%></label>
<div class="cbi-value-field">
<input type="password" name="pw2" onkeydown="if (event.keyCode === 13) submitPassword(event)" /><!--
--><button class="cbi-button cbi-button-neutral" title="<%:Reveal/hide password%>" aria-label="<%:Reveal/hide password%>" onclick="var e = this.previousElementSibling; e.type = (e.type === 'password') ? 'text' : 'password'">∗</button>
<div id="passstrength" class="cbi-value-description"></div>
</div>
</div>
</div>
</div>
<div class="cbi-page-actions">
<button class="btn cbi-button-apply" onclick="submitPassword(event)"><%:Save%></button>
</div>
<script type="application/javascript" src="<%=resource%>/view/system/password.js"></script>
<%+footer%>
|