var formChecker = null;
function swfUploadLoaded_cms() {
	var customorderSubmit = document.getElementById("cms_order");	
	customorderSubmit.onclick = cms_doSubmit;	
}
	
function validateForm_cms() {
	//alert("val called..");	
	var isValid = true;
	var num = "";
	       if((($("#cms_name").val()) == "* Your Name:" ) || (($("#cms_name").val()) == "" ))			{								
				$("#cms_name").addClass('error');
				return false;
			}
			else
		   if((echeck($("#cms_email").val()) == false))
			{
				$("#cms_name").removeClass('error');
				$("#cms_email").addClass('error');
				return false;
			}
			else			
			if((((($("#cms_link").val()) == "Website URL:" ) || (($("#cms_link").val()) == "" ))) && (($("#txtFileName_cms").val() == "")))
			{				
				$("#fileorlink_cms").css({'color' : 'red'});					
				$("#cms_email").removeClass('error');							
				return false;
			}
			else								
			if((($("#cms_notes").val()) == "Note/Message:" ) || (($("#cms_notes").val()) == "" ))
			{				
				$("#fileorlink_cms").css({'color' : '#464646'});									
				$("#cms_notes").addClass('error');
				return false;
			}
			else			
			{
				if ((document.getElementById("txtFileName_cms").value == " ") || (document.getElementById("txtFileName_cms").value.length == 0)) {					
					cms_paypal();
					//$("#file_status_orders").html("file upload required..");
					return false;
				}
				else {					
					$("#cms_notes").removeClass('error');
					return true;
				}
			}
			
			
}

// Called by the submit button to start the upload
function cms_doSubmit(e) {   
   //alert("beval");
   	if($("#cms_form").is(':visible') == false)
  {  	
     $("#cms_form").show('slow');
	 $("#cms_order").html("Proceed To Payment");
	 $("#cms_order").addClass("paymentbg"); 	 
	 return false;
  }else  
	if(validateForm_cms() == true)
	{		
	if (formChecker != null) {
		clearInterval(formChecker);
		formChecker = null;
	}
	
	e = e || window.event;
	if (e.stopPropagation) {
		e.stopPropagation();
	}
	e.cancelBubble = true;
	
	try {
		swfu_cms.startUpload();
	} catch (ex) {

	}
	return false;
	}
}

 // Called by the queue complete handler to submit the form
function uploadDone_cms() {
	try {
		//document.getElementById('customwebdesignblank').innerHTML = "Form Submitted & File uploadedere......";
		$("#file_status_cms").html("<img src='images/loading_green.gif' alt='Loading..'></img>");
		cms_paypal();
		//document.forms[0].submit();
	} catch (ex) {
		//alert("Error submitting form");
	}
}

function fileDialogStart_cms() {
	var txtFileName_cms = document.getElementById("txtFileName_cms");
	txtFileName_cms.value = "";

	this.cancelUpload();
}



function fileQueueError_cms(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_cms(file) {
	try {
		var txtFileName_cms = document.getElementById("txtFileName_cms");
		txtFileName_cms.value = file.name;
		$("#fileorlink_cms").css({'color' : '#464646'});
	} catch (e) {
	}

}
function fileDialogComplete_cms(numFilesSelected, numFilesQueued) {
	//validateForm();
}

function uploadProgress_cms(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("Uploading...");
	} catch (e) {
	}
}

function uploadSuccess_cms(file, serverData) {
	//alert("upload"+serverData);
	document.getElementById("hidFileID_cms").value = serverData;	
	var txtFileName_cms = document.getElementById("txtFileName_cms");
		txtFileName_cms.value = serverData;
	//alert("2upload"+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("Complete.");
		progress.toggleCancel(false);
		
		if (serverData === " ") {
			this.customSettings.upload_successful = false;
		} else {
			this.customSettings.upload_successful = true;			
			document.getElementById("hidFileID_cms").value = serverData;
		}
		
	} catch (e) {
	}
}

function uploadComplete_cms(file) {
	try {
		if (this.customSettings.upload_successful) {
			this.setButtonDisabled(true);
			uploadDone_cms();
		} else {
			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.setStatus("File rejected");
			progress.toggleCancel(false);
			
			var txtFileName_cms = document.getElementById("txtFileName_cms");
			txtFileName_cms.value = "";
			//validateForm();

			alert("There was a problem with the upload.\nThe server did not accept it.");
		}
	} catch (e) {
	}
}

function uploadError_cms(file, errorCode, message) {
	try {
		
		if (errorCode === SWFUpload.UPLOAD_ERROR.FILE_CANCELLED) {
			// Don't show cancelled error boxes
			return;
		}
		
		var txtFileName_cms = document.getElementById("txtFileName_cms");
		txtFileName_cms.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) {
	}
}
