jQuery(document).ready(function($){

    /* Content Slider */
        var theslider = $('#keyslider')
            theslidercontent = theslider.children('.contents')
            theslidernav = theslider.children('.navigation')
            totalslides = theslidernav.find('li').length
            i=0;
        theslidercontent.find('.content').each(function(i){
            $(this).addClass('content-'+i);
        });
        theslidernav.find('li').each(function(c){
            $(this).addClass('nav-'+c)
                    .hover(function(){
                        clearTimeout(timeoutslide);
                        theslidercontent.find('.content-'+c+'').fadeIn().siblings('div').hide();
                        $(this).addClass('selected').siblings().removeClass('selected');
                    },function(){
                        timeoutslide = setTimeout(simpleslide,3000);
                    });
        });
        
        var simpleslide = function simpleslide() {
            if(i==totalslides){
                i = 0;
            } else {
                i = ++i;
            }
            theslidernav.find('li').eq(i).addClass('selected').siblings().removeClass('selected');
            $('.content', theslidercontent).hide().addClass('hidden').parents().find('.content-'+i).fadeIn().removeClass('hidden');
            timeoutslide = setTimeout(simpleslide,3000);
        };			       
    	timeoutslide = setTimeout(simpleslide,3000);
	
	/* Tool Tip and its trigger */
    	$('.tool-tip-trigger').click(function(){
        	var ref = $(this).attr('rel')
            	height = $(this).height();
            $('.tool-tip').hide();
        	$('#'+ref).toggle().css({'top':height});
    	});
    	$('.tool-tip .close').click(function(){
        	$(this).parent().hide();
        	return false;
    	});
	
	/* Date Picker Trigger */
	Date.firstDayOfWeek = 0;
	Date.format = 'yyyy/mm/dd';
	$('.date-pick').datePicker(
		{
			startDate: (new Date().addYears(-2)).asString(),
			endDate: (new Date().addDays(1)).asString(),
			clickInput:true,
			createButton:false
		}
	);
});

jQuery.fn.slideShows = function(options){
  var slides = $(this);
  /* default variables */
  var defaults = {
    delaytime : 5000,
    animation : true
  };
  /* assign options */
  var options = $.extend(defaults, options);	
  /* assign variables */
  var delaytime = options.delaytime;
  var animation = options.animation;
  /* class indexing */
  $('.slide-content',this).each(function(index){
    $(this).addClass('slide-'+index);
    $(this).hover(function(){
    clearTimeout(timeoutslide);
    },function(){
    if(animation==true){timeoutslide = setTimeout(simpleslide,delaytime);};
    });
  });
  /* how many slide contents? */
  var totalslides = $('.slide-content',this).length;
  /* Begin The Show */
  var i=0; //Index of slide
  /* slide animation */
  var simpleslide = function simpleslide() {	        
    clearTimeout(timeoutslide);
    /* end of slides */
    if(i==totalslides-1){
    i = 0;
    } else {
    i = ++i;
    }
    /* animate and assign classes */
    $('.slide-nav li a', slides).removeClass('selected').eq(i).addClass('selected');
    if($.browser.msie){
      $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+i).show().removeClass('hidden');
      }else {
      $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+i).fadeIn().removeClass('hidden');
    }
    timeoutslide = setTimeout(simpleslide,delaytime);
  };
  /* animate or not? */
  if(animation==true){
    timeoutslide = setTimeout(simpleslide,delaytime);
  };
  /* Navigation */
  $('.slide-nav li a', this).each(function(index){
    $(this).addClass('slide-'+index);
    $(this).hover(function(){ 
      clearTimeout(timeoutslide);
      $(this).addClass('selected').parent().siblings().children().removeClass('selected');
      if($.browser.msie){ // Damn you, IE6
        $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+index).show().removeClass('hidden');
      }else {
        $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+index).fadeIn().removeClass('hidden');
      }
    },function(){
      if(animation==true){timeoutslide = setTimeout(simpleslide,delaytime);};
    });
  }); // end of navigation
};
/* Gallery Slide */
jQuery.fn.gallerySlide = function(options){
  var slides = $(this);
  /* default variables */
  var defaults = {
    delaytime : 5000,
    animation : true
  };
  /* assign options */
  var options = $.extend(defaults, options);	
  /* assign variables */
  var delaytime = options.delaytime;
  var animation = options.animation;
  /* class indexing */
	$('.slide-content',this).each(function(index){
		$(this).addClass('slide-'+index);
		$(this).hover(function(){
    		clearTimeout(timeoutslide);
		},function(){
    		if(animation==true){timeoutslide = setTimeout(simpleslide,delaytime);};
		});
	});
  /* how many slide contents? */
  var totalslides = $('.slide-content',this).length;
  /* Begin The Show */
  var i=0; //Index of slide
 
 
 
  /* slide animation */
	    var simpleslide = function simpleslide() {	        
	        clearTimeout(timeoutslide);
	        /* end of slides */
	        if(i==totalslides-1){
	            i = 0;
	        } else {
	            i = ++i;
	        }
	        /* animate and assign classes */
	        $('.slide-nav li a', slides).removeClass('selected').eq(i).addClass('selected');
	        if($.browser.msie){
    	        $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+i).show().removeClass('hidden');
	        }else {
    	        $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+i).fadeIn().removeClass('hidden');
	        }	        
	        timeoutslide = setTimeout(simpleslide,delaytime);
	    };
  
  
  /* animate or not? */
  if(animation==true){
    thetimeout = setTimeout(simpleslide,delaytime);
  }
  /* Navigation */
  $('.slide-nav li a', this).each(function(index){
    /* exclude previous and next button from content index */
    if($(this).hasClass('prev') || $(this).hasClass('next')) {
      /* in case it is previous or next: */
      switch($(this).attr('class')){
        case 'prev':
          $(this).click(function(){
            /* cancel out the show */
            clearTimeout(thetimeout);
            /* find which content is active, grab their index*/
            var theclass = $('.slide-content:not(.hidden)', slides).attr('class').split(' ');
            var y = parseInt(theclass[1].slice('6'));
            if(y==1){
              $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+totalslides).fadeIn().removeClass('hidden');
              $('.slide-nav li a', slides).removeClass('selected').eq(totalslides).addClass('selected');
            } else {
              $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+(y-1)).fadeIn().removeClass('hidden');
              $('.slide-nav li a', slides).removeClass('selected').eq(y-1).addClass('selected');
            }
            return false;
          });
        break;
        case 'next':
          $(this).click(function(){
            /* cancel out the show */
            clearTimeout(thetimeout);
            /* find which content is active, grab their index*/
            var theclass = $('.slide-content:not(.hidden)', slides).attr('class').split(' ');
            var x = parseInt(theclass[1].slice('6'));
            if(x==totalslides){
              $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+1).fadeIn().removeClass('hidden');
              $('.slide-nav li a', slides).removeClass('selected').eq(1).addClass('selected');
            } else {
              $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+(x+1)).fadeIn().removeClass('hidden');
              $('.slide-nav li a', slides).removeClass('selected').eq(x+1).addClass('selected');
            }
            return false;
          });
        break;
      }; // end of cases
    
    } else { // if it is slide index, do the following:
      $(this).addClass('slide-'+index);
      $(this).click(function(){
        clearTimeout(thetimeout);
        $(this).addClass('selected').parent().siblings().children().removeClass('selected');
        $('.slide-content', slides).hide().addClass('hidden').filter('.slide-'+index).fadeIn().removeClass('hidden');
        return false;
      });
    };
  }); // end of navigation
};
/* Tabbed Menu */
jQuery.fn.tabbedMenu = function(){
  
  var defaults = {  
    divWrapper: '.tabs li', 
    divContent: '.tab_content' 
  };
  var options = $.extend(defaults, options);	
  
  var div = $(options.divWrapper, this);
  var content = $(options.divContent, this);
  
  /* Clicking */
  div.each(function(index){
    content.hide().eq(0).show();
    $('a', div).removeClass('selected').eq(0).addClass('selected');
    $(this).click(function(){
      $('a', div).removeClass('selected').eq(index).addClass('selected');
      content.hide().addClass('hidden').eq(index).removeClass('hidden').fadeIn();
      return false;
    });
  });  
};
/* Accordion */
jQuery.fn.accordionized = function() {
  
  var defaults = {  
    trigger: '.accordion_head', 
    content: '.pallet' 
  };
  
  var options = $.extend(defaults, options);
  var content = $(options.content, this);
  var trigger = $(options.trigger, this);
  
  content.hide().eq(0).show();
  trigger.removeClass('selected').eq(0).addClass('selected');
  trigger.each(function(index){
    $(this).click(function(){
      trigger.removeClass('selected').eq(index).addClass('selected');
      content.slideUp().eq(index).slideDown();
    });
  });
}
// Initiation
jQuery(document).ready(function($){
  $('#highlight').slideShows();
  $('.galleryslide, .galleryhighlight').gallerySlide();
  $('.review_widget').tabbedMenu();
  $('.accordion').accordionized();
  // !Banner Bottom Ads
  if($('#bottomads').size()>0){
    $('#footer').css({'margin-bottom':'65px'});
    $('#bottomads .close').click(function(e){
      $('#footer').css({'margin-bottom':'15px'});
      $('#bottomads').remove();
      e.preventDefault();
    });
    if($.browser.msie && ($.browser.version < 8)) {
      function recalculate(event) {
        var footer = $("#bottomads");
        var theWindow = $(window);
        var elementHeight = footer.height();
        var windowHeight = theWindow.height();
        var scrollTop = theWindow.scrollTop();
        footer.css("position", 'absolute');
        footer.css("top", windowHeight - elementHeight + scrollTop);
      }
      $(window).bind("resize scroll", recalculate);
      recalculate();
    }
  }
});

