		var swf_upload_control;

        window.onload = function () {
            swf_upload_control = new SWFUpload({
				// Backend settings
				upload_url: $upload_url,	// Relative to the SWF file, you can use an absolute URL as well.
				file_post_name: "File",

				// Flash file settings
				file_size_limit : "20480",	// 20 MB
				file_types : "*.*",	// or you could use something like: "*.doc;*.wpd;*.pdf",
				file_types_description : "All Files",
				file_upload_limit : "0", // Even though I only want one file I want the user to be able to try again if an upload fails
				file_queue_limit : "1", // this isn't needed because the upload_limit will automatically place a queue limit

				// Event handler settings
				swfupload_loaded_handler : myShowUI,
				
				//file_dialog_start_handler : fileDialogStart,		// I don't need to override this handler
				file_queued_handler : fileQueued,
				file_queue_error_handler : fileQueueError,
				file_dialog_complete_handler : fileDialogComplete,
				
				//upload_start_handler : uploadStart,	// I could do some client/JavaScript validation here, but I don't need to.
				upload_progress_handler : uploadProgress,
				upload_error_handler : uploadError,
				upload_success_handler : uploadSuccess,
				upload_complete_handler : uploadComplete,

				// Flash Settings
				flash_url : $swf_url,	// Relative to this file

				// UI settings
				swfupload_element_id : "flashUI",		// setting for the graceful degradation plugin
				degraded_element_id : "degradedUI",

				custom_settings : {
					progress_target : "fsUploadProgress",
					upload_successful : false
				},
				
				// Debug settings
				debug: false
			});

        }


        function myShowUI() {
            //var btnSubmit = document.getElementById("btnSubmit");
			
			//btnSubmit.onclick = doSubmit;
			//btnSubmit.disabled = true;		
			
            SWFUpload.swfUploadLoaded.apply(this);  // Let SWFUpload finish loading the UI.
        }
		
		function validateForm() {	
		//	var is_valid = true;		
			//document.getElementById("btnSubmit").disabled = !is_valid;	
			document.getElementById("btnSubmit").disabled = false;
		}
		
		function fileBrowse() {
			var txtFileName = document.getElementById("txtFileName");
			txtFileName.value = "";

			this.cancelUpload();
			this.selectFile();
		}
		
		
        // Called by the submit button to start the upload
		function doSubmit(e) {
			e = e || window.event;
			if (e.stopPropagation) e.stopPropagation();
			e.cancelBubble = true;
			
			try {
				// Add the post parameters to the end of post param array.
				//var formElem = document.forms[0];
				//var formElem = document.extraFields;
				
				
				//var formElem = $('extraFields');
				var params = new Object();
				params['user'] = $('userID').value;
				params['modelID'] = $('modelID').value;
				params['modelName'] = $('modelName').value;
				
				//Stu - Took loop out as it was reliant on the form being forms[0]
				//Good idea but we need to be able to pass the form reference to gain extra fields from....
				
				
				// Loop over the form elements.
				/*for (var index = 0; index < formElem.elements.length; ++index) {
					params[formElem.elements[index].name]
					= formElem.elements[index].value;
				}*/
			//alert(params);
				// Set the post parameters.
				swf_upload_control.setPostParams(params);
				swf_upload_control.startUpload();
			} catch (ex) {
				alert(ex);
            }
            return false;
	    }
		

		 // Called by the queue complete handler to submit the form
	    function uploadDone() {
			//alert"image gallery showing";
		document.getElementById("btnSubmit").disabled = false;
			//override it to allow multiple files to be uploaded for a product
			//before actually saving the product
			if(document.getElementById('multipleImages')){
				//found a multiple images holder so I want to append the image path
				//into that field
				
				multiImageHandler();
				document.getElementById("btnSubmit").disabled = false;
				
			}
			else
			{
				singleImageHandler();
			}
			/*
			else{
				try {
					document.forms[0].submit();
				} catch (ex) {
					alert("Error submitting form");
				}
			}*/
	    }

