// global flag
var isIE = false;

function getHTMLContent(currDiv, req){
    		// only if req shows "loaded"
  			currDiv.innerHTML = "Loading...";
    			if (req.readyState == 4) {
        			// only if "OK"
        			if (req.status == 200) {
						currDiv.innerHTML = req.responseText;
         			}
         		} 
}

// retrieve XML document (reusable generic function);
// parameter is URL string (relative or complete) to
// an .xml file whose Content-Type is a valid XML
// type, such as text/xml; XML source must be from
// same domain as HTML file
function replaceHTML(ID, url) {
	var req;
	var currDiv;
    currDiv = document.getElementById(ID);
    currDiv.innerHTML = "Loading...";

    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.open("GET", url, true);
        req.onreadystatechange = function() {
			getHTMLContent(currDiv, req);
		}
	
    	req.send(null);

    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        isIE = true;
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.open("GET", url, true);
            req.onreadystatechange = function() {
				getHTMLContent(currDiv, req);
			}
            req.send();
        }
    }
}

// retrieve XML document (reusable generic function);
// parameter is URL string (relative or complete) to
// an .xml file whose Content-Type is a valid XML
// type, such as text/xml; XML source must be from
// same domain as HTML file
function executeImageAction(imageID, url, invalidImageURL, unselectedImageURL, selectedImageURL, workingImageURL) {

	if(document.getElementById(imageID).src.indexOf(invalidImageURL) < 0){	
		var req;
		var isIE = false;
		document.getElementById(imageID).src = workingImageURL;
	    // branch for native XMLHttpRequest object
	    if (window.XMLHttpRequest) {
	    		isIE = false;
	        req = new XMLHttpRequest();
	    // branch for IE/Windows ActiveX version
	    } else if (window.ActiveXObject) {
	        isIE = true;
	        req = new ActiveXObject("Microsoft.XMLHTTP");
	    }
	    if (req != null){
	        req.onreadystatechange = function(){
			    // only if req shows "loaded"
			    if (req.readyState == 4) {
			        // only if "OK"
			        if (req.status == 200) {
						switchImage(imageID, invalidImageURL, unselectedImageURL, selectedImageURL, workingImageURL, req.responseText);
			         } else {
			            alert("There was a problem retrieving the XML data:\n" +
			                req.statusText);
			         }
			    }
			}
	        req.open("GET", url, true);
	        if (isIE){
		        req.send();
	        } else {
				req.send(null);        
	        }
	    }
	}
}

function switchImage(imageID, invalidImageURL, unselectedImageURL, selectedImageURL, workingImageURL, isSelected){
	var image = document.getElementById(imageID);
	if (isSelected.indexOf("unselected", 0) > -1){
	    image.src = unselectedImageURL;
	  }  else if (isSelected.indexOf("selected", 0) > -1){
	     image.src = selectedImageURL;
	  }  else {
	    image.src = invalidImageURL;
	}
		  
}



