/* Function to auto-open contact form on error */
function cnFormDisplayErrors() {
	var $ = jQuery;
	var errors = false;
	var success = false;
	$('#contact_top_wrap').find('span.formError').each(function() {
		errors = true;
	});
	
	$('#contact_top_wrap').find('#cnSuccess').each(function() {
		success = true;
		var button = $('#contact_top_wrap div.rsform input[type="button"]');
		button.removeAttr('onclick');
		button.replaceWith('<a href="javascript:void(0);" class="btn" id="cnSuccess"><span>Continue</span></a>');
		$('a#cnSuccess').click(function() {
			toggleContactForm();
		});
	});
	
	if(errors || success) {
		toggleContactForm();
	}
}
function cnFormHandleSubmit() {
	
	var $ = jQuery;
	var uForm = '#userForm';
	$(uForm).find('input, textarea').keyup(function() {
		
		cnValidateField($(this));
	});
	$(uForm).find('input, textarea').each(function() {
		
		$(this).attr('title',$(this).val());
	});
	$(uForm+' a#submit-button').click(function() {
		var output = true;
		$(uForm).find('input, textarea').each(function() {
			if(cnValidateField($(this)) == false) {
			
				output = false;
			}
		});
		return output;
	});
}
function cnValidateField(field) {
	var $ = jQuery;
	var title = field.attr('title');
	var value = $.trim(field.val());
	if(title.indexOf('*') >= 0) {

		if(value == '' || value == title) {
		
			field.siblings('span.formNoError').removeClass('formNoError').addClass('formError');
			return false;
		}
		else {
			
			field.siblings('span.formError').removeClass('formError').addClass('formNoError');
			return true;
		}
	}
}
function cnFormUpdateMenu() {
	
	var $ = jQuery;
	var cnForm = $('#contact_top_wrap');
	var current = $('li#current');
	var contact = $(".item180");
	if(cnForm.css('display') == 'block') {
		current.removeClass('active');
		contact.addClass('active');
	}
	else {
		current.addClass('active');
		contact.removeClass('active');
	}
	Cufon.replace('.menutopmenu', { fontFamily: 'daxlinepro', hover: true, forceHitArea: true })
}
function toggleContactForm() {
	
	var $ = jQuery;
	$("html, body").animate({scrollTop:0}, 'slow');
	$('#contact_top_wrap').slideToggle("slow",function() {
		$('.item180').toggleClass("active");
		cnFormUpdateMenu();
	});
	return false;
}

function addSlides() {

	var $ = jQuery;
	$('.project-image').hover(function () {

		$("img", this).stop().animate(
			{top:"-54px"},
			{queue:false,duration:200}
		);
	},
	function() {

		$("img", this).stop().animate({top:"0px"},{queue:false,duration:200});
	});
}

jQuery(document).ready(function() {
	
	var $ = jQuery;
	cnFormDisplayErrors();
	cnFormHandleSubmit();
	cnFormUpdateMenu();
	$(".item180, #menulink_6").click(function() {
		toggleContactForm();
	});

	if($('.social-icons').length > 0) {

	    $('.social-icons').tipTip({defaultPosition: "top", delay: "200"});
	}

	$.fn.bgPosition = function(opts) {

		var pos = $(this).css('background-position');

		if ( pos && pos.length ) {

			var s = pos.split(/\s/);

			if ( opts.y && s[1] == '30px' || '15px') {

				$(this).stop().animate({'background-position': s[0] + ' ' + opts.y}, 500, "easeOutElastic");

			}
			else if ( opts.x && s[0] == '30px' || '15px') {

				$(this).stop().animate({'background-position': opts.x + ' ' + s[1]}, 500, "easeOutElastic");
			}
		}
	}

	$(".social-icons").mouseover(function(){

		$(this).bgPosition({y:'15px'})

	})
	.mouseout(function() {

		$(this).bgPosition({y:'30px'})

	});
	
	addSlides();

	$("a[data-link=filter]").click(function (e) {

		$("a[data-link=filter]").parent().removeClass("active");

		$(this).parent().addClass("active");

		var rel = $(this).attr('rel');

		$("#projects li:visible").fadeOut(350,'easeInOutQuad',function() {
			
			if (rel == "all") {

				$("#projects li").fadeIn(750,'easeInOutQuad');
			}
			else {
	
				$("#projects li[data-type="+rel+"]").fadeIn(750,'easeInOutQuad');
			}
		});

		Cufon.refresh();
		e.preventDefault();
	});
});

