//$Id: omniture.js,v 1.8 2009/04/25 02:50:20 ocaraballo Exp $

var cnn_omnitureData = new Array();
cnn_omnitureData = {
	path: null, // set automatically
	server: null, // set automatically
	section: null,
	pageType: null,
	branding: null,
	referrer: null,
	redirect: null,
	date: null,
	slug: null,
	file: null,
	pageName: null
}
var sectionNameError = "unknown section";
var eventNameError = "unknown event";
var videoNameError = "unknown video";

cnn_omnitureData['path'] = ( document.URL ).replace( /http:\/\/([^\/]+)/, "" );
cnn_omnitureData['path'] = ( cnn_omnitureData['path'] ).replace( /\/\//, "/" );
cnn_omnitureData['server'] = window.location.host;
if( cnn_omnitureData['path'].charAt( cnn_omnitureData['path'].length - 1 ) == "/" ) cnn_omnitureData['path'] += "index.html"; // make sure there's always a filename
if( queryString( 'eref' ) != "false" ) {
	cnn_omnitureData['referrer'] = "from ";
	switch( queryString( 'eref' ) ) {
		default:			cnn_omnitureData['referrer'] += queryString( 'eref' ); break;
	}
	cnn_omnitureData['referrer'] += " - " + cnn_omnitureData['path'];
}
var path_array = ( cnn_omnitureData['path'].substr( 1 ) ).split( "/" );

// **************************************
// set variables and submit them

//fantasy baseball site
if (window.location.host=="baseball.sikids.com") {
	setVars("Fantasy","Fantasy - Baseball", "SIKids.com Fantasy Baseball");
}
//homepage
else if (path_array[0]=="index.html" || document.URL=="http://sikids.com" || document.URL=="http://www.sikids.com" || document.URL=="http://preview-sikids.ibs.aol.com") {setVars("Home","Home Front","SIKIDS Homepage");}
else if (path_array[0]=="index_kol.html") {setVars("Home","KOL Home Front","SIKIDS KOL Homepage");}
//fantasy site
else if (window.location.host=="fantasy.sikids.com" ) {
	var sect="Unknown";
	switch (path_array[0]) {
		case "baseball" : sect="Baseball"; break;
		case "football" : sect="Football"; break;
		case "basketball" : sect="Basketball"; break;
		case "hockey" : sect="Hockey"; break;
	}
	setVars("Fantasy","Fantasy - "+sect,document.title);
}
//story page
else if ((path_array[0]).match(/^\d{4}/)) {setVars("Stories","Story Page",document.title,"",getStoryDate(),path_array[path_array.length-2],path_array[path_array.length-1]);}
//all other sections
else {
	if (path_array[0]=="about_us") {setVars("About","About SIKIDS",document.title);}
	else if (path_array[0]=="build") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Build","Build: "+path_array[1],document.title);}
		else {setVars("Build","Build Front",document.title);}
	}
	else if (path_array[0]=="buzzs-laugh-locker") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Buzz's Laugh Locker","Buzz's Laugh Locker: "+path_array[1],document.title);}
		else {setVars("Buzz's Laugh Locker","Buzz's Laugh Locker Front",document.title);}
	}
	else if (path_array[0]=="buzzbeamer") {
		if (path_array[1] && path_array[1]=="animated") {setVars("Buzz Beamer","Cartoon: "+path_array[2].replace(/.html/,""),document.title,"","","",path_array[2]);}
		else {setVars("Buzz Beamer","Buzz Beamer Front",document.title);}
	}
	else if (path_array[0]=="contests") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Contests","Contests: "+path_array[1],document.title);}
		else {setVars("Contests","Contests Front",document.title);}
	}
	else if (path_array[0]=="cover-viewer") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Cover Viewer","Cover Viewer: "+path_array[1],document.title);}
		else {setVars("Cover Viewer","Cover Viewer Front",document.title);}
	}
	else if (path_array[0]=="fantasy") {
		if (path_array[1] && path_array[1].indexOf("comeback")>=0) {setVars("Fantasy","Fantasy Comeback",document.title);}
		else {setVars("Fantasy","Fantasy Front",document.title);}
	}
	else if (path_array[0]=="games") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Games","Games: "+path_array[1],document.title);}
		else {setVars("Games","Games Front",document.title);}
	}
	else if (path_array[0]=="linkto") {setVars("News Roundup","News Roundup",document.title);}
	else if (path_array[0]=="magazine") {
		if (path_array[1] && path_array[1]=="coverbuilder") {setVars("Magazine ","Magazine Cover Builder",document.title); }
		else {setVars("Magazine","Magazine Front",document.title);}
	}
	else if (path_array[0]=="more") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("More","More: "+path_array[1],document.title);}
		else {setVars("More","More Front",document.title);}
	}
	else if (path_array[0]=="morenews") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("More News","More News: "+path_array[1],document.title);}
		else {setVars("More News","More News Front",document.title);}
	}
	else if (path_array[0]=="multimedia") {
		setVars("Photo Galleries","Photo Galleries",document.title,"",path_array[path_array.length-3],path_array[path_array.length-2],path_array[path_array.length-1]);
	}
	else if (path_array[0]=="photos") {
		if (path_array[1] && path_array[1]=="funny_photo.html") {setVars("Photos ","Funny Photo",document.title); }
		else {setVars("Photos","Photos Front",document.title);}
	}
	else if (path_array[0]=="picture-puzzle") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Picture Puzzle","Picture Puzzle: "+path_array[1],document.title);}
		else {setVars("Picture Puzzle","Picture Puzzle Front",document.title);}
	}
	else if (path_array[0]=="scores") {setVars("Scores","Scores Front",document.title);}
	else if (path_array[0]=="sikids-tv") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("SIKIDS TV","SIKIDS TV: "+path_array[1],document.title);}
		else {setVars("SIKIDS TV","SIKIDS TV Front",document.title);}
	}
	else if (path_array[0]=="sikidstv") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("SIKIDS TV","SIKIDS TV: "+path_array[1],document.title);}
		else {setVars("SIKIDS TV","SIKIDS TV Front",document.title);}
	}
	else if (path_array[0]=="video") {
		if (path_array[1] && path_array[1].indexOf("index")>=0) {setVars("Video","Video Front",document.title,"","","",path_array[1]);}
		else {setVars("Video","Video Clip",document.title,"",getStoryDate("video"),path_array[path_array.length-1].replace(/.html/,""),path_array[path_array.length-1]);}
	}
	else if (path_array[0]=="splogs") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Splogs","Splog Page",document.title,"",getStoryDate("splog"),path_array[path_array.length-2],path_array[path_array.length-1]);}
		else {setVars("Splogs","Splogs Front",document.title);}
	}
	else if (path_array[0]=="kidreporter") {
		if (path_array[1] && path_array[1]!="index.html") {setVars("Kid Reporter","Kid Reporter",document.title);}
		else {setVars("Kid Reporter","Kid Reporter Front",document.title);}
	}
	//sport stats 
	else if (path_array[0]=="hockey") {setVars("Hockey - NHL","NHL "+path_array[2],document.title);}
	else if (path_array[0]=="baseball") {setVars("Baseball - MLB","MLB "+path_array[2],document.title);}
	else if (path_array[0]=="football") {setVars("Football - NFL","NFL "+path_array[2],document.title);}
	else if (path_array[0]=="basketball") {setVars("Basketball - NBA","NBA "+path_array[2],document.title);}
	else if (path_array[0]=="room") {setVars("Room","Room",document.title);}
	else {setVars("Unknown","Unknown - "+cnn_omnitureData['path'],document.title);}
		
}

// **************************************
// set functions
function setVars( section, pageType, pageName, branding, date, slug, file ) {
	cnn_omnitureData['section']=section;
	cnn_omnitureData['pageType']=pageType;
	cnn_omnitureData['branding']=(branding) ?  branding : "N/A";
	cnn_omnitureData['date']=(date) ? date : "N/A";
	cnn_omnitureData['slug']=(slug) ? slug : "N/A";
	cnn_omnitureData['file']=(file) ? file : "N/A";
	if (pageName) {
		pageName=pageName.replace(/SIKIDS.com - /,"");
		pageName=pageName.replace(/SIKids.com - /,"");
	}
	cnn_omnitureData['pageName']=(pageName) ? pageName : "N/A";

}
// END set functions
// **************************************

// **************************************
// get functions
function getStoryDate(sect) {
	var returnString="";
	var year=path_array[0];
	if (sect=="video") year=path_array[1];
	else if (sect=="splog") year=path_array[1];
	var month=-1;
	var day=-1;
	var x=1;
	var date="";
	while (x<path_array.length) { // find month and day in path
		if ((path_array[x]).match(/^\d{2}/)&&!(path_array[x]).match(/^\d{4}/)) {
			month=path_array[x];
			day=path_array[x+1];
			break;
		}
		x++;
	}
	if (month>0) {returnString=year+"/"+month+"/"+day;} 
	else {returnString=year+" evergreen";}
	return returnString;
}
// END get functions
// **************************************




// **************************************
// helper functions
function pageQuery( q ) {
	if( q.length > 1 ) this.q = q.substring( 1, q.length );
	else this.q = null;
	this.keyValuePairs = new Array();
	if( q ) {
		for( var i = 0; i < this.q.split( "&" ).length; i++ ) {
			this.keyValuePairs[i] = this.q.split( "&" )[i];
		}
	}
	this.getKeyValuePairs = function() { return this.keyValuePairs; }
	this.getValue = function( s ) {
		for( var j = 0; j < this.keyValuePairs.length; j++ ) {
			if( this.keyValuePairs[j].split( "=" )[0] == s )
			return this.keyValuePairs[j].split( "=" )[1];
		}
		return false;
	}
	this.getParameters = function() {
		var a = new Array( this.getLength() );
		for( var j = 0; j < this.keyValuePairs.length; j++ ) {
			a[j] = this.keyValuePairs[j].split( "=" )[0];
		}
		return a;
	}
	this.getLength = function() { return this.keyValuePairs.length; } 
}
function queryString( key ){
	var page = new pageQuery( window.location.search ); 
	return unescape( page.getValue( key ) ); 
}
function elementExist( in_array, in_string ) {
	var ret_value = false;
	for( var x = 0; x < in_array.length; x++ ) {
		if( in_array[x] == in_string ) {
			ret_value = true;
		}
	}
	return ret_value;
}
function upper( phrase ){ // capitalizes the first letter of each word in phrase
	phrase = phrase.split(' ')
	for ( i=0; i < phrase.length; i++ ) {
		phrase[i] = phrase[i].replace( /^(.)/, phrase[i].charAt( 0 ).toUpperCase() )
	}
	return phrase.join(' ');
}
function arrayIndexOf( searchValue, in_array ) { // if searchValue exists in in_array, return the index of searchValue; otherwise return -1
	var ret_value = -1;
	for( var x = 0; x < in_array.length; x++ ) {
		if( in_array[x] == searchValue ) {
			ret_value = x;
		}
	}
	return ret_value;
}
function writeData() {
	document.write( '<table border="0" cellpadding="0" cellspacing="0">' );
	document.write( '<tr><td>path:</td><td>' + cnn_omnitureData['path'] + '</td></tr>' );
	document.write( '<tr><td>server:</td><td>' + cnn_omnitureData['server'] + '</td></tr>' );
	document.write( '<tr><td>section:</td><td>' + cnn_omnitureData['section'] + '</td></tr>' );
	document.write( '<tr><td>pageType:</td><td>' + cnn_omnitureData['pageType'] + '</td></tr>' );
	document.write( '<tr><td>branding:</td><td>' + cnn_omnitureData['branding'] + '</td></tr>' );
	document.write( '<tr><td>date:</td><td>' + cnn_omnitureData['date'] + '</td></tr>' );
	document.write( '<tr><td>slug:</td><td>' + cnn_omnitureData['slug'] + '</td></tr>' );
	document.write( '<tr><td>file:</td><td>' + cnn_omnitureData['file'] + '</td></tr>' );
	document.write( '<tr><td>referrer:</td><td>' + cnn_omnitureData['referrer'] + '</td></tr>' );
	document.write( '<tr><td>pageName:</td><td>' + cnn_omnitureData['pageName'] + '</td></tr>' );
	document.write( '</table>' );
}
function getData() {
	var ret_value = "";
	ret_value += '<table border="0" cellpadding="0" cellspacing="0">';
	ret_value += '<tr><td>path:</td><td>' + cnn_omnitureData['path'] + '</td></tr>';
	ret_value += '<tr><td>server:</td><td>' + cnn_omnitureData['server'] + '</td></tr>';
	ret_value += '<tr><td>section:</td><td>' + cnn_omnitureData['section'] + '</td></tr>';
	ret_value += '<tr><td>pageType:</td><td>' + cnn_omnitureData['pageType'] + '</td></tr>';
	ret_value += '<tr><td>branding:</td><td>' + cnn_omnitureData['branding'] + '</td></tr>';
	ret_value += '<tr><td>date:</td><td>' + cnn_omnitureData['date'] + '</td></tr>';
	ret_value += '<tr><td>slug:</td><td>' + cnn_omnitureData['slug'] + '</td></tr>';
	ret_value += '<tr><td>file:</td><td>' + cnn_omnitureData['file'] + '</td></tr>';
	ret_value += '<tr><td>referrer:</td><td>' + cnn_omnitureData['referrer'] + '</td></tr>';
	ret_value += '<tr><td>pageName:</td><td>' + cnn_omnitureData['pageName'] + '</td></tr>';
	ret_value += '</table>';
	return ret_value;
}
// END helper functions
// **************************************

