772 lines
21 KiB
JavaScript
772 lines
21 KiB
JavaScript
|
|
$(document).ready(function (){
|
|
|
|
//받는사람 연락처 내용 처리
|
|
//Tabulator AJAX Data Loading
|
|
tableL = new Tabulator(".callList_box", {
|
|
height:"255px",
|
|
layout:"fitDataStretch",
|
|
headerHozAlign:"center",
|
|
validationMode:"highlight",
|
|
placeholder:"복사(Ctrl+C)한 내용을 여기에 붙여넣기(Ctrl+V) 해주세요.", //fit columns to width of table (optional)
|
|
resizableColumns:false,
|
|
columns:[ //Define Table Columns
|
|
{formatter:"rowSelection", titleFormatter:"rowSelection",clipboard:false, hozAlign:"center", headerSort:false, cellClick:function(e, cell){
|
|
cell.getRow().toggleSelect();
|
|
}},
|
|
{title:"이름", hozAlign:"center", field:"name", editor:"input", validator:["maxLength:12"], cellEdited:function(cell){
|
|
}},
|
|
{title:"수신번호", hozAlign:"center", field:"phone", editor:"input", width:100, validator:["required","minLength:10", "maxLength:12", "regex:/[^0-9]/g, ''"], cellEdited:function(cell){
|
|
//cell - cell component
|
|
fnDuplPhone();
|
|
}},
|
|
],
|
|
validationFailed:function(cell, value, parameters){ // 유효성 체크 함수 - 아직 잘 모르겠음
|
|
//take action on validation fail
|
|
var valid = cell.isValid();
|
|
var fieldNm = cell.getField();
|
|
var cellVal = cell.getValue();
|
|
var returnVal = "";
|
|
if(!valid){
|
|
|
|
if(fieldNm == "name"){
|
|
alert("받는사람 이름은 최대 12글자까지만 입력 가능합니다.");
|
|
cell.setValue(strMaxLengthSubstring(cellVal, 11)); //스크립트 함수가 0부터 시작이므로 원하는 글자수 -1을 해줘야한다.
|
|
cell.clearValidation();
|
|
}else if(fieldNm == "phone"){
|
|
alert("휴대폰번호는 하이픈(-)을 제외한 숫자만 정확히 입력해 주세요.");
|
|
cell.setValue(cell.getValue().replaceAll("[^0-9]", ""));
|
|
}else{
|
|
alert("치환문자를 정확히 입력해 주세요. 40글자 이내로 입력 가능합니다.");
|
|
cell.setValue(strMaxLengthSubstring(cellVal, 39));
|
|
cell.clearValidation();
|
|
}
|
|
|
|
//해당 셀 데이터 삭제
|
|
//cell.setValue("");
|
|
|
|
}
|
|
return value % parameters.phone;
|
|
},
|
|
|
|
});
|
|
|
|
|
|
//주소록 불러오기 팝업 내용
|
|
//Tabulator AJAX Data Loading
|
|
tableAddr = new Tabulator(".callAddr_box", {
|
|
height:"255px",
|
|
layout:"fitColumns",
|
|
headerHozAlign:"center",
|
|
validationMode:"highlight",
|
|
placeholder:"주소록 그룹을 선택해 주세요.", //fit columns to width of table (optional)
|
|
resizableColumns:false,
|
|
columns:[ //Define Table Columns
|
|
{formatter:"rowSelection", titleFormatter:"rowSelection",clipboard:false, hozAlign:"center", headerSort:false, cellClick:function(e, cell){
|
|
cell.getRow().toggleSelect();
|
|
}
|
|
},
|
|
{title:"그룹명", hozAlign:"center", field:"addrGroupNm", editor:"input", width:200, validator:["required","minLength:2", "maxLength:40"]},
|
|
{title:"이름", hozAlign:"center", field:"addrName", editor:"input", width:250, validator:["maxLength:12"]},
|
|
{title:"수신자번호", hozAlign:"center", field:"addrPhone", editor:"input", width:300, validator:["required","minLength:10", "maxLength:11"]},
|
|
// {title:"[*1*]", hozAlign:"center", field:"addrRep1", editor:"input", width:84, validator:["maxLength:40"]},
|
|
// {title:"[*2*]", hozAlign:"center", field:"addrRep2", editor:"input", width:84, validator:["maxLength:40"]},
|
|
// {title:"[*3*]", hozAlign:"center", field:"addrRep3", editor:"input", width:84, validator:["maxLength:40"]},
|
|
// {title:"[*4*]", hozAlign:"center", field:"addrRep4", editor:"input", width:84, validator:["maxLength:40"]},
|
|
|
|
],
|
|
validationFailed:function(cell, value, parameters){ // 유효성 체크 함수 - 아직 잘 모르겠음
|
|
var valid = cell.isValid();
|
|
var fieldNm = cell.getField();
|
|
if(!valid){
|
|
if(fieldNm == "addrName"){
|
|
alert("받는사람 이름은 최대 12글자까지만 입력 가능합니다.");
|
|
}else if(fieldNm == "addrPhone"){
|
|
alert("휴대폰번호는 하이픈(-)을 제외한 숫자만 정확히 입력해 주세요.");
|
|
}else if(fieldNm == "addrGroupNm"){
|
|
alert("그룹명을 정확히 입력해 주세요. 2 ~ 40글자 이내로 입력 가능합니다.");
|
|
}else{
|
|
alert("치환문자를 정확히 입력해 주세요. 100글자 이내로 입력 가능합니다.");
|
|
}
|
|
|
|
//해당 셀 데이터 삭제
|
|
cell.setValue("");
|
|
}
|
|
return value % parameters.addrPhone;
|
|
},
|
|
|
|
});
|
|
|
|
//핸드폰 번호 Tabulator에서 수정시 중복 체크
|
|
function fnDuplPhone(){
|
|
|
|
var recTableData = tableL.getRows(); // 받는사람 리스트의 전체 목록을 저장
|
|
var tableData = [];
|
|
|
|
//기존 받는사람 리스트를 배열에 미리 담아둔다.
|
|
if(recTableData.length > 0){
|
|
|
|
for(var j=0; j < recTableData.length; j++){
|
|
|
|
tableData.push({phone: removeDash(recTableData[j].getData().phone.trim()) , name: recTableData[j].getData().name});
|
|
}
|
|
|
|
}
|
|
|
|
//수신목록에서 중복 휴대폰문자가 있는지 체크해주기
|
|
var dupCnt = dupliPhoneDataChk(tableData);
|
|
|
|
if(dupCnt > 0){
|
|
|
|
if(confirm("동일한 휴대폰 번호가 받는사람 목록에 등록되어 있습니다. 중복 번호를 삭제하시겠습니까?")){
|
|
|
|
//수신목록에서 중복 휴대폰 번호 삭제해주기
|
|
tableL.clearData(); //기존 받는사람 목록을 삭제.
|
|
tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기
|
|
_fileForm2 = []; //form file data 초기화
|
|
_fileIdx = 0; //form file idx 초기화
|
|
|
|
totRows = tableL.getRows().length;
|
|
updateTotCnt(totRows); //전체 데이터 갯수 구하기
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//받는사람 목록에 복사/붙여넣기 기능 처리
|
|
$('.callList_box').on('paste', function (e) {
|
|
var element = e.originalEvent.clipboardData.getData('text'); // 클립보드에 복사한 데이터 가져오기
|
|
|
|
var elmSplit= [];
|
|
|
|
elmSplit = element.split("\n");
|
|
|
|
var elmLen = elmSplit.length;
|
|
|
|
|
|
if(elmLen < 0){
|
|
alert("붙여넣을 연락처를 복사해주세요.");
|
|
return false;
|
|
}else{
|
|
tableErrorData.length = 0; // 오류 번호 배열 초기화
|
|
|
|
var splitData = [];
|
|
var realPhone = [];
|
|
for(var i=0; i < elmLen; i++){
|
|
|
|
var splitStr = elmSplit[i];
|
|
var tabData = [];
|
|
var comData = [];
|
|
|
|
if(splitStr.indexOf('\t') != -1){
|
|
splitData = splitStr.split('\t'); //탭 구분으로 데이터 분할
|
|
}else if(splitStr.indexOf(',') != -1){
|
|
splitData = splitStr.split(','); //콤마 구분으로 데이터 분할
|
|
}else{
|
|
splitData = splitStr.split(' ');
|
|
}
|
|
|
|
|
|
if(splitData.length == 0){// 데이터가 없는경우
|
|
|
|
alert("탭으로 구분하여 데이터를 복사해 주세요.");
|
|
return false;
|
|
|
|
}else if(splitData.length == 1){// 데이터가 탭으로 구분이 없는 경우
|
|
|
|
for(var j=0; j < splitData.length; j++){
|
|
if(checkFaxNum(splitData[j].trim())){//핸드폰 양식이 맞는지 확인
|
|
//배열 끝에 데이터 추가해 주기
|
|
realPhone.push({phone: removeDash(splitData[j].trim()), name: ""});
|
|
}
|
|
else {
|
|
if (splitData[j].trim() != '' && splitData[j].trim() != null && splitData[j].trim() != undefined) {
|
|
tableErrorData.push(splitData[j].trim());
|
|
}
|
|
}
|
|
}
|
|
|
|
}else{//데이터가 탭으로 구분되어 이름, 연락처로 구분된 경우
|
|
|
|
var phone = ""; //핸드폰번호
|
|
var name = ""; //이름
|
|
var rep1 = ""; //치환문자1
|
|
var rep2 = ""; //치환문자2
|
|
var rep3 = ""; //치환문자3
|
|
var rep4 = ""; //치환문자4
|
|
var isPhoneValid = false;
|
|
for(var j=0; j < splitData.length; j++){
|
|
|
|
if(j == 0){
|
|
|
|
name = splitData[j].trim();
|
|
|
|
}
|
|
|
|
if(j == 1){
|
|
|
|
if(checkFaxNum(splitData[j].trim())){//핸드폰 양식이 맞는지 확인
|
|
phone = removeDash(splitData[j].trim());
|
|
isPhoneValid = true;
|
|
}else{
|
|
if (splitData[j].trim() != '' && splitData[j].trim() != null && splitData[j].trim() != undefined) {
|
|
tableErrorData.push(splitData[j].trim());
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
if(j == 2){ //치환문자1
|
|
|
|
rep1 = splitData[j].trim();
|
|
|
|
}
|
|
|
|
if(j == 3){ //치환문자2
|
|
|
|
rep2 = splitData[j].trim();
|
|
|
|
}
|
|
|
|
if(j == 4){ //치환문자3
|
|
|
|
rep3 = splitData[j].trim();
|
|
|
|
}
|
|
|
|
if(j == 5){ //치환문자4
|
|
|
|
rep4 = splitData[j].trim();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (isPhoneValid == true) {
|
|
//배열 끝에 데이터 추가해 주기
|
|
realPhone.push({phone: phone, name: name, rep1 : rep1, rep2 : rep2, rep3 : rep3, rep4 : rep4 });
|
|
}
|
|
|
|
}//else end
|
|
|
|
}
|
|
|
|
var recTableData = tableL.getRows(); // 받는사람 리스트의 전체 목록을 저장
|
|
var tableData = [];
|
|
|
|
//기존 받는사람 리스트를 배열에 미리 담아둔다.
|
|
if(recTableData.length > 0){
|
|
|
|
for(var j=0; j < recTableData.length; j++){
|
|
|
|
tableData.push({phone: removeDash(recTableData[j].getData().phone.trim()) , name: recTableData[j].getData().name, rep1: recTableData[j].getData().rep1, rep2: recTableData[j].getData().rep2, rep3: recTableData[j].getData().rep3, rep4: recTableData[j].getData().rep4, });
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(realPhone.length > 0){
|
|
|
|
for(var j=0; j < realPhone.length; j++){
|
|
|
|
tableData.push({phone: removeDash(realPhone[j].phone.trim()) , name: realPhone[j].name, rep1: realPhone[j].rep1, rep2: realPhone[j].rep2, rep3: realPhone[j].rep3, rep4: realPhone[j].rep4});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//tableData.push(realPhone);
|
|
|
|
//중복 연락처 1개만 남기고 삭제하기
|
|
var removeDuplPhone = dupliPhoneData(tableData);
|
|
|
|
//수신자 리스트에 전화번호 추가해주기
|
|
//tableL.addData(removeDuplPhone);
|
|
tableL.setData(removeDuplPhone);
|
|
|
|
totRows = tableL.getRows().length;
|
|
updateTotCnt(totRows); //전체 데이터 갯수 구하기
|
|
|
|
var smsTxtArea = $('#smsTxtArea').val();
|
|
fn_priceClclt();
|
|
// //일괄변환 문구 결제금액 처리
|
|
// if(smsTxtArea.indexOf("[*이름*]") > -1
|
|
// || smsTxtArea.indexOf("[*1*]") > -1
|
|
// || smsTxtArea.indexOf("[*2*]") > -1
|
|
// || smsTxtArea.indexOf("[*3*]") > -1
|
|
// || smsTxtArea.indexOf("[*4*]") > -1){
|
|
//
|
|
// fnReplCell();
|
|
// }else{
|
|
// //결제 금액 구하기
|
|
// totalPriceSum(totRows);
|
|
// }
|
|
|
|
if (tableErrorData.length > 0) {
|
|
alert("올바르지 않은 휴대폰 번호가 "+ tableErrorData.length +" 건 있습니다.");
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
//받는사람 번호 버튼 클릭시 Tabulator에 데이터 넣어주기
|
|
$('.addCallToF').click(function(){
|
|
|
|
var callToNum = $('#callTo').val();
|
|
if(callToNum == null || callToNum == ""){
|
|
alert("받는사람 번호를 입력해 주세요.");
|
|
return false;
|
|
}
|
|
if(!checkFaxNum(callToNum)){
|
|
alert("올바른 팩스 번호를 입력해 주세요.");
|
|
$('#callTo').focus();
|
|
return false;
|
|
|
|
}
|
|
callToNum = callToNum.replaceAll("[^0-9]", "");
|
|
|
|
//핸드폰 번호에 '-' 문자 제거하기
|
|
callToNum = removeDash(callToNum);
|
|
|
|
//기존 받는사람 연락처 모두 불러오기
|
|
var data = tableL.getRows();
|
|
var tableData = [];
|
|
var dpCnt = 0;
|
|
for(var i=0; i < tableL.getRows().length; i++){
|
|
|
|
if(callToNum == data[i].getData().phone){
|
|
|
|
dpCnt++;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(dpCnt > 0){
|
|
|
|
alert("받는사람 리스트에 동일한 연락처가 있습니다.");
|
|
$('#callTo').val("");
|
|
return false;
|
|
|
|
}else{
|
|
|
|
tabledata = [{phone: callToNum},];
|
|
|
|
//빈 row 데이터 삭제하기
|
|
var befData = tableL.getRows();
|
|
var totLen = tableL.getRows().length;
|
|
|
|
for(var i=0; i < totLen; i++){
|
|
|
|
tableData.push({phone: data[i].getData().phone.trim(), name: data[i].getData().name});
|
|
|
|
}
|
|
|
|
//연락처 추가해 주기
|
|
addPhoneInfo(tabledata);
|
|
|
|
//tableL.addData(tabledata);
|
|
|
|
//전체 데이터 갯수 구하기
|
|
//totRows = tableL.getRows().length;
|
|
//updateTotCnt(totRows);
|
|
|
|
//결제 금액 구하기
|
|
//totalPriceSum(totRows);
|
|
|
|
$('#callTo').val("");
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
//받는사람 전체삭제 버튼 처리
|
|
$('.all_del').click(function(){
|
|
|
|
var data = tableL.getRows();
|
|
|
|
if(data == null || data == ""){
|
|
|
|
alert("받는사람을 추가해 주세요.");
|
|
return false;
|
|
|
|
}else{
|
|
|
|
if(confirm("받는사람 목록을 모두 삭제하시겠습니까?")){
|
|
tableL.clearData();
|
|
$("#rowTotCnt").text(0); //총건수 수정
|
|
$("#rowDupCnt").text(0); //중복건수 수정
|
|
totalPriceSum(0); //결제 금액 수정
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
// 받는사람 선택삭제 버튼 처리해주기
|
|
$('.select_del').click(function(){
|
|
|
|
if(tableL == null || tableL == ""){
|
|
|
|
alert("받는사람을 추가해 주세요.");
|
|
return false;
|
|
|
|
}
|
|
|
|
var selectedData = tableL.getSelectedRows();
|
|
|
|
if(selectedData == "" || selectedData == null){
|
|
|
|
alert("삭제할 연락처를 선택해주세요.");
|
|
return false;
|
|
|
|
}else{ // 선택한 Row 데이터 삭제하기
|
|
|
|
if(confirm("선택하신 받는 사람을 삭제하시겠습니까?")){
|
|
|
|
for(var i=0; i < selectedData.length; i++){
|
|
|
|
selectedData[i].delete();
|
|
|
|
}
|
|
|
|
totRows = tableL.getRows().length;
|
|
|
|
updateTotCnt(totRows);
|
|
|
|
var smsTxtArea = $('#smsTxtArea').val();
|
|
fn_priceClclt();
|
|
// //일괄변환 문구 결제금액 처리
|
|
// if(smsTxtArea.indexOf("[*이름*]") > -1
|
|
// || smsTxtArea.indexOf("[*1*]") > -1
|
|
// || smsTxtArea.indexOf("[*2*]") > -1
|
|
// || smsTxtArea.indexOf("[*3*]") > -1
|
|
// || smsTxtArea.indexOf("[*4*]") > -1){
|
|
//
|
|
// fnReplCell();
|
|
// }else{
|
|
// //결제 금액 구하기
|
|
// totalPriceSum(totRows);
|
|
// }
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
//주소록 불러오기 버튼 클릭시
|
|
$('.popupAddr').click(function(){
|
|
|
|
var login = '${LoginVO.id}';
|
|
|
|
if(login == null || login == ''){
|
|
|
|
alert("로그인 후 이용이 가능합니다.");
|
|
return false;
|
|
|
|
}
|
|
|
|
$("#addrGroupLoad").load("/web/mjon/fax/addr/selectFaxAddrGroupListAjaxView.do", "" ,function(response, status, xhr){
|
|
// $("#addrGroupLoad").load("/web/mjon/fax/addr/faxAddrGroupListAjax.do", "" ,function(response, status, xhr){
|
|
//리스트 스크롤 처리해주기
|
|
$(".adr_pop_list").mCustomScrollbar({
|
|
axis: 'y',
|
|
scrollbarPosition: "outside",
|
|
theme: "dark",
|
|
autoHideScrollbar: false
|
|
});
|
|
});
|
|
|
|
});
|
|
|
|
//엑섹불러오기 버튼 클릭시 파일 첨부 실행
|
|
$('.c3').click(function(){ // 엑셀파일 불러오기 선택 시
|
|
|
|
$("#excelFile").click();
|
|
|
|
});
|
|
|
|
//엑섹불러오기 버튼 클릭시 파일 첨부 실행
|
|
$('.upImg').click(function(){ // 엑셀파일 불러오기 선택 시
|
|
|
|
$("#imgFile").click();
|
|
|
|
});
|
|
|
|
//최근전송내역 팝업 선택추가 버튼 처리(체크내역 받는사람 리스트로 추가해주기)
|
|
$(document).on('click', '#latestAddPhone', function (){
|
|
|
|
var addPhoneList = []; //신규로 추가할 전화번호 저장변수
|
|
|
|
$("input:checkbox[name='latAddrChk']:checked").each(function(index){
|
|
|
|
var chkPhone = $(this).val();
|
|
|
|
// if(!checkHpNum(chkPhone)){
|
|
|
|
// alert("올바른 전화번호가 아닙니다.");
|
|
// return false;
|
|
|
|
// }else{
|
|
|
|
addPhoneList.push({phone: removeDash(chkPhone.trim())});
|
|
|
|
// }
|
|
|
|
});
|
|
|
|
|
|
if(addPhoneList.length > 0){
|
|
//연락처 추가해 주기
|
|
addPhoneInfo(addPhoneList);
|
|
$("#btnLatestAddPhoneClose").trigger("click");
|
|
}
|
|
else {
|
|
alert("연락처를 선택해주세요.");
|
|
return false;
|
|
}
|
|
|
|
//중복연락처 제거
|
|
//var removeDuplData = dupliPhoneData(addPhoneList);
|
|
|
|
//받는사람 목록에 추가
|
|
//tableL.addData(removeDuplData);
|
|
|
|
//총 받는사람 수 계산
|
|
//totRows = tableL.getRows().length;
|
|
//updateTotCnt(totRows);
|
|
|
|
//결제 금액 구하기
|
|
//totalPriceSum(totRows);
|
|
|
|
});
|
|
|
|
//최근전송내역 팝업 선택 취소 버튼 처리
|
|
$(document).on('click', '#latestCancelPhone', function (){
|
|
|
|
$("input[name=latAddrChk]").prop("checked", false);
|
|
|
|
});
|
|
|
|
//최근전송내역 팝업 삭제 버튼 처리
|
|
$(document).on('click', '#latestAddrDel', function (){
|
|
|
|
$(this).parent("#latestLi").remove();
|
|
|
|
});
|
|
|
|
//자주보내는 번호 팝업 선택추가 버튼 처리(체크내역 받는사람 리스트로 추가해주기)
|
|
$(document).on('click', '#bookMarkAddPhone', function (){
|
|
|
|
var addPhoneList = []; //신규로 추가할 전화번호 저장변수
|
|
|
|
$("input:checkbox[name='bookAddrChk']:checked").each(function(index){
|
|
|
|
var chkPhone = $(this).val();
|
|
|
|
// if(!checkHpNum(chkPhone)){
|
|
//
|
|
// alert("올바른 전화번호가 아닙니다.");
|
|
// return false;
|
|
//
|
|
// }else{
|
|
|
|
addPhoneList.push({phone: removeDash(chkPhone.trim())});
|
|
|
|
// }
|
|
|
|
});
|
|
|
|
if(addPhoneList.length > 0){
|
|
//연락처 추가해 주기
|
|
addPhoneInfo(addPhoneList);
|
|
$("#btnLatestAddPhoneClose").trigger("click");
|
|
}
|
|
else {
|
|
alert("연락처를 선택해주세요.");
|
|
return false;
|
|
}
|
|
|
|
//중복연락처 제거
|
|
//var removeDuplData = dupliPhoneData(addPhoneList);
|
|
|
|
//받는사람 목록에 추가
|
|
//tableL.addData(removeDuplData);
|
|
|
|
//총 받는사람 수 계산
|
|
//totRows = tableL.getRows().length;
|
|
//updateTotCnt(totRows);
|
|
|
|
//결제 금액 구하기
|
|
//totalPriceSum(totRows);
|
|
|
|
});
|
|
|
|
//자주보내는 번호 팝업 선택 취소 버튼 처리
|
|
$(document).on('click', '#bookMarkCancelPhone', function (){
|
|
|
|
$("input[name=bookAddrChk]").prop("checked", false);
|
|
|
|
});
|
|
|
|
//자주보내는 번호 팝업 삭제 버튼 처리
|
|
$(document).on('click', '#bookMarkAddrDel', function (){
|
|
|
|
$(this).parent("#bookMarkLi").remove();
|
|
|
|
});
|
|
|
|
// 자주보내는 번호 팝업 닫기 버튼 처리
|
|
$(document).on('click', '#btnLatestAddPhoneClose', function (){
|
|
// 자주보내는 번호 체크박스 해제처리
|
|
setCheckBoxUnChecked();
|
|
});
|
|
|
|
// 자주보내는 번호 체크박스 해제처리
|
|
function setCheckBoxUnChecked() {
|
|
$("input[name=latAddrChk]").prop("checked", false);
|
|
$("input[name=bookAddrChk]").prop("checked", false);
|
|
}
|
|
|
|
|
|
//오류 검사 버튼 처리
|
|
$('.check_validity').click(function(){
|
|
|
|
var invalid = tableL.getInvalidCells(); //오류 데이터 체크
|
|
var dataLen = tableL.getRows().length; //연락처 데이터 갯수
|
|
var totLen = invalid.length; //오류 데이터 갯수
|
|
var errMsg = ""; //최종 alert에 표시할 메시지 저장 변수
|
|
|
|
if(dataLen > 0){ //연락처 정보가 있으면 수행
|
|
|
|
if(totLen > 0){ //내용에 오류가 있으면 수행
|
|
|
|
//오류 데이터 값 저장
|
|
for(var i=0; i < totLen; i++){
|
|
|
|
var cellValue = invalid[i].getValue();
|
|
|
|
if(i == 0){
|
|
|
|
errMsg = cellValue;
|
|
|
|
}else{
|
|
|
|
errMsg = errMsg +", "+ cellValue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if(errMsg == "" || errMsg == null){
|
|
|
|
alert("내용에 오류가 있습니다.");
|
|
return false;
|
|
|
|
}else{
|
|
|
|
alert(errMsg + "의 내용에 오류가 있습니다.");
|
|
return false;
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
alert("오류 데이터가 없습니다.");
|
|
return false;
|
|
|
|
}
|
|
|
|
}else{
|
|
|
|
alert("연락처를 입력해 주세요.");
|
|
return false;
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
var tableErrorData = [];
|
|
var totRows = 0; // 좌측 받는사람 총 갯수
|
|
|
|
|
|
//전체 데이터 갯수 구하는 함수
|
|
function updateTotCnt(data){
|
|
|
|
$("#rowTotCnt").text(data);
|
|
|
|
}
|
|
|
|
//주소록 불러오기에서 수신자 리스트 tabulator에 데이터 추가해주기
|
|
function addPhoneInfo(data){
|
|
|
|
if(data == null){
|
|
|
|
alert("연락처 정보가 없습니다.");
|
|
return;
|
|
|
|
}else{
|
|
|
|
var idx = 0;
|
|
var newData = data;//중복 연락처는 하나만 남기고 모두 제거
|
|
|
|
var recTableData = tableL.getRows(); // 받는사람 리스트의 전체 목록을 저장
|
|
var tableData = [];
|
|
|
|
//기존 받는사람 리스트를 배열에 미리 담아둔다.
|
|
if(recTableData.length > 0){
|
|
for(var j=0; j < recTableData.length; j++){
|
|
tableData.push({phone: removeDash(recTableData[j].getData().phone) , name: recTableData[j].getData().name});
|
|
}
|
|
}
|
|
|
|
//받는사람 리스트를 담아둔 배열에 신규 추가 데이터를 추가해 준다.
|
|
for(var i=0; i < newData.length; i++){
|
|
|
|
tableData.push({phone: removeDash(newData[i].phone) , name: newData[i].name});
|
|
|
|
}
|
|
|
|
var temp = tableData.length;
|
|
|
|
//기존 수신 리스트를 지워준 후 신규 전체 리스트를 추가해준다.
|
|
tableL.clearData(); //기존 받는사람 목록을 삭제.
|
|
tableL.addData(dupliPhoneData(tableData)); // 받는사람 목록에 주소 정보 입력하기
|
|
_fileForm2 = []; //form file data 초기화
|
|
_fileIdx = 0; //form file idx 초기화
|
|
|
|
totRows = tableL.getRows().length;
|
|
updateTotCnt(totRows); //전체 데이터 갯수 구하기
|
|
|
|
var smsTxtArea = $('#smsTxtArea').val();
|
|
fn_priceClclt();
|
|
//일괄변환 문구 결제금액 처리
|
|
// if(smsTxtArea.indexOf("[*이름*]") > -1
|
|
// || smsTxtArea.indexOf("[*1*]") > -1
|
|
// || smsTxtArea.indexOf("[*2*]") > -1
|
|
// || smsTxtArea.indexOf("[*3*]") > -1
|
|
// || smsTxtArea.indexOf("[*4*]") > -1){
|
|
//
|
|
// fnReplCell();
|
|
//
|
|
// }else{
|
|
//
|
|
// //결제 금액 구하기
|
|
// totalPriceSum(totRows);
|
|
//
|
|
// }
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|