var formChecker = null; function preLoad() { if (!this.support.loading) { alert("使用SWFUpload Flash,您需要 Player 9.028或以上."); return false; } } function loadFailed() { alert("加载 SWFUpload 失败. "); } // Called by the submit button to start the upload function doSubmit() { try { swfu.startUpload(); } catch (ex) { } return false; } // Called by the queue complete handler to submit the form function uploadDone() { try { document.forms[0].submit(); } catch (ex) { alert("表单提交失败!"); } } function fileDialogStart() { var txtFileName = document.getElementById("txtFileName"); txtFileName.value = ""; this.cancelUpload(); } function fileQueueError(file, errorCode, message) { try { // Handle this error separately because we don't want to create a FileProgress element for it. switch (errorCode) { case 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; case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT: alert("The file you selected is too big."); this.debug("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); return; case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE: alert("The file you selected is empty. Please select another file."); this.debug("Error Code: Zero byte file, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); return; case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE: alert("The file you choose is not an allowed file type."); this.debug("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); return; default: alert("An error occurred in the upload. Try again later."); this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message); return; } } catch (e) { } } function fileQueued(file) { try { var txtFileName = document.getElementById("txtFileName"); txtFileName.value = file.name; } catch (e) { } } function fileDialogComplete(numFilesSelected, numFilesQueued) { //validateForm(); } function uploadProgress(file, bytesLoaded, bytesTotal) { try { var percent = Math.ceil((bytesLoaded / bytesTotal) * 100); file.id = "singlefile"; // This makes it so FileProgress only makes a single UI element, instead of one for each file var progress = new FileProgress(file, this.customSettings.progress_target); progress.setProgress(percent); progress.setStatus("上传中..."); } catch (e) { } } function uploadSuccess(file, serverData) { try { file.id = "singlefile"; // This makes it so FileProgress only makes a single UI element, instead of one for each file var progress = new FileProgress(file, this.customSettings.progress_target); progress.setComplete(); progress.setStatus("完成."); progress.toggleCancel(false); if (serverData === " ") { this.customSettings.upload_successful = false; } else { this.customSettings.upload_successful = true; } } catch (e) { } } function uploadError(file, errorCode, message) { try { if (errorCode === SWFUpload.UPLOAD_ERROR.FILE_CANCELLED) { // Don't show cancelled error boxes return; } var txtFileName = document.getElementById("txtFileName"); txtFileName.value = ""; validateForm(); // Handle this error separately because we don't want to create a FileProgress element for it. switch (errorCode) { case SWFUpload.UPLOAD_ERROR.MISSING_UPLOAD_URL: alert("There was a configuration error. You will not be able to upload a resume at this time."); this.debug("Error Code: No backend file, File name: " + file.name + ", Message: " + message); return; case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED: alert("You may only upload 1 file."); this.debug("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); return; case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED: case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED: break; default: alert("An error occurred in the upload. Try again later."); this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message); return; } file.id = "singlefile"; // This makes it so FileProgress only makes a single UI element, instead of one for each file var progress = new FileProgress(file, this.customSettings.progress_target); progress.setError(); progress.toggleCancel(false); switch (errorCode) { case SWFUpload.UPLOAD_ERROR.HTTP_ERROR: progress.setStatus("Upload Error"); this.debug("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED: progress.setStatus("Upload Failed."); this.debug("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.IO_ERROR: progress.setStatus("Server (IO) Error"); this.debug("Error Code: IO Error, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR: progress.setStatus("Security Error"); this.debug("Error Code: Security Error, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED: progress.setStatus("Upload Cancelled"); this.debug("Error Code: Upload Cancelled, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED: progress.setStatus("Upload Stopped"); this.debug("Error Code: Upload Stopped, File name: " + file.name + ", Message: " + message); break; } } catch (ex) { } }