3 <script type="application/javascript">//<![CDATA[
4 function submitPassword(ev) {
5 var pw1 = document.body.querySelector('[name="pw1"]'),
6 pw2 = document.body.querySelector('[name="pw2"]');
8 if (!pw1.value.length || !pw2.value.length)
11 if (pw1.value === pw2.value) {
12 showModal('<%:Change login password%>',
13 E('p', { class: 'spinning' }, '<%:Changing password…%>'));
15 (new XHR()).post('<%=url("admin/system/admin/password/json")%>',
16 { token: '<%=token%>', password: pw1.value },
18 showModal('<%:Change login password%>', [
19 E('div', _('The system password has been successfully changed.')),
20 E('div', { 'class': 'right' },
21 E('div', { class: 'btn', click: hideModal }, '<%:Dismiss%>'))
24 pw1.value = pw2.value = '';
28 showModal('<%:Change login password%>', [
29 E('div', { class: 'alert-message warning' },
30 _('Given password confirmation did not match, password not changed!')),
31 E('div', { 'class': 'right' },
32 E('div', { class: 'btn', click: hideModal }, '<%:Dismiss%>'))
38 <input type="password" aria-hidden="true" style="position:absolute; left:-10000px" />
41 <h2><%:Router Password%></h2>
43 <div class="cbi-section-descr">
44 <%:Changes the administrator password for accessing the device%>
47 <div class="cbi-section-node">
48 <div class="cbi-value">
49 <label class="cbi-value-title" for="image"><%:Password%></label>
50 <div class="cbi-value-field">
51 <input type="password" name="pw1" /><!--
52 --><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>
56 <div class="cbi-value">
57 <label class="cbi-value-title" for="image"><%:Confirmation%></label>
58 <div class="cbi-value-field">
59 <input type="password" name="pw2" onkeydown="if (event.keyCode === 13) submitPassword(event)" /><!--
60 --><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>
66 <div class="cbi-page-actions">
67 <button class="btn cbi-button-apply" onclick="submitPassword(event)"><%:Save%></button>