/**播放控件初始化完成后，由控件回调该方法**/
var IsBanaComInited = false;
function cb_afterBanaComInited(){ //初始化BanaCom,由BanaCom加载后自己回调
	try{
		bana.SetWebMode();
		bana.ShowPlayerControl(0);
		bana.ShowInfoBar(0);		
		PlayerGetVolume(); //读取音量值，并记录音量值
		setTrackPos();
		IsBanaComInited=true;
		QueryTvUrl(glb_curPlayingChnTag);//初始化后执行播放回调
	}catch(ex){
		IsBanaComInited=false;		
		alert("初始化Banacast播放控件失败！");	 	
	}
}

var glb_curPlayingChnTag="",glb_prePlayingChnTag="";
var glb_urPlayingUrl="";

/**播放窗口展开完成后(执行padOpen后)回调该方法**/
function showPlayer(){
	document.getElementById("playToolbar").style.visibility="visible";
	glb_curPlayingChnTag=QueryString("chnId");
    $("#NPL").text("正在直播："+unescape(QueryString("chnName")));
	if(CheckBanaComVersion()==false) {//用户未安装客户端，或不满足版本要求,则停止执行
		document.getElementById("the_fdiv").style.top=230 + "px";
		return;
	}else{
		SwitchPlayWndCnt("BanaCom");
	}
}

/**根据chnTag从计费系统获取节目接入Url**/
function QueryTvUrl(chnTag){
	if(chnTag==""){
		alert("必要参数丢失");
		return;
	}
	if(typeof(BiSys_getChannelUrl)!="function"){
		alert("获取频道信息超时，暂时无法完成您的播放请求！");		
	}else{
		document.getElementById("playWnd").style.width="0px";//隐藏播放窗口,以免遮住登陆窗口
		BiSys_getChannelUrl(chnTag);
	}
}

var glb_playWndWidth="460px";
/**外表调用接口，获取接入地址成功后由计费系统回调**/
function callback_exePlay(chnUrl){//执行实际播放
	//alert("播放地址:"+chnUrl)
	if(chnUrl==""){
		alert("对不起！您请求的节目源已离开，请观看其他节目。");
	}else{
		document.getElementById("playWnd").style.width=glb_playWndWidth;
		PlayLstv(chnUrl);
	}
}

var timer_SetPlayBufferInfo=null;
function PlayLstv(chnUrl){
	if(!IsBanaComInited){
		return;
	}else{
		/*************************************增加在线人数，暂不实现 
		if(glb_urPlayingUrl!=chnUrl){
			$.get("servlet/LstvChnOnlineUserStatServlet",{ChnTag:glb_curPlayingChnTag+"",PlayAction:"open",OptAction:"SetStat"});	
			if(glb_urPlayingUrl!="")
				$.get("servlet/LstvChnOnlineUserStatServlet",{ChnTag:glb_prePlayingChnTag+"",PlayAction:"close",OptAction:"SetStat"});
		}*****************************************/
		//$("#NPL").text("正在直播："+getCookie("RequestedProName"));
		glb_urPlayingUrl=chnUrl;
		try{
			bana.LoadWebPage("http://www.tv33.net/myWigest/ProgressBar.html",1);
			bana.openURL(chnUrl);
			if(timer_SetPlayBufferInfo)
				window.clearInterval(timer_SetPlayBufferInfo);
			timer_SetPlayBufferInfo=window.setInterval("SetPlayBufferInfo()",1000);
			HasLstvUrlLoaded=false;//开始载入Url，当前播放状态设置为未播放，等待画面出现时设置为播放
		}catch(ex){
			alert("载入Banacast播放插件失败！");
			return false;
		}
	}
}

var HasLstvUrlLoaded = false;
var CurPlayStat="play";
function PlayerPlay(imgvar){
	if(!IsBanaComInited){	//当前未初始化或未载入播放链接
		return;
	}
	if(HasLstvUrlLoaded){	//播放时暂停与继续节目
		if(CurPlayStat=="pause"){//播
			bana.RunPlayer();
			imgvar.src = "images/pause_hover.gif";
			CurPlayStat="play";
		}else if(CurPlayStat=="play"){	//停
			bana.RunPlayer();
			imgvar.src = "images/play_hover.gif";
			CurPlayStat="pause";
		}
	}
}

var isCurrentMute = false;
var BanaComVolumeValue = 0;
function PlayerMute(imgvar){
	if(!IsBanaComInited||!HasLstvUrlLoaded){//当前未初始化或未载入播放链接
		return;
	}
	if(!isCurrentMute){
		BanaComVolumeValue=bana.GetVolumeA();
		bana.SetVolumeA(0);
		isCurrentMute=true;	
		imgvar.src = "images/inMute_hover.gif"
	}else{
		bana.SetVolumeA(parseInt(BanaComVolumeValue));
		isCurrentMute=false;	
		imgvar.src = "images/noMute_hover.gif"
	}
}

function PlayerGetVolume(){//不会在未初始化前调用
	BanaComVolumeValue = bana.GetVolumeA();
}

function PlayerSetVolume(){
	bana.SetVolumeA(BanaComVolumeValue);
}

function PlayerStop(){
	if(!IsBanaComInited)
		return false;
	bana.StopPlayer();
	bana.Close();
	//IsBanaComInited = false;
	HasLstvUrlLoaded=false;
	//SwitchPlayWndCnt("AdIframe");
	bana.LoadWebPage("http://www.tv33.net/myWigest/PlayerStop.html",1);
}

function StopByBanaCom(){
	if(!IsBanaComInited)
		return false;
	HasLstvUrlLoaded=false;
	bana.LoadWebPage("http://www.tv33.net/myWigest/PlayerStop.html",1);
}

function PlayerFullScreen(){
	if(!HasLstvUrlLoaded)
		return false;
	bana.SetFullScreen(1);
}

function SetPlayBufferInfo(){
	var str="";
	if(!IsBanaComInited)
		return;
	try{
		str="缓冲："+bana.GetBufferedTime()+"%，速率："+bana.GetAverageDownloadRate()+"KB/S";
	}catch(ex){}
	$("#PlayBufferedInfoDiv").text(str);
}
function CallBack_ComSetupOk(){//用户升级或首次安装成功后执行的回调
	SwitchPlayWndCnt("BanaCom"); //加载BanaCom,然后执行初始化，随后播放记忆的频道
}
