function $m(theVar){
	return document.getElementById(theVar)

}

function remove(theVar){

	var theParent = theVar.parentNode;

	theParent.removeChild(theVar);

}

function addEvent(obj, evType, fn){

	if(obj.addEventListener)

	    obj.addEventListener(evType, fn, true)

	if(obj.attachEvent)

	    obj.attachEvent("on"+evType, fn)

}

function removeEvent(obj, type, fn){

	if(obj.detachEvent){

		obj.detachEvent('on'+type, fn);

	}else{

		obj.removeEventListener(type, fn, false);

	}

}

function isWebKit(){

	return RegExp(" AppleWebKit/").test(navigator.userAgent);

}

function ajaxUpload(form,url_action,id_element,html_show_loading,html_error_http){

	window.parent.$m('image_area_imagine').src = 'images/loader_light_blue.gif';

	var detectWebKit = isWebKit();

	form = typeof(form)=="string"?$m(form):form;

	var erro="";

	if(form==null || typeof(form)=="undefined"){

		erro += "The form of 1st parameter does not exists.\n";

	}else if(form.nodeName.toLowerCase()!="form"){

		erro += "The form of 1st parameter its not a form.\n";

	}
	
	oldt = form.getAttribute('action');

	if($m(id_element)==null){

		erro += "The element of 3rd parameter does not exists.\n";

	}

	if(erro.length>0){

		alert("Error in call ajaxUpload:\n" + erro);

		return;

	}

	var iframe = document.createElement("iframe");

	iframe.setAttribute("id","ajax-temp");

	iframe.setAttribute("name","ajax-temp");

	iframe.setAttribute("width","0");

	iframe.setAttribute("height","0");

	iframe.setAttribute("border","0");

	iframe.setAttribute("style","width: 0; height: 0; border: none;");

	form.parentNode.appendChild(iframe);

	window.frames['ajax-temp'].name="ajax-temp";

	var doUpload = function(){

		removeEvent($m('ajax-temp'),"load", doUpload);

		var cross = "javascript: ";

		cross += "window.parent.$m('"+id_element+"').value = document.body.innerHTML;window.parent.$m('"+id_element+"_imagine').src = document.body.innerHTML; void(0);";

		$m(id_element).value = html_error_http;

		$m('ajax-temp').src = cross;
		
		form.setAttribute('target','_self');
		form.setAttribute('action',oldt);

		if(detectWebKit){

        	remove($m('ajax-temp'));

        }else{

        	setTimeout(function(){ remove($m('ajax-temp'))}, 250);

        }

    }

	addEvent($m('ajax-temp'),"load", doUpload);

	form.setAttribute("target","ajax-temp");

	form.setAttribute("action",url_action);

	form.setAttribute("method","post");

	form.setAttribute("enctype","multipart/form-data");

	form.setAttribute("encoding","multipart/form-data");

	if(html_show_loading.length > 0){

		//$m(id_element).innerHTML = html_show_loading;

	}

	form.submit();

}
