var DBUtils={userTips:[],filteredUserTips:[],articleDetails:[],init:function(){this.setupEvents(),$("body").hasClass("dbBestTipsAndTricks")&&($("#tipsWrap select").replaceDropdown(),$(".cols").equalHeights(),SWFAddress.addEventListener(SWFAddressEvent.CHANGE,DBUtils.addressChange),$('input[type="checkbox"]').hide().after(function(){return $(this).is(":checked")?"<a href='#' class='toggle checked' ref='"+$(this).attr("id")+"'></a>":"<a href='#' class='toggle' ref='"+$(this).attr("id")+"'></a>"})),$("body").hasClass("dbBeautyBuzz")&&(SWFAddress.addEventListener(SWFAddressEvent.CHANGE,DBUtils.articleAddressChange),flyoutAlreadySeen||DBUtils.openFlyout(2500))},setupEvents:function(){$("body").hasClass("dbBestTipsAndTricks")&&($("#tipsWrap select").change(function(){DBUtils.filteredUserTips=DBUtils.filterTopics(this),SWFAddress.setValue($(this).find(":selected").text()+"/page")}),$(".topicPaging a").live("click",function(n){var t,i,r;n.preventDefault(),t=$(this).text(),i=$(this).parents(".pagination").find(".selected a").text(),DBUtils.filteredUserTips=DBUtils.filterTopics($("#tipsWrap select")),r=Math.ceil(DBUtils.filteredUserTips.length/3);if(t==i)return!1;t=="Next"&&i<r&&(t=i*1+1),t=="Prev"&&i>1&&(t=i*1-1),SWFAddress.setValue($("#tipsWrap select").find(":selected").text()+"/page"+t),$("html, body").animate({scrollTop:$("#tipsWrap").offset().top},50)}),$(".toggle").live("click",function(n){n.preventDefault();var t=$("#"+$(this).attr("ref"));t.is(":checked")?t.removeAttr("checked").change():t.attr("checked","true").change()}),$('input[type="checkbox"]').bind("change",function(){$(this).next(".toggle").toggleClass("checked")})),$("body").hasClass("dbBeautyBuzz")&&($(".articlePaging a").live("click",function(n){n.preventDefault();var t=$(this).text(),i=$(this).parents(".pagination").find(".selected a").text(),r=Math.ceil(DBUtils.articleDetails.length/3);if(t==i)return!1;t=="Next"&&i<r&&(t=i*1+1),t=="Prev"&&i>1&&(t=i*1-1),SWFAddress.setValue("page"+t)}),$("#stepPagination a").live("click",function(n){n.preventDefault();var i=$(this).text(),r=4,t=parseInt($("#stepNumber span").text());i=="Next"&&(t++,t>r&&(t=1)),i=="Previous"&&(t--,t<1&&(t=r)),$("#stepsTop span").text(t),$(".step").hide();switch(t){case 1:$("#step1").show();break;case 2:$("#step2").show();break;case 3:$("#step3").show();break;case 4:$("#step4").show()}}),$("a#toggleFlyout").live("click",function(n){n.preventDefault(),$("a#toggleFlyout").hasClass("closed")?DBUtils.openFlyout():DBUtils.closeFlyout()}))},openFlyout:function(n){n!=undefined?($("#flyout").animate({left:"-379px"},400),$("a#toggleFlyout").animate({left:"1px"},400,function(){$(this).removeClass().addClass("opened"),setTimeout("DBUtils.closeFlyout()",n)})):($("#flyout").animate({left:"-379px"},400),$("a#toggleFlyout").animate({left:"1px"},400,function(){$(this).removeClass().addClass("opened")}))},closeFlyout:function(){$("#flyout").animate({left:"-779px"},400),$("a#toggleFlyout").animate({left:"-379px"},400,function(){$(this).removeClass().addClass("closed")}),flyoutAlreadySeen||$.ajax({type:"POST",url:"SetSession.asmx/SetSessionVal",data:"{'flyoutAlreadySeen': 'true'}",contentType:"application/json; charset=utf-8",dataType:"json",success:function(n){var t=eval(n.d);flyoutAlreadySeen=t},error:function(){flyoutAlreadySeen="false"}})},articleAddressChange:function(n){var t="1",i;if(n.value!="/"){i=n.value.split("/");try{t=i[1].replace("page","")}catch(r){}}t==""&&(t="1"),t!="Next"&&t!="Prev"&&t!=""&&DBUtils.articleDetails.length?DBUtils.paginateArticleBox(t):$("#flyoutContainer").remove()},addressChange:function(n){var t="1",r="View All",i;if(n.value!="/"){i=n.value.split("/");try{t=i[2].replace("page","")}catch(u){}try{r=i[1]}catch(u){}}DBUtils.updateDD(r),t==""&&(t="1"),t!="Next"&&t!="Prev"&&t!=""&&DBUtils.userTips.length?(DBUtils.filteredUserTips=DBUtils.filterTopics($("#tipsWrap select"),r),DBUtils.paginateTipsBox(t)):$("#tipsWrap").remove()},updateDD:function(n){$select=$("#tipsWrap select"),$options=$select.children("option"),$options.attr("selected","");var t=0;for(t in $options)if($options.eq(t).text()==n){$options.eq(t).attr("selected","selected");break}$select.next(".ddlist").find("a").eq(0).text($select.next(".ddlist").find("li").eq(t).find("a").text())},filterTopics:function(n,t){var r=[],u,i;typeof t=="undefined"&&(t=$(n).find(":selected").text());for(u in this.userTips)i=this.userTips[u],(i.Category==t||t=="View All")&&r.push(i);return r},buildTipsBox:function(n,t){var i,u,r;$tipBlockWrap=$(n),$tipBlockWrap.find(".tipBlock").remove(),i=[],t>1?DBUtils.filteredUserTips.length<3*t?(u=DBUtils.filteredUserTips.length-3*t-3,i=DBUtils.filteredUserTips.slice(3*t-3)):i=DBUtils.filteredUserTips.slice(3*t-3,3*t):i=DBUtils.filteredUserTips.length<3?DBUtils.filteredUserTips:DBUtils.filteredUserTips.slice(0,3);for(r in i)$tipBlockWrap.append($("<div class='tipBlock'></div>").append($("<p class='tip'></p>").html(i[r].UserTipCopy)).append($("<p class='attribution'></p>").text("- "+i[r].UserName+", "+i[r].UserState)))},paginateTipsBox:function(n){DBUtils.buildTipsBox(".displayedTips",n),DBUtils.buildPagination(n,DBUtils.filteredUserTips.length,3,3,".topicPaging"),$(".cols").equalHeights()},buildArticlesBox:function(n,t){var i,o,e,r,u,f;$articleBlockWrap=$(n),$articleBlockWrap.find(".articles").remove(),i=[],t>1?DBUtils.articleDetails.length<3*t?(o=DBUtils.articleDetails.length-3*t-3,i=DBUtils.articleDetails.slice(3*t-3)):i=DBUtils.articleDetails.slice(3*t-3,3*t):i=DBUtils.articleDetails.length<3?DBUtils.articleDetails:DBUtils.articleDetails.slice(0,3),e=t*3-3;for(r in i)u=(r-DBUtils.articleDetails.length)*-1-e,f=r==i.length-1?" last":"",$articleBlockWrap.append($("<div id='flyoutArticle"+u+"' class='articles"+f+"'></div>").append($("<div class='thumbs' style='background: url(../images/"+i[r].ArticleThumbnail+") 0 0 no-repeat;'></div>")).append($("<div class='content'></div>").append($("<p class='articleCount'></p>").text("Article "+u+" of "+DBUtils.articleDetails.length)).append($("<h3></h3>").html(i[r].ArticleTitle)).append($("<p></p>").html(i[r].ArticleTeaser)).append($("<p></p>").html("<a href='"+i[r].ArticleFilename+"' class='readMoreBtn'>Read More</a>"))))},paginateArticleBox:function(n){DBUtils.buildArticlesBox(".flyoutArticleWrap",n),DBUtils.buildPagination(n,DBUtils.articleDetails.length,3,3,".articlePaging")},buildPagination:function(n,t,i,r,u){var o=Math.ceil(t/i),f="",e=1,h=o,c=r%2!=0?Math.floor(r/2):Math.floor((r-1)/2),y,v,p,s,l,a;for(o>r&&(n*1-c>1&&(e=n*1-c),n<c?h=r:n*1+c>o||(h=e+r-1),y=h-e+1,y<r&&(v=h-n,p=n-e,e=e-(p-v))),s=e;s<=h;s++)f+="<li",n==s&&(f+=' class="selected"'),f+='><a href="#">'+s+"</a></li>";l='<li class="next"><a href="#">Next</a></li>',a='<li class="prev"><a href="#">Prev</a></li>',n==1&&o>1?f=f+l:n==o&&n!=1?f=a+f:n<o&&n>1&&(f=a+f+l),f='<ul class="pagination">'+f+"</ul>",o==1?($(u).hide(),$(u).parents("div").addClass("noPagination")):$(u).show().html(f).parents("div").removeClass("noPagination")}};$(function(){DBUtils.init()}),(function(n){n.fn.replaceDropdown=function(t){var r={init:function(t){var r=this;return r.replaceDropdown.settings=n.extend({},r.replaceDropdown.defaults,t),r.each(function(){var t=n(this),e=this,o=this.id,u=o+r.replaceDropdown.settings.divIDtext,s,h=n("#"+u),f=t.find("option:selected").text();r.replaceDropdown.settings.linkText=r.replaceDropdown.settings.linkText||f,u=i.buildDropdown(t,e,r),i.initEvents(u,r),r.replaceDropdown.settings.removeSelect?t.remove():t.css({position:"absolute",left:"-99999px"})})}},i={initEvents:function(n,t){i.setEventsForDropdown(n,t),i.assignDropdownLinkEvents(t),i.closeDropdown(n)},buildDropdown:function(n,t,i){for(var e=t.id+i.replaceDropdown.settings.divIDtext,o=t.id+i.replaceDropdown.settings.linkIDtext,u=n.find("option"),f='<div id="'+e+'" class="'+i.replaceDropdown.settings.ddClass+'">\n<a href="#" id="'+o+'">'+i.replaceDropdown.settings.linkText+"</a>\n<ul>\n",r=0;r<u.length;r++)f+='<li><a href="'+u.eq(r).text()+'" rel="'+u.eq(r).val()+'">'+u.eq(r).text()+"</a></li>\n";return f+="</ul>\n</div>\n",n.next("button").remove(),n.after(f),e},setEventsForDropdown:function(t,r){var u=n("#"+t),o=u.attr("id"),e,f;u.unbind().click(function(u){u.preventDefault(),u.stopPropagation(),n("."+r.replaceDropdown.settings.ddClass+".open:not('#"+o+"')").each(function(){i.closeDropdown(this.id)});if(n(this).hasClass("open")==!1&&n(this).hasClass("disabled")==!1){var e=n(this).find("a.selected").parent().index(),f=25*e;r.replaceDropdown.settings.flipTop&&i.flipDropdown(this,r),n(this).add(n(this).parents("div")).css({"z-index":"9999"}),$thisUL=n(this).find("ul"),$thisUL.scrollTop(f),$thisUL.css({visibility:"visible"}),$thisUL.slideDown("fast"),n(this).addClass("open"),n("body").click(function(){n("body").unbind(),i.closeDropdown(t)})}else i.closeDropdown(t),n("body").unbind()}),r.replaceDropdown.settings.fixIEValidation&&n.browser.msie&&(e=o.replace(r.replaceDropdown.settings.divIDtext,""),f=n("#"+e),f.change(function(){u.siblings(".ErrorContainer").each(function(){n(this).find("span").each(function(){this!=undefined&&this!=null&&ValidatorValidate(this)})})}))},assignDropdownLinkEvents:function(t){n("."+t.replaceDropdown.settings.ddClass+" ul li a").bind("click",function(i){var u,r;i.preventDefault(),u=n(this).parents("."+t.replaceDropdown.settings.ddClass).attr("id").replace(t.replaceDropdown.settings.divIDtext,""),n("."+t.replaceDropdown.settings.ddClass+" ul").slideUp("fast"),n(this).parents("."+t.replaceDropdown.settings.ddClass).find("#"+u+t.replaceDropdown.settings.linkIDtext).text(n(this).text()),t.replaceDropdown.settings.removeSelect||(r=n("#"+u),r.children("option").attr("selected",""),r.children("option").eq(n(this).parent().index()).attr("selected","selected"),r.change())})},closeDropdown:function(t){var i=n("#"+t);i.hasClass("open")&&(i.add(i.parents("div")).css({"z-index":""}),i.children("ul").css({visibility:"hidden"}),i.removeClass("open"),i.find("a").blur())},flipDropdown:function(t,i){n(t).find("ul").removeClass("showTop");var u=n(t).find("ul").offset().top,e=n(t).parents(i.replaceDropdown.settings.parent).length?n(t).parents(i.replaceDropdown.settings.parent).offset().top:0,r=n(t).find("ul").height()*1+6,f=n(window).height()*1;f-u<r&&u-e>r&&n(t).find("ul").addClass("showTop")}};if(r[t])return r[t].apply(this,Array.prototype.slice.call(arguments,1));if(typeof t!="object"&&t)n.error('Method "'+t+'" does not exist in replaceDropdown plugin!');else return r.init.apply(this,arguments)},n.fn.replaceDropdown.defaults={divIDtext:"LinkList",linkIDtext:"Link",linkText:"",parent:"",flipTop:!1,ddClass:"ddlist",removeSelect:!1,fixIEValidation:!0},n.fn.replaceDropdown.settings={}})(jQuery);
