var suo; var upload_mode_what; var board_type; var najaxform_name; var my_swfupload_debug_mode = false; function flash_uploader( pid, upfiles_which, max_upsize, max_upcnt, Allow_Upload_Ext ) { var Allow_Upload_Extis = "*."+Allow_Upload_Ext.replaceAll(",",";*."); var settings = { flash_url : "/js/swf_upload/swfupload_v220b5.swf", upload_url: upfiles_which, file_size_limit : max_upsize, file_types : Allow_Upload_Extis, file_types_description : "÷ºÎÆÄÀÏ", file_upload_limit : max_upcnt, file_queue_limit : max_upcnt, custom_settings : { progressTarget : "fsUploadProgress" }, debug: false, // Button Settings button_placeholder_id : "fappend", button_image_url : "/images/swf_upload/btn_filesearch.gif", button_width: 65, button_height: 18, button_window_mode: SWFUpload.WINDOW_MODE.TRANSPARENT, button_cursor: SWFUpload.CURSOR.HAND, button_action : SWFUpload.BUTTON_ACTION.SELECT_FILES, swfupload_loaded_handler : fileUploadReady, //file_dialog_start_handler : fileDialogStart, file_queued_handler : fileQueued, file_queue_error_handler : fileQueueError, upload_start_handler : uploadStart, upload_progress_handler : uploadProgress, file_dialog_complete_handler : fileDialogStart, upload_error_handler : uploadError, upload_success_handler : uploadSuccess, minimum_flash_version : "9.0.28", //10.0.12 swfupload_pre_load_handler : fileUploadReady }; var nhid = new Element("input",{"type":"hidden","id":"user_file","name":"user_file"}); $(pid).appendChild(nhid); var flash_upload_div = new Element("div",{"id":"flash_upload_div"}); $(pid).appendChild(flash_upload_div); var fu_comment = new Element("div",{"id":"fu_comment"}); flash_upload_div.appendChild(fu_comment); var fu_btn = new Element("div",{"id":"fu_btn"}); flash_upload_div.appendChild(fu_btn); var fcomment = new Element("div",{"id":"fcomment"}); fu_btn.appendChild(fcomment); var f_total = new Element("div",{"id":"f_total"}).update("ÃÑ 0°³(0 KB) "); fu_btn.appendChild(f_total); var fud = new Element("div",{"id":"fud"}); flash_upload_div.appendChild(fud); var fu_bar = new Element("div",{"id":"fu_bar"}); fud.appendChild(fu_bar); var fu_check = new Element("div",{"class":"fu_check"}); fu_bar.appendChild(fu_check); fu_check.addClassName("fu_check"); var fu_check_b = new Element("input",{"type":"checkbox","id":"selectall","name":"selectall"}); fu_check_b.style.border = "0px"; fu_check.appendChild(fu_check_b); Event.observe( fu_check_b, "click", file_checked); var fu_check = new Element("div",{"class":"fu_split"}); fu_bar.appendChild(fu_check); fu_check.addClassName("fu_split"); var fu_filename = new Element("div",{"class":"fu_filename"}).update("ÆÄÀϸí"); fu_bar.appendChild(fu_filename); fu_filename.addClassName("fu_filename"); var fu_check = new Element("div",{"class":"fu_split"}); fu_bar.appendChild(fu_check); fu_check.addClassName("fu_split"); var fu_filesize = new Element("div",{"class":"fu_filesize"}).update("ÆÄÀÏÅ©±â"); fu_bar.appendChild(fu_filesize); fu_filesize.addClassName("fu_filesize"); var fu_item_set = new Element("div",{"id":"fu_item_set"}); fud.appendChild(fu_item_set); var fappendDiv = new Element("div",{"id":"fappendDiv"}); flash_upload_div.appendChild(fappendDiv); var fappend = new Element("span",{"id":"fappend"}); fappendDiv.appendChild(fappend); var fcancel = new Element("img",{"id":"fcancel","src":"/images/swf_upload/btn_filemove.gif","align":"abstop","alt":"ÆÄÀÏÁ¦°Å","hspace":"2","width":"65","height":"18"}); fcancel.style.cursor = "pointer"; fcancel.style.display = "none"; fappendDiv.appendChild(fcancel); Event.observe( fcancel, "click", cancel_upload); if ( my_swfupload_debug_mode == true ) { var my_swfupload_debug_mode_fieldset = new Element("fieldset"); $(pid).appendChild(my_swfupload_debug_mode_fieldset); my_swfupload_debug_mode_fieldset.setStyle({"marginTop":"20px"}); var my_swfupload_debug_mode_fieldset_legend = new Element("legend").update("SWF UPLOAD DEBUG"); my_swfupload_debug_mode_fieldset.appendChild(my_swfupload_debug_mode_fieldset_legend); var my_swfupload_debug_mode_div = new Element("div",{"id":"my_swfupload_debug_mode_div"}); my_swfupload_debug_mode_fieldset.appendChild(my_swfupload_debug_mode_div); } suo = new SWFUpload(settings); } function fileUploadReady() { fup = parseInt( suo.getSetting("file_upload_limit"), 10 ); flimit_size = parseFloat(suo.getSetting("file_size_limit"),10); $("fcomment").innerHTML = "¡Ø ÷ºÎÆÄÀÏÀº ÃÑ "+file_size_return(flimit_size*1024)+" (ÃÖ´ë "+fup+"°³)±îÁö ¾÷·Îµå °¡´ÉÇÕ´Ï´Ù."; if ( fup == 0 ) suo.setButtonDisabled(true); else if ( fup > 0 ) suo.setButtonDisabled(false); if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º fileUploadReady
   - file_upload_limit : "+fup+", - file_size_limit : "+flimit_size+"
"; } function file_checked() { itms_ary = $("fu_item_set").childElements(); item_len = itms_ary.length; if ( $("selectall").checked == true ) { for ( i = 0; i < item_len; i++ ) $("cb_"+itms_ary[i].id).checked = true; } else { for ( i = 0; i < item_len; i++ ) $("cb_"+itms_ary[i].id).checked = false; } if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º file_checked
    - fu_item_set.length : "+item_len+"
"; file_checked_overlab(); } function file_checked_overlab() { fsize = 0; itms_ary = $("fu_item_set").childElements(); item_len = itms_ary.length; for ( i = 0; i < item_len; i++ ) { if ( $("cb_"+itms_ary[i].id).checked == true ) itms_ary[i].addClassName("items_sel"); else itms_ary[i].removeClassName("items_sel"); fsize += parseInt( $("fu_hfsize_"+itms_ary[i].id).innerHTML, 10); } $("f_total").innerHTML = "ÃÑ "+item_len+"°³("+file_size_return(fsize)+") "; if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º file_checked_overlab
    - fu_item_set.length : "+item_len+"
"; } function toggle_checkbox( tid ) { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º toggle_checkbox
"; if ( $("cb_"+tid).checked == true ) $("cb_"+tid).checked = false; else $("cb_"+tid).checked = true; file_checked_overlab(); } function fileDialogStart() { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º fileDialogStart
"; } function fileQueued( fileObj ) { try { var conti_fupload = "YES"; itms_ary = $("fu_item_set").childElements(); item_len = itms_ary.length; for ( i = 0; i < item_len ; i++ ) { if ( itms_ary[i].name == fileObj.name ) { conti_fupload = "NO"; break; } } max_upload = parseInt(suo.getSetting("file_upload_limit"), 10); now_queues = parseInt(suo.getStats().files_queued, 10); if ( max_upload <= now_queues) suo.setButtonDisabled(true); if ( now_queues != 0 ) $("fcancel").style.display = "inline"; if ( conti_fupload == "NO" ) { alert( fileObj.name + "ÆÄÀÏÀº ÀÌ¹Ì Ã·ºÎµÇ¾î ÀÖ½À´Ï´Ù." ); suo.cancelUpload( fileObj.id ); } else { var fu_items = new Element("div",{id:fileObj.id,"name":fileObj.name,"class":"fu_item","title":"Ŭ¸¯ÇϽøé ["+fileObj.name+"]ÆÄÀÏÀÌ ¼±ÅÃÀÌ µË´Ï´Ù."}); $("fu_item_set").appendChild(fu_items); Event.observe( fu_items, "click", function() { toggle_checkbox(this.id); } ); var nchk_div = new Element("div",{"class":"fu_initem"}); nchk_div.style.width = "7%"; nchk_div.style.textAlign = "center"; fu_items.appendChild(nchk_div); nchk_div.addClassName("fu_initem"); var nchk = new Element("input",{id:"cb_"+fileObj.id,"class":"fu_initem","type":"checkbox"}); nchk.style.border = "0px"; nchk.style.marginLeft = "10px"; nchk_div.appendChild(nchk); Event.observe( nchk, "click", function() { toggle_checkbox( this.id.substring(3,this.id.length) ); }); nchk.addClassName("fu_initem"); var nfname = new Element("div",{"id":"fname_"+fileObj.id,"class":"fu_initem"}).update("[´ë±â] "+fileObj.name); nfname.style.paddingTop = "2px"; nfname.style.width = "72%"; fu_items.appendChild(nfname); nfname.addClassName("fu_initem"); var nfsize = new Element("div",{"class":"fu_initem"}).update( file_size_return(fileObj.size) ); nfsize.style.paddingTop = "2px"; nfsize.style.width = "20%"; nfsize.style.textAlign = "right"; fu_items.appendChild(nfsize); nfsize.addClassName("fu_initem"); var nfsize_hid = new Element("span",{"id":"fu_hfsize_"+fileObj.id,"class":"hfsize"}).update(fileObj.size); nfsize_hid.style.display = "none"; fu_items.appendChild(nfsize_hid); nfsize_hid.addClassName("hfsize"); var ncomment = new Element("div",{"class":"ncomment"}).update("\"ÆÄÀÏ "); fu_items.appendChild(ncomment); ncomment.addClassName("ncomment"); var default_name_ary = fileObj.name.split("."); var default_name = default_name_ary[0]; var ncomment_input = new Element("input",{"type":"text","id":"fc_"+fileObj.id,"name":"user_file_comments[]","class":"input","value":default_name}); ncomment.appendChild(ncomment_input); file_checked_overlab(); } if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º fileQueued
    - conti_fupload : "+conti_fupload+", - file_upload_limit : "+max_upload+", files_queued : "+now_queues+"
"; } catch (ex) { this.debug(ex); } } function cancel_upload() { selcnt = 0; max_upload = parseInt(suo.getSetting("file_upload_limit"), 10); itms_ary = $("fu_item_set").childElements(); item_len = itms_ary.length; for ( i = 0; i < item_len; i++ ) { if ( $("cb_"+itms_ary[i].id).checked == true ) selcnt++; } if ( selcnt == 0 ) { alert("»èÁ¦ÇÏ°íÀÚ ÇÏ´Â ÆÄÀÏÀ» ¼±ÅÃÇϼ¼¿ä."); return; } else { for ( i = 0; i < item_len; i++ ) { if ( $("cb_"+itms_ary[i].id).checked == true ) { itms_ary[i].remove(); suo.cancelUpload( itms_ary[i].id ); } } now_queued = parseInt(suo.getStats().files_queued, 10); if ( now_queued == 0 ) $("fcancel").style.display = "none"; if ( max_upload <= now_queued ) { suo.setButtonDisabled(true); } else { suo.setButtonDisabled(false); } file_checked_overlab(); } if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º cancel_upload
    - max_upload : "+max_upload+", - fu_item_set.length : "+item_len+", - files_queued : "+now_queued+"
"; } function custom_upload_start( what, this_type_set ) { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º custom_upload_start
"; upload_mode_what = what; board_type = this_type_set; itms_ary = $("fu_item_set").childElements(); now_queued = itms_ary.length; if ( now_queued == 0 ) fileupload_clear(); else suo.startUpload(); } function uploadStart( fileObj ) { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º uploadStart
    - fileObj.id : "+fileObj.id+"
"; try { suo.removeFileParam(fileObj.id, "objid"); } catch(e) { } suo.addFileParam( fileObj.id, "objid", fileObj.id ); return true; } function uploadSuccess(fileObj, server_data) { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º uploadSuccess
    - fileObj :"+fileObj.id+", - server_data : "+server_data+"
"; if ( $("user_file").value != "" ) $("user_file").value += ","; $("user_file").value += server_data; now_queued = parseInt(suo.getStats().files_queued, 10); if ( now_queued != 0 ) suo.startUpload(); else fileupload_clear(); } function fileupload_clear() { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º fileupload_clear
"; if ( board_type == "AJAX" ) { try { nboard.mask_stop(); } catch(e) {} try { nboard.write_edit_form_up( upload_mode_what ); } catch(e) { debate.write_edit_form_up( upload_mode_what ); } } else { //loading_stop(); najaxform_name.submit(); } } function uploadProgress(fileObj, bytesLoaded, bytesTotal) { try { var percent = Math.ceil((bytesLoaded / bytesTotal) * 100); if ( percent != 100 ) $(fileObj.id+"_progress").innerHTML = "["+percent+"%] "; else $(fileObj.id+"_progress").innerHTML = "[¿Ï·á] "; } catch (ex) { this.debug(ex); } if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º uploadProgress
    - fileObj : "+fileObj.id+"("+percent+"%)
"; } function fileQueueError(fileObj, error_code, message) { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º fileQueueError
    - fileObj : "+fileObj.id+"
"; try { if (error_code === SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED) { alert("÷ºÎÆÄÀÏ °³¼ö°¡ Çã¿ë·®À» ÃÊ°úÇÏ¿´½À´Ï´Ù."); this.debug("÷ºÎÆÄÀÏ °³¼ö°¡ Çã¿ë·®À» ÃÊ°úÇÏ¿´½À´Ï´Ù. " + (message === 0 ? "You have reached the upload limit." : "You may select " + (message > 1 ? "up to " + message + " files." : "one file."))); return; } switch(error_code) { case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT: alert("÷ºÎÆÄÀÏÀÇ Å©±â°¡ ÃÖ´ë Çã¿ëÅ©±â¸¦ ÃÊ°úÇÏ¿© ¾÷·Îµå ÇϽǼö ¾ø½À´Ï´Ù.\n\n "+fileObj.name+"["+ file_size_return(fileObj.size)+"]"); this.debug("Error Code: File too big, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE: alert("÷ºÎÆÄÀÏÀÌ 0BytesÀÎ ÆÄÀÏÀº ¾÷·Îµå ÇϽǼö ¾ø½À´Ï´Ù."); this.debug("Error Code: Zero byte file, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE: alert("÷ºÎÆÄÀÏ·Î ¾÷·Îµå Çã¿ëµÈ È®ÀåÀÚ°¡ ¾Æ´Õ´Ï´Ù."); this.debug("Error Code: Invalid File Type, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED: alert("÷ºÎÆÄÀÏ °³¼ö°¡ Çã¿ë·®À» ÃÊ°úÇÏ¿´½À´Ï´Ù."); this.debug("÷ºÎÆÄÀÏ °³¼ö°¡ Çã¿ë·®À» ÃÊ°úÇÏ¿´½À´Ï´Ù. " + (message > 1 ? "You may only add " + message + " more files" : "You cannot add any more files.")); break; default: if (fileObj !== null) { alert("Unhandled Error"); } this.debug("Error Code: " + error_code + ", File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; } } catch (ex) { this.debug(ex); } } function uploadError(fileObj, error_code, message) { if ( my_swfupload_debug_mode == true ) $("my_swfupload_debug_mode_div").innerHTML += "
¢º uploadError
    - fileObj : "+fileObj.id+"
"; try { switch(error_code) { case SWFUpload.UPLOAD_ERROR.HTTP_ERROR: alert("Upload Error: " + message); this.debug("Error Code: HTTP Error, File name: " + fileObj.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.MISSING_UPLOAD_URL: alert("Configuration Error"); this.debug("Error Code: No backend file, File name: " + fileObj.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED: alert("Upload Failed."); this.debug("Error Code: Upload Failed, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.IO_ERROR: alert("Server (IO) Error"); this.debug("Error Code: IO Error, File name: " + fileObj.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR: alert("Security Error"); this.debug("Error Code: Security Error, File name: " + fileObj.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED: alert("Upload limit exceeded."); this.debug("Error Code: Upload Limit Exceeded, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.SPECIFIED_FILE_ID_NOT_FOUND: alert("File not found."); this.debug("Error Code: The file was not found, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED: alert("Failed Validation. Upload skipped."); this.debug("Error Code: File Validation Failed, File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED: if (this.getStats().files_queued === 0) { $("fcancel").disabled = true; } break; case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED: alert("Stopped"); break; default: alert("Unhandled Error: " + error_code); this.debug("Error Code: " + error_code + ", File name: " + fileObj.name + ", File size: " + fileObj.size + ", Message: " + message); break; } } catch (ex) { this.debug(ex); } } function file_size_return( siz ) { org_size = parseFloat(siz, 10); var rret = ""; ret = Math.floor( org_size / 1024 ); if ( ret > 0 ) { ret1 = Math.floor( ret / 1024); if ( ret1 > 0 ) { rret = ret1+" MBytes"; } else rret = ret+" KBytes"; } else rret = org_size+" Bytes"; return rret; }