var total_extras = 1;
function init_activities(){
  $("#ExtraActivities img:first").addClass("active").fadeIn(500);
  total_extras = $("#ExtraActivities img").length;
  if(total_extras > 1)setInterval('goto_activity(true);', 5000);
}

function goto_activity(next){
  if(total_extras > 1){
    var active_id = eval($("#ExtraActivities img.active").attr("id").substr(6));
    var next_id = (next) ? (active_id + 1) : (active_id - 1);
    if(next_id > total_extras)next_id = 1;
    if(next_id < 1)next_id = total_carousel;
        
    $("#ExtraActivities img.active").css({ "z-index": 1 }).removeClass("active").fadeOut(1000);     
    $("#ExtraActivities img#extra-"+next_id).fadeIn(500).css({ "z-index": 2 }).addClass("active");     
  }
}

function validateVoucher(prefix){
  if(prefix == "")prefix = "o_";
  var name = $("#"+prefix+"name").val();
  var email = $("#"+prefix+"email").val();
  var success = true;
  var error_message = "";
  
  if(name == "" || name == "Full name"){
    success = false;
    error_message += "You must include your name<br />";
  }
  if(email == "" || email == "Your e-mail"){
    success = false;
    error_message += "You must include a valid e-mail address<br />";
  }
  
  if(error_message != "")$(".contactForm .messages").html("<p>"+error_message+"</p>");
  return success;
}

function validateContact(prefix){
  if(prefix == "")prefix = "c_";
  var name = $("#"+prefix+"name").val();
  var email = $("#"+prefix+"email").val();
  var phone = $("#"+prefix+"phone").val();
  var success = true;
  var error_message = "";
  
  if(name == "" || name == "Full name"){
    success = false;
    error_message += "You must include your name<br />";
  }
  if(email == "" || email == "Your e-mail"){
    success = false;
    error_message += "You must include a valid e-mail address<br />";
  }
  if(phone == "" || phone == "Phone number"){
    success = false;
    error_message += "You must include your phone number<br />";
  }
  
  if(error_message != "")$(".contactForm .messages").html("<p>"+error_message+"</p>");
  return success;
}

function validate(name){
  var valid_email = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
  var type = name.substr(2);
  var input = $("#"+name);
  
  switch(type){
    case "name" : case "phone" : case "message" :
      if(input.val() == ""){
        input.parent("td").removeClass("green");
        input.parent("td").addClass("red");
      }else{
        input.parent("td").removeClass("red");
        input.parent("td").addClass("green");
      }
      break;
      
    case "email" :
      if(input.val() == ""){
        input.parent("td").removeClass("green");
        input.parent("td").addClass("red");
      }else if(valid_email.test(input.val()) == false){
        input.parent("td").removeClass("green");
        input.parent("td").addClass("red");
      }else{
        input.parent("td").removeClass("red");
        input.parent("td").addClass("green");
      }
      break;
  }
}

function buildFlyout(id, args){
  $("#flyoutContent").html($("#"+id).html());  
  switch(id){
    case "enquiryFormWindow" :
      $("#e_title").val(args[0]);
      break;
    case "voucherFormWindow" :
      $("h3.voucher").html(args[1]);
      $("#offer_id").val(args[0]);
      break;
    case "shareFormWindow" :
      $("h3.offer").html(args[1]);
      $("#offer_id").val(args[0]);
      break;
  }

  $("#flyoutShadow").show();
  $("#flyoutClose").show();
  $("#flyoutContent").show();
}

function hideFlyout(){
  $("#flyoutShadow").hide();
  $("#flyoutClose").hide();
  $("#flyoutContent").hide();
}

function scrollOffer(id){ $.scrollTo("#Offer" + id, 1000); }
function scrollTop(){ $.scrollTo(480, 1000); }

$(document).ready(function(){   
  // Activities menu
  $("#Left .activities li").hover( function(){ $(this).addClass("over"); $(this).children(".end").addClass("over"); }
  , function(){ $(this).removeClass("over"); $(this).children(".end").removeClass("over"); });
  
  // Image rollovers
  $(".rollover").hover( function(){
    var src = $(this).attr("src");
    if(!src.match(/-over./)){
      src = src.replace(".jpg", "-over.jpg");
      src = src.replace(".gif", "-over.gif");
      src = src.replace(".png", "-over.png"); 
      $(this).attr("src", src);
      $(this).addClass("hovering"); 
    }
  }, function(){ 
    if($(this).hasClass("hovering")){
      var src = $(this).attr("src");
      src = src.replace('-over.', '.'); 
      $(this).attr("src", src);
      $(this).removeClass("hovering");
    }
  });
  
  // Offer rollovers
  $(".latest-offer").mouseenter( function(){ $(this).addClass("over"); }).mouseleave( function(){ $(this).removeClass("over"); });
  
  // Smooth scrollers
  $(".scroll-top").click( function(){ $.scrollTo(480, 1000); });
  $(".highlight a").click( function(){
    var id = $(this).parents(".highlight").attr("id").substr(9);
    $.scrollTo("#Offer" + id, 1000);
  });
  
  // Flyout
  $("#flyoutShadow").click( function(){ hideFlyout(); });
  $("#flyoutClose").click( function(){ hideFlyout(); });
  
  // Carousel
  var carousel = $('#CarouselSlides').bxSlider({
    auto: true,
    speed: 1000,
    easing: 'easeOutBounce'
  });
  $("#Carousel img.left").click( function(){ carousel.goToPreviousSlide(); return false });
  $("#Carousel img.right").click( function(){ carousel.goToNextSlide(); return false });
  
  $("#Carousel").touchwipe({
	wipeLeft: function() { carousel.goToNextSlide(); },
    wipeRight: function() { carousel.goToPreviousSlide(); },
    preventDefaultEvents: true
  });  
  
  // Extra activities
  init_activities();
  
  // Gallery
  $(".image_carousel .container").carouFredSel({
    auto: { play: false },
    prev: { button: "#galleryLeft", key: "left" },
    next: ".image_carousel .right"
  });
  $(".image_carousel .container a").fancybox({
  	cyclic	: true,
  	onStart	: function() {
  		$(".image_carousel .container").trigger("pause");
  	},
  	onClosed: function() {
  		$(".image_carousel .container").trigger("play");
  	}
  });
       
  // Home activities
  $(".homeActivity").mouseenter( function(){ $(this).children(".text").animate({top: '-=40'}); }).mouseleave( function(){ $(this).children(".text").animate({top: '+=40'}); });
  
  // online enquiry
  $("#online-enquiry").jScroll({speed : "fast", top: 100 });
  $("#online-enquiry-button-top").bind('click', function() {
      $.scrollTo("#top", 500);
      return false;
  });
  
  $( '.woking-howdy' ).howdyDo({
	action		: 'push',
	effect		: 'slide',
	easing		: 'easeInOutExpo',
	autoStart	: false,
	initState	: 'closed',
	keepState	: false,
	duration	: 500,
	openAnchor	: '<a href="#" class="ir" id="howdy-open">Open</a>'
	//closeAnchor	: '<img src="images/close-16x16.png" border=0 />'
  });
  
   $( '.normal-howdy' ).howdyDo({
	action		: 'push',
	effect		: 'slide',
	easing		: 'easeInOutExpo',
	autoStart	: false,
	initState	: 'closed',
	keepState	: false,
	duration	: 500,
	openAnchor	: '<a href="#" class="ir" id="howdy-open">Open</a>'
	//closeAnchor	: '<img src="images/close-16x16.png" border=0 />'
  });
});
