function getHTTPObject() {
	var xhr = false;
	if(window.XMLHttpRequest) {
		xhr = new XMLHttpRequest();
	}else if(window.ActiveXObject) {
		try{
			xhr = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e) {
			try {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e) {
				xhr = false;
			}
		}
	}
	return xhr;
}
///////////////////////////////////////////////////////////
function sendData(data) {
	var request = getHTTPObject();
	if(request) {
		//displayLoading(document.getElementById("submitBtn"));
		request.onreadystatechange = function() {
			parseResponse(request);
		};
		request.open("POST", "imageStorage.php", true);
		request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		request.send(data);
		return true;
	}else{
		return false;
	}
}
///////////////////////////////////////////////////////////
function prepareForm()  {
	if(!document.getElementById) {
		return;
	}
	if(!document.getElementById("imageUpload")) {
		return;
	}
	document.getElementById("imageUpload").onsubmit = function() {
		var data="";
		for(var i=0; i<this.elements.length; i++) {
			data+= this.elements[i].name;
			data+= "=";
			data+= escape(this.elements[i].value);
			data+= "&";
		}
		return !sendData(data);
	};
}

addLoadEvent(prepareForm);
///////////////////////////////////////////////////////////
function parseResponse(request) {
	if(request.readyState == 4) {
		if(request.status == 200 || request.status == 304) {
			var container = document.getElementById("imageStorage");
      		container.innerHTML = request.responseText;
			prepareForm();
			//this binds an onclick to the remove buttons
			prepareLinks()
		}
	}
}
///////////////////////////////////////////////////////////
function displayLoading(element) {
	element.setAttribute("value", "Uploading...");
}
///////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////
function jsUpload(upload_field) {
    // this is just an example of checking file extensions
    // if you do not need extension checking, remove 
    // everything down to line
    // upload_field.form.submit();

    var re_text = /\.jpg|\.gif|\.pjpeg|\.JPEG|\.png/i;
    var filename = upload_field.value;

    /* Checking file type */
    if (filename.search(re_text) == -1) {
        alert("File must be a .jpg, .gif, or .png");
        upload_field.form.reset();
        return false;
    }

    upload_field.form.submit();
    
    var preloader = document.createElement("img");
    preloader.setAttribute("src", "img/preloader.gif");
    preloader.setAttribute("id", "preloader");
    document.getElementById("iframeUpload").appendChild(preloader);
    
    upload_field.disabled = true;
    return true;
}
