//This page needs to be configured for each site

//**Content Match ids
//Base url for content match. Each site has a different hostname (hostname + feedpath)
var g_baseOvertureCMUrl = "http://cm.vh1.overture.com/js_flat_1_0/"
//source paramater for content match. Each site has its own source code (source)
var g_overtureCMSource = "viacom_vh1_ctxt"
//Config code for each site (config)
var g_overtureCMConfig = "2401073994"

//** Search IDs
//Base url for partner search. 
//var g_baseOvertureSearchUrl = "http://html.overture.com/d/search/p/vh1/js/flat/";
var g_baseOvertureSearchUrl = "http://html.viacom.overture.com/d/search/p/viacom/js/v2/";
//partner paramater for search. 
var g_overtureSearchPartner = "viacom_vh1_search";

//This is a mapping of urls to ctxtIds. IDs are to be provided by Yahoo
//pass this into the function getMappingValue to get the value based on the current url.
//order these with the most specific urls first
var g_contextIdMap = new Object();
g_contextIdMap["/shared/white_pages"] = "music";
g_contextIdMap["/shared/"] = "notmusic";
g_contextIdMap["/music"] = "music";
g_contextIdMap["/news"] = "news";
g_contextIdMap["/movies"] = "movies";
g_contextIdMap["/artists"] = "music_artists";
g_contextIdMap["/shows"] = "shows";

//Another map for type used the same way as g_contextIdMap
var g_typeIdMap = new Object();
g_typeIdMap["/shared/white_pages"] = "music";
g_typeIdMap["/music"] = "music";
g_typeIdMap["/news"] = "news";
g_typeIdMap["/movies"] = "movies";
g_typeIdMap["/artists"] = "music_artists";
g_typeIdMap["/shows"] = "shows";

//Default links to use in case we don't get results back.
zSr_dummy = new Array("Reach 80% of active Internet users with Overture.","","","List your site with Overture","http://www.overture.com/","",
"See the latest Accord offers at the Honda Official Site.",
"",
"http://ypn-100.overture.com/d/sr/?xargs=SjGTYHM2WSfAwg8ep-u2ASFl94ZiTOXSU7PrBi34b0dkMRpxIz_DgoDqDHPG_NIidq9XtjihuvhsnU-qzNGWIEpI0WYkcoPdGWF6vHcW_pmyJkWX7VREKmh2o6lFQdzPF1NYiCCDFPBMzTW1E9ywARKkbBHDxtdkScwJOM-imi-fb8Z061AriZIDa1EDdkfqf3QyaFsV2ZtTR7fzb3-6K7zuu9vXH0AppemWRteQ9SJW7Z1IuIHVxAIrOsp7BDr91kty-i4Ghjhbnh_NMBWcNKIHMwuOzg_br8ZdyL97n9w8jcEZNvfaURyWMRn97xi0YtD5kOy-QPA",
"Honda Vehicles",
"www.honda.com",
"",
"Save up to 40% JVC, Pioneer, Clarion, Alpine, Kenwood.",
"",
"http://ypn-100.overture.com/d/sr/?xargs=k-vWdwvJp78awRZ3Qhx-bNIsqKMyFJwxG5e0pmbgOXJ8w7TZD_t_g3yvErHu8Xl4I3_x8ptDV3A0LIMF7OlPTj5IkMVeVfJ7YImiuZU1-p7rVyQOV4pyMgRkXrvbW_C6knIw1bUvr88gdVHsT-HA77YeNJVDGHkfjWgmNwyqxub9CYdDO8qHDr1b2pamYZbeIy8ZdhbSa1DvmkyROP-YJHS26-bDnYiyF5Aqyi-iI6d3UaXPeWNhzBfWVqBbIRd7wn767p7eqywIgT6oNriUfKJKA9YnOYxl9msgYv75FJF4Yrr5i8pEpPbf8orxrGg5OiPTaHCp4Qw",
"Car Audio/Multimedia SALE",
"carsaudio.co.uk",
"",
"Electronics, Games, Toys, Digital Cameras, and more.",
"",
"http://ypn-100.overture.com/d/sr/?xargs=cc9OZjd2BnLDSEYSO0xFQYOLbyfpbe27TqGUg90i-jKS-gcU8lXMkhuNGMm3DJcx2oriBHlOMItEsUbii_mZooTh1ploLYXV4BBkox4A4Qm4e-UnspwI6DfPw1Y_7s2sDBsD0wcAgFkwVB-VviXebuFDhuCZJseHhCWH6u2I3yH5D1X0OIGIQdhCQIYNL7WVQvzPz69wffyUTyqnItDPX1OFjCZ3Kqnwomn_TFmZeibU291SbvoyNP4mMKIn6VmD3D4rOoid-bTxDP63P19rs3ZAqnClMlJZXOimusbL77w3hK72W7aVtG2VBll-pXPpohzEDJ2nt8A",
"Hundreds of Products at Low Prices",
"www.advancedtechtoys.com",
"");

//zSr is the array that is populated by the javacsript call to Overture
var zSr;

//Below are some example funtions to draw the acutall link boxes
//Each site can use this same pattern to define new functions that can draw the links
//in various ways.

//A function for drawing a set of sponsored links
function sponsoredLinksGeneric(linkData, startIndex, endIndex) {
  	if (startIndex == undefined) {
		startIndex = 0;
	}
	var links = linkData.getItems();
	var outString = '<div class="mdl"><div class="h-wrap group"><h2 class="h-sub2 group"><span>Sponsored Links</span></h2></div>';
	var arrLength = links.length;
	if (endIndex == undefined || endIndex == 0) {
		endIndex = arrLength;
	}
	else {
		if (endIndex > arrLength) {
			endIndex = arrLength;
		}
	}

	var emptyText = '<div style="display:none;">Sorry! no links to show</div>';
	if (endIndex <= startIndex) {
		//If there are not links to show, then return an alternative text
		return emptyText;
	}

	var i = startIndex;
	outString += '<ol class="lst">';
	while ( i < endIndex) {
		var currItem = links[i];
		if (i == endIndex-1) {
			outString += '<li class="last">';
		} else {
			outString += '<li>';
		}
		outString += '<div class="title2"><a target="_blank" href="' + currItem.getClickUrl() + '">' + currItem.getTitle() + '</a></div>'; 
		outString += '<div class="copy2"><a target="_blank" href="' + currItem.getClickUrl() + '">' + currItem.getDescription() + '</a></div>';
		outString += '<div class="link2"><a target="_blank" href="' + currItem.getClickUrl() + "\">" + currItem.getSitehost() + '<span class="specialChars">&#187;</span></a></div>';
		outString += '</li>';
		i++;
	} 
	outString += '</ul>\n';
		
	//outString += '<div id="linkspot" class="genCopy"><b>'+showLinkspotRow(linkspotData, rowIndex, maxLinks) + "</b></div></div>\n";
	outString += "</div>\n";
	return outString;
}


//A function for drawing a set of sponsored links
function showGeneric_VH1_CM(linkData, startIndex, endIndex) {
  	if (startIndex == undefined) {
		startIndex = 0;
	}
	var links = linkData.getItems();
	var outString = '<table id="sponsorsHdrTbl" cellspacing="0" cellpadding="0" border="0" bgcolor="#F1F1F1"><tbody><tr><td><a name="adBottom" id="adBottom"><img width="188" height="18" border="0" src="/dynamic_templates/artists/img/sub_sponsored_links.gif"></a></td></tr></tbody></table><div class="ctrBuf">';
	var arrLength = links.length;
	if (endIndex == undefined || endIndex == 0) {
		endIndex = arrLength;
	}
	else {
		if (endIndex > arrLength) {
			endIndex = arrLength;
		}
	}

	var emptyText = '<div style="display:none;">Sorry! no links to show</div>';
	if (endIndex <= startIndex) {
		//If there are not links to show, then return an alternative text
		return emptyText;
	}

	var i = startIndex;
	outString += '<ul id="sponsors_results" style="margin:5px 0 0;padding-left:20px;list-style-image:url(/sitewide/icons/icn_arrow_blue.gif);">';
	while ( i < endIndex) {
		var currItem = links[i];
		outString += '<li>';
		outString += '<span class="genCopy" style="text-transform: capitalize;"><b><a target="_blank" href="' + currItem.getClickUrl() + '">' + currItem.getTitle() + '</a></b></span><br>'; 
		outString += '<span class="genCopy"><a target="_blank" style="text-decoration:none;" href="' + currItem.getClickUrl() + '">' + currItem.getDescription() + '</a></span><br>';
		outString += '<a target="_blank" class="genCopy" style="color:#0099CC;" href="' + currItem.getClickUrl() + "\">" + currItem.getSitehost() + '</a><br>';
		outString += '<img class="sponsorDots" vspace="5" height="1" src="/sitewide/icons/dots_401.gif"></li>\n';
		i++;
	} 
	outString += '</ul>\n';
		
	//outString += '<div id="linkspot" class="genCopy"><b>'+showLinkspotRow(linkspotData, rowIndex, maxLinks) + "</b></div></div>\n";
	outString += "</div>\n";
	return outString;
}

//An example function for drawing a set of content match sponsored links with linksposts
function showMovies_VH1_CM(linkData, startIndex, endIndex) {
  	if (startIndex == undefined) {
		startIndex = 0;
	}
	var links = linkData.getItems();
	var outString = '<div class="modGrayBg"><img src="/dynamic_templates/movies/img/sponsored_links.gif" alt="sponsored links" /><div style="background-color:#000;padding:10px;">';
	var arrLength = links.length;
	if (endIndex == undefined || endIndex == 0) {
		endIndex = arrLength;
	}
	else {
		if (endIndex > arrLength) {
			endIndex = arrLength;
		}
	}

	var emptyText = '<div style="display:none;">Sorry! no links to show</div>';
	if (endIndex <= startIndex) {
		//If there are not links to show, then return an alternative text
		return emptyText;
	}

	var i = startIndex;
	while ( i < endIndex) {
		var currItem = links[i];
		outString += '<div style="">';
		outString += '<span class="genCopy" style="text-transform: capitalize;"><img style="margin-right:5px;" src="/dynamic_templates/movies/img/icn_sponsored_links.gif" /><b><a target="_blank" href="' + currItem.getClickUrl()+ '">' + currItem.getTitle() + '</a></b></span><br>'; 
		outString += '<div style="margin-left:17px;"><a target="_blank" style="text-decoration:none;" href="' + currItem.getClickUrl() + '">' + currItem.getDescription() + '</a></div>';
		outString += '<img src="/img/spc.gif" width="17"/><a target="_blank" class="genCopy" style="color:#0099CC;" href="' + currItem.getClickUrl() + "\">" + currItem.getSitehost() + '</a><br>';
		outString += '</div><div class="navdotln404related"></div>\n';
		i++;
	} 
		
	//outString += '<div id="linkspot" class="genCopy"><b>'+showLinkspotRow(linkspotData, rowIndex, maxLinks) + "</b></div></div></div>\n";
	outString += "</div></div>\n";
	return outString;
}


//A function for drawing a set of sponsored links for the search results page
function showSearch_VH1(linkData, startIndex, endIndex, resetOutput, maxChars) {
  	if (startIndex == undefined) {
		startIndex = 0;
	}
	var links = linkData.getItems();
	var outString = '';
	if(resetOutput) outString = '';
	var arrLength = links.length;
	if (endIndex == undefined || endIndex == 0) {
		endIndex = arrLength;
	}
	else {
		if (endIndex > arrLength) {
			endIndex = arrLength;
		}
	}

	var emptyText = '<div style="display:none;">Sorry! no links to show</div>';
	
	if (endIndex <= startIndex) {
		//If there are not links to show, then return an alternative text
		return emptyText;
	}

	var i = startIndex;
	while ( i < endIndex) {
		var currItem = links[i];
		outString += '<div id="linkTitle"><b><a class="linkTitle" target="_blank" href="' + currItem.getClickUrl()+ '">' + currItem.getTitle() + '</a></b></div>\n'; 
		outString += '<div id="linkDesc"><a class="linkDesc" target="_blank" href="' + currItem.getClickUrl() + '">' + currItem.getDescription() + '</a></div>\n';
		if(maxChars == undefined) {
			outString += '<div id="linkClickUrl"><a class="linkClickUrl" target="_blank" href="' + currItem.getClickUrl() + "\">" + currItem.getSitehost() + '</a></div><br>\n';
		} else {
			outString += '<div id="linkClickUrl"><a class="linkClickUrl" target="_blank" href="' + currItem.getClickUrl() + "\">" + breakWord(currItem.getSitehost(),maxChars) + '</a></div><br>\n';
		}
		i++;
	}
		
	return outString;
}

function truncateString(str, maxlen) {
	if(str.length > maxlen) {
		return str.substring(0,maxlen)+"...";
	}
	return str;
}

function breakWord(str,maxChars) {
  var arr = new Array()
  var repeat = Math.floor(str.length/maxChars)+1;
  for (i = 0;i < repeat;i++) {
    start = (i) * maxChars;
    end = (i+1) * maxChars;
    arr.push(str.substring(start, end));
  }

  string = arr.join(" ");
  return string;
}


