function checkSrcSelector()
{	
	var SelectorFormulaire = document.forms["sourceSelectorForm"];
	var SearchFormulaire = document.forms["searchForm"];
	var i;
	var listItems = SelectorFormulaire.elements['SS-Sources'].value;
	var listThemes = SelectorFormulaire.elements['SS-Themes'].value;
	var bExist;
	var index = "Theme_".length;
	var idTheme = "";	
	var memorizedValue = "";	
	
	// Checks all in the source selector form
	i = 0;
	while (SelectorFormulaire.elements[i])
	{
		if (SelectorFormulaire.elements[i].type == "checkbox")
			if (SelectorFormulaire.elements[i].disabled != true)
			{
   	  			SelectorFormulaire.elements[i].checked = true;    	  				  			
   	  			if (SelectorFormulaire.elements[i].name == "Theme")
   	  			{
	   	  			// Adds each theme to the list of selected ones   	  			
					index = "Theme_".length;
					idTheme = SelectorFormulaire.elements[i].id;	
					memorizedValue = idTheme.slice(index);
					bExist = listThemes.search(memorizedValue + ",");
		 			if (bExist == -1)
		            	listThemes = listThemes + memorizedValue + ",";														
	            }
   	  			else
   	  			{
		        	// Adds current item to the list of checked ones
					memorizedValue = SelectorFormulaire.elements[i].name;
		        	bExist = listItems.search(memorizedValue + ",");
		 			if (bExist == -1)
		            	listItems = listItems + memorizedValue + ",";													
   	  			}	   	  			            
   	  		}
		i++;
	}
	SelectorFormulaire.elements['SS-Themes'].value = listThemes;
	SelectorFormulaire.elements['SS-Sources'].value = listItems;	
	
	// Checks all in the searcher form
	i = 0;
	while (SearchFormulaire.elements[i])
	{
		if (SearchFormulaire.elements[i].type == "checkbox")
			if (SearchFormulaire.elements[i].disabled != true)
   	  			SearchFormulaire.elements[i].checked = true;
		i++;
	}
}

function uncheckSrcSelector()
{	
	var SelectorFormulaire = document.forms["sourceSelectorForm"];
	var SearchFormulaire = document.forms["searchForm"];
	var i;
	
	// Unchecks all in the source selector form
	i = 0;
	while (SelectorFormulaire.elements[i])
	{
		if (SelectorFormulaire.elements[i].type == "checkbox")
			if (SelectorFormulaire.elements[i].disabled != true)
   	  			SelectorFormulaire.elements[i].checked = false;
		i++;
	}
	// Clears the list of selected Sources and the list of selected items
	SelectorFormulaire.elements['SS-Themes'].value = "";
	SelectorFormulaire.elements['SS-Sources'].value = "";	
	
	// Unchecks all in the searcher form
	i = 0;
	while (SearchFormulaire.elements[i])
	{
		if (SearchFormulaire.elements[i].type == "checkbox")
			if (SearchFormulaire.elements[i].disabled != true)
   	  			SearchFormulaire.elements[i].checked = false;
		i++;
	}
}

function foldSrcSelector(nbBlock)
{
	var SelectorFormulaire = document.forms["sourceSelectorForm"];
	
	i=1;
	var block;
	var picto;
	while (i<=nbBlock)
	{
		if(document.getElementById("src_stacktrace_"+i))
		{
			block = document.getElementById("src_stacktrace_"+i);
			picto = document.getElementById("src_pm_"+i);
			with (block.style) 
	    	{
	    		display = "none"
	    		picto.src="images/blt_plus.gif";
	    	}
	    }
		i++;
	}
	SelectorFormulaire.elements['SS-Fold'].value = "";
}

function unfoldSrcSelector(nbBlock)
{
	var SelectorFormulaire = document.forms["sourceSelectorForm"];
	var listFold = SelectorFormulaire.elements['SS-Fold'].value;
	var bExist;	

	i=1;
	var block;
	var picto;
	while (i<=nbBlock)
	{
		if(document.getElementById("src_stacktrace_"+i))
		{
			block = document.getElementById("src_stacktrace_"+i);
			picto = document.getElementById("src_pm_"+i);
			with (block.style) 
	    	{
	    		display = ""
	    		picto.src="images/blt_minus.gif";
	    	}
			// Adds all themes into the list of folded ones
			bExist = listFold.search(i + ",");
			if (bExist == -1)
				listFold = listFold + i + ",";
	    }
		i++;
	}
	// Removes all themes from the list of folded ones
	SelectorFormulaire.elements['SS-Fold'].value = listFold;
}

function toggleSrcSelector(idBlock,idImg) 
{
	var SelectorFormulaire = document.forms["sourceSelectorForm"];
	var listFold = SelectorFormulaire.elements['SS-Fold'].value;
	var bExist;
	var index = "src_stacktrace_".length;	
	var memorizedValue = idBlock.slice(index);
	
    var block = document.getElementById(idBlock);
    var picto = document.getElementById(idImg);
    with (block.style) 
    {
        if ( display == "none" )
        {
            display = ""            
            picto.src="searcher/images/picto_moins_of.gif";
            // Adds current theme to the list of folded ones
            bExist = listFold.search(memorizedValue + ",");
 			if (bExist == -1)
            	listFold = listFold + memorizedValue + ",";
        } 
        else
        {
            display = "none"
            picto.src="searcher/images/picto_plus_of.gif";
            // Removes current theme to the list of folded ones
            bExist = listFold.search(memorizedValue + ",");
 			if (bExist != -1)
            	listFold = listFold.replace(memorizedValue + "," , ""); 	
        }
    }
    SelectorFormulaire.elements['SS-Fold'].value = listFold;     
}

function foldSearcherResult(nbBlock)
{
	var SearchResultFormulaire = document.forms["listeForm"];
	
	i=1;
	var block;
	var picto;
	while (i<=nbBlock)
	{
		if(document.getElementById("stacktrace_"+i))
		{
			block = document.getElementById("stacktrace_"+i);
			picto = document.getElementById("pm_"+i);
			with (block.style) 
	    	{
	    		display = "none"
	    		picto.src="images/blt_plus.gif";
	    	}
	    }
		i++;
	}
	SearchResultFormulaire.elements['SR-Fold'].value = "";
}

function unfoldSearcherResult(nbBlock)
{
	var SearchResultFormulaire = document.forms["listeForm"];
	var listFold = SearchResultFormulaire.elements['SR-Fold'].value;
	var bExist;

	i=1;
	var block;
	var picto;
	while (i<=nbBlock)
	{
		if(document.getElementById("stacktrace_"+i))
		{
			block = document.getElementById("stacktrace_"+i);
			picto = document.getElementById("pm_"+i);
			with (block.style) 
	    	{
	    		display = ""
	    		picto.src="images/blt_minus.gif";
	    	}
			// Adds all sources into the list of folded ones
			bExist = listFold.search(i + ",");
			if (bExist == -1)
				listFold = listFold + i + ",";
	    }
		i++;
	}
	// Removes all source from the list of folded ones
	SearchResultFormulaire.elements['SR-Fold'].value = listFold;
}

function toggleSearcherResult(idBlock,idImg,idMenu) 
{
	var SearchResultFormulaire = document.forms["listeForm"];
	var listFold = SearchResultFormulaire.elements['SR-Fold'].value;
	var bExist;
	var index = "stacktrace_".length;	
	var memorizedValue = idBlock.slice(index);
	
    var block = document.getElementById(idBlock);
    var picto1 = document.getElementById("pm_1_"+idImg);
    var picto2 = document.getElementById("pm_2_"+idImg);
    var menu  = document.getElementById(idMenu);
    with (block.style) 
    {
        if ( display == "none" )
        {
            display = ""
            menu.style.display = "none"     
            picto1.src="images/minus.gif";
            picto2.src="images/minus.gif";
            // Adds current theme to the list of folded ones
            bExist = listFold.search(memorizedValue + ",");
 			if (bExist == -1)
            	listFold = listFold + memorizedValue + ",";
        } 
        else
        {
            display = "none"
            menu.style.display = ""
            picto1.src="images/plus.gif";
            picto2.src="images/plus.gif";
            // Removes current theme to the list of folded ones
            bExist = listFold.search(memorizedValue + ",");
 			if (bExist != -1)
            	listFold = listFold.replace(memorizedValue + "," , ""); 	
        }
    }
    SearchResultFormulaire.elements['SR-Fold'].value = listFold;     
}

function checkSearcherResult()
{	
	var Formulaire = document.forms["listeForm"];
	var i;
	var listItems = Formulaire.elements['SR-SelectedSrcItems'].value;
	var listSources = Formulaire.elements['SR-SelectedSources'].value;
	var bExist = false;
	var indexName = "Item_".length;
	var indexId = "Source_".length;
	var idSource = "";
	var nameItem = "";
	var idItem = "";	
	var memorizedValueName = "";
	var memorizedValueId = "";	
	
	// Checks all
	i = 0;
	while (Formulaire.elements[i])
	{
		if (Formulaire.elements[i].type == "checkbox")
			if (Formulaire.elements[i].disabled != true)
			{
   	  			Formulaire.elements[i].checked = true;
   	  			if (Formulaire.elements[i].name == "Source")
   	  			{
					// Adds current source to the list of checked ones   	  			
					idSource = Formulaire.elements[i].id;	
					memorizedValueId = idSource.slice(indexId);
		        	bExist = listSources.search(memorizedValueId + ",");
		 			if (bExist == -1)
		            	listSources = listSources + memorizedValueId + ",";						   	  			
   	  			}
   	  			else
   	  			{
		        	// Adds current item to the list of checked ones
					nameItem = Formulaire.elements[i].name;
					idItem = Formulaire.elements[i].id;	
					memorizedValueName = nameItem.slice(indexName);
					memorizedValueId = idItem.slice(indexId);
		        	bExist = listItems.search(memorizedValueId + "-" + memorizedValueName + ",");
		 			if (bExist == -1)
		            	listItems = listItems + memorizedValueId + "-" + memorizedValueName + ",";													
   	  			}
   	  		}
		i++;
	}
	Formulaire.elements['SR-SelectedSources'].value = listSources; 
	Formulaire.elements['SR-SelectedSrcItems'].value = listItems; 													
}

function uncheckSearcherResult()
{	
	var Formulaire = document.forms["listeForm"];
	var i;
	
	// Unchecks all
	i = 0;
	while (Formulaire.elements[i])
	{
		if (Formulaire.elements[i].type == "checkbox")
			if (Formulaire.elements[i].disabled != true)
   	  			Formulaire.elements[i].checked = false;
		i++;
	}
	
	// Clears the list of selected Sources and the list of selected items
	Formulaire.elements['SR-SelectedSources'].value = "";
	Formulaire.elements['SR-SelectedSrcItems'].value = "";
}

function check()
{	
	i=0;
	while (document.forms["listeForm"].elements[i])
	{
		   if (document.forms["listeForm"].elements[i].type=="checkbox")
		   {
		   	  if(document.forms["listeForm"].elements[i].checked==false)
		   	  {
		   	  		document.forms["listeForm"].elements[i].checked=true;
		   	  }
		   }
		   i++;
	}
}

function uncheck()
{	
	i=0;
	while (document.forms["listeForm"].elements[i])
	{
		   if (document.forms["listeForm"].elements[i].type=="checkbox")
		   {
		   	  if(document.forms["listeForm"].elements[i].checked==true)
		   	  {
		   	  		document.forms["listeForm"].elements[i].checked=false;
		   	  }
		   }
		   i++;
	}
}

function toggle(idBlock,idImg) 
{
    var block = document.getElementById(idBlock);
    var picto = document.getElementById(idImg);
    with (block.style) 
    {
        if ( display == "none" )
        {
            display = ""            
            picto.src="searcher/images/picto_moins_of.gif";
        } 
        else
        {
            display = "none"
            picto.src="searcher/images/picto_plus_of.gif";
        }
    }    
}

function fold(nbBlock)
{
	i=1;
	var block;
	var picto;
	while (i<=nbBlock)
	{
		if(document.getElementById("stacktrace_"+i))
		{
			block = document.getElementById("stacktrace_"+i);
			picto = document.getElementById("pm_"+i);
			with (block.style) 
	    		{
	    			display = "none"
	    			picto.src="searcher/images/picto_plus_of.gif";
	    		}
	    	}
			i++;
	}
}

function unfold(nbBlock)
{
	i=1;
	var block;
	var picto;
	while (i<=nbBlock)
	{
		if(document.getElementById("stacktrace_"+i))
		{
			block = document.getElementById("stacktrace_"+i);
			picto = document.getElementById("pm_"+i);
			with (block.style) 
	    		{
	    			display = ""
	    			picto.src="searcher/images/picto_moins_of.gif";
	    		}
	    	}
			i++;
	}
}

function ShowTab(tabgroup, idx, length, state) 
{
    for (var i = 0; i < length; i++) 
    {
        // Change tab status (selected/unselected)
        var tab = document.getElementById(tabgroup + "_tab_" + i);
        if (tab != null) 
        {
            tab.className = (i == idx) ? 'Ongl3OnTr': 'Ongl3OfTr';
        }
        // Change tab content visibilty
        var tabitems = document.getElementById(tabgroup + "_items_" + i);
        if (tabitems != null) 
        {
            tabitems.style.display = (i == idx) ? '' : 'none';
        }
    }
    // Change state value
    if (state.length > 0) {
        document.forms[0][state].value = idx;
    }
}

var bool=true;
var valeurcourante=null;
var cellulecourante=null;
var monChamp=null;

function modifyCell(Cellule)
{	
	if(bool==true)
	{	
		var Element = document.getElementById(Cellule);
		valeurcourante = Element.firstChild.data;		
		cellulecourante=Cellule;
		bool=false;	
			
		monChamp = document.createElement("input");
		var attribut1 = document.createAttribute("type");
		attribut1.nodeValue="text";				
		var attribut2 = document.createAttribute("value");
		attribut2.nodeValue = valeurcourante;		
		var attribut3 = document.createAttribute("size");
		attribut3.nodeValue="10";
		var attribut4 = document.createAttribute("name");
		attribut4.nodeValue = "conditions";		
		monChamp.setAttributeNode(attribut1);
		monChamp.setAttributeNode(attribut2);		
		monChamp.setAttributeNode(attribut3);
		monChamp.setAttributeNode(attribut4);
		Element.firstChild.nodeValue="";
		Element.appendChild(monChamp);				
		monChamp.focus();

		var monTableau=Cellule.split('_');
		document.forms[0].etat.value=monTableau[0];
		document.forms[0].actions.value=monTableau[1];		
	}	
	else if(bool==false && cellulecourante==Cellule)
	{
		bool=true;
		var Element = document.getElementById(Cellule);
		Element.removeChild(monChamp);
		Element.firstChild.data = valeurcourante;		
	}
}

function woody_onsubmit_wkf() 
{    
    //Modification du champ hidden newRightField contenant les valeurs s�lectionn�es
    document.forms[0].newLeftField.value=optN101D2.newLeftField;
    document.forms[0].newRightField.value=optN101D2.newRightField;
    woody_onsubmit();
}

function woody_onsubmit_users() 
{
    //document.forms[0].newLeftFieldGroups.value=groupsTransfert.newLeftField;
    //document.forms[0].newRightFieldGroups.value=groupsTransfert.newRightField;
    document.forms[0].newLeftFieldChannels.value=channelsTransfert.newLeftField;
    document.forms[0].newRightFieldChannels.value=channelsTransfert.newRightField;
    woody_onsubmit();
}

function woody_onsubmit_doctype() 
{
    document.forms[0].newLeftField.value=groupsTransfert.newLeftField;
    document.forms[0].newRightField.value=groupsTransfert.newRightField;
    document.forms[0].newLeftChannelsField.value=channelsTransfert.newLeftField;
    document.forms[0].newRightChannelsField.value=channelsTransfert.newRightField;
    woody_onsubmit();
}

function acreditables()
{
	window.open('../credentialListPopup','public','status=no,location=no,directorie=no,resizable=no,scrollbars=yes,menubar=no,toolbar=no,width=250,height=110,top=200,left=700');	
}

// Change Div content visibilty
function ShowDiv(tabgroup,idx,length) 
{
    for (var i = 0; i < length; i++) 
    {        
        var tabitems = document.getElementById(tabgroup + "_items_" + i);
        if (tabitems != null) 
        {            	
            	if(i==idx)
            	{                        	
		        with (tabitems.style)
		        {
		              if(tabitems.style.display=="none")
		              {
		                  display = ""
		              }
		              else
		              {
		                  display="none"
		                  document.getElementById(tabgroup+"_items_0").style.display="";
		              }
		        }
		}
		else
		{
			tabitems.style.display="none";			
		}		         
        }
    }
}

function indexSelected(index, champ)
{
	//alert(index.name+"|"+index.value+"|"+index.selectedIndex);	
	document.forms['listeForm'].elements[champ].value = index.options[index.selectedIndex].text;
}

// ------------------------------------
// Editable combobox widget
// ------------------------------------

// Input label auto complete
function autoComplete (field, select, property, forcematch)
{
	var found = false;
	for (var i = 0; i<select.options.length; i++)
	{
    	if (select.options[i][property].toUpperCase().indexOf(field.value.toUpperCase()) == 0)
 	   {
    	  found = true; break;
	   }
	}
	
  	if (found) { select.selectedIndex = i; }
  	else { select.selectedIndex = -1; }

  	if (field.createTextRange)
  	{
    	if (forcematch && !found)
    	{
      		field.value = field.value.substring(0,field.value.length-1);
      		return;
    	}
    	var cursorKeys ="8;46;37;38;39;40;33;34;35;36;45;";
    	if (cursorKeys.indexOf(event.keyCode+";") == -1)
    	{
      		var r1 = field.createTextRange();
      		var oldValue = r1.text;
      		var newValue = found ? select.options[i][property] : oldValue;
      		if (newValue != field.value)
      		{
        		field.value = newValue;
        		var rNew = field.createTextRange();
        		rNew.moveStart('character', oldValue.length) ;
        		rNew.select();
      		}
    	}
  	}
}

// open or close selection list
function switchList(field, select)
{
  if (window.getComputedStyle) // Mozilla
  {
      if ( window.getComputedStyle(select,null).getPropertyValue('visibility') == "hidden" )
      {
        select.style.visibility = "visible";
        select.focus();
      }
      else
      {
        select.style.visibility = "hidden";
        field.focus();
      }
  }
  else if (select.currentStyle) // IE
  {
    if ( select.currentStyle.visibility == "hidden" )
    {
      select.style.visibility = "visible";
      select.focus();
    }
    else
    {
      select.style.visibility = "hidden";
      field.focus();
    }
  }
}

// Close selection list
function selectList(field, select)
{
	select.style.visibility = "hidden";
	field.focus();
}

function initLabelSize(selectId, labelId)
{
    if ( document.all ) //IE
	{
  		var width = document.all[selectId].offsetWidth;
  		if (width <= 40)
  		{	
  			width = 109;
	  		document.all[selectId].style.width = width;
	  	}
  		document.all[labelId].width = width - 24;
	}
	else //Mozilla
	{
  		var width = document.getElementById(selectId).offsetWidth;
  		if (width <= 40)
  		{
  			width = 107;
	  		document.getElementById(selectId).style.width = width + "px";
	  	}
  		document.getElementById(labelId).style.width = (width - 22) + "px";
    }
}

function checkForm(formName)
{	
        var form = document.forms[formName];
        i=0;

        while (form.elements[i])
        {
                if (form.elements[i].type == "checkbox")
                {
                        if (form.elements[i].checked == false)
                        {
                                form.elements[i].checked = true;
                        }
                }
                i++;
        }
}

function uncheckForm(formName)
{	
        var form = document.forms[formName];
        i=0;

        while (form.elements[i])
        {
                if (form.elements[i].type == "checkbox")
                {
                        if (form.elements[i].checked == true)
                        {
                                form.elements[i].checked = false;
                        }
                }
                i++;
        }
}

function basketFormSubmit(element,id)
{
	    var form = document.forms["basketForm"];
        var i=0;		
		var j=0;
		
        while (form.elements[i])
        {
                if (form.elements[i].type == "checkbox")
                {
                        if (form.elements[i].checked == true)
                        {
                                j++;                               
                        }
                }
                i++;
        }
        if(j!=0)
        {
        	forms_submitForm(element,id);
        }
        else
        {
        	window.alert(i18n["request-history.nothing-selected"]);
        }
}

function ShowSub(element)
{	
	var imgSubject = document.getElementById(element.id);
	var divid = element.id.split("_");
	var subjectsDiv = document.getElementById("subjects_"+divid[1]);

	//image
	if(imgSubject.src.indexOf('plus.gif')!=-1)
	{
		imgSubject.src="images/minus.gif";
	}
	else
	{
		imgSubject.src="images/plus.gif";
	}
	
	//div
   	if (subjectsDiv.style.display == 'none') 
    {
        subjectsDiv.style.display = ''
    }
    else
    {
        subjectsDiv.style.display = 'none'
    }
}
