NumberAutocompleter = {
    placeholder_input: null,
	suggest_ul: null,
	
	init: function(placeholder_input, select_object, suggest_ul) {
	
		NumberAutocompleter.placeholder_input = placeholder_input;
		NumberAutocompleter.suggest_ul = suggest_ul;
		for (var i=0; i<select_object.options.length; i++) {
			
			li = document.createElement('LI');
			li.appendChild(document.createTextNode(select_object.options[i].innerHTML));
			li.setAttribute('class', 'value-'+select_object.options[i].value);
			li.onclick = function(e) {NumberAutocompleter.selectNumber(e)};
			
			jQuery(li).bind("click", function(e) {NumberAutocompleter.selectNumber(this);});
			
			NumberAutocompleter.suggest_ul.appendChild(li);
		}
	},
	
	suggest: function() {
	    var phone_start = NumberAutocompleter.placeholder_input.value;
	    if (phone_start=='' || phone_start.length==4) {
	        NumberAutocompleter.hide_suggestions();
	        return false;
	    }
	    
	    NumberAutocompleter.suggest_ul.style.display='block';
	    var lis = NumberAutocompleter.suggest_ul.childNodes;
	    var found_one = false;
	    var i = 0;
	    for (i=0; i<lis.length; i++) {
	        if (lis[i].innerHTML.substr(0, phone_start.length)==phone_start) {
	            lis[i].style.display = 'block';
	            found_one = true;
	        }
	        else {
	            lis[i].style.display = 'none';
	        }
	    }
	},
	
	hide_suggestions: function() {
	    NumberAutocompleter.suggest_ul.style.dispay='none';
	    var lis = NumberAutocompleter.suggest_ul.childNodes;
	    for (var i=0; i<lis.length; i++) {
	        lis[i].style.display = 'none';
	    }
	},
	
	selectNumber: function(li) {
	    var value=li.innerHTML
	    enterPreparedNum(value);
	    NumberAutocompleter.hide_suggestions();
	}
};
