﻿//player listener

	function onPlayerStateChange(newState) {
		
		if(newState == 1)
		{
			if(finishTiming == 0)
			{
				t = setInterval("timeIt()", 250);
			}
		}
		else
		{
			clearInterval(t);
		}
	}
	
	function onYouTubePlayerReady(playerId) {
      ytplayer = document.getElementById("myytplayer");
	  
	  timer = 0;
	  finishTiming = 0;
	  
	  ytplayer.addEventListener("onStateChange", "onPlayerStateChange");
	  ytplayer.addEventListener("onError", "onPlayerError");
    }
	
	function timeIt() {
		
		timer = timer + 0.250;
		
		if((timer >= 10) || (timer >= ytplayer.getDuration())) 
		{
			trakView(id);
			clearInterval(t);
			finishTiming = 1;
		}
	}
	
	function _run() {
		loadPlayer();
	}


var player    =  null;
var playlist  =  null;
  
function playerReady(obj)
{
  player = gid(obj.id);
  addListeners();
};

function addListeners()
{
  playlist = player.getPlaylist();

  if(playlist.length > 0)
  {
    player.addModelListener('STATE', 'stateMonitor');
    player.addModelListener('TIME',  'timeMonitor');
  }
  else
  {
    alert('Try Again!');
    setTimeout("addListeners();", 100);
  }
};

function stateMonitor(obj)
{
  if(obj.newstate == 'COMPLETED')
  {
      //track view of video if watch the entire video if less than 5 sec position monitor
      if(obj.duration < 5){
 	  trakView(id);
 	  }
  }
};

function timeMonitor(obj)
{
  if(obj.position == 5.0)
  {
      //when the media file plays to 10.0 seconds
      //track view of video
      trakView(id);
  }
};


function gid(name)
{
  return document.getElementById(name);
};


// call to php page

var xmlhttp;

function trakView(vid)
{
xmlhttp=GetXmlHttpObject();
if (xmlhttp==null)
  {
  alert ("Browser does not support HTTP Request");
  return;
  }
var url="trakview.php";
url=url+"?id="+vid;
url=url+"&sid="+Math.random();

//xmlhttp.onreadystatechange=stateChanged;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}

function stateChanged()
{
if (xmlhttp.readyState==4)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}

function GetXmlHttpObject()
{
if (window.XMLHttpRequest)
  {
  // code for IE7+, Firefox, Chrome, Opera, Safari
  return new XMLHttpRequest();
  }
if (window.ActiveXObject)
  {
  // code for IE6, IE5
  return new ActiveXObject("Microsoft.XMLHTTP");
  }
return null;
}

