var xmlDoc;

//Method to call when category changes
function CrimeCategoryChanged( objCategorySelect )
{

    try
    {
        if ( xmlDoc != null )
        {

            var objSelect = document.getElementById( 'MasterPage_MainPageContent_lstCrimes' );

            // Remove old options
            removeOptions( objSelect );

            addOption( objSelect, '0', '-All-' );                

            var nodeListCategories = xmlDoc.getElementsByTagName('Category');

            var intSelectedCategoryId = objCategorySelect.options[ objCategorySelect.selectedIndex ].value;
            
            if ( intSelectedCategoryId > 0 )
            {
                objSelect.disabled = false;
            }
            else
            {
                objSelect.disabled = true;
            }
            

            for ( icat = 0; icat < nodeListCategories.length; icat++ )
            {        

                //alert( nodeListCategories[ icat ].attributes.length );
                intCategoryId = -1;
                if ( nodeListCategories[ icat ] != null )
                {
                    intCategoryId = nodeListCategories[ icat ].attributes[ 0 ].value;
                }            
                

                if ( intCategoryId == intSelectedCategoryId )
                {      
                    
                    var nodeListCrimes = nodeListCategories[ icat ].getElementsByTagName( 'Crime' );
                                        
                    
                    for ( iCrime = 0; iCrime < nodeListCrimes.length; iCrime++ )
                    {
                        //alert( nodeListCrimes[ iCrime ] );   
                        nodeCrime = nodeListCrimes[ iCrime ];
                        
                        //get node to var node
                        try { if(!nodeCrime.text) nodeCrime.text = nodeCrime.textContent; } catch(e) {}
                        //use node.innerText
                        
                        addOption( objSelect, nodeCrime.attributes[ 0 ].value, nodeCrime.text );                 
                    }
                    /*
                    var nodeListCrimes = nodeListCategories[ icat ].childNodes;

                    for ( iCrime = 0; iCrime < nodeListCrimes.length; iCrime++ )
                    {                    
                    var nodeCrime = nodeListCrimes[ iCrime ];

                    // Check to see if is element
                    if ( nodeCrime.nodeType == 3 )
                    {
                    //alert ( nodeCrime.nodeValue );
                    //addOption( objSelect, nodeCrime.attributes[ 0 ].value, nodeCrime.nodeValue );
                    }                    
                    }      
                    */          
                }
            }
        } 

        objSelect.style.visibility = 'visible';        

    }
    catch ( ex )
    {
        alert( ex );
    }
}

// Adds an option to a select
function addOption( objSelect, value, text )
{

    // create new all option
    var elOptNew = document.createElement('option');

    elOptNew.text = text;
    elOptNew.value = value;

    try
    {
        objSelect.add(elOptNew, null );           
    }
    catch( ex )
    {
        objSelect.add(elOptNew); // IE only
    }
    
}

// Removes all options from a select
function removeOptions( objSelect )
{
  
  var i;
  for (i = objSelect.length - 1; i>=0; i--) {    
      objSelect.remove(i);    
  }
}


// Loads crimes from document into global xmlDoc
function LoadCrimes()
{

    if (document.implementation && document.implementation.createDocument)
	{
		xmlDoc = document.implementation.createDocument("", "", null);		
	}
	else if (window.ActiveXObject)
	{
		xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
		xmlDoc.async=false;		
 	}
	else
	{		
		return;
	}
	
	strHost = window.location.hostname;
	intPort = window.location.port;
	
	strUrl = 'http://' + strHost + ':' + intPort + '/Common/CrimesByCategoryXml.ashx';	
	
	xmlDoc.load( strUrl );	

}

function GetSearch()
{
}



