/***** START NEW PLAYER FUNCTION *****/
var playerObj;
var api;
var dragObj, slideWidth;
var offsetX, needToJump, target;
var nVolumeKnobWidth, nVolumeBarWidth;
var motionEnable = false;
var sliderPct;

/***** volume function *****/
function setVolumePosition(p) {
  setSliderPosition("volumeKnobWrap", p * (nVolumeBarWidth - nVolumeKnobWidth));
}
function changeVolDisplay(percent) {
  setVolumePosition(percent);
}
function playerSetVolume(v) {
  //if (api == 7)
    playerObj = document.getElementById('wmp');    
    playerObj.settings.volume = 100 * v;
    playerObj.settings.mute = isMute;
  //else
    //document.getElementById('wmp').settings.volume = 10000 * v - 10000;
  return v;
}
function trace(msg) {
}

function track(tval, idtxt) {
  if (typeof(top.clicktrack) != "undefined")
    top.clicktrack(tval, idtxt);
}

function volumeClick(percent) {
  trace ('volumeClick: ' + percent);
  track(38, 'volume');
  playerSetVolume(percent);
  changeVolDisplay(percent);
  if (top != self && typeof(top.playerVolume) != "undefined")
    top.playerVolume = percent;
  return false;
}

function setSliderPositionVol(divID, p) {
  var obj;
  if (document.all)
    obj = document.all(divID);
  else if (document.getElementById)
    obj = document.getElementById(divID);
  if (obj)
    shiftToVol(obj, p, 0);
}

function shiftToVol(obj, x, y) {
  var theObj = obj.style;
  if (theObj) {
    // equalize incorrect numeric value type
    var units = (typeof theObj.left == "string") ? "px" : 0 
   y = 5;
	theObj.left = x + units;
    theObj.top = y + units;
  }
}

/***** Dynamic Function *****/
function setDragElem(evt) {
  needToJump = false;
  target = (evt.target) ? evt.target : evt.srcElement;
  var divID = (target.name && target.src) ? target.name + "Wrap" : "";
  if (target.name=="volumeKnob" || target.name=="volumeBar") {
    nKnobWidth = nVolumeKnobWidth;
    slideWidth = nVolumeBarWidth - nKnobWidth;
  } else if(target.name=="playKnob" || target.name=="playBar") {
    nKnobWidth = nPlayKnobWidth;
    slideWidth = nPlayBarWidth - nKnobWidth;
  }
  if (target.name == "volumeBar") {
    divID = "volumeKnobWrap";
    needToJump = true;
  } else if (target.name == "playBar") {
    divID = "playKnobWrap";
    needToJump = true;
  }
  if (divID) {
    if (document.all)
      dragObj = document.all(divID);
    else if (document.getElementById)
      dragObj = document.getElementById(divID);
    if (dragObj)
      dragObj.zindex = 100;
    return;
  }
  dragObj = null;
  return;
}

function engage(evt) {
  evt = (evt) ? evt : event;
  setDragElem(evt);
  if (dragObj) {
    if (evt.pageX) //NS4+
      offsetX = evt.pageX - ((dragObj.offsetLeft) ?
	  dragObj.offsetLeft : dragObj.left);
    else if (evt.clientX) //IE4+ NS6+
      offsetX = evt.clientX - ((dragObj.offsetLeft) ? dragObj.offsetLeft : 0);
  }
  dragIt(evt); //start moving on mousedown
  return false;
}

// Drag an element (onmousemove)
function dragIt(evt) {
 evt = (evt) ? evt : event;
 if (dragObj) {
  if (evt.pageX) eX=evt.pageX; else eX=evt.clientX;
  moveToPos = eX-offsetX;
  // If the user click on the bar and not the knob
  if(needToJump){ 
  	nParentOffset = dragObj.offsetParent.offsetLeft;
	nGrandParentOffset = dragObj.offsetParent.offsetParent.offsetLeft;
	nKnobWidth = (target.name=="volumeBar"?nPlayKnobWidth:nVolumeKnobWidth);
  	moveToPos = eX-nParentOffset-nGrandParentOffset - (nKnobWidth/2);
  }
  moveToPos=(moveToPos<1?1:(moveToPos>slideWidth?slideWidth:moveToPos));
  if(moveToPos>=1 && (moveToPos <= slideWidth))
   shiftTo(dragObj, moveToPos,0);
  evt.cancelBubble = true;
  sliderPct = (moveToPos<=1?0:(moveToPos>slideWidth?1:(moveToPos/slideWidth)));
  if(document.all)tmp=window.event.x; else tmp="";
  return false;
 }
}

// Turn selected element off (onmouseup)
function release(evt) {
 if (dragObj) {
  trace('release: ' + dragObj.id + ' ' + sliderPct);
  if (dragObj.id == "volumeKnobWrap")
    volumeClick(sliderPct);
  else if (dragObj.id == "playKnobWrap")
    reposition(sliderPct);
  dragObj.zindex = 0; 
 }
 dragObj = null;
 needToJump = false;
}

/***** Track Function *****/
function playerSetPosition(p) {
//  if (api == 7)
//    return document.getElementById('wmp').Controls.currentPosition = p;
//  else
//    return document.getElementById('wmp').CurrentPosition = p;
    return document.getElementById('wmp').controls.currentPosition = p;
}

function reposition(p) {
  var pos = p * playerGetDuration();
  trace('reposition: ' + p + ', ' + pos);
  track(39, 'repos');
  playerSetPosition(pos);
}

function playerGetPosition() {
//  if (api == 7)
//    return document.getElementById('wmp').currentMedia ?
//	document.getElementById('wmp').controls.currentPosition : -1;
//  else
//    return document.getElementById('wmp').CurrentPosition;
return document.getElementById('wmp').currentMedia ?
	document.getElementById('wmp').controls.currentPosition : -1;
}

function playerGetDuration() {
//  if (api == 7)
//    return document.getElementById('wmp').currentMedia ?
//	document.getElementById('wmp').currentMedia.duration : -1;
//  else
//    return document.getElementById('wmp').IsDurationValid ? MediaPlayer.Duration : -1;
return document.getElementById('wmp').currentMedia ?
	document.getElementById('wmp').currentMedia.duration : -1;
}

function updatePositionDisplay() {
  var d = playerGetDuration();
  if (d > 0)
    setPlayPosition(playerGetPosition() / d);
  else
    setPlayPosition(0);
}

function setPlayPosition(p) {
  setSliderPosition("playKnobWrap", p * (nPlayBarWidth - nPlayKnobWidth));
}

function setSliderPosition(divID, p) {
  var obj;
  if (document.all)
    obj = document.all(divID);
  else if (document.getElementById)
    obj = document.getElementById(divID);
  if (obj)
    shiftTo(obj, p, 0);
}

function shiftTo(obj, x, y) {	
  var theObj = obj.style;
  if (theObj) {
    // equalize incorrect numeric value type
    var units = (typeof theObj.left == "string") ? "px" : 0 
	theObj.left = x + units;
    theObj.top = y + units;
  }  
}

/***** Initail Function *****/
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3))+','+
num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + num + '.' + cents);
}

function playInitialize(){
playerObj = document.getElementById('wmp');
if(playerObj.sourceUrl == "images/gPlayer/loading.gif") {
	//start play
	document.getElementById('wmp_time_this').innerHTML = "";
	document.getElementById('wmp_time_full').innerHTML = "";
	document.getElementById('wmp_time_seperator').innerHTML = "";
	document.getElementById('playKnobWrap').style.display = "none";
}
else if (playerObj.sourceUrl == "images/gPlayer/logo.gif")
{	
	//finish play
	document.getElementById('wmp_time_this').innerHTML = "";
	document.getElementById('wmp_time_full').innerHTML = "";
	document.getElementById('wmp_time_seperator').innerHTML = "";
	document.getElementById('wmp_status').innerHTML = "<span onClick=\"self.location=self.location;\" style='text-decoration:none; color:white; cursor:hand;'><b>Click to play again</b></span>";
	document.getElementById('playKnobWrap').style.display = "none";
}
else {
	var time_this = playerObj.controls.currentPosition;
	var time_this_hh = Math.floor(time_this/3600);
	var time_this_mm = Math.floor((time_this/60)%60);
	var time_this_ss = Math.floor(time_this%60);

	if(time_this_hh < 10)	time_this_hh = "0".concat(time_this_hh);
	if(time_this_mm < 10)	time_this_mm = "0".concat(time_this_mm);
	if(time_this_ss < 10)	time_this_ss = "0".concat(time_this_ss);
	document.getElementById('wmp_time_this').innerHTML = time_this_hh + ":" + time_this_mm + ":" + time_this_ss;

    if(playerObj.currentMedia != null)
    {
	    var time_full = playerObj.currentMedia.duration;
	    if(time_full > 0) {

		    var time_full_hh = Math.floor(time_full/3600);
		    var time_full_mm = Math.floor((time_full/60)%60);
		    var time_full_ss = Math.floor(time_full%60);

		    if(time_full_hh < 10)	time_full_hh = "0".concat(time_full_hh);
		    if(time_full_mm < 10)	time_full_mm = "0".concat(time_full_mm);
		    if(time_full_ss < 10)	time_full_ss = "0".concat(time_full_ss);
		    document.getElementById('wmp_time_full').innerHTML = time_full_hh + ":" + time_full_mm + ":" + time_full_ss;
		    document.getElementById('wmp_time_seperator').innerHTML = " / ";
		    document.getElementById('playKnobWrap').style.display = "";
	    }
	    else {
		    document.getElementById('wmp_time_full').innerHTML = "";
		    document.getElementById('wmp_time_seperator').innerHTML = "";
		    document.getElementById('playKnobWrap').style.display = "none";
	    }
    }
}

// Knob stuff
 document.onmousedown = engage;
 document.onmousemove = dragIt;
 document.onmouseup = release;

//volumeClick(0.5);
 if (navigator.userAgent.indexOf("Windows NT 5.1") != -1) {
    	api = 7;
  } else {
    var cv = cc.getComponentVersion("{6BF52A52-394A-11D3-B153-00C04F79FAA6}", "componentid");
    if (cv == null || cv == "") {
		api = 6;
    } else {
		api = 7;
    }
  }
  nPlayKnobWidth = (document.images["playKnob"]?document.images["playKnob"].width:0);
  nPlayBarWidth = (document.images["playBar"]?document.images["playBar"].width:0);
  nVolumeKnobWidth = (document.images["volumeKnob"]?document.images["volumeKnob"].width:0);
  nVolumeBarWidth = (document.images["volumeBar"]?document.images["volumeBar"].width:0);
  updatePositionDisplay();
setTimeout("playInitialize()", 1000);
}
/***** END FUNCTION NEW PLAYER *****/
var isMute = false; 
function playAction(act) {;
	if(act == "fullscreen") {
document.getElementById('wmp').fullScreen = true;
	}
	else if(act == "pause") {	
			document.getElementById('wmp').controls.pause(); 
			MM_swapImage('pause','','images/gPlayer/btn_pause_ov.gif',1);
			MM_swapImage('play','','images/gPlayer/btn_play.gif',1);
	}
	else if(act == "play") {
		//check state
		MM_swapImage('pause','','images/gPlayer/btn_pause.gif',1);
		MM_swapImage('play','','images/gPlayer/btn_play_ov.gif',1);

		playerObj = document.getElementById('wmp');
		if (playerObj.sourceUrl == "images/gPlayer/logo.gif")
		{
			playerObj.controls.previous();
		}
		else {
			playerObj.controls.play();
		}
	}
	else if(act == "previous") {
		document.getElementById('wmp').controls.previous();
	}
	else if(act == "next") {
		document.getElementById('wmp').controls.next();
	}
	else if(act == "mute") {
		if(document.getElementById('wmp').settings.mute) {
			isMute = false;
			document.getElementById('wmp').settings.mute = false;
			MM_swapImage('mute','','images/gPlayer/btn_mute.gif',1);
		}
		else {
			isMute = true;
			document.getElementById('wmp').settings.mute = true;
			MM_swapImage('mute','','images/gPlayer/btn_mute_ov.gif',1);
		}
	}
}
/*fuck .js, it cooked my time*/