/*
Tey Bannerman
File: js/tey.js
Last edited: August 6, 2010
*/


/* =========================================
  Navigation
========================================== */

$(document).ready(function(){

	$('#nav li a').hover(
	function(){
		$(this).parent().addClass('hover');
	},
	function(){
		$(this).parent().removeClass('hover');
	}
	);
	
	/* "here" */
	//$('#surprise').fadeOut(1000);
	$('#here').hover(
		function() {
			$('#surprise').stop(true,true).show().animate({top:'1000px'},1400).fadeOut(400);
			$('#surprise').css('top','-1000px');
			_gaq.push(['_trackEvent', 'Special', 'Rainbow Audacity']);
		},
		function() {
			$('#surprise').css('top','-1000px');
		}
	);
	
	/* LocalScroll */
    
	$.localScroll({
		offset:{top:-180, left:0},
		duration:500,
		easing:'swing'
	});
	
	/* Set active nav based on window location */
	
    function isOnPoint(elem) {
	  var pTop = $(window).scrollTop();
      var pBot = $(window).scrollTop() + 300;
      var eTop = $(elem).offset().top;
      var eBot = eTop + $(elem).height() + 201;
      return ((eBot >= pTop) && (eTop <= pBot));
    }
    
    $(window).scroll(function() {  		
		if(isOnPoint('#first')) { 
			$('#nav li').removeClass('active');
			$('#nav-home').addClass('active');				
		}
			if(isOnPoint('#folio')) { 
			$('#nav li').removeClass('active');
			$('#nav-folio').addClass('active');				
		}
			if(isOnPoint('#skills')) { 
			$('#nav li').removeClass('active');
			$('#nav-skills').addClass('active');				
		}
			if(isOnPoint('#cv')) { 
			$('#nav li').removeClass('active');
			$('#nav-cv').addClass('active');				
		}
			if(isOnPoint('#reach')) { 
			$('#nav li').removeClass('active');
			$('#nav-reach').addClass('active');				
		}
		if ($(window).scrollTop() > 3600) {
			$('#bottom').slideDown();
		} else {
			$('#bottom').slideUp();
		}
    });
	
	$('#bottom').slideUp();
	
});


/* =========================================
  Portfolio
========================================== */

$(document).ready(function(){

	/* nth child (for ie) */
	
	//$('ul#folio-list li:nth-child(4n)').css('margin-right', '0px');
	
	/* Filterable */
	
	$('#folio-list').filterable({
		animationSpeed: 1000,
		useTags: false,
		allTag: 'go',
		show: { width: 'show', opacity: 'show' },
		hide: { width: 'hide', opacity: 'hide' }
	});
	
	//$('.build, .develop').css('display','none');
	//$('.design').css('display','');
	$('#folio-list').trigger('filter', [ '#design' ]);
	
	$('#folio-link-design').click(function(){
        $('#folio-list').trigger('filter', [ '#design' ]);
		$('.folio-links').removeClass('active');
		$(this).addClass('active');
    });
	$('#folio-link-build').click(function(){
        $('#folio-list').trigger('filter', [ '#build' ]);
		$('.folio-links').removeClass('active');
		$(this).addClass('active');
    });
	$('#folio-link-develop').click(function(){
        $('#folio-list').trigger('filter', [ '#develop' ]);
		$('.folio-links').removeClass('active');
		$(this).addClass('active');
    });
	

	/* Effects */
	
	$('#folio-list li').hover(function() {
		var thumbOver = $(this).find('img').attr('src');
		$(this).find('a.thumb').css({'background' : 'url(' + thumbOver + ') no-repeat center bottom'});
		$(this).find('span').stop().fadeTo('normal', 0 , function() {
			$(this).hide();
		});
	} , function() {
		$(this).find('span').stop().fadeTo('normal', 1).show();
	});

	/* Shadowbox */
	
	Shadowbox.init({
		continuous: false,
		counterLimit: 15,
		counterType: 'skip',
		handleOversize: 'drag',
		initialHeight: 60,
		initialWidth: 150,
		modal: false,
		overlayOpacity: 0.9
	});
});


/* =========================================
  Tooltips
========================================== */

$(document).ready(function(){
	$('#bar-dd2').hover(
		function(){
			$('#bar-dd1').mouseover();
			$('#bar-dd1').addClass('hover');
		},
		function(){
			$('#bar-dd1, #bar-dd2').removeClass('hover');
		}
	);
	$('#bar-dd1').hover(
		function(){
			$('#bar-dd2').addClass('hover');
		},
		function(){
			$('#bar-dd1, #bar-dd2').removeClass('hover');
		}
	);
	
	$('.bar-em, .bar-ed').not('#bar-dd2').tipTip({defaultPosition:'bottom', edgeOffset:-176, delay:200});
});

/* =========================================
  Contact Form
========================================== */

$(document).ready(function(){

	/* Email link */
	
	$('#reach-email').hover(function(){
		var $araw = $('#reach-email').attr('href');
		var addr = $araw.replace(' at ',"@").replace(' dot ',".");
		$('#reach-email').attr('href',addr);
	});

	/* Opacity */
	
	$('.reachlink').fadeTo('fast',0.5);
	$('.reachlink').hover(
		function() {
			$(this).fadeTo('fast',1.0);
		},
		function() {
			$(this).fadeTo('slow',0.5);
		}
	);
	
	/* Default values */
	
	$('#contact_name, #contact_email, #contact_msg').defaultvalue('Name...', 'Email...', 'Message...');
	
	/* Transition effect */
	
	$('#contact_name, #contact_email, #contact_msg').focus(function() {
		$(this).animate({
			backgroundColor:"#CCCCCC",
			color:"#000000"
		}, 'slow');
	});
	$('#contact_name, #contact_email, #contact_msg').blur(function() {
		$(this).animate({
			backgroundColor:"#000000",
			color:"#FFFFFF"
		}, 'slow');
	});
	
	/* Hide submit button initially */
	/*
	$('#contact_button').hide();
	
	$('#reach input, #reach textarea').blur(function() {
		if (   $('#contact_name').val()==''
			|| $('#contact_name').val()=='Name...'
			|| $('#contact_email').val()==''
			|| $('#contact_email').val()=='Email...') {
			$('#contact_button').show(400);
		}
		else {
			$('#contact_button').hide(400);
		}
	});
	*/
	
	/* Form validation */

	$('#contact_button').click(function() {
		var name = $('input#contact_name').val();
		if (name=='' || name=='Name...') {
			$('input#contact_name').focus();
			return false;
		}
		var email = $('input#contact_email').val();
		if (email=='' || email=='Email...') {
			$('input#contact_email').focus();
			return false;
		}
		var msg = $('#contact_msg').val();
		if (msg=='' || msg=='Message...') {
			$('#contact_msg').focus();
			return false;
		}
		
		var dataString = 'name='+ name + '&email=' + email + '&msg=' + msg;
		//alert (dataString); return false;
		
		$.ajax({
			type: 'POST',
			url: 'bin/getintouch.php',
			data: dataString,
			success: function() {
				$('#contact').fadeOut();
				$('#contact').html('<div id="contact_confirmation"></div>');
				$('#contact_confirmation').html('<h4>Woohoo! Mission Accomplished!</h4>').append('<p><br/>Hey ' + name + '. Thanks for visiting. Your submission has just been zoomed off directly to my Inbox, and unless I\'m incapacitated or galivanting about somewhere mysterious then you\'ll probably receive a reply within 24 hours. Until then, be well stranger.</p>');
				$('#contact').fadeIn();
				$('#nav-home').click(function(){_gaq.push(['_trackEvent', 'Submission', 'Get in Touch']);});
			}
		});
		return false;
	});
});

/* =========================================
  Analytics Tracking
========================================== */

$(document).ready(function(){
	$('#nav-home').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Home']);});
	$('#nav-folio').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Folio']);});
	$('#nav-skills').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Skills']);});
	$('#nav-cv').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'CV']);});
	$('#nav-reach').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Reach']);});
	$('#folio-link-design').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Folio - Design']);});
	$('#folio-link-build').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Folio - Build']);});
	$('#folio-link-develop').click(function(){_gaq.push(['_trackEvent', 'Navigation', 'Folio - Develop']);});
	$('#cv-link').click(function(){_gaq.push(['_trackEvent', 'Download', 'CV']);});
	$('a.thumb').click(function(){_gaq.push(['_trackEvent', 'Portfolio', $(this).attr('title')]);});
	$('a.reachlink').click(function(){_gaq.push(['_trackEvent', 'Reach', $(this).find('img').attr('alt')]);});
});
