﻿  
var mpUndefined= 0;
var mpStopped= 1;
var mpPaused= 2;
var mpPlaying= 3;
var mpScanForword= 4;
var mpScanReverse= 5;
var mpBuffering= 6;
var mpWaiting= 7;
var mpMediaEnded= 8;
var mpTransitioning= 9;
var mpReady = 10;
var mpReconnection= 11;
  
//播放相关  
var player;
var container;
var isplaying=1;
var ismute=false;
var oldvol=0;

var statebar=document.getElementById("statebar");  
var file="mms://pub1.qmoon.net/911pop?cccode=cc1276";
var nowradioid=0;
var nowradioname="音乐台";

//音量相关
var x,theImg,baseLeft;
var Maxvol, Minvol;
Maxvol=64;
Minvol=0;
cur=64;

//状态相关
var tempstatestr="正在播放...";
var playinginfo="";
var cmdstate="直播";
var getqustr="";

//时间相关
var diff=0; 
var now;
var timer;

function GetBrowserType()
    {
        if (window.navigator.userAgent.indexOf("MSIE")>=1)
        {
           return 1;
        }
        else
        {
            if (window.navigator.userAgent.indexOf("Firefox")>=1)
            {
                return 2;
            }
            else
            {
                return 3;
            }
        }
}

function NewEvent(obj,eventstr,func){
	 
  eval("document.getElementById('" + obj + "')." + eventstr + "=" + func)	;
	
}  
         //状态条

function initradio(){
	  //播放条代码		
		 
		 
		//document.body.onunload="DoStop()";
		
        document.write("<div id='radiocontainer' style='width:0px;height:0px;overflow:hidden;'></div>");
        container=document.getElementById("radiocontainer");
	   
		if(!(GetBrowserType()==1))
		{
			if(isplaying==1){
			  create_embed();		
			}   
			
		//	document.getElementById("btnMute").parentNode.style.display="none";
		
	    	//document.getElementById("btnMute").parentNode.innerHTML="";
					//	document.getElementById("radiotimepannel").style.paddingTop="12px";

		//	document.recalc();
		}
		else
		{
			
            var str="<object id=\"player1\"  width=\"0\" height=\"0\" classid=\"CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6\"><param name=\"url\" value=\"" +  file + "\"/><param name=\"volume\" value=\"100\"/><param name=\"AutoStart\" value=\"" +isplaying+ "\"></object>";
            container.innerHTML =str;
			player=document.getElementById("player1");
			
			// NewEvent("btnMute", "onclick", function(e) {   
		   //  SetMute();
	     //	}); 
			
 		}
		
	 
	 //播放按钮
	   NewEvent("btnplay", "onclick", function(e) {  
	        if( isplaying==1){
				DoStop();
				 	
			 }
				else
			{
				DoPlay();	
		    }
			
		}); 
	    NewEvent("btnmsg", "onclick", function(e) {   
		    sendmsg();
	 	}); 
		
		
		 
	 initstateimages();
}
  	
function getEvent() //同时兼容ie和ff的写法 
    {   
        if(document.all)   return window.event;     
        func=getEvent.caller;         
        while(func!=null){   
            var arg0=func.arguments[0]; 
            if(arg0) 
            { 
              if((arg0.constructor==Event || arg0.constructor ==MouseEvent) || (typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation)) 
              {   
              return arg0; 
              } 
            } 
            func=func.caller; 
        } 
        return null; 
} 
function DoStop(){
	 
	             if(!(GetBrowserType()==1))
	    		 {  
				   isplaying=0;
				   player.parentNode.removeChild(player);
				   initstateimages();
				 }
				 else
				 {
			    	 player.controls.stop();
				  
				 }
 }
 
 
 function DoPlay(){
	 
	             if(!(GetBrowserType()==1))
	    		 {  
				   isplaying=1;
				   create_embed();
				   initstateimages();
				   
				 }
				 else
				 {
				    player.controls.play();				  
					document.getElementById("btnplay").src=stop.src;
				 }
 }
 
 
 
 
 
 function create_embed()
     {
            var str="<object id=\"player1\" width=\"0\" height=\"0\" type=\"application/x-mplayer2\"><param name=\"filename\" value=\"" +  file + "\"/><param id='radiovolumn' name=\"volume\" value=\"100\"/></object>";
            container.innerHTML+=str;	
			player=document.getElementById("player1");

 }
 
  
 
function GetMousePos(){
	var e=getEvent();
	 var  left  =   0 ;
	  var  top   =   0 ;
	if(!(GetBrowserType()==1))
	{
		return    {x:e.pageX, y:e.pageY} ;
    }else
	{
		return    {x:e.clientX, y:e.clientY} ;
		
		} 
}
 	
//设置音量	  
function SetVolume(volValue){
	//alert(volValue)
		 
			 if(!(GetBrowserType()==1))
			{
			 player.volume=volValue;
			}
			else
			{
			 player.settings.volume=volValue;
			}
			  
			 
				
		 
	
}

function GetVolume(){
	//alert(volValue)
		 
			  if(!(GetBrowserType()==1))
			{
			 return	player.volume ;
			}
			else
			{
			 return	player.settings.volume ;
			}
			 
			
		 
	
}

function SetMute(){ 
	  if (isplaying)
	  {
		    if(!(GetBrowserType()==1))
			{
				ismute= !ismute;
				if(ismute){
					oldvol=GetVolume();
					
					//for(i=0;i<player.all.length;i++){
					//	alert(player.getAttribute("volumn"))
						//document.getElementById("radiovolumn").value=0;
						//alert(document.getElementById("radiovolumn").value);
						//alert(player.all[1] );
				   // }
					
					 
					SetVolume(0)
			    }else
				{
					SetVolume(oldvol);
			    }
				
			 }else
			 {
					
			  player.settings.Mute= !(player.settings.Mute);		 
		      ismute=player.settings.Mute;	
			 } 
		 
		 
		 if(ismute){		
			document.getElementById("btnMute").src=Voice.src;
		}else
		{
			document.getElementById("btnMute").src=Voice1.src;
		}
	  }	
}
   

function move(){
	// alert(getEvent().button); 
 var key;
 
  if(!(GetBrowserType()==1))
	{
		key=(isplaying==1)&&(!ismute);
	}
	else
	{
		key=getEvent().button==1&&(isplaying==1)&&(!ismute);
	}
				 
				 
 
  if (key){
    left=temp1+getEvent().clientX-x-baseLeft
   
	  
	 
    if ((left<=Maxvol)&&(left>=Minvol))
	{
      theImg.style.left=left + "px";
	 // document.getElementById("a2").innerHTML=(left);
	  }
     else 
       if(left>Maxvol) 
         theImg.style.left=Maxvol + "px"
         else
           theImg.style.left=Minvol + "px"
   // document.form1.pos.value=theImg.style.pixelLeft
    return false
  }
  
  
}

function enddrag(){
  
 //这里设置音量
 //alert(123);
 if (isplaying==1){
   cur=getPosition(theImg).x -baseLeft;
   //alert(cur)
   cur=Math.floor((cur)/(Maxvol-Minvol)*(100)); 
   SetVolume(cur);
  // alert(cur);
   
   document.onmousemove=null;
  } 

}


function begindrag(Elm){
	  //if (!document.all)
	  //  return
	  if (isplaying==0)
		return   
	  temp1=getPosition(Elm).x 
	   // alert(temp1);
	  theImg=Elm
	  x=GetMousePos().x;
	  
		 
	  baseLeft=getPosition(theImg.parentNode).x;
	// alert(baseLeft)
	  //  alert(x)
	  document.onmousemove=move     
}

 function  getPosition(e)   {
		   var  left  =   0 ;
		   var  top   =   0 ;
		
		   while  (e.offsetParent)  {
		    // alert(e.offsetParent);
			left  +=  e.offsetLeft;
			top  +=  e.offsetTop;
			e  =  e.offsetParent;
	       } 	 
		  left  +=  e.offsetLeft;
		  top  +=  e.offsetTop;		
		  return    {x:left, y:top} ;
		}  
		
//SetVolume(100);//初始化音量	  
//******************************

function RadioSate(lNewState){
    isplaying=0;
     switch (lNewState) {
	    case mpPlaying:	
		    isplaying=1;
		    if(playinginfo == "")
		     {tempstatestr="正在播放青檬音乐台...";}
			else
			  {
				    tempstatestr=playinginfo;
				   //tempstatestr="正在播放青檬音乐台..."
			  }
			 break;	
	    case mpBuffering:  		     
             tempstatestr="缓冲..." ;
             break;		
		case mpTransitioning:
		     
			tempstatestr ="正连接到" + "" + "...";
		break;
		case mpPaused:
		    
			tempstatestr= "暂停直播";
		break;
		case mpStopped:
			tempstatestr= "点击收听";
		break;
		case mpReconnection:
			tempstatestr= "重新连接...";
		break;
		case mpMediaEnded:
			tempstatestr= "停止直播";
		break;	
		case mpUndefined:
			tempstatestr= "连接超时";
		break;		
	  
	 }
		
	initstateimages();
		 
		//alert(statebar);]
	 
 	statebar.innerHTML=tempstatestr;
	   //alert(lNewState);
 }
	
  function initstateimages(){
		
		if(isplaying==1){
			document.getElementById("btnplay").src=stop.src;
			 document.getElementById("stateimg").src=playimg.src;
		//	setstatebar();

			
		}else
		{
			document.getElementById("btnplay").src=play.src;			
		 document.getElementById("stateimg").src=stopimg.src;
			statebar.innerHTML="点击收听";

		}
		
  }
 
function sendmsg(){
      var msgname=  document.getElementById("textNickName");
      var msgcontent=  document.getElementById("textMSG");	
	  if(msgname.value=='' || msgname.value=='你的昵称')
	  {
	     alert('请输入你的昵称');
		 msgname.focus();
		 return;
	  }
	  if(msgcontent.value=='' || msgcontent.value=='留言成功!'  || msgcontent.value=='想说的话' )
	  {
	     alert('请输入纸条内容');
		 msgcontent.focus();
		 return;
	  }
	  
	  if(msgcontent.length>400){		  
		   alert('纸条内容请在400字内');
		 msgcontent.focus();
		 return;
	  }
	  
	  //alert(msgname )
	 var msgsrc= "http://qmoon.rbc.cn/iradio/services/sendmsg.asmx/sendnewmsg2?radio="+ encodeURI("音乐台")+"&name=" + encodeURI(msgname.value  ) + "&content=" + encodeURI(msgcontent.value) + "";
     var msg=document.getElementById("msg");
      msg.src=msgsrc;
	  msg.style.display="none";
	  //document.body.appendChild(msg);	
	  msgcontent.value=("留言成功!");   
   }

//取得节目
 function makeRequest(radioid) {
    
      document.writeln("<script language=\"JScript\" event=\"ScriptCommand(sType, sParam)\" for=\"player1\" >");
		document.writeln("       switch(sType)");
		document.writeln("             {");
		document.writeln("              case \"now\":");
		document.writeln("                    commandText(sParam);");
		document.writeln("                    break;");
		document.writeln("              case \"energy\":                    ");
		document.writeln("                    break;");
		document.writeln("              case \"time\":                    ");
	 
         document.writeln("        var dd = new Date(sParam)	 ");
	     document.writeln("         var dd1 = new Date();	 ");
	    document.writeln("      diff= dd1-dd; ");
         document.writeln("     showtime();");               
		
		document.writeln("                    break;");
		document.writeln("               case \"music\":                   ");
		document.writeln("               Qmoon_gequ(sParam);                   ");

		document.writeln("                    break;");
		document.writeln("        }");
		document.writeln("<\/script>");
		document.writeln("<script charset=\"UTF-8\" type=\"text\/javascript\" src=\"http://www.911pop.com/qmoonplayer/getProgInfo2.aspx?radioid=" +nowradioid+ "\"><\/script>");
  }
  
  var timeout0,timeout1,timeout2
  
  function alertContents(http_request2,radioid)
   { 
   
    // var timeout=eval("timeout" + radioid );
     if (http_request2.readyState == 4)
     {
          if (http_request2.status == 200)
          {
          
	        var str=http_request2.responseText;
	        commandText(str,radioid);
	       
	      //  if (timeout) clearTimeout(timeout);
	      //  var tspan=str.substring(str.lastIndexOf("||") +2);
		
		   // timeout=setTimeout("makeRequest(" + radioid + ");",tspan)
    		 
          }
          else{
          
            // timeout=setTimeout("makeRequest(" + radioid + ");",5000)
          }
          
      }
   }
   

   function commandText(str,radioid){
     
      var returnValue=str.split("||");
     // document.getElementById("progimg" + radioid ).src=returnValue[0];
 
			
			//  playinginfo="<b>" + returnValue[1] + "</b><br/>主题:" + returnValue[2] + " <br/>DJ：" +   returnValue[3] +"";
			
		 document.getElementById("prog_now").innerHTML="<b>" + returnValue[1] + "</b><br/>"+ (returnValue[2]==""?"":"主题:" + returnValue[2] + " <br/>") + "DJ：" +   returnValue[3] +"";
		 
	
		  
		  
			 //  document.getElementById("prog_titlename").innerHTML="主持人:"; 
			   document.getElementById("prog_img").src=returnValue[0];
			 
			  document.getElementById("prog_img").src=returnValue[0]//.replace(".gif", "s.gif");
			  
			   document.getElementById("prog_next").innerHTML="即将播出：" + returnValue[5]  +"<br/>节目主题：" + returnValue[6]
			   
			  document.getElementById("prog_dj").innerHTML  = "DJ:" + returnValue[7]  ; 
			    
			  if(nowradioid==0){
	  // document.getElementById("prog_name").innerHTML=returnValue[2];
	  // document.getElementById("prog_title").innerHTML=returnValue[3];
		 }
	  
	   
		 
     
	   cmdstate= returnValue[4];
	  // setstatebar();
		//var timeout=eval("timeout" + radioid );
	    //if (timeout) clearTimeout(timeout);
	    //var tspan=str.substring(str.lastIndexOf("||") +2);		
	   // timeout=setTimeout("makeRequest(" + radioid + ");",tspan)
	 //  alert(playinginfo);   		
   }
   function getmaxlentext(str,len){
      if(str.toString().length > len){
         return "<span title='" + str + "'>" + str.toString().substring(0,len) + "</span>" ;
      
      }   
      else{
        return str;
      }
   }
  
    function setstatebar(){
	   if(isplaying==1){
		  if(getqustr != ""){
			  document.getElementById("statebar").innerHTML=getqustr;
			  
		  }else if(playinginfo != "")
		  {
			   document.getElementById("statebar").innerHTML=playinginfo;
		  }else
		  {
			   document.getElementById("statebar").innerHTML="正在播放青檬音乐台...";
			  }
	      	   
	   }	   
   }
   
   
function Qmoon_gequ(gequtext)
   {   
       
        var gequinput=gequtext.split("||");
          if(gequinput[5]=="false"||cmdstate=="录播")
          {
            getqustr="";
          }
          else
          {
            getqustr= "<font color='#55F649'>PLAYING:</font><BR>" + gequinput[0]+"<br>《"+gequinput[1]+"》" +"";
           
          }
		  
		  //setstatebar();
		 document.getElementById("gequbar").innerHTML=getqustr;
		  
  }
function showtime2(){ 
		  var hours = now.getHours();
		  var minutes = now.getMinutes();
		  var seconds = now.getSeconds();
		  document.getElementById('div123').style.width=minutes*2.91+"px";   
		  document.getElementById("labtime").innerHTML=""+((hours <10) ? "0"+hours : hours)+":"+((minutes < 10) ? "0"+minutes : minutes)+":"+((seconds < 10) ? "0"+ seconds : seconds)+" " ;		
		 now= new Date( now.getTime() +1000); 
		 
}
function showtime(){
  var d = new Date();
  now =new Date(d-diff);		   
 if(!timer)timer= setInterval("showtime2();",1000);
}



function showtime3(){
		  var d = new Date();
		  var now=new Date(d-diff);
		  if(isNaN(now)){
			var hours = d.getHours();
			var minutes = d.getMinutes();
			var seconds = d.getSeconds();
			document.getElementById("labtime").innerHTML=""+((hours <10) ? "0"+hours : hours)+":"+((minutes < 10) ? "0"+minutes : minutes)+":"+((seconds < 10) ? "0"+ seconds : seconds)+" " ;
			 document.getElementById('div123').style.width=minutes*4.13+"px";       
			setTimeout("showtime()",1000);
		  }
		  else{
		  var hours = now.getHours();
		  var minutes = now.getMinutes();
		  var seconds = now.getSeconds()
		  document.getElementById("labtime").innerHTML=""+((hours <10) ? "0"+hours : hours)+":"+((minutes < 10) ? "0"+minutes : minutes)+":"+((seconds < 10) ? "0"+ seconds : seconds)+" " ;
		  // document.getElementById('div123').style.width=minutes*2.91+"px";       
		  setTimeout("showtime()",1000);
			}
}