//	
//	Created by VirtuAmi for Heineken
//	Contact us at http://www.virtuami.com
//



// Determine browser type
if(navigator.appName.indexOf("Microsoft") != -1) {
	browser = "MS";
} else {
	browser = "NS";
}

var domDoc;
var videoId = 0;
var videoplaylist;
var videoStartplay;
var startPlay = "play";
var currentPosition;
var currentVolume;
var autostart;
var playlistShuffle;
var menuSelected = "";

// Load of URL Parameters
function gup( name ) {
	var name2 = name.toLowerCase();
	var regexS = "[\\?&]"+name2+"=([^&#]*)";
	var regex = new RegExp( regexS );
	var tmpURL = window.location.href;
	var results = regex.exec( tmpURL );
	if( results == null )
		return "";
	else
		//alert(results[1]);
		return results[1];
		
};


// set default playlist if none is given through the URL parameter
if (escape(gup( 'videoplaylist' )) == "") {
	videoplaylist = "playlist.xml"
}
else {
	videoplaylist = unescape(gup( 'videoplaylist' ))
}

if (unescape(gup( 'autostart' )) == "") { 
	autostart = "false";
}
else {
	autostart = unescape(gup( 'autostart' ));
	//alert(autostart);
}

if (unescape(gup( 'videoStartplay' )) == "") { 
	videoStartplay = "false";
}
else {
	videoStartplay = unescape(gup( 'videoStartplay' ));
	//alert(videoStartplay);
}

if (unescape(gup( 'playlistShuffle' )) == "") { 
	playlistShuffle = "false";
}
else {
	playlistShuffle = unescape(gup( 'playlistShuffle' ));
}

// XML load section
function loadPlaylistXML() {

	document.getElementById("FlashVideoPlayer").style.display = '';	
	domDoc = Sarissa.getDomDocument();
	var rHandler = function() {
        if(domDoc.readyState == 4) {
			if(Sarissa.getParseErrorText(domDoc) == Sarissa.PARSED_OK){
				// The document was parsed/loaded just fine, go on
				searchItems();
				if(startPlay == "play") {
					createVideoplayer();
				} 
			} 
			else{
				// The document was not loaded correctly! Inform the user:
				createVideoplayer();
			}
		}
	}
	domDoc.onreadystatechange = rHandler;
	domDoc.load(videoplaylist);
	if (browser != "MS") {
		Sarissa.setXpathNamespaces(domDoc, "xmlns:xspf='http://xspf.org/ns/0/'");
	}
}

function searchItems() {
	if(browser == "MS") {
		var playListTitle = domDoc.selectNodes('//listTitle');
		var videoList = domDoc.selectNodes('//trackList/track/identifier');
	}
	else { 
		var playListTitle = domDoc.selectNodes('//xspf:listTitle');
		var videoList = domDoc.selectNodes('//xspf:trackList/xspf:track/xspf:identifier');
	}

	videoTitle = playListTitle[0].firstChild.nodeValue;
	videoId = 0;
	for(var i = 0; i < videoList.length; i++) {
		if (videoList[i].firstChild.nodeValue.toLowerCase() == unescape(gup( 'videoId' )).toLowerCase()) {
			//videoId = i+1;
			videoId = i;
		}
	}
}





// these functions are caught by the JavascriptView object of the player.
function sendEvent(typ,prm) { thisMovie("mediaplayer").sendEvent(typ,prm); };
function getUpdate(typ,pr1,pr2,pid) {
	if(typ == "time") { currentPosition = pr1; }
	else if(typ == "volume") { currentVolume = pr1; }
	else if(typ == "item") { currentItem = pr1; setTimeout("getItemData(currentItem)",100); }
	var id = document.getElementById(typ);
	id.innerHTML = typ+ ": "+Math.round(pr1);
	pr2 == undefined ? null: id.innerHTML += ", "+Math.round(pr2);
	if(pid != "null") {
		document.getElementById("pid").innerHTML = "(received from the player with id <i>"+pid+"</i>)";
	}
};
// These functions are caught by the feeder object of the player.
function loadFile(obj) { thisMovie("mediaplayer").loadFile(obj); };
function addItem(obj,idx) { thisMovie("mediaplayer").addItem(obj,idx); }
function removeItem(idx) { thisMovie("mediaplayer").removeItem(idx); }

// This function is called regularly by the flvplayer, it is used to determine startup options of the player
function getItemData(idx) {
	if(startPlay == "play") {

		sendEvent('playitem',videoId);

		setMenutitleBold(videoTitle);
		//sendEvent('stop');
		if (videoStartplay == "true") {
			if (autostart != "true") {
				setTimeout("sendEvent('playpause')",1000);
			} 
			videoStartplay = "done";
		}
		if (videoStartplay == "false") {
			if (autostart == "true") {
				setTimeout("sendEvent('playpause')",1000);
			}
		}
		startPlay = "done";
	}	
};

// This is a javascript handler for the player and is always needed.
function thisMovie(movieName) {
    if(navigator.appName.indexOf("Microsoft") != -1) {
		return window[movieName];
	} else {
		return document[movieName];
	}
};

// layout section
function setMenutitleBold(menuSelect) {

if (menuSelected != "") document.getElementById(menuSelected).style.fontWeight = '';
	document.getElementById(menuSelect).style.fontWeight = 'bold';
	menuSelected = menuSelect;


}
	
