(function($){$.fn.watermark=function(css,text){return this.each(function(){var i=$(this),w=1;i.focus(function(){w&&!(w=0)&&i.removeClass(css).data('w',0).val('');}).blur(function(){!i.val()&&(w=1)&&i.addClass(css).data('w',1).val(text);}).closest('form').submit(function(){w&&i.val('');});i.blur();});};$.fn.removeWatermark=function(){return this.each(function(){$(this).data('w')&&$(this).val('');});};})(jQuery);var maskConf={color:'#000',opacity:0.7};var currentForm;var prevPostDate='';var query;$(function(){prepareConventions();fillTwitterList();fixLangBar();fixStickyFooter();makeLinkActive();fixNewWindowLinks();prepareMenu();prepareMapLink();prepareForms();prepareFancybox();prepareSearchBar();});
function fixLangBar(){var lang=$('body').attr('lang');$('.header-bar .language-selection a[lang]').not('a[lang='+lang+']').show();}
function prepareSearchBar(){query=$('#query');query.watermark('watermark',js_searchText);$(window).unload(function(){query.val('');});}
function fixNewWindowLinks(){$('a.nw').attr('target','_blank').removeClass('nw');}
function prepareMenu(){$('.menu-bar ul li a').mouseenter(function(){var li=$(this).parent();_removeMarker();li.append('<div id="marker"></div>');}).mouseleave(function(){_removeMarker();});}
function _removeMarker(){$('#marker').hide().remove();}
function makeLinkActive(){var l=location.href;l=l.split('/');var t=[];for(var i=3;i<l.length;i++){t.push(l[i]);}l=t.join('/').toLowerCase();l=l.split('#')[0];if(l){var a=$('.menu-bar ul li a[href=/'+l+']');a.addClass('current');a.parent().append('<div id="marker-current"></div>');}}
function prepareConventions(){var mapContent=$('.conventions .map-content');mapContent.css({height:'auto',overflow:'auto'});mapContent.find('.map').not('.main').hide();}
function prepareForms(){var r='required';$('.'+r).attr(r,r).removeClass(r);r='email';var p=$('.'+r).parent().detach().attr('type',r).removeClass(r);$.tools.validator.localize("en",{'*':js_fixValue,':email':js_fixEmail,':number':js_fixNumber,':url':js_fixUrl,'[max]':js_fixMaxValue,'[min]':js_fixMinValue,'[required]':js_fixRequiredField});$('.site-form').validator({position:'top center',offset:[-2,0],message:'<div><em/></div>',singleError:true}).bind('onFail',function(event,errs){errs[0].input.focus();}).submit(function(e){currentForm=$(this);if(!e.isDefaultPrevented()){$.post(currentForm.attr('action'),currentForm.serialize(),onFormSuccess);}else{setTimeout(function(){$('.error').fadeOut();},4000);}e.preventDefault();});}
function onFormSuccess(data){currentForm[0].reset();var result=eval(data)[0];alert(result.message);if(result.redirect){location.href='/'+(js_lang?js_lang+'/':'');}}
function prepareFancybox(){$("a.fancybox[rel]").fancybox();$("a.link-fancybox").fancybox({overlayShow:true,titlePosition:'over'});}
function prepareMapLink(){$("a.maplink[rel]").overlay({top:'center',mask:maskConf,closeOnClick:true,onBeforeLoad:function(){var wrap=this.getOverlay().find(".mapWrap");if(!wrap.attr('loaded')){var latlng=new google.maps.LatLng(-19.93863112509689,-43.9335697889328);var mapOptions={zoom:16,center:latlng,mapTypeId:google.maps.MapTypeId.ROADMAP};var map=new google.maps.Map(wrap.get(0),mapOptions);var image=new google.maps.MarkerImage('/img/max-savassi-tooltip.png',new google.maps.Size(210,180),new google.maps.Point(0,0), null,new google.maps.Size(210,180));var marker=new google.maps.Marker({position:latlng,map:map,title:"Max Savassi Apart Service",icon:image});google.maps.event.addListener(marker,'click',function(event){window.open($("a.maplink[rel]").attr('href'),'mapa');});wrap.attr('loaded','1');}}});}
function fixStickyFooter(){var h=$('.footer-holder').height();$('.push').height(h);$('.container').css({marginBottom:(-h)+'px'});}
function fillTwitterList(){$.jTwitter('maxsavassi',1,_fillTwitterList);}
function _fillTwitterList(posts){if(posts && posts.length && posts[0].created_at!=prevPostDate){prevPostDate=posts[0].created_at;var t=$('div.twitter');t.empty().hide();var ul=$('<ul></ul>');t.append(ul);appendTweetTo(ul,posts[0]);t.fadeIn();fixStickyFooter();}fixNewWindowLinks();setTimeout(fillTwitterList,60000);}
function appendTweetTo(container,post){var pParts=post.created_at.split(' ');var tParts=pParts[3].split(':');tParts=tParts[0]+':'+tParts[1];container.append('<li class="post">'+' <div class="text">'+autoLink(post.text)+' </div>'+'</li>');}
function autoLink(text){var s=text.replace(/(href="|<a.*?>)?[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g,function(d,c){return c?d:'<a class="twitterLink nw" href="'+d+'">'+d+'</a>'});s=s.replace(/@\w+/g,function(c){return'<a class="twitterLink nw" href="http://twitter.com/'+c.replace("@","")+'">'+c+"</a>"});return s.replace(/#\w+/g,function(c){return'<a class="twitterLink nw" href="http://twitter.com/#search?q=%23'+c.replace("#","")+'">'+c+"</a>"});}
function submitForm(form){$('#'+form).submit();}
function showConvention(map){$(".conventions .map-content .map").fadeOut('fast');setTimeout(function(){$('.conventions .map-content .'+map).fadeIn();},300);}
