var currentSelectionId = "";
var previousId = "";
var previousColor = "";
var index = 0;



function fnSelect(objId)
{
   
   document.getElementById('completeField').focus();
   
   if(previousId==null || previousId==""){
   }else{
   	 
   	
   	 document.getElementById(previousId).style.textDecoration = '';
   	 //document.getElementById(previousId).style.backgroundColor = "red";
   	 
   }
   
   //document.getElementById(objId).style.backgroundColor = "#666666";
   document.getElementById(objId).style.textDecoration = "underline";
}


     function checkKey(myfield,e,data){
     		var keycode;
			if (window.event) keycode = window.event.keyCode;
			else 
			  if (e) keycode = e.which;
			
			
			if (keycode == 13)
	   		{
	   		
	   		    if(currentSelectionId==null || currentSelectionId==""){
	   		    	return false;
	   		    }
	   		
				
				var evnt = document.getElementById(currentSelectionId)["onclick"];

				if (typeof(evnt) == "function") {
					    document.getElementById(currentSelectionId)["onclick"]();
				}
				
	   		
  			}
			
			
			else if (keycode == 37 || keycode == 39){
				return false;
			}
			
			else if (keycode == 40 || keycode == 38)
	   		{
	   		  checkValue(myfield,e);
	   		}else{	   	
		   	  currentSelectionId = "";	
		   	  index= 0;		   	  
	   		  doCompletion(data);
	   		}     
     }



function checkValue(myfield,e)
	{
//alert('window event'+window.event+"which"+e.which);
		previousId = currentSelectionId;

			var keycode;
			if (window.event) keycode = window.event.keyCode;
			else if (e) keycode = e.which;
			else return true;
			
			
			if (keycode == 40)
	   		{
	   		 
				if(document.getElementById('hiddenList').style.display == 'none'){
					currentSelectionId="";
					return false;
				}else{
				
						var companiesProducts = document.getElementsByName("searchCompaniesProductsList");
						
						if(companiesProducts!=null && companiesProducts.length > 0 ){
							var size = companiesProducts.length-1;
						
							if(currentSelectionId==null || currentSelectionId==""){
								currentSelectionId = companiesProducts[0].id;
								index = 0;
							}else{								
								if(index < size){
								   index++;
								   currentSelectionId = companiesProducts[index].id;								   
								}else{								
								   currentSelectionId = currentSelectionId ;
								}							
							}

							fnSelect(currentSelectionId);
							
							return true;
						}else{
						}	
				}
			 	
	  		 }else if(keycode == 38){
	  		 
	  		 		
	  		 		if(document.getElementById('hiddenList').style.display == 'none'){
				   			currentSelectionId="";
							return false;
					}else{
				
						var companiesProducts = document.getElementsByName("searchCompaniesProductsList");
						if(companiesProducts!=null && companiesProducts.length > 0 ){
							var size = companiesProducts.length-1;
						
							if(currentSelectionId==null || currentSelectionId==""){
									    index = 0;
										return false;															
							}else{
								if(index == 0){
									currentSelectionId = currentSelectionId ;
								}else{
								    index--;
									currentSelectionId = companiesProducts[index].id;
								}							
							}

							fnSelect(currentSelectionId);
							
							return true;
						}else{
						}	
				}
	  		 }
	  		 else
	  		 return true;
	}




// welcome page and logout page
     function checkKey1(myfield,e,data){
          //alert("null");
     		var keycode;
			if (window.event) keycode = window.event.keyCode;
			else 
			  if (e) keycode = e.which;
			
			
			if (keycode == 13)
	   		{
	   		
	   		    if(currentSelectionId==null || currentSelectionId==""){
                                //alert("null");
	   		    	return false;
	   		    }
	   		
				
				var evnt = document.getElementById(currentSelectionId)["onclick"];

				if (typeof(evnt) == "function") {
					    document.getElementById(currentSelectionId)["onclick"]();
				}
				
	   		
  			}
			
			
			else if (keycode == 37 || keycode == 39){
				return false;
			}
			
			else if (keycode == 40 || keycode == 38)
	   		{
	   		  checkValue(myfield,e);
	   		}else{	   	
		   	  currentSelectionId = "";	
		   	  index= 0;
	   		  doCompletion1(data);
	   		}     
     }




//for intermediate dashboards

function selectCompany(objId)
{   
   document.getElementById('searchCompanyName').focus();
   if(previousId==null || previousId==""){
   }else{
   	 document.getElementById(previousId).style.textDecoration = '';
   }
   document.getElementById(objId).style.textDecoration = "underline";
}


//for intermediate dashboards

  function checkFirstDashboardKey(myfield,e,data){
     		var keycode;
			if (window.event) keycode = window.event.keyCode;
			else 
			  if (e) keycode = e.which;
			
			
			if (keycode == 13)
	   		{
	   		
	   		    if(currentSelectionId==null || currentSelectionId==""){
	   		    	return false;
	   		    }
	   		
				
				var evnt = document.getElementById(currentSelectionId)["onclick"];

				if (typeof(evnt) == "function") {
					    document.getElementById(currentSelectionId)["onclick"]();
				}
				
	   		
  			}
			
			
			else if (keycode == 37 || keycode == 39){
				return false;
			}
			
			else if (keycode == 40 || keycode == 38)
	   		{
	   		  checkFirstDashboardValue(myfield,e);
	   		}else{	   	
		   	  currentSelectionId = "";	
		   	  index= 0;		   	  
	   		  findCompanies(data);
	   		}     
     }


//for intermediate dashboards

function checkFirstDashboardValue(myfield,e)
	{

		previousId = currentSelectionId;

			var keycode;
			if (window.event) keycode = window.event.keyCode;
			else if (e) keycode = e.which;
			else return true;
			
			
			if (keycode == 40)
	   		{
	   		 
				if(document.getElementById('companiesHiddenList').style.display == 'none'){
					currentSelectionId="";
					return false;
				}else{
				
						var searchCompanies = document.getElementsByName("searchCompaniesList");
						
						if(searchCompanies!=null && searchCompanies.length > 0 ){
							var size = searchCompanies.length-1;
						
							if(currentSelectionId==null || currentSelectionId==""){
								currentSelectionId = searchCompanies[0].id;
								index = 0;
							}else{								
								if(index < size){
								   index++;
								   currentSelectionId = searchCompanies[index].id;								   
								}else{								
								   currentSelectionId = currentSelectionId ;
								}							
							}

							selectCompany(currentSelectionId);
							
							return true;
						}else{
						}	
				}
			 	
	  		 }else if(keycode == 38){
	  		 
	  		 		
	  		 		if(document.getElementById('companiesHiddenList').style.display == 'none'){
				   			currentSelectionId="";
							return false;
					}else{
				
						var searchCompanies = document.getElementsByName("searchCompaniesList");
						if(searchCompanies!=null && searchCompanies.length > 0 ){
							var size = searchCompanies.length-1;
						
							if(currentSelectionId==null || currentSelectionId==""){
									    index = 0;
										return false;															
							}else{
								if(index == 0){
									currentSelectionId = currentSelectionId ;
								}else{
								    index--;
									currentSelectionId = searchCompanies[index].id;
								}							
							}

							selectCompany(currentSelectionId);
							
							return true;
						}else{
						}	
				}
	  		 }
	  		 else
	  		 return true;
	}

