    
function showList(lstr) 
{
    if(isString(lstr))
    {
        if(document.getElementById(lstr).style.display=="none")
            document.getElementById(lstr).style.display="block";
    }
    else
    {
        if(lstr.style.display="none")
            lstr.style.display="block";        
    }
}

function hideList(lstr) 
{  
    if(isString(lstr))
    {
        document.getElementById(lstr).style.display="none";        
    }
    else
    {   
	   lstr.style.display='none';              
    } 
}

function showHideList(lstr)
{
    if(isString(lstr))
    {
	    if (document.getElementById(lstr).style.display=="block")
		    document.getElementById(lstr).style.display="none";
	    else
	    {
		    document.getElementById(lstr).style.display="block";
	    }
	}
	else
	{  
	    if (lstr.style.display=="block")
		    lstr.style.display="none";
	    else
	    {
		    lstr.style.display="block";
	    }	
	}	
}

function handleClickOnList(seditControl,slist_show,lstr) 
{ 
    var editControl = document.getElementById(seditControl);    
    var list_show = document.getElementById(slist_show); 
	editControl.value = list_show.options[list_show.selectedIndex].text; 
	hideList(lstr);
}

	
function updateSearchCombo(editControl,idControl,list_show,lstr) 
{
	editControl.value = list_show.options[list_show.selectedIndex].text;
	idControl.value =  list_show.options[list_show.selectedIndex].value;		
	hideList(lstr);		
}

function fn_NevigateSearchCombo(seditControl,svalueControl,ssourceControl,list1,e)
{	
    var editControl = document.getElementById(seditControl);
    var valueControl = document.getElementById(svalueControl);
    var sourceControl = document.getElementById(ssourceControl);    
    
    var keyCode ;    
    
    if(window.event) // IE
    {
      keyCode = window.event.keyCode;
    }
    else if(e.which) // Netscape/Firefox/Opera
    {
      keyCode = e.which;
    }   
    
    
    //Tab key is pressed	
    if (keyCode == 9)
    {
        hideList(list1);
        return;
    }
	var test,text_value
	var i
	var newPos
	i = 0	
	text_value = editControl.value;
	
	
	if(keyCode == 40 || keyCode == 38)
	{
	    showList(list1);
	}
	 
	if (keyCode == 40)
	{ 
		newPos = sourceControl.selectedIndex;
		
		if (newPos != -1)
		{
			if (sourceControl.options[newPos].value == sourceControl.options[sourceControl.options.length-1].value)
			{
				return;
		    }
		}
		sourceControl.value = sourceControl.options[newPos + 1].value;
		editControl.value = sourceControl.options[newPos + 1].text;		
		return;
	}
	if (keyCode == 38 ){ 
		newPos = sourceControl.selectedIndex;
		
		if (newPos == 0)
			return;
			
		sourceControl.value = sourceControl.options[newPos - 1].value;
		editControl.value = sourceControl.options[newPos - 1].text;
		return;
	}
}

function fn_SearchCombo(seditControl,svalueControl,ssourceControl,list1,e)
{
    var editControl = document.getElementById(seditControl);
    var valueControl = document.getElementById(svalueControl);
    var sourceControl = document.getElementById(ssourceControl);    
    var keyCode ;
    
    if(window.event) // IE
	{
	   keyCode = window.event.keyCode;
	}
    else if(e.which) // Netscape/Firefox/Opera
	{
	   keyCode = e.which;
	}
	   
    //Up down arrow keys
    if (keyCode == 40 || keyCode == 38)
    {    
        return;
    }    
    //Tab key is pressed
	if (keyCode == 9)
	{   hideList(list1);
        return;
    }

	var test,text_value;
	var i;
	var newPos;
	i = 0;
	text_value = editControl.value;	
 
	if (text_value.length != 0)	
	{	
	 
		showList(list1);
	}
	if (keyCode == 13 )
	{ 
		editControl.value = sourceControl.options[sourceControl.selectedIndex].text;
		sourceControl.value = sourceControl.options[sourceControl.selectedIndex].value;
		hideList(list1); 
		return;
	}
			
	sourceControl.value= -1;		
	  
	while (sourceControl.options[i]!= null){
		test = sourceControl.options[i].text.substr(0,text_value.length).toUpperCase();
		if (test== text_value.toUpperCase())
		{
		    sourceControl.value =sourceControl.options[i].value;
		    break;
		}
		i++;
	}
	if(sourceControl.value == ''){
	
		sourceControl.value = 0;
		hideList(list1);
	}
}
