// For toggling input boxes
jQuery.fn.toggleVal=function(focusClass){this.each(function(){$(this).focus(function()
{if($(this).val()==this.defaultValue){$(this).val("")}if(focusClass)
{$(this).addClass(focusClass)}}).blur(function(){if($(this).val()=="")
{$(this).val(this.defaultValue)}if(focusClass){$(this).removeClass(focusClass)}})})}

//extend jQuery to have case insensitive filter
jQuery.expr[':'].Contains = function(a,i,m){
return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0;
};


$(function() {

	//$('.listTable').each(function() {
	//	$(this).find('tr:odd').addClass('stripe');
	//});
	
	$(".toggle").toggleVal("active");	

	$("tbody>tr:odd").addClass('alt');	
	
	// Highlight checked boxes and their labels
	$('input[type=checkbox], p.checkboxes>input').bind("click",  function(){
			if ($(this).is(':checked')) {
				$(this).parent('label').addClass('checked');
			} else {
				$(this).parent('label').removeClass('checked');
			}
	});		
	
	
	$('.listTable').each(function() {
		$(this).find('tr:odd').addClass('stripe');

		if ($(this).find('tbody tr').length === 0) {
			var colspan = $(this).find('thead th').length;
			var noResultsInfo = 'No Results';
			if ($('#noResultsInfo').length) {
				noResultsInfo = $('#noResultsInfo').html();
			}
			$(this).children('tbody').html('<tr><td colspan="'+colspan+'" class="noResults">'+noResultsInfo+'</td></tr>');
		}
	});

	
	$('.deleteButton,.ajaxLink').click(function(e){
		e.preventDefault();
		var link = this;
		if ($(this).hasClass('deleteButton')) {
			if (!confirm('Are you sure?')){
				return;
			}
		}
		$.getJSON($(this).attr('href'), function(data){
			if (data.message) {
				if (data.message === 'Row Deleted') {
					$(link).parents('tr').hide();
					var table = $(link).parents('table.listTable');
					//restripe(table);
				}
			}
			flashMessage(data);
			
		});
	});

	$('.confirm').live('click', function(e) {
		var confirmText = 'Are you sure?';
		if ($(this).attr('rel')) {
			confirmText = $(this).attr('rel');
		}
		if (!confirm(confirmText)){
			return false;
		}
	});
	
	var miniFindText = $("#miniFind").val();

	$("#miniFind").focus(function () {
		if($(this).val() === miniFindText)
		{
			$(this).val('');
			$(this).css({'color':'#111111'});
		}
    });
	
	$("#miniFind").blur(function () {
		if($(this).val()=='')
		{
			$(this).val(miniFindText);
			$(this).css({'color':'#6F6F6F'});
		}
	});
	
	$("#miniFind").keyup(function(e){
			
			$("tbody tr td:not(:Contains('"+$(this).val()+"'))").parents("tr").hide();
			$("tbody tr td:Contains('"+$(this).val()+"')").parents("tr").show();
			
			$(".stripe").removeClass("stripe");
			var i = 0;
			$('table.rowme tr:visible').each(function() {
				if(i%2>0)
				{
					$(this).addClass('stripe');
				}
				i++;
			});
	});

	$('.ajaxForm').ajaxForm(function(d) {
		flashMessage(d);
	});
	
	$('#toggleHelp').click(function(){
		$('#helpInfo').slideToggle();
	});

});
