// Function to update summary on Trainer Registration Form
function updateSummary () {
	var summary = '';
	$('fieldset:not(.skip_summary)').each(function() {
		summary += '<h2>' + $(this).find('legend').text() + '</h2>';
		var id = '#' + $(this).attr('id');
		$(id + ' input:not(.skip_summary), ' + id + ' select:not(.skip_summary), ' + id + ' textarea:not(.skip_summary)').each(function() {
			var label = $("label[for=" + $(this).attr("id") + "]").text();
			var value = $(this).val();
			if (value != '') {
				if (label != '') {
					summary += '<b>' + label + '</b><br />' + value + '<br /><br />';
				} else {
					summary += '<b>' + titleCaps($(this).attr("id").replace(/_/g," ")) + '</b><br />' + value + '<br /><br />';
				}
			}
		});
	});
	$('#form_summary').html(summary);
}

/*
 * Title Caps
 * 
 * Ported to JavaScript By John Resig - http://ejohn.org/ - 21 May 2008
 * Original by John Gruber - http://daringfireball.net/ - 10 May 2008
 * License: http://www.opensource.org/licenses/mit-license.php
 */

(function(){
	var small = "(a|an|and|as|at|but|by|en|for|if|in|of|on|or|the|to|v[.]?|via|vs[.]?)";
	var punct = "([!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-]*)";
  
	this.titleCaps = function(title){
		var parts = [], split = /[:.;?!] |(?: |^)["Ò]/g, index = 0;
		
		while (true) {
			var m = split.exec(title);

			parts.push( title.substring(index, m ? m.index : title.length)
				.replace(/\b([A-Za-z][a-z.'Õ]*)\b/g, function(all){
					return /[A-Za-z]\.[A-Za-z]/.test(all) ? all : upper(all);
				})
				.replace(RegExp("\\b" + small + "\\b", "ig"), lower)
				.replace(RegExp("^" + punct + small + "\\b", "ig"), function(all, punct, word){
					return punct + upper(word);
				})
				.replace(RegExp("\\b" + small + punct + "$", "ig"), upper));
			
			index = split.lastIndex;
			
			if ( m ) parts.push( m[0] );
			else break;
		}
		
		return parts.join("").replace(/ V(s?)\. /ig, " v$1. ")
			.replace(/(['Õ])S\b/ig, "$1s")
			.replace(/\b(AT&T|Q&A)\b/ig, function(all){
				return all.toUpperCase();
			});
	};
    
	function lower(word){
		return word.toLowerCase();
	}
    
	function upper(word){
	  return word.substr(0,1).toUpperCase() + word.substr(1);
	}
})();


$(function() {
  // Confirm helper
  $('.confirm').click(function() {
    return confirm('Are you sure?');
  });
});