jQuery.fn.extend({
	
	//Call this by an element selector $('#elementID').smartdate();
	smartdate	:	function(){

						//Add our valid/invalid message spans
						var valid = $(this).val() ? 'valid' : 'invalid';
						this.addSpan(valid);
						
						$(this).keyup(function(){
							var date = Date.parse($(this).val());
							if(date!=null){
								$(this).myDate(date);
							}
							else{
								$(this).parents('li').find('.message')
									.removeClass('valid')
									.addClass('invalid')
									.text('Unrecognized Format');
							}
						});
						
						//Return the element, so we can continue chaining it $(element).mfValidate().fadeOut();
						return this;
					},
	
	myDate		:	function(date){
						var el = $(this);
						var format = date.toString('HH:mm:ss') == '00:00:00' ? 'ddd MMMM dd, yyyy' : 'ddd MMMM dd, yyyy - h:mm tt';
						$(el).parents('li').find('.message')
									.removeClass('invalid')
									.addClass('valid')
									.text(date.toString(format));
									
						$('form').submit(function(){
							var format = date.toString('HH:mm:ss') == '00:00:00' ? 'M/d/yyyy' : 'M/d/yyyy h:mmtt';
							$(el).parents('li').find('input[smartdate]').val(date.toString(format));
						});
					},
	
	addSpan		:	function(valid){
						var myClass = valid == 'valid' ? "message valid" : "message";
						$(this).parents('li').find('.message').remove();
						$(this).parents('li').find('input[smartdate]').after("<span class='"+myClass+"'></span>");
					}
});
