","digits":0,"fieldid":232,"typeid":10,"type":"URL","value_raw":"","value_string":""}},"amenities":{"restaurants_barlounge":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Bar / Lounge","shortname":"barlounge","amenitygroupid":1016,"digits":0,"fieldid":577,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_barlounge"},"restaurants_californian_1002_1017":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Californian","shortname":"californian_1002_1017","amenitygroupid":1017,"digits":0,"fieldid":237,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_californian_1002_1017"},"restaurants_corkage_1002_1016":{"tabshortname":"restaurants","amenitytabid":1002,"value":"$25 per 750 mL for first 2 then $50 per 750mL.","label":"Corkage","shortname":"corkage_1002_1016","amenitygroupid":1016,"digits":0,"fieldid":217,"typeid":8,"type":"Text","value_raw":"$25 per 750 mL for first 2 then $50 per 750mL.","value_string":"$25 per 750 mL for first 2 then $50 per 750mL.","uniquename":"restaurants_corkage_1002_1016"},"restaurants_dinner_1002_1026":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Dinner","shortname":"dinner_1002_1026","amenitygroupid":1026,"digits":0,"fieldid":362,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_dinner_1002_1026"},"restaurants_evstations":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"EV Charging Stations","shortname":"evstations","amenitygroupid":1016,"digits":0,"fieldid":488,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_evstations"},"restaurants_happyhour":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Happy Hour","shortname":"happyhour","amenitygroupid":1016,"digits":0,"fieldid":566,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_happyhour"},"restaurants_italian_1002_1017":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Italian","shortname":"italian_1002_1017","amenitygroupid":1017,"digits":0,"fieldid":286,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_italian_1002_1017"},"restaurants_lassiette":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Recommended","shortname":"lassiette","amenitygroupid":1033,"digits":0,"fieldid":483,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_lassiette"},"restaurants_michelin_star_rated_1002_1016":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Michelin Rated","shortname":"michelin_star_rated_1002_1016","amenitygroupid":1016,"digits":0,"fieldid":339,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_michelin_star_rated_1002_1016"},"restaurants_openlater":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Open After 9pm","shortname":"openlater","amenitygroupid":1016,"digits":0,"fieldid":599,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_openlater"},"restaurants_petsok":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"Pet Friendly","shortname":"petsok","amenitygroupid":1016,"digits":0,"fieldid":423,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_petsok"},"restaurants_wheelchairyes":{"tabshortname":"restaurants","amenitytabid":1002,"value":"true","label":"ADA Accessible","shortname":"wheelchairyes","amenitygroupid":1016,"digits":0,"fieldid":426,"typeid":11,"type":"Yes/No","value_raw":true,"value_string":"Yes","uniquename":"restaurants_wheelchairyes"},"general_openthanksgivingday":{"listid":47,"tabshortname":"general","amenitytabid":1,"value":"Open","label":"Thanksgiving Day","shortname":"openthanksgivingday","amenitygroupid":1,"digits":0,"fieldid":629,"typeid":7,"type":"Dropdown","value_raw":{"listid":47,"value":"Open"},"value_string":"Open","uniquename":"general_openthanksgivingday"}}}; var cityStateZip = "Yountville, CA 94599"; var locations; if (data.address1) { var location = { streetAddress: data.address1, streetAddress2: data.address2, streetAddress3: data.address3, cityStateZip: cityStateZip } locations = [location]; } var weburl = data.weburl !== undefined ? "/plugins/crm/count/?type=server&key=4_11060&val=289d659865c155bce1d7fbe12f86094f59f8877e650d0cfdff7950384afd6993659f2c04ef23f896981199fbd6836cfc4bd947b2e8e389687387795064f9b7d90617bc55fe532076b7448f192bb71fe5" : undefined; var rawWeburl = data.weburl; var tripbuilderTracking = "58_11060"; var translations = JSON.parse($("#translations_177b5ef9-4227-452d-99a5-540502ce2422").html()); var reservationUrl = data.listingudfs_object?.['232']?.value_string ?? undefined; var socialMap = { "serviceid_1" : { class : "fab fa-x-twitter", service : "twitter", sort : 3 }, "serviceid_2" : { class : "fab fa-youtube", service : "youtube", sort : 4 }, "serviceid_4" : { class : "fab fa-facebook-f", service : "facebook", sort : 1 }, "serviceid_10" : { class : "fab fa-linkedin", service : "linkedin", sort : 7 }, "serviceid_12" : { class : "fab fa-pinterest", service : "pinterest", sort : 5 }, "serviceid_13" : { class : "fab fa-instagram", service : "instagram", sort : 2 }, "serviceid_17" : { class : "fab fa-snapchat", service : "snapchat", sort : 6 } }; function sortSoc(a, b) { return a.sort - b.sort; } var social = []; if (data.social) { data.social.forEach(function(val) { var item = socialMap['serviceid_' + val.smserviceid]; if (item === undefined) { return; } item.url = listingsLib.getValidSocialUrl({ url : val.value, urlType : item.service }); item.rawUrl = listingsLib.getValidSocialUrl({ url : val.value, urlType : item.service }); if (item.service === 'twitter') { item.url = sv_crmLib.getTrackUrl(data.crmtracking.core_twitter_click, item.url); } else if (item.service === 'facebook') { item.url = sv_crmLib.getTrackUrl(data.crmtracking.core_facebook_click, item.url); } else if (item.service === 'youtube') { item.url = sv_crmLib.getTrackUrl(data.crmtracking.custom_youtube_url_click_thrus, item.url); } else if (item.service === 'pinterest') { item.url = sv_crmLib.getTrackUrl(data.crmtracking.custom_pinterest_url_click_thrus, item.url); } else if (item.service === 'instagram') { item.url = sv_crmLib.getTrackUrl(data.crmtracking.custom_instagram_url, item.url); } social.push(item); social.sort(sortSoc); }); } var placemarks = []; if (data.latitude) { placemarks.push({ recid : data.recid, title : data.title, crmc : data.primaryCategory.catname, crmsc : data.primaryCategory.subcatname, latitude : data.latitude, longitude : data.longitude, itemType : 'listings', address1 : data.address1 }); } // Convert New Line and Carrige Returns to
function convertLinetoBreak(args) { var string = args.string || false; if(string){ return string.replace(/(?:\r\n|\r|\n)/g, '
'); } } var vue = detail.getVue({ data : { type : 'Listings', title : data.title, crmc : data.primaryCategory.catname, crmsc : data.primaryCategory.subcatname, rawWeburl : rawWeburl, acctid : data.acctid, city : data.city, region : data.region, rankname : data.custom?.rankname ?? data.rankname, price : data.price, ga4Price : data.custom?.price, udfs : data.udfs, locations : locations, phone : data.phone, tollfree : data.tollfree, media : data.media, weburl : weburl, social : social, hasTripAdvisor : data.hasTripAdvisor, tripbuilder : tripbuilder, tripbuilderTracking : tripbuilderTracking, yelp : data.yelp, hasYelp : data.hasYelp, yelpHours : data.yelp ? data.yelp.hours : undefined, threshold360id : data.threshold360id, recid : data.recid, rankid : data.rankid, isDTN : data.isDTN, description : convertLinetoBreak({string:data.description}), offers : data.offers, events : data.events, placemarks : placemarks, amenities : data.amenityTree, meetingfacility : data.meetingfacility, meetingrooms : data.meetingrooms, translations : translations, reservationUrl : reservationUrl ? sv_crmLib.getTrackUrl(data.crmtracking.core_booking_click, reservationUrl) : undefined, virtualtourUrl : data.listingudfs_object?.['291']?.value_string ?? undefined, napaGreen : data.amenities?.wineries_napagreen?.value_raw ?? undefined, michelinRating : data.amenities?.restaurants_onestar?.value_raw ? { label: "Michelin rated - 1 Star", svg : "michelin-onestar", color : "red" } : data.amenities?.restaurants_twostar?.value_raw ? { label: "Michelin rated - 2 Stars", svg : "michelin-twostar", color : "red" } : data.amenities?.restaurants_threestars?.value_raw ? { label: "Michelin rated - 3 Stars", svg: "michelin-threestar", color : "red" } : data.amenities?.restaurants_bibgourmand?.value_raw ? { label: "Michelin rated - Bib Gourmand", svg: "michelin-bibgourmand", color : "red" } : data.amenities?.restaurants_lassiette?.value_raw ? { label: "Michelin rated - Recommended", svg: "", color : "red" } : undefined, michelinGreen : data.amenities?.restaurants_greenstar?.value_raw ? { label: "Michelin rated - Green Star", svg: "michelin-greenstar", color : "green" } : undefined, forbesRating : data.amenities?.lodging_forbesfivestar?.value_raw ? { label: "Forbes 5-Star rated", svg : "rating-forbes-fivestar" } : data.amenities?.lodging_forbesfourstar?.value_raw ? { label: "Forbes 4-Star rated", svg : "rating-forbes-fourstar" } : data.amenities?.lodging_forbesrecommended?.value_raw ? { label: "Forbes Recommended", svg: "rating-forbes-recommended" } : undefined, michelinKeys : data.amenities?.lodging_onekey?.value_raw ? { label: "Michelin rated - 1 Key", svg : "rating-michelin-onekey" } : data.amenities?.lodging_twokeys?.value_raw ? { label: "Michelin rated - 2 Keys", svg : "rating-michelin-twokey" } : data.amenities?.lodging_threekeys?.value_raw ? { label: "Michelin rated - 3 Keys", svg: "rating-michelin-threekey" } : undefined, openTableId : data.social?.filter(val => val.smserviceid === 6)[0]?.value ?? undefined, listing_subtabs : { subTab1 : data.listingudfs_object?.['251'] !== undefined && data.listingudfs_object?.['245'] !== undefined ? { type : data.listingudfs_object?.['251'].value_string ?? undefined, description : convertLinetoBreak({ string : data.listingudfs_object?.['245'].value_string }) ?? undefined } : undefined, subTab2 : data.listingudfs_object?.['252'] !== undefined && data.listingudfs_object?.['246'] !== undefined ? { type : data.listingudfs_object?.['252'].value_string ?? undefined, description : convertLinetoBreak({ string : data.listingudfs_object?.['246'].value_string }) ?? undefined } : undefined, subTab3 : data.listingudfs_object?.['253'] !== undefined && data.listingudfs_object?.['247'] !== undefined ? { type : data.listingudfs_object?.['253'].value_string ?? undefined, description : convertLinetoBreak({ string : data.listingudfs_object?.['247'].value_string }) ?? undefined } : undefined }, gtmVars : '{ "tClient_ga4" : {"interactionSource" : "detail"} }', }, templates : { listing_ta_snippet : listing_ta_snippet, listing_detail_meeting_facilities : listing_detail_meeting_facilities, listing_detail_meeting_room : listing_detail_meeting_room, yelp_component : yelp_component, event_item_template : event_item_template, offer_item_template : offer_item_template, custom_li_items : custom_li_items, }, rootNode : $('[data-guid="177b5ef9-4227-452d-99a5-540502ce2422"]') }); sv_crmLib.trackAjax(data.crmtracking.core_listing_view); /* register available UI events for SEM tracking */ var watcher = new UIWatcher(vue, $, document); var uid = clientLib.uuid().toString(); var widgetEvents = ["item-click"]; for (var i=0; i