﻿var xmlhttp

/*Used for menu widget*/
function showCustomer(str, objname) {
    xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Your browser does not support AJAX!");
        return;
    }
    var url = "/ajax/Default.aspx?get=menu";
    url = url + "&q=" + str;
    url = url + "&t=" + objname;
    url = url + "&sid=" + Math.random();
    xmlhttp.onreadystatechange = MNUstateChanged;
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null);
}

function MNUstateChanged() {
    if (xmlhttp.readyState == 4) {
        document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
    }
}

/*Used for lead source form dropdowns*/
function getPrograms(str, objname) {

    xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Your browser does not support AJAX!");
        return;
    }
    var url = "/getPrograms.aspx";
    url = url + "?q=" + str;
    url = url + "&t=" + objname;
    url = url + "&sid=" + Math.random();
    xmlhttp.onreadystatechange = stateChanged;
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null);
}

function getLocations(str, objname) {

    xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Your browser does not support AJAX!");
        return;
    }
    var url = "/getLocations.aspx";
    url = url + "?q=" + str;
    url = url + "&t=" + objname;
    url = url + "&sid=" + Math.random();
    xmlhttp.onreadystatechange = stateChanged;
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null);
}
function stateChanged() {
    if (xmlhttp.readyState == 4) {
        document.getElementById("div_campuslocation").innerHTML = xmlhttp.responseText;
    }
}
function GetXmlHttpObject() {
    if (window.XMLHttpRequest) {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        return new XMLHttpRequest();
    }
    else {
        if (window.ActiveXObject) {
            // code for IE6, IE5
            return new ActiveXObject("Msxml2.XMLHTTP");
        }
        else {
            return new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return null;
}

function getLocations2(str, objname) {

    xmlhttp = GetXmlHttpObject();
    //alert('locations: ' + str);
    if (xmlhttp == null) {
        alert("Your browser does not support AJAX!");
        return;
    }
    var url = "/getLocationsxml.aspx";
    url = url + "?q=" + str;
    //url = url + "&t=" + objname;
    url = url + "&sid=" + Math.random();
    //xmlhttp.onreadystatechange = stateChanged;
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
            buildProgramsDropdown(xmlhttp, objname);
    }
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null);
}

function getPrograms2(str, objname) {

    xmlhttp = GetXmlHttpObject();
    //alert('programs: ' + str);
    if (xmlhttp == null) {
        alert("Your browser does not support AJAX!");
        return;
    }
    var url = "/getProgramsxml.aspx";
    url = url + "?q=" + str;
    //url = url + "&t=" + objname;
    url = url + "&sid=" + Math.random();
    //xmlhttp.onreadystatechange = stateChanged;
    xmlhttp.onreadystatechange = function () {
        if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
            buildProgramsDropdown(xmlhttp, objname);
    }
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null);
}

function setDropdown(data,Selectbox2) {
    Selectbox = document.getElementById(Selectbox2);
    //Selectbox.options.length = 0;
    if (data > 0) {
        Selectbox.selectedIndex = data;
    }
    else {
        Selectbox.selectedIndex = 0;
    }
}

function buildProgramsDropdown(data, Selectbox2) {
    //alert('buildDd: ' + Selectbox);
    var xmlDoc = data.responseXML
    var xmlData = xmlDoc.getElementsByTagName("DropdownData");
    if (xmlData.length <= 0)
        return;
    // REMOVE EVERYTHING CURRENTLY IN THE DROPDOWN BOX
    var Selectbox = '';
    var currentOptionGroup = '';
    Selectbox = document.getElementById(Selectbox2);
    //Selectbox.options.length = 0;
    //Selectbox.style.width = auto
    Selectbox.selectedIndex = 0;
    while (Selectbox.hasChildNodes()) {
        Selectbox.removeChild(Selectbox.firstChild);
    }
    // SET INITIAL SELECT
    var newOption = window.document.createElement('OPTION');
    newOption.text = 'Select One...';
    newOption.value = 'none';
    Selectbox.options.add(newOption);

    // HERE WE WILL ADD THE VALUES FROM OUR XML DOCUMENT
    for (var i = 0; i < xmlData[0].childNodes.length; i++) {
        var textValue = '';
        var valueValue = '';
        var groupValue = '';
        var x;
        var y;
        
        // GET THE DISPLAY TEXT
        x = xmlDoc.getElementsByTagName("display")[i]
        y = x.childNodes[0];
        textValue = y.nodeValue;
        textValue = textValue.replace("ZZ - ", "");
        //alert(textValue);
        
        // GET THE VALUE
        x = xmlDoc.getElementsByTagName("value")[i]
        y = x.childNodes[0];
        valueValue = y.nodeValue;
        
        // CREATE THE OPTION TO ADD TO THE SELECT BOX
        var newOption = window.document.createElement('OPTION');
        newOption.text = textValue; 
        newOption.value = valueValue;

        // GET THE OPTION GROUP
        var l;
        l = xmlDoc.getElementsByTagName("group");
        x = xmlDoc.getElementsByTagName("group")[i]

        if (l.length > 0 && x.hasChildNodes()) {
            if (typeof (newOption.innerText) != 'undefined') {
                newOption.innerText = textValue;
            }

            y = x.childNodes[0];
            groupValue = y.nodeValue;

            //Check to see if we need to push the group record to the select box
            if (currentOptionGroup != groupValue && currentOptionGroup > '')
                Selectbox.appendChild(newOptionGroup);

            //New group or change in group, start building new group
            if (currentOptionGroup != groupValue) {
                var newOptionGroup = window.document.createElement('OPTGROUP');
                newOptionGroup.label = groupValue;
                currentOptionGroup = groupValue;
            }

            //Selectbox.optiongroup.add(newOptionGroup);
            newOptionGroup.appendChild(newOption);
        }
        else {
            //NO GROUP So just add the record
            Selectbox.options.add(newOption);

        }
        //newOptionGroup.appendChild(newOption);
        
        //Selectbox.options.add(newOption);
    }
    if (currentOptionGroup != '')
        Selectbox.appendChild(newOptionGroup);
} 
