var videoLength = 0;
var currentSeconds = 0;
var onCurrentPositionChange;
var onPlayerStateChange;

function dispatchEvent(elmId, value) {    
	switch (elmId)
	{
		case 'videotime':
			{
				if (getDuration() > 0)
				{
					if (onCurrentPositionChange != null)
						onCurrentPositionChange(getCurrentTime(), getDuration());
				}
				break;
			}
		case 'playerstatechange':
			{
				if (onPlayerStateChange != null)
					onPlayerStateChange(value);
				break;
			}
	}
}

function playerStateChange(newState) {

	alert('hi!');
	switch (parseInt(newState))
	{

		case 0:
			// end, stop
			seekTo(0);
			pause();
			break;

	}
}
onPlayerStateChange = playerStateChange;


var fadeTimer;
var showing = false;

var clickedVideo = false;
function checkvideo()
{
	if (!clickedVideo)
	{
		clickedVideo = true;
		return;
	}
	if (isPlaying())
	{
		stop();
		seekTo(0);
		play();
	}
	else
	{
		seekTo(0);
		play();
	}
}

function unloadvideo()
{
	if (isPlaying())
	{
		stop();
		seekTo(0);
		pause();
	}
}



function updateytplayerInfo(playerId)
{
	dispatchEvent(playerId, 'videotime');
}

function isLoaded()
{
	if (!ytplayer)
		return false;
	return (getBytesLoaded() > 0 && getPlayerState() != -1);
}
function isPlaying()
{
	if (!ytplayer)
		return false;
		
	return (getBytesLoaded() > 0 && getPlayerState() == 1);
}

function onytplayerStateChange(newState)
{
	dispatchEvent('playerstatechange', newState);
}

function onPlayerError(errorCode)
{
	switch (errorCode)
	{
		case 2:
			alert("An error occured while attempting to playback the video.  Please have the administrator verify the You Tube video ID.");
			break;
		default:
			alert("An error occured: " + errorCode);
	}
}

// functions for the api calls
function loadNewVideo(objplayer, id, startSeconds) {
	if (objplayer)
	{
	    objplayer.get(0).currentVideo = id;
	    objplayer.get(0).loadVideoById(objplayer.currentVideo, parseInt(startSeconds));
	}
}

function cueNewVideo(objplayer, id, startSeconds) {
    if (objplayer) {        
        objplayer.currentVideo = id;
        objplayer.cueVideoById(objplayer.currentVideo, startSeconds);
	}
}

function play(objplayer) {	
    if (objplayer)
	{
	    objplayer.playVideo();
	}
}

function pause(objplayer)
{
    if (objplayer)
	{
	    objplayer.pauseVideo();
	}
}

function stop(objplayer)
{
    if (objplayer)
	{
	    objplayer.stopVideo();
	}
}

function getPlayerState()
{
	if (ytplayer)
	{
		return ytplayer.getPlayerState();
	}
}

function seekTo(seconds)
{
	if (ytplayer)
	{
		ytplayer.seekTo(seconds, true);
	}
}

function getBytesLoaded()
{
	if (ytplayer)
	{
		return ytplayer.getVideoBytesLoaded();
	}
}

function getBytesTotal()
{
	if (ytplayer)
	{
		return ytplayer.getVideoBytesTotal();
	}
}

function getCurrentTime()
{
	if (ytplayer)
	{
		return ytplayer.getCurrentTime();
	}
}

function getDuration()
{
	if (ytplayer)
	{
		return ytplayer.getDuration();
	}
}

function getStartBytes()
{
	if (ytplayer)
	{
		return ytplayer.getVideoStartBytes();
	}
}

function mute()
{
	if (ytplayer)
	{
		ytplayer.mute();
	}
}

function unMute()
{
	if (ytplayer)
	{
		ytplayer.unMute();
	}
}

function getEmbedCode()
{
	alert(ytplayer.getVideoEmbedCode());
}

function getVideoUrl()
{
	alert(ytplayer.getVideoUrl());
}

function setVolume(newVolume)
{
	if (ytplayer)
	{
		ytplayer.setVolume(newVolume);
	}
}

function getVolume()
{
	if (ytplayer)
	{
		return ytplayer.getVolume();
	}
}

function clearVideo()
{
	if (ytplayer)
	{
		ytplayer.clearVideo();
	}
}
        
