﻿// JScript File

//<![CDATA[
    function getSuggestFields() {       
        var sfields = document.getElementsByTagName('input');
        if (sfields){
            for(var i=0;i < sfields.length;i++){
                if (getClss(sfields[i]).indexOf('suggest') > -1) {
                    //get all input fields which have a 'unique*' class
                    var uid = !sfields[i].id ? sfields[i].id : sfields[i].getAttribute('id');
                    //the string after unique in the class name denotes type of unique to ascertain...
                    var utype = getClss(sfields[i]).substr(7);
                    
                    if (uid){
                        clearInterval(gsfTime);
                        cuTime = setInterval(function() {findSuggested(uid,utype);},1500);
                    }
                }
            }
        }
    }

	function findSuggested(txtboxID,tableName) {
		var xmlhttp = false;
		xmlhttp = createXHRobj();
		
		if (xmlhttp)
		{		
		var txtSuggested = document.getElementById(txtboxID);
		//txtSuggested.blur();
		if (txtSuggested.createTextRange || txtSuggested.setSelectionRange){

			var inputTxt = txtSuggested.value
			var formattedInput = txtSuggested.value.replace(' ','%20')
			while (formattedInput.indexOf(' ') > -1){
				formattedInput = formattedInput.replace(' ','%20')
			}
			var iLen = inputTxt.length;
			xmlhttp.open("GET", "ajax/findSuggested.aspx?type="+tableName+"&text="+formattedInput,true);
			xmlhttp.onreadystatechange= function() {
				if (xmlhttp.readyState=="4") {
					var strResponse = xmlhttp.responseText;
						if (strResponse != '') {
							txtSuggested.value = inputTxt + strResponse.substr(inputTxt.length);
							if (txtSuggested.createTextRange) {
								var oRange = txtSuggested.createTextRange();
								oRange.moveStart("character", inputTxt.length);
								oRange.moveEnd("character", strResponse.length - inputTxt.length);
								oRange.select();
							} else if (txtSuggested.setSelectionRange) {
								txtSuggested.setSelectionRange(inputTxt.length, strResponse.length);
							}					
						}
				}
			}
			//txtSuggested.focus();
			xmlhttp.send(null)
		}
		}
		return false;
	}
	var cuTime
    //HACKS! since can't run proper onload, keep checking every second until page is loaded, then clear interval
    var gsfTime = setInterval(function() {getSuggestFields()},1001);
	//]>

