
var loadingbar = document.getElementById("Loading_Bar")
//var BufferTxt= document.getElementById("Bftxt")
 
var myplayer = document.getElementById("myplayer");  // 미디어 플레이용 object입니다.
var Duration = document.getElementById("totaltime"); // 총시간입니다 span 입니다.     
var curenttime = document.getElementById("curenttime"); // 진행중인 시간입니다 span입니다.
var TimeBarScroll = document.getElementById("TimeBarScroll"); //타임바스크롤입니다. div입니다.
var TimeBar = document.getElementById("TimeBar"); //타임바입니다. div입니다.
// TimeBar를 이미지가 아닌 div로 만든 이유는 left와 top을 이용해서 이동시키기 위해서입니다.
// div에 Background로 이미지 적용하였습니다.
//이것은 volBarScroll에도 적용합니다.
var VolumeBar = document.getElementById("VolumeBar"); // 볼륨바입니다. div
var VolBarScorll = document.getElementById("VolBarScorll"); //volumebarscroll 입니다.
 

var oldPos = 0;            //클릭시 마우스좌표 
var oldPixel = 0;        //클릭시 슬라이더 좌표 
var bDrag = false;            //움직임, 바를 드래그할때는 영상을 멈추게하기 위해서입니다. 
var bPlay = false;            //플레이중 
var VolSet =document.getElementById("VolSet"); // 볼륨 아이콘입니다. 이미지입니다.
    

  
function Play()
{ 
	init();
   myplayer.controls.play();
   bPlay=true;   // 플레이가 되면 bPlay를 true로 주면서 플레이중이라는것을 기록하여야 합니다.
   BtnStop.src = "/images/btn_stopon.gif";
   BtnPlay.src = "/images/btn_play.gif";
   BtnPause.src = "/images/btn_pauseon.gif";
}
 

function Pause()
{      
   myplayer.controls.pause(); 
	BtnStop.src = "/images/btn_stopon.gif";
	BtnPlay.src = "/images/btn_playon.gif";
	BtnPause.src = "/images/btn_pause.gif";
}
 
function Stop()
{   myplayer.controls.currentposition=0;
    bPlay=false;
    myplayer.close();
	BtnStop.src = "/images/btn_stop.gif";
	BtnPlay.src = "/images/btn_playon.gif";
    BtnPause.src = "/images/btn_pause.gif";
    // close를 사용하는 이유는 stop()을 사용할경우 화면이 멈추게 되는현상이 있습니다.
    // close를 사용함으로 object에서 영상이 빠지기 때문에 stop하는 느낌이 나옵니다.       
    init();
}
 

function mute()
{
    // myplayer.settings.mute=(myplayer.settings.mute ? false : true);      
    
    //온오프 로직입니다.
    // 음소거 버튼을 누를적마다 false,true가 반복됩니다.
    if(myplayer.settings.mute==false) 
    {          
         VolSet.src = "/images/ic_volumeoff.gif"; 
         myplayer.settings.mute = true; 
    } 
    else 
    {          
        VolSet.src = "/images/ic_volume.gif"; 
        myplayer.settings.mute = false; 
    }    
} 

 

function FullSize()
{       
    // 플레이의 상태값을 알아오기 위해서는 playstate를 사용합니다.
    //이와 비슷한 것으로 openstate가 있습니다.
    // 플레이가 되는 중에만 fullsize가 되어야하기 떄문에 상태값이 필요합니다.
    if(myplayer.playstate == 3 || myplayer.playstate == 2)
    {
        myplayer.setAttribute("fullScreen", "True");
    }    
} 
 

// 초 계산을 하는 함수입니다.
// 분,초로 구분을 하여야 하기때문에 시간 연산함수가 필요합니다.
function TimeFormat(totalsecond) 
{  
    var second = parseInt(totalsecond) % 60;     
    var minute = parseInt(totalsecond / 60);       
    return ((minute < 10)?"0":"")+minute+":" + ((second < 10)?"0":"")+second; 
} 
 

// timebar에 마우스가 누른채로 있을때 이벤트가 발생합니다.
function TimeBar_Onmousedown()
{  
 

 if (!bPlay)   return ; 
        
    if (myplayer.controls.CurrentPosition == -1 )        
     //Player.FileName이 설정되어 있지 않으면 걍 리턴해 버린다. 
        return false; 
 

 

   oldPos = event.clientX; 
   bDrag  = true; 
   TrackBar = event.srcElement.parentElement; 
   oldPixel = TimeBar.style.pixelLeft;   
   
   // 마우스를 드래그한채로 움직일때 playmoveslider 함수를 발생시킵니다.
   document.onmousemove = PlayMoveSlider;   
   
   myplayer.controls.pause();
   if(document.all)
      {
        document.onmouseup = PlayStopSlider;    
      }
}
 

function PlayMoveSlider() 
{      
    if (bDrag) 
    { 
        var XPos = oldPixel +  (event.clientX - oldPos);   
        //최초 마우스다운일때 좌표에서 mousemove한 좌표값                         
      
        // 마우스움직임이 플레이어 화면의 크기를 넘어서면 안됩니다.
        // 0부터 화면의 넓이까지를 제한합ㄴ디ㅏ.
        if((0 <= XPos  ) && (XPos <= 66) )  
        {        
            //프로그래스바 이동 
            document.all.TimeBar.style.pixelLeft = XPos;                 
        }   
        return false;
    } 
         
}
 

// 마우스 드래그가 멈추고 마우스를 땔때 이벤트가 발생합니다.
// currentposition은 영상의 현재 시간값을 의미합니다. 즉 마우스를 드래그해서 중간쯤에 놓으면 영상의 시간이 중간으로 옮기게 됩니다.
function PlayStopSlider()
 {      
    bDrag = false;         
    myplayer.controls.currentposition  = Pixel2Pos(TimeBar.style.pixelLeft ) 
    myplayer.controls.play();   
 
    if (myplayer.PlayState == 1)    //일시 중지 일때, 즉 스라이더 움직임에 의해 중단되었을 때만, 다시 실행 
        myplayer.Play();        
        
    document.onmousemove = null; 
    if(document.all)   
        document.onmouseup = null; 
}             
   
//영상의 시간(위치값)과 타임바스크롤의 길이와 연동시킵니다.    
function Pixel2Pos(nPixel) 
{ 
    return parseInt((nPixel) * myplayer.currentmedia.duration / 66); 
    // 영상의 총길이(시간)은 duration입니다.
} 
  
 function getPos(obj, objH)
{  
    obj.value =myplayer.controls.currentPosition;
    objH.value = obj.value;
}
 

function setPos(v)
{ 
    if (v < 0) {
        myplayer.controls.currentPosition = 0;
    } else if (v > MediaPlayer.duration) {
        myplayer.controls.currentPosition = myplayer.currentmedia.duration;
    } else {
        myplayer.controls.currentPosition = v;
    }
}
 

 

// 볼륨을 구현합니다.
var volumeMin = -3000;        
var volumeMax = 0; 
var volumeValue = 0; 
var oldVolume = myplayer.settings.volume; 
var VolumeBar_Size = 28;
var VolumeBar_StartPixel = 0; 
 

 

function VolumeBar_Onmousedown() 
{
    if (!bPlay) return ;
    
    oldPos = event.clientX;    
    oldPixel = VolumeBar.style.pixelLeft;   
    
    bDrag = true; 
    
    document.onmousemove = VolumeMoveSlider;            
    if (document.all) 
        document.onmouseup=VolumeStopSlider;     
}
 

 

 

function VolumeMoveSlider() { 
    if (bDrag) { 
        var XPos = oldPixel + event.clientX - oldPos;    //최초 마우스다운일때 좌표에서 mousemove한 좌표값 
        
        if((0 <= XPos  ) 
            && (XPos <= 28 ) )    
        {          
            VolumeBar.style.pixelLeft = XPos;    //마우스 이동한 만큼 슬라이더 이동 
             
            VolBarScroll.style.width = VolumeBar.style.pixelLeft;             
            var mouseMove = XPos    ;    //마우스이동값 
          
            var currentVolumeValue = mouseMove/28 *100;            
 
                myplayer.settings.volume = currentVolumeValue; 
                //BufferTxt.value=XPos;

        } 
        return false; 
    } 
} 
 

function VolumeStopSlider() { 
    bDrag = false; 
//    oldPixel =VolBarScroll.style.width;
} 
 

function init ()
{ 
 bPlay=false;
 bDrag=false; 
  
 TimeBar.style.pixelLeft=0;
 TimeBarScroll.style.width=0;  

   
 VolumeInit();
}
 

function VolumeInit() { 
 

    //볼륨초기화 
    VolumeBar.style.pixelLeft =  14  ; 
    VolBarScroll.style.width = VolumeBar.style.pixelLeft; 
    myplayer.settings.volume =  50; 
} 
 

 

 

// 상태값이 계속해서 변해야 하는 내용이 있습니다.
// 초(시간)와 타임바스크롤입니다.
// interval을 사용해서 매 순간만다 setStatus()를 실행시킵니다.
function setStatus()
{     
  if (myplayer.playstate==3)
  { 
    // 1초마다 시간 흐름을 기록합니다.      
    curenttime.innerHTML = TimeFormat(Math.round(myplayer.controls.currentposition)); 
    
    var ss =  myplayer.controls.currentposition /myplayer.currentmedia.duration * 66 ;
    if (bDrag==false)
    {
    // 시간흐름에 따른 타임바스크롤을 지행합니다.
    TimeBarScroll.style.width=ss ;
    TimeBar.style.left=ss;
    }
  }
}

 

 

var idTimer;
var myplayer = document.getElementById("myplayer");
Duration.innerHTML = TimeFormat(myplayer.currentmedia.duration); 
 

  
//if(bStart==true)
//{
 idTimer = setInterval("setStatus()", 1000);
 
//}
//else
//{
// clearInterval(idTimer);
//}
 


