//
//  Copyright 2009 Heidi Joyce
//  Implementation by Bitvolution Ltd.
//

var numImages = 6;
var currentImageId = 1;
var imageFadeInDuration = 4000;  // In milliseconds 
var imageExtension = ".jpg";
var imageDirectory = "http://www.heidijoycegardens.com/wp-content/themes/heidijoyce_v05/images/";
var tabRotationDuration = 11000; // In milliseconds
var isTabsRotating = 1;

// This function preloads the home page images
function preloadImages()
{
  for(var i = 1; i < numImages+1; i++)  
    $('<img />').attr('src', imageDirectory+i+imageExtension);
}

// This function is used to animate an image
function animateImage(imageId)
{
  // Go back to first image if maximum reached
  if(++currentImageId > numImages)
    currentImageId = 1;

  $(imageId).hide(); // To stop flickering 
  $(imageId).attr('src', imageDirectory+currentImageId+imageExtension);
  $(imageId).fadeIn(imageFadeInDuration);
}

// This function is invoked when a new tab is selected
function onTabSelect(event, ui)
{  
  if(ui.panel.id == "home_tab_1")
  {
    animateImage('#home_img_1');
    $('#page_number').text("Page 1 of 2");
  }
  else
  {
    animateImage('#home_img_2');
    $('#page_number').text("Page 2 of 2");
  }
}

// This function is called when the play/pause button is pressed
function toggleTabRotation()
{
  var selectedTab = 0;

  if(isTabsRotating)
  {
    $('#home_tabs').tabs('rotate', 0);
    $('#play_pause').val("Play");
    isTabsRotating = 0;
  }
  else
  {
    $('#home_tabs').tabs('rotate', tabRotationDuration);
    $('#play_pause').val("Pause");
    isTabsRotating = 1;
    
    // Switch the currently selected tab
    selectedTab = $('#home_tabs').tabs('option', 'selected');
    
    if(selectedTab)
      $('#home_tabs').tabs('select', 0);
    else
      $('#home_tabs').tabs('select', 1);
  }
}

// This anonymous function is used to rotate the home page content
$().ready(function() 
{
  preloadImages(); 
  $('#home_tabs').tabs();
  $('#home_tabs').tabs('rotate', tabRotationDuration);
  $('#home_tabs').bind('tabsselect', onTabSelect);
});

