document.observe("dom:loaded", addVideoControllers );
document.observe("dom:loaded", addVideoListeners );
Event.observe( window, 'load', startInitialVideo, false );

var currentVideo = null

function playVideo()
{
  var flashvars = { file:'/videos/'+startVideo, autostart:'false', image:'', backcolor:'F3F3F3', frontcolor:'6C6E70', lightcolor:'74C349', screencolor:'000000' };
  var params = { allowfullscreen:'true', allowscriptaccess:'always' };
  var attributes = { id:"wePlayer", name:"wePlayer" };
      
  swfobject.embedSWF("/flash/player.swf", "wePlayerHolder", "513", "345", "9.0.0","player.swf", flashvars, params, attributes);
}

function addVideoListeners()
{
  $('wePlayerHolder').innerHTML = '';
  
  currentVideo = 'video_'+startVideo;
  //$(currentVideo).setStyle( {opacity:0.8} );
  
  if( !document.getElementsByTagName ) return;

  var allLinks = document.getElementsByTagName('img');
  
  for( var i=0; i<allLinks.length; i++ )
  {
    var link = allLinks[i];
    if( link.id && ( ' '+link.id+' ').indexOf(' video') != -1 )
    {
      //if( link.id != currentVideo ) $(link.id).setStyle( {opacity:1} );
      Event.observe( $(link.id), 'mouseover' , highlightVideoIcon, false );
      Event.observe( $(link.id), 'mouseout' , blurVideoIcon, false );
      Event.observe( $(link.id), 'click' , updateVideo, false );
    }    
  }
}

function highlightVideoIcon(e)
{
  var target = findTarget(e);
  $(target.id).setStyle( {opacity:0.8} );
}

function blurVideoIcon(e)
{
  var target = findTarget(e);
  //if( target.id != currentVideo )
  //{
    $(target.id).setStyle( {opacity:1} );
  //}
}


function startInitialVideo(flv)
{
  playVideo();
  var path = '/media_centre/'+startVideo+'/video_update';

  new Ajax.Request( path,
  {
    method:'get',
    onComplete: function(transport){
      var response = transport.responseText;
      if( response )
      {
        $(target.id).setStyle( {opacity:0.8} );
        currentVideo = target.id;
        $('wePlayer').sendEvent( "LOAD", '/videos/'+videoFlv );
        $('wePlayer').sendEvent( "PLAY" );
        $('videoBoxText').innerHTML = response;
      }
    }
  });
}


function updateVideo(e)
{
  var target = findTarget(e);
  var videoFlv = target.id.replace('video_', '' );  
  videoFlv = videoFlv.replace('.flv', '' );  
  var path = '/media_centre/'+videoFlv+'/video_update';

  new Ajax.Request( path,
  {
    method:'get',
    onComplete: function(transport){
      var response = transport.responseText;
      if( response )
      {
        $(target.id).setStyle( {opacity:0.8} );
        currentVideo = target.id;
        $('wePlayer').sendEvent( "LOAD", '/videos/'+videoFlv+'.flv' );
        $('wePlayer').sendEvent( "PLAY" );
        $('videoBoxText').innerHTML = response;
      }
    }
  });

  e.preventDefault();
  e.stopPropagation();
}



var vidPosition=0
var vidLocked=0
/**
 * Video Controllers
 */
function addVideoControllers()
{
  Event.observe( $('scrollLeft'), 'mouseover', leftOn, false );
  Event.observe( $('scrollLeft'), 'mouseout',  leftOff, false );
  Event.observe( $('scrollLeft'), 'click',    slideScrollerLeft, false );
  
  Event.observe( $('scrollRight'), 'mouseover', rightOn, false );
  Event.observe( $('scrollRight'), 'mouseout',  rightOff, false );
  Event.observe( $('scrollRight'), 'click',    slideScrollerRight, false );
  
}

function leftOn(){ $('scrollLeft').src = '/images/buttons/vidLeftOn.gif'; }
function leftOff(){ $('scrollLeft').src = '/images/buttons/vidLeft.gif'; }
function rightOn(){ $('scrollRight').src = '/images/buttons/vidRightOn.gif'; }
function rightOff(){ $('scrollRight').src = '/images/buttons/vidRight.gif'; }

function slideScrollerLeft()
{
  var broswserVidDiff = 0;
  if( BrowserDetect.browser == 'Explorer' && BrowserDetect.version==6 ) broswserVidDiff=-5
  if( BrowserDetect.browser == 'Explorer' && BrowserDetect.version==7 ) broswserVidDiff=2
  if( BrowserDetect.browser == 'Safari' ) broswserVidDiff=2
 
  var newPos = ($('scrollerArea').offsetLeft+476+broswserVidDiff);
  var oldTop = ($('scrollerArea').offsetTop);
  
  if( vidPosition!=0 && vidLocked!=1 )
  {
    vidLocked=1;
    vidPosition--;
    new Effect.Move( $('scrollerArea'), { x: newPos, y: oldTop, mode: 'absolute', duration:1.0 } );
    setTimeout( "vidLocked=0", 1050 );
  }
}

function slideScrollerRight()
{
  var broswserVidDiff = 0;
  if( BrowserDetect.browser == 'Explorer' && BrowserDetect.version==6 ) broswserVidDiff=-5
  if( BrowserDetect.browser == 'Explorer' && BrowserDetect.version==7 ) broswserVidDiff=2
  if( BrowserDetect.browser == 'Safari' ) broswserVidDiff=2
  
  var newPos = ($('scrollerArea').offsetLeft-476-broswserVidDiff);
  var oldTop = ($('scrollerArea').offsetTop);
  
  if( vidPosition!=5 && vidLocked!=1 )
  {
    vidLocked=1;
    vidPosition++;
    new Effect.Move( $('scrollerArea'), { x: newPos, y: oldTop, mode: 'absolute', duration:1.0 } );
    setTimeout( "vidLocked=0", 1050 );
  }
}

