주소록 대량등록 성능개선(브라우저 응답없음 창 노출안되도록 로딩바 처리)
@a68d83c52da886b0504640bc2a743d02fce8f924
--- src/main/webapp/WEB-INF/jsp/layout/include/defaultResource.jsp
+++ src/main/webapp/WEB-INF/jsp/layout/include/defaultResource.jsp
... | ... | @@ -71,7 +71,7 @@ |
| 71 | 71 |
<script type="text/javascript" src="/js/fileupload/jquery.fileupload.js"></script> |
| 72 | 72 |
|
| 73 | 73 |
<script type="text/javascript" src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script> |
| 74 |
- <script type="text/javascript" src="/js/MJUtill.js?date=202301070009"></script> |
|
| 74 |
+ <script type="text/javascript" src="/js/MJUtill.js?date=202306140010"></script> |
|
| 75 | 75 |
|
| 76 | 76 |
<!-- Uncaught TypeError: e.widget is not a function로 인해 가장 마지막에 선언_이준호_220510 --> |
| 77 | 77 |
<script type="text/javascript" src="/dist/js/jquery_wrapper.min.js"></script> |
--- src/main/webapp/WEB-INF/jsp/web/addr/AddrList.jsp
+++ src/main/webapp/WEB-INF/jsp/web/addr/AddrList.jsp
... | ... | @@ -12,6 +12,15 @@ |
| 12 | 12 |
var tableErrorCheckData = []; |
| 13 | 13 |
var addrMassDupliSaveList = null; |
| 14 | 14 |
|
| 15 |
+var gArrRestartIndex = 0; //배열 재시작카운드 |
|
| 16 |
+var gNameList = []; //치환문자 이름 |
|
| 17 |
+var gPhoneList = []; //받는사람 |
|
| 18 |
+var gInfo1List = []; //치환문자1 |
|
| 19 |
+var gInfo2List = []; //치환문자2 |
|
| 20 |
+var gInfo3List = []; //치환문자3 |
|
| 21 |
+var gInfo4List = []; //치환문자4 |
|
| 22 |
+var gMemoList = []; //메모 |
|
| 23 |
+ |
|
| 15 | 24 |
$(document).ready(function(){
|
| 16 | 25 |
listAddrGrp(); |
| 17 | 26 |
addrLoadAjax(); |
... | ... | @@ -225,7 +234,7 @@ |
| 225 | 234 |
alert("붙여넣을 연락처를 복사해주세요.");
|
| 226 | 235 |
return false; |
| 227 | 236 |
}else{
|
| 228 |
- if (elmLen > 20000) {
|
|
| 237 |
+ if (elmLen > 20001) {
|
|
| 229 | 238 |
alert("2만줄 이상의 업로드는 데이터 부하로 업로드 할수 없습니다.");
|
| 230 | 239 |
return false; |
| 231 | 240 |
} |
... | ... | @@ -887,9 +896,18 @@ |
| 887 | 896 |
return isReturn; |
| 888 | 897 |
} |
| 889 | 898 |
|
| 899 |
+ |
|
| 890 | 900 |
//저장 |
| 891 | 901 |
function SetAddrMassSave(){
|
| 892 |
- |
|
| 902 |
+ gArrRestartIndex = 0; //배열 재시작카운드 |
|
| 903 |
+ gNameList = []; //치환문자 이름 |
|
| 904 |
+ gPhoneList = []; //받는사람 |
|
| 905 |
+ gInfo1List = []; //치환문자1 |
|
| 906 |
+ gInfo2List = []; //치환문자2 |
|
| 907 |
+ gInfo3List = []; //치환문자3 |
|
| 908 |
+ gInfo4List = []; //치환문자4 |
|
| 909 |
+ gMemoList = []; //메모 |
|
| 910 |
+ |
|
| 893 | 911 |
var selectedData = tableR.getRows(); |
| 894 | 912 |
if (selectedData == "" || selectedData == null) {
|
| 895 | 913 |
alert("한 개 이상의 연락처를 입력하세요");
|
... | ... | @@ -900,13 +918,9 @@ |
| 900 | 918 |
return false; |
| 901 | 919 |
} |
| 902 | 920 |
|
| 903 |
- // 주소록 이름에 이모지 체크 |
|
| 904 |
-// if(!addrEmojiCheck(selectedData, tableR)) return false; |
|
| 905 |
- |
|
| 906 | 921 |
var selectMassVal = $("#addrGrpIdInfo option:selected").val();
|
| 907 | 922 |
|
| 908 | 923 |
var loginVO = '${LoginVO}';
|
| 909 |
- |
|
| 910 | 924 |
if(loginVO == "" || loginVO == null){
|
| 911 | 925 |
alert("로그인 후 이용이 가능합니다.");
|
| 912 | 926 |
return false; |
... | ... | @@ -925,169 +939,193 @@ |
| 925 | 939 |
} |
| 926 | 940 |
} |
| 927 | 941 |
|
| 928 |
- //수신번호 리스트 체크하기 |
|
| 929 |
- var phoneList = []; |
|
| 930 |
- var nameList = []; |
|
| 931 |
- var info1List = []; |
|
| 932 |
- var info2List = []; |
|
| 933 |
- var info3List = []; |
|
| 934 |
- var info4List = []; |
|
| 935 |
- var memoList = []; |
|
| 936 |
- |
|
| 937 | 942 |
var commaSelectedData = numberWithCommas(selectedData.length); |
| 938 | 943 |
var confirmMsg = "저장하시겠습니까?\n이름 20byte, [*1*]~[*4*] 40byte, 메모 250byte 초과 글자는 절사됩니다."; |
| 939 | 944 |
if (selectedData.length >= 10000) {
|
| 940 | 945 |
confirmMsg = "저장하시겠습니까?\n이름 20byte, [*1*]~[*4*] 40byte, 메모 250byte 초과 글자는 절사됩니다.\n1만건 이상 등록시 약 30초정도 소요됩니다.\n잠시만 기다려주세요."; |
| 941 | 946 |
} |
| 942 |
- else if (selectedData.length > 2000) {
|
|
| 943 |
- confirmMsg = "저장하시겠습니까?\n이름 20byte, [*1*]~[*4*] 40byte, 메모 250byte 초과 글자는 절사됩니다.\n" + commaSelectedData + "건 등록시 수초정도 소요됩니다.\n잠시만 기다려주세요."; |
|
| 944 |
- } |
|
| 945 |
- |
|
| 946 |
- if (confirm(confirmMsg)) {
|
|
| 947 |
- |
|
| 948 |
- for (var i=0; i < selectedData.length; i++) {
|
|
| 949 |
- var name = tableR.getRows()[i].getData().name; |
|
| 950 |
- var phone = removeDash(tableR.getRows()[i].getData().phone); |
|
| 951 |
- var info1 = tableR.getRows()[i].getData().info1; |
|
| 952 |
- var info2 = tableR.getRows()[i].getData().info2; |
|
| 953 |
- var info3 = tableR.getRows()[i].getData().info3; |
|
| 954 |
- var info4 = tableR.getRows()[i].getData().info4; |
|
| 955 |
- var memo = tableR.getRows()[i].getData().memo; |
|
| 956 |
- |
|
| 957 |
- phoneList[i] = phone; |
|
| 958 |
- // name |
|
| 959 |
- if (name == "" || name == null || name == undefined) {
|
|
| 960 |
- nameList[i] = ""; |
|
| 961 |
- } |
|
| 962 |
- else {
|
|
| 963 |
- if(!addrEmojiCheck(name)){//이모지 체크 해주기
|
|
| 964 |
- return false; |
|
| 965 |
- } |
|
| 966 |
- |
|
| 967 |
- nameList[i] = name.replace(/,/g,"§"); |
|
| 968 |
- } |
|
| 969 |
- |
|
| 970 |
- // info1 |
|
| 971 |
- if (info1 == "" || info1 == null || info1 == undefined) {
|
|
| 972 |
- info1List[i] = ""; |
|
| 973 |
- } |
|
| 974 |
- else {
|
|
| 975 |
- if(!addrEmojiCheck(info1)){//이모지 체크 해주기
|
|
| 976 |
- return false; |
|
| 977 |
- } |
|
| 978 |
- |
|
| 979 |
- info1List[i] = info1.replace(/,/g,"§"); |
|
| 980 |
- } |
|
| 981 |
- // info2 |
|
| 982 |
- if (info2 == "" || info2 == null || info2 == undefined) {
|
|
| 983 |
- info2List[i] = ""; |
|
| 984 |
- } |
|
| 985 |
- else {
|
|
| 986 |
- if(!addrEmojiCheck(info2)){//이모지 체크 해주기
|
|
| 987 |
- return false; |
|
| 988 |
- } |
|
| 989 |
- |
|
| 990 |
- info2List[i] = info2.replace(/,/g,"§"); |
|
| 991 |
- } |
|
| 992 |
- // info3 |
|
| 993 |
- if (info3 == "" || info3 == null || info3 == undefined) {
|
|
| 994 |
- info3List[i] = ""; |
|
| 995 |
- } |
|
| 996 |
- else {
|
|
| 997 |
- if(!addrEmojiCheck(info3)){//이모지 체크 해주기
|
|
| 998 |
- return false; |
|
| 999 |
- } |
|
| 1000 |
- info3List[i] = info3.replace(/,/g,"§"); |
|
| 1001 |
- } |
|
| 1002 |
- // info4 |
|
| 1003 |
- if (info4 == "" || info4 == null || info4 == undefined) {
|
|
| 1004 |
- info4List[i] = ""; |
|
| 1005 |
- } |
|
| 1006 |
- else {
|
|
| 1007 |
- if(!addrEmojiCheck(info4)){//이모지 체크 해주기
|
|
| 1008 |
- return false; |
|
| 1009 |
- } |
|
| 1010 |
- info4List[i] = info4.replace(/,/g,"§"); |
|
| 1011 |
- } |
|
| 1012 |
- // memo |
|
| 1013 |
- if (memo == "" || memo == null || memo == undefined) {
|
|
| 1014 |
- memoList[i] = ""; |
|
| 1015 |
- } |
|
| 1016 |
- else {
|
|
| 1017 |
- if(!addrEmojiCheck(memo)){//이모지 체크 해주기
|
|
| 1018 |
- return false; |
|
| 1019 |
- } |
|
| 1020 |
- memoList[i] = memo.replace(/,/g,"§"); |
|
| 1021 |
- } |
|
| 947 |
+ if (confirm(confirmMsg)) {
|
|
| 948 |
+ //로딩창 show |
|
| 949 |
+ $('.loading_layer').addClass('active');
|
|
| 1022 | 950 |
|
| 951 |
+ setTimeout(setSenderList, 1000); |
|
| 952 |
+ } |
|
| 953 |
+} |
|
| 954 |
+ |
|
| 955 |
+function setSenderList() {
|
|
| 956 |
+ var selectedData = tableR.getRows(); |
|
| 957 |
+ for (var i=gArrRestartIndex; i < selectedData.length; i++) {
|
|
| 958 |
+ var name = tableR.getRows()[i].getData().name; |
|
| 959 |
+ var phone = removeDash(tableR.getRows()[i].getData().phone); |
|
| 960 |
+ var info1 = tableR.getRows()[i].getData().info1; |
|
| 961 |
+ var info2 = tableR.getRows()[i].getData().info2; |
|
| 962 |
+ var info3 = tableR.getRows()[i].getData().info3; |
|
| 963 |
+ var info4 = tableR.getRows()[i].getData().info4; |
|
| 964 |
+ var memo = tableR.getRows()[i].getData().memo; |
|
| 965 |
+ |
|
| 966 |
+ gPhoneList[i] = phone; |
|
| 967 |
+ // name |
|
| 968 |
+ if (name == "" || name == null || name == undefined) {
|
|
| 969 |
+ gNameList[i] = ""; |
|
| 970 |
+ } |
|
| 971 |
+ else {
|
|
| 972 |
+ if(!addrEmojiCheck(name)){//이모지 체크 해주기
|
|
| 973 |
+ return false; |
|
| 974 |
+ } |
|
| 975 |
+ |
|
| 976 |
+ gNameList[i] = name.replace(/,/g,"§"); |
|
| 1023 | 977 |
} |
| 1024 | 978 |
|
| 1025 |
- var form = document.addrMassForm; |
|
| 1026 |
- form.phoneList.value = phoneList; |
|
| 1027 |
- form.nameList.value = nameList; |
|
| 1028 |
- form.info1List.value = info1List; |
|
| 1029 |
- form.info2List.value = info2List; |
|
| 1030 |
- form.info3List.value = info3List; |
|
| 1031 |
- form.info4List.value = info4List; |
|
| 1032 |
- form.memoList.value = memoList; |
|
| 1033 |
- form.addrGrpId.value = $("#addrGrpIdInfo").val();
|
|
| 1034 |
- |
|
| 1035 |
- var data = new FormData(form); |
|
| 1036 |
- |
|
| 1037 |
- url = "/web/mjon/addr/addrMassInsertByTempAjax.do"; |
|
| 1038 |
- |
|
| 1039 |
- $.ajax({
|
|
| 1040 |
- type: "POST", |
|
| 1041 |
- url: url, |
|
| 1042 |
- data: data, |
|
| 1043 |
- dataType:'json', |
|
| 1044 |
- async: true, |
|
| 1045 |
- processData: false, |
|
| 1046 |
- contentType: false, |
|
| 1047 |
- cache: false, |
|
| 1048 |
- success: function (returnData) {
|
|
| 1049 |
- if (returnData.isSuccess) {
|
|
| 1050 |
- alert("저장에 성공했습니다.\n저장 : " + returnData.resultCnt + "건, 중복 : " + returnData.dupliCnt + "건, 휴대폰번호 오류 : " + returnData.errPhoneCnt + "건");
|
|
| 979 |
+ // info1 |
|
| 980 |
+ if (info1 == "" || info1 == null || info1 == undefined) {
|
|
| 981 |
+ gInfo1List[i] = ""; |
|
| 982 |
+ } |
|
| 983 |
+ else {
|
|
| 984 |
+ if(!addrEmojiCheck(info1)){//이모지 체크 해주기
|
|
| 985 |
+ return false; |
|
| 986 |
+ } |
|
| 987 |
+ |
|
| 988 |
+ gInfo1List[i] = info1.replace(/,/g,"§"); |
|
| 989 |
+ } |
|
| 990 |
+ // info2 |
|
| 991 |
+ if (info2 == "" || info2 == null || info2 == undefined) {
|
|
| 992 |
+ gInfo2List[i] = ""; |
|
| 993 |
+ } |
|
| 994 |
+ else {
|
|
| 995 |
+ if(!addrEmojiCheck(info2)){//이모지 체크 해주기
|
|
| 996 |
+ return false; |
|
| 997 |
+ } |
|
| 998 |
+ |
|
| 999 |
+ gInfo2List[i] = info2.replace(/,/g,"§"); |
|
| 1000 |
+ } |
|
| 1001 |
+ // info3 |
|
| 1002 |
+ if (info3 == "" || info3 == null || info3 == undefined) {
|
|
| 1003 |
+ gInfo3List[i] = ""; |
|
| 1004 |
+ } |
|
| 1005 |
+ else {
|
|
| 1006 |
+ if(!addrEmojiCheck(info3)){//이모지 체크 해주기
|
|
| 1007 |
+ return false; |
|
| 1008 |
+ } |
|
| 1009 |
+ gInfo3List[i] = info3.replace(/,/g,"§"); |
|
| 1010 |
+ } |
|
| 1011 |
+ // info4 |
|
| 1012 |
+ if (info4 == "" || info4 == null || info4 == undefined) {
|
|
| 1013 |
+ gInfo4List[i] = ""; |
|
| 1014 |
+ } |
|
| 1015 |
+ else {
|
|
| 1016 |
+ if(!addrEmojiCheck(info4)){//이모지 체크 해주기
|
|
| 1017 |
+ return false; |
|
| 1018 |
+ } |
|
| 1019 |
+ gInfo4List[i] = info4.replace(/,/g,"§"); |
|
| 1020 |
+ } |
|
| 1021 |
+ // memo |
|
| 1022 |
+ if (memo == "" || memo == null || memo == undefined) {
|
|
| 1023 |
+ gMemoList[i] = ""; |
|
| 1024 |
+ } |
|
| 1025 |
+ else {
|
|
| 1026 |
+ if(!addrEmojiCheck(memo)){//이모지 체크 해주기
|
|
| 1027 |
+ return false; |
|
| 1028 |
+ } |
|
| 1029 |
+ gMemoList[i] = memo.replace(/,/g,"§"); |
|
| 1030 |
+ } |
|
| 1051 | 1031 |
|
| 1052 |
- // 중복번호 Hide |
|
| 1053 |
- $("#btnAddrMassDupli").hide();
|
|
| 1054 |
- $("#btnAddrMassSaveDupli").hide();
|
|
| 1055 |
- |
|
| 1056 |
- // 중복건이 있을경우 |
|
| 1057 |
- if (returnData.dupliCnt > 0) {
|
|
| 1058 |
- //alert(returnData.addrMassDupliList.length); |
|
| 1032 |
+ var reStartArray = [10000, 20000, 30000, 40000, 50000, 60000, 70000, 80000, 90000, 100000, 110000, 120000, 130000, 140000, 150000, 160000, 170000, 180000, 190000, 200000]; |
|
| 1033 |
+ |
|
| 1034 |
+ if (reStartArray.includes(i, 0)) {
|
|
| 1035 |
+ console.log("########## i : " + i);
|
|
| 1036 |
+ |
|
| 1037 |
+ gArrRestartIndex = i+1; |
|
| 1038 |
+ |
|
| 1039 |
+ if (selectedData.length > gArrRestartIndex) {
|
|
| 1040 |
+ setTimeout(setSenderList, 500); |
|
| 1041 |
+ break; |
|
| 1042 |
+ } |
|
| 1043 |
+ } |
|
| 1044 |
+ console.log(i); |
|
| 1045 |
+ } |
|
| 1046 |
+ |
|
| 1047 |
+ if (gPhoneList.length == selectedData.length) {
|
|
| 1048 |
+ console.log(new Date()); |
|
| 1049 |
+ console.log("gPhoneList.length : " + gPhoneList.length);
|
|
| 1050 |
+ console.log("selectedData.length : " + selectedData.length);
|
|
| 1051 |
+ |
|
| 1052 |
+ SetAddrMassSave_Step2(); |
|
| 1053 |
+ } |
|
| 1054 |
+} |
|
| 1059 | 1055 |
|
| 1060 |
- // 중복번호(해당 그룹) Show |
|
| 1061 |
- $("#btnAddrMassSaveDupli").show();
|
|
| 1062 |
- |
|
| 1063 |
- addrMassDupliSaveList = returnData.addrMassDupliList; |
|
| 1064 |
- //$("#btnAddrMassSaveDupli").trigger("click");
|
|
| 1065 |
- } |
|
| 1056 |
+//저장 |
|
| 1057 |
+function SetAddrMassSave_Step2(){
|
|
| 1058 |
+ var form = document.addrMassForm; |
|
| 1059 |
+ form.phoneList.value = gPhoneList; |
|
| 1060 |
+ form.nameList.value = gNameList; |
|
| 1061 |
+ form.info1List.value = gInfo1List; |
|
| 1062 |
+ form.info2List.value = gInfo2List; |
|
| 1063 |
+ form.info3List.value = gInfo3List; |
|
| 1064 |
+ form.info4List.value = gInfo4List; |
|
| 1065 |
+ form.memoList.value = gMemoList; |
|
| 1066 |
+ form.addrGrpId.value = $("#addrGrpIdInfo").val();
|
|
| 1067 |
+ |
|
| 1068 |
+ var data = new FormData(form); |
|
| 1069 |
+ |
|
| 1070 |
+ url = "/web/mjon/addr/addrMassInsertByTempAjax.do"; |
|
| 1071 |
+ |
|
| 1072 |
+ $.ajax({
|
|
| 1073 |
+ type: "POST", |
|
| 1074 |
+ url: url, |
|
| 1075 |
+ data: data, |
|
| 1076 |
+ dataType:'json', |
|
| 1077 |
+ async: true, |
|
| 1078 |
+ processData: false, |
|
| 1079 |
+ contentType: false, |
|
| 1080 |
+ cache: false, |
|
| 1081 |
+ success: function (returnData) {
|
|
| 1082 |
+ //로딩창 hide |
|
| 1083 |
+ $('.loading_layer').removeClass('active');
|
|
| 1084 |
+ |
|
| 1085 |
+ if (returnData.isSuccess) {
|
|
| 1086 |
+ alert("저장에 성공했습니다.\n저장 : " + returnData.resultCnt + "건, 중복 : " + returnData.dupliCnt + "건, 휴대폰번호 오류 : " + returnData.errPhoneCnt + "건");
|
|
| 1087 |
+ |
|
| 1088 |
+ // 중복번호 Hide |
|
| 1089 |
+ $("#btnAddrMassDupli").hide();
|
|
| 1090 |
+ $("#btnAddrMassSaveDupli").hide();
|
|
| 1091 |
+ |
|
| 1092 |
+ // 중복건이 있을경우 |
|
| 1093 |
+ if (returnData.dupliCnt > 0) {
|
|
| 1094 |
+ //alert(returnData.addrMassDupliList.length); |
|
| 1095 |
+ |
|
| 1096 |
+ // 중복번호(해당 그룹) Show |
|
| 1097 |
+ $("#btnAddrMassSaveDupli").show();
|
|
| 1066 | 1098 |
|
| 1067 |
- // 데이터 비우기 |
|
| 1068 |
- SetClear(); |
|
| 1069 |
- |
|
| 1070 |
- // 주소록그룹 콤보박스 유지 |
|
| 1071 |
- setTimeout(setSelectMassSetting, 500, selectMassVal); |
|
| 1072 |
- } |
|
| 1073 |
- else {
|
|
| 1074 |
- alert("오류 알림 : " + returnData.msg);
|
|
| 1099 |
+ addrMassDupliSaveList = returnData.addrMassDupliList; |
|
| 1100 |
+ //$("#btnAddrMassSaveDupli").trigger("click");
|
|
| 1075 | 1101 |
} |
| 1076 |
- }, |
|
| 1077 |
- error: function (e) {
|
|
| 1078 |
- alert("저장에 실패하였습니다.");
|
|
| 1079 |
- alert("ERROR : " + JSON.stringify(e));
|
|
| 1080 |
- }, |
|
| 1081 |
- beforeSend : function(xmlHttpRequest) {
|
|
| 1082 |
- //로딩창 show |
|
| 1083 |
- $('.loading_layer').addClass('active');
|
|
| 1084 |
- }, |
|
| 1085 |
- complete : function(xhr, textStatus) {
|
|
| 1086 |
- //로딩창 hide |
|
| 1087 |
- $('.loading_layer').removeClass('active');
|
|
| 1088 |
- } |
|
| 1089 |
- }); |
|
| 1090 |
- } |
|
| 1102 |
+ |
|
| 1103 |
+ // 데이터 비우기 |
|
| 1104 |
+ SetClear(); |
|
| 1105 |
+ |
|
| 1106 |
+ // 주소록그룹 콤보박스 유지 |
|
| 1107 |
+ setTimeout(setSelectMassSetting, 500, selectMassVal); |
|
| 1108 |
+ } |
|
| 1109 |
+ else {
|
|
| 1110 |
+ alert("오류 알림 : " + returnData.msg);
|
|
| 1111 |
+ } |
|
| 1112 |
+ }, |
|
| 1113 |
+ error: function (e) {
|
|
| 1114 |
+ //로딩창 hide |
|
| 1115 |
+ $('.loading_layer').removeClass('active');
|
|
| 1116 |
+ |
|
| 1117 |
+ alert("저장에 실패하였습니다.");
|
|
| 1118 |
+ alert("ERROR : " + JSON.stringify(e));
|
|
| 1119 |
+ }, |
|
| 1120 |
+ beforeSend : function(xmlHttpRequest) {
|
|
| 1121 |
+ //로딩창 show |
|
| 1122 |
+ $('.loading_layer').addClass('active');
|
|
| 1123 |
+ }, |
|
| 1124 |
+ complete : function(xhr, textStatus) {
|
|
| 1125 |
+ //로딩창 hide |
|
| 1126 |
+ $('.loading_layer').removeClass('active');
|
|
| 1127 |
+ } |
|
| 1128 |
+ }); |
|
| 1091 | 1129 |
} |
| 1092 | 1130 |
|
| 1093 | 1131 |
//주소록그룹 콤보박스 유지 |
--- src/main/webapp/js/MJUtill.js
+++ src/main/webapp/js/MJUtill.js
... | ... | @@ -824,7 +824,13 @@ |
| 824 | 824 |
returnFlag = false; |
| 825 | 825 |
} |
| 826 | 826 |
} |
| 827 |
- if(!returnFlag) alert("주소록 저장 목록 중 이모지를 사용할 수 없습니다.\n이모지 삭제후 발송해주세요.\n(" + usedEmoji + ")");
|
|
| 827 |
+ |
|
| 828 |
+ if(!returnFlag) {
|
|
| 829 |
+ //로딩창 hide |
|
| 830 |
+ $('.loading_layer').removeClass('active');
|
|
| 831 |
+ |
|
| 832 |
+ alert("주소록 저장 목록 중 이모지를 사용할 수 없습니다.\n이모지 삭제후 발송해주세요.\n(" + usedEmoji + ")");
|
|
| 833 |
+ } |
|
| 828 | 834 |
|
| 829 | 835 |
return returnFlag; |
| 830 | 836 |
} |
Add a comment
Delete comment
Once you delete this comment, you won't be able to recover it. Are you sure you want to delete this comment?