function checkEmail( email ) {
	var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
	if ( !filter.test(email) ){
		return false;
	} else {
		return true;
	}
}

jQuery(document).ready(function($){
	
	var goToTop			= $('#goToTop');
	var menuItems 		= $('#header-inner .right ul li');
	var autoScrollFlag	= false;
	
	goToTop
		.hide()
		.css({ bottom: $(window).height()+'px' })
		.addClass('closed')
		.find('a').click(function(event){
			menuItems.filter(':last').find('a').trigger('click');
			event.preventDefault();
		});
	
	if( $(this).scrollTop()>100 && goToTop.hasClass('closed') ){
		// console.log('abrir');
		goToTop
			.removeClass('closed')
			.fadeIn('fast', function(){
					$(this)								
						.animate({
							bottom: "10px"
							}, 1000, 'easeOutBounce');
		});
	} else if( $(this).scrollTop()<=100 && !goToTop.hasClass('closed') ) {
		// console.log('cerrar');
		goToTop
			.addClass('closed')
			.fadeOut('fast', function(){
				$(this).css({ bottom: $(window).height()+'px' });
			});
	}
		
	menuItems.each(function(){
		var link = $(this).find('a');
		link.click(function(event){
			var loc = $(this).attr('href');
			menuItems.removeClass('current');
			$(this).parent().addClass('current');
			autoScrollFlag	= true;
			$.scrollTo( loc, 500, {
				onAfter: function(){
					if( $(this).scrollTop()>100 && goToTop.hasClass('closed') ){
						// console.log('abrir');
						goToTop
							.removeClass('closed')
							.fadeIn('fast', function(){
									$(this)								
										.animate({
											bottom: "10px"
											}, 1000, 'easeOutBounce');
						});
					} else if( $(this).scrollTop()<=100 && !goToTop.hasClass('closed') ) {
						// console.log('cerrar');
						goToTop
							.addClass('closed')
							.fadeOut('fast', function(){
								$(this).css({ bottom: $(window).height()+'px' });
							});
					}
					autoScrollFlag	= false;
				}
			});
			event.preventDefault();
		});
	});
	
	$(window).scroll(function(){
		if( !autoScrollFlag ){			
			if( $(this).scrollTop()>100 && goToTop.hasClass('closed') ){
				// console.log('abrir');
				goToTop
					.removeClass('closed')
					.fadeIn('fast', function(){
						$(this)								
							.animate({
								bottom: "10px"
								}, 1000, 'easeOutBounce');
							});
			} else if( $(this).scrollTop()<=100 && !goToTop.hasClass('closed') ) {
				// console.log('cerrar');
				goToTop
					.addClass('closed')
					.fadeOut('fast', function(){
						$(this).css({ bottom: $(window).height()+'px' });
					});
			}
		}
	});
	
	var aTooltip = $("#showcase .info span").tooltip({
		tip: 			'#tooltip',
		effect: 		'fade',
		fadeInSpeed: 	150,
		fadeOutSpeed: 	400,
		offset: 		[4, 77],
		api: 			true,
		events: { 
		    def:        "mouseover, mouseout"
		}
	});
	
	$("#showcase")
		.scrollable({
			size: 			1,
			clickable: 		false,
			globalNav: 		true,
			onStart: function(){
				if( aTooltip )
					aTooltip.hide();
			}
		})
		.circular()
		.navigator();
	
	$('#contact-us .content .form a.submit').click(function(event){
		var emailValue 		= $('#field-email').val();
		var emailError 		= $('#field-email').attr('rel');
		var messageValue 	= $('#field-message').val();
		var messageError 	= $('#field-message').attr('rel');
		var errors			= '';

		if( !checkEmail(emailValue) ){
			errors += emailError + "\n";
		}
		if( messageValue=='' ){
			errors += messageError + "\n";
		}
		
		if( errors=='' ){
			
			$.ajax({
				url: 	template+'/ajax.sendMail.php',
				type: 	'POST',
				data: 	'token='+new Date().getTime()+'&email='+emailValue+'&message='+messageValue,
				success: function() {
					$('#field-email').val('');
					$('#field-message').val('');
					alert("Your message has been sent.\nThank you.");
				},
				error: function() {
					alert("can't send your message right now, please try again later.")
				}
			});
			
		} else {
			alert(errors);
		}
		
		event.preventDefault();	
	});
	
});

