// JavaScript Document
// Author: Ashok Kumar Gupta
// Copyright Warner/Chappell Music
// This document is sole property of Warner/Chappell Music

// Based on browser DOM parsing
var isIE =navigator.appName.indexOf("Microsoft") != -1;
function audioComponent(movieName) {
    if (isIE) {
        return window[movieName]
    }else {
        return document[movieName]
	}
}
function loadPlayListHome(media,index,win){
	//alert(audioComponent("homemusicplayer"));
	audioComponent("homemusicplayer").wrappermedia(media,index,win);
}
// This function load music player respective to the param values
var mmediaValue;
var mindexValue;
//var vidPaneID;
function loadPlayList(media,index,win){
		//var msrc = '/resources/flash/player/b2baudioplayer.swf';
		mmediaValue = media;
		mindexValue = index;
		closeWindow();
		vidPaneID = document.getElementById('mpcontainer');
		vidPaneID.innerHTML = "";
		vidPaneID.className = "playSingleStyle";
		vidPaneID.style.top='180px';                     // Starting location horozontal
		vidPaneID.style.left='455px'; 
		//vidPaneID.style.display = "none";
		
	// var bodyEle = document.getElementsByTagName('body')[0];
     vidPaneID.style.display='block';
		// <![CDATA[
		   var so = new SWFObject("/resources/flash/player/b2baudioplayer.swf", "b2baudioplayer", "240", "170", "9");
		   so.addParam("wmode", "window");
		   so.addParam("flashvars", "_mediaName="+media+"&_index="+index+"&_window="+win+"");
		   so.write(vidPaneID);
		// ]]>
	 
	//bodyEle.appendChild(vidPaneID);
}

function updateindex(media,index){
	mmediaValue = media;
	mindexValue = index;
}
function updatesingle(asset,type){
	mmediaValue = asset;
	mindexValue = type;
}

// This function pop-out player
function popoutPlaylist(){
	// This opens new window for the playlist player
	newplayerwindow = window.open("/playerList.html","","width=240,height=170,scrolling=0,resizable=0,statusbar=0");
	if (!newplayerwindow) {
    	alert("A popup blocker was detected.");
	 }
	newplayerwindow.focus();
	vidPaneID.innerHTML = "";
	vidPaneID.style.display = "none";
}

function popoutSingle(){
	// This opens new window for the single player
	newplayerwindow = window.open("/playSingle.html","","width=240,height=170,scrolling=0,resizable=0,statusbar=0");
	if (!newplayerwindow) {
    	alert("A popup blocker was detected.");
	}
	newplayerwindow.focus();
	vidPaneID.innerHTML = "";
	vidPaneID.style.display = "none";
	//document.getElementById('mpcontainer').innerHTML = "";
	//document.getElementById('mpcontainer').style.display = "none";
	
}


// Function to provide relevant Error message

function misssingAsset(msg){
	if(msg == 'SecurityError'){
		alert('Please make sure you have access to the mentioned domain.');
	}else if(msg == 'XMLIOError'){
		alert('Please make sure XML path is correct and then reload player.');
	}else if(msg == 'SongIOError'){
		if(navigator.userAgent.indexOf("Safari") != -1){
			return;
		}else{
			alert('Please make sure song path is correct.');
		}
	}
	closePlayer();
}

/*********************************************************************/
				/* InPoint Code Implementation */
/*********************************************************************/

var XmlHttpPlayer;
var InPointPlayerId
var isNextPoint;
function searchChartDetails(assetId,playerId,isNext,assturl){
	InPointPlayerId = playerId;
	isNextPoint = isNext;	
	var urlToFile="/MusicServices?system_action=customInPoint&assetid="+assetId+"&url="+assturl;
	sendRequest(urlToFile, processRequestPlayer);
}

function sendRequest(url, processChangePlayer){
	// branch for native XMLHttpRequest object	
	if (window.XMLHttpRequest) {
	    request = new XMLHttpRequest();
	    request.onreadystatechange = processChangePlayer;
	    request.open("GET", url, true);
	    request.send(null);	
	// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
	    request = new ActiveXObject("Microsoft.XMLHTTP");
	    if (request) {
			//alert("hi");
	        request.onreadystatechange = processChangePlayer;
	        request.open("GET", url, true);		
	        request.send();
	    }
	}
}
var isValidPlayer = 1;
function processRequestPlayer(){	
	if(request.readyState==4){		
			if(request.status==200){
				var xmlDoc =request.responseXML;
				var xmltext = request.responseText;
				var PlayerConfig = xmlDoc.getElementsByTagName('FLVPlayerConfig');
				isValidPlayer = xmlDoc.getElementsByTagName('code')[0].childNodes[0].nodeValue;
				if(isValidPlayer == "1"){
					var InPoint = xmlDoc.getElementsByTagName('cuepoint')[0].childNodes[0].nodeValue;
					if(findSplChar(InPoint) == -1){InPoint = "0~0"}else{InPoint = InPoint;}
					var spoint = InPoint.substr(0,InPoint.indexOf("~",0));
					var epoint = InPoint.substr(InPoint.indexOf("~",0)+1, InPoint.length);
					//alert(audioComponent(InPointPlayerId));
					if(isNextPoint == "yes"){
						audioComponent(InPointPlayerId).storeNextInPoint(spoint,epoint);
					}else{						
						audioComponent(InPointPlayerId).inPointDataFormater(spoint,epoint);
					}
				}else{
					var spoint = 0;
					var epoint = 30;
					audioComponent(InPointPlayerId).notValidData();
				}
					
		}
	}
}


function findSplChar(s) {
	if (s!=null && s!='') {
		s=s.search("~");
		//alert(s);
	}
	return s;
}
