(function($){var m={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},s={array:function(x){var a=["["],b,f,i,l=x.length,v;for(i=0;i<l;i+=1){v=x[i];f=s[typeof v];if(f){v=f(v);if(typeof v=="string"){if(b){a[a.length]=","}a[a.length]=v;b=true}}}a[a.length]="]";return a.join("")},"boolean":function(x){return String(x)},"null":function(x){return"null"},number:function(x){return isFinite(x)?String(x):"null"},object:function(x){if(x){if(x instanceof Array){return s.array(x)}var a=["{"],b,f,i,v;for(i in x){v=x[i];f=s[typeof v];if(f){v=f(v);if(typeof v=="string"){if(b){a[a.length]=","}a.push(s.string(i),":",v);b=true}}}a[a.length]="}";return a.join("")}return"null"},string:function(x){if(/["\\\x00-\x1f]/.test(x)){x=x.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b];if(c){return c}c=b.charCodeAt();return"\\u00"+Math.floor(c/16).toString(16)+(c%16).toString(16)})}return'"'+x+'"'}};$.toJSON=function(v){var f=isNaN(v)?s[typeof v]:s.number;if(f){return f(v)}};$.parseJSON=function(v,safe){if(safe===undefined){safe=$.parseJSON.safe}if(safe&&!/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t])+?$/.test(v)){return undefined}return eval("("+v+")")};$.parseJSON.safe=false})(jQuery);

$(function(){var id=$("body").attr("id");var parts=id.split("-");var controller=parts.shift();var action=parts.pop();var product_name=Brasigo.PRODUCT_NAME;var aliases={create:"new",update:"edit"};logger("info","Product name:",product_name);logger("info","Controller name:",controller);logger("info","Action name:",action);action=aliases[action]||action;try{Brasigo.before()}catch(e){logger("debug","Brasigo#before",e.message)}try{Brasigo[product_name]["before"].call()}catch(e){logger("debug","product#before",e.message)}try{Brasigo[product_name][controller]["before"].call()}catch(e){logger("debug",controller+"#before",e.message)}try{Brasigo[product_name][controller][action].call()}catch(e){logger("debug",controller+"#"+action,e.message)}});function logger(){try{if(!window.DEVELOPMENT||!window.console){return}var args=arguments;var type=args[0];console[type].call(window,args[1],args[2])}catch(e){null}}var Brasigo=Brasigo||{};Brasigo.before=function(){$(document).ajaxSend(function(event,request,settings){if(typeof(AUTH_TOKEN)=="undefined"||settings.type.toString().toUpperCase()=="GET"){return}settings.data=settings.data||"";settings.data+=(settings.data?"&":"")+"authenticity_token="+encodeURIComponent(AUTH_TOKEN)});$("#javascript-warning").css("display","none");Brasigo.utils.report();Brasigo.utils.changeLoginForm();Brasigo.utils.setBrowserName();Brasigo.utils.renderRoundedBoxes();Brasigo.utils.renderRoundedTabs();Brasigo.utils.renderRoundedButtons();Brasigo.utils.searchTabsNavigation();Brasigo.utils.sidebarTabsNavigation();$(".query_autogrow","#container_main").autogrow({minHeight:36,lineHeight:36});$.toggleFocus("#main_search_form textarea");$.toggleFocus("#sub_search_form textarea")};Brasigo.utils={searchTabsNavigation:function(){$("#main_search_form li").mouseover(function(){if(!$(this).hasClass("active")){$(this).addClass("over")}}).mouseout(function(){$(this).removeClass("over")}).click(function(){target_form=$(this).attr("id").replace("_label","");Brasigo.utils.activateSearchTab(target_form)});$("#main_search_form textarea").add("#sub_search_form textarea").keyup(function(e){check_submit(e,this)}).keypress(function(e){check_submit(e,this)}).keydown(function(e){check_submit(e,this)});var submit=false;var check_submit=function(e,context){if(e.keyCode==13){Brasigo.utils.stopPropagation(e);if(!submit){$(context).parents("form").submit();submit=true}}}},activateSearchTab:function(tab){$("#main_search_form li").removeClass("active over");$("#"+tab+"_label").addClass("active");$("#main_search_form p.textarea").add("#main_search_form p.submit").addClass("hidden");$("#"+tab+"_form fieldset").children("p").removeClass("hidden")},sidebarTabsNavigation:function(){$("#container_side .sidebar_tabbed_boxes h3").data("status","disabled").click(function(){if($(this).data("status")=="disabled"){$(this).parents(".sidebar_tabbed_boxes").children().children("h3").data("status","disabled").removeClass("simple_border_tab").addClass("double_border_inactive_tab").siblings(".rounded_box").addClass("hidden");$(this).data("status","enabled").removeClass("double_border_inactive_tab").addClass("simple_border_tab").siblings(".rounded_box").removeClass("hidden")}});$("#container_side .sidebar_tabbed_boxes h3:first").data("status","enabled")},buildRoundedTab:function(target){$(target).wrapInner("<span class='rounded_tab_inner'><span class='tab_content'></span></span>").prepend('<span class="bd_l">						      <span class="bd_lt"> </span>                  <span class="bd_lc"><span></span></span>                  <span class="bd_lb"> </span>                </span>').append('<span class="bd_r">                  <span class="bd_rt"> </span>                  <span class="bd_rc"><span></span></span>                  <span class="bd_rb"> </span>               </span>')},removeRoundedTab:function(target){tab=$(target);content=tab.find(".tab_content").html();content_classes=tab.attr("class");tab.removeClass(content_classes).html(content)},renderRoundedTabs:function(){$(".rounded_tab",$("#brasigo_container")).each(function(){Brasigo.utils.buildRoundedTab(this)})},renderRoundedButtons:function(){$("#brasigo_container").find(".rounded_button").each(function(){var element_class="";var element_classes="";element_classes=$(this).attr("class").split(" ");$(element_classes).each(function(){if(this.match("rbt_")){element_class+=this+" "}});$(this).removeClass(element_class).wrap("<span class='rounded_button_wrapper "+element_class+"'></span>").parent().prepend("<span class='bd_l'><span class='bd_lt'></span><span class='bd_lc'></span><span class='bd_lb'></span></span>").append("<span class='bd_r'><span class='bd_rt'></span><span class='bd_rc'></span><span class='bd_rb'></span></span>")})},renderRoundedBoxes:function(){$("div.rounded_box",$("#brasigo_container")).add("#profile_nav").add("#index_form").wrapInner("<div class='rounded_box_inner clearfix'><div class='box_content clearfix'></div></div>").prepend('<span class="bd_t">						<span class="bd_tl"> </span>						<span class="bd_tc"><span></span></span>						<span class="bd_tr"> </span>					</span>').append('<span class="bd_b">						<span class="bd_bl"> </span>						<span class="bd_bc"><span></span></span>						<span class="bd_br"> </span>					</span>')},setBrowserName:function(){var css_name=null;var ua=navigator.userAgent;var matches=null;if(ua.match(/firefox/i)){css_name="firefox"}else{if(ua.match(/safari/i)){css_name="safari"}else{if(matches=ua.match(/msie (\d+)/i)){css_name="ie ie"+matches[1]}else{if(ua.match(/opera/i)){css_name="opera"}else{if(ua.match(/mozilla/)){css_name="mozilla"}}}}}if(ua.match(/chrome/i)){css_name="chrome"}if(css_name){$("body").addClass(css_name)}},loginSubmit:function(){$("#brasigoid_form").submit(function(e){Brasigo.utils.stopPropagation(e);$.ajax({type:"post",data:$(this).formSerialize(),url:this.action,error:function(data){$("#password").val("");identifier=$("#identifier");if(identifier.val()==""){identifier.focus()}else{$("#password").focus()}Brasigo.utils.message("warning",data.responseText)},success:function(data){location.href=data}});return false})},changeLoginForm:function(){var hash=location.hash.replace(/#/,"");if(hash=="openid"){$("#openid_form").removeClass("hidden");$("#brasigoid_form").addClass("hidden")}$("a#change_brasigoid").click(function(e){Brasigo.utils.stopPropagation(e);$("#openid_form").addClass("hidden");$("#brasigoid_form").removeClass("hidden")});$("a#change_openid").click(function(e){Brasigo.utils.stopPropagation(e);$("#openid_form").removeClass("hidden");$("#brasigoid_form").addClass("hidden")})},login:function(){if($("#p_user_bbs").hasClass("hidden")){$("#p_user_bbs").removeClass("hidden");$("#message").replaceWith("")}$("#identifier").val("");$("#password").val("");Brasigo.utils.open_modal_box("light-login");$("#identifier").focus()},open_modal_box:function(id){var ua=navigator.userAgent;var matches;var box=$("#"+id);$("embed").add("object").css("visibility","hidden");if($(box).parent("body").length==0){$("#"+id).remove();$("body").append($(box))}$(box).css("position","absolute").css("z-index",1000).css("display","block");$("body").append("<div id='modal-overlay'></div>");$("#modal-overlay").css("position","absolute").css("display","block").css("top",0);var set_offset=function(){var x_pos=($(window).width()/2)-($(box).width()/2);var y_pos=(($(window).height()/2)-($(box).height()/2))+$(window).scrollTop();if(ua.match(/opera/i)){y_pos=y_pos-$(window).scrollTop()}$(box).css("left",x_pos).css("top",y_pos);$("#modal-overlay").css("width",$(window).width()).css("height",$(document).height())};set_offset();var resizeTimer;$(window).bind("scroll",function(){clearTimeout(resizeTimer);resizeTimer=setTimeout(set_offset,100)}).bind("resize",function(){clearTimeout(resizeTimer);resizeTimer=setTimeout(set_offset,100)});$(box).find("a.light_close").click(function(e){Brasigo.utils.stopPropagation(e);$("embed").add("object").css("visibility","visible");Brasigo.utils.close_modal_box($(box).attr("id"))})},close_modal_box:function(id){var box=$("#"+id);$(box).css("display","none");$("#modal-overlay").remove()},checkAuth:function(continueTo){$.ajax({type:"post",dataType:"json",url:"/session/continue",data:{value:$.toJSON(continueTo)}});if(!LOGGED_IN){Brasigo.utils.login()}return LOGGED_IN},requireAuth:function(data){try{if(data.require_login==true){Brasigo.utils.message("warning",data);return true}}catch(e){logger("debug",e.message)}return false},message:function(name,message){var msgs="";if(typeof message=="object"){if(message.object){var errors=message.object.errors;if(errors){message=[];$(errors).each(function(){message.push("<li>");message.push(this[1]);message.push("</li>")});msgs='							<div class="'+name+' list">							<p>Existem problemas com um ou mais campos:</p>							<ul>'+message.join("")+"							</ul></div>"}}if(message.flash_messages){for(var name in message.flash_messages){msgs='<div class="'+name+'"><p>'+message.flash_messages[name]+"</p></div>"}}}else{msgs='<div class="'+name+'">'+message+"</div>"}var timeout;var display_message=function(){$("#system_message").html(msgs);$("#system_alert").hide().slideDown("normal")};var close_system_alert=function(){if($("#system_alert").is("/timeoutid/")){timeoutid=parseInt($("#system_alert").attr("class").replace("timeoutid",""),10);$("#system_alert").removeClass("timeoutid"+timeoutid);clearTimeout(timeoutid)}timeout=setTimeout(function(){$("#system_alert").slideUp("normal")},8000);$("#system_alert").addClass("timeoutid"+timeout)};if($("#system_message").length>0){$("#system_alert").slideUp("normal",display_message)}else{display_message()}$("#system_alert").mouseover(function(){clearTimeout(timeout)}).mouseout(function(){close_system_alert()});$("#system_alert_close").click(function(e){Brasigo.utils.stopPropagation(e);$("#system_alert").slideUp("normal")});close_system_alert()},stopPropagation:function(e){if(e){e.stopPropagation();e.preventDefault()}},report:function(){$("form.complaint select").change(function(){var parent=$(this).parents("form:first");if(parseInt(this.value)>0){$(parent).find(":text:last").addClass("hidden")}else{$(parent).find(":text:last").removeClass("hidden").val("").focus()}});$("form.complaint :submit").click(function(e){var parent=$(this).parents("form:first");var select=$("select:first",this.form)[0];var text=$(parent).find(":text:last");if(select.selectedIndex==select.options.length-1){if($(text).val()==""){e.stopPropagation();e.preventDefault();alert("Informe qual é o motivo da denúncia");return false}}return true});$("a.report_link").click(function(e){Brasigo.utils.stopPropagation(e);var report_window=$(this).parent(".report");if($(report_window).is(".report_active")){$(report_window).removeClass("report_active").addClass("report_inactive")}else{$("div.report").removeClass("report_active").addClass("report_inactive");$("div.vote_window").removeClass("vote_menu_button_active").addClass("vote_menu_button_inactive");$(report_window).removeClass("report_inactive").addClass("report_active");$(".report_container").css("z-index","999");$(this).parents(".report_container").css("z-index","1000")}});$("div.report .header a").click(function(e){Brasigo.utils.stopPropagation(e);$(this).parents("div.report:first").removeClass("report_active").addClass("report_inactive")})},ajax_loader:function(selector,msg){msg=msg||"<p>Carregando...</p>";$(selector).html('<span class="loader">'+msg+"</span>")},fixLastItem:function(parent,children){$(parent).each(function(){$(this).contents().filter(children+":last").addClass("last")})},fixListHover:function(listId){$("#"+listId+" li").mouseover(function(){$(this).addClass("over")}).mouseout(function(){$(this).removeClass("over")})},socialFeedChange:function(){$("#social_feed #feed_sorting li a").click(function(e){if($(this).parents("li:first").hasClass("active")){return false}var scope=$(this).attr("id");if(scope=="user"){$("#social_feed h4").html("Acompanhe as suas atividades.")}else{if(scope=="friends"){$("#social_feed h4").html("Veja o que seus amigos estão fazendo.")}else{$("#social_feed h4").html("Veja o que seus amigos estão fazendo.")}}$("#social_feed #feed_sorting li").removeClass("active");$(this).parents("li:first").addClass("active");$("#social_feed").children("div").addClass("hidden");$("#social_feed #"+scope+"_social_feed").removeClass("hidden");return false})},socialFeedByUser:function(){$("ul#social_feed_list_by_user li:gt(9)").hide();$("#user_social_feed p.view_more span").click(function(){if($(this).is(".opened")){$(this).removeClass("opened").html("ver mais atualizações");$("ul#social_feed_list_by_user li:gt(9)").fadeOut("normal")}else{$(this).addClass("opened").html("fechar");$("ul#social_feed_list_by_user li").fadeIn("normal")}})},socialFeedByFriends:function(){$("#friends-social-feed p.view-more a").click(function(e){Brasigo.utils.stopPropagation(e);if($(this).is(".opened")){$(this).removeClass("opened").html("veja mais atividades");$("ul#social_feed_list_by_friends li:gt(9)").addClass("hidden")}else{$(this).addClass("opened").html("fechar");$("ul#social_feed_list_by_friends li:gt(9)").removeClass("hidden")}})},navOptionsMenu:function(){$("select.order-menu").change(function(){var link=$(this).find("option:selected").attr("value");self.location=link})}};Array.prototype.has=function(search){for(var i in this){if(this[i]==search){return true}}return false};(function($){$.toggleFocus=function(selector){$(selector).each(function(){var title=$(this).attr("title");if(!title){return false}$(this).attr("tf",title).removeAttr("title");if(!this.value){$(this).val(title)}$(this).focus(function(){if(this.value==$(this).attr("tf")){this.value=""}}).blur(function(){if(this.value==""){this.value=$(this).attr("tf")}})})};$.message=function(text){$.facebox(text)};$.setFocus=function(selector){$(selector).each(function(){this.focus()})};$.fn.check=function(mode){mode=mode==undefined?"on":mode;return this.each(function(){if(this.type=="checkbox"){jQuery.fn._setCheckboxState(this,mode)}})};$.fn._setCheckboxState=function(checkbox,mode){switch(mode){case"toggle":checkbox.checked=!checkbox.checked;break;case"off":case false:checkbox.checked=false;break;case"on":case true:checkbox.checked=true;break}};$.setTextareaMaxlength=function(){$("textarea[class*=max:]").add("input[class*=max:]").each(function(){var textarea=this;var matches=this.className.toString().match(/max:([0-9]+)/);var maxlength=parseInt(matches[1]);if($(this).parent(":first").is(".fields_with_errors")){var parentContents=$(this).parent(":first").parent(":first")}else{var parentContents=$(this).parent(":first")}var text=this.value;if(!text.length){$(parentContents).find("span.char-limit").html(maxlength)}else{if(text.length>maxlength){textarea.value=text.substr(0,maxlength);$(parentContents).find("span.char-limit").html("0")}else{$(parentContents).find("span.char-limit").html(maxlength-text.length)}}var checker=function(){var text=textarea.value;if(!text.length){$(parentContents).find("span.char-limit").html(maxlength)}else{if(text.length==maxlength){$(parentContents).find("span.char-limit").html("0")}else{if(text.length>maxlength){textarea.value=text.substr(0,maxlength);$(parentContents).find("span.char-limit").html("0")}else{$(parentContents).find("span.char-limit").html(parseInt(maxlength-text.length))}}}};var checkerTimer;var checkerReset=function(){clearTimeout(checkerTimer);checkerTimer=setTimeout(checker,50)};$(this).keypress(checkerReset).keydown(checkerReset).keyup(checkerReset)})}})(jQuery);

Date.dayNames=["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"];Date.abbrDayNames=["Dom","Seg","Ter","Quar","Qui","Sex","Sáb"];Date.monthNames=["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"];Date.abbrMonthNames=["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"];Date.firstDayOfWeek=0;Date.format="dd/mm/yyyy";Date.fullYearStart="20";(function(){function add(name,method){if(!Date.prototype[name]){Date.prototype[name]=method}}add("isLeapYear",function(){var y=this.getFullYear();return(y%4==0&&y%100!=0)||y%400==0});add("isWeekend",function(){return this.getDay()==0||this.getDay()==6});add("isWeekDay",function(){return !this.isWeekend()});add("getDaysInMonth",function(){return[31,(this.isLeapYear()?29:28),31,30,31,30,31,31,30,31,30,31][this.getMonth()]});add("getDayName",function(abbreviated){return abbreviated?Date.abbrDayNames[this.getDay()]:Date.dayNames[this.getDay()]});add("getMonthName",function(abbreviated){return abbreviated?Date.abbrMonthNames[this.getMonth()]:Date.monthNames[this.getMonth()]});add("getDayOfYear",function(){var tmpdtm=new Date("1/1/"+this.getFullYear());return Math.floor((this.getTime()-tmpdtm.getTime())/86400000)});add("getWeekOfYear",function(){return Math.ceil(this.getDayOfYear()/7)});add("setDayOfYear",function(day){this.setMonth(0);this.setDate(day);return this});add("addYears",function(num){this.setFullYear(this.getFullYear()+num);return this});add("addMonths",function(num){var tmpdtm=this.getDate();this.setMonth(this.getMonth()+num);if(tmpdtm>this.getDate()){this.addDays(-this.getDate())}return this});add("addDays",function(num){this.setDate(this.getDate()+num);return this});add("addHours",function(num){this.setHours(this.getHours()+num);return this});add("addMinutes",function(num){this.setMinutes(this.getMinutes()+num);return this});add("addSeconds",function(num){this.setSeconds(this.getSeconds()+num);return this});add("zeroTime",function(){this.setMilliseconds(0);this.setSeconds(0);this.setMinutes(0);this.setHours(0);return this});add("asString",function(){var r=Date.format;return r.split("yyyy").join(this.getFullYear()).split("yy").join((this.getFullYear()+"").substring(2)).split("mmm").join(this.getMonthName(true)).split("mm").join(_zeroPad(this.getMonth()+1)).split("dd").join(_zeroPad(this.getDate()))});Date.fromString=function(s){var f=Date.format;var d=new Date("01/01/1977");var iY=f.indexOf("yyyy");if(iY>-1){d.setFullYear(Number(s.substr(iY,4)))}else{d.setFullYear(Number(Date.fullYearStart+s.substr(f.indexOf("yy"),2)))}var iM=f.indexOf("mmm");if(iM>-1){var mStr=s.substr(iM,3);for(var i=0;i<Date.abbrMonthNames.length;i++){if(Date.abbrMonthNames[i]==mStr){break}}d.setMonth(i)}else{d.setMonth(Number(s.substr(f.indexOf("mm"),2))-1)}d.setDate(Number(s.substr(f.indexOf("dd"),2)));if(isNaN(d.getTime())){return false}return d};var _zeroPad=function(num){var s="0"+num;return s.substring(s.length-2)}})();