
/*  scripts */
// Begin scripts


/**
 * Copyright 2006, Internet Broadcasting Systems. All Rights Reserved.
 * Author:    $Author: leon $
 * Date:      $Date: 2006/02/06 02:42:23 $
 * Version:   $Name:  $
 * ID:        $Id: livenow.js,v 1.12 2006/02/06 02:42:23 leon Exp $
*/


/**
 * Live Now
 * fetch livenow XML
 * test current element if its RSC is in list
 * Add "LIVE" text to sports nav
 * set style of subnav
 * Overwrite date with "LIVE NOW" text in event spotlight
**/
var LiveNow = {
	init: function() {
		if (XMLObj=="undefined" || !document.getElementById("sportsnav")) return;
		LiveNow.nav=document.getElementById("sportsnav").getElementsByTagName("a");
		LiveNow.nonliveRSCs=[];
		// get livenow XML
		var lnXML = new XMLObj.get("/_objectxml/1500001/detail.html", LiveNow.whatsLiveNow);
	},
	
	whatsLiveNow: function(x,t) {
		// Need to test LN object for text nodes before preceding
		if (!x.getElementsByTagName("LN").length) return;
		LiveNow.LN=x.getElementsByTagName("LN")[0].firstChild.nodeValue;
		LiveNow.updateNav();
		LiveNow.updateSpotlight();
	},
	// update Sports Nav/Subnav
	updateNav: function() {
		// loop through LiveNow nav, save live=true|false
		for (var j=0;j<LiveNow.nav.length;j++) {
			if(LiveNow.nav[j].getAttribute("live")) {
				if (LiveNow.nav[j].getAttribute("live")=="false") LiveNow.nonliveRSCs.push(LiveNow.nav[j].getAttribute("rsc"));
			}
		}
		for (var i=0; i<LiveNow.nav.length;i++) {
			if (LiveNow.nav[i].getAttribute("rsc") && (LiveNow.nav[i].getAttribute("live")!="false")) {
				if ( LiveNow.LN.indexOf(LiveNow.nav[i].getAttribute("rsc")+"*") > -1 || LiveNow.nav[i].getAttribute("live")=="true" ) {
					if (LiveNow.nav[i].className=="evt" || LiveNow.nav[i].className=="sevt") {
						LiveNow.nav[i].style.color="#c00";
					} else {
						// TODO: if item is CROSS-COUNTRY SKIING, strip SKIING
						var s=document.createElement("span");
						s.className="livenow";
						s.appendChild(document.createTextNode("LIVE"));
						LiveNow.nav[i].appendChild(s);
						s.parentNode.className="livenowParent";
						// hack for long item
						if(s.parentNode.firstChild.nodeValue == "CROSS-COUNTRY SKIING") {
							s.parentNode.firstChild.nodeValue = "CROSS-COUNTRY";
						}
					}
				}
			}
		}
	},
	// Update spotlight thumbnails
	updateSpotlight: function() {
		var allULs = document.getElementsByTagName("ul");
		for(var i = 0; i<allULs.length;i++) {
			if(allULs[i].className.indexOf("eventspotlight") > -1) {
				var evtLIs=allULs[i].getElementsByTagName("li");
				for(var j=0;j<evtLIs.length;j++) {
					var evtSpans=evtLIs[j].getElementsByTagName("span");
					for(var k=0;k<evtSpans.length;k++) {
						if (evtSpans[k].className.indexOf("evspdate") > -1) {
							if (LiveNow.LN.indexOf(evtSpans[k].getAttribute("rsc")+"*") > -1 && !(LiveNow.nonliveRSCs.toString().indexOf(evtSpans[k].getAttribute("rsc")) > -1) ) {
								var s=document.createElement("span");
								s.className="livenowSpotlight";
								s.appendChild(document.createTextNode("LIVE NOW"));
								evtSpans[k].replaceChild(s, evtSpans[k].firstChild);
								
							}
						}
					}
				}
			}
		}
	}
};
// Run LiveNow, remove comments
// LiveNow.init();



// End scripts


