var uploadHandle='JScript/fileHandle.php',thumbnailSize=100;var BGUpload=function(){var $C=YAHOO.util.Connect,$D=YAHOO.util.Dom,retObj={},imgArr=['jpg','gif','png'];retObj.fileElem={};imgArr.inArray=function(param){for(var i=0;i<this.length;i++)if(this[i]==param)return true;return false;};function _HandleResult(upload_result,elObj){var rNode,nodes,nNode,hNode,dNode,region,imgDim;rNode=$D.get(elObj.id);if(rNode){hNode=document.createElement('INPUT');hNode.type='hidden';hNode.id=elObj.id;hNode.name=upload_result.file_field;hNode.name=hNode.id;hNode.value=upload_result.path;rNode.parentNode.insertBefore(hNode,rNode);dNode=document.createElement('DIV');$D.addClass(dNode,"HDW_DELETE_FILE");dNode.onclick=function(){BGUpload.deleteFile(this,elObj.id);};retObj.fileElem[elObj.id]=rNode.cloneNode(false);if(imgArr.inArray(upload_result.ext)){nNode=document.createElement('IMG');nNode.style.visibility='hidden';nNode.border=0;nNode.src=upload_result.path;nNode.id="HDW_"+elObj.id+"_CONTAINER";rNode.parentNode.insertBefore(nNode,rNode);var loadingInterval=window.setInterval(function(){if(nNode.complete){window.clearInterval(loadingInterval);region=$D.getRegion(nNode);imgDim={w:(region["right"]-region["left"]),h:(region["bottom"]-region["top"])};if(imgDim.w>=thumbnailSize){imgDim.h=Math.round(imgDim.h*thumbnailSize/imgDim.w);imgDim.w=thumbnailSize;}if(imgDim.h>=thumbnailSize){imgDim.w=Math.round(imgDim.w*thumbnailSize/imgDim.h);imgDim.h=thumbnailSize;}nNode.width=imgDim.w;nNode.height=imgDim.h;nNode.style.visibility='visible';}},10);}else{nNode=document.createElement('A');nNode.innerHTML=upload_result.file_name;nNode.href=upload_result.path;nNode.target='_blank';nNode.id="HDW_"+elObj.id+"_CONTAINER";rNode.parentNode.insertBefore(nNode,rNode);}rNode.parentNode.insertBefore(dNode,rNode);rNode.parentNode.removeChild(rNode);}};function _deleteFile(delTag,idFileField){var hNode=$D.get(idFileField),cNode;if(hNode){$C.asyncRequest('POST',uploadHandle,{},"HDW_DELETE_FILE="+hNode.getAttribute("VALUE"));if(retObj.fileElem[idFileField]){cNode=$D.get("HDW_"+idFileField+"_CONTAINER");hNode.parentNode.insertBefore(retObj.fileElem[idFileField],hNode);delTag.parentNode.removeChild(delTag);hNode.parentNode.removeChild(hNode);cNode.parentNode.removeChild(cNode);}}};retObj.upload=function(obj){var upload_result;eval(obj.responseText);if(upload_result&&upload_result.error=='')_HandleResult(upload_result,obj.argument);};retObj.uploadFile=function(inputFile){var me=this,actionF,transObj;if(inputFile.form){actionF=inputFile.form.getAttribute('ACTION');targetF=inputFile.form.getAttribute('TARGET');$C.setForm(inputFile.form,true);retObj.argument={id:inputFile.getAttribute('id')};transObj=$C.asyncRequest('POST',uploadHandle,me);inputFile.form.setAttribute('ACTION',actionF,false);inputFile.form.setAttribute('TARGET',targetF,false);}};retObj.deleteFile=function(delTag,idFileField){_deleteFile(delTag,idFileField);};return retObj;}();