jQuery.cookie=function(key,value,options){if(arguments.length>1&&String(value)!=="[object Object]"){options=jQuery.extend({},options);if(value===null||value===undefined){options.expires=-1;}
if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setDate(t.getDate()+days);}
value=String(value);return(document.cookie=[encodeURIComponent(key),'=',options.raw?value:encodeURIComponent(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));}
options=value||{};var result,decode=options.raw?function(s){return s;}:decodeURIComponent;return(result=new RegExp('(?:^|; )'+encodeURIComponent(key)+'=([^;]*)').exec(document.cookie))?decode(result[1]):null;};

var portNumber = 1;
var PORT_NUMBER_MAX = 11;	
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;

$(window).load(function() {	
	
	$('.slider').nivoSlider({
		pauseTime: 6000,
		prevText: '',
		nextText: ''
	});
		
	$.preLoadImages(
		"/assets/images/services-action-arrows-bg-over.png",
		"/assets/images/slider-pager-over.png", 
		"/assets/images/contact-us-btn-over.png", 
		"/assets/images/logo-over.png",
		"/assets/images/facebook-btn-over.png",
		"/assets/images/twitter-btn-over.png",
		"/assets/images/rss-btn-over.png",
		"/assets/images/map-footer-charlottetown-over.png",
		"/assets/images/map-footer-toronto-over.png",
		"/assets/images/map-footer-calabasas-over.png",
		"/assets/images/contact-form-submit-btn-bg-over.png",
		"/assets/images/contact-form-name-input-bg-over.png",
		"/assets/images/contact-form-email-input-bg-over.png",
		"/assets/images/contact-form-phone-input-bg-over.png",
		"/assets/images/contact-form-company-input-bg-over.png",
		"/assets/images/contact-form-message-input-bg-over.png",
		"/assets/images/contact-page-map-ont-over.png",
		"/assets/images/contact-page-map-cali-over.png",
		"/assets/images/contact-page-map-pei-over.png",
		"/assets/images/slider-arrow-left-over.png",
		"/assets/images/slider-arrow-right-over.png",
		"/assets/images/next-project-btn-over.png",
		"/assets/images/read-more-right-over.png",
		"/assets/images/think-search-bg-over.png",
		"/assets/images/think-read-more-post-link-btn-bg-over.png",
		"/assets/images/think-post-comments-link-bg-over.png",
		"/assets/images/think-load-more-bg-over.png",
		"/assets/images/think-post-name-over.png",
		"/assets/images/think-post-email-over.png",
		"/assets/images/think-post-comment-comment-over.png",
		"/assets/images/think-post-comment-button-bg-over.png",
		"/assets/images/think-search-btn-bg-over.png"		
	);
			
	$("#create-next-project-btn").click(function () {
    portNumber ++;
    if(portNumber > PORT_NUMBER_MAX){portNumber=1}
		loadDynamicContent($('a.create-sub-projects[rel="'+portNumber+'"]'),$('#showcase-container div'),function(){
        $('#showcase-container').css('height',$('#showcase-container div').outerHeight());
    });
	});
  
 
  $("#create-prev-project-btn").click(function () {
    portNumber --;
    if(portNumber < 1){portNumber=PORT_NUMBER_MAX}
		loadDynamicContent($('a.create-sub-projects[rel="'+portNumber+'"]'),$('#showcase-container div'),function(){
        $('#showcase-container').css('height',$('#showcase-container div').outerHeight());
    });
	});
	
	$(".create-sub-projects").click(function () {
    $this=$(this);
		loadDynamicContent($(this),$('#showcase-container div'),function(){
        $('html,body').animate({scrollTop: $("#showcase-container").offset().top},'slow');
        $('#showcase-container').css('height',$('#showcase-container div').outerHeight());
        portNumber=$this.attr('rel');
    });		
    return false;
	});	
	
	$(".port-show-case-pager").live('click',function () {										   

		$(this).siblings().each(function (){
			$('#' + this.rel).css('display', 'none');
		});

		$('#' + this.rel).fadeIn('slow');	
		
	});												  
	
	
	$(".services").hover(
	   function() {
		  $(this).children('.services-info').css('background-image','url(/assets/images/services-action-arrows-bg-over.png)');
	   },
	   function() {
		  $(this).children('.services-info').css('background-image','url(/assets/images/services-action-arrows-bg.png)');
	   }
	);
	
	
	$(".office-buttons").click(function () {
    $this=$(this);
    loadDynamicContent($(this),$('#footer-contact-info-container div'),function(){
        $this.siblings().each(function (){
            $('#' + this.id).removeClass("office-buttons-active");										  
        });
        $this.addClass("office-buttons-active");
    });
    return false;
	});	
	
	$(".we-are-bio-read-more").click(function () {										   
		
		if($(this).siblings('.more-bio').is(":hidden")){
			if(this.rel=='right'){
				$(this).removeClass("we-are-bio-read-more-right");
				$(this).addClass("we-are-bio-read-less-right");							
			}else{
				$(this).removeClass("we-are-bio-read-more-left");
				$(this).addClass("we-are-bio-read-less-left");					
			}
		}else{
			if(this.rel=='right'){
				$(this).removeClass("we-are-bio-read-less-right");
				$(this).addClass("we-are-bio-read-more-right");							
			}else{
				$(this).removeClass("we-are-bio-read-less-left");
				$(this).addClass("we-are-bio-read-more-left");					
			}		
		}
		
		$($(this).siblings('.more-bio')).toggle('fast');

	});	
	
});

$(document).ready(function () {
			
  if (!$.cookie('hide_job_post')){
		// add in job posting
		$('.landing-page-body').css('background-position', '0 90px');	
		$('#side-content').css({'top': '-90px', 'padding-top': '80px'});
		$('#hireArea').show();
		$('#hireClose').click(function(e){
		  e.preventDefault();
		  $.cookie('hide_job_post', 1) ;
		  $('#hireArea').fadeOut();
		  $('#side-content').css({'top': '0', 'padding-top': '0'});
		  $('.landing-page-body').css('background-position', '0 0');	
		});
	}
 		
	$("html").delegate("#contact-mesage-sent-close", "click", function(){		

		$('#contact-form-name-id').val($("#contact-form-name-id").attr("title"));
		$('#contact-form-email-id').val($("#contact-form-email-id").attr("title"));
		$('#contact-form-phone-id').val($("#contact-form-phone-id").attr("title"));
		$('#contact-form-company-id').val($("#contact-form-company-id").attr("title"));
		$('#contact-form-message-id').val($("#contact-form-message-id").attr("title"));

		$('#contact-mesage-sent').fadeOut('fast', function() {
    		$("#contact-form").fadeIn('fast');
 		});	

	});			
			
	$("html").delegate("#contact-page-map-pei-anchor", "click", function(){
		
		$("#contact-page-map-pei").css('z-index', '12003');
  	$("#contact-page-map-ont").css('z-index', '12001');
  	$("#contact-page-map-cali").css('z-index', '12002');
    $('#contact-page-map-pei-anchor').css('z-index', '13003');
    $('#contact-page-map-ont-anchor').css('z-index', '13001');
    $('#contact-page-map-cali-anchor').css('z-index', '13002');
    
		
		$("#contact-page-mag-pei").css('display', 'block');
  	$("#contact-page-mag-ont").css('display', 'none');
  	$("#contact-page-mag-cali").css('display', 'none');
		
		$("#contact-page-address-pei").fadeIn("slow");
		$("#contact-page-address-ont").css('display', 'none');
		$("#contact-page-address-cali").css('display', 'none');
		
	});
	
	$("html").delegate("#contact-page-map-ont-anchor", "click", function(){		
		
		$("#contact-page-map-pei").css('z-index', '12001');
  	$("#contact-page-map-ont").css('z-index', '12003');
  	$("#contact-page-map-cali").css('z-index', '12002');			
		$('#contact-page-map-pei-anchor').css('z-index', '13001');
    $('#contact-page-map-ont-anchor').css('z-index', '13003');
    $('#contact-page-map-cali-anchor').css('z-index', '13002');
    
		$("#contact-page-mag-pei").css('display', 'none');
  	$("#contact-page-mag-ont").css('display', 'block');
  	$("#contact-page-mag-cali").css('display', 'none');		
		
		$("#contact-page-address-pei").css('display', 'none');
		$("#contact-page-address-ont").fadeIn("slow");
		$("#contact-page-address-cali").css('display', 'none');		
		
	});
	
	$("html").delegate("#contact-page-map-cali-anchor", "click", function(){		
		
		$("#contact-page-map-pei").css('z-index', '12002');
  	$("#contact-page-map-ont").css('z-index', '12001');
  	$("#contact-page-map-cali").css('z-index', '12003');		
		$('#contact-page-map-pei-anchor').css('z-index', '13002');
    $('#contact-page-map-ont-anchor').css('z-index', '13001');
    $('#contact-page-map-cali-anchor').css('z-index', '13003');
    
		$("#contact-page-mag-pei").css('display', 'none');
  	$("#contact-page-mag-ont").css('display', 'none');
  	$("#contact-page-mag-cali").css('display', 'block');	
		
		$("#contact-page-address-pei").css('display', 'none');
		$("#contact-page-address-ont").css('display', 'none');
		$("#contact-page-address-cali").fadeIn("slow");			
			
	});
  
  $('#contact-page-map-pei-anchor').live('mouseover',function(){
    $('#contact-page-map-pei').addClass('over');
  });
  $('#contact-page-map-pei-anchor').live('mouseout',function(){
    $('#contact-page-map-pei').removeClass('over');
  });
  
  $('#contact-page-map-cali-anchor').live('mouseover',function(){
    $('#contact-page-map-cali').addClass('over');
  });
  $('#contact-page-map-cali-anchor').live('mouseout',function(){
    $('#contact-page-map-cali').removeClass('over');
  });
  
  $('#contact-page-map-ont-anchor').live('mouseover',function(){
    $('#contact-page-map-ont').addClass('over');
  });
  $('#contact-page-map-ont-anchor').live('mouseout',function(){
    $('#contact-page-map-ont').removeClass('over');
  });

	$("#twitter-feed").getTwitter({
		userName: "thinkingbiginc",
		numTweets: 1,
		loaderText: "Loading tweets...",
		slideIn: true,
		showHeading: false,
		headingText: "",
		showProfileLink: true
	});	
	
  $('a[rel*=facebox]').live('mousedown',function(){
     $(this).facebox({
        loadingImage : '/assets/images/loading.gif',
        closeImage   : '/assets/images/closelabel.png'
      });
  });
	 
	$("html").delegate("input", "focus", function(){	
		if($(this).val() === '') {
			$(this).val($(this).attr('title'));	
		}
		
		$(this).focus(function() {
			if($(this).val() == $(this).attr('title')) {
				$(this).val('').addClass('focused');	
			}
		});
		$(this).blur(function() {
			if($(this).val() === '') {
				$(this).val($(this).attr('title')).removeClass('focused');	
			}
		});
	});	
	
	$("html").delegate("textarea", "focus", function(){	
		if($(this).val() === '') {
			$(this).val($(this).attr('title'));	
		}
		
		$(this).focus(function() {
			if($(this).val() == $(this).attr('title')) {
				$(this).val('').addClass('focused');	
			}
		});
		$(this).blur(function() {
			if($(this).val() === '') {
				$(this).val($(this).attr('title')).removeClass('focused');	
			}
		});
	});	

	$("html").delegate("#contact-form-submit-button", "click", function(){	
		
		var _bError=false;
		
		$("#contact-form-spinner").css('display', 'block');
		
		$('#contact-form-name-container').removeClass('contact-form-name-container-error');
		$('#contact-form-email-container').removeClass('contact-form-email-container-error contact-form-email-container-invalid');
		$('#contact-form-message-container').removeClass('contact-form-message-container-error');
		
		if($('#contact-form-name-id').val() == $('#contact-form-name-id').attr('title')){
			_bError=true;
			$('#contact-form-name-container:eq(1)').removeClass();
			$('#contact-form-name-container').addClass('contact-form-name-container-error');
		}	


		if(!emailReg.test($('#contact-form-email-id').val())){
		  _bError=true;
		  $('#contact-form-email-container').addClass('contact-form-email-container-invalid');
		}

		if($('#contact-form-email-id').val() == $('#contact-form-email-id').attr('title')){			
			_bError=true;
			$('#contact-form-email-container').removeClass('contact-form-email-container-invalid');
			$('#contact-form-email-container').addClass('contact-form-email-container-error');
		}
    
		if($('#contact-form-message-id').val() == $('#contact-form-message-id').attr('title')){
			_bError=true;
			$('#contact-form-message-container').addClass('contact-form-message-container-error');
		}						
			
		if(_bError==true){
			$('#contact-form-status-message-container').removeClass('contact-form-status-message-success contact-form-status-message-default contact-form-status-message-error');
			$('#contact-form-status-message-container').addClass('contact-form-status-message-error');
			$("#contact-form-spinner").fadeOut("slow");

		}else{
			
			var $contact_name    = $("#contact-form-name-id").attr("value");
			var $contact_email   = $("#contact-form-email-id").attr("value");
			var $contact_phone   = $("#contact-form-phone-id").attr("value");
			var $contact_company = $("#contact-form-company-id").attr("value");
			var $contact_message = $("#contact-form-message-id").attr("value");

			$.ajax({
				url: "/subs/do-contact.php",
				data: {
			 		"name": $contact_name,
					"email": $contact_email,
					"phone": $contact_phone,
					"company": $contact_company,
			  		"message": $contact_message
				},
			
				type: "post",
				cache: false,
				dataType: "json",
			
				complete: function(result) {
					if(result.status==200){
						$('#contact-form-status-message-container').removeClass('contact-form-status-message-success contact-form-status-message-default contact-form-status-message-error');
						$('#contact-form-status-message-container').addClass('contact-form-status-message-success');	
						$("#contact-form-spinner").fadeOut("slow");		
						
						$('#contact-form').fadeOut('fast', function() {
							$("#contact-mesage-sent").fadeIn('fast');
						});											
											
					}else{
						$('#contact-form-status-message-container').removeClass('contact-form-status-message-success contact-form-status-message-default contact-form-status-message-error');
						$('#contact-form-status-message-container').addClass('contact-form-status-message-error');		
						$("#contact-form-spinner").fadeOut("slow");		
						
						$('#contact-form').fadeOut('fast', function() {
							$("#contact-mesage-sent").fadeIn('fast');
						});					
							
					}
				}
			});			
			

		}

	});	
	
	
	$("html").delegate("#think-comment-form-submit-button", "click", function(){	
		
		var _bError=false;
		
		$("#think-comment-form-spinner").css('display', 'block');

		$('#think-comment-form-name-container').removeClass('think-comment-form-name-container-error');
		$('#think-comment-form-email-container').removeClass('think-comment-form-email-container-error');
		$('#think-comment-form-comment-container').removeClass('think-comment-form-comment-container-error');
		
		if($('#author').val() == $('#author').attr('title')){
			_bError=true;
			$('#think-comment-form-name-container:eq(1)').removeClass();
			$('#think-comment-form-name-container').addClass('think-comment-form-name-container-error');
		}	
		
		if($('#email').val() == $('#email').attr('title')){
			_bError=true;
			$('#think-comment-form-email-container:eq(1)').removeClass();
			$('#think-comment-form-email-container').addClass('think-comment-form-email-container-error');
		}
    
    if(!emailReg.test($('#email').val())){
      _bError=true;
			$('#think-comment-form-email-container:eq(1)').removeClass();
			$('#think-comment-form-email-container').addClass('think-comment-form-email-container-invalid');
    }
		
		if($('#comment').val() == $('#comment').attr('title')){
			_bError=true;
			$('#think-comment-form-comment-container:eq(1)').removeClass();
			$('#think-comment-form-comment-container').addClass('think-comment-form-comment-container-error');
		}						
		
		if(_bError==true){
			$('#think-comment-form-status-message-container').removeClass('think-comment-form-status-message-success think-comment-form-status-message-default think-comment-form-status-message-error');
			$('#think-comment-form-status-message-container').addClass('think-comment-form-status-message-error');
			$("#think-comment-form-spinner").fadeOut("slow");	
		}else{
			$('#think-comment-form-status-message-container').removeClass('think-comment-form-status-message-success think-comment-form-status-message-default think-comment-form-status-message-error');
			$('#think-comment-form-status-message-container').addClass('think-comment-form-status-message-success');
			$("#think-comment-form-spinner").fadeOut("slow");
			$('#commentform').submit();			
		}

	});		
	
  loadDynamicContent($('#office-button-charlottetown'),$('#footer-contact-info-container div'),function(){});
	

});


function portShowCaseChange(_portItem, _portNumber){
	
	for (i=1;i<=PORT_NUMBER_MAX;i++){
		$('.port-item-' + i).css('display', 'none');
	}

	$(_portItem).fadeIn('slow');
	
	portNumber = _portNumber;	
}

function loadDynamicContent($context,$container,callback){
    $container.css('display','none');
    $.ajax({
        type:'get',
        url:$context.attr('href'),
        success:function(response){
            $container.html(response).fadeIn('slow');
            callback();	
        },
        error:function(){
            $container.html('');
        }
    });
}
