Ariweb Suite 0.1.1 기반: 공통 라이브러리(db·http·세션·작업 엔진·할당/예약·알림·감사·보관소), 포털 뼈대, Webmaker/AriMail 도입 소스와 manifest
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
9ca4cee341
commit
c7aea8d419
@@ -0,0 +1,23 @@
|
||||
'use strict';
|
||||
/* ============================================================================
|
||||
* 비밀번호 규칙 안내 (v1.3.17)
|
||||
* 화면의 "비밀번호(6자 이상)" 같은 안내 문구를 관리자 콘솔에서 정한 지금 규칙으로 바꿔 보인다.
|
||||
* 대상: data-pw-rule 속성이 있는 입력칸(placeholder 의 괄호 안 규칙)과 라벨. 규칙 검사는 서버가 한다.
|
||||
* data-pw-rule="placeholder" — placeholder 를 "<원래 앞말> (<규칙>)" 으로
|
||||
* data-pw-rule="label" — 라벨 글자의 "(…)" 부분을 규칙으로
|
||||
* 전역: window.pwRuleText (규칙 문장, 불러오기 전에는 null), window.applyPwRule(root)
|
||||
* ========================================================================== */
|
||||
(function () {
|
||||
window.pwRuleText = null;
|
||||
var tr = function (s) { return typeof window.T === 'function' ? window.T(s) : s; };
|
||||
function apply(root) {
|
||||
if (!window.pwRuleText) return;
|
||||
(root || document).querySelectorAll('[data-pw-rule]').forEach(function (el) {
|
||||
var mode = el.getAttribute('data-pw-rule');
|
||||
if (mode === 'placeholder') { var head = (el.getAttribute('data-pw-head') || ''); el.placeholder = head ? head + ' (' + window.pwRuleText + ')' : window.pwRuleText; }
|
||||
else if (mode === 'label') { var n = el.firstChild; if (n && n.nodeType === 3) n.nodeValue = n.nodeValue.replace(/\([^)]*\)/, '(' + window.pwRuleText + ')'); }
|
||||
});
|
||||
}
|
||||
window.applyPwRule = apply;
|
||||
fetch('/api/auth/password-policy', { credentials: 'same-origin' }).then(function (r) { return r.ok ? r.json() : null; }).then(function (d) { if (d && d.text) { window.pwRuleText = d.text; apply(); } }).catch(function () {});
|
||||
})();
|
||||
Reference in New Issue
Block a user