jQuery(function($) { 

    // drop down menus
    $('#top_menu')
      .supersubs({ 
            minWidth:    12,
            maxWidth:    27,
            extraWidth:  1
        })
      .superfish({
        autoArrows:  false
    });
    
    // if this page has a thickbox link, but the thickbox object doesn't exist, then add it in
    if( ($('a.promo').is('*') || $('#home-promo').is('*') || $('a.thickbox').is('*')) && typeof tb_init == 'undefined')
    {
      $('body').append('<link rel="stylesheet" type="text/css" href="/css/thickbox.css" />');
      $.getScript('/js/thickbox.js');
    }
    
    // if this is a page with media download images, we store all the lightbox
    // window content in an array (yes it's messy, but it works
    if($('#gallery .item.download').is('*'))
    {
      $('#gallery .item.download').each(function(i){
        $(this).data('html', $('.imageDownload', this).html());
      });
      $('p.imageNav a.back').click($.backclick);
      $('p.imageNav a.next').click($.nextclick);
    }
    
    // add hover effects to the enquiry button
    $.preloadImages('/images/btn-enquire-down.jpg', '/images/btn-enquire-over.jpg');
    $('#enquire-button').hover(function(){
      $(this).find('img').attr('src', '/images/btn-enquire-over.jpg');
    }, function(){
      $(this).find('img').attr('src', '/images/btn-enquire.jpg');
    }).mousedown(function(){
      $(this).find('img').attr('src', '/images/btn-enquire-down.jpg');
    }).mouseup(function(){
      $(this).find('img').attr('src', '/images/btn-enquire.jpg');
    });

    
    // if this is a page in the secure media section, append the media menu to the header
    if(document.location.href.indexOf('MediaSection') > 0)
    {
      var submenu = '';
      submenu += '<ul id="subnav">';
      submenu += '  <li><a style="width: 50%;" href="/index.php?mact=MediaSection,m1,releaselist,0&page=92">Media Release Archive &raquo;</a></li>';
      submenu += '  <li><a style="width: 50%;" href="/index.php?mact=MediaSection,m1,imagescatlist,0&page=92">Media Image Library &raquo;</a></li>';
      submenu += '  <li><a style="width: 50%;" href="/index.php?mact=MediaSection,m1,logopage,0&page=92">Logo and Fact sheet &raquo;</a></li>';
      submenu += '</ul>';
      $('#logo').after(submenu);
    }
    
    // if this is the enquire page, load the jQuery Datepicker and integrate
    if($('#m4moduleform_1').is('form'))
    {
      var arrival_container = $('label:contains("Arrival")').parent();
      var depart_container = $('label:contains("Departure")').parent();
      $('select', arrival_container).hide().parent().append('<input type="text" />').find('input').datepicker({ 
        changeMonth: true, 
        changeYear: true, 
        dateFormat: 'dd-mm-yy',
        yearRange: '+00:+02',
        defaultDate: '+30d',
        onSelect: function(dateText, inst) {
          var date = $.datepicker.parseDate('dd-mm-yy', dateText);
          var depart_date = $.datepicker.parseDate('dd-mm-yy', dateText);
          depart_date.setDate(depart_date.getDate()+3);
          d_day = depart_date.getDate();
          if(d_day.toString().length == 1)
          {
            d_day = '0' + d_day;
          }
          d_month = depart_date.getMonth() + 1;
          if(d_month.toString().length == 1)
          {
            d_month = '0' + d_month;
          }
          $('select:eq(0)', arrival_container).val(date.getDate());
          $('select:eq(1)', arrival_container).val(date.getMonth()+1);
          $('select:eq(2)', arrival_container).val(date.getFullYear());
          $('select:eq(0)', depart_container).val(d_day);
          $('select:eq(1)', depart_container).val(d_month);
          $('select:eq(2)', depart_container).val(depart_date.getFullYear());
          $('input.hasDatepicker', depart_container).val(d_day + '-' + d_month + '-' + depart_date.getFullYear());
        }
      });
      $('select', depart_container).hide().parent().append('<input type="text" />').find('input').datepicker({ 
        changeMonth: true, 
        changeYear: true, 
        dateFormat: 'dd-mm-yy',
        yearRange: '+00:+02',
        defaultDate: '+37d',
        onSelect: function(dateText, inst) {
          var date = dateText.split('-');
          $('select:eq(0)', depart_container).val(parseInt(date[0]));
          $('select:eq(1)', depart_container).val(parseFloat(date[1]));
          $('select:eq(2)', depart_container).val(parseInt(date[2]));
        }
      });
    }
    
    // rollover for social icons
    $.preloadImages('/images/facebook-over.jpg', '/images/trip-over.jpg');
    $('#facebook a').hover(function(){
      var img = $(this).find('img:eq(0)');
      img.attr('src', img.attr('src').replace('.jpg', '-over.jpg'));
    }, function(){
        var img = $(this).find('img:eq(0)');
        img.attr('src', img.attr('src').replace('-over.jpg', '.jpg'));
    });    
    
    // for safari, need to remove main homepage flash when the video window comes up
    $('body.body-home #content a.thickbox').click(function(){
    	$('body.body-home #movie object').css('display', 'none');
    });
    
});

jQuery.backclick = function(){
  var this_id = $(this).parents('div.imgDetailedBox').attr('id').replace('img_', '');
  var current_node_container = $('#imgDetailed' + this_id).parents('.item.download:eq(0)');
  if(current_node_container.prev().length > 0)
  {
    $('#TB_ajaxContent').html(current_node_container.prev().data('html'));
  }
  else
  {
    $('#TB_ajaxContent').html($('div.item.download:last-child').data('html'));
  }
  $('#TB_ajaxContent p.imageNav a.back').click($.backclick);
  $('#TB_ajaxContent p.imageNav a.next').click($.nextclick);
}

jQuery.nextclick = function(){
  var this_id = $(this).parents('div.imgDetailedBox').attr('id').replace('img_', '');
  var current_node_container = $('#imgDetailed' + this_id).parents('.item.download:eq(0)');
  if(current_node_container.next().length > 0)
  {
    $('#TB_ajaxContent').html(current_node_container.next().data('html'));
  }
  else
  {
    $('#TB_ajaxContent').html($('div.item.download:first-child').data('html'));
  }
  $('#TB_ajaxContent p.imageNav a.back').click($.backclick);
  $('#TB_ajaxContent p.imageNav a.next').click($.nextclick);
}

jQuery.preloadImages = function()
{
  for(var i = 0; i<arguments.length; i++)
  {
    jQuery("<img>").attr("src", arguments[i]);
  }
}

function showPromoBox()
{
  tb_show('','/promo?modal=true&TB_iframe=true&height=515&width=802');
}
