var small=true;
var timer=0;
var interval=0;
var scrubx=0;
var volume=0;
var vol=new Array(8);
for (var i=0; i<8; i++) {
  vol[i]=new Image();
  vol[i].src="/img/vol"+i+".gif";
}
function findPlayerPos(id) {
  var obj=document.getElementById(id);
  if (!obj) return 0;
  var left=0;
  if (obj.offsetParent) {
    while (1) {
      left=left+obj.offsetLeft;
      if (!obj.offsetParent) break;
      obj=obj.offsetParent;
    }
  } else if (obj.x) {
    left=left+obj.x;
  }
  return left;    
}

function trackStart() {
  document.body.onmousemove=function(event) {
    var obj=document.getElementById("flv");
    if (!obj) return;
    var px=findPlayerPos("player");
    var scrubber=document.getElementById("scrubber");
    var mx=0;
    if (event) {
      mx=parseInt(event.clientX);
    } else {
      mx=parseInt(window.event.x);
    }
    var buffered=parseInt(document.getElementById("buffertrack").style.width)+4;
    var xoffset=8;
    if (!small) xoffset=148;
    var x=mx-(xoffset+px);
    if (x<5) x=5;
    if (x>buffered) x=buffered;
    scrubber.style.left=x;
    var pos=x-5;
    var duration=obj.getDuration();
    var pct=pos/179;
    pos=duration*pct;
    obj.seekVideo(pos);
    showStatus();
  }
  document.body.onmouseup=function() {
    document.body.onmousemove=null;
  }
}
function flvStart() {
  var obj=document.getElementById("flv");
  if (!obj) return;
  setVolume(2);
  interval=setInterval("showStatus()",200);
}
function flvEnd() {
  if (interval) clearInterval(interval);
  var scrubber=document.getElementById("scrubber");
  scrubber.style.left=5;
  btn=document.getElementById("playbtn");
  btn.innerHTML="Play <img src=\"/img/play.gif\">";
  if (!small) togglePlayerSize(document.getElementById("sizechange"));
}
function playPause(sender) {
  var obj=document.getElementById("flv");
  if (!obj) return;
  var ps=obj.getPlayState();
  if (ps==2) {
    sender.innerHTML="Play <img src=\"/img/play.gif\">";
    obj.pauseVideo();
    clearInterval(interval);
    interval=0;
    return;
  }
  if (ps==3) {
    sender.innerHTML="Pause <img src=\"/img/pause.gif\">";
    interval=setInterval("showStatus()",200);
    obj.playVideo();
    return;
  }
}
function setVolume(v) {
  var obj=document.getElementById("flv");
  if (!obj) return;
  obj.setVolume(v*14);
  for (var i=1; i<8; i++) {
    var img=document.getElementById("vol"+i);
    img.src=vol[3].src;
    if (i<=v) img.src=vol[i].src; else img.src=vol[0].src;
  }
}
function volumeDown() {
  volume--;
  if (volume<0) volume=0;
  setVolume(volume);
}
function volumeUp() {
  volume++;
  if (volume>7) volume=7;
  setVolume(volume);
}
function timeToStr(t) {
  var min=parseInt(t/60);
  var sec=parseInt(t-(min*60));
  if (min<10) { min="0"+min; }
  if (sec<10) { sec="0"+sec; }
  return min+":"+sec;
}
function showStatus() {
  var obj=document.getElementById("flv");
  if (!obj) return;
  var tmp=obj.getFlvInfo();
  var status=tmp.split(":");
  volume=parseInt(status[2]/14);
  var bytesloaded=parseInt(status[0]);
  var bytestotal=parseInt(status[1]);
  var msg="";
  var buffer=document.getElementById("buffertrack");
  if (bytesloaded<bytestotal) {
    var pct=(bytesloaded/bytestotal);
    buffer.style.width=parseInt(180*pct);
  } else {
    buffer.style.width=180;
  }
  var position=obj.getPosition();
  var duration=obj.getDuration();
  var info=document.getElementById("info");
  msg=timeToStr(position);
  var xpos=position/duration;
  info.innerHTML=msg;
  var scrubber=document.getElementById("scrubber");
  if (document.body.onmousemove==null) {
    scrubber.style.left=5+(179*xpos);
  }
}
function togglePlayerSize(sender) {
  var flv=document.getElementById("flv");
  if (!flv) return;
  var fader=document.getElementById("fader");
  var mediaplayer=document.getElementById("mediaplayer");
  var player=document.getElementById("player");
  var controller=document.getElementById("controller");
  var mediaad=document.getElementById("mediaad");
  if (small) {
    document.getElementById("topmenu").scrollIntoView();
    document.body.style.overflow="hidden";
    fader.style.width=document.body.clientWidth;
    fader.style.height=document.body.clientHeight;
    fader.style.visibility="visible";
    fader.style.display="block";
    mediaad.style.visibility="visible";
    mediaad.style.display="block";
    small=false;
    mediaplayer.style.left=520;
    mediaplayer.style.width=480;
    mediaplayer.style.height=363;
//    mediaplayer.style.top=211;
    player.style.width=480;
    player.style.height=280;
    controller.style.left=140;
    controller.style.top=283;
    flv.growInterface();
    sender.innerHTML="GO TO SMALL SIZE VIDEO";
  } else {
    document.body.style.overflow="auto";
    fader.style.width=0;
    fader.style.height=0;
    fader.style.visibility="hidden";
    fader.style.display="none";
    mediaad.style.visibility="hidden";
    mediaad.style.display="none";
    small=true;
    mediaplayer.style.left=800;
    mediaplayer.style.width=200;
    mediaplayer.style.height=200;
//    mediaplayer.style.top="";
    player.style.width=200;
    player.style.height=117;
    controller.style.left=0;
    controller.style.top=120;
    flv.shrinkInterface();
    sender.innerHTML="GO TO BIG SIZE VIDEO";
  }
}

var playcnt=0;
var playlist=new Array();
var playinfo=new Array();

var nowplaying=-1;

function clearplaylist() {
  var richmedia=document.getElementById("richmedia");
  var div=richmedia.getElementsByTagName("div");
  for (var i=div.length-1; i>=0; i--) {
    if (div[i].className=="playitem") {
      div[i].parentNode.removeChild(div[i]);
    }
  }
}
function clearplayer() {
  var flv=document.getElementById("flv");
  flv.parentNode.removeChild(flv);
}
function initplaylist() {
  clearplaylist();
  var richmedia=document.getElementById("richmedia");
  for (var i=0; i<playlist.length; i++) {
    var data=playlist[i].split(";");
    var div=document.createElement("div");
    div.className="playitem";
    var html;
    if (data[2].length) { html="<img src=\""+data[2]+"\" /><br>\n"; }
    html=html+"<b>"+data[0]+"</b><br>\n";
    html=html+playinfo[i];
    div.innerHTML=html;
    div.setAttribute("media",data[1]);
    if (data[1].length) {
      div.onclick=function() {
        if (interval) clearInterval(interval);
        var media=this.getAttribute("media");
        var richmedia=document.getElementById("richmedia");
        var div=richmedia.getElementsByTagName("div");
        for (var i=div.length-1; i>=0; i--) {
          if (div[i].className=="playitem") {
            div[i].style.background="#000000";
          }
        }
        var swf=new SWFObject("player.swf?flv="+media,"flv","100%","100%",8,"#000000");
        swf.addParam("menu","false");
        swf.addParam("wmode","opaque");
        swf.write("player");
        this.style.background="#971716 url(/img/nowplaying.gif) top repeat-x";
      }
    }
    if (i==nowplaying) {
      var swf=new SWFObject("player.swf?flv="+data[1],"flv","100%","100%",8,"#000000");
      swf.addParam("menu","false");
      swf.addParam("wmode","opaque");
      swf.write("player");
      div.style.background="#971716 url(/img/nowplaying.gif) top repeat-x";
    }
    richmedia.appendChild(div);
  }
}
var xml=rpcget("/corevideo?service=richmedia&site=1");
var media=xml.getElementsByTagName("media");
for (var i=0; i<media.length; i++) {
  var medium=media.item(i);
  var type=medium.getAttribute("type");
  if (type=="flv") {
    if (medium.getAttribute("default")&&medium.getAttribute("default")=="yes") nowplaying=i;
    var title=medium.getElementsByTagName("title").item(0);
    var url=medium.getElementsByTagName("url").item(0);
    var image=medium.getElementsByTagName("image").item(0);
    var text=medium.getElementsByTagName("text").item(0);
    playlist[playcnt]=getText(title)+";"+getText(url)+";"+getText(image);
    playinfo[playcnt]=getText(text);
    playcnt++;
  }
}
