var w,h;
var menuOpts=new Array('Nav_AboutUs','Nav_Services');
var menuSubOpts=new Array(['Link_TheSalon','Link_MVCProfile','Link_21stAnniversaryBook'],['Link_Services','Link_Beauty','Link_Weddings','Link_PriceLists']);

$(document).ready(function() {
  w=$(window).width();
  h=$(window).height();

  resizeWindow();
  $.preloadImages('/images/tipstrends.jpg','/images/prmedia.jpg','/images/Michael-Nikki_Cropped4.jpg','/images/Salon-Team-BHBA-BW-2.jpg','/images/awards.jpg','/images/gallery1.jpg','/images/salon_facade.jpg');
  $.localScroll.defaults.axis='yx';
  $.localScroll.hash({
    target: '#PanelContainer', // Could be a selector or a jQuery object too.
    queue: true,
    duration: 2500,
    easing: 'swing'
  });

  $.localScroll({
    target: '#PanelContainer', // could be a selector or a jQuery object too.
    queue: true,
    duration: 2500,
    hash: false,
    easing: 'swing'
  });

  // Resize images
  /*$('#Panel1aBG').jmc_resizr({ cropType: 'fill_outer', binding: { vertical: 'center', horizontal: 'center' } });
  $('#Panel1bBG').jmc_resizr({ cropType: 'fill_outer', binding: { vertical: 'center', horizontal: 'center' } });
  $('#Panel1cBG').jmc_resizr({ cropType: 'fill_outer', binding: { vertical: 'center', horizontal: 'center' } });
  $('#Panel1dBG').jmc_resizr({ cropType: 'fill_outer', binding: { vertical: 'center', horizontal: 'center' } });
  $('#Panel5aBG').jmc_resizr({ cropType: 'fill_outer', binding: { vertical: 'center', horizontal: 'center' } });*/

  // Scroll panels
  //$('.scroll-pane').jScrollPane({ showArrows: true });
  var settings={ showArrows: true/*, autoReinitialise: true*/ };
  var pane=$('.scroll-pane');
  pane.jScrollPane(settings);
  var api=pane.data('jsp');
  //setInterval(function() { api.reinitialise(); },1000);

  // Show the opening quote - initially hidden as sIFR takes a mo to load
  $('#IntroTitle1').show();
  $('#IntroTitle2').show();

  // Lightbox for press
  $('a.Lightbox').fancybox({
    'overlayShow': false,
    'showNavArrows': false,
    'transitionIn': 'elastic',
    'transitionOut': 'elastic',
    'onStart': function(){ $('#PanelLightbox').fadeTo('slow',0.75); $('a.Lightbox').fadeTo('slow',0.75); },
    'onCancel': function(){ $('#PanelLightbox').fadeTo('slow',1); $('a.Lightbox').fadeTo('slow',1); },
    'onCleanup': function(){ $('#PanelLightbox').fadeTo('slow',1); $('a.Lightbox').fadeTo('slow',1); },
    'onClosed': function(){ $('#PanelLightbox').fadeTo('slow',1); $('a.Lightbox').fadeTo('slow',1); }
  });

  // Lightbox for gallery
  function formatTitle(title,currentArray,currentIndex,currentOpts) {
    return '<div id="gallery-title"><span><a href="javascript:;" onclick="$.fancybox.close();"><img src="/images/fancybox_closelabel.png" style="border: none;" /></a></span>'+(title&&title.length?'<b>'+title+'</b>':'')+'Image '+(currentIndex+1)+' of '+currentArray.length+'</div>';
  }

  $('a.Gallery1').fancybox({
    'padding': 10,
    'margin': 0,
    'overlayShow': false,
    'cyclic': true,
	'showCloseButton': false,
    'showNavArrows': true,
	'titlePosition': 'inside',
	'titleFormat': formatTitle
  });
});
$(window).bind('resize', resizeWindow);

// Image preloader
jQuery.preloadImages=function() {
  for(var i=0;i<arguments.length;i++) {
    jQuery('<img>').attr('src',arguments[i]);
  }
}

function resizeWindow(e) {     // Resize containers
  $('#PanelContainer').css('width',w+'px');//.width(w);//
  $('#PanelContainer').css('height',h+'px');//.height(h);//
  $('.PanelSection').css('width',w+'px');//.width(w);//
  $('.Panel').css('height',h+'px');//.height(h);//
  $('.PanelContents').css('height',h+'px');
  $('.PanelCopy').css('height',(h-190)+'px');

  fullScreenSize('#PanelGallery1');
  fullScreenSize('#PanelGallery2');
  $('#PanelGallery1').css('top','-190px');
  $('#PanelGallery2').css('top','-190px');

  // Resize menu
  var wTblMenu1=$('#TblMenu').width();
  $('#TblMenu').css('width','100%');
  var wTblMenu2=$('#TblMenu').width();
  $('.MenuSpacer').css('width',((wTblMenu2-wTblMenu1)/8)+'px');
  $('#TblMenuSpacer').css('width','850px');

  // Find sub menu positions
  /*for (var i=0;i<menuOpts.length;i++) {
    $('#'+menuOpts[i]).css('position',''); $('#'+menuOpts[i]).css('display','block');
    for (var j=0;j<menuSubOpts[i].length;j++) {
      alert($('#'+menuSubOpts[i][j]).position().left);
	}
    $('#'+menuOpts[i]).css('position','absolute'); $('#'+menuOpts[i]).css('display','none');
  }*/

  // Images
  fullScreenImage('img.PanelBG');
}

function fullScreenSize(el) {
  var w,h;
  w=$(window).width();
  h=$(window).height();
  $(el).css('position','absolute');
  $(el).css('width',w+'px');//.width(w);
  $(el).css('height',h+'px');//.height(h);
  $(el).css('top','0');
  $(el).css('left','0');
}

function fullScreenImage(el) {     // Resize images with crop
  var w,h;
  w=$(window).width();
  h=$(window).height();
  var normalHeight=770;
  var normalWidth=1200;
  var minWidth=400;
  var minHeight=(normalHeight*minWidth)/normalWidth;
  //alert($(el).width());

  var ratio=w/h;
  if (w>h) {
    $(el).width(w);
    $(el).height((normalHeight*w)/normalWidth);
    if (w<minWidth) { $(el).width(minWidth*2).height(minHeight*2); }
    if (h<minHeight) { $(el).width(minWidth*2).height(minHeight*2); }
    if (((normalHeight*w)/normalWidth)<h) {
      $(el).width((normalWidth*h)/normalHeight);
      $(el).height(h);
      if (w<minWidth) { $(el).width(minWidth*2).height(minHeight*2); }
      if (h<minHeight) { $(el).width(minWidth*2).height(minHeight*2); }
    }
  } else { // w<h
    $(el).width((normalWidth*h)/normalHeight);
    $(el).height(h);
    if (w<minWidth) { $(el).width(minWidth*2).height(minHeight*2); }
    if (h<minHeight) { $(el).width(minWidth*2).height(minHeight*2); }
  }
  $(el).css('margin-top',((h-$(el).height())/2));//alert($(el).height());
  $(el).css('margin-left',((w-$(el).width())/2));
  $(el).css('top','0');
  $(el).css('left','0');
}

var gZ=0; var curG=1;
function galleryImg(imgsrc) {
  /*1. build div
    2. load image
    3. resize
    4. z-index
    5. fade*/
  var w,h;
  w=$(window).width();
  h=$(window).height();
  var normalHeight=770;
  var normalWidth=1200;
  var minWidth=400;
  var minHeight=(normalHeight*minWidth)/normalWidth;
  var ratio=w/h;
  var waiting='<div style="position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 30px; height: 30px; margin: auto; padding: 20px; background: url(images/95black.png);"><img src="images/progress.gif"></div>';
  curG+=1; gZ+=1;
  if (curG==3) curG=1;
  var gDiv=$('#PanelGallery'+curG);
  gDiv.html(waiting);
  gDiv.css('z-index',gZ);
  var img=new Image();

  $(img).load(function() {
    gDiv.hide();
    gDiv.html(this);
    fullScreenImage($(this));
    gDiv.fadeIn(2000);
  })
  .attr('id','galleryImg'+gZ)
  .attr('src',imgsrc)
  .addClass('GalleryImg')
  .error(function() { $(this).attr('src','images/spacer.gif').show(); })
  .show(function() {  });
}

/*var gLoadSpinnerUrl='images/progress.gif';
var gFailImage='images/spacer.gif';

function loadThisImage(el,imgsrc,callback) {
  var loader=$(el);
  //var image_src=loader.attr('src');
  var img=jQuery(new Image());
  img.hide();
 
  img.load(function() {
    cb_js=loader.get(0).getAttribute('onload');
    onload_cb=function() {
      eval(cb_js);
    }
 
    loader.html(this);
    loader.removeClass('loadable-image');
    loader.removeAttr('src');
    loader.removeAttr('onload');
    $(this).show(); 
    if (onload_cb) {
      onload_cb($(this));
    }
    if (callback) {
      cb=callback;
      cb($(this));
    }
  })
  .error(function() { $(this).attr('src', gFailImage).show(); })
  .attr('src',imgsrc)
  .show();//image_src
}

function loadImage(el,callback) {
  var loader=$(el);
  loader.html('<img src="'+gLoadSpinnerUrl+'"/>');
  loadThisImage($(img),loader,callback);
}

function loadAllImages() {
  $('.loadable-image').each(function() {
    var loader=$(this);
    loader.html('<img src="'+gLoadSpinnerUrl+'"/>');
    LoadThisImage(loader);
  });
}*/

