diff --git a/src/components/auth/Join.jsx b/src/components/auth/Join.jsx index 94f7fa3e..a4c17e33 100644 --- a/src/components/auth/Join.jsx +++ b/src/components/auth/Join.jsx @@ -35,7 +35,12 @@ export default function Join() { const joinValidation = (formData) => { // 전화번호/FAX 정규식 (일본 형식: 0으로 시작, 하이픈 포함) - const telRegex = /^0\d{1,4}-\d{1,4}-\d{4}$/ + const telRegex = /^0\d{1,4}-\d{1,4}-\d{3,4}$/ + const isValidTel = (value) => { + if (!telRegex.test(value)) return false + const digitCount = value.replace(/-/g, '').length + return digitCount >= 10 && digitCount <= 11 + } // 판매대리점 정보 - 판매대리점명 @@ -77,7 +82,7 @@ export default function Join() { alert(getMessage('common.message.required.data', [getMessage('join.sub1.telNo')])) telNoRef.current.focus() return false - } else if (!telRegex.test(telNo)) { + } else if (!isValidTel(telNo)) { alert(getMessage('join.validation.check1', [getMessage('join.sub1.telNo')])) telNoRef.current.focus() return false @@ -98,7 +103,7 @@ export default function Join() { alert(getMessage('common.message.required.data', [getMessage('join.sub1.fax')])) faxRef.current.focus() return false - }else if (!telRegex.test(fax)) { + }else if (!isValidTel(fax)) { alert(getMessage('join.validation.check1', [getMessage('join.sub1.fax')])) faxRef.current.focus() return false @@ -173,7 +178,7 @@ export default function Join() { alert(getMessage('common.message.required.data', [getMessage('join.sub1.telNo')])) userTelNoRef.current.focus() return false - } else if (!telRegex.test(userTelNo)) { + } else if (!isValidTel(userTelNo)) { alert(getMessage('join.validation.check1', [getMessage('join.sub1.telNo')])) userTelNoRef.current.focus() return false @@ -185,7 +190,7 @@ export default function Join() { alert(getMessage('common.message.required.data', [getMessage('join.sub2.fax')])) userFaxRef.current.focus() return false - } else if (!telRegex.test(userFax)) { + } else if (!isValidTel(userFax)) { alert(getMessage('join.validation.check1', [getMessage('join.sub2.fax')])) userFaxRef.current.focus() return false diff --git a/src/locales/ja.json b/src/locales/ja.json index 0c589e1e..2953688e 100644 --- a/src/locales/ja.json +++ b/src/locales/ja.json @@ -683,7 +683,7 @@ "join.sub1.addr": "住所", "join.sub1.addr_placeholder": "全角50文字以内", "join.sub1.telNo": "電話番号", - "join.sub1.telNo_placeholder": "00-0000-0000", + "join.sub1.telNo_placeholder": "000-0000-0000 / 0000-000-000", "join.sub1.fax": "FAX番号", "join.sub1.fax_placeholder": "00-0000-0000", "join.sub1.bizNo": "法人番号", @@ -702,7 +702,7 @@ "join.complete.title": "HANASYS設計ログインID発行申請完了", "join.complete.contents": "※申請したIDが承認されると、担当者情報に入力したEメールアドレスにログイン関連案内メールが送信されます。", "join.complete.email_comment": "担当者のメールアドレス", - "join.validation.check1": "{0}形式を確認してください。", + "join.validation.check1": "{0}形式(000-0000-0000 / 0000-000-000)を確認してください。", "join.complete.save.confirm": "ID申請を完了後は申請情報の修正が出来ません。申請しますか?", "stuff.gridHeader.lastEditDatetime": "更新日時", "stuff.gridHeader.objectNo": "物件番号", diff --git a/src/locales/ko.json b/src/locales/ko.json index 6ada9943..7e871e60 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -683,7 +683,7 @@ "join.sub1.addr": "주소", "join.sub1.addr_placeholder": "전각50자이내", "join.sub1.telNo": "전화번호", - "join.sub1.telNo_placeholder": "000-0000-0000", + "join.sub1.telNo_placeholder": "000-0000-0000 또는 0000-000-000", "join.sub1.fax": "FAX 번호", "join.sub1.fax_placeholder": "00 0000 0000", "join.sub1.bizNo": "법인번호", @@ -702,7 +702,7 @@ "join.complete.title": "Q.CAST3 로그인ID 발행신청 완료", "join.complete.contents": "※ 신청한 ID가 승인되면 담당자 정보에 입력한 이메일 주소로 로그인 관련 안내 메일이 전송됩니다.", "join.complete.email_comment": "담당자 이메일 주소", - "join.validation.check1": "{0} 형식을 확인해주세요.", + "join.validation.check1": "{0} 형식(000-0000-0000 또는 0000-000-000)을 확인해주세요.", "join.complete.save.confirm": "Hanwha Japan 담당자에게 ID승인이 요청되면 더 이상 정보를 수정할 수 없습니다. 정말로 요청하시겠습니까?", "stuff.gridHeader.lastEditDatetime": "갱신일시", "stuff.gridHeader.objectNo": "물건번호",