$(document).ready(function() { $('#upFile').fileupload({ url : _URL['module'] +"/board/execute/brdUpload.php", dataType: 'json', //replaceFileInput: false, add: function(e, data){ var bid = document.forms["writeForm"].bid.value; var timedir = document.forms["writeForm"].timedir.value; data.formData = {"SESSID" : "r3pdcpo4apsmctc2ablm2hbps1", "bid" : bid, "exec" : "upload", "timedir" : timedir}; var uploadFile = data.files[0]; var isValid = true; if (uploadFile.size > 52428800) { // 5mb alert('파일 용량은 50메가를 초과할 수 없습니다.'); isValid = false; } if (isValid) { console.log(data); data.submit(); } }, progressall: function(e,data) { var progress = parseInt(data.loaded / data.total * 100, 10); $('#progress .bar').css( 'width', progress + '%' ); }, done: function (e, data) { console.log(data); var code = data.result.code; var msg = data.result.msg; if(code == '1') { alert(msg); addFileDes(data.result); } else { alert(code + ' : ' + msg); } }, fail: function(e, data){ // data.errorThrown // data.textStatus; // data.jqXHR; alert('서버와 통신 중 문제가 발생했습니다'); foo = data; } }); }); function addFileDes(fileObj) { var uploadFileNull = document.getElementById("uploadFileNull"); uploadFileNull.style.display = "none"; var uploadedFiles = document.getElementById("uploadedFiles"); var rowCnt = (uploadedFiles.childNodes.length) + 1; var oneFileDiv = document.createElement("div"); var oneFileName = document.createTextNode(fileObj.fileName); var input01 = document.createElement("input"); var input02 = document.createElement("input"); var input03 = document.createElement("input"); var input04 = document.createElement("input"); var input05 = document.createElement("input"); var input06 = document.createElement("input"); var labelItem = document.createElement("label"); var textBg = document.createElement("span"); var labelText = document.createTextNode("삭제"); input01.name = "filename[]"; input01.type = "hidden"; input02.name = "fileuniqname[]"; input02.type = "hidden"; input03.name = "filetype[]"; input03.type = "hidden"; input06.name = "filedown[]"; input06.type = "hidden"; input04.name = "filesize[]"; input04.id = "fileuniqname"+ rowCnt; input04.type = "checkbox"; input04.style.verticalAlign = "middle"; labelItem.appendChild(labelText); input05.name = "insert"; input05.type = "button"; input05.value = "본문에삽입"; input05.style.border = "1px solid #666666"; input05.style.width = "60px"; input05.style.height = "18px"; input05.style.margin = "2px 3px 2px 10px"; input05.style.fontSize = "8pt"; input05.style.verticalAlign = "middle"; textBg.style.border = "1px solid #d3e1fd"; textBg.style.background = "#7caaee"; textBg.style.color = "#ffffff"; textBg.style.height = "18px"; textBg.style.padding = "2px 3px 2px 2px"; textBg.style.fontSize = "9pt"; uploadedFiles.appendChild(oneFileDiv); oneFileDiv.appendChild(textBg); textBg.appendChild(oneFileName); oneFileDiv.appendChild(input01); oneFileDiv.appendChild(input02); oneFileDiv.appendChild(input03); oneFileDiv.appendChild(input06); if (fileObj.type.indexOf("image") > -1) { oneFileDiv.appendChild(input05); } oneFileDiv.appendChild(input04); oneFileDiv.appendChild(labelItem); //labelItem.for = input04.id; labelItem.htmlFor = input04.id; input01.value = fileObj.fileName; input02.value = fileObj.fileUniqName; input03.value = fileObj.type; input04.value = fileObj.size; input06.value = 0; input04.checked = true; var timedir = document.forms["writeForm"].timedir.value; var bid = document.forms["writeForm"].bid.value; var deleteThis = function () {delFileSvr(input04, bid, timedir, fileObj.fileName, fileObj.fileUniqName)} var insertImg = function () {insertImage(fileObj.fileUniqName)} if (typeof input04.addEventListener != "undefined") { input04.addEventListener("click", deleteThis, false); if (fileObj.type.indexOf("image") > -1) { input05.addEventListener("click", insertImg, false); } } else { input04.attachEvent("onclick", deleteThis); if (fileObj.type.indexOf("image") > -1) { input05.attachEvent("onclick", insertImg); } } return; } function delFileDes(fileObj, fileName, fileUniqName) { var uploadFileNull = document.getElementById("uploadFileNull"); var delObj = fileObj.parentNode; var fileObjs = document.getElementById("uploadedFiles"); var rowCnt = fileObjs.childNodes.length; for (i=(rowCnt - 1);i>=0;i--) { if (delObj == fileObjs.childNodes[i]) { fileObjs.removeChild(fileObjs.childNodes[i]); } } rowCnt = fileObjs.childNodes.length; if (rowCnt == 0) { uploadFileNull.style.display = "block"; } } function delFileSvr(fileObj, bid, timedir, fileName, fileUniqName) { var conFirmVal = confirm(fileName +" 을 삭제 하시겠습니까?\r\n삭제하시면 파일이 바로 삭제됩니다."); if (fileObj.checked == false && conFirmVal && timedir) { $.ajax({ type: "POST", url: _URL['module'] +"/board/execute/brdUpload.php", data: "exec=delete&bid="+ bid +"&timedir="+ timedir +"&fileUniqName="+ fileUniqName, dataType: 'text', success: function(returnVal) { returnVal = jQuery.trim(returnVal); if (returnVal == "OK") { delFileDes(fileObj, fileName, fileUniqName); } else{ alert("파일 삭제에 실패 했습니다."); fileObj.checked = true; } } }); } else { fileObj.checked = true; } } function insertImage(img) { var bid = document.forms["writeForm"].bid.value; var timedir = document.forms["writeForm"].timedir.value; var ctntName = document.forms["writeForm"].ctntIdx.value; var thisEditor = FCKeditorAPI.GetInstance(ctntName); if (img) { var imgSrc = _URL['upload'] +"/"+ bid.substr(0,3) +"/"+ bid +"/"+ timedir +"/thumbM/"+ img; var testImg = ""; //var testImg = document.createElement("img"); //testImg.src = imgSrc; //thisEditor.InsertElement(testImg); thisEditor.InsertHtml(testImg); } } function validationChk(theform) { if (!theform.subject.value) { alertNew("'제목'란을 입력하십시오.",theform.subject, true, false, true); return false; } if (!theform.writer.value) { alertNew("'작성자'란을 입력하십시오.",theform.writer, true, false, false); return false; } if (!theform.passwd.value) { alertNew("'비밀번호'란을 입력하십시오.",theform.passwd, true, false, false); return false; } else { if (!isValid.Passwd(theform.passwd.value)) { alertNew("비밀번호는 6~20자의 숫자, 영문 소문자, \'_-`~!@#$%^&*\' 만 가능합니다.",theform.passwd, true, false, false); return false; } } // 작성폼 내용 파라미터 명을 자동으로 변경 하는 폼 var cntName = theform.ctntIdx.value; //var cntName = "contents"; var thisEditor = FCKeditorAPI.GetInstance(cntName); theform[cntName].value = thisEditor.GetXHTML(true); if (theform[cntName].value == "" || theform[cntName].value == "
") { alertNew("'내용'란을 입력하십시오.", theform[cntName], false, false, false); return false; } return true; } /* 실명인증 */ function openIfAuthJm(){ window.open('', 'popup','width=410, height=590'); document.forms['certForm'].target = 'popup'; document.forms['certForm'].action = 'https://cert.namecheck.co.kr/certnc_input.asp'; document.forms['certForm'].submit(); } function openIfAuthGpin(){ wWidth = 350; wHight = 100; wX = (window.screen.width - wWidth) / 2; wY = (window.screen.height - wHight) / 2; window.open("http://www.g-pin.go.kr/jsp/connect/saml/login/login_popup.jsp", "_blank","directories=no,toolbar=no,left="+wX+",top="+wY+",width="+wWidth+",height="+wHight); inputWriter("작성자"); } function inpuName(checkedName) { var theform = document.forms['writeForm']; theform.writer.value = checkedName; theform.certPassed.value = "T"; } /* 주소 검색 */ function openAddrWin(textObj, inputFnc) { var textVal = document.getElementById(textObj).value; textVal = strReplace("#inputFnc", inputFnc, textVal); showMessageObj(textVal); } function searchAddr(obj, inputFnc) { if (!obj.addr.value) { alert("찾으시려는 읍/면/동을 입력하고 검색을 클릭하십시오."); return false; } else { function processReqList(){ if (reQ.readyState == 4) { if (reQ.status == 200) { var returnVal = reQ.responseText; if (returnVal) { var resultArea = document.getElementById("resultArea"); resultArea.style.height = "150px"; resultArea.style.minHeight = "150px"; resultArea.style.overflow = "auto"; var addrArray = returnVal.split("|#|"); var newUlItem = ""; for (i=0;i("+ addrDiv[0] +"-"+ addrDiv[1] +") "+ addrDiv[2] +" "+ addrDiv[3] +""; newUlItem += "
  • "; newUlItem += ""; newUlItem += "
  • "; newUlItem += ""; } document.getElementById("resultArea").style.textAlign = "left"; document.getElementById("resultArea").innerHTML = newUlItem; } else{ var newUlItem = "찾으시는 주소가 없습니다."; document.getElementById("resultArea").innerHTML = newUlItem; } } else { var newUlItem = "서버 오류입니다."; document.getElementById("resultArea").innerHTML = newUlItem; } } } var poststr = "addr="+ obj.addr.value; var ajaxUrl = _URL['admin'] +"/execute/addrSearch.php"; var reQ = cubeXMLHttpRequest(); reQ.onreadystatechange = processReqList; reQ.open("POST", ajaxUrl, true); reQ.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); reQ.send(poststr); return false; } } function inputAddr(addr) { var addrDiv = addr.split("|"); var obj = document.forms['writeForm']; obj.zip01.value = addrDiv[0]; obj.zip02.value = addrDiv[1]; obj.address01.value = addrDiv[2]; obj.address02.focus(); clearMessageObj(); } /** 달력 Ajax */ function viewCalAjax(strDate, inputObj) { $.ajax({ type: "POST", url: _URL['module'] +"/board/execute/boardAjax.php", data: "method=calendar&strdate="+ strDate +"&inputobj="+ inputObj +"&skinUrl=/cubecreater/templet/Default/board", dataType: 'text', success: function(returnVal) { returnVal = jQuery.trim(returnVal); if (returnVal) { var temp = $('input#'+inputObj).offset(); messageBoxPosi(returnVal, temp.left, temp.top+20); } } }); } function inputDate(dateVal, objName) { $('#'+ objName).val(dateVal); clearMessageObj(); }