(function(){ var params = new URLSearchParams(window.location.search); if(!params.has('name')) return; // Wait for simulators to initialize function tryFill(){ var map = { 'cpc': {id:'in-cpc', ev:'input'}, 'aov': {id:'in-check', ev:'input'}, 'conv': {id:'in-conv', ev:'input'}, 'orders': {id:'in-orders',ev:'input'}, 'delivery': {id:'in-delivery',ev:'input'}, 'margin': {id:'in-margin',ev:'input'}, 'churn': {id:'in-churn', ev:'input'}, 'retention': {id:'c2-ret', ev:'input'}, 'budget': {id:'c2-budget',ev:'input'}, 'roas': {id:'c2-roas', ev:'input'}, 'growth': {id:'c2-growth',ev:'input'}, // funnel sim (slide 7) 'f_impressions': {id:'f-imp', ev:'input'}, 'f_ctr': {id:'f-ctr', ev:'input'}, 'f_cpc': {id:'f-cpc', ev:'input'}, 'f_cr': {id:'f-cr', ev:'input'}, 'f_aov': {id:'f-aov', ev:'input'}, 'f_margin': {id:'f-margin',ev:'input'}, }; var filled = 0; for(var key in map){ var v = params.get(key); if(v===null) continue; var el = document.getElementById(map[key].id); if(!el) continue; el.value = v; el.dispatchEvent(new Event(map[key].ev, {bubbles:true})); filled++; } if(filled>0) console.log('[grow] prefilled '+filled+' simulator fields from submission'); } // retry after simulators init setTimeout(tryFill, 600); setTimeout(tryFill, 1500); setTimeout(tryFill, 3000); })();