﻿
m_i = -1;
m_keyval = '';

function showResult( keycode , mDiv , control , i_ ){

    //alert(keycode);alert(mDiv);alert(control);alert(i_);

    oresult = document.getElementById( mDiv );
    oresult.style.visibility = 'visible';
    otext = document.getElementById( control );

    if( keycode == '40' ){  // down
	      if( i_ > 0 ){
			    cancelHighlight( 'x' + mDiv + i_ );
	      }
	      if ( i_ < 10 ){
			    m_i++;
	      }else{
			    i_ = 1;
	      }
	      highlight( 'x' + mDiv + i_ );
    }

    if ( keycode == '38' ){  // up
	      if ( i_ > 0 || i_ < 6 ){
                cancelHighlight( 'x' + mDiv + i_ );
			    if( i_ == 1 ) i_ = 11;
	      }	  
	      m_i--;
	      highlight( 'x' + mDiv + i_ );
    }

    if ( keycode == '27' ){   // escape
	      if ( m_keyval != '' ){
			    otext.value = m_keyval;
			    m_keyval = '';
	      }
	      hideResult(mDiv);
	      cancelHighlight( 'x' + mDiv + i_ );
	      m_i = 0;
    }

    if( keycode == '13' ){    // enter
	      itemText = getItem( 'x' + mDiv + i_ );
	      otext.value = itemText;
	      m_keyval = itemText;
	      hideResult(mDiv);
	      cancelHighlight( 'x' + mDiv + i_ );
	      m_i = -1;
    }
//alert('x' + mDiv + m_i);
}

/*function setTextValue( i ){        
	otext = document.getElementById('tel_search');
	itemText = getItem( 'i' + i );
	otext.value = itemText;
	m_keyval = itemText;
	m_i = i;
}*/

function hideResult(mDiv){
	oresult = document.getElementById(mDiv);
	oresult.style.visibility = 'hidden';
}

function getItem( id ){
	oItem = document.getElementById(id);
	return oItem.innerHTML;
}
    
function highlight( id ){
	oItem = document.getElementById(id);
	oItem.className = 'ac';
	//oItem.style.backgroundColor = '#789';
	//oItem.style.color = '#ee8';
}

function cancelHighlight( id ){
	oItem = document.getElementById(id);
	//oItem.style.backgroundColor = '#de8';
	//oItem.style.color = '#bbb';
	oItem.className = 'ae';
}

//function mHighlight( i ){
//	if ( m_i > 0 ){
//	  	cancelHighlight( 'i' + m_i );
//	}
//	highlight( 'i' + i );
//}

function handleKeyword( keycode , mDiv , control , i_ ){
	if( ! ( m_i < 0 && keycode == 40 ) && keycode != 9 && keycode != 37 && ! ( m_i < 1 && keycode == 38 ) ) {
		  showResult( keycode , mDiv , control , i_ );
		  if ( m_i == -1 ) m_i = 0;
	}
	else {
	  	hideResult(mDiv);
	}
}