
function fileQueued(file){try{var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setStatus("Pending...");progress.toggleCancel(true,this);}catch(ex){this.debug(ex);}}
function fileQueueError(file,errorCode,message){try{if(errorCode===SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED){alert("You have attempted to queue too many files.\n"+(message===0?"You have reached the upload limit.":"You may select "+(message>1?"up to "+message+" files.":"one file.")));return;}
var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setError();progress.toggleCancel(false);switch(errorCode){case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:progress.setStatus("File is too big.");this.debug("Error Code: File too big, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:progress.setStatus("Cannot upload Zero Byte files.");this.debug("Error Code: Zero byte file, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:progress.setStatus("Invalid File Type.");this.debug("Error Code: Invalid File Type, File name: "+file.name+", File size: "+file.size+", Message: "+message);break;default:if(file!==null){progress.setStatus("Unhandled Error");}
this.debug("Error Code: "+errorCode+", File name: "+file.name+", File size: "+file.size+", Message: "+message);break;}}catch(ex){this.debug(ex);}}
function fileDialogComplete(numFilesSelected,numFilesQueued){try{if(numFilesQueued>0){this.startUpload();}}catch(ex){this.debug(ex);}}
function uploadStart(file){try{var progress=new FileProgress(file,this.customSettings.progressTarget);progress.setStatus("Uploading...");progress.toggleCancel(true,this);}
catch(ex){}
return true;}
function uploadProgress(file,bytesLoaded){try{var percent=Math.ceil((bytesLoaded/file.size)*100);var progress=new FileProgress(file,this.customSettings.upload_target);progress.setProgress(percent);if(percent===100){progress.setStatus("Creating thumbnail...");progress.toggleCancel(false,this);}else{progress.setStatus("Uploading...");progress.toggleCancel(true,this);}}catch(ex){this.debug(ex);}}
function uploadSuccess(file,serverData){try{var progress=new FileProgress(file,this.customSettings.upload_target);if(serverData.substring(0,7)==="FILEID:"){addImage("personal_shopper_service_form.html?makeThumbnail="+serverData.substring(7),serverData.substring(7));uploadCount++;if(uploadCount>=maxFiles){toggleUpload('disable');}
progress.setStatus("Thumbnail Created.");progress.toggleCancel(false);}else{progress.setStatus("Error.");alert(serverData);}}catch(ex){this.debug(ex);}}
function uploadComplete(file){try{if(this.getStats().files_queued>0){this.startUpload();}else{var progress=new FileProgress(file,this.customSettings.upload_target);progress.setComplete();progress.setStatus("All images received.");progress.toggleCancel(false);}}catch(ex){this.debug(ex);}}
function uploadError(file,errorCode,message){var imageName="error.gif";var progress;try{switch(errorCode){case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:try{progress=new FileProgress(file,this.customSettings.upload_target);progress.setCancelled();progress.setStatus("Cancelled");progress.toggleCancel(false);}
catch(ex1){this.debug(ex1);}
break;case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:try{progress=new FileProgress(file,this.customSettings.upload_target);progress.setCancelled();progress.setStatus("Stopped");progress.toggleCancel(true);}
catch(ex2){this.debug(ex2);}
case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:imageName="uploadlimit.gif";break;default:alert(message);break;}}catch(ex3){this.debug(ex3);}}
function addImage(src,fileName){document.getElementById('upload-thumbnails').style.display='block';var fileId=new Date().getTime();var newImg=document.createElement("img");newImg.style.margin="5px";newImg.setAttribute('id',fileId);$(newImg).click(function(){jQuery.get('personal_shopper_service_form.html',{delFile:fileName},function(data){if(data=='success'){$('#'+fileId).remove();uploadCount--;}else{$('#'+fileId).remove();uploadCount--;}
if(uploadCount<maxFiles){toggleUpload('enable');}
var parent=document.getElementById('upload-thumbnails');if(parent.getElementsByTagName('img').length<=0){document.getElementById('upload-thumbnails').style.display='none';}});});document.getElementById("thumbnails").appendChild(newImg);if(newImg.filters){try{newImg.filters.item("DXImageTransform.Microsoft.Alpha").opacity=0;}catch(e){newImg.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+0+')';}}else{newImg.style.opacity=0;}
newImg.onload=function(){fadeIn(newImg,0);};newImg.src=src;}
function toggleUpload(uploadStatus){if(uploadStatus=='disable'){$('#uploadButtonContainer').css('display','none');$('#uploadButtonContainerDisabled').css('display','block');}else if(uploadStatus=='enable'){$('#uploadButtonContainerDisabled').css('display','none');$('#uploadButtonContainer').css('display','block');}}
function fadeIn(element,opacity){var reduceOpacityBy=5;var rate=30;if(opacity<100){opacity+=reduceOpacityBy;if(opacity>100){opacity=100;}
if(element.filters){try{element.filters.item("DXImageTransform.Microsoft.Alpha").opacity=opacity;}catch(e){element.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+opacity+')';}}else{element.style.opacity=opacity/100;}}
if(opacity<100){setTimeout(function(){fadeIn(element,opacity);},rate);}}
function FileProgress(file,targetID){this.fileProgressID="divFileProgress";this.fileProgressWrapper=document.getElementById(this.fileProgressID);if(!this.fileProgressWrapper){this.fileProgressWrapper=document.createElement("div");this.fileProgressWrapper.className="progressWrapper";this.fileProgressWrapper.id=this.fileProgressID;this.fileProgressElement=document.createElement("div");this.fileProgressElement.className="progressContainer";var progressCancel=document.createElement("a");progressCancel.className="progressCancel";progressCancel.href="#";progressCancel.style.visibility="hidden";progressCancel.appendChild(document.createTextNode(" "));var progressText=document.createElement("div");progressText.className="progressName";progressText.appendChild(document.createTextNode(file.name));var progressBar=document.createElement("div");progressBar.className="progressBarInProgress";var progressStatus=document.createElement("div");progressStatus.className="progressBarStatus";progressStatus.innerHTML="&nbsp;";this.fileProgressElement.appendChild(progressCancel);this.fileProgressElement.appendChild(progressText);this.fileProgressElement.appendChild(progressStatus);this.fileProgressElement.appendChild(progressBar);this.fileProgressWrapper.appendChild(this.fileProgressElement);document.getElementById(targetID).appendChild(this.fileProgressWrapper);fadeIn(this.fileProgressWrapper,0);}else{this.fileProgressElement=this.fileProgressWrapper.firstChild;this.fileProgressElement.childNodes[1].firstChild.nodeValue=file.name;}
this.height=this.fileProgressWrapper.offsetHeight;};FileProgress.prototype.setProgress=function(percentage){this.fileProgressElement.className="progressContainer green";this.fileProgressElement.childNodes[3].className="progressBarInProgress";this.fileProgressElement.childNodes[3].style.width=percentage+"%";};FileProgress.prototype.setComplete=function(){this.fileProgressElement.className="progressContainer blue";this.fileProgressElement.childNodes[3].className="progressBarComplete";this.fileProgressElement.childNodes[3].style.width="";};FileProgress.prototype.setError=function(){this.fileProgressElement.className="progressContainer red";this.fileProgressElement.childNodes[3].className="progressBarError";this.fileProgressElement.childNodes[3].style.width="";};FileProgress.prototype.setCancelled=function(){this.fileProgressElement.className="progressContainer";this.fileProgressElement.childNodes[3].className="progressBarError";this.fileProgressElement.childNodes[3].style.width="";};FileProgress.prototype.setStatus=function(status){this.fileProgressElement.childNodes[2].innerHTML=status;};FileProgress.prototype.toggleCancel=function(show,swfuploadInstance){this.fileProgressElement.childNodes[0].style.visibility=show?"visible":"hidden";if(swfuploadInstance){var fileID=this.fileProgressID;this.fileProgressElement.childNodes[0].onclick=function(){swfuploadInstance.cancelUpload(fileID);return false;};}};function queueComplete(numFilesUploaded){var status=document.getElementById("divStatus");status.innerHTML=numFilesUploaded+" file"+(numFilesUploaded===1?"":"s")+" uploaded.";}
