﻿// JScript File

/* standard small functions */
function $m(quem)
{ 
    return document.getElementById(quem)
}

function remove(quem)
{ 
    quem.parentNode.removeChild(quem);
}

function addEvent(obj, evType, fn)
{ 
// elcio.com.br/crossbrowser    
    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 ); 
    }
} 

/* THE UPLOAD FUNCTION */

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"; 

//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'))}, 500);  
    } 
    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(); 
}