﻿function ShowHideDescription() { 
}
jQuery(document).ready(function () {
    $(".factTd").click(function () {
        //Get the id of this clicked item
        var td = this;
        var idTdLong = jQuery(this).attr("id");
        var idTd = idTdLong.replace(/.*facttd/, "");
        // Make other cells not chosen
        $('.factTd').css("background", "url('/Functions/ObjectInfo/MainContent/Images/bullet.gif') 0 10px no-repeat");
        //Find corresponding block and make it chosen
        $('.factDiv').each(function () {
            var idDivLong = jQuery(this).attr("id");
            var idDiv = idDivLong.replace(/.*factdiv/, "");
            if (idDiv == idTd) {
                if (jQuery(this).css("display") != "block") {
                    jQuery(this).css("display", "block");
                    jQuery(td).css("background", "#FFFAD2");
                }
                else {
                    jQuery(this).css("display", "none");
                    jQuery(td).css("background", "url('/Functions/ObjectInfo/MainContent/Images/bullet.gif') 0 10px no-repeat");
                }
            }
            else {
                jQuery(this).css("display", "none");
            }
        });
        /* Update tour types list position */
        var selectList = jQuery(".TourTypeFilter .SelectList");
        if (selectList.length != 0) {
            jQuery(".TourTypeFilter .SelectList div.selectListList")
					.css("top", selectList.offset().top + selectList.outerHeight())
					.css("left", selectList.offset().left);
        }
        /* EOF Update tour types list position */
        //ResizeIFrames(10);
        top.jQuery('.parIframe').trigger('resizeIframe');
    });
});

//DestinationFacts

(function ($) 
{

    var methods = 
	{
        init: function (options) 
		{
            var settings = {
            };

			// plugin code here

			var $this = jQuery(this);
			var data = $this.data('DestinationFacts');

			// If the plugin hasn't been initialized yet
			if (!data) 
			{
				// If options exist, lets merge them
				// with our default settings
				if (options) 
				{
					jQuery.extend(settings, options);
				}

				//Working class declaration
				function DestinationFacts(options) 
				{
					//Reference to JS object
					var that = this;
					//Reference to DOM container
					var $this = options.$this;
					
					//Control initialization
					this.Initialize = function (initSettings) 
					{
						var $facts = $this.find('.Fact');

                        function GetFactColumn($fact)
                        {
                            return ($fact.attr('num') + 1) % 3;
                        }
                        var j = 0;
                        for (var i = 0; i < $facts.length; i++) 
                        {
                            var $tmp = jQuery($facts[i]);
                            $tmp.attr('num', i);
                            j++;
                            if (j == 3)
                            {
                                $tmp.addClass('Last');
                                j = 0;
                            }
                        }

                        $facts.click(function()
                        {
                            $this.find('.Text').remove();
                            var $selectedFact = $this.find('.Fact.Selected');
                            $selectedFact.removeClass('Selected');
                            $this.find('.Selected').remove();

                            var $fact = jQuery(this);

                            $fact.addClass('Selected');

                            var $text = $fact.find('input[type="hidden"]');

                            var column = GetFactColumn($fact);

                            var $factToAddAfter = null;

                            switch (column) 
                            {
                                case 1:
                                    if ($fact.attr('num') == $facts.length)
                                    {
                                        $factToAddAfter == $fact;
                                    }
                                    else if ($fact.attr('num') == $facts.length - 1)
                                    {
                                        $factToAddAfter = $fact.next();
                                    }
                                    else
                                    {
                                        $factToAddAfter = $fact.next().next();
                                    }
                                    break;
                                case 2:
                                    if ($fact.attr('num') == $facts.length)
                                    {
                                        $factToAddAfter == $fact;
                                    }
                                    else
                                    {
                                        $factToAddAfter = $fact.next();
                                    }
                                    break;
                                case 3:
                                default:
                                    $factToAddAfter = $fact;
                                    break;
                            }

                            var toAdd = '<div class="clear Selected"></div><div class="Text">' + $text.val() + '</div>';

                            $factToAddAfter.after(toAdd);
                        });
					};
				}

				//Add $this parameter to settings to provide easy way to get link to DOM
                settings.$this = jQuery(this);
                data = new DestinationFacts(settings);
            }
            $(this).data('DestinationFacts', data);
            return data;
        }
    };

    $.fn.DestinationFacts = function (method) 
	{
        // Method calling logic
        if (methods[method]) 
		{
            return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
        } 
		else if (typeof method === 'object' || !method) 
		{
            return methods.init.apply(this, arguments);
        } 
		else 
		{
            $.error('Method ' + method + ' does not exist on jQuery.DestinationFacts');
        }
    };

})(jQuery);

