$(document).ready(function() {
	$('#slider').nivoSlider({
        effect: 'slideInLeft', // Specify sets like: 'fold,fade,sliceDown'
        slices: 15, // For slice animations
        boxCols: 8, // For box animations
        boxRows: 4, // For box animations
        animSpeed: 400, // Slide transition speed
        pauseTime: 4000, // How long each slide will show
        startSlide: 0, // Set starting Slide (0 index)
        directionNav: true, // Next & Prev navigation
        directionNavHide: false, // Only show on hover
        controlNav: true, // 1,2,3... navigation
        controlNavThumbs: true, // Use thumbnails for Control Nav
        controlNavThumbsFromRel: true, // Use image rel for thumbs
        controlNavThumbsSearch: '.jpg', // Replace this with...
        controlNavThumbsReplace: '_thumb.jpg', // ...this in thumb Image src
        keyboardNav: true, // Use left & right arrows
        pauseOnHover: true, // Stop animation while hovering
        manualAdvance: false, // Force manual transitions
        captionOpacity: 0.8, // Universal caption opacity
        prevText: 'Prev', // Prev directionNav text
        nextText: 'Next', // Next directionNav text
        randomStart: false, // Start on a random slide
        beforeChange: function(){}, // Triggers before a slide transition
        afterChange: function(){}, // Triggers after a slide transition
        slideshowEnd: function(){}, // Triggers after all slides have been shown
        lastSlide: function(){}, // Triggers when last slide is shown
        afterLoad: function(){} // Triggers when slider has loaded
    });
    
    var buttons = { previous:$('#portslidecontent .port-previous') ,
		next:$('#portslidecontent .port-next') };
						
	$obj = $('#portslidecontent').portJSidernews( { interval : 4000,
		direction		: 'opacitys',	
	 	easing			: 'easeInOutExpo',
		duration		: 1200,
		auto		 	: true,
		maxItemDisplay  : 8,
		navPosition     : 'horizontal', // horizontal
		navigatorHeight : 27,
		navigatorWidth  : 34,
		mainWidth: 938,
		buttons			: buttons} 
	);
    
    $('#spire-team-news').jcarousel({
    	wrap: 'circular',
        scroll: 1,
        auto: 6
    });
	
	    $('#spire-quotes').jcarousel({
    	wrap: 'circular',
        scroll: 1,
        auto: 6
    });
    
    $(".hoverImg").hover(function() {
                $(this).attr("src", $(this).attr("src").split("1.").join("2."));
        }, function() {
                $(this).attr("src", $(this).attr("src").split("2.").join("1."));
        });

        $("body").append('<div id="preload" style="display: none;"></div>');
        $(".hoverImg").each(function(intIndex) {
                $("#preload").append('<img src="'+$(this).attr("src").split("1.").join("2.")+'" style="display: none;" />');
    });
    
    $(".hoverImgPort").hover(function() {
                $(this).attr("src", $(this).attr("src").split("2.").join("1."));
        }, function() {
                $(this).attr("src", $(this).attr("src").split("1.").join("2."));
        });

        $("body").append('<div id="preload" style="display: none;"></div>');
        $(".hoverImg").each(function(intIndex) {
                $("#preload").append('<img src="'+$(this).attr("src").split("1.").join("2.")+'" style="display: none;" />');
    });
    
	$("#ib-form").validate({ 
	        	rules: { 
	         		name: {
						required: true
					},
					company: {
						required: true
					},
					position: {
						required: true
					},
					email: {
						required: true,
						email: true
					},
					phone: {
						required: true
					},
					url: {
						required: false
					},
					address: {
						required: true
					},
					city: {
						required: true
					},
					state: {
						required: true
					},
					zip: {
						required: true
					},
					message: {
						required: true
					},
					businessplan: {
						required: false
					},
					vcard: {
						required: false
					}
	        	},
	        	messages: { 
	           		
					name: "Required",

					company: "Required",
					
					position: "Required",
			  		
			  		email: "Required",
			  		
			  		phone: "Required",
			  		
			  		url: "Required",
			  		
			  		address: "Required",
			  		
			  		city: "Required",

			  		state: "Required",
			  		
			  		zip: "Required",
			  		
			  		message: "Required",
			  		
			  		businessplan: "Required",
			  		
			  		vcard: "Required"
	        	} 
			});

	$("#e-form").validate({ 
	        	rules: { 
	         		name: {
						required: true
					},
					company: {
						required: true
					},
					position: {
						required: true
					},
					email: {
						required: true,
						email: true
					},
					phone: {
						required: true
					},
					url: {
						required: false
					},
					address: {
						required: true
					},
					city: {
						required: true
					},
					state: {
						required: true
					},
					zip: {
						required: true
					},
					message: {
						required: true
					},
					businessplan: {
						required: false
					},
					vcard: {
						required: false
					}
	        	},
	        	messages: { 
	           		
					name: "Required",

					company: "Required",
					
					position: "Required",
			  		
			  		email: "Required",
			  		
			  		phone: "Required",
			  		
			  		url: "Required",
			  		
			  		address: "Required",
			  		
			  		city: "Required",

			  		state: "Required",
			  		
			  		zip: "Required",
			  		
			  		message: "Required",
			  		
			  		businessplan: "Required",
			  		
			  		vcard: "Required"
	        	} 
			});

	$("#c-form").validate({ 
	        	rules: { 
	         		name: {
						required: true
					},
					company: {
						required: true
					},
					position: {
						required: true
					},
					email: {
						required: true,
						email: true
					},
					phone: {
						required: true
					},
					url: {
						required: false
					},
					address: {
						required: true
					},
					city: {
						required: true
					},
					state: {
						required: true
					},
					zip: {
						required: true
					},
					message: {
						required: true
					},
					businessplan: {
						required: false
					},
					vcard: {
						required: false
					}
	        	},
	        	messages: { 
	           		
					name: "Required",

					company: "Required",
					
					position: "Required",
			  		
			  		email: "Required",
			  		
			  		phone: "Required",
			  		
			  		url: "Required",
			  		
			  		address: "Required",
			  		
			  		city: "Required",

			  		state: "Required",
			  		
			  		zip: "Required",
			  		
			  		message: "Required",
			  		
			  		businessplan: "Required",
			  		
			  		vcard: "Required"
	        	} 
			});

	$("#i-form").validate({ 
	        	rules: { 
	         		name: {
						required: true
					},
					company: {
						required: true
					},
					position: {
						required: true
					},
					email: {
						required: true,
						email: true
					},
					phone: {
						required: true
					},
					url: {
						required: false
					},
					address: {
						required: true
					},
					city: {
						required: true
					},
					state: {
						required: true
					},
					zip: {
						required: true
					},
					message: {
						required: true
					},
					businessplan: {
						required: false
					},
					vcard: {
						required: false
					}
	        	},
	        	messages: { 
	           		
					name: "Required",

					company: "Required",
					
					position: "Required",
			  		
			  		email: "Required",
			  		
			  		phone: "Required",
			  		
			  		url: "Required",
			  		
			  		address: "Required",
			  		
			  		city: "Required",

			  		state: "Required",
			  		
			  		zip: "Required",
			  		
			  		message: "Required",
			  		
			  		businessplan: "Required",
			  		
			  		vcard: "Required"
	        	} 
			});
			
    //Portfolio
    $('.fund1').hide();
    
    var selectedindustry="";
    
    $('.port-button a#fund1').click(function(){
		$('.investment').hide();
		$('.fund1').show();
		$("select#indsel").val(0);
    });

    $('.port-button a#fund2').click(function(){
		$('.investment').hide();
		$('.fund2').show();
		$("select#indsel").val(0);
    });
	
    $('select#indsel').change(function(){
		$('.investment').hide();
		selectedindustry= $(this).val();
		$('.' + selectedindustry).show();
    });

    //Media
    var selectedyear="";
	
    $('select#year').change(function(){
		$('#first-tab .media-item').removeClass('isVisible').addClass('isHidden');
		selectedyear= $(this).val();
		$('.' + selectedyear).removeClass('isHidden').addClass('isVisible');
		paginate("first-tab", 1);
    });

/* media  feeds */
	
	if($("#images").length !=0){	
		$("#images a").fancybox();
	}
	
	if($("#videos").length !=0){
		$("#videos a").click(function() {
		$.fancybox({
				'padding'		: 0,
				'autoScale'		: false,
				'transitionIn'	: 'none',
				'transitionOut'	: 'none',
				'title'			: this.title,
				'width'		: 680,
				'height'		: 495,
				'href'			: this.href.replace(new RegExp("watch\\?v=", "i"), 'v/'),
				'type'			: 'swf',
				'swf'			: {
				   	 'wmode'		: 'transparent',
					'allowfullscreen'	: 'true'
				}
			});
	
			return false;
		});
	}

//SpireCapital
	if($("div.home-tweet").length!=0){	
		$("div.home-tweet").tweet({
			username: ["SpireCapital","carpathiahost", "tom_velocity","rainbowccc","PBR","jmiteam","certiport","SkyMall","ventraq"],
			join_text: "auto",
			avatar_size: 32,
			count: 3,
			auto_join_text_default: "we said,",
			auto_join_text_ed: "we",
			auto_join_text_ing: "we were",
			auto_join_text_reply: "we replied to",
			auto_join_text_url: "",
			loading_text: "loading tweets..."
		}); 
	}

//Pagination
var perPage = 10;
var doPageNumbers = true;
var pageNumWindow = 4;	// Number of pages before & after current to show.

function paginate(section, pageNum, initial) {
// Define the variables we need
	pageNum = parseInt(pageNum);
	var maxPages = Math.ceil(jQuery("#"+section+" li:not(.isHidden)").length / perPage);
	var firstArticle = (pageNum - 1) * perPage;
	var lastArticle = firstArticle + perPage - 1;
// End Defining Variables

// Start Pagination Navigation
	if (initial) {

		jQuery("#"+section).append("<div id='paginator'><a class='prev'>Previous</a><span class='pages'></span><a class='next'>Next</a></div>");
		jQuery("#"+section+" .next").click(function() {
			paginate(section, jQuery(this).attr("href"));
			return false;
		});
		jQuery("#"+section+" .prev").click(function() {
			paginate(section, jQuery(this).attr("href"));
			return false;
		});
	}
	if (pageNum >= maxPages) {
		jQuery("#"+section+" .next").hide();
	} else {
		jQuery("#"+section+" .next").show();
	}
	if (pageNum <= 1) {
		jQuery("#"+section+" .prev").hide();
	} else {
		jQuery("#"+section+" .prev").show();
	}
	jQuery("#"+section+" .prev").attr("href", pageNum-1);
	jQuery("#"+section+" .next").attr("href", pageNum+1);
// End Pagination Navigation

// Start Pagination Window
	if (doPageNumbers == true) {
		var firstPage, lastPage, pageWindows;
		firstPage = pageNum - pageNumWindow;
		if (firstPage < 1) {
			firstPage = 1;
		}
		lastPage = pageNum + pageNumWindow;
		if (lastPage > maxPages) {
			lastPage = maxPages;
		}
		pageWindows = "";
		for (i=firstPage; i<=lastPage; i++) {
			if (pageNum == i) {
				pageWindows += "<a class='goToPage active' href='"+i+"'>"+i+"</a>";
			} else {
				pageWindows += "<a class='goToPage' href='"+i+"'>"+i+"</a>";
			}
		}
		jQuery("#"+section+" .pages").html(pageWindows);
		jQuery("#"+section+" .goToPage").click(function() {
			paginate(section, jQuery(this).attr("href"));
			return false;
		});
	}
// End Pagination Window

// Start Pagination Show/Hide Articles
	jQuery("#"+section+" li").hide();
	for (i=firstArticle; i<=lastArticle; i++) {
		jQuery("#"+section+" li:not(.isHidden):eq("+i+")").show();
	}
// End Pagination Show/Hide Articles

}

jQuery(function() {
	paginate("first-tab", 1, true);
	paginate("second-tab", 1, true);
});


	

/**/


/*
	    $('.investment').hide();    
    var notselectedfund="";
    var selectedindustry="";
    
    $('.port-button a#fund1').click(function(){
	    $('.investment').hide();
    	$('ul li.fund1').toggle();
    	notselectedfund="fund2";
    
    	if(selectedindustry!=""){
    		$('.investment').hide();
    		$('.' + selectedindustry).show();
    		$('.'+notselectedfund).hide();
    		}
    	
    });

    $('.port-button a#fund2').click(function(){
	    $('.investment').hide();
    	$('ul li.fund2').toggle();
    	notselectedfund="fund1";
    	
    	if(selectedindustry!=""){
    		$('.investment').hide();
    		$('.' + selectedindustry).show();
    		$('.'+notselectedfund).hide();
    		}
    });
    
     $('select').change(function(){
	    $('.investment').hide();
	    selectedindustry= $(this).val();
	    
	    
    	if(selectedindustry==""){
    		$('.investment').show();
    		$('.'+notselectedfund).hide();
    	}
    	else{
    	$("." +selectedindustry).toggle();
    	$('.'+notselectedfund).hide();
    	}
    });
/* */
    

});


// Simple Fading Slide show used on the Team Homepage
function slideSwitch() {
    var $active = $('#teamslideshow IMG.active');

    if ( $active.length == 0 ) $active = $('#teamslideshow IMG:last');

    // use this to pull the images in the order they appear in the markup
    var $next =  $active.next().length ? $active.next()
        : $('#teamslideshow IMG:first');

    // uncomment the 3 lines below to pull the images in random order
    
    // var $sibs  = $active.siblings();
    // var rndNum = Math.floor(Math.random() * $sibs.length );
    // var $next  = $( $sibs[ rndNum ] );


    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, 1000, function() {
            $active.removeClass('active last-active');
        });
}

$(function() {
    setInterval( "slideSwitch()", 4000 );
});	
	
