﻿var i=false; // La variable i nous dit si la bulle est visible ou non

function getXhr(){
                                var xhr = null; 
				if(window.XMLHttpRequest) // Firefox et autres
				   xhr = new XMLHttpRequest(); 
				else if(window.ActiveXObject){ // Internet Explorer 
				   try {
			                xhr = new ActiveXObject("Msxml2.XMLHTTP");
			            } catch (e) {
			                xhr = new ActiveXObject("Microsoft.XMLHTTP");
			            }
				}
				else { // XMLHttpRequest non supporté par le navigateur 
				   alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest..."); 
				   xhr = false; 
				} 
                                return xhr
			}

function GetId(id)
{
	var exist = document.getElementById(id)
	if (exist)
	{
	    return exist;
	}
	else
	{
	    var newDiv = document.createElement('DIV');
	    newDiv.id = id;
	    newDiv.setAttribute("class","infobulle")
	    newDiv.setAttribute("className","infobulle")
	    newDiv.style.width = "170px"
	    document.body.appendChild(newDiv);
	    return newDiv;
	}
}

				
function move(e) 
{
    if(i) 
    {  // Si la bulle est visible, on calcul en temps reel sa position ideale
	    if (navigator.appName!="Microsoft Internet Explorer") 
	    { // Si on est pas sous IE
	        GetId("curseur").style.left=e.pageX + 5+"px";
	        GetId("curseur").style.top=e.pageY + 10+"px";
	    }
	    else 
	    { // Modif proposé par TeDeum, merci à lui
	        if(document.documentElement.clientWidth>0) 
	        {
	            GetId("curseur").style.left=20+event.x+document.documentElement.scrollLeft+"px";
	            GetId("curseur").style.top=10+event.y+document.documentElement.scrollTop+"px";
            }
            else 
            {
                GetId("curseur").style.left=20+event.x+document.body.scrollLeft+"px";
                GetId("curseur").style.top=10+event.y+document.body.scrollTop+"px";
	        }
        }
    }
}

function show_tradictor(id_localizer, ids_languages, mnemos_languages, labels, id, Mnemo, Mnemo_Ok, Mnemo_Close)
{
   var exist = document.getElementById("div_" + id)    
    if (exist)
    {
        exist.style.display = 'block'
    }
    else
    {
	    var principaleDiv = document.createElement('DIV')
	    principaleDiv.id = "div_" + id
	    var table = document.createElement('TABLE')
	    table.border='0'
	    var tbody = document.createElement('TBODY')

	    var TR0 = document.createElement('TR')
	    var TD01 = document.createElement('TD')
	    var TD02 = document.createElement('TD')
	    var TD03 = document.createElement('TD')
	    var TD04 = document.createElement('TD')

        //first ligne
        TR0.style.height = '100%'
	    TR0.valign = 'top'
	    
	    TD01.className = 'left2'
	    TR0.appendChild(TD01)    
	    
	    TD02.className = 'middle2'
	    TD02.width = '20'
	    TD01.colspan = '2'
	    TD02.innerHTML = "<b>" + Mnemo + "</b>"
	    TR0.appendChild(TD02)
	    
	    TD03.className = 'middle2'
	    TD03.width="100%"
        TR0.appendChild(TD03)
        
        TD04.className = 'right2'
	    TD04.innerHTML = "<img style='cursor: pointer;' title='Abandon' onclick=\"closeDiv_('div_" + id + "');\" src='/images/close.gif'>"
	    TR0.appendChild(TD04)
	 
	    tbody.appendChild(TR0)
	    
	    
	    ///////////////Other lignes/////////////////
	    
	    var tabIdsLanguages=ids_languages.split("_");
	    var tabMnemosLanguages=mnemos_languages.split("_");
	    var tabLibels=labels.split("_");
	    
        for (var i=0; i< tabIdsLanguages.length; i++) {
        
    	    var TR1 = document.createElement('TR')
	        var TD11 = document.createElement('TD')
	        var TD12 = document.createElement('TD')
	        var TD13 = document.createElement('TD')
	        var TD14 = document.createElement('TD')
	        var TD15 = document.createElement('TD')
	        
	        TR1.style.height = '100%'
	        TR1.valign = 'top'
    	    
	        TD11.className = 'left2'
	        TR1.appendChild(TD11)
    	    
	        TD12.className = 'middle2'
	        TD12.width = '20'
	        TD12.innerHTML = "<b>" + tabMnemosLanguages[i] + "</b>"
	        TR1.appendChild(TD12)
    	    
	        TD13.className = 'middle2'
	        TD13.width="100%"
	        ID_HIDDEN = 'hidden--'+id
    	    
	        if (document.getElementById(ID_HIDDEN)){
	            TD13.innerHTML += "<br><textarea id='text_" + tabIdsLanguages[i] + "' name='text_" + tabIdsLanguages[i] + "' rows='3' cols='20'>" + tabLibels[i] + "</textarea>";
	        }else{
	            TD13.innerHTML += "<br><textarea id='text_" + tabIdsLanguages[i] + "' name='text_" + tabIdsLanguages[i] + "' rows='3' cols='20'></textarea>"; 
	        }
	        if( i == (tabIdsLanguages.length - 1)){
	            TD13.innerHTML += "<br><div align='center'><input class='INPUTADV' type='button' value='" + Mnemo_Ok + "' onclick=\"closeDivF_('div_" + id + "','" + id + "','" + ids_languages + "');\" />&nbsp;&nbsp;<input class='INPUTADV' type='button' value='" + Mnemo_Close + "' onclick=\"closeDiv_('div_" + id + "');\" /></div>"
	        }
	        TD13.innerHTML += "<input type='hidden' value='" + id + "'/>"
            TR1.appendChild(TD13)
            
            TD14.className = 'right2'
	        TR1.appendChild(TD14)
    	    
	        tbody.appendChild(TR1)
	    }
	    
	    table.appendChild(tbody)
	    table.setAttribute( 'cellspacing' , '0px' )
	    table.setAttribute( 'cellpadding' , '0px' )
	    table.className = 'content'
	    principaleDiv.appendChild(table)
        var id_div = "div-" + id_localizer
	    document.getElementById(id_div).appendChild(principaleDiv)
	}
	return false;
}

function closeDiv_( id )
{
    var div = document.getElementById( id )
    var textarea_id = id.replace('div','text')
    div.style.display = 'none'
    return false;
}

function closeDivF_( id, id_ressources, ids_languages)
{
    var div = document.getElementById( id )
    var labels = ""
    div.style.display = 'none'
    var tabIdsLanguages=ids_languages.split("_");
    
    for (var i=0; i< tabIdsLanguages.length; i++) {
        var id_text = "text_" + tabIdsLanguages[i]
        
        if(i == tabIdsLanguages.length - 1){
            labels = labels + document.getElementById(id_text).value
        }else{
            labels = labels + document.getElementById(id_text).value + "_"
        }
    }
    
    var xhr = getXhr()
	// On défini ce qu'on va faire quand on aura la réponse
	xhr.onreadystatechange = function(){
	// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
	if(xhr.readyState == 4 && xhr.status == 200){
	   return false;
	}
	}
	xhr.open("POST","/frontblocks/ui/QuickTradictor/addQuickTradictor.aspx",true);
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    
    var data = "id=" + id_ressources + "&ids_languages=" + ids_languages + "&labels=" + labels
    ID_HIDDEN = 'hidden--'+id_ressources
  //document.write(data);
    //if (document.getElementById(ID_HIDDEN))
	    //document.getElementById(ID_HIDDEN).value = document.getElementById(id_text).value
	    
    xhr.send(data);
}


document.onmousemove=move; // des que la souris bouge, on appelle la fonction move pour mettre a jour la position de la bulle.
