(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.js
//
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 = $(".autosearch").val();
    //SetSearchValues(searchId, searchText);
    $(".autosearch-button").click();
}


function findValue(li) {
    var sValue;
    if (li === null)
    //	{ return alert("No match!"); }
    { return true; }

    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()
{
    $(".autosearch").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';       
     $(".autosearch").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) {
		 $(".autosearch").val(item[2]);
		 location.href = item[0];
	});
	
	 $(".autosearch").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();

});//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: "text",
dataFilter: function (data, type) {
    return $.parseJSON(data);
      },
      error: function(result) {
          if (this.console && typeof console.log != "undefined")
              console.log("Error in server:" + result.status + ' ' + result.statusText);
      }};

 	


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("<option value=''>Please Select...</option>" + result.d);
    $('#' + IDMainContent() + 'ucBrowseVenues_ddlCounty').find(':selected').val(0);
}

function PopulateCounties() {
    var q = $HitchedAjaxOptions;
    q.url = asmxCommon + "GetCounties";
    q.data = "{CountryName:'" + $('#' + IDMainContent() + 'ucBrowseVenues_ddlCountry').find(':selected').text() + "'}";                        
    q.success = PopulateCountriesCallBack;  
    $.ajax(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
    });

});


(function ($) {
    var has_VML, has_canvas, create_canvas_for, add_shape_to, clear_canvas, shape_from_area,
		canvas_style, hex_to_decimal, css3color, is_image_loaded, options_from_area;

    has_VML = document.namespaces;
    has_canvas = !!document.createElement('canvas').getContext;

    if (!(has_canvas || has_VML)) {
        $.fn.maphilight = function () { return this; };
        return;
    }

    if (has_canvas) {
        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;
        };
        var draw_shape = function (context, shape, coords, x_shift, y_shift) {
            x_shift = x_shift || 0;
            y_shift = y_shift || 0;

            context.beginPath();
            if (shape == 'rect') {
                // x, y, width, height
                context.rect(coords[0] + x_shift, coords[1] + y_shift, coords[2] - coords[0], coords[3] - coords[1]);
            } else if (shape == 'poly') {
                context.moveTo(coords[0] + x_shift, coords[1] + y_shift);
                for (i = 2; i < coords.length; i += 2) {
                    context.lineTo(coords[i] + x_shift, coords[i + 1] + y_shift);
                }
            } else if (shape == 'circ') {
                // x, y, radius, startAngle, endAngle, anticlockwise
                context.arc(coords[0] + x_shift, coords[1] + y_shift, coords[2], 0, Math.PI * 2, false);
            }
            context.closePath();
        }
        add_shape_to = function (canvas, shape, coords, options, name) {
            var i, context = canvas.getContext('2d');

            // Because I don't want to worry about setting things back to a base state

            // Shadow has to happen first, since it's on the bottom, and it does some clip /
            // fill operations which would interfere with what comes next.
            if (options.shadow) {
                context.save();
                if (options.shadowPosition == "inside") {
                    // Cause the following stroke to only apply to the inside of the path
                    draw_shape(context, shape, coords);
                    context.clip();
                }

                // Redraw the shape shifted off the canvas massively so we can cast a shadow
                // onto the canvas without having to worry about the stroke or fill (which
                // cannot have 0 opacity or width, since they're what cast the shadow).
                var x_shift = canvas.width * 100;
                var y_shift = canvas.height * 100;
                draw_shape(context, shape, coords, x_shift, y_shift);

                context.shadowOffsetX = options.shadowX - x_shift;
                context.shadowOffsetY = options.shadowY - y_shift;
                context.shadowBlur = options.shadowRadius;
                context.shadowColor = css3color(options.shadowColor, options.shadowOpacity);

                // Now, work out where to cast the shadow from! It looks better if it's cast
                // from a fill when it's an outside shadow or a stroke when it's an interior
                // shadow. Allow the user to override this if they need to.
                var shadowFrom = options.shadowFrom;
                if (!shadowFrom) {
                    if (options.shadowPosition == 'outside') {
                        shadowFrom = 'fill';
                    } else {
                        shadowFrom = 'stroke';
                    }
                }
                if (shadowFrom == 'stroke') {
                    context.strokeStyle = "rgba(0,0,0,1)";
                    context.stroke();
                } else if (shadowFrom == 'fill') {
                    context.fillStyle = "rgba(0,0,0,1)";
                    context.fill();
                }
                context.restore();

                // and now we clean up
                if (options.shadowPosition == "outside") {
                    context.save();
                    // Clear out the center
                    draw_shape(context, shape, coords);
                    context.globalCompositeOperation = "destination-out";
                    context.fillStyle = "rgba(0,0,0,1);";
                    context.fill();
                    context.restore();
                }
            }

            context.save();

            draw_shape(context, shape, coords);

            // fill has to come after shadow, otherwise the shadow will be drawn over the fill,
            // which mostly looks weird when the shadow has a high opacity
            if (options.fill) {
                context.fillStyle = css3color(options.fillColor, options.fillOpacity);
                context.fill();
            }
            // Likewise, stroke has to come at the very end, or it'll wind up under bits of the
            // shadow or the shadow-background if it's present.
            if (options.stroke) {
                context.strokeStyle = css3color(options.strokeColor, options.strokeOpacity);
                context.lineWidth = options.strokeWidth;
                context.stroke();
            }

            context.restore();

            if (options.fade) {
                $(canvas).css('opacity', 0).animate({ opacity: 1 }, 100);
            }
        };
        clear_canvas = function (canvas) {
            canvas.getContext('2d').clearRect(0, 0, canvas.width, canvas.height);
        };
    } else {   // ie executes this code
        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, name) {
            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 name="' + name + '" 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 name="' + name + '" 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 name="' + name + '" 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).find('[name=highlighted]').remove();
        };
    }

    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];
    };

    options_from_area = function (area, options) {
        var $area = $(area);
        return $.extend({}, options, $.metadata ? $area.metadata() : false, $area.data('maphilight'));
    };

    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
    };

    var ie_hax_done = false;
    $.fn.maphilight = function (opts) {
        opts = $.extend({}, $.fn.maphilight.defaults, opts);

        if (!has_canvas && $.browser.msie && !ie_hax_done) {
            document.namespaces.add("v", "urn:schemas-microsoft-com:vml");
            var style = document.createStyleSheet();
            var shapes = ['shape', 'rect', 'oval', 'circ', 'fill', 'stroke', 'imagedata', 'group', 'textbox'];
            $.each(shapes,
				function () {
				    style.addRule('v\\:' + this, "behavior: url(#default#VML); antialias:true");
				}
			);
            ie_hax_done = true;
        }

        return this.each(function () {
            var img, wrap, options, map, canvas, canvas_always, mouseover, highlighted_shape, usemap;
            img = $(this);

            if (!is_image_loaded(this)) {
                // If the image isn't fully loaded, this won't work right.  Try again later.
                return window.setTimeout(function () {
                    img.maphilight(opts);
                }, 200);
            }

            options = $.extend({}, opts, $.metadata ? img.metadata() : false, img.data('maphilight'));

            // jQuery bug with Opera, results in full-url#usemap being returned from jQuery's attr.
            // So use raw getAttribute instead.
            usemap = img.get(0).getAttribute('usemap');

            map = $('map[name="' + usemap.substr(1) + '"]');

            if (!(img.is('img') && usemap && map.size() > 0)) {
                return;
            }

            if (img.hasClass('maphilighted')) {
                // We're redrawing an old map, probably to pick up changes to the options.
                // Just clear out all the old stuff.
                var wrapper = img.parent();
                img.insertBefore(wrapper);
                wrapper.remove();
                $(map).unbind('.maphilight').find('area[coords]').unbind('.maphilight');
            }

            wrap = $('<div></div>').css({
                display: 'block',
                background: 'url("' + this.src + '")',
                position: 'relative',
                padding: 0,
                width: this.width,
                height: this.height
            });
            if (options.wrapClass) {
                if (options.wrapClass === true) {
                    wrap.addClass($(this).attr('class'));
                } else {
                    wrap.addClass(options.wrapClass);
                }
            }
            img.before(wrap).css('opacity', 0).css(canvas_style).remove();
            if ($.browser.msie) { img.css('filter', 'Alpha(opacity=0)'); }
            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 = options_from_area(this, options);
                if (
					!area_options.neverOn
					&&
					!area_options.alwaysOn
				) {
                    shape = shape_from_area(this);
                    add_shape_to(canvas, shape[0], shape[1], area_options, "highlighted");
                    if (area_options.groupBy) {
                        var areas;
                        // two ways groupBy might work; attribute and selector
                        if (/^[a-zA-Z][-a-zA-Z]+$/.test(area_options.groupBy)) {
                            areas = map.find('area[' + area_options.groupBy + '="' + $(this).attr(area_options.groupBy) + '"]')
                        } else {
                            areas = map.find(area_options.groupBy);
                        }
                        var first = this;
                        areas.each(function () {
                            if (this != first) {
                                var subarea_options = options_from_area(this, options);
                                if (!subarea_options.neverOn && !subarea_options.alwaysOn) {
                                    var shape = shape_from_area(this);
                                    add_shape_to(canvas, shape[0], shape[1], subarea_options, "highlighted");
                                }
                            }
                        });
                    }
                    // workaround for IE7, IE8 not rendering the final rectangle in a group
                    if (!has_canvas) {
                        $(canvas).append('<v:rect></v:rect>');
                    }
                }
            }

            $(map).bind('alwaysOn.maphilight', function () {
                // Check for areas with alwaysOn set. These are added to a *second* canvas,
                // which will get around flickering during fading.
                if (canvas_always) {
                    clear_canvas(canvas_always)
                }
                if (!has_canvas) {
                    $(canvas).empty();
                }
                $(map).find('area[coords]').each(function () {
                    var shape, area_options;
                    area_options = options_from_area(this, options);
                    if (area_options.alwaysOn) {
                        if (!canvas_always && has_canvas) {
                            canvas_always = create_canvas_for(img.get());
                            $(canvas_always).css(canvas_style);
                            canvas_always.width = img.width();
                            canvas_always.height = img.height();
                            img.before(canvas_always);
                        }
                        area_options.fade = area_options.alwaysOnFade; // alwaysOn shouldn't fade in initially
                        shape = shape_from_area(this);
                        if (has_canvas) {
                            add_shape_to(canvas_always, shape[0], shape[1], area_options, "");
                        } else {
                            add_shape_to(canvas, shape[0], shape[1], area_options, "");
                        }
                    }
                });
            });

            $(map).trigger('alwaysOn.maphilight').find('area[coords]')
				.bind('mouseover.maphilight', mouseover)
				.bind('mouseout.maphilight', 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: '597830',
        fillOpacity: 0.7,
        stroke: false,
        strokeColor: 'ff0000',
        strokeOpacity: 1,
        strokeWidth: 1,
        fade: true,
        alwaysOn: false,
        neverOn: false,
        groupBy: true,
        wrapClass: true,
        // plenty of shadow:
        shadow: false,
        shadowX: 0,
        shadowY: 0,
        shadowRadius: 6,
        shadowColor: '000000',
        shadowOpacity: 0.8,
        shadowPosition: 'outside',
        shadowFrom: false
    };
})(jQuery);



/*(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,
		groupBy: true,
		alwaysOn: false
	};
})(jQuery);
*//*
* 	Easy Tooltip 1.0 - jQuery plugin
*	written by Alen Grakalic	
*	http://cssglobe.com/post/4380/easy-tooltip--jquery-plugin
*
*	Copyright (c) 2009 Alen Grakalic (http://cssglobe.com)
*	Dual licensed under the MIT (MIT-LICENSE.txt)
*	and GPL (GPL-LICENSE.txt) licenses.
*
*	Built for jQuery library
*	http://jquery.com
*
*/

(function ($) {

    $.fn.tooltip = function (options) {

        // default configuration properties
        var defaults = {
            xOffset: 10,
            yOffset: 25,
            tooltipId: "tooltip",
            clickRemove: false,
            content: "",
            useElement: ""
        };

        var options = $.extend(defaults, options);
        var content;

        this.each(function () {
            var title = $(this).attr("title");
            $(this).hover(function (e) {
                content = (options.content != "") ? options.content : title;
                content = (options.useElement != "") ? $("#" + options.useElement).html() : content;
                $(this).attr("title", "");
                if (content != "" && content != undefined) {
                    $("body").append("<div id='" + options.tooltipId + "'><span>" + content + "</span></div>");
                    $("#" + options.tooltipId)
						.css("position", "absolute")
						.css("top", (e.pageY - options.yOffset) + "px")
						.css("left", (e.pageX + options.xOffset) + "px")
						.css("display", "none")
						.fadeIn("fast")
                }
            },
			function () {
			    $("#" + options.tooltipId).remove();
			    $(this).attr("title", title);
			});
            $(this).mousemove(function (e) {
                $("#" + options.tooltipId)
					.css("top", (e.pageY - options.yOffset) + "px")
					.css("left", (e.pageX + options.xOffset) + "px")
            });
            if (options.clickRemove) {
                $(this).mousedown(function (e) {
                    $("#" + options.tooltipId).remove();
                    $(this).attr("title", title);
                });
            }
        });

    };

})(jQuery);//DropdownList.js
$(document).ready(function () {
    $('#wedding-navigation li').hover(function () {
        $(this).addClass('over');
    }, function () {
        $(this).removeClass('over');
    });
});//DropdownList.js
$(document).ready(function () {
    $('#wedding-navigation li').hover(function () {
        $(this).addClass('over');
    }, function () {
        $(this).removeClass('over');
    });
});//googlecse.js
$(function() {  
var q = $("#q");
var qSubmit = $("#qSubmit");
q.keypress(function (e) {  
	if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {  
            qSubmit.trigger("click");
		return false;  
	} else {
		return true;  
	}
});
    var qBlur = function () {
	if (q.val() == '') {
		q.addClass("search-watermark");
        }
};
    q.bind("focus", function () {
	q.removeClass("search-watermark");
});
    q.bind("blur", qBlur);
    qSubmit.bind("click", function (e) {
        location.href = "/search/index.aspx?q=" + q.val();
    });
    qBlur();
});// 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(); */
} 
    
  
