// DEPENDENCIES: controlButton.js, videoplayer.js, inactiveFade.js

var playImg = '/images/site/live/play_A.png';
var pauseImg = '/images/site/live/pause_A.png';
var fullscreenImg = '/images/site/live/fullscreen_A.png';
var fixedsizeImg = '/images/site/live/sizedown_A.png';
var menuUpImg = '/images/site/live/menuup_A.png';
var menuDownImg = '/images/site/live/menudown_A.png';

var playImg_hl = '/images/site/live/play_B.png';
var pauseImg_hl = '/images/site/live/pause_B.png';
var fullscreenImg_hl = '/images/site/live/fullscreen_B.png';
var fixedsizeImg_hl = '/images/site/live/sizedown_B.png';
var menuUpImg_hl = '/images/site/live/menuup_B.png';
var menuDownImg_hl = '/images/site/live/menudown_B.png';

preload(playImg);
preload(pauseImg);
preload(fullscreenImg);
preload(fixedsizeImg);
preload(menuUpImg);
preload(menuDownImg);

preload(playImg_hl);
preload(pauseImg_hl);
preload(fullscreenImg_hl);
preload(fixedsizeImg_hl);
preload(menuUpImg_hl);
preload(menuDownImg_hl);

var pauseObj;
var fullscreenObj;
var menuObj;

var menuSlideDuration = 1000;
var menuCollapsed = true;
var menuBackground = 'url(http://www.heb2.tv/images/site/black_70.png) repeat';
var menuCollapseBackgroundFadeTime = 1000;
var collapsedBackgroundFadeInTime = 1000;
var fullBleeding = startFullscreen;

var pageXMin;
var pageXMax;
var pageYMin;
var pageYMax;

var last_lcb_event = "out";
var lcb_animating = false;
var lcb_position = "out";

function menuOnMouseOver(e) {
  lcb_position = "in";
  if (!lcb_animating && menuCollapsed && !fadedOut && !fadingOut && last_lcb_event != "in") {
    last_lcb_event = "in";
    lcb_animating = "true";
    $("#logoAndControlsBackground").fadeIn(collapsedBackgroundFadeInTime, lcb_fadeIn_cb);
    inactiveFadeEnabled = false;
  }
}

afterInactiveFadeInCb = function () {
  if (lcb_position != "in" || lcb_animating) return
    lcb_animating = "true";
    last_lcb_event = "in";
    $("#logoAndControlsBackground").fadeIn(collapsedBackgroundFadeInTime, lcb_fadeIn_cb);
    inactiveFadeEnabled = false;
}

function lcb_fadeIn_cb() {
  if (lcb_position == "in" || !(menuCollapsed && fullBleeding)) {
    lcb_animating = false;
    return;
  }

  last_lcb_event = "out"
  $("#logoAndControlsBackground").fadeOut(collapsedBackgroundFadeInTime, lcb_fadeOut_cb);
  inactiveFadeEnabled = fullBleeding;
}



function lcb_fadeOut_cb() {
  if (lcb_position == "out" || !(menuCollapsed)) {
    lcb_animating = false;
    return;
  }

  last_lcb_event = "in"
  $("#logoAndControlsBackground").fadeIn(collapsedBackgroundFadeInTime, lcb_fadeIn_cb);
  inactiveFadeEnabled = false;
}

function menuOnMouseOut(e) {
  if (e.pageX > pageXMin && e.pageX < pageXMax && e.pageY > pageYMin && e.pageY < pageYMax) return;
  lcb_position = "out";
  if (!lcb_animating && menuCollapsed && fullBleeding && last_lcb_event != "out") {
    last_lcb_event = "out"
    lcb_animating = "true"
    $("#logoAndControlsBackground").fadeOut(collapsedBackgroundFadeInTime, lcb_fadeOut_cb);
    inactiveFadeEnabled = fullBleeding;
  }
}

function menuCollapseCb() {
  if (fullBleeding) {
    //$("#logoAndControlsBackground").stop(true); 
    $("#logoAndControlsBackground").fadeIn(0);
    $("#logo").css("background", "");
    $("#controls").css("background", "");
    last_lcb_event = "out"
    $("#logoAndControlsBackground").fadeOut(menuCollapseBackgroundFadeTime, function() {inactiveFadeEnabled=fullBleeding; menuCollapsed=true;});
  } else {menuCollapsed=true;}
}

function menuExpandAction() {
  inactiveFadeEnabled = false;
  menuCollapsed=false;

  var last_lcb_event = "out";
  var lcb_animating = false;
  var lcb_position = "out";
  $("#logoAndControlsBackground").stop(true,true);
  $("#logoAndControlsBackground").fadeOut(0);

 // ZUPRANER DEACTIVATED THIS LINE TO TEST SOMETHING  $("#logo").css("background", menuBackground);
  $("#controls").css("background", menuBackground);

  $('#collapseableSection').slideToggle(menuSlideDuration, function() {});
  menuObj.deHl();
}

function initMenu() {
  pageXMin = parseInt($("#logoAndControlsBackground").css("left"));
  pageYMin = parseInt($("#logoAndControlsBackground").css("top"));
  pageXMax = pageXMin + parseInt($("#logoAndControlsBackground").css("width"));
  pageYMax = pageYMin + parseInt($("#logoAndControlsBackground").css("height"));

  $("#logoAndControlsBackground").fadeOut(0);
  if (menuCollapsed) $('#collapseableSection').slideToggle(0);
  $("#sidebar").mouseover(menuOnMouseOver);
  $("#sidebar").mouseout(menuOnMouseOut);
}

function setupMenu(divId) {
  menuObj = new controlButton(divId, menuCollapsed, 
                                              menuDownImg, menuDownImg_hl,
                                              "menuExpandAction()",
                                              menuUpImg, menuUpImg_hl,
                                              "$('#collapseableSection').slideToggle(menuSlideDuration, menuCollapseCb); menuObj.deHl();");
}

function setupPause(divId) {
  pauseObj = new controlButton(divId, startPlayback, pauseImg, pauseImg_hl, "player.stopPlayback()", playImg, playImg_hl, "player.startPlayback()");
}

function setupFullscreen(divId) {
  fullscreenObj = new controlButton(divId, startFullscreen, fixedsizeImg, fixedsizeImg_hl, "sizedownAction()",
                                                    fullscreenImg, fullscreenImg_hl, "fullscreenAction()");
}

function sizedownAction() {
  fullBleeding=false;
  inactiveFadeEnabled=false;
  stopFullBleed(); 
  if (menuCollapsed) {
    menuObj.toggle();
    fullscreenObj.deHl();
  }
}

function fullscreenAction() {
  fullBleeding=true;
  startFullBleed();
  if (!menuCollapsed) {
    menuObj.toggle();
    fullscreenObj.deHl();
  }
}
