(function($){$.fn.extend({autocomplete:function(urlOrData,options){var isUrl=typeof urlOrData=="string";options=$.extend({},$.Autocompleter.defaults,{url:isUrl?urlOrData:null,data:isUrl?null:urlOrData,delay:isUrl?$.Autocompleter.defaults.delay:10,max:options&&!options.scroll?10:150},options);options.highlight=options.highlight||function(value){return value;};options.formatMatch=options.formatMatch||options.formatItem;return this.each(function(){new $.Autocompleter(this,options);});},result:function(handler){return this.bind("result",handler);},search:function(handler){return this.trigger("search",[handler]);},flushCache:function(){return this.trigger("flushCache");},setOptions:function(options){return this.trigger("setOptions",[options]);},unautocomplete:function(){return this.trigger("unautocomplete");}});$.Autocompleter=function(input,options){var KEY={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var $input=$(input).attr("autocomplete","off").addClass(options.inputClass);var timeout;var previousValue="";var cache=$.Autocompleter.Cache(options);var hasFocus=0;var lastKeyPressCode;var config={mouseDownOnSelect:false};var select=$.Autocompleter.Select(options,input,selectCurrent,config);var blockSubmit;$.browser.opera&&$(input.form).bind("submit.autocomplete",function(){if(blockSubmit){blockSubmit=false;return false;}});$input.bind(($.browser.opera?"keypress":"keydown")+".autocomplete",function(event){hasFocus=1;lastKeyPressCode=event.keyCode;switch(event.keyCode){case KEY.UP:event.preventDefault();if(select.visible()){select.prev();}else{onChange(0,true);}break;case KEY.DOWN:event.preventDefault();if(select.visible()){select.next();}else{onChange(0,true);}break;case KEY.PAGEUP:event.preventDefault();if(select.visible()){select.pageUp();}else{onChange(0,true);}break;case KEY.PAGEDOWN:event.preventDefault();if(select.visible()){select.pageDown();}else{onChange(0,true);}break;case options.multiple&&$.trim(options.multipleSeparator)==","&&KEY.COMMA:case KEY.TAB:case KEY.RETURN:if(selectCurrent()){event.preventDefault();blockSubmit=true;return false;}break;case KEY.ESC:select.hide();break;default:clearTimeout(timeout);timeout=setTimeout(onChange,options.delay);break;}}).focus(function(){hasFocus++;}).blur(function(){hasFocus=0;if(!config.mouseDownOnSelect){hideResults();}}).click(function(){if(hasFocus++>1&&!select.visible()){onChange(0,true);}}).bind("search",function(){var fn=(arguments.length>1)?arguments[1]:null;function findValueCallback(q,data){var result;if(data&&data.length){for(var i=0;i<data.length;i++){if(data[i].result.toLowerCase()==q.toLowerCase()){result=data[i];break;}}}if(typeof fn=="function")fn(result);else $input.trigger("result",result&&[result.data,result.value]);}$.each(trimWords($input.val()),function(i,value){request(value,findValueCallback,findValueCallback);});}).bind("flushCache",function(){cache.flush();}).bind("setOptions",function(){$.extend(options,arguments[1]);if("data"in arguments[1])cache.populate();}).bind("unautocomplete",function(){select.unbind();$input.unbind();$(input.form).unbind(".autocomplete");});function selectCurrent(){var selected=select.selected();if(!selected)return false;var v=selected.result;previousValue=v;if(options.multiple){var words=trimWords($input.val());if(words.length>1){var seperator=options.multipleSeparator.length;var cursorAt=$(input).selection().start;var wordAt,progress=0;$.each(words,function(i,word){progress+=word.length;if(cursorAt<=progress){wordAt=i;return false;}progress+=seperator;});words[wordAt]=v;v=words.join(options.multipleSeparator);}v+=options.multipleSeparator;}$input.val(v);hideResultsNow();$input.trigger("result",[selected.data,selected.value]);return true;}function onChange(crap,skipPrevCheck){if(lastKeyPressCode==KEY.DEL){select.hide();return;}var currentValue=$input.val();if(!skipPrevCheck&&currentValue==previousValue)return;previousValue=currentValue;currentValue=lastWord(currentValue);if(currentValue.length>=options.minChars){$input.addClass(options.loadingClass);if(!options.matchCase)currentValue=currentValue.toLowerCase();request(currentValue,receiveData,hideResultsNow);}else{stopLoading();select.hide();}};function trimWords(value){if(!value)return[""];if(!options.multiple)return[$.trim(value)];return $.map(value.split(options.multipleSeparator),function(word){return $.trim(value).length?$.trim(word):null;});}function lastWord(value){if(!options.multiple)return value;var words=trimWords(value);if(words.length==1)return words[0];var cursorAt=$(input).selection().start;if(cursorAt==value.length){words=trimWords(value)}else{words=trimWords(value.replace(value.substring(cursorAt),""));}return words[words.length-1];}function autoFill(q,sValue){if(options.autoFill&&(lastWord($input.val()).toLowerCase()==q.toLowerCase())&&lastKeyPressCode!=KEY.BACKSPACE){$input.val($input.val()+sValue.substring(lastWord(previousValue).length));$(input).selection(previousValue.length,previousValue.length+sValue.length);}};function hideResults(){clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){var wasVisible=select.visible();select.hide();clearTimeout(timeout);stopLoading();if(options.mustMatch){$input.search(function(result){if(!result){if(options.multiple){var words=trimWords($input.val()).slice(0,-1);$input.val(words.join(options.multipleSeparator)+(words.length?options.multipleSeparator:""));}else{$input.val("");$input.trigger("result",null);}}});}};function receiveData(q,data){if(data&&data.length&&hasFocus){stopLoading();select.display(data,q);autoFill(q,data[0].value);select.show();}else{hideResultsNow();}};function request(term,success,failure){if(!options.matchCase)term=term.toLowerCase();var data=cache.load(term);if(data&&data.length){success(term,data);}else if((typeof options.url=="string")&&(options.url.length>0)){var extraParams={timestamp:+new Date()};$.each(options.extraParams,function(key,param){extraParams[key]=typeof param=="function"?param():param;});$.ajax({mode:"abort",port:"autocomplete"+input.name,dataType:options.dataType,url:options.url,data:$.extend({q:lastWord(term),limit:options.max},extraParams),success:function(data){var parsed=options.parse&&options.parse(data)||parse(data);cache.add(term,parsed);success(term,parsed);}});}else{select.emptyList();failure(term);}};function parse(data){var parsed=[];var rows=data.split("\n");for(var i=0;i<rows.length;i++){var row=$.trim(rows[i]);if(row){row=row.split("|");parsed[parsed.length]={data:row,value:row[0],result:options.formatResult&&options.formatResult(row,row[0])||row[0]};}}return parsed;};function stopLoading(){$input.removeClass(options.loadingClass);};};$.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(row){return row[0];},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(value,term){return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>");},scroll:true,scrollHeight:180};$.Autocompleter.Cache=function(options){var data={};var length=0;function matchSubset(s,sub){if(!options.matchCase)s=s.toLowerCase();var i=s.indexOf(sub);if(options.matchContains=="word"){i=s.toLowerCase().search("\\b"+sub.toLowerCase());}if(i==-1)return false;return i==0||options.matchContains;};function add(q,value){if(length>options.cacheLength){flush();}if(!data[q]){length++;}data[q]=value;}function populate(){if(!options.data)return false;var stMatchSets={},nullData=0;if(!options.url)options.cacheLength=1;stMatchSets[""]=[];for(var i=0,ol=options.data.length;i<ol;i++){var rawValue=options.data[i];rawValue=(typeof rawValue=="string")?[rawValue]:rawValue;var value=options.formatMatch(rawValue,i+1,options.data.length);if(value===false)continue;var firstChar=value.charAt(0).toLowerCase();if(!stMatchSets[firstChar])stMatchSets[firstChar]=[];var row={value:value,data:rawValue,result:options.formatResult&&options.formatResult(rawValue)||value};stMatchSets[firstChar].push(row);if(nullData++<options.max){stMatchSets[""].push(row);}};$.each(stMatchSets,function(i,value){options.cacheLength++;add(i,value);});}setTimeout(populate,25);function flush(){data={};length=0;}return{flush:flush,add:add,populate:populate,load:function(q){if(!options.cacheLength||!length)return null;if(!options.url&&options.matchContains){var csub=[];for(var k in data){if(k.length>0){var c=data[k];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub.push(x);}});}}return csub;}else
if(data[q]){return data[q];}else
if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var c=data[q.substr(0,i)];if(c){var csub=[];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub[csub.length]=x;}});return csub;}}}return null;}};};$.Autocompleter.Select=function(options,input,select,config){var CLASSES={ACTIVE:"ac_over"};var listItems,active=-1,data,term="",needsInit=true,element,list;function init(){if(!needsInit)return;element=$("<div/>").hide().addClass(options.resultsClass).css("position","absolute").appendTo(document.body);list=$("<ul/>").appendTo(element).mouseover(function(event){if(target(event).nodeName&&target(event).nodeName.toUpperCase()=='LI'){active=$("li",list).removeClass(CLASSES.ACTIVE).index(target(event));$(target(event)).addClass(CLASSES.ACTIVE);}}).click(function(event){$(target(event)).addClass(CLASSES.ACTIVE);select();input.focus();return false;}).mousedown(function(){config.mouseDownOnSelect=true;}).mouseup(function(){config.mouseDownOnSelect=false;});if(options.width>0)element.css("width",options.width);needsInit=false;}function target(event){var element=event.target;while(element&&element.tagName!="LI")element=element.parentNode;if(!element)return[];return element;}function moveSelect(step){listItems.slice(active,active+1).removeClass(CLASSES.ACTIVE);movePosition(step);var activeItem=listItems.slice(active,active+1).addClass(CLASSES.ACTIVE);if(options.scroll){var offset=0;listItems.slice(0,active).each(function(){offset+=this.offsetHeight;});if((offset+activeItem[0].offsetHeight-list.scrollTop())>list[0].clientHeight){list.scrollTop(offset+activeItem[0].offsetHeight-list.innerHeight());}else if(offset<list.scrollTop()){list.scrollTop(offset);}}};function movePosition(step){active+=step;if(active<0){active=listItems.size()-1;}else if(active>=listItems.size()){active=0;}}function limitNumberOfItems(available){return options.max&&options.max<available?options.max:available;}function fillList(){list.empty();var max=limitNumberOfItems(data.length);for(var i=0;i<max;i++){if(!data[i])continue;var formatted=options.formatItem(data[i].data,i+1,max,data[i].value,term);if(formatted===false)continue;var li=$("<li/>").html(options.highlight(formatted,term)).addClass(i%2==0?"ac_even":"ac_odd").appendTo(list)[0];$.data(li,"ac_data",data[i]);}listItems=list.find("li");if(options.selectFirst){listItems.slice(0,1).addClass(CLASSES.ACTIVE);active=0;}if($.fn.bgiframe)list.bgiframe();}return{display:function(d,q){init();data=d;term=q;fillList();},next:function(){moveSelect(1);},prev:function(){moveSelect(-1);},pageUp:function(){if(active!=0&&active-8<0){moveSelect(-active);}else{moveSelect(-8);}},pageDown:function(){if(active!=listItems.size()-1&&active+8>listItems.size()){moveSelect(listItems.size()-1-active);}else{moveSelect(8);}},hide:function(){element&&element.hide();listItems&&listItems.removeClass(CLASSES.ACTIVE);active=-1;},visible:function(){return element&&element.is(":visible");},current:function(){return this.visible()&&(listItems.filter("."+CLASSES.ACTIVE)[0]||options.selectFirst&&listItems[0]);},show:function(){var offset=$(input).offset();element.css({width:typeof options.width=="string"||options.width>0?options.width:$(input).width(),top:offset.top+input.offsetHeight,left:offset.left}).show();if(options.scroll){list.scrollTop(0);list.css({maxHeight:options.scrollHeight,overflow:'auto'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;listItems.each(function(){listHeight+=this.offsetHeight;});var scrollbarsVisible=listHeight>options.scrollHeight;list.css('height',scrollbarsVisible?options.scrollHeight:listHeight);if(!scrollbarsVisible){listItems.width(list.width()-parseInt(listItems.css("padding-left"))-parseInt(listItems.css("padding-right")));}}}},selected:function(){var selected=listItems&&listItems.filter("."+CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);return selected&&selected.length&&$.data(selected[0],"ac_data");},emptyList:function(){list&&list.empty();},unbind:function(){element&&element.remove();}};};$.fn.selection=function(start,end){if(start!==undefined){return this.each(function(){if(this.createTextRange){var selRange=this.createTextRange();if(end===undefined||start==end){selRange.move("character",start);selRange.select();}else{selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}}else if(this.setSelectionRange){this.setSelectionRange(start,end);}else if(this.selectionStart){this.selectionStart=start;this.selectionEnd=end;}});}var field=this[0];if(field.createTextRange){var range=document.selection.createRange(),orig=field.value,teststring="<->",textLength=range.text.length;range.text=teststring;var caretAt=field.value.indexOf(teststring);field.value=orig;this.selection(caretAt,caretAt+textLength);return{start:caretAt,end:caretAt+textLength}}else if(field.selectionStart!==undefined){return{start:field.selectionStart,end:field.selectionEnd}}};})(jQuery);//Venues.Autocomplete.SearchBox
var tempX = 0;
var tempY = 0;
var actualHeight;
var mapHeight;
var lateHeight;
var accommodationHeight;
var recordType = "Venue";


function HideMostPopularSearch()
{    
    $("#divMostPopularLinks").fadeOut("slow");
}
function ShowMostPopularSearch() {

    $("#divMostPopularLinks").fadeIn("slow");
    $("#divMostPopularLinks").css({
        "position": "absolute",
        "top": (tempY - 122),
        "left": 420
    });
}


function GetLateAvailabilityHeight()
{    
    if($('.lateAvailability').is(':hidden'))
    {
        return  0;
        }
    else{
        return lateHeight;
        }
}

function GetAccommodationControlHeight()
{    
    if($('.accommodations').is(':hidden')){
        return  0;
        }
    else{
        return accommodationHeight;
        }
}
function GetMapHeight() {
    if ($('.mapsearch').is(':hidden')){
        return 0;
        }
    else{
        return mapHeight + 90;
        }
}

function SearchBoxOnFocus(isFocus, searchBox)
{  
    var textLength = $(searchBox).val().length;
    if(isFocus ){
        $(searchBox).removeClass("autosearch");
        }
    else if(textLength === 0 ){
       $(searchBox).addClass("autosearch");      
       }
  
}

function AdjustRHSHeight(option,isAdd)
{
    var newHeight;
    var offset;
    
    if(option == 'map')
    {
        if(isAdd)
        {
             newHeight = mapHeight;        
             offset = 90;   
         }
         else
         {
            newHeight = 0;
            offset = 0;
         }
           
         newHeight = newHeight + GetLateAvailabilityHeight() + GetAccommodationControlHeight();
    }
    else if (option === 'late')
    {
        if(isAdd)
        {
            newHeight = lateHeight;
            }
        else{
            newHeight = 0;
            }
        
        offset=0;
        newHeight = newHeight +GetMapHeight();
    }
   
        $('#rightHandNavDiv').css({height:"auto"});        
        ReAssignHieght('rightHandNavDiv',actualHeight,newHeight+offset);
        AdjustHeight();
        
}


function GetTabName() {
    var tab;
    if ($("#" + IDMainContent() + "ucSearchVenues_rdobtnVenues").is(":checked"))
    {
        tab = "Venue";
        }
    else if ($("#" + IDMainContent() + "ucSearchVenues_rdobtnAccommodation").is(":checked"))
     {
        tab = "Accommodation";
        }
    else
    {
        tab = "LateAvailability";
        }
    return tab;
}

function SetSearchCriteria(sValue) {
    var searchId;
    var searchText;
    var tabName = GetTabName();
    searchId = sValue;

    $("#" + IDMainContent() + "ucSearchVenues_hiddenDisplayTab").val(tabName);
    if (tabName == "LateAvailability") {
        var ddlMonthList = $("#" + IDMainContent() + "ucSearchVenues_ddlMonths");
        $("#" + IDMainContent() + "ucSearchVenues_hiddenYear").val(ddlMonthList.find(':selected').val());
        $("#" + IDMainContent() + "ucSearchVenues_hiddenMonthName").val(ddlMonthList.find(':selected').text());
    }
    searchText = $("#" + IDMainContent() + "ucSearchVenues_txtSuggest").val();
    //SetSearchValues(searchId, searchText);
    $("#" + IDMainContent() + "ucSearchVenues_btnSearchResult").click();
}


function findValue(li) {
    var sValue;
    if (li === null)
    { return alert("No match!");}

    if (!!li.extra)
    { 
         sValue = li.extra[0];
         return true;
    }else{
          sValue = li.selectValue;
          return true;
    }
}

function formatItem(row) {
    return '<a href="' + row[0] + '">' + row[1] + '</a>';
}

function SearchByText() {
    SetSearchCriteria('0');
    return false;
}

function InitiateAutocompleteSearch()
{
    $("#" + IDMainContent() + "ucSearchVenues_txtSuggest").removeData('events');
        
    
    
    var recordType =  $("#" + IDMainContent() + "ucSearchVenues_hiddenTabEnum").val(); 
    var lateAvailabilityMonth = $("#" + IDMainContent() + "ucSearchVenues_hiddenMonthName").val();
    var lateAvailabilityYear = $("#" + IDMainContent() + "ucSearchVenues_hiddenYear").val();
    if (recordType === null) {
    recordType = '';
    }
    
    var searchoptions = { t:recordType, m: lateAvailabilityMonth, y:lateAvailabilityYear};    
    var searchHandlerUrl= '/handlers/search.aspx';    
     $("#" + IDMainContent() + "ucSearchVenues_txtSuggest").autocomplete(searchHandlerUrl,
	 {	       
			minChars:1,
			mustMatch: false,
			delay: 10,
			cacheLength: 100,
			matchContains: true,
			max: 20,
			onFindValue:findValue,
			formatItem:formatItem,
			autoFill:false,
			extraParams:searchoptions
	}).result(function(event, item) {
		 $("#" + IDMainContent() + "ucSearchVenues_txtSuggest").val(item[2]);
		 location.href = item[0];
	});
	
	 $("#" + IDMainContent() + "ucSearchVenues_txtSuggest").keypress(function(e) {       
          if((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13))
          {
               SearchByText();            
               return false;  
           }    
     });
}

function ToggleLateAvailabilitySection()
{           
        if ($("#" + IDMainContent() + "ucSearchVenues_rdobtnLateAvailability").is(':checked')) 
        {
            //$("#" + IDMainContent() + "ucSearchVenues_hiddenTabEnum").val('4')
            $('.lateAvailability').slideDown('fast');
            $('.accommodations').slideUp('fast');
            AdjustRHSHeight('late',true);      
        }
		else if($("#" + IDMainContent() + "ucSearchVenues_rdobtnAccommodation").is(':checked'))
		{
		    //$("#" + IDMainContent() + "ucSearchVenues_hiddenTabEnum").val('3')
		   $('.accommodations').slideDown('fast');
		   $('.lateAvailability').slideUp('fast');
		   AdjustRHSHeight('late',true);
        }
        else
        {
            //$("#" + IDMainContent() + "ucSearchVenues_hiddenTabEnum").val('1')
            $('.accommodations').slideUp('fast');
		    $('.lateAvailability').slideUp('fast');
		    AdjustRHSHeight('late',false);
        }
        InitiateAutocompleteSearch();
		   
}

function OnChangeLateAvailabilityMonth()
{
    var ddlMonthList =$("#" + IDMainContent() + "ucSearchVenues_ddlMonths");        
    $("#" + IDMainContent() + "ucSearchVenues_hiddenYear").val(ddlMonthList.find(':selected').val());
    $("#" + IDMainContent() + "ucSearchVenues_hiddenMonthName").val(ddlMonthList.find(':selected').text());
    InitiateAutocompleteSearch();
}

function getMouseXY(e) {
    tempX = e.pageX;
    tempY = e.pageY;
    return true;
}


function GetTabEnum() {
    var tab;
    if ($("#" + IDMainContent() + "ucSearchVenues_rdobtnVenues").is(":checked"))
    {
        tab = "1";
       }
    else if ($("#" + IDMainContent() + "ucSearchVenues_rdobtnAccommodation").is(":checked"))
    {
        tab = "2";
        }
    else if ($("#" + IDMainContent() + "ucSearchVenues_rdobtnLateAvailability").is(":checked"))
    {
        tab = "3";
        }
    return tab;
}
function lookupAjax() {
    var oSuggest = $("#" + IDMainContent() + "ucSearchVenues_suggest1")[0].Autocompleter;
    oSuggest.findValue();
    return false;
}

$(document).ready(function() {
    
    var venuesSearchHandlerUrl = '/handlers/SearchVenue.aspx';
    //if (!isOldIE) document.captureEvents(Event.MOUSEMOVE);
    $("#ancMostPopularSearch").mousemove( function(e){getMouseXY(e);});  //HACK: Use jquery instead  
    mapHeight = $('.mapsearch').height(); 
	
    $("#popupClose").click(function(){HideMostPopularSearch();});    
    $("#ancMostPopularSearch").click(function(){
		ShowMostPopularSearch();
		return false;
	});        
	$("#" + IDMainContent() + "ucSearchVenues_txtVenueName").autocomplete(venuesSearchHandlerUrl,
	    {	   
				minChars:1,
				mustMatch: false,
				delay: 10,
				cacheLength: 100,
				matchContains: true,
				max: 20,
				onFindValue:findValue,
				formatItem:formatItem,
				autoFill:false
	    }
	).result(function(event, item) {
		 $("#" + IDMainContent() + "ucSearchVenues_txtVenueName").val(item[1]);
		 location.href = item[0];
	});	
	$('div.search-for-right').click(function(){
		ToggleLateAvailabilitySection();
	});
	actualHeight = $('#rightHandNavDiv').height();  
	lateHeight = $('.lateAvailability').height();  
	accommodationHeight = $('.accommodations').height();  
	ToggleLateAvailabilitySection();

});/**
 * @author alexander.farkas
 * 
 * @version 2.5.4
 * project site: http://plugins.jquery.com/project/AjaxManager
 */
(function($){
	$.support.ajax = !!(window.XMLHttpRequest);
	if(window.ActiveXObject){
		try{
			new ActiveXObject("Microsoft.XMLHTTP");
			$.support.ajax = true;
		} catch(e){
			if(window.XMLHttpRequest){
				$.ajaxSetup({xhr: function(){
					return new XMLHttpRequest();
				}});
			}
		}
	}
	$.manageAjax = (function(){
		var cache 			= {},
			queues			= {},
			presets 		= {},
			activeRequest 	= {},
			allRequests 	= {},
			triggerEndCache = {},
			defaults 		= {
						queue: true, //clear
						maxRequests: 1,
						abortOld: false,
						preventDoubbleRequests: true,
						cacheResponse: false,
						complete: function(){},
						error: function(ahr, status){
							var opts = this;
							if(status && status.indexOf('error') != -1){
								setTimeout(function(){
									var errStr = status +': ';
									if(ahr.status){
										errStr += 'status: '+ ahr.status +' | ';
									}
									errStr += 'URL: '+ opts.url;
									throw new Error(errStr);
								}, 1);
							}
						},
						success: function(){},
						abort: function(){}
				}
		;
		
		function create(name, settings){
			var publicMethods = {};
			presets[name] = presets[name] ||
				{};
			
			$.extend(true, presets[name], $.ajaxSettings, defaults, settings);
			
			if(!allRequests[name]){
				allRequests[name] 	= {};
				activeRequest[name] = {};
				activeRequest[name].queue = [];
				queues[name] 		= [];
				triggerEndCache[name] = [];
			}
			$.each($.manageAjax, function(fnName, fn){
				if($.isFunction(fn) && fnName.indexOf('_') !== 0){
					publicMethods[fnName] = function(param, param2){
						if(param2 && typeof param === 'string'){
							param = param2;
						}
						fn(name, param);
					};
				}
			});
			return publicMethods;
		}
		
		function complete(opts, args){
			
			if(args[1] == 'success' || args[1] == 'notmodified'){
				opts.success.apply(opts, [args[0].successData, args[1]]);
				if (opts.global) {
					$.event.trigger("ajaxSuccess", args);
				}
			}
			
			if(args[1] === 'abort'){
				opts.abort.apply(opts, args);
				if(opts.global){
					$.active--;
					$.event.trigger("ajaxAbort", args);
				}
			}
			
			opts.complete.apply(opts, args);
			
			if (opts.global) {
				$.event.trigger("ajaxComplete", args);
			}
			
			if (opts.global && ! $.active){
				$.event.trigger("ajaxStop");
			}
			//args[0] = null; 
		}
		
		function proxy(oldFn, fn){
			return function(xhr, s, e){
				fn.call(this, xhr, s, e);
				oldFn.call(this, xhr, s, e);
				xhr = null;
				e = null;
			};
		}
		
					
		function callQueueFn(name){
			var q = queues[name];
			if(q && q.length){
				var fn = q.shift();
				if(fn){
					fn();
				}
			}
		}

		
		function add(name, opts){
			if(!presets[name]){
				create(name, opts);
			}
			opts = $.extend({}, presets[name], opts);
			//aliases
			var allR 	= allRequests[name],
				activeR = activeRequest[name],
				queue	= queues[name];
			
			var id 				= opts.type +'_'+ opts.url.replace(/\./g, '_'),
				triggerStart 	= true,
				oldComplete 	= opts.complete,
				ajaxFn 			= function(){
									activeR.queue.push(id);
									activeR[id] = {
										xhr: false,
										ajaxManagerOpts: opts
									};
									activeR[id].xhr = $.ajax(opts);
									return id;
								}
				;
				
			if(opts.data){
				id += (typeof opts.data == 'string') ? opts.data : $.param(opts.data);
			}
			
			if(opts.preventDoubbleRequests && allRequests[name][id]){
				return false;
			}
			
			allR[id] = true;
			
			opts.complete = function(xhr, s, e){
				var triggerEnd = true;
				if(opts.abortOld){
					$.each(activeR.queue, function(i, activeID){
						if(activeID == id){
							return false;
						}
						abort(name, activeID);
						return activeID;
					});
				}
				oldComplete.call(this, xhr, s, e);
				//stop memory leak
				if(activeRequest[name][id]){
					if(activeRequest[name][id] && activeRequest[name][id].xhr){
						activeRequest[name][id].xhr = null;
					} 
					activeRequest[name][id] = null;
				}
				triggerEndCache[name].push({xhr: xhr, status: s});
				xhr = null;
				activeRequest[name].queue = $.grep(activeRequest[name].queue, function(qid){
					return (qid !== id);
				});
				allR[id] = false;
				
				e = null;
				
				delete activeRequest[name][id];
				
				$.each(activeR, function(id, queueRunning){
					if(id !== 'queue' || queueRunning.length){
						triggerEnd = false;
						return false;
					}
				});
				
				if(triggerEnd){
					$.event.trigger(name +'End', [triggerEndCache[name]]);
					$.each(triggerEndCache[name], function(i, cached){
						cached.xhr = null; //memory leak
					});
					triggerEndCache[name] = [];
				}
			};
			
			if(cache[id]){
				ajaxFn = function(){
					activeR.queue.push(id);
					complete(opts, cache[id]);
					return id;
				};
			} else if(opts.cacheResponse){
				 opts.complete = proxy(opts.complete, function(xhr, s){
					if( s !== "success" && s !== "notmodified" ){
						return false;
					}
					cache[id][0].responseXML 	= xhr.responseXML;
					cache[id][0].responseText 	= xhr.responseText;
					cache[id][1] 				= s;
					//stop memory leak
					xhr = null;
					return id; //strict
				});
				
				opts.success = proxy(opts.success, function(data, s){
					cache[id] = [{
						successData: data,
						ajaxManagerOpts: opts
					}, s];
					data = null;
				});
			}
			
			ajaxFn.ajaxID = id;
			
			$.each(activeR, function(id, queueRunning){
				if(id !== 'queue' || queueRunning.length){
					triggerStart = false;
					return false;
				}
			});
			
			if(triggerStart){
				$.event.trigger(name +'Start');
			}
			if(opts.queue){
				opts.complete = proxy(opts.complete, function(){
					
					callQueueFn(name);
				});
				 
				if(opts.queue === 'clear'){
					queue = clear(name);
				}
				
				queue.push(ajaxFn);
				
				if(activeR.queue.length < opts.maxRequests){
					callQueueFn(name); 
				}
				return id;
			}
			
			
			
			return ajaxFn();
		}
		
		function clear(name, shouldAbort){
			$.each(queues[name], function(i, fn){
				allRequests[name][fn.ajaxID] = false;
			});
			queues[name] = [];
			
			if(shouldAbort){
				abort(name);
			}
			return queues[name];
		}
		
		function getXHR(name, id){
			var ar = activeRequest[name];
			if(!ar || !allRequests[name][id]){
				return false;
			}
			if(ar[id]){
				return ar[id].xhr;
			}
			var queue = queues[name],
				xhrFn;
			$.each(queue, function(i, fn){
				if(fn.ajaxID == id){
					xhrFn = [fn, i];
					return false;
				}
				return xhrFn;
			});
			return xhrFn;
		}
		
		function abort(name, id){
			var ar = activeRequest[name];
			if(!ar){
				return false;
			}
			function abortID(qid){
				if(qid !== 'queue' && ar[qid] && ar[qid].xhr){
					try {
						ar[qid].xhr.abort();
					} catch(e){}
					complete(ar[qid].ajaxManagerOpts, [ar[qid].xhr, 'abort']);
				}
				return null;
			}
			if(id){
				return abortID(id);
			}
			return $.each(ar, abortID);
		}
		
		function unload(){
			$.each(presets, function(name){
				clear(name, true);
			});
			cache = {};
		}
		
		return {
			defaults: 		defaults,
			add: 			add,
			create: 		create,
			cache: 			cache,
			abort: 			abort,
			clear: 			clear,
			getXHR: 		getXHR,
			_activeRequest: activeRequest,
			_complete: 		complete,
			_allRequests: 	allRequests,
			_unload: 		unload
		};
	})();
	//stop memory leaks
	$(window).unload($.manageAjax._unload);
})(jQuery);//Venues Homepage.
//This needs to be split out from here into separate files, as some of these functions are being used on the venues page
//Items in this file
//AutoComplete (SearchByText,SetSearchCriteria,SetSearchValues,lookupAjax, ShowMostPopularSearch, HideMostPopularSearch, SearchBoxOnFocus, InitiateAutocompleteSearch)
//Tagging (GetTabName)
//Misc (findValue,formatItem,getMouseXY, DisplayData)
//Homepage (ready,GetLateAvailabilityHeight,GetAccommodationControlHeight,GetMapHeight,AdjustRHSHeight,ValidateTownField,ValidateCountyField,OnSelectCounty,PopulateCounties,ToggleLateAvailabilitySection,OnChangeLateAvailabilityMonth)


var asmxCommon = "/API/Venues/JSWSCommon.asmx/";
var $HitchedAjaxOptions = {
type: "POST",
contentType: "application/json; charset=utf-8",
      dataType: "json",
      error: function(result) {
            alert("Error in server:" + result.status + ' ' + result.statusText);
      }};

var ajaxQueue = $.manageAjax.create('AjaxQueue', { queue: true, cacheResponse: true }); 	


function ValidateTownField() {
    var countyId = $('#' + IDMainContent() + 'ucBrowseVenues_ddlCities').find(':selected').val();
    if (countyId == '0') {
        alert("Please select town from the drop down list...");
        return false;
    }
    else{
        return true;
        }
}
function PopulateCountriesCallBack(result) {
    $('#' + IDMainContent() + 'ucBrowseVenues_ddlCounty').html(result.d);
    $('#' + IDMainContent() + 'ucBrowseVenues_ddlCounty').find(':selected').val(0);
}

function PopulateCounties() {
    var q = $HitchedAjaxOptions; 
    q.url = asmxCommon + "GetCountyListing";                 
    q.data = "{country:'" + $('#' + IDMainContent() + 'ucBrowseVenues_ddlCountry').find(':selected').text() + "'}";                        
    q.success = PopulateCountriesCallBack;  
    ajaxQueue.add(q);         
}

var prev = 1;
function DisplayData(type) {
    $('#td_' + prev).attr("class", "tab-grey");
    $('#td_' + type).attr("class", "tab-blue");
    $('#div' + prev).attr("class", "hideDiv");
    $('#div' + type).attr("class", "showDiv");
    prev = type;
}

$(document).ready(function() {
    $("#" + IDMainContent() + "ucSearchVenues_ddlMonths").change(function() { OnChangeLateAvailabilityMonth(); });
    var optionId = $("#optionId").val();
    DisplayData(optionId);

    $('div .checklistNav').find('div').click(function() {
        var divId = this.id;
        divId = divId.split('_');
        DisplayData(divId[1]);
    });

    $('#' + IDMainContent() + 'ucBrowseVenues_btnCitySearch').click(function() { return ValidateTownField(); });

    $('.mapsearch-link').click(function() {
        if ($('.mapsearch').is(':hidden')) {
            $('.mapsearch').slideDown('normal');
            AdjustRHSHeight('map', true);
            return false;
        } else {
            $('.mapsearch').slideUp('fast');
            AdjustRHSHeight('map', false);
            return false;
        }
    });

    var countrySelection = $('#' + IDMainContent() + 'ucBrowseVenues_ddlCountry');
    countrySelection.change(function() { PopulateCounties(); });
    var selectedCounty = countrySelection.val();
    var nothing;
    if (selectedCounty !== 0 && selectedCounty !== '' && selectedCounty !== nothing) {
        PopulateCounties();
    }
    $('#MapDiv a').tooltip({
        track: true,
        delay: 0,
        showURL: false,
        showBody: " - ",
        top: -55,
        left: -20
    });
});


// Listing.JS
//Used for LHN?

$(document).ready(function(){   
        
    $('div .toggle-list-head').click(function(){
            var listingId=this.id;
            listingId=listingId.split('_');
           ToggleHeader(listingId[1]);
        });
 });

function checkListing(title)
{
   var headerId=$("*[id$='hddnFirstHeaderId']").val();
   //alert(headerId);
   if(headerId !== null || headerId !== 'undefined' || headerId !== '' || headerId !== undefined)
   {
			$('#slideeffectRegion' + headerId).slideDown('slow');  
			if(title=='Venues')
			{
				$('#lblHeaderName_' + headerId).attr("style","display:none");
				$('#lblHeaderName_00').attr("style","display:none");
				$('#slideeffectRegion00').attr("style","display:none");
			}
   }
   AdjustHeight();
}
 
function ToggleHeader(HeaderId)
{
    var websiteName= $("#hddnWebsiteName").val();
    if($('#slideeffectRegion' + HeaderId).is(":hidden"))
    {       
         $("#lblHeaderName_" + HeaderId).css({backgroundImage :"url(" + websiteName + "/Images/down_arrow.gif)"});
         $('#slideeffectRegion' + HeaderId).slideDown('slow');  
    }   
    else
    { 
        $("#lblHeaderName_" + HeaderId).css({backgroundImage :"url(" + websiteName + "/Images/left_arrow.gif)"});
        $('#slideeffectRegion' + HeaderId).slideUp('slow');          
    }
    /*AdjustHeight(); */
} 
    
  (function($) {
	var has_VML, create_canvas_for, add_shape_to, clear_canvas, shape_from_area,
		canvas_style, fader, hex_to_decimal, css3color, is_image_loaded;
	has_VML = document.namespaces;
	has_canvas = document.createElement('canvas');
	has_canvas = has_canvas && has_canvas.getContext;
	
	if(!(has_canvas || has_VML)) {
		$.fn.maphilight = function() { return this; };
		return;
	}
	
	if(has_canvas) {
		fader = function(element, opacity, interval) {
			if(opacity <= 1) {
				element.style.opacity = opacity;
				window.setTimeout(fader, 10, element, opacity + 0.1, 10);
			}
		};
		
		hex_to_decimal = function(hex) {
			return Math.max(0, Math.min(parseInt(hex, 16), 255));
		};
		css3color = function(color, opacity) {
			return 'rgba('+hex_to_decimal(color.substr(0,2))+','+hex_to_decimal(color.substr(2,2))+','+hex_to_decimal(color.substr(4,2))+','+opacity+')';
		};
		create_canvas_for = function(img) {
			var c = $('<canvas style="width:'+img.width+'px;height:'+img.height+'px;"></canvas>').get(0);
			c.getContext("2d").clearRect(0, 0, c.width, c.height);
			return c;
		};
		add_shape_to = function(canvas, shape, coords, options) {
			var i, context = canvas.getContext('2d');
			context.beginPath();
			if(shape == 'rect') {
				context.rect(coords[0], coords[1], coords[2] - coords[0], coords[3] - coords[1]);
			} else if(shape == 'poly') {
				context.moveTo(coords[0], coords[1]);
				for(i=2; i < coords.length; i+=2) {
					context.lineTo(coords[i], coords[i+1]);
				}
			} else if(shape == 'circ') {
				context.arc(coords[0], coords[1], coords[2], 0, Math.PI * 2, false);
			}
			context.closePath();
			if(options.fill) {
				context.fillStyle = css3color(options.fillColor, options.fillOpacity);
				context.fill();
			}
			if(options.stroke) {
				context.strokeStyle = css3color(options.strokeColor, options.strokeOpacity);
				context.lineWidth = options.strokeWidth;
				context.stroke();
			}
			if(options.fade) {
				fader(canvas, 0);
			}
		};
		clear_canvas = function(canvas, area) {
			canvas.getContext('2d').clearRect(0, 0, canvas.width,canvas.height);
		};
	} else {
		if(!document.documentMode || document.documentMode<8) {
			document.createStyleSheet().addRule("v\\:*", "behavior: url(#default#VML); antialias: true;"); 
			document.namespaces.add("v", "urn:schemas-microsoft-com:vml"); 
		} else {
			var ss = document.createStyleSheet();
			ss.addRule("v\\:shape", "behavior:url(#default#VML); display:inline-block; antialias:true");
			ss.addRule("v\\:group", "behavior:url(#default#VML); display:inline-block; antialias:true");
			ss.addRule("v\\:polyline", "behavior:url(#default#VML); display:inline-block; antialias:true");
			ss.addRule("v\\:stroke", "behavior:url(#default#VML); display:inline-block; antialias:true");
			ss.addRule("v\\:fill", "behavior:url(#default#VML); display:inline-block; antialias:true");
			ss.addRule("v\\:rect", "behavior:url(#default#VML); display:inline-block; antialias:true");
			ss.addRule("v\\:oval", "behavior:url(#default#VML); display:inline-block; antialias:true");
			document.namespaces.add("v", "urn:schemas-microsoft-com:vml", "#default#VML"); 
		}
		
		create_canvas_for = function(img) {
			return $('<var style="zoom:1;overflow:hidden;display:block;width:'+img.width+'px;height:'+img.height+'px;"></var>').get(0);
		};
		add_shape_to = function(canvas, shape, coords, options) {
			var fill, stroke, opacity, e;
			fill = '<v:fill color="#'+options.fillColor+'" opacity="'+(options.fill ? options.fillOpacity : 0)+'" />';
			stroke = (options.stroke ? 'strokeweight="'+options.strokeWidth+'" stroked="t" strokecolor="#'+options.strokeColor+'"' : 'stroked="f"');
			opacity = '<v:stroke opacity="'+options.strokeOpacity+'"/>';
			if(shape == 'rect') {
				e = $('<v:rect filled="t" '+stroke+' style="zoom:1;margin:0;padding:0;display:block;position:absolute;left:'+coords[0]+'px;top:'+coords[1]+'px;width:'+(coords[2] - coords[0])+'px;height:'+(coords[3] - coords[1])+'px;"></v:rect>');
			} else if(shape == 'poly') {
				e = $('<v:shape filled="t" '+stroke+' coordorigin="0,0" coordsize="'+canvas.width+','+canvas.height+'" path="m '+coords[0]+','+coords[1]+' l '+coords.join(',')+' x e" style="zoom:1;margin:0;padding:0;display:block;position:absolute;top:0px;left:0px;width:'+canvas.width+'px;height:'+canvas.height+'px;"></v:shape>');
			} else if(shape == 'circ') {
				e = $('<v:oval filled="t" '+stroke+' style="zoom:1;margin:0;padding:0;display:block;position:absolute;left:'+(coords[0] - coords[2])+'px;top:'+(coords[1] - coords[2])+'px;width:'+(coords[2]*2)+'px;height:'+(coords[2]*2)+'px;"></v:oval>');
			}
			e.get(0).innerHTML = fill+opacity;
			$(canvas).append(e);
		};
		clear_canvas = function(canvas) {
			$(canvas).empty();
		};
	}
	shape_from_area = function(area) {
		var i, coords = area.getAttribute('coords').split(',');
		for (i=0; i < coords.length; i++) { coords[i] = parseFloat(coords[i]); }
		return [area.getAttribute('shape').toLowerCase().substr(0,4), coords];
	};
	
	is_image_loaded = function(img) {
		if(!img.complete) { return false; } // IE
		if(typeof img.naturalWidth != "undefined" && img.naturalWidth == 0) { return false; } // Others
		return true;
	}

	canvas_style = {
		position: 'absolute',
		left: 0,
		top: 0,
		padding: 0,
		border: 0
	};
	
	$.fn.maphilight = function(opts) {
		opts = $.extend({}, $.fn.maphilight.defaults, opts);
		return this.each(function() {
			var img, wrap, options, map, canvas, canvas_always, mouseover;
			img = $(this);
			if(!is_image_loaded(this)) { return window.setTimeout(function() { img.maphilight(opts); }, 200); }
			options = $.metadata ? $.extend({}, opts, img.metadata()) : opts;
			map = $('map[name="'+img.attr('usemap').substr(1)+'"]');
			if(!(img.is('img') && img.attr('usemap') && map.size() > 0 && !img.hasClass('maphilighted'))) { return; }
			wrap = $('<div>').css({display:'block',background:'url('+this.src+') no-repeat',position:'relative',padding:"0px",width:this.width,height:this.height});
			img.before(wrap).css('opacity', 0).css(canvas_style).remove();
			if($.browser.msie) { img.css('filter', 'Alpha(opacity=50)'); }
			wrap.append(img);
			
			canvas = create_canvas_for(this);
			$(canvas).css(canvas_style);
			canvas.height = this.height;
			canvas.width = this.width;
			
			mouseover = function(e) {
				var shape, area_options;
				area_options = $.metadata ? $.extend({}, options, $(this).metadata()) : options;
				if(!area_options.alwaysOn) {
					shape = shape_from_area(this);
					add_shape_to(canvas, shape[0], shape[1], area_options);
				}
			};
			
			if(options.alwaysOn) {
				$(map).find('area[coords]').each(mouseover);
			} else {
				if($.metadata) {
					// If the metadata plugin is present, there may be areas with alwaysOn set.
					// We'll add these to a *second* canvas, which will get around flickering during fading.
					$(map).find('area[coords]').each(function() {
						var shape, area_options;
						area_options = $.metadata ? $.extend({}, options, $(this).metadata()) : options;
						if(area_options.alwaysOn) {
							if(!canvas_always) {
								canvas_always = create_canvas_for(img.get());
								$(canvas_always).css(canvas_style);
								canvas_always.width = img.width() + "px";
								canvas_always.height = img.height() + "px";
								img.before(canvas_always);
							}
							shape = shape_from_area(this);
							add_shape_to(canvas_always, shape[0], shape[1], area_options);
						}
					})
				}
				$(map).find('area[coords]').mouseover(mouseover).mouseout(function(e) { clear_canvas(canvas); });
			}
			
			img.before(canvas); // if we put this after, the mouseover events wouldn't fire.
			img.addClass('maphilighted');
		});
	};
	$.fn.maphilight.defaults = {
		fill: true,
		fillColor: 'CFFED0',
		fillOpacity: 0.8,
		stroke: true,
		strokeColor: 'C3C3C3',
		strokeOpacity: 1,
		strokeWidth: 1,
		fade: false,
		alwaysOn: false
	};
})(jQuery);



/*
 * jQuery Tooltip plugin 1.3
 *
 * http://bassistance.de/jquery-plugins/jquery-plugin-tooltip/
 * http://docs.jquery.com/Plugins/Tooltip
 *
 * Copyright (c) 2006 - 2008 JÃ¶rn Zaefferer
 *
 * $Id: jquery.tooltip.js 5741 2008-06-21 15:22:16Z joern.zaefferer $
 * 
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */
 
;(function($) {
	
		// the tooltip element
	var helper = {},
		// the current tooltipped element
		current,
		// the title of the current element, used for restoring
		title,
		// timeout id for delayed tooltips
		tID,
		// IE 5.5 or 6
		IE = $.browser.msie && /MSIE\s(5\.5|6\.)/.test(navigator.userAgent),
		// flag for mouse tracking
		track = false;
	
	$.tooltip = {
		blocked: false,
		defaults: {
			delay: 200,
			fade: false,
			showURL: true,
			extraClass: "",
			top: 15,
			left: 15,
			id: "tooltip"
		},
		block: function() {
			$.tooltip.blocked = !$.tooltip.blocked;
		}
	};
	
	$.fn.extend({
		tooltip: function(settings) {
			settings = $.extend({}, $.tooltip.defaults, settings);
			createHelper(settings);
			return this.each(function() {
					$.data(this, "tooltip", settings);
					this.tOpacity = helper.parent.css("opacity");
					// copy tooltip into its own expando and remove the title
					this.tooltipText = this.title;
					$(this).removeAttr("title");
					// also remove alt attribute to prevent default tooltip in IE
					this.alt = "";
				})
				.mouseover(save)
				.mouseout(hide)
				.click(hide);
		},
		fixPNG: IE ? function() {
			return this.each(function () {
				var image = $(this).css('backgroundImage');
				if (image.match(/^url\(["']?(.*\.png)["']?\)$/i)) {
					image = RegExp.$1;
					$(this).css({
						'backgroundImage': 'none',
						'filter': "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=crop, src='" + image + "')"
					}).each(function () {
						var position = $(this).css('position');
						if (position != 'absolute' && position != 'relative')
							$(this).css('position', 'relative');
					});
				}
			});
		} : function() { return this; },
		unfixPNG: IE ? function() {
			return this.each(function () {
				$(this).css({'filter': '', backgroundImage: ''});
			});
		} : function() { return this; },
		hideWhenEmpty: function() {
			return this.each(function() {
				$(this)[ $(this).html() ? "show" : "hide" ]();
			});
		},
		url: function() {
			return this.attr('href') || this.attr('src');
		}
	});
	
	function createHelper(settings) {

		// there can be only one tooltip helper
		if( helper.parent )
			return;
		// create the helper, h3 for title, div for url
		helper.parent = $('<div id="' + settings.id + '"><h3></h3><div class="body"></div><div class="url"></div></div>')
			// add to document
			.appendTo(document.body)
			// hide it at first
			.hide();
			
		// apply bgiframe if available
		if ( $.fn.bgiframe )
			helper.parent.bgiframe();
		
		// save references to title and url elements
		helper.title = $('h3', helper.parent);
		helper.body = $('div.body', helper.parent);
		helper.url = $('div.url', helper.parent);
	}
	
	function settings(element) {
		return $.data(element, "tooltip");
	}
	
	// main event handler to start showing tooltips
	function handle(event) {
		// show helper, either with timeout or on instant
		if( settings(this).delay )
			tID = setTimeout(show, settings(this).delay);
		else
			show();
		
		// if selected, update the helper position when the mouse moves
		track = !!settings(this).track;
		$(document.body).bind('mousemove', update);
			
		// update at least once
		update(event);
	}
	
	// save elements title before the tooltip is displayed
	function save() {
		// if this is the current source, or it has no title (occurs with click event), stop
		if ( $.tooltip.blocked || this == current || (!this.tooltipText && !settings(this).bodyHandler) )
			return;

		// save current
		current = this;
		title = this.tooltipText;
		
		if ( settings(this).bodyHandler ) {
			helper.title.hide();
			var bodyContent = settings(this).bodyHandler.call(this);
			if (bodyContent.nodeType || bodyContent.jquery) {
				helper.body.empty().append(bodyContent)
			} else {
				helper.body.html( bodyContent );
			}
			helper.body.show();
		} else if ( settings(this).showBody ) {
			var parts = title.split(settings(this).showBody);
			helper.title.html(parts.shift()).show();
			helper.body.empty();
			for(var i = 0, part; (part = parts[i]); i++) {
				if(i > 0)
					helper.body.append("<br/>");
				helper.body.append(part);
			}
			helper.body.hideWhenEmpty();
		} else {
			helper.title.html(title).show();
			helper.body.hide();
		}
		
		// if element has href or src, add and show it, otherwise hide it
		if( settings(this).showURL && $(this).url() )
			helper.url.html( $(this).url().replace('http://', '') ).show();
		else 
			helper.url.hide();
		
		// add an optional class for this tip
		helper.parent.addClass(settings(this).extraClass);

		// fix PNG background for IE
		if (settings(this).fixPNG )
			helper.parent.fixPNG();
			
		handle.apply(this, arguments);
	}
	
	// delete timeout and show helper
	function show() {
		tID = null;
		if ((!IE || !$.fn.bgiframe) && settings(current).fade) {
			if (helper.parent.is(":animated"))
				helper.parent.stop().show().fadeTo(settings(current).fade, current.tOpacity);
			else
				helper.parent.is(':visible') ? helper.parent.fadeTo(settings(current).fade, current.tOpacity) : helper.parent.fadeIn(settings(current).fade);
		} else {
			helper.parent.show();
		}
		update();
	}
	
	/**
	 * callback for mousemove
	 * updates the helper position
	 * removes itself when no current element
	 */
	function update(event)	{
		if($.tooltip.blocked)
			return;
		
		if (event && event.target.tagName == "OPTION") {
			return;
		}
		
		// stop updating when tracking is disabled and the tooltip is visible
		if ( !track && helper.parent.is(":visible")) {
			$(document.body).unbind('mousemove', update)
		}
		
		// if no current element is available, remove this listener
		if( current == null ) {
			$(document.body).unbind('mousemove', update);
			return;	
		}
		
		// remove position helper classes
		helper.parent.removeClass("viewport-right").removeClass("viewport-bottom");
		
		var left = helper.parent[0].offsetLeft;
		var top = helper.parent[0].offsetTop;
		if (event) {
			// position the helper 15 pixel to bottom right, starting from mouse position
			left = event.pageX + settings(current).left;
			top = event.pageY + settings(current).top;
			var right='auto';
			if (settings(current).positionLeft) {
				right = $(window).width() - left;
				left = 'auto';
			}
			helper.parent.css({
				left: left,
				right: right,
				top: top
			});
		}
		
		var v = viewport(),
			h = helper.parent[0];
		// check horizontal position
		if (v.x + v.cx < h.offsetLeft + h.offsetWidth) {
			left -= h.offsetWidth + 20 + settings(current).left;
			helper.parent.css({left: left + 'px'}).addClass("viewport-right");
		}
		// check vertical position
		if (v.y + v.cy < h.offsetTop + h.offsetHeight) {
			top -= h.offsetHeight + 20 + settings(current).top;
			helper.parent.css({top: top + 'px'}).addClass("viewport-bottom");
		}
	}
	
	function viewport() {
		return {
			x: $(window).scrollLeft(),
			y: $(window).scrollTop(),
			cx: $(window).width(),
			cy: $(window).height()
		};
	}
	
	// hide helper and restore added classes and the title
	function hide(event) {
		if($.tooltip.blocked)
			return;
		// clear timeout if possible
		if(tID)
			clearTimeout(tID);
		// no more current element
		current = null;
		
		var tsettings = settings(this);
		function complete() {
			helper.parent.removeClass( tsettings.extraClass ).hide().css("opacity", "");
		}
		if ((!IE || !$.fn.bgiframe) && tsettings.fade) {
			if (helper.parent.is(':animated'))
				helper.parent.stop().fadeTo(tsettings.fade, 0, complete);
			else
				helper.parent.stop().fadeOut(tsettings.fade, complete);
		} else
			complete();
		
		if( settings(this).fixPNG )
			helper.parent.unfixPNG();
	}
	
})(jQuery);
//DropdownList.js
$(document).ready(function() {$('#wedding-navigation li').mouseover(function() { $(this).addClass("over"); }).mouseout(function() { $(this).removeClass("over"); });});
//Adjust Height
//A shared file that allows client side updates of the heigh across broswers.

var offSetHeight = 10;
function FixHeight(one,two) 
{ 
    if($('#'+one))
    {
        var lh= $('#' +one).height();
        var rh = $('#' +two).height();
        var nh = Math.max(lh, rh);  
        $('#'+one).height(nh + offSetHeight);
        $('#'+two).height(nh + offSetHeight);
    }
}

function AdjustHeight()
{   
    //some of the functions from FashionListing.js and FashionNavigation.js
    //are accesing this function  so not removed 
}

function IsIE6Browser()
{
    return ($.browser.msie && $.browser.version.substr(0,1)<7);
}

function ReAssignHieght(id,orginalHeight,value)
{   
     //some of the functions from FashionListing.js and FashionNavigation.js
    //are accesing this function so not removed 
}
