if(typeof WeddingWire==="undefined"||!WeddingWire){var WeddingWire={};}WeddingWire.headLoc=document.getElementsByTagName("HEAD")[0]||document.body;WeddingWire.staticSite="http://static.weddingwire.com/static/6.0.6";WeddingWire.isMSIE=
/*@cc_on!@*/
false;WeddingWire.getDaySeed=function(){var myDate=new Date();
return myDate.getDate();};WeddingWire.getHourSeed=function(){var myDate=new Date();return myDate.getHours();};WeddingWire.getTrimmedString=function(string,length){if(string===undefined){return"&nbsp;";}if(string.length<=length){return string;}return string.substr(0,string.lastIndexOf(" ",length-3))+"...";
};WeddingWire.createRoundedDiv=function(borderColor,backgroundColor,topBorder,bottomBorder,body,topBackground,bottomBackground){var borderStringBottom="border-left:1px solid "+borderColor+"; border-right:1px solid "+borderColor+";";var borderStringTop=borderStringBottom;if(topBackground||topBackground===undefined){borderStringTop+="background:"+backgroundColor+";";
}if(bottomBackground||bottomBackground===undefined){borderStringBottom+="background:"+backgroundColor+";";}var output="<div>";if(topBorder){output+='<b class="ww-roundedBorderTop"><b class="ww-roundedBorder1" style="background:'+borderColor+';"></b><b class="ww-roundedBorder2" style="'+borderStringTop+'"></b><b class="ww-roundedBorder3" style="'+borderStringTop+'"></b><b class="ww-roundedBorder4" style="'+borderStringTop+'"></b></b>';
}output+="<div style='border:0 solid "+borderColor+"; border-width:0 1px;'>";output+=body;output+="</div>";if(bottomBorder){output+='<b class="ww-roundedBorderBottom"><b class="ww-roundedBorder4" style="'+borderStringBottom+'"></b><b class="ww-roundedBorder3" style="'+borderStringBottom+'"></b><b class="ww-roundedBorder2" style="'+borderStringBottom+'"></b><b class="ww-roundedBorder1" style="background:'+borderColor+';"></b></b>';
}output+="</div>";return output;};WeddingWire.addWidgetCSS=function(){var style=document.createElement("link");style.setAttribute("rel","stylesheet");style.setAttribute("href",WeddingWire.staticSite+"/css/wireWidgets.css");style.setAttribute("id","ww-widgets-css");if(document.getElementById(style.id)===null){WeddingWire.headLoc.appendChild(style);
}};WeddingWire.addWidgetCSS();WeddingWire.RandomNumberGenerator=function(seed){this.seed=seed;this.A=48271;this.M=2147483647;this.Q=this.M/this.A;this.R=this.M%this.A;this.oneOverM=1/this.M;this.next=function(looping){if(looping===undefined){looping=1;}looping+=2;for(var i=0;i<looping;i++){var hi=this.seed/this.Q;
var lo=this.seed%this.Q;var test=this.A*lo-this.R*hi;if(test>0){this.seed=test;}else{this.seed=test+this.M;}}return(this.seed*this.oneOverM);};return this;};WeddingWire.getAvgVendorScore=function(vendor){var score=parseFloat(vendor.average_review_score);if(parseInt(score,10)==score){score+=".0";}return score;
};WeddingWire.getSmallReviewStars=function(score){score=parseFloat(score);var res=0;var w_copy=score*10;var mod=parseInt(w_copy,10)%5;if(mod>(5/2)){res=w_copy+(5-mod);}else{res=w_copy-mod;}return(WeddingWire.staticSite+"/images/search/reviewstars/"+res+"_stars.gif");};WeddingWire.getVendorPhone=function(vendor){var phone="";
if(vendor.locations.length!==0){phone=vendor.locations[0].phone_primary;}if(phone===null||phone===undefined||phone===""){phone="(No Phone Number)";}else{var postphone="";for(var i=0;i<phone.length;i++){if(i==3||i==6){postphone+="-";postphone+=phone.charAt(i);}else{postphone+=phone.charAt(i);}}phone=postphone;
}return phone;};WeddingWire.getVendorHighlight3Hour=function(vendors2,currentVendorId){var vendors=[];var vendorsHashing={};for(var index=0;index<vendors2.length;index++){if(vendors2[index].about!=""&&vendors2[index].image_asset_urls.image_sq_96x96_url!=""&&vendors2[index].review_count!=0&&WeddingWire.getAvgVendorScore(vendors2[index])>=3&&vendors2[index].vendor_id!=currentVendorId&&vendorsHashing[vendors2[index].vendor_id]===undefined){vendors[vendors.length]=vendors2[index];
vendorsHashing[vendors2[index].vendor_id]=true;}}if(vendors.length<3){return null;}var list=[];var basicCount=0;for(var i=0;i<vendors.length;i++){if(vendors[i].listing_type=="basic"){basicCount++;}}if(basicCount==0){basicCount=1;}for(var i=0;i<vendors.length;i++){var count=1;if(vendors[i].listing_type=="enhanced"){count=3*basicCount;
}else{if(vendors[i].listing_type=="featured"){count=5*basicCount;}else{if(vendors[i].listing_type=="spotlight"){count=10*basicCount;}}}for(var j=0;j<count;j++){list[list.length]=i;}}var rand=new WeddingWire.RandomNumberGenerator(WeddingWire.getDaySeed());var i=Math.floor((list.length)*rand.next(WeddingWire.getHourSeed()));
var vendors3=[];vendors3[0]=vendors[list[i]];vendors3[1]=vendors[(list[i]+1)%vendors.length];vendors3[2]=vendors[(list[i]+2)%vendors.length];return vendors3;};WeddingWire.getVendorHighlightHour=function(vendors2){var vendors=[];var vendorsHashing={};for(var index=0;index<vendors2.length;index++){if(vendors2[index].about!=""&&vendors2[index].image_asset_urls.image_sq_96x96_url!=""&&vendors2[index].review_count!=0&&WeddingWire.getAvgVendorScore(vendors2[index])>=3&&vendorsHashing[vendors2[index].vendor_id]===undefined){vendors[vendors.length]=vendors2[index];
vendorsHashing[vendors2[index].vendor_id]=true;}}if(vendors.length==0){return null;}var list=[];var basicCount=0;for(var i=0;i<vendors.length;i++){if(vendors[i].listing_type=="basic"){basicCount++;}}if(basicCount==0){basicCount=1;}for(var i=0;i<vendors.length;i++){var count=1;if(vendors[i].listing_type=="enhanced"){count=3*basicCount;
}else{if(vendors[i].listing_type=="featured"){count=5*basicCount;}else{if(vendors[i].listing_type=="spotlight"){count=10*basicCount;}}}for(var j=0;j<count;j++){list[list.length]=i;}}var rand=new WeddingWire.RandomNumberGenerator(WeddingWire.getDaySeed());var i=Math.floor((list.length)*rand.next(WeddingWire.getHourSeed()));
return vendors[list[i]];};WeddingWire.setDefault=function(el,txt){if(el.value.length==0||el.value==txt){el.style.color="gray";el.value=txt;}else{el.style.color="";}};WeddingWire.clearDefault=function(el,txt){if(el.value==txt){el.value="";}el.style.color="";};WeddingWire.checkEmail=function(email){return/^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/.test(email.toUpperCase());
};WeddingWire.ensureInit=function(func){func();};WeddingWire.vendorCategories=[{"shortName":"band","pluralName":"bands","key":"band","cid":"1"},{"shortName":"beauty & health","pluralName":"beauty & health","key":"beauty","cid":"16"},{"shortName":"wedding cake","pluralName":"cakes","key":"cake","cid":"2"},{"shortName":"catering","pluralName":"caterers","key":"catering","cid":"3"},{"shortName":"ceremony music","pluralName":"ceremony music","key":"ceremonymusic","cid":"4"},{"shortName":"DJ","pluralName":"DJs","key":"dj","cid":"7"},{"shortName":"dress & attire","pluralName":"dresses","key":"dress","cid":"17"},{"shortName":"favors & gifts","pluralName":"favors & gifts","key":"favor","cid":"5"},{"shortName":"flowers","pluralName":"wedding florists","key":"florist","cid":"8"},{"shortName":"invitations","pluralName":"invitations","key":"invitation","cid":"18"},{"shortName":"jewelry","pluralName":"jewelers","key":"jewelry","cid":"19"},{"shortName":"officiant","pluralName":"officiants","key":"officiant","cid":"9"},{"shortName":"photography","pluralName":"photographers","key":"photography","cid":"10"},{"shortName":"planning","pluralName":"planners","key":"planner","cid":"15"},{"shortName":"rentals & photobooths","pluralName":"wedding event rentals","key":"rental","cid":"12"},{"shortName":"transportation","pluralName":"limos","key":"transportation","cid":"13"},{"shortName":"venue","pluralName":"venues","key":"venue","cid":"11"},{"shortName":"videography","pluralName":"videographers","key":"videography","cid":"14"},{"shortName":"unique services","pluralName":"wedding services","key":"other","cid":"20"},{"shortName":"entertainer","pluralName":"Entertainers","key":"entertainer","cid":"14"},{"shortName":"party supplies","pluralName":"party supplies","key":"partysupplies","cid":"14"},{"shortName":"travel","pluralName":"travel","key":"travel","cid":"14"},{"shortName":"lighting & decor","pluralName":"lighting & decor","key":"eventproduction","cid":"14"}];
WeddingWire.createPreferred=function(args){WeddingWire.preferredWidgetId=args.id;WeddingWire.preferredWidgetCount=args.count;var fullUrl="http://api.weddingwire.com/api/v2/GetVendorDetails?partnerkey=163r5mm3&new_cats=yes&vendor_id="+args.vendorId+"&prefers=yes&callback=WeddingWire.writePreferredCallback";
var script=document.createElement("script");script.setAttribute("type","text/javascript");script.setAttribute("src",fullUrl);WeddingWire.headLoc.appendChild(script);};WeddingWire.writePreferredCallback=function(results){var div=document.getElementById(WeddingWire.preferredWidgetId);div.className="ww-reset ww-preferred-widget";
div.innerHTML=WeddingWire.getPreferredWidget(results);};WeddingWire.getPreferredWidget=function(results){var str="";str+='<div class="ww-preferred-header-box">';str+='	<div class="ww-preferred-header-box-left">';str+='		<div class="ww-header1">Our Preferred Pros</div>';str+='		<div class="ww-header2">we recommend to our clients</div>';
str+="	</div>";str+="</div>";str+='<div class="ww-preferred-box">';if(results["vendors_i_prefer"].length==0){str+="<div class='ww-noresults-box'>There are no preferred professionals to display.</div>";}else{for(var i=0;i<results["vendors_i_prefer"].length;i++){str+=WeddingWire.getPreferredCategoryDiv(results["vendors_i_prefer"][i]);
}}str+='<div class="ww-footer">';if(WeddingWire.preferredWidgetCount<5){str+='<div class="ww-preferred-footer-text">See our full <a target="_blank" href="'+results["storefront_url"]+'">Preferred Pro List</a> at</div>';}str+='<div class="ww-preferred-footer-img"><a target="_blank" title="Weddings, Wedding Planning, Wedding Websites, Wedding Venues" href="http://www.weddingwire.com"><img style="border:0pt none;" alt="Weddings, Wedding Planning, Wedding Websites, Wedding Venues" src="'+WeddingWire.staticSite+'/images/logo/WWlogo-130x30.gif"/></a></div>';
str+="</div>";str+="</div>";return str;};WeddingWire.getPreferredCategoryDiv=function(category){var catName=category.category;for(var i=0;i<WeddingWire.vendorCategories.length;i++){var cat=WeddingWire.vendorCategories[i];if(cat.key==category.category){catName=cat.shortName;}}var str="";str+='<div class="ww-preferred-box-outer">';
str+="<div class='ww-prefer-category-header'>"+catName+"</div>";str+='<div id="preferred'+category.category+'" class="ww-prefer-vendors-box">';var vendors="<div class='ww-preferred-content'>";for(var i=0;i<category.vendors.length&&i<WeddingWire.preferredWidgetCount;i++){vendors+=WeddingWire.getPreferredVendorDiv(category.vendors[i]);
}vendors+="</div>";str+=WeddingWire.createRoundedDiv("white","white",true,true,vendors);str+="</div></div>";return str;};WeddingWire.getPreferredVendorDiv=function(vendor){var output="";output+='<div class="ww-preferred-vendor-box">';if(vendor.image_asset_urls.image_sq_48x48_url==""){vendor.image_asset_urls.image_sq_48x48_url=WeddingWire.staticSite+"/images/icons/48x48_nophoto.gif";
}output+='<div class="ww-preferred-vendor-image-box"><a target="_blank" href=\''+vendor.storefront_url+"'><img src=\""+vendor.image_asset_urls.image_sq_48x48_url+'"></a></div>';output+='<div class="ww-preferred-vendor-text-box">';output+='<div class="ww-preferred-vendor-name-box"><a target="_blank" href="'+vendor.storefront_url+'">'+WeddingWire.getTrimmedString(vendor.vendor_name,70)+"</a></div>";
if(vendor.review_count>0){var avg_score=WeddingWire.getAvgVendorScore(vendor);output+='<div class="ww-preferred-vendor-reviews-box" style="background-image:url('+WeddingWire.getSmallReviewStars(avg_score)+');"><a target="_blank" href="'+vendor.storefront_reviews_url+'">('+vendor.review_count+" Reviews)</a></div>";
}output+="</div>";output+='<div class="ww-clear">&nbsp;</div>';output+="</div>";return output;};
