//======================================================================================================================================================
// Player JS for Media Player V1.00
//======================================================================================================================================================
//======================================================================================================================================================
// Function : 	showPlayer
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
// For		:	show player
// Return	:	true or false	
//background-color: #008000
//======================================================================================================================================================
function loadPlayer(position,url,width,height,linkurl,type){
	//		
	//alert(type);
	switch(type)
	{
                  case 'wav' 	: 
                  case 'rm' 	: 
                  case 'rv' 	: 
                  case 'rmvb' 	: 
		                  	return  loadHelixPlayer(position,url,width,height,linkurl);break;
                  case 'wma' 	: 
                  			return  loadMediaWMAPlayer(position,url,width,height,linkurl);break;
                  case 'wmv' 	: 
                  case 'asf' 	: 
                  			return  loadMediaPlayer(position,url,width,height,linkurl);break;
                  case 'mov' 		: document.write('No support mov and QuickTime format!!');//return  loadQTPlayer(position,url,width,height,linkurl);break;
                  case 'mp3' 		: return  loadMP3Player(position,url,width,height,linkurl);break;
                  case 'mp4' 		: document.write('No support mp4 format!!');break;//return  loadMP4Player(position,url,width,height,linkurl);break;
                  case 'flv' 		: document.write('No support flv format!!'); break;
		default  		: return  loadHelixPlayer(position,url,width,height,linkurl);
	}
}
//======================================================================================================================================================
// Function : 	showPlayer
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
//			   type  ==> helix�Bmedia�Bflv
// For		:	show player
// Return	:	true or false	
//background-color: #008000
//======================================================================================================================================================
function showPlayer(position,url,width,height,linkurl,type,isdebug){
	//	
    var playerInfo =  loadPlayer(position,url,width,height,linkurl,type);
 	var rtnval =playerInfo;
	//var isdebug=true;				
	if (isdebug) 	document.write("<textarea  cols=100 rows=30 name='1111' >");
	document.write(rtnval);
	if (isdebug) 	document.write("</textarea>");
}
function showPlayer_backup(position,url,width,height,linkurl,type,isdebug){
	//	
    var playerInfo =  loadPlayer(position,url,width,height,linkurl,type);
 	var rtnval =""
				+"<div id='"+position+"-c'    "+" "
	 						+"style='z-index:4;  padding:1px;  border-style:solid; border-width:1px; visibility: visible; "
	 						+" width: "+(width+2)+"px; height: "+(height+2)+"px;  background-color: #FFFFFF '  "
							+" > \n"
						+playerInfo 			
				+"</div>\n"
				+"";
	//var isdebug=true;				
	if (isdebug) 	document.write("<textarea  cols=100 rows=30 name='1111' >");
	document.write(rtnval);
	if (isdebug) 	document.write("</textarea>");
}
//======================================================================================================================================================
// Function : 	showPlayerWithAbsolute
// Param	:	position,url,x,y,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				x,x for div.
//				y,y fro div.
//				width,width for player and div.
//				height,height fro player and div.
//			   type  ==> helix�Bmedia�Bflv
// For		:	show player
// Return	:	true or false	
//======================================================================================================================================================
function showPlayerWithAbsolute(position,url,x,y,width,height,linkurl,type,isdebug){
	//	
    var playerInfo =  loadPlayer(position,url,width,height,linkurl,type);
 	var rtnval =""
				+"<div id='"+position+"-c'    "+" "
	 						+"style='z-index:4;  padding:1px;position: absolute;  border-style:solid; border-width:1px; visibility: visible; "
	 						+"left: "+(x-1)+"px; top: "+(y-1)+"px; width: "+(width+2)+"px; height: "+(height+2)+"px; '  "
							+" > "
						+playerInfo 			
				+"</div>"
				+"";
	if (isdebug) document.write("<textarea  cols=100 rows=30 name='1111' >");
	document.write(rtnval);
	if (isdebug) document.write("</textarea>");
}
//======================================================================================================================================================
// Function : 	loadMediaPlayer
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
//				uiModeTo  , invisible, none, mini, full
// For		:	load player show html
// Return	:	string 
//======================================================================================================================================================
function loadMediaWMAPlayer(position,url,width,height,linkurl){
	var uiMode='none';  //full    mini     none
	loadMediaWMAPlayer2(position,url,width,height,linkurl,uiMode);
}

function loadMediaWMAPlayer2(position,url,width,height,linkurl,uiMode){
	//	
    var objectdat = '';
	var objectend = '';
    var isIE3Up = checkBrowserIsIE3Up();
   	var objectID  = '';		
	var autoStart='1';
	var currentPosition='0';
	var enableContextMenu='1';
	var enabled='1';
	var fullScreen='0';
	var playCount='1';
	var rate='1';
	var stretchToFit='1';
	//var uiMode='full';
	var ShowStatusBar='0';
	var LinkTo='';
	//
	if ((linkurl!=null)&&(linkurl.length>0)) {		LinkTo=	" onmousedown=gotoUrl('"+linkurl+"') ";	}
	//if (uiMode.length<4) uiMode='none';
	//
		objectID="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6";
		//objectID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95";
		//ShowDisplay   ShowControls stretchToFit
	if(isIE3Up){		
			objectdat = ""
						+"<object classid='"+objectID+"' id='"+position
							+"'  width="+width+" height="+height
							+" type='application/x-oleobject' "
							+" standby='Loading Microsoft Windows Media Player components...'"
							+LinkTo
							+"    > "
							+ " <param name='URL' value='"+url+"'>"
							+ "<param name='autoStart' 			value='"+autoStart+"'>\n"	
							+ "<param name='currentPosition' 		value='"+currentPosition+"'>\n"
							+ "<param name='enableContextMenu' 	value='"+enableContextMenu+"'>\n"
							+ "<param name='enabled' 			value='"+enabled+"'>\n"
							+ "<param name='fullScreen'		 	value='"+fullScreen+"'>\n"
							+ "<param name='playCount' 			value='"+playCount+"'>\n"
							+ "<param name='rate' 				value='"+rate+"'>\n"
							+ "<param name='stretchToFit' 		value='"+stretchToFit+"'>\n"
							+ "<param name='uiMode' 			value='"+uiMode+"'>\n"
							+ "<param name='ShowStatusBar' 		value='"+ShowStatusBar+"'>\n"						
						+"</object>";
	}else{
			objectdat = ""
						+"<embed  width="+width+" height="+height + " id='"+position+"' "							
							+" name='"+position+"' "   
							+" type='application/x-mplayer2' "
							+" pluginspage='http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/' "
							+LinkTo
							//+" onclick=goToURL('"+linkurl+"')  "
							+" src='"+url+"'   \n"
							+" autoStart='"+autoStart+"'   \n"
							+" currentPosition='"+currentPosition+"'   \n"
							+" enableContextMenu='"+enableContextMenu+"'   \n"
							+" enabled='"+enabled+"'   \n"
							+" fullScreen='"+fullScreen+"'   \n"
							+" playCount='"+playCount+"'   \n"
							+" rate='"+rate+"'   \n"
							+" stretchToFit='"+stretchToFit+"'   \n"
							+" uiMode='"+uiMode+"'   \n"
							+" ShowStatusBar='"+ShowStatusBar+"'   \n"
						+"</embed>";
	
	}
	//
 	var rtnval =""+
				objectdat +			
				"";
	return rtnval ;
}

//======================================================================================================================================================
// Function : 	loadMediaPlayer
//======================================================================================================================================================
function loadMediaPlayer(position,url,width,height,linkurl){
	
	var uiMode='full';  //full    mini     none
	var autoStart='1';
	return loadMediaPlayer2(position,url,width,height,linkurl,uiMode,autoStart);
}

function loadMediaPlayer2(position,url,width,height,linkurl,uiMode,autoStart){
	//	
    var objectdat = '';
	var objectend = '';
    var isIE3Up = checkBrowserIsIE3Up();
   	var objectID  = '';		
	//var autoStart='1';
	var currentPosition='0';
	var enableContextMenu='1';
	var enabled='1';
	var fullScreen='0';
	var playCount='1';
	var rate='1';
	var stretchToFit='1';
	//var uiMode='none';
	var ShowStatusBar='1';
	var LinkTo='';
	//
	var objectType='';
	//MSIE: type="video/x-ms-wmv"
	// FireFox: type="application/x-ms-wmp"   
	//if ((linkurl!=null)&&(linkurl.length>0)) {		LinkTo=	" onmousedown=gotoUrl('"+linkurl+"') ";	}
	//if (uiMode.length<4) uiMode='none';
	//
	if(isIE3Up){
		objectID="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6";
		objectType="video/x-ms-wmv";
		//objectID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95";
		//ShowDisplay   ShowControls stretchToFit
			objectdat = ""
						+"<object classid='"+objectID+"' id='"+position
							+"'  width="+width+" height="+height
							+" type='"+objectType+"' "
							//+" type='application/x-oleobject' "
							+" standby='Loading Microsoft Windows Media Player components...'"
							+LinkTo
							+"    > "
							+ " <param name='URL' value='"+url+"'>"
							+ "<param name='autoStart' 			value='"+autoStart+"'>\n"	
							+ "<param name='currentPosition' 		value='"+currentPosition+"'>\n"
							+ "<param name='enableContextMenu' 	value='"+enableContextMenu+"'>\n"
							+ "<param name='enabled' 			value='"+enabled+"'>\n"
							+ "<param name='fullScreen'		 	value='"+fullScreen+"'>\n"
							+ "<param name='playCount' 			value='"+playCount+"'>\n"
							+ "<param name='rate' 				value='"+rate+"'>\n"
							+ "<param name='stretchToFit' 		value='"+stretchToFit+"'>\n"
							+ "<param name='uiMode' 			value='"+uiMode+"'>\n"
							+ "<param name='ShowStatusBar' 		value='"+ShowStatusBar+"'>\n"						
						+"</object>";
	}else{
		objectID="clsid:6BF52A52-394A-11D3-B153-00C04F79FAA6";
		objectType="application/x-ms-wmp";
		//objectID="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95";
		//ShowDisplay   ShowControls stretchToFit
			objectdat = ""
						+"<embed  width="+width+" height="+height + " id='"+position+"' "							
							+" name='"+position+"' "   
							//+" type='application/x-mplayer2' "
							+" type='"+objectType+"' "
							+" pluginspage='http://www.microsoft.com/Windows/Downloads/Contents/Products/MediaPlayer/' "
							+LinkTo
							//+" onclick=goToURL('"+linkurl+"')  "
							+" src='"+url+"'   \n"
							+" autoStart='"+autoStart+"'   \n"
							+" currentPosition='"+currentPosition+"'   \n"
							+" enableContextMenu='"+enableContextMenu+"'   \n"
							+" enabled='"+enabled+"'   \n"
							+" fullScreen='"+fullScreen+"'   \n"
							+" playCount='"+playCount+"'   \n"
							+" rate='"+rate+"'   \n"
							+" stretchToFit='"+stretchToFit+"'   \n"
							+" uiMode='"+uiMode+"'   \n"
							+" ShowStatusBar='"+ShowStatusBar+"'   \n"
							+" > "
						+"</embed>";
	
	}
	//
 	var rtnval =""+
				objectdat +			
				"";
	return rtnval ;
}
//======================================================================================================================================================
// Function : 	loadMediaObjectParams
// For 		:   setting params
//======================================================================================================================================================
// Media Player Control Parameters 
//
// Parameter  			Default  		Description
//--------------------------------------------------------------------------------------------------------------------------------------------------------
//autoStart 			true 			Specifies or retrieves a value indicating whether the current media item begins playing automatically.
//balance 				0 				Specifies the current stereo balance.
//										Values range from ?100 to 100.
//baseURL 								Specifies the base URL used for relative path resolution with URL script commands that are embedded in media items.
//captioningID 			0 				Specifies the name of the element displaying the captioning.
//currentMarker 		0 				Specifies the current marker number.
//currentPosition 		0 				Specifies the current position in the media item in seconds.
//defaultFrame 			- 				Specifies the name of the frame used to display a URL.
//enableContextMenu 	true 			Specifies a value indicating whether to enable the context menu, which appears when the right mouse button is clicked.
//enabled 				false 			Specifies whether the Windows Media Player control is enabled.
//enableErrorDialogs  	false			Specifies enable Error Dialogs.
//fullScreen 			false 			Specifies whether video content is played back in full-screen mode.
//InvokeURLs 			true 			Specifies a value indicating whether URL events should launch a Web browser.
//Mute 					false 			Specifies if audio is muted.
//PlayCount 			1 				Specifies the number of times a media item will play. Minimum value of one.
//Rate 					1.0 			Specifies the playback rate.
//						0.5 			equates to half the normal playback speed, 
//						2 				equates to twice.
//stretchToFit 			false 			Specifies whether video displayed by the control automatically sizes to fit the video window, 
//										when the video window is larger than the dimensions of the video image.
//uiMode 				full 			Specifies which controls are shown in the user interface.
//										Possible values: invisible, none, mini, full.
//URL 					- 				Specifies the name of the media item to play.
//										You can specify a local filename or a URL.
//Volume 				Last setting 	Zero specifies no volume and 100 specifies full volume.
//windowlessVideo 		false 			Specifies or retrieves a value indicating whether the Windows Media Player control renders video in windowless mode.
//										When windowlessVideo is set to true, the Player control renders video directly in the client area, 
//										so you can apply special effects or layer the video with text.
//======================================================================================================================================================									
//======================================================================================================================================================
// Function : 	loadHelixPlayer
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
// For		:	load player show html
// Return	:	string 
//======================================================================================================================================================
function loadHelixPlayer(position,url,width,height,linkurl){
	//	
    var objectdat = '';
    var objectParams = '';
	var objectend = '';
    var isIE3Up = checkBrowserIsIE3Up();
   	var objectID  = '';		
	//'ImageWindow   All  ControlPanel  PlayButton PauseButton StopButton FFCtrl RWCtrl  MuteCtrl   MuteVolume VolumeSlider TACCtrl   
	//HomeCtrl InfoVolumePanel InfoPanel  StatusBar  StatusField  PositionField
	// �ϥ�  ,  �ӰϹj   �p==>  ImageWindow,StatusBar  
	var CONTROLS='ImageWindow';
	var CONSOLE='clip1';
	var AutoStart='true';
	var ShowStatusBar='1';
	var ShowControls='1';
	var ShowDisplay='1';
	
	//clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA
		objectID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA";
		//
	if(isIE3Up)	{
        objectdat = "<object classid='"+objectID+"' id='"+position
					+"'  width="+width+" height="+height
					+" onmousedown=gotoUrl('"+linkurl+"') "
					+"  > \n"
					+"<param name='src' 			value='"+url+"'> \n"					
					+"<param name='ShowDisplay'  	value='"+ShowDisplay+"'> \n"
					+"<param name='ShowStatusBar'  	value='"+ShowStatusBar+"'> \n"
					+"<param name='ShowControls' 	value='"+ShowControls+"'>\n"
					+"<param name='AutoStart' 		value='"+AutoStart+"'> \n"
					+"<param name='CONTROLS'  	value='"+CONTROLS+"'>\n"
					//+"<param name='CONSOLE' 		value='"+CONSOLE+"'> \n"
					//+"<param name='PlayCount' 		value='0'> \n"
					+"</object> \n";
 	}else{
        objectdat = ""
					+"<embed  width="+width+" height="+height + " id='"+position
						+"' name='"+position+"'  NOJAVA=true   "
						+" type='audio/x-pn-realaudio-plugin' "
						+" CONTROLS='"+CONTROLS+"' "
						//+" CONSOLE='"+CONSOLE+"' "
						+" AUTOSTART='"+AutoStart+"' "
						+" ShowStatusBar='"+ShowStatusBar+"'  "
						+" ShowControls='"+ShowControls+"'  "
						+" ShowDisplay='"+ShowDisplay+"'  "						
						+" onmousedown=gotoUrl('"+linkurl+"') "
						+" src='"+url+"'   > \n"
					+"</embed> \n";
					
	}
	//
 	var rtnval =""+
				objectdat +			
				"";
	return rtnval ;
}
//======================================================================================================================================================
// Function : 	loadQTPlayer
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
// For		:	load player show html
// Return	:	string 
//======================================================================================================================================================

function loadQTPlayer(position,url,width,height,linkurl){
	var objectdat = ""
				  +"<OBJECT classid='clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B' "
							+" width='"+width+"'  height='"+height+"' codebase='http://www.apple.com/qtactivex/qtplugin.cab'>"
				  +"<param name='src' value='"+url+"'>"
				  +"<param name='autoplay' value='true'>"
				  +"<param name='controller' value='false'>"
				  +"<param name='loop' value='false'>"
				  +"<EMBED src='"+url+"' width='"+width+"' height='"+height+"' autoplay='true'"
					+"controller='false' loop='false' bgcolor='#000000' pluginspage='http://www.apple.com/quicktime/download/'  >"
					+"</EMBED>"
				  +"</OBJECT>";
 	var rtnval =""+
				objectdat +			
				"";
	return rtnval ;

}

//======================================================================================================================================================
// Function : 	loadMP4Player
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
// For		:	load player show html
// Return	:	string 
//======================================================================================================================================================

function loadMP4Player(position,url,width,height,linkurl){
	var objectdat = ""
				  +"<OBJECT classid='clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B' "
							+" width='"+width+"'  height='"+height+"' codebase='http://www.apple.com/qtactivex/qtplugin.cab'>"
				  +"<param name='src' value='"+url+"'>"
				  +"<param name='autoplay' value='true'>"
				  +"<param name='controller' value='false'>"
				  +"<param name='loop' value='false'>"
				  +"<EMBED src='"+url+"' width='"+width+"' height='"+height+"' autoplay='true'"
					+"controller='false' loop='false' bgcolor='#000000' pluginspage='http://www.apple.com/quicktime/download/'  >"
					+"</EMBED>"
				  +"</OBJECT>";
 	var rtnval =""+
				objectdat +			
				"";
	return rtnval ;

}

//======================================================================================================================================================
// Function : 	loadMP3Player
// Param	:	position,url,width,height
//				position,for id ,player id and div id.
//				url,media file url for play.
//				width,width for player and div.
//				height,height fro player and div.
// For		:	load player show html
// Return	:	string 
//======================================================================================================================================================

function loadMP3Player(position,url,width,height,linkurl){
	//	
    var objectdat = '';
    var objectParams = '';
	var objectend = '';
    var isIE3Up = checkBrowserIsIE3Up();
   	var objectID  = '';		
	//'ImageWindow   All  ControlPanel  PlayButton PauseButton StopButton FFCtrl RWCtrl  MuteCtrl   MuteVolume VolumeSlider TACCtrl   
	//HomeCtrl InfoVolumePanel InfoPanel  StatusBar  StatusField  PositionField
	// �ϥ�  ,  �ӰϹj   �p==>  ImageWindow,StatusBar  
	var CONTROLS='ControlPanel,StatusBar';
	var CONSOLE='clip1';
	var AutoStart='true';
	var ShowStatusBar='1';
	var ShowControls='1';
	var ShowDisplay='1';
	
	//clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA
		objectID="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA";
		//
	if(isIE3Up)	{
        objectdat = "<object classid='"+objectID+"' id='"+position
					+"'  width="+width+" height="+height
					+" onmousedown=gotoUrl('"+linkurl+"') "
					+"  > \n"
						+"<param name='src' 			value='"+url+"'> \n"					
						+"<param name='ShowDisplay'  	value='"+ShowDisplay+"'> \n"
						+"<param name='ShowStatusBar'  	value='"+ShowStatusBar+"'> \n"
						+"<param name='ShowControls' 	value='"+ShowControls+"'>\n"
						+"<param name='AutoStart' 		value='"+AutoStart+"'> \n"
						+"<param name='CONTROLS'  	value='"+CONTROLS+"'>\n"
						//+"<param name='CONSOLE' 		value='"+CONSOLE+"'> \n"
						+"<param name='PlayCount' 		value='0'> \n"
					+"</object> \n";
	}else{
        objectdat = "<embed  width="+width+" height="+height + " id='"+position
						+"' name='"+position+"'  NOJAVA=true   "
						+" type='audio/x-pn-realaudio-plugin' "
						+" CONTROLS='"+CONTROLS+"' "
						//+" CONSOLE='"+CONSOLE+"' "
						+" AUTOSTART='"+AutoStart+"' "
						+" ShowStatusBar='"+ShowStatusBar+"'  "
						+" ShowControls='"+ShowControls+"'  "
						+" ShowDisplay='"+ShowDisplay+"'  "						
						+" onmousedown=gotoUrl('"+linkurl+"') "
						+" src='"+url+"'   > \n"
					+"</embed> \n";
    }	
	//
 	var rtnval =""+
				objectdat +			
				"";
	return rtnval ;
}
function gotoUrl(url) {
 //window.location=url;
 window.open(url);
}
//======================================================================================================================================================
// Function : 	checkBrowserIsMoz
// For		:	Check Browser is Mozila Version or Not
// Return	:	true or false	
//======================================================================================================================================================
function checkBrowserIsMoz(){
	var agt = navigator.userAgent;
	var ver = parseInt( navigator.appVersion );
    var isMoz = ( ( ( agt.indexOf( "Mozilla" ) != -1 ) &&
                    ( agt.indexOf( "spoofer" ) == -1 ) &&
                    ( agt.indexOf( "compatible" ) == -1 ) &&
                    ( agt.indexOf( "opera" ) == -1 ) &&
                    ( agt.indexOf( "webtv" ) == -1 ) ) );
    return isMoz ;
}
//======================================================================================================================================================
// Function : 	checkBrowserIsIE3Up
// For		:	Check Browser is IE Version 3Up or Not
// Return	:	true or false	
//======================================================================================================================================================
function checkBrowserIsIE3Up()
{
	var agt = navigator.userAgent;
	var ver = parseInt( navigator.appVersion );
	var isIE3Up=( ( agt.indexOf( "MSIE" ) != -1 )&& ( ver >= 3 ) );
    return  isIE3Up;
}
