var URL_PATTERN = "(http://)?[A-Za-z0-9_.]+\\W+(/[A-Za-z0-9_ ./?%&=]*)?";

//remove  blank of  left
function ltrim(s){ 
return s.replace( /^\s*/, ""); 
} 
//remove blank of right 
function rtrim(s){ 
return s.replace( /\s*$/, ""); 
} 
//remove of blank both side 
function trim(s){ 
return rtrim(ltrim(s)); 
}

function FindControl(typeOfControl, controlName)
{
    var searchString = controlName+"$";
    var elements = (typeOfControl == null) ? document.body.all : document.body.getElementsByTagName(typeOfControl);
    for (i = 0; i < elements.length; ++i)
    {
        element = elements[i];
        if (element.id.search(searchString) >= 0)
        {
            return element;
        }
    }

    return null;
}

function txtInput_onkeydown(element, evt)
{
    var keyCode = evt.which ? evt.which : evt.keyCode;
	if (keyCode == 13) {
        evt.returnValue=false;
    }
}
		
function txtInput_onkeyup(element, evt)
{
    var keyCode = evt.which ? evt.which : evt.keyCode;
	if (keyCode == 13) {
        doPredict();
    }
}

function doPredict()
{
    var txtInput = FindControl("input", "keywordTextBox");  
    var query = trim(txtInput.value);
    var radioValue = "false";
    if(FindControl("input", "rdQuery").checked)
    {
        var encodeQuery = encodeURI(query);
        while(encodeQuery.indexOf("%20%20") >= 0)
        {
            encodeQuery = encodeQuery.replace("%20%20","%20");
        }
        query = decodeURI(encodeQuery);
        if(query == "")
        {
            //alert("Please input a keyword.");
            if(document.getElementById('errorMessage') != null)
            document.getElementById('errorMessage').innerHTML = "Please input a keyword.";
            if(document.getElementById('virtual_result') != null)
            document.getElementById('virtual_result').innerHTML = "";
            if(document.getElementById('resultTable') != null)
            document.getElementById('resultTable').style.display = "none";
            txtInput.value = "";
            txtInput.focus();
            return ;
        }    
    }
    else if(FindControl("input", "rdURL").checked)
    {
        radioValue = "true";  
        var reg = new RegExp(URL_PATTERN);
            
        if(query == "" || reg.exec(query) == null )
        {
          // alert("Invalid URL string.");
            if(document.getElementById('errorMessage') != null)
            document.getElementById('errorMessage').innerHTML = "Invalid URL string.";
            if(document.getElementById('virtual_result') != null)
            
            
            document.getElementById('virtual_result').innerHTML = "";
            if(document.getElementById('resultTable') != null)
            document.getElementById('resultTable').style.display = "none";
            txtInput.value = "";
            txtInput.focus();
            return ;
        }
    }
    
    var form = document.getElementById("formK");
    
    document.getElementById('query').value = query;
    document.getElementById('IsUrl').value = radioValue;
    document.getElementsByTagName('form')[0].submit(); 
    return false;
}


 function enterSubmit(src,e) 
 { 
    if(window.event) 
    keyPressed = window.event.keyCode; // IE 
    else 
    keyPressed = e.which; // Firefox 
    if(keyPressed==13) 
    { 
        doPredict();
        return false; 
    } 
} 
