String.prototype.endsWith = function(str) 
{return (this.match(str+"$")==str)}


/*** MSN TODAY V2 ***/

function tabbing_skin_93680(super_cat_ids,super_titles,onclickcode)
{
	try
	{
		var items = document.getElementById("news_tabs").getElementsByTagName("LI");
		for(var i = 0; i < items.length; i++ )
		{
			var a = items[i].childNodes[0];
			a.href="#";
			eval("a.onclick = function() { $(\"#cat_hl_\" + this.parentNode.id.substring(7,13)).hide(); this.id = \"link_" + i + "_" + super_cat_ids[i] + "\"; " + onclickcode + "; supergroupingTabsClearCurrent(\"news_tabs\"); this.parentNode.className = \"current\"; return false; };");
			eval("a.parentNode.onclick = function() { this.id = \"link_" + i + "_" + super_cat_ids[i] + "\"; " + onclickcode + "; supergroupingTabsClearCurrent(\"news_tabs\"); this.className = \"current\"; return false; };");
		}
		return ""
	}
	catch(ex) 
	{
		alert(ex.description);
	}
}

function tabbing_skin_loaded_93680(id)
{
	msntodayv2_tabbing_skin_loaded(93680);
}

function tabbing_skin_loaded_93681(id)
{
	msntodayv2_tabbing_skin_loaded(93681);
}

function msntodayv2_tabbing_skin_loaded(hl_id)
{
	$("div#cat_hl_" + hl_id).show("blind", { direction: "vertical" }, 1000);
	
	document.getElementById("tbSearch").focus();
}



/*** MSN TODAY ***/

var firstTime84353 = true;
var firstTime84354 = true;

function tabbing_skin_84353(super_cat_ids,super_titles,onclickcode)
{
	var mods=["NH_NEWS_TOPST_TABS","NH_NEWS_BUS_TAB","NH_NEWS_ENT_TAB","NH_NEWS_SPORT_TAB"];
	var c='<span id=slider_items_'+super_cat_ids[0]+' class=slider_items_'+super_cat_ids[0]+'>';
	
	if (super_cat_ids)
	{
		for (var i=0;i<super_cat_ids.length;i++)
		{
			c=c+"<a "+(i==0?"class='first tab-selected' ":"")+"href=javascript:void(0); id=link_"+i+"_"+super_cat_ids[i]+" onclick=\"AdTrack.t('"+ window.location.href+"', '"+mods[i]+"_INT', 1);"+onclickcode+";\">"+super_titles[i].substring(0,1).toUpperCase()+super_titles[i].substring(1,super_titles[i].length)+"</a>";
		}
		//c=c+"<IMG NAME=NZ_MAP SRC=/img/NZ_MAP.gif BORDER=0 USEMAP=#image-map><MAP NAME=image-map><AREA SHAPE=CIRCLE class='first tab-selected   :' id=link_0_"+super_cat_ids[0]+" COORDS='375,165,5' onclick="+onclickcode+";><AREA id=222 SHAPE=CIRCLE COORDS='375,440,5' onclick="+onclickcode+";><AREA SHAPE=CIRCLE COORDS='270,600,5' onclick="+onclickcode+";><AREA SHAPE=CIRCLE COORDS='170,700,5' onclick="+onclickcode+";></MAP>";	
	
	} 
	c=c+'</span>';
	return c;
}

function tabbing_skin_loaded_84353(id)
{
	trimLinks("cat_hl_84353", firstTime84353);
	firstTime84353 = false;
}

function tabbing_skin_loaded_84354(id)
{
	trimLinks("cat_hl_84354", firstTime84354);
	firstTime84354 = false;
}

function trimLinks(parentId, firstTime) {
	var innerHTML;
	var link;
	
	// main image
	link = document.getElementById(parentId).childNodes[0].childNodes[0].childNodes[0];
	link.target = "_blank";
	
	// main title
	link = document.getElementById(parentId).childNodes[0].childNodes[1].childNodes[0];
	if(firstTime)
	{
		innerHTML = link.innerHTML;
	}
	link.target = "_blank";
	trimItem(link,(findBaseHeight(link) * 2));
	if(firstTime && link.innerHTML.indexOf("...") != -1)
	{
		link.title = innerHTML;
	}
	
	// other titles
	var container = document.getElementById(parentId).childNodes[1];
	for(var i=0; i<container.childNodes.length; i++)
	{
		if(container.childNodes[i].tagName == "SPAN" && container.childNodes[i].className == "title")
		{
			link = container.childNodes[i].childNodes[0].childNodes[0].childNodes[0];
			link.target = "_blank";
			if(firstTime)
			{
				innerHTML = link.innerHTML;
				link.style.width = "225";
			}
			trimItem(link,findBaseHeight(link));
			if(firstTime && link.innerHTML.indexOf("...") != -1)
			{
				link.title = innerHTML;
			}
		}
	}
}

// Finds the base height of a link, this is done by setting the innert HTML to "."
function findBaseHeight(item)
{
	var innerHTML = item.innerHTML;
	item.innerHTML = ".";
	// Get baseline height
	var baseHeight = item.offsetHeight;
	item.innerHTML = innerHTML;
	return baseHeight;
}

// Trims a link until the specified height
function trimItem(item, baseHeight)
{
	if (item.offsetHeight > baseHeight)
		item.innerHTML += "...";
	// reduce until baseline hit
	while (item.offsetHeight > baseHeight && item.innerHTML.length > 3)
		item.innerHTML = item.innerHTML.substring(0,item.innerHTML.length-4) + "...";
}


/*
function setWeatherIconsPath()
{

$(document).ready(function(){
	var oDiv = $('#cat_hl_85035_items');
	if(JS_SECTIONID == '10385')
	{
		$('#SuperGroup_85011 img').each(function(){
			var oImg = $(this);
			var sSrc = 	oImg.attr('src');
			if(sSrc.length > 0)
			{
				//if(sSrc.indexOf("/img/weather/refresh/")<0)
				//{
					sSrc = sSrc.replace("/weather/","/weather/refresh/");
					oImg.attr('src',sSrc);
				//}
			}
		})
	}	
})
}
*/

function tabbing_skin_85011(super_cat_ids,super_titles,onclickcode)
{
	try {

		var titleDiv = document.getElementById("cat_hl_85011_container").childNodes[1].childNodes[0];
		//alert(titleDiv.innerHTML);
		titleDiv.innerHTML = "<a href='http://news.msn.co.nz/weather'>" + titleDiv.innerHTML + "</a>";
		
		
		
		var defaultCity = "Auckland";		// ** the DEFAULT city ***
			
		var cities = new Array();			// set up a multi-dimensional array
		for(var i=0; i < super_cat_ids.length; i++)
		{
			cities[i] = {name: super_titles[i]}; //, id:super_cat_ids[i]};
		}
		cities.sort(function(a,b)
		{ 
				var x = a.name.toLowerCase();
				var y = b.name.toLowerCase();
				return ((x < y) ? -1 : ((x > y) ? 1 : 0));
		}
		);
		var dropdown;
		
		dropdown = "<select id=\"cat_hl_85011_ddl\" onchange=\"this.id=this.options[this.selectedIndex].value;"+ onclickcode + ";showCityWeather(this.options[this.selectedIndex].value);\">";
		//dropdown = "<select id=\"cat_hl_85011_ddl\" onchange=\"this.id=this.options[this.selectedIndex].value;" + onclickcode + ";\">";
		
		if (super_cat_ids) 
		{
			for (var i=0;i<cities.length;i++) 
			{
				var id;
				var index;
				for(var j=0;j<super_titles.length;j++) 
				{
					if(super_titles[j] == cities[i].name) 
					{
						id = super_cat_ids[j];
						index = j;
					}
				}

				dropdown += "<option value=\"" + "link_" + index + "_" + id + "\" " + 
							(cities[i].name == defaultCity ? "selected=\"selected\"" : "") + ">" + 
							cities[i].name + 
							"</option>";
			}
		}
		dropdown += "</select>";
		return dropdown; 
	}
	catch(ex) 
	{
		alert(ex.description);
	}
}


function initWeatherModuleCity()
{
	alert("initWeatherModuleCity")
	/*
		cookieData = $.cookie('wthcookie');

		if(cookieData==null) 
		{
			cookieData = "WeatherDiv";
		}		

		var cookieArr = cookieData.split("|");
		//alert(cookieData);
		
		DefaultModule = cookieArr[0];
		
		
		var tempArr,nCtr;
		for(nCtr = 1;nCtr<cookieArr.length;nCtr++)
		{
			
			tempArr = cookieArr[nCtr].split(":");
			
			switch(tempArr[0])
			{
				case "WeatherDiv" :
					WeatherModuleData = tempArr[nCtr];
					DefaultLocation = tempArr[1];
					//alert(DefaultLocation)
					showCityWeather(DefaultLocation);	
					break;
				case "TVGuideDiv" :
					TVGuideModuleData = cookieArr[nCtr];
					DefaultChannel = tempArr[1];
					showChannelPrograms(DefaultChannel);
					break;
			}
		}	
		*/
}





function supergroupingTabsClearCurrent(id) 
{
	try
	{
		var items = document.getElementById(id).getElementsByTagName("LI");
		for(var i = 0; i < items.length; i++ )
		{
			items[i].className = items[i].className.replace("current", "");
		}
	}
	catch(ex) 
	{
		alert(ex.description);
	}
}


//
// Adds event to window.onload without overwriting currently 
// assigned onload functions.
function addLoadEvent(func)
{    
    var oldonload = window.onload;
    if (typeof window.onload != 'function')
    {
        window.onload = func;
    } 
    else 
    {
        window.onload = function()
        {
            oldonload();
            func();
        }
    }
}





