Skip to content
(function() {
var params = new URLSearchParams(window.location.search);
var utmKeys = ["utm_source","utm_medium","utm_campaign","utm_term","utm_content"];
utmKeys.forEach(function(k) {
var v = params.get(k);
if (v) sessionStorage.setItem("bf_" + k, v);
});
if (!sessionStorage.getItem("bf_landing_page")) {
sessionStorage.setItem("bf_landing_page", window.location.href);
}
function mediumToChannel(medium) {
if (!medium) return "";
var m = medium.toLowerCase().trim();
if (/^(cpc|ppc|paid|cpv|cpm)$/.test(m)) return "PPC";
if (m === "organic") return "Organic";
if (m === "social") return "Social";
if (m === "referral") return "Referral";
if (m === "email") return "Email";
if (/direct|none/.test(m) || m === "(direct)" || m === "(none)") return "Direct";
return "";
}
function isAISearch(source) {
if (!source) return false;
var s = source.toLowerCase();
return /chatgpt|perplexity|gemini|claude|copilot|openai|bard|meta\.ai|grok|deepseek|mistral|you\.com|phind|kagi/.test(s);
}
function pageToType(url) {
if (!url) return "";
var u = url.toLowerCase();
if (/leas/.test(u)) return "Lease";
if (/\bbuy\b|purchase|for-sale|atm-sale/.test(u)) return "Buy";
if (/service|repair|mainten/.test(u)) return "Service";
if (/process/.test(u)) return "Processing";
if (/event/.test(u)) return "Event";
return "";
}
function populateGFFields() {
var formId = 36;
var src = sessionStorage.getItem("bf_utm_source") || "";
var med = sessionStorage.getItem("bf_utm_medium") || "";
var camp = sessionStorage.getItem("bf_utm_campaign") || "";
var landing = sessionStorage.getItem("bf_landing_page") || "";
var channel = isAISearch(src) ? "AI Search" : mediumToChannel(med);
var typeHint = pageToType(landing);
var setVal = function(id, val) {
var el = document.getElementById("input_" + formId + "_" + id);
if (el && val) el.value = val;
};
setVal(11, channel);
setVal(12, src);
setVal(13, med);
setVal(14, camp);
setVal(17, typeHint);
setVal(18, landing);
}
if (document.readyState === "loading") {
document.addEventListener("DOMContentLoaded", populateGFFields);
} else {
populateGFFields();
}
if (typeof jQuery !== "undefined") {
jQuery(document).on("gform_post_render", function(e, fid) {
if (fid === 36) populateGFFields();
});
}
})();