jQuery(function(){
  
  $('.project-button').click(function() {
    url = getHash($(this).children("a").attr('href'));
    $('#quicktime').css({'visibility': 'hidden'});
    if (url != '#')
    {
      $('#video').fadeOut();
      window.location = url;
      url_resolve(url);
    }
    return false;
  });
  if ($('#project_media > .inner').attr('id') != $('#media_source > .inner').attr('id'))
  {
    $('#project_media').html($('#media_source').html());

    $(".mediaitem").click(function() {
      href = $(this).children("a").attr('href');
      if (href != undefined) {
        loadProject(href);
      };
      return false;
    });
    $('.mediaitem').mouseover(function() {
      $(this).fadeTo('fast',1);
    });
    $('.mediaitem').mouseout(function() {
      $(this).fadeTo('fast',0.6);
    });

    $('.mediaitem').fadeTo('fast',0.6);

  }
  $('#project-info').show();
  
  $('#project-info').mousedown( function() {
    $('#quicktime').css({'visibility': 'hidden'});
    $('#project_info_image').fadeIn();
    doFade = false;
    $(this).hide();
    $('#project-video').show();
    $('#quicktime_controller').fadeOut('fast');
    $('#media_image').fadeOut();
    try {
      movie.Stop();
    } catch(e) {}
  });
  
  $('#project-video').mousedown( function() {
    $('#quicktime_controller').fadeIn('fast');
    $(this).hide();
    $('#project-info').show();
    $('#project_info_image').fadeOut('', function () {
      $('#quicktime').css({'visibility': 'visible'});
    });
    $('#media_image').fadeIn();
  });

  $('#project_media').fadeIn();
  
  $('.qt-button').fadeTo("fast", 0.6);
  
  $('.qt-button:not(.disabled)').mouseover( function() {
    if (! ($.browser.msie && $.browser.version < 7))
      $(this).fadeTo("fast", 1);
  });

  $('.qt-button:not(.disabled)').mouseout( function() {
    if (! ($.browser.msie && $.browser.version < 7))
      $(this).fadeTo("fast", 0.6);
  });
  
  $('#quicktime_controller').fadeIn('fast');
  
  //$("#quicktime").children('[name="controller"]').attr({ 'value': 'false' });
  $("#quicktime").children('embed').attr({ 'controller': 'false' });
  
  $('#qt-fullscreen').click( function() {
    qt = $("#quicktime");
    if (qt.width() == 910)
    {
      fullscreen = false;
      $('#content').show('fast');
      $(this).css({'background-image': 'url(/media/static/img/icon-fullscreen.gif)'});
      $('#quicktime_controller').css({ 'top': "310px", 'width': 515 });
      qt.animate({'left': 195, 'width': 515, 'height': 300 }, 'normal');
    } else {
      fullscreen = true;
      $(this).css({'background-image': 'url(/media/static/img/icon-fullscreen-on.gif)'});
      $('#content').hide('fast');
      $('#quicktime_controller').css({ 'top': "530px", 'width': '710px' });
      qt.animate({'left': 0, 'width': 910, 'height': 512 }, 'normal');
    }
  });
  
  $('#qt-play').click( function(evt) {

    movies = $(".quicktime").get();
    movie = movies[0];
    try {
      if (movie.GetRate() !== 0)
      {
        $(this).css({'background-image': 'url(/media/static/img/icon-play.gif)'});
        movie.Stop();
      } else {
        $(this).css({'background-image': 'url(/media/static/img/icon-pause.gif)'});
        movie.Play();
      }
    } catch (e) { }
    return false;
  });
  $('#qt-audio').click( function() {
    try {
      if (movie.GetMute() == 0 || movie.GetMute() == false)
      {
        movie.SetMute(true);
        $(this).css({'background-image': 'url(/media/static/img/icon-audio.gif)'});
      } else {
        $(this).css({'background-image': 'url(/media/static/img/icon-audio-on.gif)'});
        movie.SetMute(false);
      }
    } catch (e) {}
  });
  
  $('#qt-rewind').click( function () {
    try {
      movie.Stop();
      movie.Rewind();
      $('#slider_handle').css({'left': 0 });
      $('#quicktime_playhead').css({'width': 0 });
    } catch (e) {}
  });
  
  $('#qt-skip-fwd:not(.disabled)').click( function () {
    var media_id = $('#quicktime').attr('alt');
    if ($('#media'+media_id+' ~ div:first').attr('id'))
    {
      $('#media'+media_id+' ~ div:first').click();
    } else {
      $('.project_media > div:first').click();
    }
    
  });

  $('#controller_bar').click( function(evt) {
    setSliderPosition(evt);
  });
  $('#controller_bar').mousedown( function(evt) {
    doDrag = true;
  });
  $('#controller_bar').mousemove( function(evt) {
    if (doDrag)
    {
      setSliderPosition(evt);
    }
  });
  $('#controller_bar').mouseup( function(evt) {
    doDrag = false;
  });
  
});

doDrag = false;
doFade = false;
fullscreen = false;
movie = null;

function setSliderPosition (evt) {
  var x = 0;
  if (evt != 0) {
    var x = evt.pageX - $('#controller_bar').offset().left-5;
  }
  if (x >= 0)
  {
    if (x < 460)
      $('#slider_handle').css({'left': x });
    var duration = movie.GetDuration();
    var percentage = x/($('#controller_bar').width()-10);
    var new_pos = Math.round(duration*percentage);
    movie.SetTime(new_pos);
    $('#quicktime_playhead').css({'width': x });
  }
}

function checkQuicktimeStatus()
{
  movies = $(".quicktime").get();
  movie = movies[0];
  qtt = setTimeout("checkQuicktimeStatus()",500);
  
  if ($('#quicktime_controller').is(':hidden')) return;

  try {
    var max_width = $('#controller_bar').width()-10;
    var percentage = 0;
    if (movie.GetControllerVisible() == true)
      movie.SetControllerVisible(false);
    if (movie.GetMovieSize() != movie.GetMaxBytesLoaded()) {
      percentage = movie.GetMaxBytesLoaded()/movie.GetMovieSize();
      var new_width = Math.round(max_width*percentage);
      $('#quicktime_loader').css({'width': new_width});
    } else {
      if (movie.GetMovieSize() > 0)
        $('#quicktime_loader').css({'width': max_width+10});
    }
    if (movie.GetRate() !== 0)
    {
      var duration = movie.GetDuration();
      var playhead = movie.GetTime();
      percentage = playhead/duration;
      var new_pos = Math.round(max_width*percentage);
      $('#slider_handle').css({'left': new_pos });
      $('#quicktime_playhead').css({'width': new_pos});
      if ($('#qt-play').css('background-image').indexOf('pause') == -1)
        $('#qt-play').css({'background-image': 'url(/media/static/img/icon-pause.gif)'});

      // we're sure quicktime was initialized, so we set the flag to fade out
      // the background and controls
      doFade = true;
    } else {
      //doFade = false;
      if (movie.GetDuration() == movie.GetTime()) {
        setSliderPosition(0);
      }
      if ($('#qt-play').css('background-image').indexOf('play') == -1)
        $('#qt-play').css({'background-image': 'url(/media/static/img/icon-play.gif)'});
    }
    
  } catch(e) {
  }
}
checkQuicktimeStatus();

