if(typeof WeddingWire==="undefined"||!WeddingWire){var WeddingWire={};}WeddingWire.headLoc=document.getElementsByTagName("head").item(0);WeddingWire.staticSite="http://static.weddingwire.com/static/3.4.6";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){var borderString="background:"+backgroundColor+"; border-left:1px solid "+borderColor+"; border-right:1px solid "+borderColor+";";
var output="<div>";if(topBorder){output+='<b class="ww-roundedBorderTop"><b class="ww-roundedBorder1" style="background:'+borderColor+';"></b><b class="ww-roundedBorder2" style="'+borderString+'"></b><b class="ww-roundedBorder3" style="'+borderString+'"></b><b class="ww-roundedBorder4" style="'+borderString+'"></b></b>';
}output+="<div style=' display:block; border:0 solid "+borderColor+"; border-width:0 1px;'>";output+=body;output+="</div>";if(bottomBorder){output+='<b class="ww-roundedBorderBottom"><b class="ww-roundedBorder4" style="'+borderString+'"></b><b class="ww-roundedBorder3" style="'+borderString+'"></b><b class="ww-roundedBorder2" style="'+borderString+'"></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;}if(res===0){res="00";}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.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 & decor","pluralName":"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":"event rentals","pluralName":"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"}];
WeddingWire.getVendorCategoryByKey=function(key){var category=WeddingWire.vendorCategories[0];for(var i=0;i<WeddingWire.vendorCategories.length;i++){if(key==WeddingWire.vendorCategories[i].key){category=WeddingWire.vendorCategories[i];}}return category;};WeddingWire.getVendorCategory=function(){var rand=new WeddingWire.RandomNumberGenerator(WeddingWire.getDaySeed());
return WeddingWire.vendorCategories[Math.floor((WeddingWire.vendorCategories.length)*rand.next(WeddingWire.getHourSeed()))];};WeddingWire.getVendorHighlightHour=function(vendors2){var vendors=[];for(var index=0;index<vendors2.length;index++){if(vendors2[index].about!=""&&vendors2[index].image_asset_urls.image_sq_96x96_url!=""){vendors[vendors.length]=vendors2[index];
}}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;}}return vendors[list[Math.floor((list.length)*Math.random())]];};WeddingWire.createVendorHighlightWidget=function(args){if(args.category===undefined){args.category=WeddingWire.getVendorCategory().key;
}var fullUrl="http://www.weddingwire.com/api/v2/SearchVendors?partnerkey=163r5mm3&category="+args.category+"&location="+args.location+"&page_size=30&page=1&callback="+args.callback;var script=document.createElement("script");script.setAttribute("type","text/javascript");script.setAttribute("src",fullUrl+"&noCacheIE="+(new Date()).getTime());
WeddingWire.headLoc.appendChild(script);};WeddingWire.drawVendorHighlightsWidget=function(args){var div=document.getElementById(args.divId);div.className="ww-reset ww-vendorHighlight-widget";div.innerHTML=WeddingWire.getVendorHighlightsWidget(args.result,args.location,args.category);};WeddingWire.vendorHighlightTagBase="utm_campaign=quicksand&utm_medium=vendorhighlight";
WeddingWire.getVendorHighlightsWidget=function(results,location,category){if(category===undefined){category=WeddingWire.getVendorCategory();}else{category=WeddingWire.getVendorCategoryByKey(category);}if(results==null||results.vendors.length==0){return"";}var vendorHighlight=WeddingWire.getVendorHighlightHour(results.vendors);
if(vendorHighlight==null){return"";}var linkBase="wwqs_module=vendorhighlight&wwqs_category="+category.key;var output="";output+=WeddingWire.createRoundedDiv("#e8d166","#e8d166",true,true,'<div class="ww-vendorHighlight-widget-heading">Vendor Highlight</div>');output+=WeddingWire.getVendorHighlight(vendorHighlight,linkBase);
output+='<a href="http://www.weddingwire.com/shared/Search?l=y&cid='+category.cid+"&geo="+location+"&wwqs_link=vendorhighlightsearch&"+linkBase+'"><div class="ww-widget-arrowLink">Find more '+category.pluralName+" in your area</div></a>";return output;};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.getVendorHighlight=function(vendorHighlight,linkBase){var output="";output+='<div class="ww-vendorHighlight-widget-bottom-border">';var noStoreFront=false;var contentReviews="storefront";if(vendorHighlight.storefront_url==""){vendorHighlight.storefront_url=vendorHighlight.storefront_reviews_url;
contentReviews="reviews";noStoreFront=true;}output+='<div class="ww-vendorHighlight-widget-vendor-name-box"><a href="'+vendorHighlight.storefront_url+"?wwqs_link=vendorhighlightname&"+linkBase+'">'+WeddingWire.getTrimmedString(vendorHighlight.vendor_name,60)+"</a></div>";output+='<div class="ww-vendorHighlight-widget-vendor-tagline-box">'+WeddingWire.getTrimmedString(vendorHighlight.tagline,45)+"</div>";
if(vendorHighlight.review_count>0){var avg_score=WeddingWire.getAvgVendorScore(vendorHighlight);output+='<div class="ww-vendorHighlight-widget-vendor-reviews-box" style="background-image:url('+WeddingWire.getSmallReviewStars(avg_score)+');"><a href="'+vendorHighlight.storefront_reviews_url+"?wwqs_link=vendorhighlightreviews&"+linkBase+'">('+vendorHighlight.review_count+" Reviews)</a></div>";
}output+='<div class="ww-vendorHighlight-widget-vendorHighlight-box">';if(vendorHighlight.image_asset_urls.image_sq_96x96_url==""){vendorHighlight.image_asset_urls.image_sq_96x96_url=WeddingWire.staticSite+"/images/icons/96x96_nophoto.gif";}output+='<div class="ww-vendorHighlight-widget-logo-box"><img src="'+vendorHighlight.image_asset_urls.image_sq_96x96_url+'"></div>';
var more="";if(vendorHighlight.about.length!==0){more='<a href="'+vendorHighlight.storefront_url+"?wwqs_link=vendorhighlightmore&"+linkBase+'">(more)</a>';}output+='<div class="ww-vendorHighlight-widget-description-box">'+WeddingWire.getTrimmedString(vendorHighlight.about,200)+" "+more+"</div>";output+='<div class="ww-clear">&nbsp;</div>';
output+="</div>";output+='<div class="ww-vendorHighlight-widget-footer-box">';if(noStoreFront){output+="<div class='ww-vendorHightlight-widget-footer-spacer'>&nbsp;</div>";}else{output+='<div class="ww-vendorHighlight-widget-available-box">';output+='<a href="'+vendorHighlight.storefront_url+"?email=open&wwqs_link=vendorhighlightcheckavailability&"+linkBase+'">Check Availability</a>';
output+="</div>";output+='<div class="ww-vendorHighlight-widget-phone-box">';output+='<a href="'+vendorHighlight.storefront_url+"?wwqs_link=vendorhighlightphone&"+linkBase+'">'+WeddingWire.getVendorPhone(vendorHighlight)+"</a>";output+="</div>";}output+='<div class="ww-clear">&nbsp;</div>';output+="</div>";
output+="</div>";return output;};