﻿// JScript File
var request;
var response;

function populateValues(CTRL, CTRL_Hidden, URL, TagName, Need_Default_Option)
{
    //alert('0');
    removeAllOptions(CTRL);
    if (Need_Default_Option) CTRL.options[0] = new Option("-- Select Job SubCategory --","0",false,false);

    InitializeRequest1();
	request.onreadystatechange = function() { ProcessRequest1(CTRL, CTRL_Hidden, TagName); };
	request.open("GET", URL, true);
	request.send(null);
}
function populateList(response, CTRL, CTRL_Hidden, TagName)
{
    //alert('populatelist');
	if(response.length>0)
	{
		if(window.ActiveXObject)
		{
		    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		    xmlDoc.async = false;
		    xmlDoc.loadXML(response);
		    var xmlObj=xmlDoc.documentElement;
		    var opttext;
		    var optvalue;
		    var Hidden_Values = ',' + CTRL_Hidden.value + ',';
		    if(xmlObj.childNodes.length > 0)
		    {
			    for (var i = 0; i < xmlObj.childNodes.length; i++)
			    {
				    for (var j = 0; j < xmlObj.childNodes[i].childNodes.length; j++)
				    {
					    if(j==0)
					    {
						    optvalue = xmlObj.childNodes(i).childNodes(j).text
					    }
					    else
					    {
						    opttext = xmlObj.childNodes(i).childNodes(j).text
					    }
				    }
				    //alert(optvalue+"    "+opttext);
				    if (CTRL_Hidden.value == optvalue)
				        CTRL.options[i+1] = new Option(opttext,optvalue,false,true);
				    else if (Hidden_Values.indexOf(','+optvalue+',') != -1)
				        CTRL.options[i+1] = new Option(opttext,optvalue,false,true);
				    else
				        CTRL.options[i+1] = new Option(opttext,optvalue,false,false);
			    }
			}
	    }
		else
		{
		    var parser=new DOMParser();
		    xmlDoc=parser.parseFromString(response,"text/xml");
		    var xmlObj = xmlDoc.documentElement;
		    var opttext;
		    var optvalue;
		    var Hidden_Values = ',' + CTRL_Hidden.value + ',';
		    if(xmlObj.childNodes.length > 0)
		    {
			    for (var i = 0; i < xmlObj.childNodes.length; i++)
			    {
				    optvalue = xmlDoc.getElementsByTagName(CTRL)[i].childNodes[0].nodeValue;
				    opttext = xmlDoc.getElementsByTagName(TagName)[i].childNodes[0].nodeValue;
				    //alert(optvalue + "  " +opttext);
				    if (CTRL_Hidden.value == optvalue)
				        CTRL.options[i+1] = new Option(opttext,optvalue,false,true);
				    else if (Hidden_Values.indexOf(','+optvalue+',') != -1)
				        CTRL.options[i+1] = new Option(opttext,optvalue,false,true);
				    else
				        CTRL.options[i+1] = new Option(opttext,optvalue,false,false);
			    }
		    }
		}
		if (CTRL.options[0].value == '') CTRL.remove(0);
	}
}

function ProcessRequest1(CTRL, CTRL_Hidden, TagName)
{
    //alert('processRequest');
    if(request.readyState != 4)
        return false;
    else if (request.responseText.length > 0)
    {
        populateList(request.responseText, CTRL, CTRL_Hidden, TagName);
        return true;
    }
}
function InitializeRequest1()
{
    //alert('InitializeRequest');
    request = null;
    try
    {
        request = new ActiveXObject("Microsoft.XMLHTTP");
    }

    catch(Ex)
    {
        try
        {
            request = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(Ex)
        {
            request = null;
        }
    }

    if(!request && typeof XMLHttpRequest != 'undefined')
        request = new XMLHttpRequest();
}

function removeAllOptions(selectbox)
{          
	for(var i=selectbox.options.length-1;i>=0;i--) selectbox.remove(i);
}

