$(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";
newUlItem += "("+ 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();
}