var dvdOpenLinkText = "DVD INFO";
var dvdCloseLinkText = "CLOSE DVD INFO";
var moreOpenLinkText = "MORE INFO";
var moreCloseLinkText = "LESS INFO";

/** 
 * Display the chosen divs info
 */
function displayInfo(type, id, url, page, videoName) {
	if (type == 'dvd') {
		// get the content and link divs for "dvd info"
		contentDiv = "dvdInfoContent-" + id;
		linkDiv = "dvdInfoLink-" + id;			
		
		// set the close text
		openLinkText = dvdOpenLinkText;
		closeLinkText = dvdCloseLinkText;		
	
		// close the "other" div
		closeDiv("moreInfoContent-" + id, "moreInfoLink-" + id, moreOpenLinkText);
		
	} else if (type == 'more') {
		// get the content and link divs for "more info"
		contentDiv = "moreInfoContent-" + id;
		linkDiv = "moreInfoLink-" + id;
		
		// set the close text
		openLinkText = moreOpenLinkText;
		closeLinkText = moreCloseLinkText;
		
		// close the "other" div
		closeDiv("dvdInfoContent-" + id, "dvdInfoLink-" + id, dvdOpenLinkText);
	}
	
	// open or close the chosen div
	if (document.getElementById(contentDiv)) {
		if (document.getElementById(contentDiv).style.display == "block") {
			closeDiv(contentDiv, linkDiv, openLinkText);
		} else {
			openDiv(contentDiv, linkDiv, closeLinkText, url + "&page=" + page + "&video=" + escape(videoName));	
			sendMediaroomEvent(this, page + '/' + type + 'info/' + id + '/' + videoName);
		}
	}
}	

/** 
 * Populate the div
 */
function openDiv(contentDiv, linkDiv, linkText, url) {
	if (document.getElementById(linkDiv)) {
		document.getElementById(linkDiv).innerHTML = linkText;
	}
	if (document.getElementById(contentDiv)) {
		document.getElementById(contentDiv).innerHTML = "<span class='descr'>loading...</span>"; 
		document.getElementById(contentDiv).style.display = "block";
		
		loadInfoDoc(url, contentDiv);
	}
}

/** 
 * Close the div
 */
function closeDiv(contentDiv, linkDiv, linkText) {
	if (document.getElementById(linkDiv)) {
		document.getElementById(linkDiv).innerHTML = linkText;
	}
	if (document.getElementById(contentDiv)) {
		document.getElementById(contentDiv).innerHTML = '';
		document.getElementById(contentDiv).style.display = "none";
	}	
}

/** 
 * HTTP Request call to load page behind the scenes
 */
function loadInfoDoc(url, divName) {
    if (window.XMLHttpRequest) {
        // for native XMLHttpRequest object
        req = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        // for IE/Windows ActiveX version
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
    if (req != null) {
        req.onreadystatechange = function() {
        	processInfoReqChange(req, divName);
        }
        req.open("POST", url, true);
        req.send(null);
    }
}

/** 
 * Handle the HTTP Request response
 */
function processInfoReqChange(req, divName) {
    // if req shows "loaded"
    if (req.readyState == 4) {
        // if req "OK"
        if (req.status == 200) {
            if(document.getElementById){	    
			   document.getElementById(divName).innerHTML = req.responseText; 
			} else if(document.all) {       
			   document.all[divName].innerHTML = req.responseText; 
			}
         } else {
            if(document.getElementById){	    
			   document.getElementById(divName).innerHTML = "<span class='descr'>There was a technical error retrieving the data.  Please try again later.</span>"; 
			} else if(document.all) {       
			   document.all[divName].innerHTML = "<span class='descr'>There was a technical error retrieving the data.  Please try again later.</span>"; 
			}
         }
    }
}