(function($) {
	
	$.reservationToggle = function( imagePath ) {
		
		$(".fullDescription").hide();
		
		$(".descriptionToggle").click(function () {
			
			// Get parent td element
			$parentElem = $(this).parent().parent();

			// Retrieve current result stored in id attribute
      		$currentDescriptionId = $($parentElem).attr("id");
      		
      		// Get div where description is stored
      		$descriptionElem = $parentElem.find(".fullDescription");
      		
      		// Set link HTML
      		if( $($descriptionElem).is(":visible") ){
	      		$(this).html("View Description&nbsp;<img src=\"common/images/arrow_right.gif\" alt=\"View Description\" title=\"View Description\"/>");
	      	}
	      	else{
	      		$(this).html("Close Description&nbsp;<img src=\"common/images/arrow_up.gif\" alt=\"View Description\" title=\"View Description\"/>");
	      	}

      		// Show/hide description
		    $($descriptionElem).slideToggle();

	  	});
		
	}
	
}) (jQuery);

(function($) {
	
	$.getDate = function( dateStr ) {
		
		$date = dateStr.split("/");
		$("#day").val($date[1]);
		$("#month").val($date[0]);
		$("#year").val($date[2]);
		
	}
	
}) (jQuery);

(function($) {
	
	$.changeDays = function() {
		
		$thisDate = new Date();
		$month = $(this).val();
		$numberOfDays = new Date($thisDate.getFullYear(), $month, 0).getDate();
		for( $i=0; $i<$numberOfDays; $i++ ) {
			$('#day').append(
					$('<option></option').val($i+1).html($i+1)
			   	);
		}
		
	}
	
}) (jQuery);

(function($) {
	
	$.createReservatonWidget = function() {
		
		$thisDate = new Date();

		$thisDateNextYear = new Date();
		$thisDateNextYear.setFullYear($thisDate.getFullYear()+1);

		$yearsOptions = [ [ $thisDate.getFullYear(), $thisDate.getFullYear() ], [ $thisDateNextYear.getFullYear(), $thisDateNextYear.getFullYear() ] ];
		$.each( $yearsOptions,
		           function( i, value ){
						   $selected = $thisDate.getFullYear() == value[0] ? "selected" : "";
		                   $('#year').append(
		       					$('<option></option').val(value[0]).html(value[1]).attr("selected",$selected)
		       			   );
		                   
		            }
		);

		$months = [ "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ];
		$.each( $months,
				function( i, value ) {
					$thisValue = i < 9 ? "0"+(i+1) : i+1;
					$selected = $thisDate.getMonth() == i ? "selected" : "";
					$('#month').append(
   						$('<option></option').val($thisValue).html(value).attr("selected",$selected)
   			   		);
				}
		);
				
		$numberOfDays = new Date($thisDate.getFullYear(), $thisDate.getMonth(), 0).getDate();
		for( $i=0; $i<$numberOfDays; $i++ ) {
			$thisValue = $i < 9 ? "0"+($i+1) : $i+1+'';
			$selected = $thisDate.getDate() == $i+1 ? "selected" : "";
			$('#day').append(
					$('<option></option').val($thisValue).html($i+1).attr("selected",$selected)
			   	);
		}
		
		$numberOfNights = 15;
		for( $i=0; $i<$numberOfNights; $i++ ) {
			$('#nightstay').append(
					$('<option></option').val($i+1).html($i+1)
			   	);
		}
		
	}
	
}) (jQuery);

(function($) {

	$.preLoadImages = function(imageList,callback) {
	        var pic = [], i, total, loaded = 0;
	        if (typeof imageList != 'undefined') {
	           if ($.isArray(imageList)) {
	                	total = imageList.length; // used later
	                    for (i=0; i < total; i++) {
	                       pic[i] = new Image();
	                       pic[i].onload = function() {
	                           loaded++; // should never hit a race condition due to JS's non-threaded nature
	                           if (loaded == total) {
	                                if ($.isFunction(callback)) {
	                                    callback();
	                                }
	                            }
	                        };
	                        pic[i].src = imageList[i];
	                    }
	            }
	            else {
	                pic[0] = new Image();
	                pic[0].onload = function() {
	                    if ($.isFunction(callback)) {
	                        callback();
	                    }
	                }
	               pic[0].src = imageList;
	            }
	        }
	        pic = undefined;
	};
	
}) (jQuery);