<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<script src="/js/dragNdropToPdf.js?date=202306080001"></script>

<script language=javascript>
var currentSendNumberStatus = null;

$(document).ready(function(){
	$("input:text[numberOnly]").on("keyup", function() {
		$(this).val($(this).val().replace(/[^0-9]/g,""));
	});
	//발신번호 등록 리스트	
	sendNumberListAjax(1);
});

function checkNumberLineCount(){
	$.ajax({
		url: "/web/user/send-number/status.do",
		type: "GET",
		dataType: "json",
		success: onCheckNumberLineSuccess,
		error: function() {
			currentSendNumberStatus = null;
			$("#lineLimitGuide").text("- 발신번호 등록 현황을 불러오지 못했습니다.");
			$("#wiredGuide").hide();
			$("#mobileLineStatus, #wiredLineStatus").text("-");
			$("#certStatus").empty().hide();
			$("#newSendNumberButton").hide();
		}
	});
}

function onCheckNumberLineSuccess(response) {
	if (!response || !response.success || !response.data) {
		currentSendNumberStatus = null;
		$("#newSendNumberButton").hide();
		alert(response && response.message ? response.message : "발신번호 등록 현황을 불러오지 못했습니다.");
		return;
	}
	currentSendNumberStatus = response.data;
	drawSendNumberStatus(currentSendNumberStatus);
}

function drawSendNumberStatus(status) {
	var isCompany = String(status.dept || "").toLowerCase() === "c";

	drawGuide(status, isCompany);
	drawCnt("#mobileLineStatus", status.mobileCnt, status.mobileMaxCnt, status.mobileAddYn);
	drawCnt("#wiredLineStatus", status.wiredCnt, status.wiredMaxCnt, status.wiredAddYn);

	if (isCompany) {
		$("#certStatus").html(drawWorkerStatus(status)).show();
	} else {
		$("#certStatus").empty().hide();
	}

	var canAddAny = status.mobileAddYn === "Y" || status.wiredAddYn === "Y";
	$("#newSendNumberButton").toggle(canAddAny);
}

function drawGuide(status, isCompany) {
	var lineGuide;
	if (isCompany) {
		lineGuide = '- 무선 발신번호 <span class="fwMd c_222">최대 ' + status.mobileMaxCnt
			+ '회선 등록 가능</span>합니다.';
		$("#wiredGuide").show();
	} else {
		lineGuide = '- 무선 발신번호 <span class="fwMd c_222">최대 ' + status.mobileMaxCnt
			+ '회선 / 유선 발신번호 최대 ' + status.wiredMaxCnt + '회선 등록 가능</span>합니다.';
		$("#wiredGuide").hide();
	}
	$("#lineLimitGuide").html(lineGuide);
}

function drawCnt(element, currentCnt, maxCnt, addYn) {
	var hasLimit = maxCnt !== null && maxCnt !== undefined;
	var isLimitReached = hasLimit && addYn === "N";
	var paragraphClass = isLimitReached ? 'c_e40000 fwBold' : '';
	var numberClass = isLimitReached ? 'c_e40000 fwBold' : 'fwMd';
	var countText = hasLimit
		? '<b class="' + numberClass + '">' + currentCnt + '</b>/' + maxCnt + '회선'
		: '<b class="fwMd">' + currentCnt + '</b>회선';

	$(element).attr('class', paragraphClass).html(countText);
}

function drawWorkerStatus(status) {
	var workerCount = status.authYn === "Y" ? status.certCnt : status.applyCnt;
	var workerHtml = workerCount === null || workerCount === undefined
		? ''
		: '<p>종사자 <b class="c_002c9a fwBold">' + workerCount + '</b>명</p>';
	var html = workerHtml;

	switch (status.authYn) {
		case "Y":
			var approvedMessage = status.wiredExceedYn === "Y"
				? '인증된 종사자 수 <b class="fwBold c_002c9a">' + workerCount
					+ '</b>명 기준 한도는 <b class="fwBold c_002c9a">' + status.wiredMaxCnt
					+ '</b>회선입니다.<br>기존에 등록된 <b class="fwBold c_002c9a">' + status.wiredCnt
					+ '</b>회선은 계속 사용할 수 있으며,<br>신규 등록만 제한됩니다.'
				: '인증된 종사자 수 <b class="fwBold c_002c9a">' + workerCount
					+ '</b>명 기준으로 유선 발신번호를<br>최대 <b class="fwBold c_002c9a">' + status.wiredMaxCnt
					+ '</b>회선까지 등록할 수 있습니다.';

			html += '<div class="badge blue"><i></i>인증완료'
				+ '<div class="hover_layer"><p>' + approvedMessage + '</p></div></div>'
				+ '<button type="button" class="btnType btnType14" data-tooltip="worker_count_popup" data-cert-mode="UPDATE">변경</button>';
			break;

		case "C":
			html += '<div class="badge red"><i></i>반려'
				+ '<div class="hover_layer"><p>제출한 서류가 반려되었습니다.<br>사유를 확인하고 재신청해 주세요.</p></div></div>'
				+ '<button type="button" class="btnType btnType14" data-tooltip="worker_count_popup" data-cert-mode="REAPPLY">재신청</button>';
			break;

		case "N":
			html += '<div class="badge yellow"><i></i>심사중'
				+ '<div class="hover_layer"><p>종사자 수 심사가 진행 중입니다.<br>승인 후 유선 발신번호를 등록할 수 있습니다.</p></div></div>';
			break;

		default :
			html = '<div class="badge yellow"><i></i>종사자 수 미등록'
				+ '<div class="hover_layer"><p>종사자 수를 인증하면 유선 발신번호를 등록할 수 있습니다.<br>'
				+ '이미 등록된 번호는 종사자 수와 관계없이 계속 사용 가능합니다.</p></div></div>'
				+ '<button type="button" class="btnType btnType14" data-tooltip="worker_count_popup" data-cert-mode="CREATE">등록</button>';
			break;
	}

	return html;
}

//발신번호 등록 리스트
function sendNumberListAjax(pageNo) {
	document.sendNumberListForm.pageIndex.value = pageNo;
	var sendData = $(document.sendNumberListForm).serializeArray();
	$("#sendNumberListLoad").load("/web/user/sendNumberListAjax.do", sendData, function (response, status, xhr) {
		if (status === "success") {
			checkNumberLineCount();
		}
	});
}

//발신번호 전체삭제
function deleteSendNumberAll() {
	if ($("input[name=chk]:checked").length == 0) {
		alert("선택된 항목이 없습니다.");
		return;
	}
	if (confirm("삭제하시겠습니까?")) {

		var chkId = [];
		$("input[name='chk']:checked").each(function () {
			chkId.push($(this).val());
		});

		$.ajax({
			type: 'POST'
			, url: "<c:url value='/web/user/deleteSendNumberAllAjax.do'/>"
			, data: {"chk": chkId}
			, dataType: 'json'
			, traditional: true
			, success: function (returnData, status) {
				if (returnData.result == "success") {
					alert("정상적으로 삭제 되었습니다.");
					sendNumberListAjax(1);
				} else {
					alert(returnData.message);
					return;
				}
			}
			, error: function (request, status, error) {
				alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
			}
		});
	}
}

//발신번호 기본번호 설정
function updateBaseYn() {
	if ($("input[name=chk]:checked").length == 0) {
		alert("선택된 항목이 없습니다.");
		return;
	}
	if ($("input[name=chk]:checked").length > 1) {
		alert("한개의 번호만 기본번호 설정이 가능합니다.");
		return;
	}
	if (confirm("기본번호로 설정하시겠습니까?")) {

		var baseId;
		$("input[name='chk']:checked").each(function () {
			baseId = $(this).val();
		});
		$.ajax({
			type: 'POST'
			, url: "<c:url value='/web/user/updateSendNumberBaseYnAjax.do'/>"
			, data: {"baseId": baseId}
			, dataType: 'json'
			, traditional: true
			, success: function (returnData, status) {
				if (returnData.result == "success") {
					alert("정상적으로 설정  되었습니다.");
					sendNumberListAjax(1);
				} else {
					alert(returnData.message);
					return;
				}
			}
			, error: function (request, status, error) {
				alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error);
			}
		});
	}
}

function fnRegisterPhoneNum() {
	if (!currentSendNumberStatus) {
		alert("발신번호 등록 현황을 확인 중입니다. 잠시 후 다시 시도해 주세요.");
		return false;
	}
	if (currentSendNumberStatus.mobileAddYn !== "Y" && currentSendNumberStatus.wiredAddYn !== "Y") {
		alert("등록 가능한 발신번호 회선이 없습니다. 사용하지 않거나 반려된 번호를 삭제해 주세요.");
		return false;
	}

	location.href = '/web/user/sendNumberManageRegister.do';

}
</script>

<div class="inner">
	<div class="send_top">
		<%@include file="/WEB-INF/jsp/web/user/mypageHeader.jsp" %>

		<div class="mypage_content current" id="tab5_4">
			<div class="heading call_numbe_con">
				<h2>발신번호 관리</h2>
				<div class="button_wrap">
					<button type="button" class="button certificate btn" data-tooltip="popup001">통신서비스 이용증명원 발급안내</button>
					<button type="button" class="button id_card btn" data-tooltip="popup004">대리인 신분증이란?</button>
					<button type="button" class="button pro_ex btn" data-tooltip="popup003">위임장 작성 방법</button>
				</div>	
			</div>
			<div class="mem_cont_in widthXL">
				<div class="titBox" id="sendNumberGuide">
					<p>- 문자 발송 전 “발신번호 등록”을 하셔야 서비스 이용이 가능합니다.</p>
					<p id="lineLimitGuide">- 발신번호 등록 한도를 확인 중입니다.</p>
					<p id="wiredGuide">- 유선 발신번호는 종사자 수 인증 후, 인증된 종사자 수만큼 등록 가능합니다.</p>
					<p>- <span class="fwMd c_222">대표번호(15xx, 16xx)는 유선 발신번호 회선 한도에 합산</span>됩니다.</p>
					<p>- 사용하지 않거나 반려된 번호를 삭제하면 추가 등록이 가능합니다.</p>
				</div>

				<div class="callNum_list_wrap">

					<div class="call_list_status">
						<p class="callNum_list_title">· 등록 현황 : </p>
						<ul>
							<li><strong>무선</strong><p id="mobileLineStatus">-</p></li>
							<li><strong>유선</strong><p id="wiredLineStatus">-</p></li>
						</ul>
						<button type="button" class="btnType btnType2" onclick="updateBaseYn();">기본번호 설정</button>
					</div>

					<div class="auth_status_wrap" id="certStatus" style="display:none;"></div>

				</div>

				<form id="sendNumberListForm" name="sendNumberListForm" method="post">
					<input type="hidden" name="pageIndex" />
					<div id="sendNumberListLoad"></div>
				</form>
				<div class="send_button_wrap">
					<button type="button" class="btnType btnType16" id="newSendNumberButton" style="display:none;" onclick="fnRegisterPhoneNum(); return false;">+ 신규 발신번호 등록</button>
				</div>
			</div>
		</div>
		<!--// 마이페이지 - 발신번호 관리 -->

		<%@ include file="/WEB-INF/jsp/web/user/sendNumberEmployeeCertPopup.jspf" %>


		<!-- 통신서비스 이용증명원 발급 안내 -->
		<div class="tooltip-wrap">
			<div class="popup-com servInfo_cont popup001" tabindex="0" data-tooltip-con="popup001" data-focus="popup001" data-focus-prev="popup001-close">
				<div class="popup_heading">
					<p>통신서비스 이용증명원 발급안내</p>
					<button type="button" class="tooltip-close" data-focus="popup001-close">
						<img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기">
					</button>
				</div>
				<div class="layer_in call_layer">
					<!-- 발신번호 관리 수정 -->
					<div class="call_number_pop">
						<ul class="call_numbber_list">
							<li>- 과학기술정보통신부 고시에 따라 발신번호 등록 시 <strong>통신서비스 이용증명원</strong>을 통해 전화번호 일치 여부 등을 확인하고 있습니다.</li>
							<li>- 이동통신사 고객센터 또는 홈페이지 등을 통해 해당 서류를 발급 후 발신번호 신청 시 함께 첨부해주시면 빠른 심사 처리가 가능합니다.</li>
							<li>- ※ 휴대폰 본인인증으로 대체 가능(단, 본인인증이 불가한 번호의 경우 서류 발급 필수)</li>
						</ul>
						<div class="noted_items">
							<p class="title">참고사항</p>
							<ul class="call_numbber_list">
								<li>· 발급 시 명의자의 성명(법인명), 생년월일(사업자번호), 서비스번호(전화번호) 등이 모두 노출되어야 함</li>
								<li>· 이용증명원 내 발급 시기 및 발급자 정보(발급 담당자의 성명 및 전화번호 등)가 포함되어야 함</li>
								<li>· 착신전용서비스, 타지역서비스, 디지털착신전용 발신번호 등록 불가</li>
							</ul>
						</div>
					</div>
	
					<p class="info_tit">[통신사 고객센터 정보]</p>
					<!-- 통신사 고객센터 수정 250619 -->
					<div class="call_new">
						<ul>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv1_1.png" alt="T 월드">
									</div>
									<p>
										<span class="fwLg">모바일</span>
										1599-0011&nbsp;&nbsp;/&nbsp;&nbsp;<span class="fwLg">유선</span> 1600-2000
									</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv2_1.png" alt="SK 7mobile">
									</div>
									<p>1599-0999</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv3_1.png" alt="B">
									</div>
									<p>106</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv4_1.png" alt="hello 모바일">
									</div>
									<p>KT망 1855-1144&nbsp;/&nbsp;SKT망
										1855-2114&nbsp;/&nbsp;LGU+망 1855-1140</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv5_1.png" alt="Kt">
									</div>
									<p>
										<span class="fwLg">모바일</span> 1588-0010&nbsp;&nbsp;/&nbsp;&nbsp;<span class="fwLg">유선</span>
										100
									</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv6_1.png" alt="snowman">
									</div>
									<p>KT망 1688-9300&nbsp;/&nbsp;SKT망
										1666-9316&nbsp;/&nbsp;LGU+망 1688-0045</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv7_1.png" alt="LG U+">
									</div>
									<p>
										<span class="fwLg">모바일</span>
										1544-0010&nbsp;&nbsp;/&nbsp;&nbsp;<span class="fwLg">유선</span> 101
									</p>
								</div>
							</li>
							<li>
								<div>
									<div class="call_img">
										<img src="/publish/images/content/call_serv8_1.png" alt="tplus">
									</div>
									<p>KT망 1811-1141&nbsp;/&nbsp;SKT망
										1877-9114&nbsp;/&nbsp;LGU+망 1533-7114</p>
								</div>
							</li>
						</ul>
					</div>
					<!--// 통신사 고객센터 수정 250619 -->
				</div>
			</div>
		</div>
		<!-- // 통신서비스 이용증명원 발급 안내 -->
		
		<!-- 대리인 신분증이란? 팝업 -->
		<div class="tooltip-wrap">
			<div class="popup-com servInfo_cont popup004" tabindex="0" data-tooltip-con="popup004" data-focus="popup004" data-focus-prev="popup004-close">
				<div class="popup_heading">
					<p>대리인 신분증이란?</p>
					<button type="button" class="tooltip-close" data-focus="popup001-close">
						<img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기">
					</button>
				</div>		
				<div class="layer_in">
					<!-- 발신번호 관리 수정 -->
					<div class="call_number_pop">
						<ul class="call_numbber_list">
					    	<li>- 타인/타사의 휴대전화(또는 일반전화)를 발신번호로 등록하기 위해서는  대리인(문자고 가입자)의 신분증 사본을 제출하여야 합니다.</li>
					    	<li>- 개인회원 : <strong>타인 휴대전화(or 일반전화)</strong> 발신번호 등록 시 제출</li>
					    	<li>- 기업회원 : <strong>타사 휴대전화(or 일반전화)</strong> 발신번호 등록 시 제출</li>
						</ul>
						<div class="noted_items">
							<p class="title">참고사항</p>
							<ul class="call_numbber_list">
								<li>· 신분증 사본 제출 시 주민번호 뒷자리는 마스킹 처리(개인정보 보호)</li>
								<li>· 제출 가능한 신분증 : 주민등록증, 운전면허증, 여권</li>
								<li>· 대리인 = <strong>문자고 가입자(O)</strong> 발신번호 명의자(X)</li>
							</ul>
						</div>
					</div>
					<div class="ex_con_wrap">
						<div class="ex_con">
							<p class="ex_con_tit">[제출 예시 이미지]</p>
							<img src="/publish/images/popup/id_card_ex.png" alt="제출 예시 이미지">
							<p class="ex_con_te">※ 이미지 자료 : 행정안전부</p>
						</div>
					</div>
				</div>
			</div>
		</div>
		<!--// 대리인 신분증이란? 팝업 -->
		
	    <!-- 위임장 작성 방법 팝업 -->
		<div class="tooltip-wrap">
			<div class="popup-com servInfo_cont popup003" tabindex="0" data-tooltip-con="popup003" data-focus="popup003" data-focus-prev="popup003-close">
				<div class="popup_heading">
					<p>위임장 작성 방법</p>
					<button type="button" class="tooltip-close" data-focus="popup001-close">
						<img src="/publish/images/content/layerPopup_close.png" alt="팝업 닫기">
					</button>
				</div>		
				<div class="layer_in pro_layer_in">
					<!-- 발신번호 관리 수정 -->
					<div class="pro_btn_wrap">
						<button type="button" class="button attorney btn" onclick="location.href='/download/number/문자고_발신번호_등록_위임장_양식.zip'">위임장 다운로드</button>
					</div>
					<div class="call_number_pop">
						<p class="pro_tit">타인 또는 타사의 휴대전화 및 일반전화 발신번호 등록을 위해서는 <br><span>위임장 제출이 필수</span>입니다.</p>
						<ul class="call_numbber_list">
					    	<li>- 위임자(발신번호 명의자)와 수임자(문자고 가입자)를 구분하여 작성</li>
					    	<li>- 개인정보 수집 이용 동의 체크</li>
					    	<li>- 위임자가 법인일 경우 도장 날인, 개인일경우 자필 서명</li>
						</ul>
					</div>
					<div class="ex_con_wrap">
						<div class="ex_con">
							<p class="ex_con_tit">[위임장 작성 예시]</p>
							<img src="/publish/images/popup/pro_ex.png" alt="제출 예시 이미지">
						</div>
					</div>
				</div>
			</div>
		</div>
		<!--// 위임장 작성 방법 팝업 -->
		
	</div>
	<!--// send top -->
</div>
<!--// content 영역 -->
