### Initialize and Log Amplitude Event Source: https://support.fieldnation.com/ This snippet initializes the Amplitude SDK with an API key and logs a 'Navigated' event. Ensure Amplitude is loaded before calling these methods. ```javascript Support Central (function(e,t){var n=e.amplitude||{"_q":[],"_iq":{}};var r=t.createElement("script") ;r.type="text/javascript" ;r.integrity="sha384-tzcaaCH5+KXD4sGaDozev6oElQhsVfbJvdi3//c2YvbY02LrNlbpGdt3Wq4rWonS" ;r.crossOrigin="anonymous";r.async=true ;r.src="https://cdn.amplitude.com/libs/amplitude-8.5.0-min.gz.js" ;r.onload=function(){if(!e.amplitude.runQueuedFunctions){ console.log("[Amplitude] Error: could not load SDK")}} ;var i=t.getElementsByTagName("script")[0];i.parentNode.insertBefore(r,i) ;function s(e,t){e.prototype[t]=function(){ this._q.push([t].concat(Array.prototype.slice.call(arguments,0)));return this}} var o=function(){this._q=[] ;return this} ;var a=["add","append","clearAll","prepend","set","setOnce","unset","preInsert","postInsert","remove"] ;for(var c=0;c { if(event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormReady') { if (event.data.id) { var form_id = event.data.id; field_revenue = document.getElementById( 'revenue___dd' + '-' + form_id ); field_ ``` -------------------------------- ### Configure AddToAny Social Menu Source: https://fieldnation.com/contact CSS and JavaScript configuration for the AddToAny social sharing menu. ```css .a2a_menu a { color: #636b88!important; } .addtoany_header { margin: 0 10px 0 0!important; display: inline; font-weight: bold; color: #636b88!important; } /*# sourceURL=addtoany-inline-css */ ``` ```javascript /* */ ``` -------------------------------- ### ChiliPiper Chat Widget Configuration Source: https://fieldnation.com/field-nation-integrations Initializes the ChiliPiper chat widget with specific configuration settings, including workspace ID, tenant ID, and the chat URL. This snippet is used to embed the chat functionality on a webpage. ```javascript window.ChiliChat = { config: { workspaceId: '4edeaafe-4a5f-4ca9-a957-c1b6ec983b3e', tenantId: 'field.nation.1', chatUrl: 'https://fieldnation.chilipiper.com/chat/widget/', }, } ``` -------------------------------- ### Configure Google Analytics Consent (US Default) Source: https://fieldnation.com/contact Sets default Google Analytics consent settings for the US region, granting all storage and personalization options. It also enables data redaction and URL passthrough. ```javascript window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gt a g('consent', 'default', { 'ad_personalization': 'granted', 'ad_storage': 'granted', 'ad_user_data': 'granted', 'analytics_storage': 'granted', 'functionality_storage': 'granted', 'personalization_storage': 'granted', 'security_storage': 'granted', 'region': ['US'], 'wait_for_update': 500, }); ``` -------------------------------- ### Google Analytics Consent Configuration Source: https://fieldnation.com/field-nation-integrations Configures Google Analytics consent settings for different regions and types of data storage. It sets default consent states and allows for specific overrides. ```javascript window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments) } // Strict Settings gtag("consent", "default", { 'ad_personalization': "denied", 'ad_storage': "denied", 'ad_user_data': "denied", 'analytics_storage': "denied", 'functionality_storage': "granted", 'personalization_storage': "granted", 'security_storage': "granted", 'region': ['US-CA'], 'wait_for_update': 500 }); // US default settings gtag('consent', 'default', { 'ad_personalization': 'granted', 'ad_storage': 'granted', 'ad_user_data': 'granted', 'analytics_storage': 'granted', 'functionality_storage': 'granted', 'personalization_storage': 'granted', 'security_storage': 'granted', 'region': ['US'], 'wait_for_update': 500, }); // Default Settings gtag("consent", "default", { 'ad_personalization': "denied", 'ad_storage': "denied", 'ad_user_data': "denied", 'analytics_storage': "denied", 'functionality_storage': "granted", 'personalization_storage': "granted", 'security_storage': "granted", 'wait_for_update': 500 }); gtag("set", "ads_data_redaction", true); gtag("set", "url_passthrough", true); ``` -------------------------------- ### Listen for HubSpot Form Events Source: https://fieldnation.com/contact This code listens for HubSpot form events, specifically 'onFormReady' and 'onFormSubmit'. It sets hidden fields for 'source_url' and 'submission_timestamp' when the form is ready and updates the timestamp on submit. ```javascript window.addEventListener('message', function(event) { if (event.data && event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormReady') { const urlInput = document.querySelector('input[name="source_url"]'); if (urlInput) { urlInput.value = window.location.href; } const tsInput = document.querySelector('input[name="submission_timestamp"]'); if (tsInput) { const nowMs = Date.now(); tsInput.value = nowMs; } } if (event.data && event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormSubmit') { const tsInput2 = document.querySelector('input[name="submission_timestamp"]'); if (tsInput2) { tsInput2.value = Date.now(); } } }); ``` -------------------------------- ### APXT Redlining CSS Variables Source: https://support.fieldnation.com/ This section defines a comprehensive set of CSS variables for the APXT Redlining design system. These variables control colors, spacing, z-index, typography, and more. ```css :root{ --APXT_Redlining-paletteIndigo10:rgb(32, 6, 71); --APXT_Redlining-popoverWalkthroughHeaderImage:; --APXT_Redlining-zIndexDialog:6000; --APXT_Redlining-colorPickerSelectorWidth:14rem; --APXT_Redlining-nubbinSizeDefault:1rem; --APXT_Redlining-paletteCloudBlue40:rgb(5, 98, 138); --APXT_Redlining-colorBackgroundContextBarInverseItemHover:rgba(255, 255, 255, 0.2); --APXT_Redlining-dropZoneSlotHeight:0.25rem; --APXT_Redlining-colorTextTabLabelSelected:rgb(1, 118, 211); --APXT_Redlining-colorStrokeBrandActive:rgb(3, 45, 96); --APXT_Redlining-paletteIndigo15:rgb(31, 9, 116); --APXT_Redlining-cardBodyPadding:0 1rem; --APXT_Redlining-varSpacingHorizontalSmall:0.75rem; --APXT_Redlining-tableColorBackgroundHeaderResizableHandle:rgb(174, 174, 174); --APXT_Redlining-colorBackgroundPathActiveHover:rgb(3, 45, 96); --APXT_Redlining-brandPrimaryTransparent:rgba(21, 137, 238, 0.1); --APXT_Redlining-brandPrimaryTransparent40:rgba(21, 137, 238, 0.4); --APXT_Redlining-colorBorderButtonDefault:rgb(201, 201, 201); --APXT_Redlining-paletteIndigo20:rgb(50, 29, 113); --APXT_Redlining-popoverColorText:rgb(201, 201, 201); --APXT_Redlining-paletteCloudBlue30:rgb(8, 73, 104); --APXT_Redlining-colorTextButtonDefaultActive:rgb(1, 118, 211); --APXT_Redlining-colorPickerSliderHeight:1.5rem; --APXT_Redlining-colorTextIconInverse:rgb(255, 255, 255); --APXT_Redlining-heightFooter:3.75rem; --APXT_Redlining-splitViewColorBorder:rgb(201, 201, 201); --APXT_Redlining-colorBorderRowSelectedHover:rgb(27, 150, 255); --APXT_Redlining-fontSizeTextXxSmall:0.625rem; --APXT_Redlining-lineHeightHeading:1.25; --APXT_Redlining-cardHeaderMargin:0 0 0.75rem; --APXT_Redlining-paletteIndigo30:rgb(47, 44, 183); --APXT_Redlining-mqMediumLandscape:only screen and (min-width: 48em) and (min-aspect-ratio: 4/3); --APXT_Redlining-brandBandImageHeightMedium:12.5rem; --APXT_Redlining-illustrationColorSecondary:rgb(207, 233, 254); --APXT_Redlining-zIndexDefault:1; --APXT_Redlining-colorBorderSelectionActive:rgb(243, 243, 243); --APXT_Redlining-paletteCloudBlue20:rgb(2, 50, 72); --APXT_Redlining-utilityBarColorBackgroundNotificationFocus:rgb(201, 201, 201); --APXT_Redlining-colorTextIconDefaultDisabled:rgb(201, 201, 201); --APXT_Redlining-colorTextBrand:rgb(27, 150, 255); --APXT_Redlining-durationToastMedium:9.6s; --APXT_Redlining-colorBackgroundButtonIconActive:rgb(243, 243, 243); --APXT_Redlining-brandHeaderContrastWeak:rgb(145, 145, 145); --APXT_Redlining-colorBackgroundNotificationNew:rgb(243, 243, 243); --APXT_Redlining-brandHeaderContrastInverseActive:rgb(238, 238, 238); --APXT_Redlining-colorBackgroundInputCheckboxSelected:rgb(27, 150, 255); --APXT_Redlining-progressColorBorder:rgb(255, 255, 255); --APXT_Redlining-spacingXxxSmall:0.125rem; --APXT_Redlining-paletteIndigo40:rgb(58, 73, 218); --APXT_Redlining-colorBackgroundProgressRingContent:rgb(255, 255, 255); --APXT_Redlining-lineHeightButtonSmall:1.75rem; --APXT_Redlining-salesforceSansBoldItalicWoff:url(/_sl ``` -------------------------------- ### HubSpot Form Event Listeners Source: https://fieldnation.com/field-nation-integrations Listens for HubSpot form events like 'onFormReady' and 'onBeforeFormSubmit' to manipulate form fields or perform actions before submission. It dynamically sets hidden fields for source URL and submission timestamp. ```javascript window.addEventListener('message', event => { if(event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormReady') { if (event.data.id) { var form_id = event.data.id; field_revenue = document.getElementById( 'revenue___dd' + '-' + form_id ); field_business_model = document.getElementById( 'business_model' + '-' + form_id ); field_geographic_coverage = document.getElementById( 'geographic_coverage' + '-' + form_id ); field_number_of_locations_serviced = document.getElementById( 'number_of_locations_serviced' + '-' + form_id ); field_marketing_icp_score = document.querySelector("[name='marketing_icp_score']"); //Hidden field_revenue.addEventListener('change', assessFormScore); field_business_model.addEventListener('change', assessFormScore); field_geographic_coverage.addEventListener('change', assessFormScore); field_number_of_locations_serviced.addEventListener('change', assessFormScore); } } if (event.data.type === 'hsFormCallback' && event.data.eventName === 'onBeforeFormSubmit') { } }); ``` ```javascript window.addEventListener('message', function(event) { // Check that it's the HubSpot form ready event if (event.data && event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormReady') { // The hidden field where you want to store the URL const urlInput = document.querySelector('input[name="source_url"]'); if (urlInput) { urlInput.value = window.location.href; } // The (optional) hidden field for timestamp (UNIX ms) const tsInput = document.querySelector('input[name="submission_timestamp"]'); if (tsInput) { // Use Date.now() for milliseconds since epoch const nowMs = Date.now(); tsInput.value = nowMs; } } // You could also listen for onFormSubmit (or onFormSubmit eventName) if needed if (event.data && event.data.type === 'hsFormCallback' && event.data.eventName === 'onFormSubmit') { // In some cases (if the form re-renders or something), you may want to ensure timestamp is fresh const tsInput2 = document.querySelector('input[name="submission_timestamp"]'); if (tsInput2) { tsInput2.value = Date.now(); } } }); ``` -------------------------------- ### Configure Google Analytics Consent (US-CA) Source: https://fieldnation.com/contact Sets default Google Analytics consent settings for the US-CA region, denying ad personalization, storage, and user data, while granting functionality, personalization, and security storage. It also enables data redaction and URL passthrough. ```javascript window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gt a g("consent", "default", { 'ad_personalization': "denied", 'ad_storage': "denied", 'ad_user_data': "denied", 'analytics_storage': "denied", 'functionality_storage': "granted", 'personalization_storage': "granted", 'security_storage': "granted", 'region': ['US-CA'], 'wait_for_update': 500 }); gt a g("set", "ads_data_redaction", true); gt a g("set", "url_passthrough", true); ``` -------------------------------- ### Configure Default Google Analytics Consent Source: https://fieldnation.com/contact Sets default Google Analytics consent settings, denying ad personalization, storage, and user data, while granting functionality, personalization, and security storage. It also enables data redaction and URL passthrough. ```javascript window.dataLayer = window.dataLayer || []; function gtag() { dataLayer.push(arguments); } gt a g("consent", "default", { 'ad_personalization': "denied", 'ad_storage': "denied", 'ad_user_data': "denied", 'analytics_storage': "denied", 'functionality_storage': "granted", 'personalization_storage': "granted", 'security_storage': "granted", 'wait_for_update': 500 }); gt a g("set", "ads_data_redaction", true); gt a g("set", "url_passthrough", true); ``` -------------------------------- ### Assess Form Score Logic Source: https://fieldnation.com/field-nation-integrations Calculates a market segment and numerical score based on various input fields. Requires global variables for form fields to be defined before execution. ```javascript function assessFormScore() { var score_revenue = false; var score_business_model = false; var score_geographic_coverage = false; var score_number_of_locations_serviced = false; var score_marketing_icp = false; var market_segment; if (field_revenue.value) { if (field_revenue.value == 'Less than $15M') { market_segment = 'SMB'; score_revenue = 5; } else if (field_revenue.value == '$15M - $49M') { market_segment = 'SMB'; score_revenue = 4; } else if (field_revenue.value == '$50M - $100M') { market_segment = 'Mid-Market'; score_revenue = 5; } else if (field_revenue.value == '$100M - $499M') { market_segment = 'Mid-Market'; score_revenue = 4; } else if (field_revenue.value == '$500M - $999M') { market_segment = 'Enterprise'; score_revenue = 5; } else if (field_revenue.value == '$1B+') { market_segment = 'Enterprise'; score_revenue = 3; } } if (field_business_model.value) { if (field_business_model.value == 'IT Service/Solution Provider') { score_business_model = 5; } else if (field_business_model.value == 'Point of Sale Equipment Manufacturer (OEM)') { score_business_model = 4; } else if (field_business_model.value == 'IT Distributor or VAR' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 3; } else if (field_business_model.value == 'IT Distributor or VAR' && market_segment == 'SMB') { score_business_model = 0; } else if (field_business_model.value == 'IT Equipment Manufacturer (OEM)' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 2; } else if (field_business_model.value == 'IT Equipment Manufacturer (OEM)' && market_segment == 'SMB') { score_business_model = 0; } else if (field_business_model.value == 'Non-IT Service/Solution Provider' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 1; } else if (field_business_model.value == 'Non-IT Service/Solution Provider' && market_segment == 'SMB') { score_business_model = 2; } else if (field_business_model.value == 'Retailer' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 1; } else if (field_business_model.value == 'Retailer' && market_segment == 'SMB') { score_business_model = 0; } else if (field_business_model.value == 'Other') { score_business_model = 1; } else { score_business_model = 0; } } if (field_geographic_coverage.value) { if (field_geographic_coverage.value == 'Nationally') { score_geographic_coverage = 5; } else if (field_geographic_coverage.value == 'Regionally') { score_geographic_coverage = 3; } else if (field_geographic_coverage.value == 'Locally') { score_geographic_coverage = 1; } else if (field_geographic_coverage.value == 'no_us_operations') { score_geographic_coverage = 0; } } if (field_number_of_locations_serviced.value) { if (field_number_of_locations_serviced.value == '1000+') { score_number_of_locations_serviced = 5; } else if (field_number_of_locations_serviced.value == '500-999') { score_number_of_locations_serviced = 4; } else if (field_number_of_locations_serviced.value == '200-499') { score_number_of_locations_serviced = 3; } else if (field_number_of_locations_serviced.value == '50-199') { score_number_of_locations_serviced = 2; } else if (field_number_of_locations_serviced.value == '50-199') { score_number_of_locations_serviced = 2; } } ``` -------------------------------- ### CSS Display Properties for Masking and Loading Source: https://support.fieldnation.com/ These CSS rules are used to hide elements related to message masking and loading indicators. They are typically applied to elements with specific class or ID attributes. ```css .auraMsgMask, #auraErrorMask, body .auraLoadingBox { display: none; } .spaError { padding: 10px; } .spaErrorLink { padding: 10px 0; display: block } ``` -------------------------------- ### Assess Form Score Logic Source: https://fieldnation.com/contact Calculates a marketing ICP score based on various form field values and dispatches an input event to update the form state. ```javascript function assessFormScore() { var score_revenue = false; var score_business_model = false; var score_geographic_coverage = false; var score_number_of_locations_serviced = false; var score_marketing_icp = false; var market_segment; if (field_revenue.value) { if (field_revenue.value == 'Less than $15M') { market_segment = 'SMB'; score_revenue = 5; } else if (field_revenue.value == '$15M - $49M') { market_segment = 'SMB'; score_revenue = 4; } else if (field_revenue.value == '$50M - $100M') { market_segment = 'Mid-Market'; score_revenue = 5; } else if (field_revenue.value == '$100M - $499M') { market_segment = 'Mid-Market'; score_revenue = 4; } else if (field_revenue.value == '$500M - $999M') { market_segment = 'Enterprise'; score_revenue = 5; } else if (field_revenue.value == '$1B+') { market_segment = 'Enterprise'; score_revenue = 3; } } if (field_business_model.value) { if (field_business_model.value == 'IT Service/Solution Provider') { score_business_model = 5; } else if (field_business_model.value == 'Point of Sale Equipment Manufacturer (OEM)') { score_business_model = 4; } else if (field_business_model.value == 'IT Distributor or VAR' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 3; } else if (field_business_model.value == 'IT Distributor or VAR' && market_segment == 'SMB') { score_business_model = 0; } else if (field_business_model.value == 'IT Equipment Manufacturer (OEM)' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 2; } else if (field_business_model.value == 'IT Equipment Manufacturer (OEM)' && market_segment == 'SMB') { score_business_model = 0; } else if (field_business_model.value == 'Non-IT Service/Solution Provider' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 1; } else if (field_business_model.value == 'Non-IT Service/Solution Provider' && market_segment == 'SMB') { score_business_model = 2; } else if (field_business_model.value == 'Retailer' && (market_segment == 'Enterprise' || market_segment == 'Mid-Market')) { score_business_model = 1; } else if (field_business_model.value == 'Retailer' && market_segment == 'SMB') { score_business_model = 0; } else if (field_business_model.value == 'Other') { score_business_model = 1; } else { score_business_model = 0; } } if (field_geographic_coverage.value) { if (field_geographic_coverage.value == 'Nationally') { score_geographic_coverage = 5; } else if (field_geographic_coverage.value == 'Regionally') { score_geographic_coverage = 3; } else if (field_geographic_coverage.value == 'Locally') { score_geographic_coverage = 1; } else if (field_geographic_coverage.value == 'no_us_operations') { score_geographic_coverage = 0; } } if (field_number_of_locations_serviced.value) { if (field_number_of_locations_serviced.value == '1000+') { score_number_of_locations_serviced = 5; } else if (field_number_of_locations_serviced.value == '500-999') { score_number_of_locations_serviced = 4; } else if (field_number_of_locations_serviced.value == '200-499') { score_number_of_locations_serviced = 3; } else if (field_number_of_locations_serviced.value == '50-199') { score_number_of_locations_serviced = 2; } else if (field_number_of_locations_serviced.value == '1-49') { score_number_of_locations_serviced = 1; } } if (field_marketing_icp_score) { if (score_revenue !== false && score_business_model !== false && score_geographic_coverage !== false && score_number_of_locations_serviced) { score_marketing_icp = score_revenue + score_business_model + score_geographic_coverage + score_number_of_locations_serviced; field_marketing_icp_score.value = score_marketing_icp.toString(); } else { score_marketing_icp = false; field_marketing_icp_score.value = ''; } field_marketing_icp_score.dispatchEvent(new Event("input", { bubbles: true })); } } ``` -------------------------------- ### Marketing ICP Score Calculation Logic Source: https://fieldnation.com/field-nation-integrations Calculates a marketing ICP score based on revenue, business model, geographic coverage, and number of locations serviced. It updates a hidden form field and dispatches an input event. ```javascript if (field_marketing_icp_score) { if (score_revenue !== false && score_business_model !== false && score_geographic_coverage !== false && score_number_of_locations_serviced) { score_marketing_icp = score_revenue + score_business_model + score_geographic_coverage + score_number_of_locations_serviced; field_marketing_icp_score.value = score_marketing_icp.toString(); } else { score_marketing_icp = false; field_marketing_icp_score.value = ''; } field_marketing_icp_score.dispatchEvent(new Event("input", { bubbles: true })); } ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.