﻿// JScript File

function callAjax(strURL, strMethod)
{  var strReturn = "";
                                

    try
    {
        var XMLHttpRequestObject;
        if (window.XMLHttpRequest) 
        {
            XMLHttpRequestObject = new XMLHttpRequest();
        }
        else if (window.ActiveXObject)
        {
            XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
        }
        
        if(XMLHttpRequestObject) 
        {
            XMLHttpRequestObject.open("GET", strURL, true);

            XMLHttpRequestObject.onreadystatechange = function() {
                if (XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200) {
                    try {
                        //                       alert('Came in AJAX');
                        strReturn = XMLHttpRequestObject.responseText;
                        //                        alert('strReturn :' + strReturn);
                        //strReturn = "arrOpt = new Array();arrOpt.push(new Array('ADHU', 'MCENT'));arrOpt.push(new Array('Wesr', 'MWENT'));";

                        switch (strMethod) {
                            case 'GetTime':
                                eval(strReturn);
                                var objcmbTime = document.getElementById('cmbTime');
                                //                            alert('objcmbTime.innerHTML : ' + objcmbTime.innerHTML);
                                //objcmbTime.innerHTML = strReturn;

                                clearOptions(objcmbTime, "Select Time");
                                for (var i = 0; i < arrOpt.length; i++) {
                                    objcmbTime.appendChild(addOption(arrOpt[i][1], arrOpt[i][0], ""));
                                }
                                //alert('objcmbTime.innerHTML : ' + objcmbTime.innerHTML);
                                if (objcmbTime.options.length < 2) {
                                    alert('Please choose another Date, as Shows are not available for the selected date');
                                }
                                break;
                            case 'GetClass':
                                eval(strReturn);
                                var objcmbClass = document.getElementById('cmbClass');
                                //objcmbClass.innerHTML = strReturn;

                                clearOptions(objcmbClass, "Select Class");
                                for (var i = 0; i < arrOpt.length; i++) {
                                    objcmbClass.appendChild(addOption(arrOpt[i][1], arrOpt[i][0], ""));
                                }
                                if (objcmbClass.options.length < 2) {
                                    alert('Please choose another Date, as Shows are not available for the selected date');
                                }
                                break;
                            case 'SetSeats':
                                eval(strReturn);
                                //                                alert
                                var objLabelSeats = document.getElementById('ctl00_ContentPlaceHolder1_lblSeats');
                                if (bln == true) {
                                    objLabelSeats.innerHTML = strSeatRet;
//                                    var objLayout = document.getElementById('dvSeatLayout');
//                                    objLayout.display = 'none';
                                }
                                //alert('SetSeats : ' + strReturn);

                                break;
                            default:
                                break;
                        }

                    }
                    catch (e) {
                        alert(e);
                        return "";
                    }
                }
            }
            
         }
         XMLHttpRequestObject.send(null);
    }
    catch(e)
    {
        alert(e);
    }
    return strReturn;
}


function getUsers()
{
    callAjax("/GetServerData.aspx?m=getUsers", "getUsers");
    setTimeout(getUsers, 15000);
}

function getUsersValues(XMLHttpRequestObject)
{
    try
    {
            var xmlDoc;
            var objUsers = document.getElementById("lstUsers");
            if (window.ActiveXObject) // For Firefox
            {
                 xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
                 xmlDoc.async = false;
                 xmlDoc.loadXML(XMLHttpRequestObject.responseText);
            } 
            else // For IE 7
            { 
              var xmlParser = new DOMParser();
              xmlDoc = xmlParser.parseFromString(XMLHttpRequestObject.responseText, "text/xml");
            }
        
            while(objUsers.options.length > 0)
            {
                objUsers.remove(0);
            }
        
        
            for(var intCount = 0; intCount < xmlDoc.firstChild.childNodes.length; intCount++)
            {
                var objOption = document.createElement("option");
                objOption.innerHTML = xmlDoc.firstChild.childNodes[intCount].attributes["Displayname"].nodeValue;
    //                objOption.value =  xmlDoc.firstChild.childNodes[intCount].attributes["EmailId"].nodeValue; 
                if(xmlDoc.firstChild.childNodes[intCount].attributes["LoggedIn"].nodeValue == "Y")
                objOption.style.fontWeight = "bold";            
                objUsers.appendChild(objOption);
            }
        
     }
     catch(e)
     {
        alert(e);     
     }
        
}

//To add an option to the Combo Box
function addOption(h, v, c) {
    var opt = document.createElement("option");
	opt.innerHTML = h;
	opt.className = c;
	opt.value = v;
	return opt;
}

//To clear the option from the Combo Box
function clearOptions(c, t) {
	for(var ic = c.childNodes.length - 1;ic >= 0;ic--)
    {
        ch = c.childNodes[ic];
        c.removeChild(ch);
    }
	c.appendChild(addOption(t, "", "oIBS"));
}

//Example to load data into the como 'cmbData'
function loadData() {
	var ds = "";
	var o = getById("cmbDate");
	clearOptions(o, "Select Date");
	for(var i = 0; i < aiSD.length; i++) {
		if(ds.search(aiSD[i][3]) < 0) {
			o.appendChild(addOption(aiSD[i][4], aiSD[i][3], "cssScheduleHref"));
			ds += aiSD[i][3] + "|";
		}
	}
}

/*
o.appendChild(addOption(aiSD[i][4], aiSD[i][3], "cssScheduleHref"));


arrOpt = new Array();aiSD.push(new Array('ADHU', 'MCENT'));
*/
