﻿//Creating the instance of the XmlHttpRequest
// branch for native XMLHttpRequest object
var client=null;
if (window.XMLHttpRequest)
{
	client = new XMLHttpRequest();
} // branch for IE/Windows ActiveX version
else if (window.ActiveXObject)
{
	client = new ActiveXObject("Microsoft.XMLHTTP");
}

//Sending information to server
function doCall(statementType, grid, statement)
{
	try
	{
	  var tblDropDown = document.getElementById('tbldropDowns').getElementsByTagName('select');
          myArray = new Array();

          for(var x = 0; x < tblDropDown.length; ++x)
            {
              if(tblDropDown[x].id.toLowerCase().match('ddlend') != null)
                {
                  myArray[x] = tblDropDown[x].options[tblDropDown[x].selectedIndex].text;
                }
              else
                {
                  if(tblDropDown[x].id.toLowerCase().match('ddlday') != null || tblDropDown[x].id.toLowerCase().match('ddlmonth') != null || tblDropDown[x].id.toLowerCase().match('ddlyear') != null)
                    {
                      myArray[x] = tblDropDown[x].options[tblDropDown[x].selectedIndex].text;
                    }
                }  
            }

          //callBack;				
	  var url=grid;//"DataGrid.aspx"
	  
	  if(statement)
	  {
	    url=url+'?d='+ statementType + "@"+myArray[0]+ "/" +myArray[1]+ "/" +myArray[2]+ "_" +myArray[3]+ "/" +myArray[4]+ "/" +myArray[5];
	  }
	  else
	  {
	    url=url+'?d='+ statementType;//actually ref for statement detail
	  }

	  client.open("GET", url,true);
	  client.onreadystatechange = callBack;
	  client.send();
	}
	catch(ex)
	{
	  alert(ex.message);
	}
				
	//setTimeout('doCall("'+ statementType +'")', 5000);  //5 sec
}

function disableGridBtn()
       {
          try
            {
              var grid = document.getElementById('gvGrid').getElementsByTagName('tr');
              for(var x = 1; x < grid.length; x++)
               {
                 var statementCellArray = grid[x].getElementsByTagName('td');
                 if(statementCellArray[0].innerHTML.toLowerCase().match('19') == null)
                 {
                   statementCellArray[statementCellArray.length - 1].getElementsByTagName('input')[0].disabled = true;//id,date,ref,tournname, eventname, descrip,type,nett,bal,status ,button
                   statementCellArray[9].innerHTML = 'N/A';
                 }
                 grid[0].getElementsByTagName('td')[0].className = 'hideElement';
                 statementCellArray[0].className = 'hideElement';
               }
            }
          catch(err)
            {}
       }

function getTranDet(sender)
{
  try
    {
      var statementCellArray = sender.parentNode.parentNode.getElementsByTagName('td');//id,date,ref,tournname, eventname, descrip,type,nett,bal,status 
      doCall(statementCellArray[0].innerHTML+"_" +statementCellArray[2].innerHTML,'Girddetail.aspx',false);
    }
  catch(err)
    {
      alert(err.message);
    }
} 

//var xmlDocumentFireFox;
//waiting and processing server response
function callBack()
{
  try
   {
     if(client.readyState == 4 && client.status == 200)
       {	  
         /*if(window.ActiveXObject)Temporary fix
         {
           xmlDocument = new ActiveXObject('Microsoft.XMLDOM');
           xmlDocument.async = false;
           //The responseText is loaded into XML document
           xmlDocument.loadXML(client.responseText);

           var gridNode = xmlDocument.selectSingleNode("/html/body/form/div[@id='Grid']");
           document.getElementById("GridSection").innerHTML = gridNode.xml;

         }  
        else*/
         {
            var gridNode = (client.responseText.substring(client.responseText.indexOf('<div id="Grid">'), client.responseText.lastIndexOf('</form>')));
            document.getElementById("GridSection").innerHTML = gridNode;
         }
         
         disableGridBtn();//disable btn where detail not possible
       }
           
     }
   catch(ex)
     {
       alert(ex.message);
     }
 }
