CINXE.COM
Get Connected With Destination Madison
<!doctype html> <html lang='en-us'> <head> <!-- meta --> <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> <meta charset="utf-8" /> <title>Get Connected With Destination Madison</title> <link rel="canonical" href="https://www.visitmadison.com/about-us/get-connected/" /> <meta name="description" content="Fall deeper in love with the capital city by connecting with Destination Madison from trade shows to TikToks and everything in between." /> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1" /> <meta name="sv-nav-properties" content="{"title":"Connect with Us","id":"63c1ac3d2da75374fa3e6b20","parents_ids":["5e4701f5bce60830cc8fd239"],"site_name":"primary20","section":"secondary","folderHref":"/about-us/get-connected/"}" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="referrer" content="always" /> <meta property="og:title" content="Get Connected With Destination Madison" /> <meta property="og:url" content="https://www.visitmadison.com/about-us/get-connected/" /> <meta property="og:description" content="Fall deeper in love with the capital city by connecting with Destination Madison from trade shows to TikToks and everything in between." /> <meta property="og:locale" content="en_us" /> <meta property="og:image" content="https://assets.simpleviewinc.com/simpleview/image/upload/c_limit,h_1200,q_75,w_1200/v1/clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36.jpg" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="800" /> <meta property="og:type" content="website" /> <meta property="fb:app_id" content="414946715248338" /> <!-- head css bundles --> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/weather/virtuals/css/shared.css"/> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/weather-icons/2.0.9/css/weather-icons.min.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/tripbuilder/virtuals/css/shared.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/search/virtuals/css/shared.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/widget_visitors_guide.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/widget_enews.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/widget_social_share.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/widget_button.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/widget_planner_toolkit.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/widget_cookie_banner.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/nav/virtuals/css/shared.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/collections/virtuals/css/widget_template_custom_featured_event_header.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/collections/virtuals/css/shared.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/collections/virtuals/css/widget_template_custom_partner_logos.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/collections/virtuals/css/widget_template_custom_social_links.css"/> <link rel="stylesheet" href="https://unpkg.com/plyr@^3/dist/plyr.css" media="print" onload="this.onload=null;this.media='all'" class="preloaded-css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/node_modules/foundation-5.5.0/css/normalize.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/node_modules/foundation-5.5.0/css/foundation.min.css"/> <link rel="stylesheet" href="/includes/public/js/magnific/magnific-popup.min.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/variables.css" media="print" onload="this.onload=null;this.media='all'" class="preloaded-css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/shared.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/shared_print.css" media="print"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/custom_header.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/custom_core_styles.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/custom_forms.css"/> <link rel="stylesheet" href="https://use.typekit.net/wzb8rex.css"/> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.14.0/css/all.css"/> <!-- head js bundles --> <script src="https://unpkg.com/plyr@^3/dist/plyr.polyfilled.min.js"></script> <script src="https://player.vimeo.com/api/player.js"></script> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/node_modules/foundation-5.5.0/js/vendor/modernizr.js"></script> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/libs/sv/requirejs/public/require.js" data-ot-ignore></script> <script src="/requirejs_config_df9c14a4_f9492642.js" data-ot-ignore></script> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/js/shared_header.js"></script> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/js/polyfills/picturefill.js"></script> <!-- bottomHead --> <script data-id="site_gtm"> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','gtmDataLayer','GTM-TBH2RK'); </script> <script data-id="site_gtm"> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','gtmDataLayer','GTM-NFBVG93'); </script> <meta name="facebook-domain-verification" content="uy4ugsamf66fgtnkhfmvpkusamdned" /> <meta name="facebook-domain-verification" content="gvanbh91vsily3hoo81oj8ljxuao30" /> </head> <body> <!-- topBody --> <noscript> <iframe src="//www.googletagmanager.com/ns.html?id=GTM-TBH2RK" title="Google Tag Manager" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <noscript> <iframe src="//www.googletagmanager.com/ns.html?id=GTM-NFBVG93" title="Google Tag Manager" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <!-- content --> <div data-civid="646e2d0f799fe13dcad91599" class="contentRender contentRender_0 contentRender_type_panel contentRender_name_plugins_common_page" data-sv-time="0" data-sv-index="0" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <script> // CRM FORM STYLING HELPER JS // Adds the body class as quickly as possible to hide all the items on the page so we don't // have the site flash before the calendar shows up if (location.search.indexOf('action=popupCal') > -1 && document.body.querySelectorAll('.lookup-calHolder')) { document.body.classList.add('crm-calendar-popup'); }; </script> <a class="skip-link sr-only" href="#main-content">Skip to main content</a> <div class="root-panel panel-page"> <div class="header-container"> <div data-civid="5e46e54c2159982ccf464325" class="contentRender contentRender_1 contentRender_type_panel contentRender_name_plugins_common_header_primary20" data-sv-time="1" data-sv-index="1" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div id="scroll-anchor"></div> <div class="panel-header " data-guid="db81cac0-17a2-41b0-851e-442569c70df3" data-animation-state='top'> <div class="inner"> <div class="smartbanner"> </div> <div class="mobile-nav" data-mobile-nav> <div class="navbar"> <div data-logo-cont><div data-civid="659438b7f4ba65599f04b5a5" class="contentRender contentRender_2 contentRender_type_widget contentRender_name_plugins_common_logo" data-sv-time="42" data-sv-index="2" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="logo" data-guid="ceef23f7-ce90-41fc-b34c-f6889998daf4" > <a href="/" target="" aria-label="Destination Madison logo"> <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_pad,h_80,q_75,w_170/v1/clients/madison/DestinationMadison_Red_f473b616-f116-4e16-9ab8-5378ffe7e5d5.png" alt="Destination Madison logo" /> </a> </div> </div></div> <div class="desktop-dd-top"> <div class="weather-cont"> <div data-civid="659438b7f4ba65599f04b5a7" class="contentRender contentRender_3 contentRender_type_widget contentRender_name_plugins_weather_weather" data-sv-time="41" data-sv-index="3" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="weather-wrapper" data-sv-weatherWidget></div> <script type="text/template" data-weatherwidget-template> <div class="weather" data-sv-weather-toggle> <span class="weather-icon"> <i class="wi {{current.condition.icon}}" aria-hidden="true"></i> </span> <span class="temp"> {{current.temp}}<span class="deg">°</span> <i class="fa fa-chevron-down" aria-hidden="true"></i> </span> </div> <div class="weather-dropdown-wrapper" data-sv-weather-dropdown> <div class="weather-dropdown"> <div class="top-section"> <div class="header"> Current Conditions </div> <div class="forecast-wrapper"> <div class="forecast"> <div class="icon-temp-wrapper"> <span class="weather-icon"> <i class="wi {{current.condition.icon}}" aria-hidden="true"></i> </span> <span class="temp"> {{current.temp}}<span class="deg">°</span> </span> </div> <div class="info"> {{current.condition.text}} </div> </div> </div> </div> <div class="bottom-section"> <div class="forecast-list-wrapper"> <ul class="forecast-list"> {{#forecast}} <li class="item"> <ul class="item-details" title="{{condition.text}}"> <li class="day"> {{day}} </li> <div class="data"> <li class="visual"> <span class="weather-icon"> <i class="wi {{condition.icon}}" aria-hidden="true"></i> </span> </li> <li class="high"> {{high}}<span class="deg">°</span> </li> <li class="sep"></li> <li class="low"> {{low}}<span class="deg">°</span> </li> </div> </ul> </li> {{/forecast}} </ul> </div> </div> </div> </div> </script> <script> require(["jquery", "goatee", "sv_urlLib", "sv_site"], function($, goatee, urlLib, sv_site) { var root = $("[data-sv-weatherWidget]"); var template = $("[data-weatherwidget-template]").html(); var settings = {"woids":["2443945"],"unit_of_measure":"f"}; var url = urlLib.build({ path : "/plugins/core/svapi/", get : { service : "weatherv2", endpoint : "latlng", serviceArgs : JSON.stringify({ lat : sv_site.siteConfig.latitude, lng : sv_site.siteConfig.longitude, unit : settings.unit_of_measure }) } }); $.get(url, function(res) { if (res.success !== true) { return; } res.data.forecast.splice(5); // trim forecast to first 5 days var html = goatee.fill(template, res.data); root.html(html); $("[data-weather-cont]").replaceWith(root.clone()); $("[data-sv-weather-toggle]").on("click", function() { if (window.innerWidth >= 640) { root.toggleClass("active"); $("[data-sv-weather-dropdown]").toggleClass("open"); } }); }); }); </script></div> </div> <div class="tripbuilder-cont"> <div data-civid="659438b7f4ba65599f04b5a9" class="contentRender contentRender_4 contentRender_type_widget contentRender_name_plugins_tripbuilder_counter" data-sv-time="42" data-sv-index="4" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="tripbuilder" id="tripbuilder_counter_34c4c8af-4e1b-456e-bfd1-92282c108343"></div> <script> require(["jquery", "site_tripbuilder"], function($, tripbuilder) { if (!tripbuilder.enabled) { return; } var root = $("#tripbuilder_counter_34c4c8af-4e1b-456e-bfd1-92282c108343"); var container = $("[data-sv-tripbuilderCounter]"); var renderContainer = root.closest(".contentRender_name_plugins_tripbuilder_tripbuilder_counter"); var onChangeCB = function() { root.html("<a href='" + tripbuilder.path + "' class='tripItems'><i class='fas fa-heart'></i> (" + tripbuilder.getTotalCount() + ")</a>"); } onChangeCB(); tripbuilder.events.on("change", onChangeCB); var mobile = root.html(); $('[data-trip-builder]').append(mobile); }); </script></div> </div> <div class="search-cont" data-search-container> <button class="search-button" data-toggle-search> <i class="icon fas fa-search open"></i> <i class="icon fas fa-times close"></i> </button> <div data-civid="659438b7f4ba65599f04b5ab" class="contentRender contentRender_5 contentRender_type_widget contentRender_name_plugins_search_headerbox" data-sv-time="42" data-sv-index="5" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="search_widget_headerbox"> <form data-sv-searchForm action="/search/" method="GET"> <input data-sv-searchInput name="q" type="search" class="searchInput" placeholder="SEARCH" autocomplete="off" autocorrect="off" autocapitalize="off" value="" /> <i data-sv-searchBtn class="fa fa-search fa-inverse searchBtn"></i> </form> </div> <script> require(["jquery", "domReady!"], function($) { $('[data-search-cont]').replaceWith($('.search_widget_headerbox').clone()); $('.search_widget_headerbox').each(function() { var form = $(this).find('form'); var input = $(this).find('input'); form.submit(function(e) { if (input.val().length === 0) { e.preventDefault(); } }); $(this).find('[data-sv-searchBtn]').click(function(){ form.submit(); }) }); }); </script></div> </div> </div> <div class="nav-toggle" data-toggle-mobilenav> <i class="fas fa-bars open"></i> <i class="fas fa-times close"></i> <div class="menu-text">MENU</div> </div> </div> <div class="mobile-dd "> <div class="mobile-dd-top"> <div data-search-cont></div> <div data-trip-builder></div> <div data-weather-cont></div> </div> <div class="nav-cont"> <div class="mobile-main-nav"><div data-civid="659438b7f4ba65599f04b5ad" class="contentRender contentRender_6 contentRender_type_widget contentRender_name_plugins_nav_main_primary20" data-sv-time="51" data-sv-index="6" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="nav-container" data-guid="751abfaa-b88e-43eb-8b14-a570f0a87490" data-gtm-vars='{"tClient_ga4": {"eventName": "navigation_click", "navType": "Main", "interactionSource": "navigation"}}' > <noscript class="permanently-hidden"> <nav> <a href="/events/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Events", "interactionUrl": "%2Fevents%2F", "interactionText": "Events"}}' >Events</a> <a href="/events/festivals-and-fairs/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Festivals%20and%20Fairs", "interactionUrl": "%2Fevents%2Ffestivals-and-fairs%2F", "interactionText": "Festivals%20and%20Fairs"}}' >Festivals and Fairs</a> <a href="/events/concerts-and-live-music/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Concerts%20%26%20Live%20Music", "interactionUrl": "%2Fevents%2Fconcerts-and-live-music%2F", "interactionText": "Concerts%20%26%20Live%20Music"}}' >Concerts & Live Music</a> <a href="/events/farmers-markets/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Farmers%27%20Markets", "interactionUrl": "%2Fevents%2Ffarmers-markets%2F", "interactionText": "Farmers%27%20Markets"}}' >Farmers' Markets</a> <a href="/events/farmers-markets/saturday-on-the-square/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Saturday%20on%20the%20Square", "interactionUrl": "%2Fevents%2Ffarmers-markets%2Fsaturday-on-the-square%2F", "interactionText": "Saturday%20on%20the%20Square"}}' >Saturday on the Square</a> <a href="/events/theater-and-performing-arts/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Theater%20%26%20Performing%20Arts", "interactionUrl": "%2Fevents%2Ftheater-and-performing-arts%2F", "interactionText": "Theater%20%26%20Performing%20Arts"}}' >Theater & Performing Arts</a> <a href="/events/submit-your-event/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Submit%20Your%20Event", "interactionUrl": "%2Fevents%2Fsubmit-your-event%2F", "interactionText": "Submit%20Your%20Event"}}' >Submit Your Event</a> <a href="/events/this-weekend/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "This%20Weekend", "interactionUrl": "%2Fevents%2Fthis-weekend%2F", "interactionText": "This%20Weekend"}}' >This Weekend</a> <a href="/things-to-do/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Things%20to%20Do", "interactionUrl": "%2Fthings-to-do%2F", "interactionText": "Things%20to%20Do"}}' >Things to Do</a> <a href="https://www.visitmadison.com/blog/stories/post/frozen-festivals-worth-a-trip-to-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Four%20Weekends%20of%20Frozen%20Fun", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Ffrozen-festivals-worth-a-trip-to-madison%2F", "interactionText": "Four%20Weekends%20of%20Frozen%20Fun"}}' >Four Weekends of Frozen Fun</a> <a href="https://www.visitmadison.com/blog/stories/post/how-to-get-on-madison-frozen-lakes/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Enjoy%20Frozen%20Lakes", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fhow-to-get-on-madison-frozen-lakes%2F", "interactionText": "Enjoy%20Frozen%20Lakes"}}' >Enjoy Frozen Lakes</a> <a href="https://www.visitmadison.com/blog/stories/post/6-snowy-sports/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "6%20Snowy%20Sports%20to%20Try%20in%20Madison", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2F6-snowy-sports%2F", "interactionText": "6%20Snowy%20Sports%20to%20Try%20in%20Madison"}}' >6 Snowy Sports to Try in Madison</a> <a href="https://www.visitmadison.com/blog/stories/post/top-fall-color-spots/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Top%2010%20Spots%20for%20Fall%20Color", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Ftop-fall-color-spots%2F", "interactionText": "Top%2010%20Spots%20for%20Fall%20Color"}}' >Top 10 Spots for Fall Color</a> <a href="https://www.visitmadison.com/blog/stories/post/farms-for-fall-fun-in-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Fall%20Farms", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Ffarms-for-fall-fun-in-madison%2F", "interactionText": "Fall%20Farms"}}' >Fall Farms</a> <a href="https://www.visitmadison.com/blog/stories/post/badgers-fall-sports-guide/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Badger%20Fall%20Sports", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fbadgers-fall-sports-guide%2F", "interactionText": "Badger%20Fall%20Sports"}}' >Badger Fall Sports</a> <a href="https://www.visitmadison.com/blog/stories/post/summer-things-to-do-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "36%20Things%20to%20Do%20This%20Summer", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fsummer-things-to-do-madison%2F", "interactionText": "36%20Things%20to%20Do%20This%20Summer"}}' >36 Things to Do This Summer</a> <a href="https://www.visitmadison.com/blog/stories/post/6-ways-to-shop-like-a-local-at-the-dane-county-farmers-market/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Dane%20County%20Farmer%27s%20Market", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2F6-ways-to-shop-like-a-local-at-the-dane-county-farmers-market%2F", "interactionText": "Dane%20County%20Farmer%27s%20Market"}}' >Dane County Farmer's Market</a> <a href="/things-to-do/holidays/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Holidays", "interactionUrl": "%2Fthings-to-do%2Fholidays%2F", "interactionText": "Holidays"}}' >Holidays</a> <a href="https://www.visitmadison.com/blog/stories/post/madison-holiday-shopping-guide/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Very%20Merry%20Madison%20Gift%20Guide", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fmadison-holiday-shopping-guide%2F", "interactionText": "Very%20Merry%20Madison%20Gift%20Guide"}}' >Very Merry Madison Gift Guide</a> <a href="/things-to-do/holidays/very-merry-madison-gift-guide/shopping-pass/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Very%20Merry%20Madison%20Shopping%20Pass", "interactionUrl": "%2Fthings-to-do%2Fholidays%2Fvery-merry-madison-gift-guide%2Fshopping-pass%2F", "interactionText": "Very%20Merry%20Madison%20Shopping%20Pass"}}' >Very Merry Madison Shopping Pass</a> <a href="/things-to-do/holidays/very-merry-madison-gift-guide/giveaway/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Very%20Merry%20Madison%20Getaway%20Giveaway", "interactionUrl": "%2Fthings-to-do%2Fholidays%2Fvery-merry-madison-gift-guide%2Fgiveaway%2F", "interactionText": "Very%20Merry%20Madison%20Getaway%20Giveaway"}}' >Very Merry Madison Getaway Giveaway</a> <a href="https://www.visitmadison.com/blog/stories/post/madison-area-holiday-lights-tree-lighting-guide/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Holiday%20Lights%20and%20Trees%20Guide", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fmadison-area-holiday-lights-tree-lighting-guide%2F", "interactionText": "Holiday%20Lights%20and%20Trees%20Guide"}}' >Holiday Lights and Trees Guide</a> <a href="https://www.visitmadison.com/blog/stories/post/dining-in-domes/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Dining%20in%20Winter%20Domes", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fdining-in-domes%2F", "interactionText": "Dining%20in%20Winter%20Domes"}}' >Dining in Winter Domes</a> <a href="/things-to-do/outdoors-and-recreation/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Outdoors%20%26%20Recreation", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2F", "interactionText": "Outdoors%20%26%20Recreation"}}' >Outdoors & Recreation</a> <a href="/things-to-do/outdoors-and-recreation/on-the-lakes/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "On%20the%20Lakes", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fon-the-lakes%2F", "interactionText": "On%20the%20Lakes"}}' >On the Lakes</a> <a href="/things-to-do/outdoors-and-recreation/on-the-lakes/cruises-and-boat-rentals/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Cruises%20%26%20Boat%20Rentals", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fon-the-lakes%2Fcruises-and-boat-rentals%2F", "interactionText": "Cruises%20%26%20Boat%20Rentals"}}' >Cruises & Boat Rentals</a> <a href="/things-to-do/outdoors-and-recreation/on-the-lakes/lake-mendota/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Lake%20Mendota", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fon-the-lakes%2Flake-mendota%2F", "interactionText": "Lake%20Mendota"}}' >Lake Mendota</a> <a href="/things-to-do/outdoors-and-recreation/on-the-lakes/lake-monona/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Lake%20Monona", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fon-the-lakes%2Flake-monona%2F", "interactionText": "Lake%20Monona"}}' >Lake Monona</a> <a href="/things-to-do/outdoors-and-recreation/biking-and-hiking/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Biking%20%26%20Hiking", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fbiking-and-hiking%2F", "interactionText": "Biking%20%26%20Hiking"}}' >Biking & Hiking</a> <a href="/things-to-do/outdoors-and-recreation/biking-and-hiking/top-10-trails/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Top%2010%20Trails%20in%20Madison", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fbiking-and-hiking%2Ftop-10-trails%2F", "interactionText": "Top%2010%20Trails%20in%20Madison"}}' >Top 10 Trails in Madison</a> <a href="https://www.visitmadison.com/madison-by-bike/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Madison%20By%20Bike", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fmadison-by-bike%2F", "interactionText": "Madison%20By%20Bike"}}' >Madison By Bike</a> <a href="/things-to-do/outdoors-and-recreation/parks-and-beaches/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Parks%20%26%20Beaches", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fparks-and-beaches%2F", "interactionText": "Parks%20%26%20Beaches"}}' >Parks & Beaches</a> <a href="/things-to-do/outdoors-and-recreation/golf/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Golf", "interactionUrl": "%2Fthings-to-do%2Foutdoors-and-recreation%2Fgolf%2F", "interactionText": "Golf"}}' >Golf</a> <a href="https://www.visitmadison.com/arts-and-culture/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Arts%20%26%20Culture", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Farts-and-culture%2F", "interactionText": "Arts%20%26%20Culture"}}' >Arts & Culture</a> <a href="/things-to-do/arts-and-culture/museums-and-history/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Museums%20%26%20Galleries", "interactionUrl": "%2Fthings-to-do%2Farts-and-culture%2Fmuseums-and-history%2F", "interactionText": "Museums%20%26%20Galleries"}}' >Museums & Galleries</a> <a href="https://www.visitmadison.com/events/theater-and-performing-arts/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Performing%20Arts%20%26%20Theater", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fevents%2Ftheater-and-performing-arts%2F", "interactionText": "Performing%20Arts%20%26%20Theater"}}' >Performing Arts & Theater</a> <a href="https://www.visitmadison.com/blog/stories/post/frank-lloyd-wright-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Frank%20Lloyd%20Wright", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Ffrank-lloyd-wright-madison%2F", "interactionText": "Frank%20Lloyd%20Wright"}}' >Frank Lloyd Wright</a> <a href="/things-to-do/attractions/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Attractions", "interactionUrl": "%2Fthings-to-do%2Fattractions%2F", "interactionText": "Attractions"}}' >Attractions</a> <a href="/things-to-do/attractions/wisconsin-state-capitol/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Wisconsin%20State%20Capitol", "interactionUrl": "%2Fthings-to-do%2Fattractions%2Fwisconsin-state-capitol%2F", "interactionText": "Wisconsin%20State%20Capitol"}}' >Wisconsin State Capitol</a> <a href="/things-to-do/attractions/henry-vilas-zoo/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Henry%20Vilas%20Zoo", "interactionUrl": "%2Fthings-to-do%2Fattractions%2Fhenry-vilas-zoo%2F", "interactionText": "Henry%20Vilas%20Zoo"}}' >Henry Vilas Zoo</a> <a href="/things-to-do/attractions/cave-of-the-mounds/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Cave%20of%20the%20Mounds", "interactionUrl": "%2Fthings-to-do%2Fattractions%2Fcave-of-the-mounds%2F", "interactionText": "Cave%20of%20the%20Mounds"}}' >Cave of the Mounds</a> <a href="/things-to-do/attractions/olbrich-botanical-gardens/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Olbrich%20Botanical%20Gardens", "interactionUrl": "%2Fthings-to-do%2Fattractions%2Folbrich-botanical-gardens%2F", "interactionText": "Olbrich%20Botanical%20Gardens"}}' >Olbrich Botanical Gardens</a> <a href="/things-to-do/attractions/memorial-union-terrace/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Memorial%20Union%20Terrace", "interactionUrl": "%2Fthings-to-do%2Fattractions%2Fmemorial-union-terrace%2F", "interactionText": "Memorial%20Union%20Terrace"}}' >Memorial Union Terrace</a> <a href="https://www.visitmadison.com/events/food-events-and-tours/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Tours%20and%20Tastings", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fevents%2Ffood-events-and-tours%2F", "interactionText": "Tours%20and%20Tastings"}}' >Tours and Tastings</a> <a href="https://www.visitmadison.com/things-to-do/madison-experience-passes/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Madison%20Experience%20Passes", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fthings-to-do%2Fmadison-experience-passes%2F", "interactionText": "Madison%20Experience%20Passes"}}' >Madison Experience Passes</a> <a href="/things-to-do/bars-and-nightlife/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Bars%20%26%20Nightlife", "interactionUrl": "%2Fthings-to-do%2Fbars-and-nightlife%2F", "interactionText": "Bars%20%26%20Nightlife"}}' >Bars & Nightlife</a> <a href="/things-to-do/free-things-to-do/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Free%20Things%20to%20Do", "interactionUrl": "%2Fthings-to-do%2Ffree-things-to-do%2F", "interactionText": "Free%20Things%20to%20Do"}}' >Free Things to Do</a> <a href="/things-to-do/shopping/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Shopping", "interactionUrl": "%2Fthings-to-do%2Fshopping%2F", "interactionText": "Shopping"}}' >Shopping</a> <a href="/things-to-do/things-to-do-with-kids/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Things%20to%20Do%20With%20Kids", "interactionUrl": "%2Fthings-to-do%2Fthings-to-do-with-kids%2F", "interactionText": "Things%20to%20Do%20With%20Kids"}}' >Things to Do With Kids</a> <a href="/things-to-do/colleges-and-universities/university-of-wisconsin-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "University%20of%20Wisconsin-Madison", "interactionUrl": "%2Fthings-to-do%2Fcolleges-and-universities%2Funiversity-of-wisconsin-madison%2F", "interactionText": "University%20of%20Wisconsin-Madison"}}' >University of Wisconsin-Madison</a> <a href="/things-to-do/voluntourism/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Voluntourism", "interactionUrl": "%2Fthings-to-do%2Fvoluntourism%2F", "interactionText": "Voluntourism"}}' >Voluntourism</a> <a href="https://www.visitmadison.com/blog/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Blog", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2F", "interactionText": "Blog"}}' >Blog</a> <a href="/downtown/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Downtown", "interactionUrl": "%2Fdowntown%2F", "interactionText": "Downtown"}}' >Downtown</a> <a href="/downtown/events/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Downtown%20Events", "interactionUrl": "%2Fdowntown%2Fevents%2F", "interactionText": "Downtown%20Events"}}' >Downtown Events</a> <a href="/downtown/events/annual/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Annual%20Events%20in%20Downtown%20Madison", "interactionUrl": "%2Fdowntown%2Fevents%2Fannual%2F", "interactionText": "Annual%20Events%20in%20Downtown%20Madison"}}' >Annual Events in Downtown Madison</a> <a href="/downtown/restaurants/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Restaurants", "interactionUrl": "%2Fdowntown%2Frestaurants%2F", "interactionText": "Restaurants"}}' >Restaurants</a> <a href="/downtown/bars-and-nightlife/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Bars%20%26%20Nightlife", "interactionUrl": "%2Fdowntown%2Fbars-and-nightlife%2F", "interactionText": "Bars%20%26%20Nightlife"}}' >Bars & Nightlife</a> <a href="/downtown/shop/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Shopping", "interactionUrl": "%2Fdowntown%2Fshop%2F", "interactionText": "Shopping"}}' >Shopping</a> <a href="/downtown/hotels/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Hotels", "interactionUrl": "%2Fdowntown%2Fhotels%2F", "interactionText": "Hotels"}}' >Hotels</a> <a href="/restaurants/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Restaurants", "interactionUrl": "%2Frestaurants%2F", "interactionText": "Restaurants"}}' >Restaurants</a> <a href="/restaurants/farm-to-table/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Farm%20to%20Table", "interactionUrl": "%2Frestaurants%2Ffarm-to-table%2F", "interactionText": "Farm%20to%20Table"}}' >Farm to Table</a> <a href="/restaurants/on-the-waterfront/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "On%20the%20Waterfront", "interactionUrl": "%2Frestaurants%2Fon-the-waterfront%2F", "interactionText": "On%20the%20Waterfront"}}' >On the Waterfront</a> <a href="/restaurants/outdoor-dining/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Outdoor%20Dining", "interactionUrl": "%2Frestaurants%2Foutdoor-dining%2F", "interactionText": "Outdoor%20Dining"}}' >Outdoor Dining</a> <a href="/restaurants/wisconsin-culinary-experience/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Wisconsin%20Culinary%20Experience", "interactionUrl": "%2Frestaurants%2Fwisconsin-culinary-experience%2F", "interactionText": "Wisconsin%20Culinary%20Experience"}}' >Wisconsin Culinary Experience</a> <a href="https://www.visitmadison.com/blog/stories/post/elevated-supper-clubs/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Elevated%20Supper%20Clubs", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Felevated-supper-clubs%2F", "interactionText": "Elevated%20Supper%20Clubs"}}' >Elevated Supper Clubs</a> <a href="https://www.visitmadison.com/blog/stories/post/taliesin-culinary-history/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Taliesin%27s%20Culinary%20Story", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Ftaliesin-culinary-history%2F", "interactionText": "Taliesin%27s%20Culinary%20Story"}}' >Taliesin's Culinary Story</a> <a href="https://www.visitmadison.com/blog/stories/post/carson-gulley-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Carson%20Gulley%27s%20Legacy", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2Fstories%2Fpost%2Fcarson-gulley-madison%2F", "interactionText": "Carson%20Gulley%27s%20Legacy"}}' >Carson Gulley's Legacy</a> <a href="/restaurants/breweries/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Breweries%20%26%20Cideries", "interactionUrl": "%2Frestaurants%2Fbreweries%2F", "interactionText": "Breweries%20%26%20Cideries"}}' >Breweries & Cideries</a> <a href="https://www.visitmadison.com/madison-on-tap/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Madison%20On%20Tap", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fmadison-on-tap%2F", "interactionText": "Madison%20On%20Tap"}}' >Madison On Tap</a> <a href="/restaurants/wineries-and-distilleries/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Wineries%20%26%20Distilleries", "interactionUrl": "%2Frestaurants%2Fwineries-and-distilleries%2F", "interactionText": "Wineries%20%26%20Distilleries"}}' >Wineries & Distilleries</a> <a href="/restaurants/vegan-and-vegetarian/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Vegan%20%26%20Vegetarian", "interactionUrl": "%2Frestaurants%2Fvegan-and-vegetarian%2F", "interactionText": "Vegan%20%26%20Vegetarian"}}' >Vegan & Vegetarian</a> <a href="/plan/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Plan", "interactionUrl": "%2Fplan%2F", "interactionText": "Plan"}}' >Plan</a> <a href="/plan/itinerary-ideas/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Itinerary%20Ideas", "interactionUrl": "%2Fplan%2Fitinerary-ideas%2F", "interactionText": "Itinerary%20Ideas"}}' >Itinerary Ideas</a> <a href="/plan/visitors-guide/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Visitors%20Guide", "interactionUrl": "%2Fplan%2Fvisitors-guide%2F", "interactionText": "Visitors%20Guide"}}' >Visitors Guide</a> <a href="/plan/visitors-guide/request-a-visitors-guide/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Request%20A%20Visitors%20Guide", "interactionUrl": "%2Fplan%2Fvisitors-guide%2Frequest-a-visitors-guide%2F", "interactionText": "Request%20A%20Visitors%20Guide"}}' >Request A Visitors Guide</a> <a href="/plan/visitor-faqs/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Ask%20Us%20Anything", "interactionUrl": "%2Fplan%2Fvisitor-faqs%2F", "interactionText": "Ask%20Us%20Anything"}}' >Ask Us Anything</a> <a href="/plan/deals-discounts/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Deals%20%26%20Discounts", "interactionUrl": "%2Fplan%2Fdeals-discounts%2F", "interactionText": "Deals%20%26%20Discounts"}}' >Deals & Discounts</a> <a href="/plan/maps-and-transportation/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Maps%20%26%20Transportation", "interactionUrl": "%2Fplan%2Fmaps-and-transportation%2F", "interactionText": "Maps%20%26%20Transportation"}}' >Maps & Transportation</a> <a href="/plan/maps-and-transportation/airport/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Dane%20County%20Regional%20Airport", "interactionUrl": "%2Fplan%2Fmaps-and-transportation%2Fairport%2F", "interactionText": "Dane%20County%20Regional%20Airport"}}' >Dane County Regional Airport</a> <a href="/plan/maps-and-transportation/bus-and-charter-companies/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Bus%20%26%20Charter%20Companies", "interactionUrl": "%2Fplan%2Fmaps-and-transportation%2Fbus-and-charter-companies%2F", "interactionText": "Bus%20%26%20Charter%20Companies"}}' >Bus & Charter Companies</a> <a href="/plan/maps-and-transportation/taxi-and-limo-companies/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Taxi%20%26%20Limo%20Companies", "interactionUrl": "%2Fplan%2Fmaps-and-transportation%2Ftaxi-and-limo-companies%2F", "interactionText": "Taxi%20%26%20Limo%20Companies"}}' >Taxi & Limo Companies</a> <a href="/plan/living-in-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Living%20in%20Madison", "interactionUrl": "%2Fplan%2Fliving-in-madison%2F", "interactionText": "Living%20in%20Madison"}}' >Living in Madison</a> <a href="/plan/living-in-madison/relocation/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Relocation", "interactionUrl": "%2Fplan%2Fliving-in-madison%2Frelocation%2F", "interactionText": "Relocation"}}' >Relocation</a> <a href="/plan/visitor-centers/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Visitor%20Centers", "interactionUrl": "%2Fplan%2Fvisitor-centers%2F", "interactionText": "Visitor%20Centers"}}' >Visitor Centers</a> <a href="/plan/newsletter-signup/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "ENewsletter%20Signup", "interactionUrl": "%2Fplan%2Fnewsletter-signup%2F", "interactionText": "ENewsletter%20Signup"}}' >ENewsletter Signup</a> <a href="/plan/accessibility/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Accessibility", "interactionUrl": "%2Fplan%2Faccessibility%2F", "interactionText": "Accessibility"}}' >Accessibility</a> <a href="/hotels/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Hotels", "interactionUrl": "%2Fhotels%2F", "interactionText": "Hotels"}}' >Hotels</a> <a href="/hotels/near-uw-madison/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Near%20UW-Madison", "interactionUrl": "%2Fhotels%2Fnear-uw-madison%2F", "interactionText": "Near%20UW-Madison"}}' >Near UW-Madison</a> <a href="/hotels/near-state-capitol/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Near%20State%20Capitol", "interactionUrl": "%2Fhotels%2Fnear-state-capitol%2F", "interactionText": "Near%20State%20Capitol"}}' >Near State Capitol</a> <a href="https://www.visitmadison.com/downtown/hotels/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Downtown%20Hotels", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fdowntown%2Fhotels%2F", "interactionText": "Downtown%20Hotels"}}' >Downtown Hotels</a> <a href="/hotels/pet-friendly/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Pet%20Friendly", "interactionUrl": "%2Fhotels%2Fpet-friendly%2F", "interactionText": "Pet%20Friendly"}}' >Pet Friendly</a> <a href="/hotels/camping-rv/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Camping%2FRV", "interactionUrl": "%2Fhotels%2Fcamping-rv%2F", "interactionText": "Camping%2FRV"}}' >Camping/RV</a> <a href="/hotels/bed-and-breakfasts/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Bed%20%26%20Breakfasts", "interactionUrl": "%2Fhotels%2Fbed-and-breakfasts%2F", "interactionText": "Bed%20%26%20Breakfasts"}}' >Bed & Breakfasts</a> <a href="/meetings/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Meetings", "interactionUrl": "%2Fmeetings%2F", "interactionText": "Meetings"}}' >Meetings</a> <a href="/meetings/submit-an-rfp/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Submit%20An%20RFP", "interactionUrl": "%2Fmeetings%2Fsubmit-an-rfp%2F", "interactionText": "Submit%20An%20RFP"}}' >Submit An RFP</a> <a href="/meetings/monona-terrace/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Monona%20Terrace", "interactionUrl": "%2Fmeetings%2Fmonona-terrace%2F", "interactionText": "Monona%20Terrace"}}' >Monona Terrace</a> <a href="/meetings/alliant-energy-center/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Alliant%20Energy%20Center", "interactionUrl": "%2Fmeetings%2Falliant-energy-center%2F", "interactionText": "Alliant%20Energy%20Center"}}' >Alliant Energy Center</a> <a href="/meetings/venue-search/unique-venues/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Unique%20Venues", "interactionUrl": "%2Fmeetings%2Fvenue-search%2Funique-venues%2F", "interactionText": "Unique%20Venues"}}' >Unique Venues</a> <a href="/meetings/planner-toolkit/attendance-building/promo-blurbs/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Promo%20Blurbs", "interactionUrl": "%2Fmeetings%2Fplanner-toolkit%2Fattendance-building%2Fpromo-blurbs%2F", "interactionText": "Promo%20Blurbs"}}' >Promo Blurbs</a> <a href="/meetings/planner-toolkit/attendance-building/social-media-starters/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Social%20Media%20Starters", "interactionUrl": "%2Fmeetings%2Fplanner-toolkit%2Fattendance-building%2Fsocial-media-starters%2F", "interactionText": "Social%20Media%20Starters"}}' >Social Media Starters</a> <a href="/masc/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Sports", "interactionUrl": "%2Fmasc%2F", "interactionText": "Sports"}}' >Sports</a> <a href="/masc/events/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Events", "interactionUrl": "%2Fmasc%2Fevents%2F", "interactionText": "Events"}}' >Events</a> <a href="/masc/events/madtown-pickleball-open/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Madtown%20Pickleball%20Open", "interactionUrl": "%2Fmasc%2Fevents%2Fmadtown-pickleball-open%2F", "interactionText": "Madtown%20Pickleball%20Open"}}' >Madtown Pickleball Open</a> <a href="/masc/events/ironman-wisconsin/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "IRONMAN%20Wisconsin", "interactionUrl": "%2Fmasc%2Fevents%2Fironman-wisconsin%2F", "interactionText": "IRONMAN%20Wisconsin"}}' >IRONMAN Wisconsin</a> <a href="/masc/events/ironman-wisconsin/spots-to-watch/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Spots%20to%20Watch", "interactionUrl": "%2Fmasc%2Fevents%2Fironman-wisconsin%2Fspots-to-watch%2F", "interactionText": "Spots%20to%20Watch"}}' >Spots to Watch</a> <a href="/masc/events/ironman-wisconsin/parking-and-shuttles/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Parking%20and%20Shuttles", "interactionUrl": "%2Fmasc%2Fevents%2Fironman-wisconsin%2Fparking-and-shuttles%2F", "interactionText": "Parking%20and%20Shuttles"}}' >Parking and Shuttles</a> <a href="/masc/events/ironman-wisconsin/volunteer/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Volunteer", "interactionUrl": "%2Fmasc%2Fevents%2Fironman-wisconsin%2Fvolunteer%2F", "interactionText": "Volunteer"}}' >Volunteer</a> <a href="/masc/events/ironkids-fun-run/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Ironkids%20Fun%20Run", "interactionUrl": "%2Fmasc%2Fevents%2Fironkids-fun-run%2F", "interactionText": "Ironkids%20Fun%20Run"}}' >Ironkids Fun Run</a> <a href="/masc/events/wiaa/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "WIAA", "interactionUrl": "%2Fmasc%2Fevents%2Fwiaa%2F", "interactionText": "WIAA"}}' >WIAA</a> <a href="/masc/events/good-morning-sports/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Good%20Morning%20Sports", "interactionUrl": "%2Fmasc%2Fevents%2Fgood-morning-sports%2F", "interactionText": "Good%20Morning%20Sports"}}' >Good Morning Sports</a> <a href="/masc/venues/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Venues", "interactionUrl": "%2Fmasc%2Fvenues%2F", "interactionText": "Venues"}}' >Venues</a> <a href="/masc/youth-grant/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Youth%20Grant", "interactionUrl": "%2Fmasc%2Fyouth-grant%2F", "interactionText": "Youth%20Grant"}}' >Youth Grant</a> <a href="/masc/youth-grant/faqs/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "FAQs", "interactionUrl": "%2Fmasc%2Fyouth-grant%2Ffaqs%2F", "interactionText": "FAQs"}}' >FAQs</a> <a href="/masc/youth-grant/winner-stories/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Youth%20Grant%20Winner%20Stories", "interactionUrl": "%2Fmasc%2Fyouth-grant%2Fwinner-stories%2F", "interactionText": "Youth%20Grant%20Winner%20Stories"}}' >Youth Grant Winner Stories</a> <a href="/masc/board-of-directors/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Board%20of%20Directors", "interactionUrl": "%2Fmasc%2Fboard-of-directors%2F", "interactionText": "Board%20of%20Directors"}}' >Board of Directors</a> <a href="/masc/e-newsletters/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "E-Newsletters", "interactionUrl": "%2Fmasc%2Fe-newsletters%2F", "interactionText": "E-Newsletters"}}' >E-Newsletters</a> </nav> </noscript> <nav class="navigation primary" data-primary-nav> <script type="text/template" data-nav-item-template>{{+linkTracking}} data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "{{%data.title}}", "interactionSource": "navigation", "interactionUrl": "{{%%href}}", "interactionText": "{{%%data.title}}"}}' {{/}} {{+nav_items}} {{+nav_items_helper}} {{!-- This nested partial is necessary to make this partial recursive because helpers.partial only outputs the inner text of the partial, not the partial name. Please do not remove! --}} {{#shownchildren}} <div class="nav-item" data-id="{{data.id}}" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="{{href}}" target="{{target}}" title="{{%data.title}}" {{>linkTracking}} > {{data.title}} </a> {{:shownchildren}} <button id="{{data.id}}" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> {{/}} </div> {{:shownchildren}} <div class="dropdown-menu {{:isLazyLoaded}} {{:shownChildren.0}}rendered{{/}} {{/}}" aria-labelledby="{{data.id}}" data-start="{{data.folderHref}}" data-section="{{data.section}}" data-dropdown-menu style="display: none" > {{:isLazyLoaded}} {{>nav_items_helper}} {{/}} </div> {{/}} </div> {{/}} {{/}} {{>nav_items_helper}} {{/}} {{>nav_items}}</script> <div class="nav-item" data-id="5e4700e5bce60830cc8fd16e" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/events/" target="_self" title="Events" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Events", "interactionSource": "navigation", "interactionUrl": "%2Fevents%2F", "interactionText": "Events"}}' > Events </a> <button id="5e4700e5bce60830cc8fd16e" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e4700e5bce60830cc8fd16e" data-start="/events/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e4700f1bce60830cc8fd175" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/things-to-do/" target="_self" title="Things to Do" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Things to Do", "interactionSource": "navigation", "interactionUrl": "%2Fthings-to-do%2F", "interactionText": "Things%20to%20Do"}}' > Things to Do </a> <button id="5e4700f1bce60830cc8fd175" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e4700f1bce60830cc8fd175" data-start="/things-to-do/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e6fc41e48fa1435840c553f" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="https://www.visitmadison.com/blog/" target="_self" title="Blog" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Blog", "interactionSource": "navigation", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fblog%2F", "interactionText": "Blog"}}' > Blog </a> </div> </div> <div class="nav-item" data-id="6074b1e01c100866eb927bf4" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/downtown/" target="_self" title="Downtown" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Downtown", "interactionSource": "navigation", "interactionUrl": "%2Fdowntown%2F", "interactionText": "Downtown"}}' > Downtown </a> <button id="6074b1e01c100866eb927bf4" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="6074b1e01c100866eb927bf4" data-start="/downtown/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e470105bce60830cc8fd180" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/restaurants/" target="_self" title="Restaurants" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Restaurants", "interactionSource": "navigation", "interactionUrl": "%2Frestaurants%2F", "interactionText": "Restaurants"}}' > Restaurants </a> <button id="5e470105bce60830cc8fd180" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e470105bce60830cc8fd180" data-start="/restaurants/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e47010ebce60830cc8fd187" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/plan/" target="_self" title="Plan" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Plan", "interactionSource": "navigation", "interactionUrl": "%2Fplan%2F", "interactionText": "Plan"}}' > Plan </a> <button id="5e47010ebce60830cc8fd187" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e47010ebce60830cc8fd187" data-start="/plan/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e4700fbbce60830cc8fd17a" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/hotels/" target="_self" title="Hotels" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Hotels", "interactionSource": "navigation", "interactionUrl": "%2Fhotels%2F", "interactionText": "Hotels"}}' > Hotels </a> <button id="5e4700fbbce60830cc8fd17a" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e4700fbbce60830cc8fd17a" data-start="/hotels/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e470162bce60830cc8fd1eb" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/meetings/" target="_self" title="Meetings" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Meetings", "interactionSource": "navigation", "interactionUrl": "%2Fmeetings%2F", "interactionText": "Meetings"}}' > Meetings </a> <button id="5e470162bce60830cc8fd1eb" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e470162bce60830cc8fd1eb" data-start="/meetings/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="65cf858721a80847985aaa2e" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/masc/" target="_self" title="Sports" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Sports", "interactionSource": "navigation", "interactionUrl": "%2Fmasc%2F", "interactionText": "Sports"}}' > Sports </a> <button id="65cf858721a80847985aaa2e" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="65cf858721a80847985aaa2e" data-start="/masc/" data-section="main" data-dropdown-menu style="display: none" > </div> </div> </nav> </div> <script> require([ 'jquery', 'plugins_nav_custom_nav_mobile', ], function($, navMobile) { var root = $('[data-guid="751abfaa-b88e-43eb-8b14-a570f0a87490"]'); navMobile.init(root, '[data-primary-nav]', '[data-main-nav-cont]'); }); </script></div></div> <div class="mobile-secondary-nav"><div data-civid="659438b7f4ba65599f04b5af" class="contentRender contentRender_7 contentRender_type_widget contentRender_name_plugins_nav_secondary_primary20" data-sv-time="62" data-sv-index="7" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="nav-container secondary" data-guid="1cb83d3a-74a0-41e6-8ba9-238992bcf857" data-gtm-vars='{"tClient_ga4": {"eventName": "navigation_click", "navType": "Secondary", "interactionSource": "navigation"}}' > <noscript class="permanently-hidden"> <nav> <a href="/about-us/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "About", "interactionUrl": "%2Fabout-us%2F", "interactionText": "About"}}' >About</a> <a href="/about-us/our-team/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Our%20Team", "interactionUrl": "%2Fabout-us%2Four-team%2F", "interactionText": "Our%20Team"}}' >Our Team</a> <a href="https://www.visitmadison.com/jobs/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Job%20Openings", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fjobs%2F", "interactionText": "Job%20Openings"}}' >Job Openings</a> <a href="/about-us/get-connected/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Connect%20with%20Us", "interactionUrl": "%2Fabout-us%2Fget-connected%2F", "interactionText": "Connect%20with%20Us"}}' >Connect with Us</a> <a href="/about-us/get-connected/photo-shoot-volunteer-sign-up/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Photo%20Shoot%20Volunteer%20Sign%20Up", "interactionUrl": "%2Fabout-us%2Fget-connected%2Fphoto-shoot-volunteer-sign-up%2F", "interactionText": "Photo%20Shoot%20Volunteer%20Sign%20Up"}}' >Photo Shoot Volunteer Sign Up</a> <a href="/about-us/board-of-directors/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Board%20of%20Directors", "interactionUrl": "%2Fabout-us%2Fboard-of-directors%2F", "interactionText": "Board%20of%20Directors"}}' >Board of Directors</a> <a href="/about-us/destination-madison-foundation/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Destination%20Madison%20Foundation", "interactionUrl": "%2Fabout-us%2Fdestination-madison-foundation%2F", "interactionText": "Destination%20Madison%20Foundation"}}' >Destination Madison Foundation</a> <a href="/about-us/destination-madison-foundation/board-of-trustees/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Board%20of%20Trustees", "interactionUrl": "%2Fabout-us%2Fdestination-madison-foundation%2Fboard-of-trustees%2F", "interactionText": "Board%20of%20Trustees"}}' >Board of Trustees</a> <a href="https://www.visitmadison.com/contact/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Contact%20Us", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fcontact%2F", "interactionText": "Contact%20Us"}}' >Contact Us</a> <a href="/partners/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Partners", "interactionUrl": "%2Fpartners%2F", "interactionText": "Partners"}}' >Partners</a> <a href="/partners/hospitality-businesses/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Hospitality%20Businesses", "interactionUrl": "%2Fpartners%2Fhospitality-businesses%2F", "interactionText": "Hospitality%20Businesses"}}' >Hospitality Businesses</a> <a href="/partners/corporate-businesses/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Corporate%20Businesses", "interactionUrl": "%2Fpartners%2Fcorporate-businesses%2F", "interactionText": "Corporate%20Businesses"}}' >Corporate Businesses</a> <a href="https://madison.extranet.simpleviewcrm.com/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Partner%20Login", "interactionUrl": "https%3A%2F%2Fmadison.extranet.simpleviewcrm.com%2F", "interactionText": "Partner%20Login"}}' >Partner Login</a> <a href="/partners/partner-programs-and-events/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Partner%20Programs%20%26%20Events", "interactionUrl": "%2Fpartners%2Fpartner-programs-and-events%2F", "interactionText": "Partner%20Programs%20%26%20Events"}}' >Partner Programs & Events</a> <a href="/partners/partner-programs-and-events/destination-madison-awards/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Destination%20Madison%20Awards", "interactionUrl": "%2Fpartners%2Fpartner-programs-and-events%2Fdestination-madison-awards%2F", "interactionText": "Destination%20Madison%20Awards"}}' >Destination Madison Awards</a> <a href="/partners/partner-programs-and-events/destination-madison-awards/dma-past-recipients/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Destination%20Madison%20Awards%20-%20Past%20Recipients", "interactionUrl": "%2Fpartners%2Fpartner-programs-and-events%2Fdestination-madison-awards%2Fdma-past-recipients%2F", "interactionText": "Destination%20Madison%20Awards%20-%20Past%20Recipients"}}' >Destination Madison Awards - Past Recipients</a> <a href="/partners/partner-programs-and-events/summer-summit-dmas/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Summer%20Summit%20%2B%20Destination%20Madison%20Awards", "interactionUrl": "%2Fpartners%2Fpartner-programs-and-events%2Fsummer-summit-dmas%2F", "interactionText": "Summer%20Summit%20%2B%20Destination%20Madison%20Awards"}}' >Summer Summit + Destination Madison Awards</a> <a href="/partners/partner-programs-and-events/hospitableme-everyone-welcome/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Everyone%20Welcome", "interactionUrl": "%2Fpartners%2Fpartner-programs-and-events%2Fhospitableme-everyone-welcome%2F", "interactionText": "Everyone%20Welcome"}}' >Everyone Welcome</a> <a href="/partners/meeting-space/success/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Success", "interactionUrl": "%2Fpartners%2Fmeeting-space%2Fsuccess%2F", "interactionText": "Success"}}' >Success</a> <a href="/media/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Media", "interactionUrl": "%2Fmedia%2F", "interactionText": "Media"}}' >Media</a> <a href="/media/rankings/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Rankings", "interactionUrl": "%2Fmedia%2Frankings%2F", "interactionText": "Rankings"}}' >Rankings</a> <a href="/media/in-the-news/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Madison%20in%20the%20Media", "interactionUrl": "%2Fmedia%2Fin-the-news%2F", "interactionText": "Madison%20in%20the%20Media"}}' >Madison in the Media</a> <a href="/hospitality-job-board/" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Hospitality%20Job%20Board", "interactionUrl": "%2Fhospitality-job-board%2F", "interactionText": "Hospitality%20Job%20Board"}}' >Hospitality Job Board</a> </nav> </noscript> <nav class="navigation secondary" data-secondary-nav> <script type="text/template" data-nav-item-template>{{+linkTracking}} data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "{{%data.title}}", "interactionSource": "navigation", "interactionUrl": "{{%%href}}", "interactionText": "{{%%data.title}}"}}' {{/}} {{+nav_items}} {{+nav_items_helper}} {{!-- This nested partial is necessary to make this partial recursive because helpers.partial only outputs the inner text of the partial, not the partial name. Please do not remove! --}} {{#shownchildren}} <div class="nav-item" data-id="{{data.id}}" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="{{href}}" target="{{target}}" title="{{%data.title}}" {{>linkTracking}} > {{data.title}} </a> {{:shownchildren}} <button id="{{data.id}}" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> {{/}} </div> {{:shownchildren}} <div class="dropdown-menu {{:isLazyLoaded}} {{:shownChildren.0}}rendered{{/}} {{/}}" aria-labelledby="{{data.id}}" data-start="{{data.folderHref}}" data-section="{{data.section}}" data-dropdown-menu style="display: none" > {{:isLazyLoaded}} {{>nav_items_helper}} {{/}} </div> {{/}} </div> {{/}} {{/}} {{>nav_items_helper}} {{/}} {{>nav_items}}</script> <div class="nav-item" data-id="5e4701f5bce60830cc8fd239" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/about-us/" target="_self" title="About" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "About", "interactionSource": "navigation", "interactionUrl": "%2Fabout-us%2F", "interactionText": "About"}}' > About </a> <button id="5e4701f5bce60830cc8fd239" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e4701f5bce60830cc8fd239" data-start="/about-us/" data-section="secondary" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e47017bbce60830cc8fd1fb" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/partners/" target="_self" title="Partners" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Partners", "interactionSource": "navigation", "interactionUrl": "%2Fpartners%2F", "interactionText": "Partners"}}' > Partners </a> <button id="5e47017bbce60830cc8fd1fb" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e47017bbce60830cc8fd1fb" data-start="/partners/" data-section="secondary" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="5e470173bce60830cc8fd1f6" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/media/" target="_self" title="Media" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Media", "interactionSource": "navigation", "interactionUrl": "%2Fmedia%2F", "interactionText": "Media"}}' > Media </a> <button id="5e470173bce60830cc8fd1f6" class="dropdown-toggle" aria-label="open submenu" aria-haspopup="true" aria-expanded="false" data-dropdown-toggle > <i class="icon-toggle open fas fa-plus" aria-hidden="true"></i> <i class="icon-toggle close fas fa-minus" aria-hidden="true"></i> </button> </div> <div class="dropdown-menu " aria-labelledby="5e470173bce60830cc8fd1f6" data-start="/media/" data-section="secondary" data-dropdown-menu style="display: none" > </div> </div> <div class="nav-item" data-id="65c2b4589db61e2c9891c71a" data-nav-item> <div class="nav-item-control"> <a class="nav-link" href="/hospitality-job-board/" target="_self" title="Hospitality Job Board" data-gtm-click data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "linkObject": "Hospitality Job Board", "interactionSource": "navigation", "interactionUrl": "%2Fhospitality-job-board%2F", "interactionText": "Hospitality%20Job%20Board"}}' > Hospitality Job Board </a> </div> </div> </nav> </div> <script> require([ 'jquery', 'plugins_nav_custom_nav_mobile', ], function($, navMobile) { var root = $('[data-guid="1cb83d3a-74a0-41e6-8ba9-238992bcf857"]'); navMobile.init(root, '[data-secondary-nav]', '[data-secondary-nav-cont]'); }); </script></div></div> </div> <div class="visitors-guide-cont"><div data-civid="659438b7f4ba65599f04b5b1" class="contentRender contentRender_8 contentRender_type_widget contentRender_name_plugins_common_visitors_guide" data-sv-time="42" data-sv-index="8" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <a href="https://www.visitmadison.com/plan/visitors-guide/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Navigation Callout", "linkObject": "Visitors Guide | With%20Love%2C%20Madison", "interactionSource": "widget", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fplan%2Fvisitors-guide%2F", "interactionText": "With%20Love%2C%20Madison" } }'> <div class="visitors-guide has-image" data-guid="5b0da32c-6976-40dc-88f6-3d20d35bee75"> <div class="content-section"> <h4>Free Inspiration Guide</h4> <p>With Love, Madison<i class="fas fa-chevron-right"></i></p> </div> <div class="img-cont"> <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,f_jpg,h_196,q_65,w_158/v1/clients/madison/Cover_a99f2746-61b2-41d9-b3f3-9b344e709e5d.jpg" alt="The cover of "With Love, Madison" featuring three people biking in front of the Capitol. Two of the people are holding hands while biking."> </div> <div class="waves"> <img src="/includes/public/assets/shared/waves.svg" alt="visual decoration"> </div> </div> </a></div></div> <div class="enews-cont"><div data-civid="659438b7f4ba65599f04b5b3" class="contentRender contentRender_9 contentRender_type_widget contentRender_name_plugins_common_enews" data-sv-time="41" data-sv-index="9" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <a href="https://www.visitmadison.com/plan/newsletter-signup/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Navigation Callout", "linkObject": "E-Newsletter | Sign%20up%20for%20seasonal%20emails", "interactionSource": "widget", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fplan%2Fnewsletter-signup%2F", "interactionText": "Sign up for seasonal emails" } }'> <div class="enews" data-guid="5c2d2a5e-48f1-4fe2-9d2c-f74fcfed4197"> <div class="img-cont"> <img src="/includes/public/assets/shared/M.svg"> </div> <div class="content-section"> <h4>Inspire Your Inbox</h4> <p>Sign up for seasonal emails<i class="fas fa-chevron-right"></i></p> </div> </div> </a></div></div> <div class="featured-event-cont"><div data-civid="659438b7f4ba65599f04b5b5" class="contentRender contentRender_10 contentRender_type_widget contentRender_name_plugins_collections_type_custom_slides contentRender_name_plugins_collections_template_custom_featured_event_header" data-sv-time="73" data-sv-index="10" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="featured-event-header" data-guid="99ef6f2b-4912-4f5c-b3a0-a8f3212e337c" data-gtm-vars='{ "tClient_ga4" : { "widgetName" : "Featured Event Header", "itemType" : "slides", "interactionSource": "widget" } }' > <div class="cols" data-slides> <div class="slide"> <div class="inner" data-gtm-vars='{ "tClient_ga4" : { "interactionSource" : "widget" } }'> <div class="img-cont"> <a data-asset href="https://www.visitmadison.com/madison-on-tap/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "itemName" : "Madison%20On%20Tap", "interactionUrl": "https://www.visitmadison.com/madison-on-tap/" } }'> <picture> <source media="screen and (min-width: 1024px)" srcset = "https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,g_xy_center,h_473,q_50,w_950,x_440,y_262/v1/clients/madison/Capitol_Brewing_2022_0021_2_9cd0da31-201a-4d4f-ac3e-104c45a3b644.jpg"/> <source media="screen and (min-width: 640px)" srcset = "https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,g_xy_center,h_200,q_50,w_1024,x_440,y_262/v1/clients/madison/Capitol_Brewing_2022_0021_2_9cd0da31-201a-4d4f-ac3e-104c45a3b644.jpg"/> <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,f_jpg,g_xy_center,h_232,q_65,w_640,x_440,y_262/v1/clients/madison/Capitol_Brewing_2022_0021_2_9cd0da31-201a-4d4f-ac3e-104c45a3b644.jpg" alt="Two beers at a brewery in Madison, WI"/> </picture> </a> </div> <div class="content-section"> <h4><a href="https://www.visitmadison.com/madison-on-tap/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Title", "itemName" : "Madison%20On%20Tap", "interactionUrl": "https://www.visitmadison.com/madison-on-tap/", "interactionText" : "Madison%20On%20Tap" } }'>Madison On Tap</a></h4> <a class="read-more" href="https://www.visitmadison.com/madison-on-tap/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Sign%20Up%20Now", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fmadison-on-tap%2F", "interactionText" : "Sign Up Now" } }'>Sign Up Now <i class="fas fa-chevron-right"></i></a> </div> </div> </div> </div> </div> <script> require([ 'jquery', 'plugins_collections_custom_collection_helper', 'plugins_common_custom_quickview/site_quickview', ], function($, collectionHelper, quickview) { var root = $('[data-guid="99ef6f2b-4912-4f5c-b3a0-a8f3212e337c"]'); collectionHelper.init(root, function() { var buttons = root.find('[data-quickview-button]'); quickview.initButtons(buttons); }); }); </script> </div><div data-civid="659438b7f4ba65599f04b5b7" class="contentRender contentRender_11 contentRender_type_widget contentRender_name_plugins_collections_type_custom_slides contentRender_name_plugins_collections_template_custom_featured_event_header" data-sv-time="61" data-sv-index="11" data-gtm-vars='{ "tCore" : { "contentNum" : "2" } }'> <div class="featured-event-header" data-guid="99e462ac-1f9c-47aa-a4ff-6a7b442d47a4" data-gtm-vars='{ "tClient_ga4" : { "widgetName" : "Featured Event Header", "itemType" : "events", "interactionSource": "widget" } }' > <div class="cols" data-slides> <div class="slide"> <div class="inner" data-gtm-vars='{ "tClient_ga4" : { "interactionSource" : "widget", "itemCategory" : "Arts%20%26%20Culture", "itemCity" : "Fort%20Atkinson", "itemId" : "64233" } }'> <div class="img-cont"> <a data-asset href="/event/miracle-on-34th-street/64233/" target="" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "itemName" : "Miracle%20on%2034th%20Street", "interactionUrl": "/event/miracle-on-34th-street/64233/" } }'> <picture> <source media="screen and (min-width: 1024px)" srcset = "https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,h_473,q_50,w_950/v1/crm/madison/SeasonPosters2024_1280x810_MIRACLE_3D2E5736-5056-A36A-08365B76CE2F2BB3_3d2e934f-5056-a36a-08621b400b20a49a.jpg"/> <source media="screen and (min-width: 640px)" srcset = "https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,h_200,q_50,w_1024/v1/crm/madison/SeasonPosters2024_1280x810_MIRACLE_3D2E5736-5056-A36A-08365B76CE2F2BB3_3d2e934f-5056-a36a-08621b400b20a49a.jpg"/> <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,f_jpg,h_232,q_65,w_640/v1/crm/madison/SeasonPosters2024_1280x810_MIRACLE_3D2E5736-5056-A36A-08365B76CE2F2BB3_3d2e934f-5056-a36a-08621b400b20a49a.jpg" alt=""/> </picture> </a> </div> <div class="date-block"> <div class="month"><span class="text">November</span></div> <div class="day">30</div> </div> <div class="content-section"> <h4><a href="/event/miracle-on-34th-street/64233/" target="" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Title", "itemName" : "Miracle%20on%2034th%20Street", "interactionUrl": "/event/miracle-on-34th-street/64233/", "interactionText" : "Miracle%20on%2034th%20Street" } }'>Miracle on 34th Street</a></h4> <a class="read-more" href="/event/miracle-on-34th-street/64233/" target="" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Get%20Event%20Info", "interactionUrl": "%2Fevent%2Fmiracle-on-34th-street%2F64233%2F", "interactionText" : "Get Event Info" } }'>Get Event Info <i class="fas fa-chevron-right"></i></a> </div> </div> </div> </div> </div> <script> require([ 'jquery', 'plugins_collections_custom_collection_helper', 'plugins_common_custom_quickview/site_quickview', ], function($, collectionHelper, quickview) { var root = $('[data-guid="99e462ac-1f9c-47aa-a4ff-6a7b442d47a4"]'); collectionHelper.init(root, function() { var buttons = root.find('[data-quickview-button]'); quickview.initButtons(buttons); }); }); </script> </div></div> </div> </div> </div> </div> <script> require(["jquery"], function($) { var root = $("[data-guid='db81cac0-17a2-41b0-851e-442569c70df3']"); root.find("[data-toggle-search]").on("click", function() { $(this).closest("[data-search-container]").toggleClass("active"); if ($(this).closest("[data-search-container]").hasClass("active")) { root.find("[data-sv-searchinput]").focus(); } }); $(window).on("click", function(event) { if ($(event.target).closest('[data-search-container]').length === 0) { root.find("[data-search-container]").removeClass("active"); } }); var toggleScroll = function() { if (root.find('.mobile-nav').hasClass('active')) { $('html').addClass('noscroll'); } else { $('html').removeClass('noscroll'); } } root.find("[data-toggle-mobilenav]").on("click", function() { $(this).closest("[data-mobile-nav]").toggleClass("active"); toggleScroll(); }); // Function from David Walsh: http://davidwalsh.name/css-animation-callback function whichTransitionEvent(){ var t, el = document.createElement("fakeelement"); var transitions = { "transition" : "transitionend", "OTransition" : "oTransitionEnd", "MozTransition" : "transitionend", "WebkitTransition": "webkitTransitionEnd" } for (t in transitions){ if (el.style[t] !== undefined){ return transitions[t]; } } } var transitionEvent = whichTransitionEvent(); var states = ['top', 'slide-up', 'sticky-slide-left', 'sticky', 'sticky-slide-right', 'slide-down']; var timeouts = [300, 500, 150, 300, 700, 150]; var currentState = 0; var switchState = function(nextState, endState) { if (currentState !== endState) { currentState = nextState; setTimeout(function() { if (currentState === nextState) { //if current state and next state aren't equal, the animation was cancelled switchState((nextState + 1) % states.length, endState); } }, timeouts[currentState]); root.attr('data-animation-state', states[currentState]); } } var closeSearchAndWeather = function() { root.find('.search-cont').removeClass('active'); root.find('.weather-wrapper').removeClass('active'); root.find('.weather-dropdown-wrapper').removeClass('open'); } var callback = function(entries, observer) { if (window.innerWidth < 640) return; entries.forEach(function(entry) { closeSearchAndWeather(); if (entry.isIntersecting) { //at top of page if (currentState >= 3) { var endState = states.indexOf('top'); switchState((currentState + 1) % states.length, endState); } else if (currentState > 0) { //all user to cancel the sticky animation by scrolling up var endState = states.indexOf('top'); switchState((currentState - 1) % states.length, endState); } } else { //not at top of page var endState = states.indexOf('sticky'); switchState((currentState + 1) % states.length, endState); } }); } var target = $('#scroll-anchor')[0]; var observer = new IntersectionObserver(callback, {}); observer.observe(target); var loadThemeCSS = function(theme) { var link = document.createElement('link'); link.type = 'text/css'; link.rel = 'stylesheet'; link.href = '/includes/public/managed/core/plugins/common/virtuals/css/' + theme + '_theme.css'; $('head')[0].appendChild(link); }; var updateLogos = function() { var headerLogo = root.find('.logo img'); var footerLogo = $('.logo-footer img'); var taLogo = $('.footer-inner .trip-advisor img'); var taLink = $('.footer-inner .trip-advisor a'); headerLogo.attr('src', '/includes/public/assets/shared/sports-microsite-logo.svg'); footerLogo.attr('src', '/includes/public/assets/shared/sports-microsite-logo-white.svg'); taLogo.attr('src', '/includes/public/assets/shared/logo-footer.svg'); taLogo.addClass("ta-sports-fix") taLink.attr('href',"/") taLink.attr('target',"") } var theme = ""; if (theme !== undefined && theme !== '' && theme !== 'default_theme') { $('.root-panel').addClass(theme); loadThemeCSS(theme); if (theme === 'sports_microsite') { updateLogos(); } } }); </script></div> </div> <div id="slideshow-container" class="slideshow-container"> </div> <div id="main-content" class="content"> <div data-civid="646e2d0f799fe13dcad915af" class="contentRender contentRender_12 contentRender_type_widget contentRender_name_plugins_common_embed" data-sv-time="39" data-sv-index="12" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><div class="custom-embed" data-guid="16b4c172-0290-4404-9696-7d2efe20ca0e"> <script id="cr-init__f8d6b08ccda99212" src="https://starling.crowdriff.com/js/crowdriff.js" lang="en" async></script> </div></div><div data-civid="5e472356bce60830cc8fd483" class="contentRender contentRender_13 contentRender_type_panel contentRender_name_plugins_common_container_navigation_share" data-sv-time="0" data-sv-index="13" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><div class="panel-navigation-share"> <div class="navigation-container"> <div data-civid="5f29a8dcc74ee26ff388f58e" class="contentRender contentRender_14 contentRender_type_widget contentRender_name_plugins_nav_breadcrumb_primary20" data-sv-time="48" data-sv-index="14" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <nav class="nav-list" data-guid="7ee91b45-3881-4e1f-bd0b-bc4944d2552a" data-gtm-vars='{"tClient_ga4" : {"eventName" : "navigation_click", "navType": "Breadcrumb", "interactionSource": "navigation"}}' > <ul class="interior-nav"> <li class="item" data-id=""> <a href="/" target="" title="" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Home", "interactionUrl": "/", "interactionText": "Home"}}' > Home <span class="vertical-line">|</span> </a> </li> </ul> </nav> </div> </div> <div class="share-container"> <div data-civid="5f29a8dcc74ee26ff388f590" class="contentRender contentRender_15 contentRender_type_widget contentRender_name_plugins_common_social_share" data-sv-time="38" data-sv-index="15" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="sv-share" data-guid="bffe4470-1d70-46bf-8d6c-94fae64b520d" data-gtm-vars='{ "tClient_ga4" : { "eventName" : "widget_interaction", "widgetName" : "Social Share", "interactionSource": "widget" } }'> <div class="sv-share-button-wrapper"> <button class="sv-share-trigger" type="button" aria-expanded="false" aria-label="show share links" aria-controls="share-popover"> <i class="sv-share-trigger-icon fas fa-share-square"></i> <span>Share</span> </button> <ul id="share-popover" class="sv-share-popover"> <div data-sv-social-share></div> </ul> </div> </div> <script type="text/template" data-social-share-template> {{#items}} <li class="sv-share-service-email"> <!-- Email --> <a href="mailto:?subject={{%%title}}&body={{%%url}}" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Email", "interactionUrl": "mailto:?subject={{%%title}}&body={{%%url}}", "interactionText" : "Email" } }'> <i class="sv-share-service-icon fas fa-envelope" aria-hidden="true"></i> <span>Email</span> </a> </li> <li class="sv-share-service-twitter"> <!-- Twitter --> <a href="https://twitter.com/share?url={{url}}&text={{%%title}}" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Twitter", "interactionUrl": "https://twitter.com/share?url={{%%url}}&text={{%%title}}", "interactionText" : "Twitter" } }'> <i class="sv-share-service-icon fab fa-twitter" aria-hidden="true"></i> <span>Twitter</span> </a> </li> <li class="sv-share-service-facebook"> <!-- Facebook --> <a href="https://www.facebook.com/sharer/sharer.php?u={{url}}" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Facebook", "interactionUrl": "https://www.facebook.com/sharer/sharer.php?u={{%%url}}", "interactionText" : "Facebook" } }'> <i class="sv-share-service-icon fab fa-facebook" aria-hidden="true"></i> <span>Facebook</span> </a> </li> <li class="sv-share-service-linkedin"> <!-- LinkedIn --> <a href="https://www.linkedin.com/shareArticle?url={{url}}&title={{title}}" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Linkedin", "interactionUrl": "https://www.linkedin.com/shareArticle?url={{%%url}}&title={{%%title}}", "interactionText" : "LinkedIn" } }'> <i class="sv-share-service-icon fab fa-linkedin" aria-hidden="true"></i> <span>LinkedIn</span> </a> </li> <li class="sv-share-service-reddit"> <!-- Reddit --> <a href="https://reddit.com/submit?url={{url}}&title={{title}}" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Reddit", "interactionUrl": "https://reddit.com/submit?url={{%%url}}&title={{%%title}}", "interactionText" : "Reddit" } }'> <i class="sv-share-service-icon fab fa-reddit" aria-hidden="true"></i> <span>Reddit</span> </a> </li> {{/}} </script> <script> require(["plugins_common_custom_social_share"], function(socialShare) { const data = {"sections":{},"data":{},"guid":"bffe4470-1d70-46bf-8d6c-94fae64b520d","customSettings":{},"widgetArgs":{"nav":{"_id":"63c1ac3d2da75374fa3e6b20","sortorder":1,"title":"Connect with Us","folder":"get-connected","section":"secondary","type":"page","active":true,"show_on_nav":true,"publish_start":"2023-01-13T18:00:00.000Z","searchable":"yes","locale_code":"en-us","new_window":false,"image_id":"63c1a95d2da75374fa3e6a69","meta_title":"Get Connected With Destination Madison","meta_description":"Fall deeper in love with the capital city by connecting with Destination Madison from trade shows to TikToks and everything in between.","open_graph_title":"Get Connected With Destination Madison","open_graph_description":"Fall deeper in love with the capital city by connecting with Destination Madison from trade shows to TikToks and everything in between.","open_graph_image_id":"63c1a95d2da75374fa3e6a69","parent_id":"5e4701f5bce60830cc8fd239","parents_ids":["5e4701f5bce60830cc8fd239"],"version_id":"646e2d95799fe13dcad91616","created":"2023-01-13T19:08:45.631Z","content_owner":"default","site_name":"primary20","updated":"2023-05-24T15:30:29.585Z","title_sort":"connect with us","site_section":"primary20.secondary","published":true,"amp":false,"cms_title":"Connect with Us - /about-us/get-connected/","cms_title_sort":"connect with us - /about-us/get-connected/","folderHref":"/about-us/get-connected/","image":{"_id":"63c1a95d2da75374fa3e6a69","original_public_id":"clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36","title":"Dancing on State Street - DM Brand Shoot / SHINE","resource_raw":{"asset_id":"4ea17993bf7f19079593481e62ec902c","public_id":"clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36","version":1673635674,"version_id":"7c078a8408c60e4ea085c2326ebb3db6","signature":"fdab509c0979c7b2741f54620db4d60c73b1b82c","width":6720,"height":4480,"format":"jpg","resource_type":"image","created_at":"2023-01-13T18:47:54.000Z","pages":1,"bytes":17786185,"type":"upload","etag":"082673b3253fc2a0ba02bb254f7e6cff","placeholder":false,"url":"http://res.cloudinary.com/simpleview/image/upload/v1673635674/clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36.jpg","secure_url":"https://res.cloudinary.com/simpleview/image/upload/v1673635674/clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36.jpg","folder":"clients/madison","access_mode":"public","exif":{"ApertureValue":"1695994/1000000","Artist":"Rachel Hershberger ","BitsPerSample":"8, 8, 8","BodySerialNumber":"068022001970","ColorSpace":"1","Copyright":"Rachel Hershberger Photography LLC","CustomRendered":"0","DateTime":"2022:01:31 10:51:46","DateTimeDigitized":"2021:10:06 17:52:35","DateTimeOriginal":"2021:10:06 17:52:35","ExifOffset":"356","ExifVersion":"48, 50, 51, 49","ExposureBiasValue":"0/1","ExposureMode":"1","ExposureProgram":"1","ExposureTime":"1/1600","Flash":"0","FNumber":"18/10","FocalLength":"50/1","FocalPlaneResolutionUnit":"3","FocalPlaneXResolution":"61166933/32768","FocalPlaneYResolution":"61166933/32768","ImageLength":"4480","ImageWidth":"6720","LensModel":"RF50mm F1.2 L USM","LensSerialNumber":"8820000070","LensSpecification":"50/1, 50/1, 0/0, 0/0","Make":"Canon","MaxApertureValue":"625/1000","MeteringMode":"5","Model":"Canon EOS R","OffsetTime":"-04:00","OffsetTimeDigitized":"-05:00","OffsetTimeOriginal":"-05:00","Orientation":"1","PhotographicSensitivity":"400","PhotometricInterpretation":"2","PixelXDimension":"6720","PixelYDimension":"4480","RecommendedExposureIndex":"400","ResolutionUnit":"2","SamplesPerPixel":"3","SceneCaptureType":"0","SensitivityType":"2","ShutterSpeedValue":"10643856/1000000","Software":"Adobe Photoshop 23.1 (Macintosh)","SubSecTimeDigitized":"23","SubSecTimeOriginal":"23","Compression":"6","JPEGInterchangeFormat":"1090","JPEGInterchangeFormatLength":"8632","XResolution":"3000000/10000","YResolution":"3000000/10000","WhiteBalance":"1"},"original_filename":"file","api_key":"756897581616859","done":true},"alt_text_raw":"Two young Black girls, a Black woman, a Black man, and two other people dance on the street on a sunny day while a man plays guitar","focal_point":{"x":2934,"y":2643},"credits":"Rachel Hershberger","content_owner":"default","title_sort":"dancing on state street - dm brand shoot / shine","updated":"2023-01-13T18:56:29.313Z","private":false,"deleted":false,"created":"2023-01-13T18:56:29.314Z","resource":{"raw":{"resource_type":"image","format":"jpg","pages":1,"public_id":"clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36"},"focalPoint":{"x":2934,"y":2643}},"id":"63c1a95d2da75374fa3e6a69","type":"image","inAssetRequest":false,"alt_text":"Two young Black girls, a Black woman, a Black man, and two other people dance on the street on a sunny day while a man plays guitar","expired":false},"locale_count":0,"open_graph_image":{"_id":"63c1a95d2da75374fa3e6a69","original_public_id":"clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36","title":"Dancing on State Street - DM Brand Shoot / SHINE","resource_raw":{"asset_id":"4ea17993bf7f19079593481e62ec902c","public_id":"clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36","version":1673635674,"version_id":"7c078a8408c60e4ea085c2326ebb3db6","signature":"fdab509c0979c7b2741f54620db4d60c73b1b82c","width":6720,"height":4480,"format":"jpg","resource_type":"image","created_at":"2023-01-13T18:47:54.000Z","pages":1,"bytes":17786185,"type":"upload","etag":"082673b3253fc2a0ba02bb254f7e6cff","placeholder":false,"url":"http://res.cloudinary.com/simpleview/image/upload/v1673635674/clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36.jpg","secure_url":"https://res.cloudinary.com/simpleview/image/upload/v1673635674/clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36.jpg","folder":"clients/madison","access_mode":"public","exif":{"ApertureValue":"1695994/1000000","Artist":"Rachel Hershberger ","BitsPerSample":"8, 8, 8","BodySerialNumber":"068022001970","ColorSpace":"1","Copyright":"Rachel Hershberger Photography LLC","CustomRendered":"0","DateTime":"2022:01:31 10:51:46","DateTimeDigitized":"2021:10:06 17:52:35","DateTimeOriginal":"2021:10:06 17:52:35","ExifOffset":"356","ExifVersion":"48, 50, 51, 49","ExposureBiasValue":"0/1","ExposureMode":"1","ExposureProgram":"1","ExposureTime":"1/1600","Flash":"0","FNumber":"18/10","FocalLength":"50/1","FocalPlaneResolutionUnit":"3","FocalPlaneXResolution":"61166933/32768","FocalPlaneYResolution":"61166933/32768","ImageLength":"4480","ImageWidth":"6720","LensModel":"RF50mm F1.2 L USM","LensSerialNumber":"8820000070","LensSpecification":"50/1, 50/1, 0/0, 0/0","Make":"Canon","MaxApertureValue":"625/1000","MeteringMode":"5","Model":"Canon EOS R","OffsetTime":"-04:00","OffsetTimeDigitized":"-05:00","OffsetTimeOriginal":"-05:00","Orientation":"1","PhotographicSensitivity":"400","PhotometricInterpretation":"2","PixelXDimension":"6720","PixelYDimension":"4480","RecommendedExposureIndex":"400","ResolutionUnit":"2","SamplesPerPixel":"3","SceneCaptureType":"0","SensitivityType":"2","ShutterSpeedValue":"10643856/1000000","Software":"Adobe Photoshop 23.1 (Macintosh)","SubSecTimeDigitized":"23","SubSecTimeOriginal":"23","Compression":"6","JPEGInterchangeFormat":"1090","JPEGInterchangeFormatLength":"8632","XResolution":"3000000/10000","YResolution":"3000000/10000","WhiteBalance":"1"},"original_filename":"file","api_key":"756897581616859","done":true},"alt_text_raw":"Two young Black girls, a Black woman, a Black man, and two other people dance on the street on a sunny day while a man plays guitar","focal_point":{"x":2934,"y":2643},"credits":"Rachel Hershberger","content_owner":"default","title_sort":"dancing on state street - dm brand shoot / shine","updated":"2023-01-13T18:56:29.313Z","private":false,"deleted":false,"created":"2023-01-13T18:56:29.314Z","resource":{"raw":{"resource_type":"image","format":"jpg","pages":1,"public_id":"clients/madison/DM_Capitol_Picnic_RH_IMG_9020_55cf7d4e-3747-48a8-95ef-da4af78e3d36"},"focalPoint":{"x":2934,"y":2643}},"id":"63c1a95d2da75374fa3e6a69","type":"image","inAssetRequest":false,"alt_text":"Two young Black girls, a Black woman, a Black man, and two other people dance on the street on a sunny day while a man plays guitar","expired":false},"id":"63c1ac3d2da75374fa3e6b20","parent_id_string":"5e4701f5bce60830cc8fd239","version_id_string":"646e2d95799fe13dcad91616","href":"/about-us/get-connected/","absoluteHref":"https://www.visitmadison.com/about-us/get-connected/","absoluteFolderHref":"https://www.visitmadison.com/about-us/get-connected/","metaTitle":"Get Connected With Destination Madison","rootCmsUrl":"/nav/sitemap/site_primary20/section_secondary/"},"num":15,"guid":"bffe4470-1d70-46bf-8d6c-94fae64b520d","data":{},"civ":{"instance":{"type":"widget","name":"plugins_common_social_share","site_name":"primary20","updated":"2020-08-04T18:46:46.066Z","saved":false,"created":"2020-08-04T18:46:46.067Z","deleted":false,"id":"5f29a8dcc74ee26ff388f590","version_id_string":"5f29a8dcc74ee26ff388f591"},"version":{"created":"2020-08-04T18:46:46.083Z","id":"5f29a8dcc74ee26ff388f591","instance_id_string":"5f29a8dcc74ee26ff388f590","data":{}},"onTrunk":true,"civid":"5f29a8dcc74ee26ff388f590"},"name":"plugins_common_social_share"}}; socialShare.init("bffe4470-1d70-46bf-8d6c-94fae64b520d", data) }); </script> </div> </div> </div></div><div data-civid="646e2d0f799fe13dcad915b5" class="contentRender contentRender_16 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="38" data-sv-index="16" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><section data-sv-core-textbox data-guid="5770b38e-e509-41ad-92da-61f90d305d86"> <h1>Connect With Us</h1> <p>At Destination Madison, we are people with a passion. A passion for the amazing community. A city of inquisitive minds, inclusive spirits with an independent vibe. We share Madison's story far and wide. And we welcome others to experience our energy. In short, we inspire a love for Madison. </p> <p>Are you ready to see Madison in a new way AND inspire others to love our city? Whether you're a business owner, longtime resident, new transplant, student, organizer or visitor, we would love to have you join us in sharing Madison’s story. Best part? You can experience the best Madison has to offer along the way. </p> </section></div><div data-civid="646e2d0f799fe13dcad915b7" class="contentRender contentRender_17 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="39" data-sv-index="17" data-gtm-vars='{ "tCore" : { "contentNum" : "2" } }'><section data-sv-core-textbox data-guid="b4a0993b-00ac-4bc7-b41f-6a71d027ab60"> <h2>What do we do?</h2> <p>That's a great question. Our team:</p> <ul> <li>Promotes Madison as a visitor destination to national audiences</li> <li>Acts as the voice of the visitor during community conversations</li> <li>Attracts new conventions, sporting events and competitions to the community</li> <li>Provides expert service and support for large-scale events</li> <li>Conducts and analyzes tourism research </li> <li>Supports the local tourism industry</li> <li>Builds our local economy</li> <li>Forms connections for our visitors, clients, partners and community</li> </ul> <p><strong>Here are some ways you can engage with and invest in our work:</strong></p> <hr /> <h2>Explore more Madison</h2> <script id="cr-init__f793632db91b2a7a" src="https://starling.crowdriff.com/js/crowdriff.js" lang="en" async></script> <p> </p> </section></div><div data-civid="646e2d0f799fe13dcad915b9" class="contentRender contentRender_18 contentRender_type_panel contentRender_name_plugins_common_two_col" data-sv-time="1" data-sv-index="18" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><div class="panel-two-column even"> <div class="left-container"> <div data-civid="646e2d0f799fe13dcad915bb" class="contentRender contentRender_19 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="48" data-sv-index="19" data-gtm-vars='{ "tCore" : { "contentNum" : "3" } }'><section data-sv-core-textbox data-guid="c332c13f-43d3-498e-ba4d-0e83f33830ad"> <h3>Sign up for our emails</h3> <p>Get in the know with our monthly email newsletter featuring some of the best things to do, events and trip inspiration in Madison. Learn more about our <a data-sv-linklookup-id="https://www.visitmadison.com/plan/newsletter-signup/" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.visitmadison.com/plan/newsletter-signup/" target="_self">email newsletter</a>.</p> <p> </p> </section></div><div data-civid="646e2d0f799fe13dcad915bd" class="contentRender contentRender_20 contentRender_type_widget contentRender_name_plugins_crm_formbuilder" data-sv-time="354" data-sv-index="20" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <form action="" method="post" name="frm_2" class="simpleForm" onsubmit="return svcrm.formBuilderScripts.validateForm(this);"> <input id="formid" name="formid" type="hidden" value="2"> <input id="groupid" name="groupid" type="hidden" value="5"> <input id="isSubmitted" name="isSubmitted" value="1" type="hidden"> <h3>Your Information</h3> <div id="rowcontainer_contact_fname" class="row"> <div id="labelcontainer_contact_fname" class="medium-3 columns"> <div id="td_contact_fname"> <label id="label_contact_fname" for="contact_fname" class=" formreq">First Name*:</label> </div> </div> <div id="fieldcontainer_contact_fname" class="medium-9 columns"> <input class=" " id="contact_fname" name="contact_fname" type="text" maxlength="50" size="25" value=""> </div> </div> <div id="rowcontainer_contact_lname" class="row"> <div id="labelcontainer_contact_lname" class="medium-3 columns"> <div id="td_contact_lname"> <label id="label_contact_lname" for="contact_lname" class=" formreq">Last Name*:</label> </div> </div> <div id="fieldcontainer_contact_lname" class="medium-9 columns"> <input class=" " id="contact_lname" name="contact_lname" type="text" maxlength="50" size="25" value=""> </div> </div> <div id="rowcontainer_contact_email" class="row"> <div id="labelcontainer_contact_email" class="medium-3 columns"> <div id="td_contact_email"> <label id="label_contact_email" for="contact_email" class=" formreq">Email*:</label> </div> </div> <div id="fieldcontainer_contact_email" class="medium-9 columns"> <input class=" " id="contact_email" name="contact_email" type="text" maxlength="200" size="25" value="" onblur="svcrm.formBuilderScripts.checkEmail(this); "> </div> </div> <div id="rowcontainer_contact_zip" class="row"> <div id="labelcontainer_contact_zip" class="medium-3 columns"> <div id="td_contact_zip"> <label id="label_contact_zip" for="contact_zip" class=" formreq">Zip Code*:</label> </div> </div> <div id="fieldcontainer_contact_zip" class="medium-9 columns"> <input class=" " id="contact_zip" name="contact_zip" type="text" maxlength="20" size="20" value=""> </div> </div> <div id="rowcontainer_contact_sendemail" class="row"> <div class="medium-3 columns"></div> <div id="fieldcontainer_contact_sendemail" class="medium-9 columns"> <input class=" " id="contact_sendemail" name="contact_sendemail" type="checkbox" value="1"><label class=" formreq" for="contact_sendemail"> Yes, I agree to receive emails from Destination Madison. </label> </div> </div> <p class="hint formreq text-center">* Indicates a required field.</p> <hr size="1" color="cccccc" width="100%"> <div class="row"> <div class="medium-6 small-centered captcha columns"> <div id="g-recaptcha" class="g-recaptcha"></div> <input type="hidden" name="code" id="code" value="1234" /> <input type="hidden" name="code_key" id="code_key" value="rO0ABXQABDEyMzQ=" /> <input name="youcompleteme_sv" type="text" value="" autocomplete="field-youcompleteme_sv-1" style="top:-999999px;left:-999999px;position:absolute;" /> </div> </div> <hr size="1" color="cccccc" width="100%"> <div class="row"> <div class="medium-6 small-centered columns formCntrls"> <label for="savefrm_button" style='display:none;'>Submit</label> <input class="button" id="savefrm_button" name="savefrm" type="Submit" value="Submit"> <label for="resetfrm_button" style='display:none;'>Reset</label> <input class="button" id="resetfrm_button" type="Reset" value="Reset"> </div> </div> </form> <script type="text/javascript"> /* IP Address Tracking enabled. IP addresses are being tracked in order to ensure compliance with local privacy laws */ var __sv = __sv || {}; (function(){ function ___onload_function(){ }; if(window.addEventListener){ window.addEventListener('load',___onload_function,false); }else if(window.attachEvent){ window.attachEvent('onload',___onload_function); } })(); </script> <script type="text/javascript"> function AoProcessForm(frm){ var changeSaveFrmButtonTypeAndSubmit = function(frm){ try{ if(frm && 'savefrm' in frm && 'type' in frm.savefrm){ frm.savefrm.style.opacity = '0'; frm.savefrm.setAttribute("type","input"); } frm.submit(); }catch(e){ if(console && 'log' in console){ console.log("Error trying to pass the save button", e); } } }; var serializeForm = function serialize(form){if(!form||form.nodeName!=="FORM"){return }var i,j,q=[];for(i=form.elements.length-1;i>=0;i=i-1){if(form.elements[i].name==="" || form.elements[i].name==="g-recaptcha-response"){continue}switch(form.elements[i].nodeName){case"INPUT":switch(form.elements[i].type){case"text":case"hidden":case"password":case"button":case"reset":case"submit":q.push(form.elements[i].name+"="+encodeURIComponent(form.elements[i].value));break;case"checkbox":case"radio":if(form.elements[i].checked){q.push(form.elements[i].name+"="+encodeURIComponent(form.elements[i].value))}break;case"file":break}break;case"TEXTAREA":q.push(form.elements[i].name+"="+encodeURIComponent(form.elements[i].value));break;case"SELECT":switch(form.elements[i].type){case"select-one":q.push(form.elements[i].name+"="+encodeURIComponent(form.elements[i].value));break;case"select-multiple":for(j=form.elements[i].options.length-1;j>=0;j=j-1){if(form.elements[i].options[j].selected){q.push(form.elements[i].name+"="+encodeURIComponent(form.elements[i].options[j].value))}}break}break;case"BUTTON":switch(form.elements[i].type){case"reset":case"submit":case"button":q.push(form.elements[i].name+"="+encodeURIComponent(form.elements[i].value));break}break}}return q.join("&")}; var iframe = document.createElement('iframe'); iframe.id = "063EF99D_93B6_6C7F_B1BD3F8CB1E243F3"; iframe.style.width = '0'; iframe.style.height = '0'; iframe.style.position='absolute'; iframe.src= 'https://marketing.visitmadison.com/acton/eform/46033/aca5aae6-6e31-4487-877d-751bfeb3ab3e/d-ext-0001'; iframe.src += '?' + serializeForm(frm); document.body.appendChild(iframe); try{ var elm = document.getElementById("063EF99D_93B6_6C7F_B1BD3F8CB1E243F3"); var hasLoaded = false; var timesChecked = 0; var checkForLoadedInterval = window.setInterval(function(){ timesChecked++; if(timesChecked > 3 || hasLoaded){ window.clearInterval(checkForLoadedInterval); if(!hasLoaded){ try{ if(elm.removeEventListener){ elm.removeEventListener("load", weHaveLoadedFunc); }else if(elm.detachEvent){ elm.detachEvent("onload",weHaveLoadedFunc) } }catch(e){} changeSaveFrmButtonTypeAndSubmit(frm); } } },1000); var weHaveLoadedFunc = function(){ hasLoaded = true; try{window.clearInterval(checkForLoadedInterval);}catch(e){console.log("Error clearing interval",e);} changeSaveFrmButtonTypeAndSubmit(frm); } if (elm.addEventListener) { elm.addEventListener("load",weHaveLoadedFunc, false); } else if (elm.attachEvent) { elm.attachEvent("onload", weHaveLoadedFunc); } }catch(e){ changeSaveFrmButtonTypeAndSubmit(frm); } } </script> <script type="text/javascript"> (function(){ svcrm = ((typeof svcrm != 'undefined') ? svcrm : {}); svcrm.formBuilderScripts = ((typeof svcrm.formBuilderScripts != 'undefined') ? svcrm.formBuilderScripts : {}); svcrm.formBuilderScripts.chkBoxes = function(fld){ var i = 0; var cnt = 0; if(fld.length==undefined && fld.checked == true) return true; for (i = 0; i < fld.length; i++) { if (fld[i].checked) { cnt++; break; } } if (cnt == 0) return false; else return true; }; svcrm.formBuilderScripts.updReq = function(){ var i = 0; var st = new Array(); var zp = new Array(); return true; }; // removes the leading and trailing spaces from a string, // similar to the java.lang.String.trim() function // added by lturetsky, taken from http://www.voy.com/1888/58.html svcrm.formBuilderScripts.trim = function(st){ var len = st.length var begin = 0, end = len - 1; while (st.charAt(begin) == " " && begin < len) { begin++; } while (st.charAt(end) == " " && begin < end) { end--; } return st.substring(begin, end+1); }; svcrm.formBuilderScripts.validateForm = function(frm){ var errMsg = '', reqMsg = '', fmtMsg = ''; if (svcrm.formBuilderScripts.trim(document.getElementById('contact_fname').value).length == 0) reqMsg += ' First Name\n'; if (svcrm.formBuilderScripts.trim(document.getElementById('contact_lname').value).length == 0) reqMsg += ' Last Name\n'; if (svcrm.formBuilderScripts.trim(document.getElementById('contact_email').value).length == 0) reqMsg += ' Email\n'; if (!svcrm.formBuilderScripts.checkEmail(document.getElementById('contact_email'))) fmtMsg += ' Please enter a valid email address for: Email\n'; if (document.getElementById('label_contact_zip').className == 'formreq' && svcrm.formBuilderScripts.trim(document.getElementById('contact_zip').value).length == 0) reqMsg += ' Zip Code\n'; svcrm.formBuilderScripts.fmtZip(document.getElementById('contact_zip')); if (!document.getElementById('contact_sendemail').checked) reqMsg += ' Yes, I agree to receive emails from Destination Madison.\n'; //only validate the captcha if it is there var cdElm = document.getElementById('code'); if (cdElm !== null && cdElm.value.length == 0){ reqMsg += ' Image Code\n'; } //allow a hook in for custom validations var customValidations = svcrm.formBuilderScripts.processCustomValidations(); if('reqMsg' in customValidations && customValidations.reqMsg.length){ reqMsg += customValidations.reqMsg; } if('fmtMsg' in customValidations && customValidations.fmtMsg.length){ fmtMsg += customValidations.fmtMsg; } return svcrm.formBuilderScripts.processValidationMessages(reqMsg,fmtMsg,frm); }; //core will do nothing but gives devs a hook svcrm.formBuilderScripts.processCustomValidations = function(){ var rtnvar = {reqMsg:'',fmtMsg:''}; return rtnvar; }; //might as well split this out so customizations can be made svcrm.formBuilderScripts.processValidationMessages = function(reqMsg,fmtMsg,frm){ var errMsg = ''; Array.prototype.forEach.call(document.getElementsByName("savefrm"), function(e){e.disabled=true}); if ((reqMsg.length + fmtMsg.length) != 0) { errMsg = 'This information cannot be sent at this time!\n\n'; if (reqMsg.length > 0) errMsg += 'The following fields are required!\n' + reqMsg + '\n'; if (fmtMsg.length > 0) errMsg += 'The following information is invalid!\n' + fmtMsg + '\n'; svcrm.formBuilderScripts.showValidationErrorMsg(errMsg); Array.prototype.forEach.call(document.getElementsByName("savefrm"), function(e){e.disabled=false}); return false; }else{ AoProcessForm(frm); return false; } }; //why not :) svcrm.formBuilderScripts.showValidationErrorMsg = function(msg){ alert(msg); }; svcrm.formBuilderScripts.updateDOB = function(monthFld,dayFld) { var days = 0; if (monthFld.selectedIndex == 0) return true; switch (monthFld.selectedIndex) { case 2: days = 30; break; case 4: case 6: case 9: case 11: days = 31; break; default: days = 32; break; } if (dayFld.options[dayFld.selectedIndex].value >= days) dayFld.selectedIndex = days - 1; dayFld.length = days; for (var i = 28; i < days; i++) { dayFld.options[i].value = String(i); dayFld.options[i].text = String(i); } return true; } })(); </script> <script type="text/javascript"> (function(){ svcrm = ((typeof svcrm != 'undefined') ? svcrm : {}); svcrm.formBuilderScripts = ((typeof svcrm.formBuilderScripts != 'undefined') ? svcrm.formBuilderScripts : {}); window.svcrm.formBuilderScripts.states = [{"STATES":"**** - **","COUNTRYNAME":"AFGHANISTAN","COUNTRYID":239},{"STATES":"**** - **","COUNTRYNAME":"脜LAND ISLANDS","COUNTRYID":272},{"STATES":"**** - **","COUNTRYNAME":"ALBANIA","COUNTRYID":1},{"STATES":"**** - **","COUNTRYNAME":"ALGERIA","COUNTRYID":2},{"STATES":"**** - **","COUNTRYNAME":"AMERICAN SAMOA","COUNTRYID":3},{"STATES":"**** - **","COUNTRYNAME":"ANDORRA","COUNTRYID":4},{"STATES":"**** - **","COUNTRYNAME":"ANGOLA","COUNTRYID":250},{"STATES":"**** - **","COUNTRYNAME":"ANGUILLA","COUNTRYID":5},{"STATES":"**** - **","COUNTRYNAME":"ANTARCTICA","COUNTRYID":256},{"STATES":"**** - **","COUNTRYNAME":"ANTIGUA AND BARBUDA","COUNTRYID":6},{"STATES":"**** - **","COUNTRYNAME":"ARGENTINA","COUNTRYID":7},{"STATES":"**** - **","COUNTRYNAME":"ARMENIA","COUNTRYID":251},{"STATES":"**** - **","COUNTRYNAME":"ARUBA","COUNTRYID":8},{"STATES":"**** - **","COUNTRYNAME":"AUSTRALIA","COUNTRYID":9},{"STATES":"**** - **","COUNTRYNAME":"AUSTRIA","COUNTRYID":10},{"STATES":"**** - **","COUNTRYNAME":"AZERBAIJAN","COUNTRYID":252},{"STATES":"**** - **","COUNTRYNAME":"BAHAMAS","COUNTRYID":12},{"STATES":"**** - **","COUNTRYNAME":"BAHRAIN","COUNTRYID":13},{"STATES":"**** - **","COUNTRYNAME":"BANGLADESH","COUNTRYID":14},{"STATES":"**** - **","COUNTRYNAME":"BARBADOS","COUNTRYID":15},{"STATES":"**** - **","COUNTRYNAME":"BELARUS","COUNTRYID":18},{"STATES":"**** - **","COUNTRYNAME":"BELGIUM","COUNTRYID":16},{"STATES":"**** - **","COUNTRYNAME":"BELIZE","COUNTRYID":17},{"STATES":"**** - **","COUNTRYNAME":"BENIN","COUNTRYID":19},{"STATES":"**** - **","COUNTRYNAME":"BERMUDA","COUNTRYID":20},{"STATES":"**** - **","COUNTRYNAME":"BHUTAN","COUNTRYID":240},{"STATES":"**** - **","COUNTRYNAME":"BOLIVIA, PLURINATIONAL STATE OF","COUNTRYID":21},{"STATES":"**** - **","COUNTRYNAME":"BOSNIA AND HERZEGOVINA","COUNTRYID":23},{"STATES":"**** - **","COUNTRYNAME":"BOTSWANA","COUNTRYID":24},{"STATES":"**** - **","COUNTRYNAME":"BOUVET ISLAND","COUNTRYID":253},{"STATES":"**** - **","COUNTRYNAME":"BRAZIL","COUNTRYID":25},{"STATES":"**** - **","COUNTRYNAME":"BRITISH INDIAN OCEAN TERRITORY","COUNTRYID":278},{"STATES":"**** - **","COUNTRYNAME":"BRUNEI DARUSSALAM","COUNTRYID":27},{"STATES":"**** - **","COUNTRYNAME":"BULGARIA","COUNTRYID":28},{"STATES":"**** - **","COUNTRYNAME":"BURKINA FASO","COUNTRYID":29},{"STATES":"**** - **","COUNTRYNAME":"BURUNDI","COUNTRYID":30},{"STATES":"**** - **","COUNTRYNAME":"CAMBODIA","COUNTRYID":31},{"STATES":"**** - **","COUNTRYNAME":"CAMEROON","COUNTRYID":32},{"STATES":"**** - ** ABAB - Alberta BCBC - British Columbia MBMB - Manitoba NBNB - New Brunswick NLNL - Newfoundland and Labrador NTNT - Northwest Territory NSNS - Nova Scotia NUNU - Nunavut ONON - Ontario PEPE - Prince Edward Island QCQC - Quebec SKSK - Saskatchewan YTYT - Yukon","COUNTRYNAME":"CANADA","COUNTRYID":33},{"STATES":"**** - **","COUNTRYNAME":"CANARY ISLANDS","COUNTRYID":34},{"STATES":"**** - **","COUNTRYNAME":"CAPE VERDE","COUNTRYID":35},{"STATES":"**** - **","COUNTRYNAME":"CAYMAN ISLANDS","COUNTRYID":36},{"STATES":"**** - **","COUNTRYNAME":"CENTRAL AFRICAN REPUBLIC","COUNTRYID":37},{"STATES":"**** - **","COUNTRYNAME":"CHAD","COUNTRYID":38},{"STATES":"**** - **","COUNTRYNAME":"CHILE","COUNTRYID":40},{"STATES":"**** - **","COUNTRYNAME":"CHINA","COUNTRYID":41},{"STATES":"**** - **","COUNTRYNAME":"CHRISTMAS ISLAND","COUNTRYID":254},{"STATES":"**** - **","COUNTRYNAME":"COCOS (KEELING) ISLANDS","COUNTRYID":241},{"STATES":"**** - **","COUNTRYNAME":"COLOMBIA","COUNTRYID":42},{"STATES":"**** - **","COUNTRYNAME":"COMOROS","COUNTRYID":255},{"STATES":"**** - **","COUNTRYNAME":"CONGO","COUNTRYID":43},{"STATES":"**** - **","COUNTRYNAME":"CONGO, THE DEMOCRATIC REPUBLIC OF THE","COUNTRYID":274},{"STATES":"**** - **","COUNTRYNAME":"COOK ISLANDS","COUNTRYID":44},{"STATES":"**** - **","COUNTRYNAME":"COSTA RICA","COUNTRYID":45},{"STATES":"**** - **","COUNTRYNAME":"C脭TE D'IVOIRE","COUNTRYID":94},{"STATES":"**** - **","COUNTRYNAME":"CROATIA","COUNTRYID":46},{"STATES":"**** - **","COUNTRYNAME":"CUBA","COUNTRYID":242},{"STATES":"**** - **","COUNTRYNAME":"CURACAO","COUNTRYID":47},{"STATES":"**** - **","COUNTRYNAME":"CYPRUS","COUNTRYID":48},{"STATES":"**** - **","COUNTRYNAME":"CZECH REPUBLIC","COUNTRYID":49},{"STATES":"**** - **","COUNTRYNAME":"DENMARK","COUNTRYID":50},{"STATES":"**** - **","COUNTRYNAME":"DJIBOUTI","COUNTRYID":51},{"STATES":"**** - **","COUNTRYNAME":"DOMINICA","COUNTRYID":52},{"STATES":"**** - **","COUNTRYNAME":"DOMINICAN REPUBLIC","COUNTRYID":53},{"STATES":"**** - **","COUNTRYNAME":"ECUADOR","COUNTRYID":54},{"STATES":"**** - **","COUNTRYNAME":"EGYPT","COUNTRYID":55},{"STATES":"**** - **","COUNTRYNAME":"EL SALVADOR","COUNTRYID":56},{"STATES":"**** - **","COUNTRYNAME":"EQUATORIAL GUINEA","COUNTRYID":58},{"STATES":"**** - **","COUNTRYNAME":"ERITREA","COUNTRYID":59},{"STATES":"**** - **","COUNTRYNAME":"ESTONIA","COUNTRYID":60},{"STATES":"**** - **","COUNTRYNAME":"ETHIOPIA","COUNTRYID":61},{"STATES":"**** - **","COUNTRYNAME":"FALKLAND ISLANDS (MALVINAS)","COUNTRYID":258},{"STATES":"**** - **","COUNTRYNAME":"FAROE ISLANDS","COUNTRYID":62},{"STATES":"**** - **","COUNTRYNAME":"FIJI","COUNTRYID":64},{"STATES":"**** - **","COUNTRYNAME":"FINLAND","COUNTRYID":65},{"STATES":"**** - **","COUNTRYNAME":"FRANCE","COUNTRYID":66},{"STATES":"**** - **","COUNTRYNAME":"FRENCH GUIANA","COUNTRYID":67},{"STATES":"**** - **","COUNTRYNAME":"FRENCH POLYNESIA","COUNTRYID":197},{"STATES":"**** - **","COUNTRYNAME":"FRENCH SOUTHERN TERRITORIES","COUNTRYID":283},{"STATES":"**** - **","COUNTRYNAME":"GABON","COUNTRYID":69},{"STATES":"**** - **","COUNTRYNAME":"GAMBIA","COUNTRYID":70},{"STATES":"**** - **","COUNTRYNAME":"GEORGIA","COUNTRYID":71},{"STATES":"**** - **","COUNTRYNAME":"GERMANY","COUNTRYID":72},{"STATES":"**** - **","COUNTRYNAME":"GHANA","COUNTRYID":73},{"STATES":"**** - **","COUNTRYNAME":"GIBRALTAR","COUNTRYID":74},{"STATES":"**** - **","COUNTRYNAME":"GREECE","COUNTRYID":75},{"STATES":"**** - **","COUNTRYNAME":"GREENLAND","COUNTRYID":76},{"STATES":"**** - **","COUNTRYNAME":"GRENADA","COUNTRYID":77},{"STATES":"**** - **","COUNTRYNAME":"GUADELOUPE","COUNTRYID":78},{"STATES":"**** - **","COUNTRYNAME":"GUAM","COUNTRYID":79},{"STATES":"**** - **","COUNTRYNAME":"GUATEMALA","COUNTRYID":80},{"STATES":"**** - **","COUNTRYNAME":"GUERNSEY","COUNTRYID":275},{"STATES":"**** - **","COUNTRYNAME":"GUINEA","COUNTRYID":81},{"STATES":"**** - **","COUNTRYNAME":"GUINEA-BISSAU","COUNTRYID":82},{"STATES":"**** - **","COUNTRYNAME":"GUYANA","COUNTRYID":83},{"STATES":"**** - **","COUNTRYNAME":"HAITI","COUNTRYID":84},{"STATES":"**** - **","COUNTRYNAME":"HEARD ISLAND AND MCDONALD ISLANDS","COUNTRYID":276},{"STATES":"**** - **","COUNTRYNAME":"HOLY SEE (VATICAN CITY STATE)","COUNTRYID":236},{"STATES":"**** - **","COUNTRYNAME":"HONDURAS","COUNTRYID":86},{"STATES":"**** - **","COUNTRYNAME":"HONG KONG","COUNTRYID":87},{"STATES":"**** - **","COUNTRYNAME":"HUNGARY","COUNTRYID":88},{"STATES":"**** - **","COUNTRYNAME":"ICELAND","COUNTRYID":89},{"STATES":"**** - **","COUNTRYNAME":"INDIA","COUNTRYID":90},{"STATES":"**** - **","COUNTRYNAME":"INDONESIA","COUNTRYID":91},{"STATES":"**** - **","COUNTRYNAME":"IRAN, ISLAMIC REPUBLIC OF","COUNTRYID":235},{"STATES":"**** - **","COUNTRYNAME":"IRAQ","COUNTRYID":238},{"STATES":"**** - **","COUNTRYNAME":"IRELAND","COUNTRYID":234},{"STATES":"**** - **","COUNTRYNAME":"ISLE OF MAN","COUNTRYID":277},{"STATES":"**** - **","COUNTRYNAME":"ISRAEL","COUNTRYID":92},{"STATES":"**** - **","COUNTRYNAME":"ITALY","COUNTRYID":93},{"STATES":"**** - **","COUNTRYNAME":"JAMAICA","COUNTRYID":95},{"STATES":"**** - **","COUNTRYNAME":"JAPAN","COUNTRYID":96},{"STATES":"**** - **","COUNTRYNAME":"JERSEY","COUNTRYID":279},{"STATES":"**** - **","COUNTRYNAME":"JORDAN","COUNTRYID":97},{"STATES":"**** - **","COUNTRYNAME":"KAZAKHSTAN","COUNTRYID":98},{"STATES":"**** - **","COUNTRYNAME":"KENYA","COUNTRYID":99},{"STATES":"**** - **","COUNTRYNAME":"KIRIBATI","COUNTRYID":100},{"STATES":"**** - **","COUNTRYNAME":"KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF","COUNTRYID":264},{"STATES":"**** - **","COUNTRYNAME":"KOREA, REPUBLIC OF","COUNTRYID":177},{"STATES":"**** - **","COUNTRYNAME":"KOSRAE","COUNTRYID":101},{"STATES":"**** - **","COUNTRYNAME":"KUWAIT","COUNTRYID":102},{"STATES":"**** - **","COUNTRYNAME":"KYRGYZSTAN","COUNTRYID":103},{"STATES":"**** - **","COUNTRYNAME":"LAO PEOPLE'S DEMOCRATIC REPUBLIC","COUNTRYID":104},{"STATES":"**** - **","COUNTRYNAME":"LATVIA","COUNTRYID":105},{"STATES":"**** - **","COUNTRYNAME":"LEBANON","COUNTRYID":106},{"STATES":"**** - **","COUNTRYNAME":"LESOTHO","COUNTRYID":107},{"STATES":"**** - **","COUNTRYNAME":"LIBERIA","COUNTRYID":108},{"STATES":"**** - **","COUNTRYNAME":"LIBYAN ARAB JAMAHIRIYA","COUNTRYID":259},{"STATES":"**** - **","COUNTRYNAME":"LIECHTENSTEIN","COUNTRYID":109},{"STATES":"**** - **","COUNTRYNAME":"LITHUANIA","COUNTRYID":110},{"STATES":"**** - **","COUNTRYNAME":"LUXEMBOURG","COUNTRYID":111},{"STATES":"**** - **","COUNTRYNAME":"MACAO","COUNTRYID":112},{"STATES":"**** - **","COUNTRYNAME":"MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF","COUNTRYID":113},{"STATES":"**** - **","COUNTRYNAME":"MADAGASCAR","COUNTRYID":114},{"STATES":"**** - **","COUNTRYNAME":"MALAWI","COUNTRYID":116},{"STATES":"**** - **","COUNTRYNAME":"MALAYSIA","COUNTRYID":117},{"STATES":"**** - **","COUNTRYNAME":"MALDIVES","COUNTRYID":118},{"STATES":"**** - **","COUNTRYNAME":"MALI","COUNTRYID":119},{"STATES":"**** - **","COUNTRYNAME":"MALTA","COUNTRYID":120},{"STATES":"**** - **","COUNTRYNAME":"MARSHALL ISLANDS","COUNTRYID":121},{"STATES":"**** - **","COUNTRYNAME":"MARTINIQUE","COUNTRYID":122},{"STATES":"**** - **","COUNTRYNAME":"MAURITANIA","COUNTRYID":123},{"STATES":"**** - **","COUNTRYNAME":"MAURITIUS","COUNTRYID":124},{"STATES":"**** - **","COUNTRYNAME":"MAYOTTE","COUNTRYID":260},{"STATES":"**** - **","COUNTRYNAME":"MEXICO","COUNTRYID":125},{"STATES":"**** - **","COUNTRYNAME":"MICRONESIA, FEDERATED STATES OF","COUNTRYID":63},{"STATES":"**** - **","COUNTRYNAME":"MOLDOVA, REPUBLIC OF","COUNTRYID":126},{"STATES":"**** - **","COUNTRYNAME":"MONACO","COUNTRYID":127},{"STATES":"**** - **","COUNTRYNAME":"MONGOLIA","COUNTRYID":261},{"STATES":"**** - **","COUNTRYNAME":"MONTENEGRO","COUNTRYID":115},{"STATES":"**** - **","COUNTRYNAME":"MONTSERRAT","COUNTRYID":128},{"STATES":"**** - **","COUNTRYNAME":"MOROCCO","COUNTRYID":129},{"STATES":"**** - **","COUNTRYNAME":"MOZAMBIQUE","COUNTRYID":130},{"STATES":"**** - **","COUNTRYNAME":"MYANMAR","COUNTRYID":131},{"STATES":"**** - **","COUNTRYNAME":"NAMIBIA","COUNTRYID":132},{"STATES":"**** - **","COUNTRYNAME":"NAURU","COUNTRYID":262},{"STATES":"**** - **","COUNTRYNAME":"NEPAL","COUNTRYID":133},{"STATES":"**** - **","COUNTRYNAME":"NETHERLANDS","COUNTRYID":134},{"STATES":"**** - **","COUNTRYNAME":"NETHERLANDS ANTILLES","COUNTRYID":135},{"STATES":"**** - **","COUNTRYNAME":"NEW CALEDONIA","COUNTRYID":136},{"STATES":"**** - **","COUNTRYNAME":"NEW ZEALAND","COUNTRYID":137},{"STATES":"**** - **","COUNTRYNAME":"NICARAGUA","COUNTRYID":138},{"STATES":"**** - **","COUNTRYNAME":"NIGER","COUNTRYID":139},{"STATES":"**** - **","COUNTRYNAME":"NIGERIA","COUNTRYID":140},{"STATES":"**** - **","COUNTRYNAME":"NIUE","COUNTRYID":263},{"STATES":"**** - **","COUNTRYNAME":"NORFOLK ISLAND","COUNTRYID":141},{"STATES":"**** - **","COUNTRYNAME":"NORTHERN MARIANA ISLANDS","COUNTRYID":143},{"STATES":"**** - **","COUNTRYNAME":"NORWAY","COUNTRYID":144},{"STATES":"**** - **","COUNTRYNAME":"OMAN","COUNTRYID":145},{"STATES":"**** - **","COUNTRYNAME":"PAKISTAN","COUNTRYID":146},{"STATES":"**** - **","COUNTRYNAME":"PALAU","COUNTRYID":147},{"STATES":"**** - **","COUNTRYNAME":"PALESTINIAN TERRITORY, OCCUPIED","COUNTRYID":281},{"STATES":"**** - **","COUNTRYNAME":"PANAMA","COUNTRYID":148},{"STATES":"**** - **","COUNTRYNAME":"PAPUA NEW GUINEA","COUNTRYID":149},{"STATES":"**** - **","COUNTRYNAME":"PARAGUAY","COUNTRYID":150},{"STATES":"**** - **","COUNTRYNAME":"PERU","COUNTRYID":151},{"STATES":"**** - **","COUNTRYNAME":"PHILIPPINES","COUNTRYID":152},{"STATES":"**** - **","COUNTRYNAME":"PITCAIRN","COUNTRYID":265},{"STATES":"**** - **","COUNTRYNAME":"POLAND","COUNTRYID":153},{"STATES":"**** - **","COUNTRYNAME":"PONAPE","COUNTRYID":154},{"STATES":"**** - **","COUNTRYNAME":"PORTUGAL","COUNTRYID":155},{"STATES":"**** - **","COUNTRYNAME":"PUERTO RICO","COUNTRYID":156},{"STATES":"**** - **","COUNTRYNAME":"QATAR","COUNTRYID":157},{"STATES":"**** - **","COUNTRYNAME":"R脡UNION","COUNTRYID":160},{"STATES":"**** - **","COUNTRYNAME":"ROMANIA","COUNTRYID":161},{"STATES":"**** - **","COUNTRYNAME":"RUSSIAN FEDERATION","COUNTRYID":163},{"STATES":"**** - **","COUNTRYNAME":"RWANDA","COUNTRYID":164},{"STATES":"**** - **","COUNTRYNAME":"SABA","COUNTRYID":165},{"STATES":"**** - **","COUNTRYNAME":"SAINT BARTH脡LEMY","COUNTRYID":273},{"STATES":"**** - **","COUNTRYNAME":"SAINT HELENA","COUNTRYID":245},{"STATES":"**** - **","COUNTRYNAME":"SAINT KITTS AND NEVIS","COUNTRYID":185},{"STATES":"**** - **","COUNTRYNAME":"SAINT LUCIA","COUNTRYID":186},{"STATES":"**** - **","COUNTRYNAME":"SAINT MARTIN","COUNTRYID":280},{"STATES":"**** - **","COUNTRYNAME":"SAINT PIERRE AND MIQUELON","COUNTRYID":269},{"STATES":"**** - **","COUNTRYNAME":"SAINT VINCENT AND THE GRENADINES","COUNTRYID":190},{"STATES":"**** - **","COUNTRYNAME":"SAIPAN","COUNTRYID":166},{"STATES":"**** - **","COUNTRYNAME":"SAMOA","COUNTRYID":228},{"STATES":"**** - **","COUNTRYNAME":"SAN MARINO","COUNTRYID":266},{"STATES":"**** - **","COUNTRYNAME":"SAO TOME AND PRINCIPE","COUNTRYID":267},{"STATES":"**** - **","COUNTRYNAME":"SAUDI ARABIA","COUNTRYID":167},{"STATES":"**** - **","COUNTRYNAME":"SCOTLAND","COUNTRYID":168},{"STATES":"**** - **","COUNTRYNAME":"SENEGAL","COUNTRYID":169},{"STATES":"**** - **","COUNTRYNAME":"SERBIA","COUNTRYID":284},{"STATES":"**** - **","COUNTRYNAME":"SEYCHELLES","COUNTRYID":170},{"STATES":"**** - **","COUNTRYNAME":"SIERRA LEONE","COUNTRYID":171},{"STATES":"**** - **","COUNTRYNAME":"SINGAPORE","COUNTRYID":172},{"STATES":"**** - **","COUNTRYNAME":"SLOVAKIA","COUNTRYID":173},{"STATES":"**** - **","COUNTRYNAME":"SLOVENIA","COUNTRYID":174},{"STATES":"**** - **","COUNTRYNAME":"SOLOMON ISLANDS","COUNTRYID":175},{"STATES":"**** - **","COUNTRYNAME":"SOMALIA","COUNTRYID":244},{"STATES":"**** - **","COUNTRYNAME":"SOUTH AFRICA","COUNTRYID":176},{"STATES":"**** - **","COUNTRYNAME":"SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS","COUNTRYID":268},{"STATES":"**** - **","COUNTRYNAME":"SPAIN","COUNTRYID":178},{"STATES":"**** - **","COUNTRYNAME":"SRI LANKA","COUNTRYID":179},{"STATES":"**** - **","COUNTRYNAME":"ST. BARTHELEMY","COUNTRYID":180},{"STATES":"**** - **","COUNTRYNAME":"ST. CHRISTOPHER","COUNTRYID":181},{"STATES":"**** - **","COUNTRYNAME":"ST. CROIX","COUNTRYID":182},{"STATES":"**** - **","COUNTRYNAME":"ST. EUSTATIUS","COUNTRYID":183},{"STATES":"**** - **","COUNTRYNAME":"ST. JOHN","COUNTRYID":184},{"STATES":"**** - **","COUNTRYNAME":"ST. MAARTEN","COUNTRYID":187},{"STATES":"**** - **","COUNTRYNAME":"ST. MARTIN","COUNTRYID":188},{"STATES":"**** - **","COUNTRYNAME":"ST. THOMAS","COUNTRYID":189},{"STATES":"**** - **","COUNTRYNAME":"SUDAN","COUNTRYID":191},{"STATES":"**** - **","COUNTRYNAME":"SURINAME","COUNTRYID":192},{"STATES":"**** - **","COUNTRYNAME":"SVALBARD AND JAN MAYEN","COUNTRYID":282},{"STATES":"**** - **","COUNTRYNAME":"SWAZILAND","COUNTRYID":193},{"STATES":"**** - **","COUNTRYNAME":"SWEDEN","COUNTRYID":194},{"STATES":"**** - **","COUNTRYNAME":"SWITZERLAND","COUNTRYID":195},{"STATES":"**** - **","COUNTRYNAME":"SYRIAN ARAB REPUBLIC","COUNTRYID":196},{"STATES":"**** - **","COUNTRYNAME":"TAIWAN, PROVINCE OF CHINA","COUNTRYID":198},{"STATES":"**** - **","COUNTRYNAME":"TAJIKISTAN","COUNTRYID":199},{"STATES":"**** - **","COUNTRYNAME":"TANZANIA, UNITED REPUBLIC OF","COUNTRYID":200},{"STATES":"**** - **","COUNTRYNAME":"THAILAND","COUNTRYID":201},{"STATES":"**** - **","COUNTRYNAME":"TIMOR-LESTE","COUNTRYID":257},{"STATES":"**** - **","COUNTRYNAME":"TINIAN","COUNTRYID":202},{"STATES":"**** - **","COUNTRYNAME":"TOGO","COUNTRYID":203},{"STATES":"**** - **","COUNTRYNAME":"TOKELAU","COUNTRYID":270},{"STATES":"**** - **","COUNTRYNAME":"TONGA","COUNTRYID":204},{"STATES":"**** - **","COUNTRYNAME":"TORTOLA","COUNTRYID":205},{"STATES":"**** - **","COUNTRYNAME":"TRINIDAD AND TOBAGO","COUNTRYID":206},{"STATES":"**** - **","COUNTRYNAME":"TRUK","COUNTRYID":207},{"STATES":"**** - **","COUNTRYNAME":"TUNISIA","COUNTRYID":208},{"STATES":"**** - **","COUNTRYNAME":"TURKEY","COUNTRYID":209},{"STATES":"**** - **","COUNTRYNAME":"TURKMENISTAN","COUNTRYID":271},{"STATES":"**** - **","COUNTRYNAME":"TURKS AND CAICOS ISLANDS","COUNTRYID":210},{"STATES":"**** - **","COUNTRYNAME":"TUVALU","COUNTRYID":211},{"STATES":"**** - **","COUNTRYNAME":"UGANDA","COUNTRYID":212},{"STATES":"**** - **","COUNTRYNAME":"UKRAINE","COUNTRYID":213},{"STATES":"**** - **","COUNTRYNAME":"UNION ISLAND","COUNTRYID":214},{"STATES":"**** - **","COUNTRYNAME":"UNITED ARAB EMIRATES","COUNTRYID":215},{"STATES":"**** - **","COUNTRYNAME":"UNITED KINGDOM","COUNTRYID":57},{"STATES":"**** - ** ALAL - Alabama AKAK - Alaska AZAZ - Arizona ARAR - Arkansas CACA - California COCO - Colorado CTCT - Connecticut DEDE - Delaware DCDC - District of Columbia FLFL - Florida GAGA - Georgia HIHI - Hawaii IDID - Idaho ILIL - Illinois ININ - Indiana IAIA - Iowa KSKS - Kansas KYKY - Kentucky LALA - Louisiana MEME - Maine MDMD - Maryland MAMA - Massachusetts MIMI - Michigan MNMN - Minnesota MSMS - Mississippi MOMO - Missouri MTMT - Montana NENE - Nebraska NVNV - Nevada NHNH - New Hampshire NJNJ - New Jersey NMNM - New Mexico NYNY - New York NCNC - North Carolina NDND - North Dakota OHOH - Ohio OKOK - Oklahoma OROR - Oregon PAPA - Pennsylvania PRPR - Puerto Rico RIRI - Rhode Island SCSC - South Carolina SDSD - South Dakota TNTN - Tennessee TXTX - Texas UTUT - Utah VTVT - Vermont VAVA - Virginia WAWA - Washington WVWV - West Virginia WIWI - Wisconsin WYWY - Wyoming","COUNTRYNAME":"UNITED STATES","COUNTRYID":217},{"STATES":"**** - **","COUNTRYNAME":"UNITED STATES MINOR OUTLYING ISLANDS","COUNTRYID":225},{"STATES":"**** - **","COUNTRYNAME":"URUGUAY","COUNTRYID":218},{"STATES":"**** - **","COUNTRYNAME":"UZBEKISTAN","COUNTRYID":220},{"STATES":"**** - **","COUNTRYNAME":"VANUATU","COUNTRYID":221},{"STATES":"**** - **","COUNTRYNAME":"VENEZUELA, BOLIVARIAN REPUBLIC OF","COUNTRYID":222},{"STATES":"**** - **","COUNTRYNAME":"VIET NAM","COUNTRYID":223},{"STATES":"**** - **","COUNTRYNAME":"VIRGIN ISLANDS, BRITISH","COUNTRYID":26},{"STATES":"**** - **","COUNTRYNAME":"VIRGIN ISLANDS, U.S.","COUNTRYID":219},{"STATES":"**** - **","COUNTRYNAME":"WALES","COUNTRYID":226},{"STATES":"**** - **","COUNTRYNAME":"WALLIS AND FUTUNA","COUNTRYID":227},{"STATES":"**** - **","COUNTRYNAME":"WESTERN SAHARA","COUNTRYID":246},{"STATES":"**** - **","COUNTRYNAME":"YAP","COUNTRYID":229},{"STATES":"**** - **","COUNTRYNAME":"YEMEN","COUNTRYID":247},{"STATES":"**** - **","COUNTRYNAME":"ZAIRE","COUNTRYID":231},{"STATES":"**** - **","COUNTRYNAME":"ZAMBIA","COUNTRYID":232},{"STATES":"**** - **","COUNTRYNAME":"ZIMBABWE","COUNTRYID":233}]; svcrm.formBuilderScripts.countryChanged = function(domElm){ var oldSelIndexVal = state.value; //$F('contact_state'); var myStates = new Array(); // $('contact_state').options.length = 0; state.options.length = 0; for (var i = 0; i < window.svcrm.formBuilderScripts.states.length; i++) { if (window.svcrm.formBuilderScripts.states[i].COUNTRYNAME == domElm.options[domElm.selectedIndex].value || window.svcrm.formBuilderScripts.states[i].COUNTRYNAME == '') { var myObj = new Object(); var tmp = window.svcrm.formBuilderScripts.states[i].STATES.split(''); for (var x = 0; x < tmp.length; x = x + 2) { var myObj = new Object(); myObj.statecode = tmp[x - 1]; myObj.statename = tmp[x]; if (tmp[x - 1] == oldSelIndexVal) { myObj.selected = true; } else { myObj.selected = false; } if(!myObj.statecode){ myObj.statecode = ''; } myStates.push(myObj); } } } if (myStates.length > 0) { for (var i = 0; i < myStates.length; i++) { // $('contact_state').options[$('state').options.length] = new Option(myStates[i].statename, myStates[i].statecode, myStates[i].selected, myStates[i].selected); state.options[state.options.length] = new Option(myStates[i].statename, myStates[i].statecode, myStates[i].selected, myStates[i].selected); } } else { // $('contact_state').options.length = 0; state.options.length = 0; //$('contact_state').options[$('contact_state').options.length] = new Option("** - **", ""); state.options[state.options.length] = new Option("** - **", ""); } } })(); </script> <script type="text/javascript"> (function(){ svcrm = ((typeof svcrm != 'undefined') ? svcrm : {}); svcrm.formBuilderScripts = ((typeof svcrm.formBuilderScripts != 'undefined') ? svcrm.formBuilderScripts : {}); window.svcrm.formBuilderScripts._____fileInpElmsRemoved = {}; //being lazy, need a place to store the file inputs that get removed from the form window.svcrm.formBuilderScripts._____filesUploading = 0; //if this is greater than 0, a file is still uploading. //this function is called when a file upload input has a file selected window.svcrm.formBuilderScripts.submitFileUpload = function(frmname,fldname){ //kill off the old temp input that is used by formbuilder_fileAdd.cfm to know which form element to upload var oldinp = document.getElementById('thefileweneedtoupload'); if(oldinp){ oldinp.parentNode.removeChild(oldinp); } //create the temp input that is used by formbuilder_fileAdd.cfm to know which form element to upload var inp = document.createElement('input'); inp.type = 'hidden'; inp.name = 'thefileweneedtoupload'; inp.id = 'thefileweneedtoupload'; inp.value = fldname; document[frmname].appendChild(inp); //need to get some things from this input before it is killed so we will it so we can recreate it var fld = document.getElementById(fldname); window.svcrm.formBuilderScripts._____fileInpElmsRemoved[fldname] = { id:fld.id, name:fld.name, className:fld.className, tabIndex:fld.tabIndex, onchange:fld.onchange }; //kill iframe element if one exists window.svcrm.formBuilderScripts.killFileInputIframeElm(fldname); //create iframe to submit to var iframe = document.createElement('iframe'); iframe.id = 'fileUploaderIframe_'+fldname; iframe.name = 'fileUploaderIframe_'+fldname; iframe.style.display = 'none'; document.body.appendChild(iframe); //store the form action before it is changed var origFormAttributes = {action: document[frmname].action, enctype: document[frmname].enctype}; //change the form so that it will submit to the webapi and iframe target document[frmname].action = 'https://Madison.simpleviewcrm.com/webapi/formbuilder/formbuilder_fileAdd.cfm'; document[frmname].target = 'fileUploaderIframe_'+fldname; document[frmname].enctype = 'multipart/form-data'; document[frmname].submit(); //add to filesUploading so we don't allow form submissions while files are uploading window.svcrm.formBuilderScripts._____filesUploading = window.svcrm.formBuilderScripts._____filesUploading + 1; //reset the form to submit to where it was originally intended to submit to and remove the target so it doesn't go to the iframe document[frmname].setAttribute('action',origFormAttributes.action); document[frmname].setAttribute('enctype',origFormAttributes.enctype); document[frmname].removeAttribute('target'); // Disable the submit button and add a tool tip to the disabled element so it is clear why you can't submit yet -- useful for large files or slow connections document.getElementById('savefrm_button').disabled = true; var tt = document.getElementById('submit_tooltiptext'); if(tt){ //Make the tool tip show up tt.style.visibility = 'visible'; } else { // create a new element var toolTip = document.createElement("span"); var newContent = document.createTextNode("Unable to submit, file upload in progress."); toolTip.appendChild(newContent); toolTip.style.backgroundColor = "black"; toolTip.style.color = "white"; toolTip.style.textAlign = "center"; toolTip.style.borderRadius = "6px"; toolTip.style.padding = "4px 2px"; toolTip.setAttribute('id', 'submit_tooltiptext'); // add the newly created element and its content into the DOM currentDiv = document.getElementById('resetfrm_button'); var br = document.createElement("br"); // but put it on a new line first currentDiv.parentElement.insertBefore(br, null); currentDiv.parentElement.insertBefore(toolTip, null); } }; //this function is called by either the formbuilder_fileAdd.cfm window.parent.addFile() call or from the _handlePostMessage() function //it will take the filename that is returned and set it in the display element and hidden input //if success==true is not returned we will try to grab the message from errorMsg if passed otherwise will display a generic error message and will try to remove the file input and recreate it //it is possible that the IIS request filtering will kick in and prevent us from knowing if it failed but the overall submission will end up getting blocked because the file inputs will still exist window.svcrm.formBuilderScripts.addFile = function(addFileArgs){ if(typeof addFileArgs.success && addFileArgs.success){ //set the hidden input with the new filename so we can process upon save document.getElementById(addFileArgs.fldname+'_formbuilder_hidden').value = addFileArgs.newfilename; //subtract from filesUploading, if we're at 0 all files are finished window.svcrm.formBuilderScripts._____filesUploading = window.svcrm.formBuilderScripts._____filesUploading - 1; if (window.svcrm.formBuilderScripts._____filesUploading <= 0) { //Re-enable submit button document.getElementById('savefrm_button').disabled = false; //hide tooltip var ttip = document.getElementById('submit_tooltiptext'); if (ttip) { ttip.style.visibility = "hidden"; } } //create the delete button for this file var newBtn = document.createElement('img'); newBtn.src = 'https://Madison.simpleviewcrm.com/core_crm/webapi/forms/images/delete.png'; newBtn.onclick = function(){window.svcrm.formBuilderScripts.removeFile(addFileArgs.fldname);}; newBtn.alt = 'Remove File?'; newBtn.title = 'Remove File?'; newBtn.style.paddingTop = '5px'; newBtn.style.paddingRight = '5px'; newBtn.style.float = 'left'; //create the element that will show the file name var newDiv = document.createElement('div'); newDiv.innerHTML = addFileArgs.newfilename; newDiv.style.paddingTop = '4px'; newDiv.style.float = 'left'; //get this file inputs display element and append the delete button and name display elements in it var dispElm = document.getElementById(addFileArgs.fldname+'_display'); dispElm.appendChild(newBtn); dispElm.appendChild(newDiv); //create an empty div to fix the float for the delete and filename element var newDiv2 = document.createElement('div'); newDiv2.style.clear = 'both'; dispElm.appendChild(newDiv2); dispElm.style.display = 'block'; //turn on the display element //kill the file input we don't want it anymore unless they remove this file window.svcrm.formBuilderScripts.killFileInputElm(addFileArgs.fldname); }else{ //kill and recreate the element if we can if(typeof addFileArgs.fldname && addFileArgs.fldname.length){ window.svcrm.formBuilderScripts.killFileInputElm(addFileArgs.fldname); window.svcrm.formBuilderScripts.recreateFileInputElm(addFileArgs.fldname); } //if we have a good message display it alert('There was a problem uploading your file:\n'+((typeof addFileArgs.errorMsg != 'undefined') ? addFileArgs.errorMsg : 'There was a problem uploading your file!' ) ); //subtract from filesUploading, if we're at 0 all files are finished window.svcrm.formBuilderScripts._____filesUploading = window.svcrm.formBuilderScripts._____filesUploading - 1; //Need to make sure that we re-enable the submit button in case it didn't happen above in the IF block // otherwise, they can't submit until they fix the issue; we should give them the option to abandon the file upload. if (window.svcrm.formBuilderScripts._____filesUploading <= 0) { //Re-enable submit button document.getElementById('savefrm_button').disabled = false; //hide tooltip var ttip = document.getElementById('submit_tooltiptext'); if (ttip) { ttip.style.visibility = "hidden"; } } } //kill iframe element if it is still around window.svcrm.formBuilderScripts.killFileInputIframeElm(addFileArgs.fldname); }; //this function will delete the file input element from the form, it is called when a file input is selected and the form submitted off to the iframe window.svcrm.formBuilderScripts.killFileInputElm = function(fldId){ var fileInpElmToRemove = document.getElementById(fldId); fileInpElmToRemove.parentNode.removeChild(fileInpElmToRemove); }; //this function will re-create the file input element that was removed when a file was uploaded, this is called when a user clicks the delete button on an image or if we had an erorr upon file upload we wipe the input and recreate so it is empty window.svcrm.formBuilderScripts.recreateFileInputElm = function(fldId){ var elmstored = window.svcrm.formBuilderScripts._____fileInpElmsRemoved[fldId]; var recreatedElm = document.createElement('input'); recreatedElm.type = 'file'; recreatedElm.id = elmstored.id; recreatedElm.name = elmstored.name; recreatedElm.className = elmstored.className; recreatedElm.tabIndex = elmstored.tabIndex; recreatedElm.onchange = function(){ document.getElementById(fldId + '_formbuilder_hidden').value = this.value; window.svcrm.formBuilderScripts.submitFileUpload('frm_'+document.getElementById('formid').value, fldId); }; document.getElementById(fldId+'_container').appendChild(recreatedElm); } //this function will kill off the iframe element if it exists window.svcrm.formBuilderScripts.killFileInputIframeElm = function(fldname){ var iframeElm = document.getElementById('fileUploaderIframe_'+fldname); if(iframeElm){iframeElm.parentNode.removeChild(iframeElm);} }; //this function will remove the file it will wipe the display and hidden input and recreate the file upload input element window.svcrm.formBuilderScripts.removeFile = function(fldId){ //try to remove delete this file from temp if exists try{ //create an iframe and form with a hidden input field that has the name of the file we are trying to wipe var html = '<html><body onload="document.fileDeleterIframeForm.submit();">'; html += '<form name="fileDeleterIframeForm" action="https://Madison.simpleviewcrm.com/webapi/formbuilder/formbuilder_fileDelete.cfm" method="post">'; html += '<input type="hidden" name="filenamevalue" id="filenamevalue" value="'+document.getElementById(fldId+'_formbuilder_hidden').value+'" />'; html += '</form>'; html += '<' + '/' + 'body' + '>' + '<' + '/' + 'html' + '>'; var iframeElm = document.getElementById('fileDeleterIframe_'+fldId); if(iframeElm){iframeElm.parentNode.removeChild(iframeElm);} var iframe = document.createElement('iframe'); iframe.id = 'fileDeleterIframe_'+fldId; iframe.style.display = 'none'; document.body.appendChild(iframe); iframe.contentWindow.document.open(); iframe.contentWindow.document.write(html); iframe.contentWindow.document.close(); }catch(e){ //nothing for now } document.getElementById(fldId+'_formbuilder_hidden').value = ''; var dispElm = document.getElementById(fldId+'_display'); dispElm.innerHTML = ''; dispElm.style.display = 'none'; //recreate the element window.svcrm.formBuilderScripts.recreateFileInputElm(fldId); }; //this function will handle the postMessage's it will make sure that it is coming from the valid crm domain, it will then call the addFile() function passing along the returned json object var _handlePostMessage = function(evt){ //check for correct postMessage source if(typeof evt.origin != 'undefined'){ //only run this if we are from the correct domain var _fixedOrigin = evt.origin + ( (evt.origin.substring(evt.origin.length-1,evt.origin.length) != '/') ? '/' : ''); var crmappurl = 'https://Madison.simpleviewcrm.com/'; if(_fixedOrigin.toLowerCase().indexOf(crmappurl.toLowerCase()) != -1){ var _postMsgRtn = {}; try { _postMsgRtn = JSON.parse(evt.data); //json parse the returned data } catch (e) { return false; } window.svcrm.formBuilderScripts.addFile(_postMsgRtn); //we will let the addFile handle any errors the same way as call from within crm form } } }; if (window.addEventListener) { window.addEventListener('message', _handlePostMessage, false); } else if (window.attachEvent) { window.attachEvent('onmessage', _handlePostMessage); } })(); </script> <script type="text/javascript"> var onloadCallback = function() { grecaptcha.render('g-recaptcha',{'sitekey':'6LdABLoZAAAAAPGVz6rdg-7qCZ0bIv7WgDVkSxFf'}); //$.fn.matchHeight._update(); } var loadRecaptcha = function() { svcrm.formBuilderScripts.setCaptchaImg = function(ok) { svcrm.formBuilderScripts.captchaValid = ok; } svcrm.formBuilderScripts.checkCapMatch(); if (document.getElementById('g-recaptcha')) { var gscript = document.createElement("script"); gscript.setAttribute('src', "https://www.google.com/recaptcha/api.js?onload=onloadCallback&render=explicit"); var recap = document.getElementById('g-recaptcha'); var recapParent = recap.parentNode; recapParent.insertBefore(gscript, recap); } } // attach the function to load script to the page load event if (window.addEventListener) { window.addEventListener('load', loadRecaptcha, false); } else if (window.attachEvent) { window.attachEvent('onload', loadRecaptcha); } // Validate that recaptcha has been checked, then do 'regular' validations. var oldValidate = svcrm.formBuilderScripts.validateForm; svcrm.formBuilderScripts.validateForm = function(frm) { if (grecaptcha.getResponse() == '') { return svcrm.formBuilderScripts.processValidationMessages(' Captcha\n', ''); } return oldValidate(frm); } </script> <script type="text/javascript"> /* +++++++++++++++++++++++++++ BEGIN Script copied from OLD CMS loadCRMForm +++++++++++++++++++++++++++++++++++++*/ (function(){ var crm_locale = {"SEPARATOR_GROUPING":3,"YAHOO_MDY_MONTH_POSITION":1,"CURRENCY_DECIMALPLACES":2,"DATEFMT_MDONLY":"mm\/dd","NUMBERFORMATTER":"standard","YAHOO_MDY_YEAR_POSITION":3,"ANGULAR_FORMAT_FILE":"en-us","YAHOO_DATE_FIELD_DELIMITER":"\/","YAHOO_START_WEEKDAY":0,"YAHOO_MDY_DAY_POSITION":2,"DOLLARFMT_MASK":"","THOUSANDS_SEPARATOR":",","LOCALE":"en_US","DOLLARFMT":0,"DOLLARFMT_PREFIX":"","NUMBERFMT_MASK":"0,000.00","DATEFMT":"mm\/dd\/yyyy","DECIMAL_SEPARATOR":".","DOLLARFMT_SUFFIX":""}; svcrm = ((typeof svcrm != 'undefined') ? svcrm : {}); svcrm.formBuilderScripts = ((typeof svcrm.formBuilderScripts != 'undefined') ? svcrm.formBuilderScripts : {}); svcrm.formBuilderScripts.captchaValid = false; svcrm.formBuilderScripts.validCodeElement = document.getElementById('code'); svcrm.formBuilderScripts.curPopupWindow = null; svcrm.formBuilderScripts.lastMouseX = null; svcrm.formBuilderScripts.lastMouseY = null; svcrm.formBuilderScripts.__onload_function = function(){ svcrm.formBuilderScripts.updReq(); if (svcrm.formBuilderScripts.validCodeElement.addEventListener) { svcrm.formBuilderScripts.validCodeElement.addEventListener('keyup', svcrm.formBuilderScripts.checkCapMatch, false); } else if (validCodeElement.attachEvent) { svcrm.formBuilderScripts.validCodeElement.attachEvent('onkeyup', svcrm.formBuilderScripts.checkCapMatch); } var elm = svcrm.formBuilderScripts.validCodeElement; var found = false; while(elm.parentNode && !found){ if(elm.parentNode.getElementsByTagName('form') && elm.parentNode.getElementsByTagName('form')[0] && elm.parentNode.getElementsByTagName('form')[0].name.indexOf('frm_') != -1){ elm = elm.parentNode.getElementsByTagName('form')[0]; found = true; }else{ elm = elm.parentNode; } } var the_crmform = elm; the_crmform.id = 'the_crmform'; the_crmform.onsubmit = function(e){ svcrm.formBuilderScripts.checkCapMatch(); if (svcrm.formBuilderScripts.captchaValid !== true){ alert('This information cannot be sent at this time!\n\nThe 4 character string you entered does not match the image shown.'); return false; }else { return svcrm.formBuilderScripts.validateForm(the_crmform); } return false; }; }; svcrm.formBuilderScripts.checkCapMatch = function(){ var scriptID = 'captchaCheckJSONP'; //kill the existing one if we have one if(document.getElementById(scriptID)){ document.getElementById(scriptID).parentNode.removeChild(document.getElementById(scriptID)); } var validCode = svcrm.formBuilderScripts.validCodeElement.value; var checkCode = escape( document.getElementById('code_key').value ); if(validCode.length != 4){ svcrm.formBuilderScripts.setCaptchaImg(false); return false; }else{ //jsonP this thing over var s = document.createElement('script'); s.id = scriptID; s.type = 'application/javascript'; s.src = 'https://madison.simpleviewcrm.com/webapi/formbuilder/checkcaptcha.cfm?validCode='+validCode+'&checkCode='+checkCode+'&jsonp=svcrm.formBuilderScripts.getCaptchaLookupResults' document.body.appendChild(s); } }; svcrm.formBuilderScripts.getCaptchaLookupResults = function(rtn){ if (rtn) { svcrm.formBuilderScripts.setCaptchaImg(true); }else { svcrm.formBuilderScripts.setCaptchaImg(false); } }; svcrm.formBuilderScripts.setCaptchaImg = function(ok) { var existingCIMG = document.getElementById('capimage'); if (!existingCIMG || existingCIMG.length == 0){ var cimgtag = document.createElement('IMG'); cimgtag.id = 'capimage'; cimgtag.alt= "Verification"; svcrm.formBuilderScripts.validCodeElement.parentNode.appendChild(cimgtag); existingCIMG = document.getElementById('capimage'); } if (ok) { existingCIMG.src = 'https://madison.simpleviewcrm.com/core_crm/resources/images/true_ico.gif'; svcrm.formBuilderScripts.captchaValid = true; }else { existingCIMG.src = 'https://madison.simpleviewcrm.com/core_crm/resources/images/false_ico.gif'; svcrm.formBuilderScripts.captchaValid = false; } }; /* +++++++++++++++++++++++++++ BEGIN Script copied from OLD CMS /includes/scripts/formValidations.js +++++++++++++++++++++++++++++++++++++*/ /*Utility Functions, namespaced for nodejs cms sites*/ //Function to format floats //returns false if invalid //dec = number of decimal places to show svcrm.formBuilderScripts.fmtFloat = function(obj, dec){ var lt = "", rt = "", str = "" var inc = 0, num = 0, tmp = 0 if (obj.value.length == 0) obj.value = "0"; if (!svcrm.formBuilderScripts.checkChars(obj.value, ".,0123456789")) return false; // Check for valid number svcrm.formBuilderScripts.stripChars(obj, ","); if (!svcrm.formBuilderScripts.checkNumber(obj.value)) return false; //Split number inc = Math.pow(10, dec); num = (obj.value * 1.0); num = Math.round(num * inc) / inc; str = "" + num; tmp = str.indexOf("."); if (tmp < 0) { str += "."; tmp = str.indexOf("."); } if ((str.length - tmp) <= dec) for (var i = (str.length - tmp); i <= dec; i++) str += "0"; obj.value = str; return true; }; //Function to format integers //returns false if invalid svcrm.formBuilderScripts.fmtInt = function(obj){ if (obj.value.length == 0) { return true; } return (svcrm.formBuilderScripts.checkInteger(obj.value)); }; //Function to formats money fields //returns false if invalid svcrm.formBuilderScripts.fmtMoney = function(obj){ var dec = 0, num = "", sign = 0 var dollars = "", cents = "" var count = 0, tmp = "" if (obj.value.length == 0) { tmp = "0"; cents = ".00"; } else { if (!svcrm.formBuilderScripts.checkChars(obj.value, "$.,0123456789")) return false; // Check for valid number svcrm.formBuilderScripts.stripChars(obj, ","); sign = obj.value.indexOf("$"); if (sign > 0) return false; else { if (sign == 0) num = obj.value.substring(1,obj.value.length); else num = obj.value; if (!svcrm.formBuilderScripts.checkNumber(num)) return false; } // Check precision, round-up if necessary if (num.indexOf(".") != -1) num = "" + (Math.round(num * 100) / 100.0); dec = num.indexOf("."); cents = ((dec > 0) ? num.substring(dec,num.length) : ".00"); if (cents.length == 2) cents += "0"; // Add commas dollars = "" + parseInt(num); for (var i = dollars.length - 1; i >= 0; i--) { if (count == 3) { tmp = "," + tmp; count = 1; } else count ++; tmp = dollars.charAt(i) + tmp; } } // Format number num = "$" + tmp + cents; obj.value = num; return true; }; //Function to format phone numbers //returns false if invalid svcrm.formBuilderScripts.fmtPhone = function(obj){ var phone = ""; var oldphone = ""; if (obj.value.length == 0) return true; //Remove formatting oldphone = obj.value; svcrm.formBuilderScripts.stripChars(obj, "- ()"); phone = obj.value; if (!svcrm.formBuilderScripts.checkChars(phone, "0123456789")) return false; if (phone.length == 10) obj.value = "(" + phone.substring(0,3) + ") " + phone.substring(3,6) +"-" + phone.substring(6,10); else { obj.value = oldphone; return false; } return true; }; //Function to format social security numbers //returns false if invalid svcrm.formBuilderScripts.fmtSSN = function(obj){ var ssn = "" if (obj.value.length == 0) return true; //Remove all dashes svcrm.formBuilderScripts.stripChars(obj, "-"); ssn = obj.value; if (!svcrm.formBuilderScripts.checkChars(ssn, "0123456789")) return false; if (ssn.length == 9) obj.value = ssn.substring(0,3) + "-" + ssn.substring(3,5) + "-" + ssn.substring(5,9); else return false; return true; }; //Function to verify valid URL svcrm.formBuilderScripts.fmtURL = function(obj){ if (obj.value.length == 0) return true; if (obj.value.substring(0,7) != "http://") obj.value = "http://" + obj.value; if (obj.value.length < 10) return false; return true; }; //Function to format zip codes //returns false if invalid svcrm.formBuilderScripts.fmtZip = function(obj){ var numberlist = "0123456789", zip = "" if (obj.value.length == 0) return true; // Remove dashes svcrm.formBuilderScripts.stripChars(obj, "-"); zip = obj.value; if (!svcrm.formBuilderScripts.checkChars(zip, numberlist)) return false; if (zip.length == 5) obj.value = zip; else if (zip.length == 9) obj.value = zip.substring(0,5) + "-" + zip.substring(5,9) else return false; //Passed all tests return true; }; //Returns true if every character is in string list //otherwise false svcrm.formBuilderScripts.checkChars = function(val, charlist){ for (var i = 0; i < val.length; i++) if (charlist.indexOf(val.charAt(i)) < 0) return false; //String passed so it is valid return true; }; //Returns true if valid email //otherwise returns false svcrm.formBuilderScripts.checkEmail = function(obj){ if (obj.value.length != 0) { var pattern = /^['&a-zA-Z0-9._%+-]+@(?:[&a-zA-Z0-9-]+\.)+(([a-zA-Z]{2,4})|(aero|coop|info|museum|name|travel))$/; if (!pattern.test(obj.value)) { return false; } else { return true; } } // Valid, passed all tests return true; }; //Returns true if valid phone //otherwise returns false svcrm.formBuilderScripts.checkPhone = function(obj){ if (obj.value.length != 0) { var pattern = /^([\+][0-9]{1,3}[ \.\-])?([\(]{1}[0-9]{2,6}[\)])?([0-9 \.\-\/]{3,20})((x|ext|extension)[ ]?[0-9]{1,4})?$/; if (!pattern.test(obj.value)) { return false; } else { return true; } } // Valid, passed all tests return true; }; //Returns true if value is a number or is NULL //otherwise returns false svcrm.formBuilderScripts.checkInteger = function(object_value){ if (object_value.length == 0) return true; if (object_value.indexOf(".") < 1) return svcrm.formBuilderScripts.checkNumber(object_value); else return false; }; //Returns true if value is a number or is NULL //otherwise returns false svcrm.formBuilderScripts.checkNumber = function(object_value){ if (object_value.length == 0) return true; //Returns true if value is a number defined as // having an optional leading + or -. // having at most 1 decimal point. // otherwise containing only the characters 0-9. var start_format = " .+-0123456789"; var number_format = " .0123456789"; var check_char; var decimal = false; var trailing_blank = false; var digits = false; //The first character can be + - . blank or a digit. check_char = start_format.indexOf(object_value.charAt(0)) //Was it a decimal? if (check_char == 1) decimal = true; else if (check_char < 1) return false; //Remaining characters can be only . or a digit, but only one decimal. for (var i = 1; i < object_value.length; i++) { check_char = number_format.indexOf(object_value.charAt(i)) if (check_char < 0) return false; else if (check_char == 1) { if (decimal) // Second decimal. return false; else decimal = true; } else if (check_char == 0) { if (decimal || digits) trailing_blank = true; // ignore leading blanks } else if (trailing_blank) return false; else digits = true; } //All tests passed return true }; //Returns true if value is a posiitve integer or is NULL //otherwise returns false svcrm.formBuilderScripts.checkPosInteger = function(object_value){ if (object_value.indexOf("-") != -1) return false; else return (svcrm.formBuilderScripts.checkInteger(object_value)); }; //Function to find any char in charlist in the passed string //Returns true if a character is found //Otherwise false svcrm.formBuilderScripts.findChars = function(str, charlist){ for (var i = 0; i < charlist.length; i++) { if (str.indexOf(charlist.charAt(i)) != -1) return true; } return false; }; //Function to remove all occurances of chars in charlist svcrm.formBuilderScripts.stripChars = function(obj, charlist){ var i = 0, pos = 0 var val = obj.value while (i < val.length) { pos = charlist.indexOf(val.charAt(i)); if (pos != -1) val = val.substring(0,i) + val.substring(i + 1, val.length); else i++; } obj.value = val; return true; }; svcrm.formBuilderScripts.cntChars = function(val, charlist){ var i = 0, pos = 0, cnt = 0 for (i = 0; i < val.length; i++) { pos = charlist.indexOf(val.charAt(i)); if (pos != -1) cnt++; } return cnt; }; svcrm.formBuilderScripts.fmtTime = function(fld){ var hr = 0, mn = 0; var val = fld.value; if (val.length == 0) return true; var tt = svcrm.formBuilderScripts.strChars(val, '0123456789: '); if (tt.length > 0) { tt = tt.toUpperCase(); if (tt != 'AM' && tt != 'PM') return false; val = svcrm.formBuilderScripts.strChars(val, ' ampAMP'); } var sepr = val.indexOf(':') if (sepr == -1) { hr = val; mn = 0; } else { hr = val.substring(0, sepr); mn = val.substring(sepr + 1, val.length); } if (isNaN(mn)) mn = 0; if (!svcrm.formBuilderScripts.chkChars(hr, '0123456789')) return false; if (!svcrm.formBuilderScripts.chkChars(mn, '0123456789')) return false; if (hr < 0 || hr > 23) return false; if (mn < 0 || mn > 59) return false; if (hr > 12) { tt = 'PM'; hr = hr - 12; } else if (hr == 0) { tt = 'AM'; hr = 12; } if (mn.toString().length == 0) mn = 0; if (tt.length == 0) { if (hr == 12) tt = 'PM'; else if (hr < 7) tt = 'PM'; else tt = 'AM'; } str = hr; if (mn.toString().length == 1) str = str + ':0' + mn; else str = str + ':' + mn; str = str + ' ' + tt; fld.value = str; return true; }; //Function to remove all occurances of chars in charlist svcrm.formBuilderScripts.strChars = function(val, charlist){ var i = 0, pos = 0 while (i < val.length) { pos = charlist.indexOf(val.charAt(i)); if (pos != -1) val = val.substring(0,i) + val.substring(i + 1, val.length); else i++; } return val; }; svcrm.formBuilderScripts.chkChars = function (val, charlist){ for (var i = 0; i < val.length; i++) if (charlist.indexOf(val.charAt(i)) < 0) return false; return true; }; /* +++++++++++++++++++++++++++ END Script copied from OLD CMS /includes/scripts/formValidations.js +++++++++++++++++++++++++++++++++++++*/ /* +++++++++++++++++++++++++++ BEGIN Script copied from OLD CMS /includes/scripts/dateValidate.js +++++++++++++++++++++++++++++++++++++*/ // Author: Bill Simpson // Company: 220solutions.com // Email: bill@cfarley.com // Date Created: 02-09-2001 // // Verifies and converts date strings to a valid format // // Valid input dates = // mdyy, mmdyy, mmddyy, mmmddyy, mmddyyyy, mmmddyyyy, // m/d/yy, m/dd/yy, mm/d/yy, mm/dd/yy, mmm/d/yy, mmm/dd/yy, // m/d/yyyy, m/dd/yyyy, mm/d/yyyy, mm/dd/yyyy, mmm/d/yyyy, mmm/dd/yyyy // Valid date seperators = '-./:_, ' // // Notes: Please feel free to use/edit this script. // If you do please keep comments and header // // Code based on functions from // Author: Simon Kneafsey // Email: simonkneafsey@hotmail.com // WebSite: www.simonkneafsey.co.uk // Function to convert supplied date string 'fld' // fld: field containing date string // sep: seperator to use e.g. '-' or '/' // returns false if date string is invalid svcrm.formBuilderScripts.fmtDate = function(fld,sep){ var len = fld.value.length; var seps = new Array('-','.','/',':','_',',',' '); // Array of seperators. var d = '', m = '', y = ''; // date part holders //var div = ''; // divider holder //var outdate1 = null; // formatted date to send back to calling field holder var sepholder = new Array('0','0','0'); // array to hold positions of dividers in dates var s = String(fld.value); var outdate = ''; if (len == 0 ) return true; // Accept 'today' or 'now' if (fld.value.toUpperCase() == 'NOW' || fld.value.toUpperCase() == 'TODAY' ) { var newDate = new Date(); var myDay = newDate.getDate(); var myMonth = newDate.getMonth() + 1; if (navigator.appName == 'Netscape') var myYear = newDate.getYear() + 2000; else var myYear = newDate.getYear(); fld.value = myMonth + "-" + myDay + "-" + myYear; // update string info len = fld.value.length; s = String(fld.value); } // Check the date is a valid length if (len < 4 || len > 11) return false; // Find positions of divider in the date var cnt = 0; for (var i = 0; i < 3; i++) { for (var j = 0; j < seps.length; j++) { if (s.indexOf(seps[j],cnt) != -1) { div = seps[j]; sepholder[i] = s.indexOf(seps[j],cnt); cnt = sepholder[i] + 1; break; } } } // If element 2 is not 0 then more than 2 dividers have been found so date is invalid. if (sepholder[2] != 0) return false; // if no dividers are found strip out date parts if (sepholder[0] == 0 && sepholder[1] == 0) { switch (len) { case 4: // mdyy m = '0' + s.substring(0,1); d = '0' + s.substring(1,2); y = s.substring(2,4); if ((y = svcrm.formBuilderScripts.chkYear(y)) == false) return false; break; case 5: // mmdyy m = s.substring(0,2); d = '0' + s.substring(2,3); y = s.substring(3,5); if ((y = svcrm.formBuilderScripts.chkYear(y)) == false) return false; break; case 6: // mmddyy m = s.substring(0,2); d = s.substring(2,4); y = s.substring(4,6); if ((y = svcrm.formBuilderScripts.chkYear(y)) == false) return false; break; case 7: //mmmddyy m = s.substring(0,3); d = s.substring(3,5); y = s.substring(5,7); if ((m = svcrm.formBuilderScripts.chkMonth(m)) == false) return false; if ((y = svcrm.formBuilderScripts.chkYear(y)) == false) return false; break; case 8: //mmddyyyy m = s.substring(0,2); d = s.substring(2,4); y = s.substring(4,8); break; case 9: //mmmddyyyy m = s.substring(0,3); d = s.substring(3,5); y = s.substring(5,9); if ((m = svcrm.formBuilderScripts.chkMonth(m)) == false) return false; break; default: return false; } if ((outdate = svcrm.formBuilderScripts.chkDate(m,d,y,sep)) == false) return false; // valid date fld.value = outdate; return true; } else if (sepholder[0] != 0 && sepholder[1] != 0) { // process with dividers m = s.substring(0, sepholder[0]); d = s.substring(sepholder[0] + 1, sepholder[1]); y = s.substring(sepholder[1] + 1, s.length); } else // Only one divider return false; // Check day and year are numeric if (isNaN(d) && isNaN(y)) return false; // Make d day dd if (d.length == 1) d = '0' + d; // Make m month mm if (m.length == 1) m = '0' + m; // Make yy year yyyy if (y.length == 2) if ((y = svcrm.formBuilderScripts.chkYear(y)) == false ) return false; // Make mmm month mm if (m.length == 3 || m.length == 4) { if ((m = svcrm.formBuilderScripts.chkMonth(m)) == false) return false; } // Date components are OK if (d.length != 2 || m.length != 2 || y.length != 4) return false; // Validate the date if ((outdate = svcrm.formBuilderScripts.chkDate(m,d,y,sep)) == false) return false; // Valid date fld.value = outdate; return true; }; // checks for a valid date // m: month part (2 digit) // d: day part (2 digit) // y: year part (4 digit) // returns: date string formatted if valid, false if invalid svcrm.formBuilderScripts.chkDate = function(m, d, y, sep){ var dayArray = new Array(31,28,31,30,31,30,31,31,30,31,30,31); var dstr = m + d + y; var filter=/^[0-9]{2}[0-9]{2}[0-9]{4}$/; // Check mmddyyyy date supplied if (!filter.test(dstr)) return false; // Check valid month filter=/01|02|03|04|05|06|07|08|09|10|11|12/; if (!filter.test(m)) return false; // Check year if (y < 1900 || y > 2078) return false; // Check for leap year var n = Number(y); if (n % 4 == 0 && (n % 100 != 0 || n % 400 == 0)) dayArray[1] = 29; // Check for valid days for month var mnum = Number(m); if (d > dayArray[mnum - 1] || d <= 0) return false; // Valid date return m + sep + d + sep + y; }; // Checks for valid month // m: month part (3 or 4 digit) // returns: 2 digit month if valid, false is invalid svcrm.formBuilderScripts.chkMonth = function(m){ var months = new Array('JAN','FEB','MAR','APR','MAY','JUN','JUL','AUG','SEP','OCT','NOV','DEC'); m = m.toUpperCase(); if (m.length == 3) { for (var i = 0; i < 12; i++) { if (m == months[i]) { m = i + 1; if (i < 10) m = '0' + m; return m; } } } else if (m.length == 4 && m == 'SEPT') { m = '09'; return m; } else return false; }; // Check for a valid year // y: year part (2 digit) // returns: 4 digit year if valid, false if invalid svcrm.formBuilderScripts.chkYear = function(y){ if (y < 75) { y = "20" + y; return y; } else if (y >= 75) { y = "19" + y; return y; } else return false; }; svcrm.formBuilderScripts.showDate = function(baseURL, fld, frm) { var urlSeparator = '?'; if("https://www.visitmadison.com/about-us/get-connected/".indexOf('?') != -1){ urlSeparator = '&'; } var str = "https://www.visitmadison.com/about-us/get-connected/" + urlSeparator + "action=popupCal&frm=" + frm + "&fld=" + fld + '&randid=' + new Date().getTime(); if (eval("document." + frm + "." + fld).value.length > 0) str = str + "&cdate=" + eval("document." + frm + "." + fld).value; svcrm.formBuilderScripts.openPopup(str, "calwin", 210, 210, "width=210,height=210,toolbar=no,status=no,directories=no,menubar=no,resizable=no,scrollable=no", true); }; svcrm.formBuilderScripts.openPopup = function(url, name, pWidth, pHeight, features, snapToLastMousePosition) { svcrm.formBuilderScripts.openPopupFocus(url, name, pWidth, pHeight, features, snapToLastMousePosition, true); }; svcrm.formBuilderScripts.closePopup = function(){ if (svcrm.formBuilderScripts.curPopupWindow != null) { if (!svcrm.formBuilderScripts.curPopupWindow.closed) svcrm.formBuilderScripts.curPopupWindow.close(); svcrm.formBuilderScripts.curPopupWindow = null; } }; svcrm.formBuilderScripts.openPopupFocus = function(url, name, pWidth, pHeight, features, snapToLastMousePosition, closeOnLoseFocus) { svcrm.formBuilderScripts.closePopup(); if (snapToLastMousePosition) { if (svcrm.formBuilderScripts.lastMouseX - pWidth < 0) { svcrm.formBuilderScripts.lastMouseX = pWidth; } if (svcrm.formBuilderScripts.lastMouseY + pHeight > screen.height) { svcrm.formBuilderScripts.lastMouseY -= (svcrm.formBuilderScripts.lastMouseY + pHeight + 50) - screen.height; } svcrm.formBuilderScripts.lastMouseX -= pWidth; svcrm.formBuilderScripts.lastMouseY += 10; features += "screenX=" + svcrm.formBuilderScripts.lastMouseX + ",left=" + svcrm.formBuilderScripts.lastMouseX + "screenY=" + svcrm.formBuilderScripts.lastMouseY + ",top=" + svcrm.formBuilderScripts.lastMouseY; } if (closeOnLoseFocus) { curPopupWindow = window.open(url, name, features, false); curPopupWindow.focus(); } else { win = window.open(url, name, features, false); win.focus(); } }; svcrm.formBuilderScripts.setLastMousePosition = function(e) { if (navigator.appName.indexOf("Microsoft") != -1) e = window.event; svcrm.formBuilderScripts.lastMouseX = e.screenX; svcrm.formBuilderScripts.lastMouseY = e.screenY; }; /* +++++++++++++++++++++++++++ END Script copied from OLD CMS /includes/scripts/dateValidate.js +++++++++++++++++++++++++++++++++++++*/ /* +++++++++++++++++++++++++++ BEGIN Script copied from OLD CMS /includes/scripts/ziplookup.js +++++++++++++++++++++++++++++++++++++*/ svcrm.formBuilderScripts.zipLookup = function(fuseroot, zip, fldCity, fldState){ var scriptID = 'zipLookupJSONP'; //kill the existing one if we have one if(document.getElementById(scriptID)){ document.getElementById(scriptID).parentNode.removeChild(document.getElementById(scriptID)); } if (svcrm.formBuilderScripts.trim(zip).length != 5 || !svcrm.formBuilderScripts.checkChars(zip, "0123456789")){ return false; }else{ //jsonP this thing over var s = document.createElement('script'); s.id = scriptID; s.type = 'application/javascript'; s.src = 'https://madison.simpleviewcrm.com/webapi/formbuilder/ziplookup.cfm?zip='+zip+'&fldCityId='+fldCity.id+'&fldStateId='+fldState.id+'&jsonp=svcrm.formBuilderScripts.processZipChange' document.body.appendChild(s); } }; svcrm.formBuilderScripts.processZipChange = function(rtn){ var fldCity = document.getElementById(rtn.fldCityId); var fldState = document.getElementById(rtn.fldStateId); if (rtn.city.length > 0 && fldCity != '') fldCity.value = rtn.city; else if (fldCity != '') fldCity.value = ''; if (rtn.state.length > 0 && fldState != '') { for (var i = 0; i < fldState.options.length; i++) { if (fldState.options[i].value == rtn.state) { fldState.selectedIndex = i; break; } } if (i == fldState.options.length) fldState.selectedIndex = 0; } else if (fldState != '') fldState.selectedIndex = 0; }; /* +++++++++++++++++++++++++++ END Script copied from OLD CMS /includes/scripts/ziplookup.js +++++++++++++++++++++++++++++++++++++*/ /* +++++++++++++++++++++++++++ START Script Calendar +++++++++++++++++++++++++++++++++++++*/ svcrm.formBuilderScripts.fbCalendar = { today: new Date(), monthNames: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], dayList: ['S','M','T','W','T','F','S'], dayListTds: function(){ var rtn = ''; for(var i = 0; i < this.dayList.length; i++){ rtn += '<td align="center" class="Day" width="22">' + this.dayList[i] + '</td>'; } return rtn; }, getPrevMonthDate: function (curDate) { var y = curDate.getFullYear(); var m = curDate.getMonth(); if (m === 0) { y -= 1; m = 12; } if (m.toString().length == 1) { m = '0' + m.toString(); } return m + '/01/' + y; }, getNextMonthDate: function (curDate) { var y = curDate.getFullYear(); var m = curDate.getMonth() + 2; if (m == 13) { y += 1; m = 1; } if (m.toString().length == 1) { m = '0' + m.toString(); } return m + '/01/' + y; }, getPrevYearDate: function(curDate){ var y = curDate.getFullYear()-1; var m = curDate.getMonth()+1; if (m.toString().length == 1) { m = '0' + m.toString(); } return m + '/01/' + y; }, getNextYearDate: function (curDate) { var y = curDate.getFullYear() + 1; var m = curDate.getMonth()+1; if (m.toString().length == 1) { m = '0' + m.toString(); } return m + '/01/' + y; }, getCurMonthName: function (curDate) { return this.monthNames[curDate.getMonth()]; }, createCal: function (id, sDate, useToday) { try{ if(sDate){ sDate = new Date(sDate); }else{ sDate = this.today; } } catch (e) { sDate = this.today; } var d = { inDate: sDate, today: this.today, day: sDate.getDate(), month: sDate.getMonth() + 1, year: sDate.getFullYear(), prevMonth: this.getPrevMonthDate(sDate), nextMonth: this.getNextMonthDate(sDate), calendar: ' '+ '<div id="fbCalendar" align="center"> ' + '<div class="fbCalCloseBtn" onclick="svcrm.formBuilderScripts.fbCalendar.showDatePicker(document.getElementById(' + "'datepicker_" + id + "'" + '));"> </div> '+ '<table border="0" cellpadding="2" cellspacing="1" width="154"> '+ '<tr> '+ '<td class="CH"> '+ '<a class="CH" href="javascript:svcrm.formBuilderScripts.fbCalendar.replaceCal(\'' + id + '\',\'' + this.getPrevMonthDate(sDate) + '\');"><<</a> ' + this.getCurMonthName(sDate) + ' <a class="CH" href="javascript:svcrm.formBuilderScripts.fbCalendar.replaceCal(\'' + id + '\',\'' + this.getNextMonthDate(sDate) + '\');">>></a> '+ '</td> '+ '<td align="right" class="CH"> '+ '<a class="CH" href="javascript:svcrm.formBuilderScripts.fbCalendar.replaceCal(\'' + id + '\',\'' + this.getPrevYearDate(sDate) + '\');"><<</a> ' + sDate.getFullYear() + ' <a class="CH" href="javascript:svcrm.formBuilderScripts.fbCalendar.replaceCal(\'' + id + '\',\'' + this.getNextYearDate(sDate) + '\');">>></a>'+ '</td> '+ '</tr> '+ '</table> '+ '<table border="0" cellpadding="2" cellspacing="1" width="154"> '+ '<tr bgcolor="#ffffff">' + this.dayListTds() + '</tr>' + this.calDays(id, sDate, useToday) + '</table> '+ '</div>' }; return d.calendar; }, calDays: function(id, curDate, useToday){ var rtnvar = ''; var numDaysInMonth = new Date(curDate.getFullYear(), curDate.getMonth()+1, 0).getDate(); var startofmonth = new Date(); startofmonth = new Date(curDate.getFullYear(),curDate.getMonth(),1); var rows = Math.ceil((startofmonth.getDay()+numDaysInMonth)/7); var cday = 1; var firstday = startofmonth.getDay()+1; var lastday = numDaysInMonth; var loopstart = 0; var loopend = 0; var currentDate = new Date(); currentDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate()); for(var i = 1; i <= rows; i++){ rtnvar += '<tr bgcolor="#ffffff">'; loopstart = ((i-1)*7)+1; loopend = loopstart+6; for(var d = loopstart; d <= loopend; d++){ rtnvar += '<td align="center" bgcolor="#ffffff" class="Day">'; if(d >= firstday && cday <= lastday){ var dt = new Date(curDate.getFullYear(), curDate.getMonth(), cday); var tmpDt = new Date(curDate.getFullYear(), curDate.getMonth(), curDate.getDate()); var className = (dt.getTime() == tmpDt.getTime() && useToday) ? 'today' : 'Day'; className += dt.getTime() == currentDate.getTime() ? ' currentDay' : ''; var thisdate = this.convertToUserDate(parseInt(dt.getMonth()+1,10) +'/'+parseInt(dt.getDate(),10)+'/'+parseInt(dt.getFullYear(), 10)); rtnvar += '<a class="' + className + '" href="javascript:svcrm.formBuilderScripts.fbCalendar.updateDate(\'' + id + '\',\'' + thisdate + '\');">' + cday + '</a><br>'; cday++; }else{ rtnvar += ' <br />'; } } rtnvar += '</tr>'; } return rtnvar; }, replaceCal: function (id, sDate) { var cal = this.createCal(id, sDate, false); if (document.getElementById(id + '_calendar')) { document.getElementById(id + '_calendar').innerHTML = cal; } else { var newDomElm = document.createElement('div'); newDomElm.style.position = 'absolute'; newDomElm.innerHTML = cal; newDomElm.id = id + '_calendar'; if (document.getElementById('fieldcontainer_' + id)) { document.getElementById('fieldcontainer_' + id).appendChild(newDomElm); } } return; }, updateDate: function(id, curDate){ document.getElementById(id).value = curDate; //document.getElementById(id).onchange(); if(document.getElementById(id + '_calendar')){ document.getElementById('fieldcontainer_' + id).removeChild(document.getElementById(id + '_calendar')); } if(document.getElementById('datepicker_' + id)){ document.getElementById('datepicker_' + id).onclick = function(){ svcrm.formBuilderScripts.fbCalendar.showDatePicker(document.getElementById(id), document.getElementById(id).value); }; } }, showDatePicker: function(domElm, curDate){ var cleanID = domElm.id.replace('datepicker_', ''); var sDate = new Date(); if(!document.getElementById(cleanID + '_calendar')){ if(document.getElementById(cleanID)){ try{ if(curDate){ sDate = this.convertToUSDate(curDate); if(sDate == 'Invalid Date'){ sDate = new Date(); } } }catch(e){ sDate = new Date(); } this.getCalendar(cleanID, sDate); } }else{ document.getElementById('fieldcontainer_' + cleanID).removeChild(document.getElementById(cleanID + '_calendar')); } }, getCalendar: function(id, curDate){ var newDomElm = document.createElement('div'); newDomElm.style.position = 'absolute'; newDomElm.innerHTML = this.createCal(id, curDate, true); newDomElm.id = id + '_calendar'; newDomElm.className = 'svcrm_datepicker'; document.getElementById('fieldcontainer_' + id).appendChild(newDomElm); }, convertToUSDate: function(dte){ var rtnvar = false; var wrk = dte.split(crm_locale.YAHOO_DATE_FIELD_DELIMITER); var wrkdate = []; var mydate = ''; if(wrk.length > 0){ wrkdate[0] = parseInt(wrk[crm_locale.YAHOO_MDY_DAY_POSITION-1],10); //always holds the day wrkdate[1] = parseInt(wrk[crm_locale.YAHOO_MDY_MONTH_POSITION-1],10); //always holds the month wrkdate[2] = parseInt(wrk[crm_locale.YAHOO_MDY_YEAR_POSITION-1],10); //always holds the year if(wrkdate[1] > 0 && wrkdate[1] < 13){ //Validate the months var monthsWithDaysRegExp = new RegExp("(4|6|9|11)", "gi"); var numdays = 31; if(wrkdate[1] == 2){//feb numdays = 28; //check if leap year if (wrkdate[2] % 4 === 0 && (wrkdate[2] % 100 !== 0 || wrkdate[2] % 400 === 0)){ numdays = 29; } }else if(monthsWithDaysRegExp.test(wrkdate[1])){ numdays = 30; } if(wrkdate[0] > 0 && wrkdate[0] <= numdays){ //validate the days in this month if(wrkdate[2].toString().length == 2){ //if we have a two digit year pad it wrkdate[2] = chkYear(wrkdate[2]); } if(wrkdate[2].toString().length == 4 && !isNaN(wrkdate[2])){ //validate the year, could expand this /* we are here we have a valid month and we have a valid day for that month and we have a valid 4 digit year */ //fld.value = wrkdate.join(crm_locale.YAHOO_DATE_FIELD_DELIMITER); wrk[1] = wrkdate[0]; //put the day back where it should be wrk[0] = wrkdate[1]; //put the month back where it should be wrk[2] = wrkdate[2]; //put the year back where it should be wrkdate = wrk.join("/"); //join on the us delim and return valid rtnvar = true; } } } } if(!rtnvar){ //if we didn't get a good date from above we use today wrkdate = new Date(); } return wrkdate; }, convertToUserDate: function(dte){ var rtnvar = false; var wrk = dte.split("/"); var wrkdate = []; var mydate = ''; if(wrk.length > 0){ wrkdate[0] = parseInt(wrk[1],10); //always holds the day wrkdate[1] = parseInt(wrk[0],10); //always holds the month wrkdate[2] = parseInt(wrk[2],10); //always holds the year if(wrkdate[1] > 0 && wrkdate[1] < 13){ //Validate the months var monthsWithDaysRegExp = new RegExp("(4|6|9|11)", "gi"); var numdays = 31; if(wrkdate[1] == 2){//feb numdays = 28; //check if leap year if (wrkdate[2] % 4 === 0 && (wrkdate[2] % 100 !== 0 || wrkdate[2] % 400 === 0)){ numdays = 29; } }else if(monthsWithDaysRegExp.test(wrkdate[1])){ numdays = 30; } if(wrkdate[0] > 0 && wrkdate[0] <= numdays){ //validate the days in this month if(wrkdate[2].toString().length == 2){ //if we have a two digit year pad it wrkdate[2] = chkYear(wrkdate[2]); } if(wrkdate[2].toString().length == 4 && !isNaN(wrkdate[2])){ //validate the year, could expand this /* we are here we have a valid month and we have a valid day for that month and we have a valid 4 digit year */ //fld.value = wrkdate.join(crm_locale.YAHOO_DATE_FIELD_DELIMITER); wrk[crm_locale.YAHOO_MDY_DAY_POSITION-1] = wrkdate[0]; //put the day back where it should be wrk[crm_locale.YAHOO_MDY_MONTH_POSITION-1] = wrkdate[1]; //put the month back where it should be wrk[crm_locale.YAHOO_MDY_YEAR_POSITION-1] = wrkdate[2]; //put the year back where it should be wrkdate = wrk.join(crm_locale.YAHOO_DATE_FIELD_DELIMITER); //join on the correct delim and return valid rtnvar = true; } } } } if(!rtnvar){ //I dont really know what to do here i guess just use today and convert to their date var t = new Date(); t = t.getMonth()+1 + '/' + t.getDay() + '/' + t.getFullYear(); wrkdate = this.convertToUserDate(t); } return wrkdate; }, convertToUserMDOnlyDate: function(dte){ var dateFormat_MDOnly = crm_locale.DATEFMT_MDONLY.split(crm_locale.YAHOO_DATE_FIELD_DELIMITER); var _day = dte.getDate().toString(); var _month = (dte.getMonth() + 1).toString(); var _dayFormat = ''; var _monthFormat = ''; var _dayPostion = ''; var _monthPostion = ''; if(dateFormat_MDOnly[0].indexOf('d') != -1){ _dayFormat = dateFormat_MDOnly[0]; _monthFormat = dateFormat_MDOnly[1]; _dayPostion = 0; _monthPostion = 1; }else{ _dayFormat = dateFormat_MDOnly[1]; _monthFormat = dateFormat_MDOnly[0]; _dayPostion = 1; _monthPostion = 0; } if(_dayFormat == 'dd' && _day.length != 2){ _day = '0' + _day; } if(_monthFormat == 'mm' && _month.length != 2){ _month = '0' + _month; } var dsp = []; dsp[_dayPostion] = _day; dsp[_monthPostion] = _month; dsp = dsp.join(crm_locale.YAHOO_DATE_FIELD_DELIMITER); return dsp; } }; /* +++++++++++++++++++++++++++ END Script Calendar +++++++++++++++++++++++++++++++++++++*/ if (window.addEventListener) { window.addEventListener('load', svcrm.formBuilderScripts.__onload_function, false); } else if (window.attachEvent) { window.attachEvent('onload', svcrm.formBuilderScripts.__onload_function); } })(); /* +++++++++++++++++++++++++++ BEGIN Script copied from OLD CMS loadCRMForm +++++++++++++++++++++++++++++++++++++*/ </script> <style type="text/css"> /*** Styling for Forms ***/ form.simpleForm {} form.simpleForm fieldset {} form.simpleForm legend {} form.simpleForm label {} form.simpleForm .formreq { color: #CD0F1E;} form.simpleForm input[type="radio"], form.simpleForm input[type="checkbox"] {} form.simpleForm input[type="text"] {} form.simpleForm input.date { cursor: pointer;} form.simpleForm select {} form.simpleForm table { background: none; border: none; margin: 0;} form.simpleForm table tr td { padding: 0;} form.simpleForm .captcha {} #capimage { height: 17px; width:17px;} form.simpleForm .svcrm_datepicker { z-index: 3; } #fbCalendar{ background-color: white; border:1px solid #336699; border-radius:2px; box-shadow: #336699 1px 1px; } #fbCalendar TD { font-size: 12px; font-family: Arial } #fbCalendar .Day { font-size: 12px; color: #000000; border:1px solid transparent;} #fbCalendar .CH { font-size: 12px; color: #336699; font-weight: bold; bgcolor: #cccccc; } #fbCalendar A.today:link, #fbCalendar A.today:visited{text-decoration:none; color:#000000; font-weight: bold;} #fbCalendar A.today:hover{text-decoration:none; color:#CC3300; font-weight: bold;} #fbCalendar A.Day:link, #fbCalendar A.Day:visited{text-decoration:none; color:#990000; font-weight: normal;} #fbCalendar A.Day:hover{text-decoration:none; color:#CC3300; font-weight: normal; border:1px solid #000000;} #fbCalendar A.CH:link, #fbCalendar A.CH:visited{text-decoration:none; color:#336699;} #fbCalendar A.CH:hover{text-decoration:none; color:#0033FF;} #fbCalendar A.close:link, #fbCalendar A.close:visited{font-size: 10px; text-decoration:none; color:#666666;} #fbCalendar A.close:hover{font-size: 10px; text-decoration:underline; color:#666666;} #fbCalendar A:link, #fbCalendar A:visited{text-decoration:none; color:#000099;} #fbCalendar A:hover{text-decoration:none; color:#0000FF;} #fbCalendar .currentDay{border:1px solid #336699; padding: 2px;} #fbCalendar div.fbCalCloseBtn{ background:transparent url(https://Madison.simpleviewcrm.com/core_crm/Resources/images/calx.gif) no-repeat; width:17px; height:13px; float:right; border:2px solid #ffffff; } #fbCalendar div.fbCalCloseBtn:hover{ cursor: pointer; border:2px solid #336699; } /*** Mobile ***/ @media only screen and (max-width: 40em) {} /*** Tablet ***/ @media only screen and (min-width: 40.063em) and (max-width: 64em) {} /*** Desktop ***/ @media only screen and (min-width: 64.063em) { form.simpleForm label { max-width: 430px; text-align: right;} } </style> <style type="text/css"> form.simpleForm input.date { cursor: pointer;} form.simpleForm .captcha {text-align: center;} form.simpleForm .captcha input#code {width:50%; margin: 0 auto; margin-top: 10px;} form.simpleForm .formCntrls {text-align:center;} form.simpleForm .formCntrls input.button { background-color: #1E4383; } </style> </div> </div> <div class="right-container"> <div data-civid="646e2d0f799fe13dcad915bf" class="contentRender contentRender_21 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="46" data-sv-index="21" data-gtm-vars='{ "tCore" : { "contentNum" : "4" } }'><section data-sv-core-textbox data-guid="54bbb527-51f5-470d-b599-8f2fce95f310"> <h3>Follow us on socials</h3> <p>Wherever you are online, we're there sharing the best of the best photos, videos and stories. Follow @destinationmadison on <a data-sv-linklookup-id="https://www.facebook.com/destinationmadison" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.facebook.com/destinationmadison" target="_blank">Facebook</a>, <a data-sv-linklookup-id="https://www.instagram.com/destinationmadison/" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.instagram.com/destinationmadison/" target="_blank">Instagram</a>, <a data-sv-linklookup-id="https://www.tiktok.com/@destinationmadison?is_from_webapp=1&sender_device=pc" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.tiktok.com/@destinationmadison?is_from_webapp=1&sender_device=pc" target="_blank">TikTok</a>, <a data-sv-linklookup-id="https://www.linkedin.com/company/destination-madison/" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.linkedin.com/company/destination-madison/" target="_blank">LinkedIn</a>, <a data-sv-linklookup-id="https://www.youtube.com/@DestinationMadison" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.youtube.com/@DestinationMadison" target="_blank">YouTube</a> and <a data-sv-linklookup-id="https://www.pinterest.com/destinationmadison/" data-sv-linklookup-type="plugins_nav_external_link" data-sv-targetauto="true" href="https://www.pinterest.com/destinationmadison/" target="_blank">Pinterest</a>. Use #DestinationMadison in your posts for a chance to be featured.</p> </section></div><div data-civid="646e2d0f799fe13dcad915c1" class="contentRender contentRender_22 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="45" data-sv-index="22" data-gtm-vars='{ "tCore" : { "contentNum" : "5" } }'><section data-sv-core-textbox data-guid="8ca0a0f7-a1ec-4932-8964-b2bd94be807b"> <blockquote cite="https://www.tiktok.com/@destinationmadison" class="tiktok-embed" data-embed-type="creator" data-unique-id="destinationmadison" style="max-width: 780px; min-width: 288px;"> <section><a href="https://www.tiktok.com/@destinationmadison?refer=creator_embed" target="_blank">@destinationmadison</a></section> </blockquote> <script async src="https://www.tiktok.com/embed.js"></script> </section></div> </div> </div></div><div data-civid="646e2d0f799fe13dcad915c3" class="contentRender contentRender_23 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="35" data-sv-index="23" data-gtm-vars='{ "tCore" : { "contentNum" : "6" } }'><section data-sv-core-textbox data-guid="365a5699-425d-40ba-b06d-f12dbe780144"> <hr /> <p> </p> </section></div><div data-civid="646e2d0f799fe13dcad915c5" class="contentRender contentRender_24 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="44" data-sv-index="24" data-gtm-vars='{ "tCore" : { "contentNum" : "7" } }'><section data-sv-core-textbox data-guid="6894a223-abd9-4977-8ae3-120ef1fe870e"> <h2>Become a Partner</h2> <script id="cr-init__61a94a4d85b56094" src="https://starling.crowdriff.com/js/crowdriff.js" lang="en" async></script> <p>We partner with local businesses and organizations to inspire a love of Madison and drive economic growth. With packages designed for hospitality businesses that fit any budget, you can select a level that aligns with your goals. Learn more about becoming a <a data-sv-linklookup-id="5e47017bbce60830cc8fd1fb" data-sv-linklookup-type="plugins_nav_navitem_primary20_secondary" data-sv-targetauto="true" href="https://www.visitmadison.com/partners/" target="_self">Destination Madison partner</a>.</p> </section></div><div data-civid="646e2d0f799fe13dcad915c7" class="contentRender contentRender_25 contentRender_type_panel contentRender_name_plugins_common_three_col" data-sv-time="0" data-sv-index="25" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><div class="panel_custom_three_col marginbottom"> <div class="row bgcolor"> <div class="columns medium-4"> <div data-civid="646e2d0f799fe13dcad915c9" class="contentRender contentRender_26 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="33" data-sv-index="26" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="custom-button align-center" data-guid="7f33121b-b025-4471-af18-d413a83b1ce7"> <a class="button-link" href="https://www.visitmadison.com/partners/hospitality-businesses/" target="_self">Hospitality Businesses</a> </div></div> </div> <div class="columns medium-4"> <div data-civid="646e2d0f799fe13dcad915cb" class="contentRender contentRender_27 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="33" data-sv-index="27" data-gtm-vars='{ "tCore" : { "contentNum" : "2" } }'> <div class="custom-button align-center" data-guid="9588fc02-6d2e-4482-9d17-009886bc5521"> <a class="button-link" href="https://www.visitmadison.com/partners/corporate-businesses/" target="_self">Corporate Businesses</a> </div></div> </div> <div class="columns medium-4"> <div data-civid="646e2d0f799fe13dcad915cd" class="contentRender contentRender_28 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="33" data-sv-index="28" data-gtm-vars='{ "tCore" : { "contentNum" : "3" } }'> <div class="custom-button align-center" data-guid="95b0edf5-205a-4d07-809a-63f698023d66"> <a class="button-link" href="https://www.canva.com/design/DAFStJwrGSY/Y0KNEax3dU2w4buXT9VNrw/view?website" target="_blank">2022 Impact Report</a> </div></div> </div> </div> </div></div><div data-civid="646e2d0f799fe13dcad915cf" class="contentRender contentRender_29 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="34" data-sv-index="29" data-gtm-vars='{ "tCore" : { "contentNum" : "8" } }'><section data-sv-core-textbox data-guid="82f06b88-7d49-4a3e-bd2e-96622ecc35b5"> <hr /> <p> </p> </section></div><div data-civid="646e2d0f799fe13dcad915d1" class="contentRender contentRender_30 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="34" data-sv-index="30" data-gtm-vars='{ "tCore" : { "contentNum" : "9" } }'><section data-sv-core-textbox data-guid="037135a9-e9c2-48b6-a815-11ec8fe8fe5f"> <h2>Bring Your Meeting Home</h2> <script id="cr-init__5914741a943314dd" src="https://starling.crowdriff.com/js/crowdriff.js" lang="en" async></script> <p>Madison is a vibrant, lively and thriving home. Why not share it with your colleagues? Connect your industry contacts with your community and create economic impact to improve resident income, job creation and quality of life right here in Madison. Ready to bring your meeting home? </p> </section></div><div data-civid="646e2d0f799fe13dcad915d3" class="contentRender contentRender_31 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="34" data-sv-index="31" data-gtm-vars='{ "tCore" : { "contentNum" : "4" } }'> <div class="custom-button align-center" data-guid="8d0ffdfc-3526-4e2e-beca-6004596f9686"> <a class="button-link" href="https://www.visitmadison.com/meetings/bring-your-meeting-home/" target="_self">Learn more</a> </div></div><div data-civid="646e2d0f799fe13dcad915d5" class="contentRender contentRender_32 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="34" data-sv-index="32" data-gtm-vars='{ "tCore" : { "contentNum" : "10" } }'><section data-sv-core-textbox data-guid="b44ab841-b222-4d4f-854e-fc13c064c4ee"> <hr /> <p> </p> </section></div><div data-civid="646e2d0f799fe13dcad915d7" class="contentRender contentRender_33 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="41" data-sv-index="33" data-gtm-vars='{ "tCore" : { "contentNum" : "11" } }'><section data-sv-core-textbox data-guid="083cddb0-7d14-4f41-ad4c-bf72343786da"> <h2>Work with us</h2> <script id="cr-init__3cc155ba3bf1cdbe" src="https://starling.crowdriff.com/js/crowdriff.js" lang="en" async></script> <p>Ready to make loving Madison your career? Check out our careers page to learn more about current openings. Looking for networking opportunities? Meet our team of Madison experts who are ready to share the love.</p> <!-- HiringThing Listing Widget --><script type="text/javascript"> var ht_settings = ( ht_settings || new Object() ); ht_settings.site_url = "destination-madison"; // set this to true if you want jobs to open in a new window ht_settings.open_jobs_in_new_tab = false; </script><script src="https://assets.hiringthing.com/javascripts/embed.js" type="text/javascript"></script> <div id="hiringthing-jobs"><em><span style="font-size: 10.8333px;"> </span>Applications will be reviewed upon receipt.  Please submit your application as soon as possible for early consideration. Destination Madison is an Equal Opportunity/Affirmative Action Employer.</em></div> <!-- widget stylesheet can be overridden or replaced for customization --> <link href="https://assets.hiringthing.com/stylesheets/embed.css" media="all" rel="stylesheet" type="text/css"><noscript> <a href="https://destination-madison.hiringthing.com">View our currently open positions.</a> <br><br> <small>Job listings brought to you by <a href="https://www.hiringthing.com">HiringThing</a>.</small> </noscript><!-- end HiringThing Listing Widget --> <!-- HiringThing Signup Widget --> <!-- displays signup form for HiringThing applicants --> <!-- Supported options --> <!-- data-jobs-url (required): The url of the hosted careers page. --> <!-- data-signup (required): Should be set to true. --> <div data-jobs-url="https://destination-madison.hiringthing.com" data-signup="true"> </div> <script async src="https://assets.applicant-tracking.com/webpack/forms_widget.js"></script> <!-- end HiringThing Signup Widget --> </section></div><div data-civid="646e2d0f799fe13dcad915d9" class="contentRender contentRender_34 contentRender_type_panel contentRender_name_plugins_common_three_col" data-sv-time="3" data-sv-index="34" data-gtm-vars='{ "tCore" : { "contentNum" : "2" } }'><div class="panel_custom_three_col marginbottom"> <div class="row "> <div class="columns medium-4"> <div data-civid="646e2d0f799fe13dcad915db" class="contentRender contentRender_35 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="32" data-sv-index="35" data-gtm-vars='{ "tCore" : { "contentNum" : "5" } }'> <div class="custom-button " data-guid="4ea4edd2-5079-4534-aace-a2ec1a21b185"> <a class="button-link" href="https://www.visitmadison.com/about-us/our-team/job-openings/" target="_self">Learn more about careers</a> </div></div> </div> <div class="columns medium-4"> <div data-civid="646e2d0f799fe13dcad915dd" class="contentRender contentRender_36 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="32" data-sv-index="36" data-gtm-vars='{ "tCore" : { "contentNum" : "6" } }'> <div class="custom-button " data-guid="014bf1a0-dee7-4b48-a099-51f9db5a2a8d"> <a class="button-link" href="https://www.visitmadison.com/about-us/our-team/" target="_self">Meet the team</a> </div></div> </div> <div class="columns medium-4"> <div data-civid="646e2d0f799fe13dcad915df" class="contentRender contentRender_37 contentRender_type_widget contentRender_name_plugins_common_button" data-sv-time="33" data-sv-index="37" data-gtm-vars='{ "tCore" : { "contentNum" : "7" } }'> <div class="custom-button " data-guid="c5b4fab6-4ae9-45e4-869f-7d3b918bf745"> <a class="button-link" href="https://www.visitmadison.com/about-us/" target="_self">About Destination Madison</a> </div></div> </div> </div> </div></div> </div> <div class="footer-container"> <div data-civid="5e46e5592159982ccf464327" class="contentRender contentRender_38 contentRender_type_panel contentRender_name_plugins_common_footer_primary20" data-sv-time="1" data-sv-index="38" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><div class="panel-footer"> <div class="footer-top"> <div data-civid="66d0c4732079820fbc291cf0" class="contentRender contentRender_39 contentRender_type_widget contentRender_name_plugins_common_enews" data-sv-time="33" data-sv-index="39" data-gtm-vars='{ "tCore" : { "contentNum" : "2" } }'> <a href="https://www.visitmadison.com/plan/newsletter-signup/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Navigation Callout", "linkObject": "E-Newsletter | Get%20monthly%20updates%20and%20more.%20Sign%20Up%20Now", "interactionSource": "widget", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fplan%2Fnewsletter-signup%2F", "interactionText": "Get monthly updates and more. Sign Up Now" } }'> <div class="enews" data-guid="19381da6-c733-4617-b8a9-489326c51c87"> <div class="img-cont"> <img src="/includes/public/assets/shared/M.svg"> </div> <div class="content-section"> <h4>Inspire Your Inbox</h4> <p>Get monthly updates and more. Sign Up Now<i class="fas fa-chevron-right"></i></p> </div> </div> </a></div> <div data-civid="66d0c4732079820fbc291cf2" class="contentRender contentRender_40 contentRender_type_widget contentRender_name_plugins_common_visitors_guide" data-sv-time="33" data-sv-index="40" data-gtm-vars='{ "tCore" : { "contentNum" : "2" } }'> <a href="https://www.visitmadison.com/madison-on-tap/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Navigation Callout", "linkObject": "Visitors Guide | Sign%20Up%20Now", "interactionSource": "widget", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fmadison-on-tap%2F", "interactionText": "Sign%20Up%20Now" } }'> <div class="visitors-guide has-image" data-guid="78f363ea-2ab8-405c-a423-b4d0cfc1a93b"> <div class="content-section"> <h4>Explore Madison On Tap</h4> <p>Sign Up Now<i class="fas fa-chevron-right"></i></p> </div> <div class="img-cont"> <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,f_jpg,g_xy_center,h_196,q_65,w_158,x_598,y_760/v1/clients/madison/Doundrins_Distilling_2022_0006_large_ba8ac8ff-ebb1-402a-8cec-ac5a42c6bf45.jpg" alt="A woman smiles while sitting at a bar with three bottles of Doundrins Distilling liquor in front of her"> </div> <div class="waves"> <img src="/includes/public/assets/shared/waves.svg" alt="visual decoration"> </div> </div> </a></div> <div data-civid="66d0c4732079820fbc291cf4" class="contentRender contentRender_41 contentRender_type_widget contentRender_name_plugins_common_planner_toolkit" data-sv-time="33" data-sv-index="41" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <a href="https://www.visitmadison.com/plan/visitors-guide/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Navigation Callout", "linkObject": "Planner Toolkit | View%20%26%20Download", "interactionSource": "widget", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fplan%2Fvisitors-guide%2F", "interactionText": "View%20%26%20Download" } }'> <div class="planner-toolkit" data-guid="0d514c95-db4d-4be9-9cc2-eea0749614ff"> <div class="content-section"> <div class="title"> <div class="asterisk"><img src="/includes/public/assets/shared/asterisk.svg"></div> <h4>Free Inspiration Guide </h4> </div> <p>View & Download<i class="fas fa-chevron-right"></i></p> </div> </div> </a></div> </div> <div class="footer-inner"> <div class="logo-cont"> <div data-civid="66d0c4732079820fbc291cf6" class="contentRender contentRender_42 contentRender_type_widget contentRender_name_plugins_common_logo_footer" data-sv-time="32" data-sv-index="42" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'><div class="logo-footer" data-guid="17287e5b-8ec8-4903-8710-74436f3a8e1e" > <a href="https://www.visitmadison.com/" target="_self" aria-label="Destination Madison"> <img src="/includes/public/assets/shared/logo-footer.svg" alt="Destination Madison"> </a> </div></div> </div> <div class="nav-cont"> <div data-civid="66d0c4732079820fbc291cfe" class="contentRender contentRender_46 contentRender_type_widget contentRender_name_plugins_nav_footer_primary20" data-sv-time="38" data-sv-index="46" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <ul class="navFooter" data-gtm-vars='{"tClient_ga4": {"eventName": "navigation_click", "navType": "Footer", "interactionSource": "navigation"}}' > <li class="item item-parent row-1"> <a href="https://www.visitmadison.com/about-us/" target="_self" class="" title="About" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "About", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fabout-us%2F", "interactionText": "About"}}' >About</a> </li> <li class="item item-parent row-2"> <a href="/contact/" target="_self" class="" title="Contact" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Contact", "interactionUrl": "%2Fcontact%2F", "interactionText": "Contact"}}' >Contact</a> </li> <li class="item item-parent row-3"> <a href="/jobs/" target="_self" class="" title="Jobs" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Jobs", "interactionUrl": "%2Fjobs%2F", "interactionText": "Jobs"}}' >Jobs</a> </li> <li class="item item-parent row-4"> <a href="/privacy-policy/" target="_self" class="" title="Privacy Policy" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Privacy%20Policy", "interactionUrl": "%2Fprivacy-policy%2F", "interactionText": "Privacy%20Policy"}}' >Privacy Policy</a> </li> <li class="item item-parent row-5"> <a href="/terms-of-use/" target="_self" class="" title="Terms of Use" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Terms%20of%20Use", "interactionUrl": "%2Fterms-of-use%2F", "interactionText": "Terms%20of%20Use"}}' >Terms of Use</a> </li> <li class="item item-parent row-6 last"> <a href="/sitemap/" target="_self" class="" title="Sitemap" data-gtm-click data-gtm-vars='{"tClient_ga4": {"linkObject": "Sitemap", "interactionUrl": "%2Fsitemap%2F", "interactionText": "Sitemap"}}' >Sitemap</a> </li> </ul> </div> </div> <div class="social-cont"> <div data-civid="66d0c4732079820fbc291cf8" class="contentRender contentRender_43 contentRender_type_widget contentRender_name_plugins_collections_type_custom_social_slides contentRender_name_plugins_collections_template_custom_social_links" data-sv-time="58" data-sv-index="43" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <div class="social-links round-icons"> <ul> <li class="social-network" data-platform="Instagram"> <a class="social-link" href="https://www.instagram.com/destinationmadison" target="_blank" rel="noopener" title="Visit our Instagram page" aria-label="Visit our Instagram page" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Social Links", "linkObject": "Social | Instagram", "interactionSource" : "widget", "interactionUrl" : "https%3A%2F%2Fwww.instagram.com%2Fdestinationmadison", "interactionText" : "Instagram" } }' > <i class="social-icon fab fa-instagram" aria-hidden="true" ></i> </a> </li> <li class="social-network" data-platform="Tiktok"> <a class="social-link" href="https://www.tiktok.com/@destinationmadison" target="_blank" rel="noopener" title="Visit our Tiktok page" aria-label="Visit our Tiktok page" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Social Links", "linkObject": "Social | Tiktok", "interactionSource" : "widget", "interactionUrl" : "https%3A%2F%2Fwww.tiktok.com%2F%40destinationmadison", "interactionText" : "Tiktok" } }' > <i class="social-icon fab fa-tiktok" aria-hidden="true" ></i> </a> </li> <li class="social-network" data-platform="Facebook"> <a class="social-link" href="https://www.facebook.com/destinationmadison/" target="_blank" rel="noopener" title="Visit our Facebook page" aria-label="Visit our Facebook page" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Social Links", "linkObject": "Social | Facebook", "interactionSource" : "widget", "interactionUrl" : "https%3A%2F%2Fwww.facebook.com%2Fdestinationmadison%2F", "interactionText" : "Facebook" } }' > <i class="social-icon fab fa-facebook" aria-hidden="true" ></i> </a> </li> <li class="social-network" data-platform="Linkedin"> <a class="social-link" href="https://www.linkedin.com/company/destination-madison" target="_blank" rel="noopener" title="Visit our Linkedin page" aria-label="Visit our Linkedin page" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Social Links", "linkObject": "Social | Linkedin", "interactionSource" : "widget", "interactionUrl" : "https%3A%2F%2Fwww.linkedin.com%2Fcompany%2Fdestination-madison", "interactionText" : "Linkedin" } }' > <i class="social-icon fab fa-linkedin" aria-hidden="true" ></i> </a> </li> <li class="social-network" data-platform="Pinterest"> <a class="social-link" href="https://www.pinterest.com/destinationmadison" target="_blank" rel="noopener" title="Visit our Pinterest page" aria-label="Visit our Pinterest page" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Social Links", "linkObject": "Social | Pinterest", "interactionSource" : "widget", "interactionUrl" : "https%3A%2F%2Fwww.pinterest.com%2Fdestinationmadison", "interactionText" : "Pinterest" } }' > <i class="social-icon fab fa-pinterest" aria-hidden="true" ></i> </a> </li> <li class="social-network" data-platform="Youtube"> <a class="social-link" href="https://www.youtube.com/c/DestinationMadison" target="_blank" rel="noopener" title="Visit our Youtube page" aria-label="Visit our Youtube page" data-gtm-click data-gtm-vars='{ "tClient_ga4" : {"eventName" : "navigation_click", "navType" : "Social Links", "linkObject": "Social | Youtube", "interactionSource" : "widget", "interactionUrl" : "https%3A%2F%2Fwww.youtube.com%2Fc%2FDestinationMadison", "interactionText" : "Youtube" } }' > <i class="social-icon fab fa-youtube-square" aria-hidden="true" ></i> </a> </li> </ul> </div></div> </div> <div class="text-cont"> <div class="mobile-footer-cont"> <div data-civid="66d0c4732079820fbc291cfa" class="contentRender contentRender_44 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="39" data-sv-index="44" data-gtm-vars='{ "tCore" : { "contentNum" : "12" } }'><section data-sv-core-textbox data-guid="6b804524-3760-4678-8603-b4d6dbcc4281"> <p style="text-align: center;">22 e. mifflin street, suite 200</p> <p style="text-align: center;">madison, wi 53703</p> <p style="text-align: center;"><a href="tel:608-255-2537">(608) 255-2537</a> • <a href="tel:800-373-6376">(800) 373-6376</a></p> <p style="text-align: center;"><a href="mailto:info@visitmadison.com">info@visitmadison.com</a></p> </section></div> </div> <div class="desktop-footer-cont"> <div data-civid="66d0c4732079820fbc291cfc" class="contentRender contentRender_45 contentRender_type_widget contentRender_name_plugins_core_textbox" data-sv-time="39" data-sv-index="45" data-gtm-vars='{ "tCore" : { "contentNum" : "13" } }'><section data-sv-core-textbox data-guid="6f83f001-60c7-4dae-9c4c-29ea40c50f47"> <p>22 e. mifflin street, suite 200, madison, wi 53703</p> <p><a href="tel:608-255-2537">(608) 255-2537</a> • <a href="tel:800-373-6376">(800) 373-6376</a> • <a href="mailto:info@visitmadison.com">info@destinationmadison.com</a></p> </section></div> </div> <div class="copyright"> <p>© Destination Madison</p> </div> </div> <div class="partners-cont"> <div data-civid="66d0c4732079820fbc291d00" class="contentRender contentRender_47 contentRender_type_widget contentRender_name_plugins_collections_type_custom_partner_slides contentRender_name_plugins_collections_template_custom_partner_logos" data-sv-time="56" data-sv-index="47" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <ul class="partner-logos" data-gtm-vars='{ "tClient_ga4" : { "interactionSource" : "widget", "widgetName" : "Partner Logos", "interactionSource": "widget" } }'> <li class="only-sports">Our Partners</li> <li class="partner"> <a href="https://livability.com/best-places/2021-top-100-best-places-to-live-in-america/?utm_source=cision&utm_medium=email&utm_campaign=2021_BestPlaces&utm_id=2021+Top+100+Best+Places+to+Live+list" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "interactionUrl": "https%3A%2F%2Flivability.com%2Fbest-places%2F2021-top-100-best-places-to-live-in-america%2F%3Futm_source%3Dcision%26utm_medium%3Demail%26utm_campaign%3D2021_BestPlaces%26utm_id%3D2021%2BTop%2B100%2BBest%2BPlaces%2Bto%2BLive%2Blist" } }' > <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,q_75/v1/clients/madison/MicrosoftTeams_image_8c95af96-d297-4724-b095-285d407adcb3.png" alt="Livability Top 100 Logo"> </a> </li> <li class="partner"> <a href="https://destinationsinternational.org/" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "interactionUrl": "https%3A%2F%2Fdestinationsinternational.org%2F" } }' > <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,q_75/v1/clients/madison/partner1_0d2c4d14-30cd-4d16-90dc-675acd7d29e0.png" alt="partner1"> </a> </li> <li class="partner"> <a href="https://www.travelwisconsin.com/travel-resources/travel-green-wisconsin" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "interactionUrl": "https%3A%2F%2Fwww.travelwisconsin.com%2Ftravel-resources%2Ftravel-green-wisconsin" } }' > <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,q_75/v1/clients/madison/Travel_Green_logo_resize_951770f4-d6ca-43f3-9023-81299fcdb8b6.png" alt="Travel Green logo"> </a> </li> <li class="partner"> <a href="http://www.escapetowisconsin.com/" target="_blank" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "interactionUrl": "http%3A%2F%2Fwww.escapetowisconsin.com%2F" } }' > <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,q_75/v1/clients/madison/partner3_959847ae-5c9e-4bfb-9c7c-7fb3aa1f62a1.png" alt="partner3"> </a> </li> <li class="partner"> <a href="https://www.visitmadison.com/sports/" target="_self" data-gtm-click data-gtm-vars='{ "tClient_ga4" : { "linkObject" : "Image", "interactionUrl": "https%3A%2F%2Fwww.visitmadison.com%2Fsports%2F" } }' > <img src="https://assets.simpleviewinc.com/simpleview/image/upload/c_fill,q_75/v1/clients/madison/Untitled_design_7__5aeae412-af96-408e-b4ff-70286b4d9334.png" alt="Madison Area Sports Commission Logo"> </a> </li> </ul></div> </div> <div class="bottom-logos"> <div class="trip-advisor"> <a href="https://www.tripadvisor.com/" target="_blank"> <img src="/includes/public/assets/shared/tripadvisor.svg"> </a> </div> <div class="simpleview-logo"> <a href="https://www.simpleviewinc.com/our-services/creative-design/" target="_blank"> <img src="/includes/public/assets/shared/sv-logo.svg"/> </a> </div> </div> </div> <div class="mobile-fixed"> <div data-civid="66d0c4732079820fbc291d02" class="contentRender contentRender_48 contentRender_type_widget contentRender_name_plugins_common_cookie_banner" data-sv-time="32" data-sv-index="48" data-gtm-vars='{ "tCore" : { "contentNum" : "1" } }'> <dialog class="cookie-banner dismissed hide" data-guid="a456126e-3c21-4600-91db-8377df4a6e27"> <div class="banner-inner"> <div class="banner-message"> <p>Would you like to accept cookies?</p> </div> <div class="banner-close"> <button class="button site-style" aria-label="Close cookie banner" data-sv-close-banner> Accept </button> </div> </div> </dialog> <script> require([ 'jquery', 'sv_clientLib' ], function ($, clientLib) { var root = $('[data-guid="a456126e-3c21-4600-91db-8377df4a6e27"]'); var bannerSeen = clientLib.getCookie('cookie-banner-seen'); if (bannerSeen !== "true") { root.removeClass('hide'); root.attr('open', true); setTimeout(function() { root.removeClass('dismissed'); }, 500); } root.find('[data-sv-close-banner]').on('click', function() { root.addClass('dismissed'); root.removeAttr('open') setTimeout(function() { root.addClass('hide'); }, 500); clientLib.setCookie({ name : 'cookie-banner-seen', value : 'true', path : '/', 'max-age' : 1438560*60 // 999 days }); }); }); </script></div> </div> </div> </div> </div> </div> <div id="quickview-detail" data-quickview-detail></div></div> <!-- footer css bundles --> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/custom_quickview.css"/> <link rel="stylesheet" href="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/css/custom_footer.css"/> <!-- footer js bundles --> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/core/public/js/loginCheck.js"></script> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/js/shared_footer.js"></script> <script src="/includes/public/managed/v_df9c14a4_f9492642/core/plugins/common/virtuals/js/custom_forms.js"></script> <!-- bottomBody --> <script data-id="site_global_footer"> require(["sv_clientLib", "sv_load!plugins_dynamic_content"], function(clientLib) { clientLib._initLazy(); }); </script> </body> </html>