$(document).ready(function() {
	
	$('.slide-button').click(function(){
		// stop the timer
		clearInterval(timer);
		
		// move to the slide linked to this button
		var id=$(this).attr('id').replace('slide-button','slide');
		showSlide(id);
		// set this button to active, remove active from others
		$('.slide-button').removeClass('active-button');
		$(this).addClass('active-button');
	});
	
	if($('#slides').length>0){
		// set up interval for auto cycle
		 var timer = setInterval( showNextSlide, 5500);
		 showNextSlide();
	}
	
	if($('.slide-button','#slideshow').length>0){
		// set up interval for auto cycle
		 var timer = setInterval( showNextSlide, 2500);
	}
	
	
	
	
	$('#form-twitter').submit(function(){
			var err='';
			if(!$('#name').val()){err+='Please enter your name.\n';}
			if(!$('#comments').val()){err+='Please enter your comment.\n';}
			if(!$('#email').val()){err+='Please enter your email address.\n';}
			if(err){
				alert(err);
				return false;
			} else {
				// submit form
				$.post($("#dest").val(), $(this).serialize(),handleResultReg,"json");
				return false;
			}
		});
		
		function handleResultReg(data){
			if(data.errors){
				alert(data.errors.replace(/\\n/gi,"\n"));
			}	
		}
	
	$('#comments').keypress(function(){
		$("#twitter-message").html( (137 - $("#name").val().length - $("#comments").val().length) + " characters remaining");
	});
	
	$('#comments').change(function(){
		$("#twitter-message").html( (137 - $("#name").val().length - $("#comments").val().length) + " characters remaining");
	});
	
	$('#name').change(function(){
		$("#twitter-message").html( (137 - $("#name").val().length - $("#comments").val().length) + " characters remaining");
	});
	$('#name').keypress(function(){
		$("#twitter-message").html( (137 - $("#name").val().length - $("#comments").val().length) + " characters remaining");
	});
	
	
	
	
});

function showNextSlide(){
	// figure out which is the next slide to show
	// if next slide exists past the currenty active one, then use it, otherwise use the first slide
	
	if($('.active-button').next().attr('id')){
		var button_id=$('.active-button').next().attr('id');
		var id=button_id.replace('slide-button','slide');
		showSlide(id);
		
		// set this button to active, remove active from others
		$('.slide-button').removeClass('active-button');
		$('#'+button_id).addClass('active-button');
		
	} else {
		var button_id=$('.slide-button').first().attr('id');
		var id=button_id.replace('slide-button','slide');
		showSlide(id);
		
		// set this button to active, remove active from others
		$('.slide-button').removeClass('active-button');
		$('#'+button_id).addClass('active-button');
		
	}
}


function showSlide(obj){
	// first check if this is already showing, if so, do not animate
	
	if($('#'+obj).hasClass('active')==false){
		//animate
		$('.slide').fadeOut();
		$('#'+obj).stop();
		$('#'+obj).fadeIn();
		
		// set active class slide, remove active class from other slides
		$('.slide').removeClass('active');
		$('#'+obj).addClass('active');
	}
}
