function $m(quem){
	return document.getElementById(quem)
}
function remove(quem){
	quem.parentNode.removeChild(quem);
}
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 micoxUpload(form,url_action,id_element,html_show_loading,html_error_http){

	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";
	}

	if($m(id_element)==null){ 
		erro += "The element of 3rd parameter does not exists.\n";
	}

	if(erro.length>0) {
		alert("Error in call micoxUpload:\n" + erro);
		return;
	}

 //creating the iframe
	var iframe = document.createElement("iframe");
	iframe.setAttribute("id","micox-temp");
	iframe.setAttribute("name","micox-temp");
	iframe.setAttribute("width","0");
	iframe.setAttribute("height","0");
	iframe.setAttribute("border","0");
	iframe.setAttribute("style","width: 0; height: 0; border: none;");
 
 //add to document
	form.parentNode.appendChild(iframe);
	window.frames['micox-temp'].name="micox-temp"; //ie sucks
 
 //add event
	var carregou = function() { 
		removeEvent( $m('micox-temp'),"load", carregou);
		var cross = "javascript: ";
		cross += "window.parent.$m('" + id_element + "').innerHTML = document.body.innerHTML; void(0); ";

		$m(id_element).innerHTML = html_error_http;
		$m('micox-temp').src = cross;
		//del the iframe
		setTimeout(function(){ remove($m('micox-temp'))}, 2500);
	}

	addEvent( $m('micox-temp'),"load", carregou)
 
 //properties of form
	form.setAttribute("target","micox-temp");
	form.setAttribute("action",url_action);
	form.setAttribute("method","post");
	form.setAttribute("enctype","multipart/form-data");
	form.setAttribute("encoding","multipart/form-data");
 //submit
	form.submit();
 
 //while loading
	if(html_show_loading.length > 0){
		$m(id_element).innerHTML = html_show_loading;
	}
	
}