﻿/*<![CDATA[*/

//=============================================================================
	// JWPlayer Scripts and events
	
	var currentPlaylist = null;
	var currentLength = 0;
	var currentItem = -1; 
	var previousItem = -1; 
	var currentMute = false; 
	var currentVolume = 100; 
	var currentPosition = 0; 
	var currentLoaded = 0;
	var currentRemain = 0;
	var currentState = "NONE"; 
	var previousState = "NONE"; 
	var lastfile = "";
	var filesummary = "";
	var player = null;
    var thisItem = -1;

    function openPlayer(sessionID, playItem) {      
        thisItem = playItem; 
                 
        var api = $('#overlay_'+sessionID).overlay({expose: {color: '#fff', loadSpeed: 0, opacity: 0.5}, closeOnClick: false,api: true, onBeforeClose: function() { player = document.getElementById('player_' + sessionID); player.sendEvent('STOP');thisItem = -1;} }).load();     
        if (player != undefined) {
            player = document.getElementById('player_' + sessionID);
            if (player.id == 'player_' + sessionID) {
                if($.browser.msie) {            
                    if('sendEvent' in player) {                       
                        player.sendEvent('item', thisItem);                                
                    }    
                }
            }
        }
    }

    function playerReadyCallback(obj) {	 
		player = document.getElementById(obj['id']);
		addListeners();
	}
	
	  function addListeners()
      {
        if (player) {
            playlist = player.getPlaylist();

            if((playlist !== null) && (playlist.length > 0))
            {
      	        player.addControllerListener('PLAYLIST', 'playlistHandler');
      	        player.addControllerListener("ITEM", "itemListener");
		        player.addModelListener("STATE", "stateListener");
            }
            else { setTimeout("addListeners();", 100); } //Try again.}
        
        } else {
    		setTimeout("addListeners()",100);
	    }

      };
	
    function playlistHandler(obj) {
        if (thisItem != -1) {
            player.sendEvent('item', thisItem);
        }
    }
      
	function stateListener(obj) { //IDLE, BUFFERING, PLAYING, PAUSED, COMPLETED
		
		currentState = obj.newstate; 
		previousState = obj.oldstate; 
	
		var plst = null;
		plst = player.getPlaylist();
		var curfile = "";
			
		if (plst) {			
			curfile = plst[currentItem].file;
			if (currentState == "PLAYING") {
		
				if (lastfile != curfile) { //Assign and record GA Play event.
					lastfile = curfile;
					pageTracker._trackPageview('/videoplayer/' + lastfile + '_PLAY');					
				}
				else { //Leave value, but do NOT record GA Play event. 
				}        
			}
					
			if (currentState == "IDLE") {
			    pageTracker._trackPageview('/videoplayer/' + lastfile + '_COMPLETE');
				lastfile = "";
			}

			/*
			if (currentState == "BUFFERING") {
			}
			
			if (currentState == "PAUSED") {
			}
			*/
		}
	}
	
function itemListener(obj) { 	
	if (obj.index != currentItem) {
		previousItem = currentItem;
		currentItem = obj.index;

		if (previousItem == -1) { getPlaylistData(); }
	}
}	

function createPlayer(sessionID, theFile, pWidth, pHeight, pListHeight, pItem, autoStart, playlist, ctrlBar) {
   
    var phID = 'ph_'+sessionID;
    var plyrID = 'player_' + sessionID;
    var so = new SWFObject('/mediaplayer/player.swf',plyrID,pWidth,pHeight,'9','#ffffff');
    so.addVariable('javascriptid',plyrID);
    so.addVariable('playlistfile',theFile);
    so.addVariable('playerready', 'playerReadyCallback');    
    so.addVariable('playlist',playlist);
    so.addVariable('playlistsize',pListHeight);
    so.addVariable('autostart',autoStart);
    so.addVariable('bufferlength','10');
    so.addVariable('item',pItem);    
    so.addVariable('controlbar',ctrlBar);    
    so.addParam('allowfullscreen','true');
    so.addParam('allowscriptaccess','always');
    so.addParam('wmode','opaque');
    so.addParam('id',plyrID);
    so.addParam('name',plyrID);
    so.write(phID);
           
}

/*]]>*/