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

	sfHover = function() {
		var sfEls = document.getElementById("nav").getElementsByTagName("LI");
		for (var i=0; i<sfEls.length; i++) {
			sfEls[i].onmouseover=function() {
				this.className+=" sfhover";
			}
			sfEls[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
			}
		}
	}
	if (window.attachEvent) window.attachEvent("onload", sfHover);
	
	// apple conditionals
	var isiPad = navigator.userAgent.match(/iPad/i) != null;
	var isiPhone = (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i));
	
	if(isiPad){
		$("html").addClass("ipad");
	}
	if(isiPhone){
		$("html").addClass("iphone");
	}
	// end apple conditionals
	
	$(".pirobox_recent").fancybox({
		
		'centerOnScroll': true,
		'hideOnContentClick': true,
		'titleShow': false,
		'transitionIn': 'elastic',
		'transitionOut': 'elastic',
		'overlayColor': '#000000'
		
	});
	
	//_<?php echo get_post_meta($i->ID, 'category', true); ?>
	
	function changeSlide(slide_to) {
		if ($('.slider ul').is(':animated')) {
			return false;
		}
		
		var current = $('.slider .current');
		if (slide_to == 'next') {
			var target = $(current).next();
			var left = -1;
			
			if(target.parent().attr('id') != 'slide'){
			
				//last item
				var target = $("#slide li:first"),
					last = true;
				
			}
			
		} else {
			var target = $(current).prev();
			var left = 1;
			
			if(target.parent().attr('id') != 'slide'){
			
				//first item
				var target = $("#slide li:last"),
					first = true;
				
			}
			
			
		}
		
		if (target.length) {
			$(current).removeClass('current');
			$(target).addClass('current');
			var left = ($(window).width() / 2 - $(target).position().left - $(target).width() / 2);
			//left = parseFloat($('.slider ul').css('left')) + ($(target).width() * left);
			$('.slider ul').animate({'left': left.toString() + 'px'});
		} else {
			
			$(current).removeClass('current');
			
			if(last){
				
				$(target).addClass('current');
				var left = ($(window).width() / 2 - $(target).position().left - $(target).width() / 2);
				//left = parseFloat($('.slider ul').css('left')) + ($(target).width() * left);
				$('.slider ul').animate({'left': left.toString() + 'px'});

			
			}
			
			if(first){
			
				$(target).addClass('current');
				var left = ($(window).width() / 2 - $(target).position().left - $(target).width() / 2);
				//left = parseFloat($('.slider ul').css('left')) + ($(target).width() * left);
				$('.slider ul').animate({'left': left.toString() + 'px'});
			
			}
						
		}
		
		
		
	}
	
	$(window).resize(function() {
		if ($('.slider').length == 0) {
			return true;
		}
		target = $('.slider .current');
		var left = ($(window).width() / 2 - $(target).position().left - $(target).width() / 2);
		$('.slider ul').css('left', (left).toString() + 'px');
	});
		

	if ($('.slider').length > 0) {
		var middle = Math.floor($('.slider li').length / 2);
		middle = $('.slider li:eq(' + middle.toString() + ')');
		$(middle).addClass('current');
		var left = ($(window).width() / 2 - $(middle).width() / 2);
		$('.slider ul').css('left', (-($(middle).position().left - left)).toString() + 'px');
		
		$(".prev").click(function () {
			changeSlide('prev');
			return false;
		});
		
		$(".next").click(function () {
			changeSlide('next');
			return false;
		});
		
		function loopIt(){

			function doThis(){
			
				setTimeout(function(){
				
					$(".next").click();
					
					doThis();
				
				}, 4000);
			
			} //end of doThis
			
			doThis();
	
		}
		
		loopIt();
		
	}
	
	
	//contact form
	
	$('.fields').each(function() {

       var default_value = this.value;

       $(this).focus(function(){
               if(this.value == default_value) {
                       this.value = '';
               }
       });

       $(this).blur(function(){
               if(this.value == '') {
                       this.value = default_value;
               }
       });

	});
	
	// form submission
	$("form[name='contact']").submit(function() {
		
		var action = $(this).attr("action");
		
		$.post(action, $(this).serialize(), function(data){
			alert(data);
		});
		
		return false;
	});

// Shuffle function from: http://james.padolsey.com/javascript/shuffling-the-dom/
    
$.fn.shuffle = function() {

        var allElems = this.get(),
            getRandom = function(max) {
                return Math.floor(Math.random() * max);
            },
            shuffled = $.map(allElems, function(){
                var random = getRandom(allElems.length),
                    randEl = $(allElems[random]).clone(true)[0];
                allElems.splice(random, 1);
                return randEl;
            });
        
        this.each(function(i){
            $(this).replaceWith($(shuffled[i]));
        });
        
        return $(shuffled);
    };
        
   $(".gal-list")
        .css("opacity","0.8")
       .hover(function(){
           $(this).css("opacity","1");
       }, function() {
           $(this).css("opacity","0.8");
       })
       /*.click(function(){
           location.href = $(this).attr("rel"); 
           return false;
       }) 
       
       UNCOMMENT THIS TO MAKE THE BLOCKS CLICKABLE TO THEIR REL ATTRIBUTES
       
       */;
       
	$('#gallery').masonry({
	    columnWidth: 262, 
	    // only apply masonry layout to visible elements
	    itemSelector: '.gal-list:not(.invis)',
	    animate: true,
	    animationOptions: {
	        duration: speed,
	        queue: false
	    }
	});

	var speed = 650;
   
	jQuery.initFancybox = function(){
		
		$("a.pirobox:visible").fancybox({

			'centerOnScroll': true,
			'hideOnContentClick': true,
			'titleShow': false,
			'transitionIn': 'elastic',
			'transitionOut': 'elastic',
			'overlayColor': '#000000'

		});
		
	}
	
	$.initFancybox();

	$('.filter').click(function(){
	    var colorClass = '.' + $(this).attr('id');

	    if(colorClass=='.all') {
	        // show all hidden boxes
	        $('#gallery').children('.invis')
	            .toggleClass('invis').show().animate({opacity: 1},{ duration: speed });
	
			$('#gallery').find("a.pirobox").attr('rel','group');
	
	    } else {    
	        // hide visible boxes 
	        $('#gallery').children().not(colorClass).not('.invis')
	            .toggleClass('invis').animate({opacity: 0},{ duration: speed }).hide();
	        // show hidden boxes
	        $('#gallery').children(colorClass+'.invis')
	            .toggleClass('invis').show().animate({opacity: 1},{ duration: speed });
	
			$('#gallery').children().not(colorClass).each(function(index) {
				
				$(this).find("a.pirobox").attr('rel','');
				
			});
			
			$('#gallery').children(colorClass).each(function(index) {
				
				$(this).find("a.pirobox").attr('rel','group');
				
			});
	
	    }
	    $('#gallery').masonry();

	    return false;
	});
   
   
   $(".gal-list").shuffle();
   
	rainbows.init({
		selector: '#head .inner h2, #head-fixed .inner h2, .about h3, .about h4, #gal-filter h1',
		highlight: false,
		shadow: false,
		from: '#ffba00',
		to: '#cc5425'
	});

});
