PageSourceSearch

https://solenviafranchise.com/wp-content/themes/setian-theme/asset…/third-party/zoho/zoho-utm-grabber-2.js?v=3

js solenviafranchise.com collected 2026-09-29 10:05:45 UTC 9,688 bytes, 272 lines download raw bytes

1console.log("Zoho UTM");
2
3function ZFAdvLead(){
4}
5ZFAdvLead.utmPValObj = ZFAdvLead.utmPValObj || {};
6ZFAdvLead.utmPNameArr = new Array('utm_source','utm_medium','utm_campaign','utm_term','utm_content','gclid');ZFAdvLead.utmcustPNameArr = new Array('gclid');ZFAdvLead.isSameDomian = false;
7ZFAdvLead.prototype.zfautm_sC = function( paramName,path,domain,secure ){
8  var value = ZFAdvLead.utmPValObj[paramName];
9  if ( typeof value !== "undefined" && value !== null ){
10    var cookieStr = paramName + "=" + encodeURIComponent( value );
11    var exdate=new Date();
12    exdate.setDate(exdate.getDate()+7);
13    cookieStr += "; expires=" + exdate.toGMTString();
14    cookieStr += "; path=/";
15    if ( domain ) {
16      cookieStr += "; domain=" + encodeURIComponent( domain );
17    }
18    if ( secure ) {
19      cookieStr += "; secure";
20    }
21    document.cookie = cookieStr;
22  }
23};
24ZFAdvLead.prototype.zfautm_ini = function (){
25  this.zfautm_bscPCap();
26  var url_search = document.location.search;
27  for (var i = 0; i < ZFAdvLead.utmcustPNameArr.length ; i ++){
28    var zf_pN = ZFAdvLead.utmcustPNameArr[i];
29    var zf_pV;
30    if ( zf_pN == 'referrername' ) {
31      zf_pV = ( document.location.href || '' ).slice( 0, 1500 );
32    } else {
33      zf_pV = this.zfautm_gP(url_search, zf_pN);
34      if (zf_pV == undefined || zf_pV == ''){
35          zf_pV = this.zfautm_gC(zf_pN);
36      }
37    }
38    if ( typeof zf_pV !== "undefined" && zf_pV !== null & zf_pV != "" ) {
39      ZFAdvLead.utmPValObj[ zf_pN ] = zf_pV;
40    }
41  }
42  for (var pkey in ZFAdvLead.utmPValObj) {
43    this.zfautm_sC(pkey);
44  }
45};
46ZFAdvLead.prototype.zfautm_bscPCap = function () {
47  var trafSrc = this.zfautm_calcTrafSrc();
48  if ( trafSrc.source != "" ) {
49    ZFAdvLead.utmPValObj.utm_source = trafSrc.source;
50  }
51  if ( trafSrc.medium != "" ) {
52    ZFAdvLead.utmPValObj.utm_medium = trafSrc.medium;
53  }
54  if ( trafSrc.campaign != "" ) {
55    ZFAdvLead.utmPValObj.utm_campaign = trafSrc.campaign;
56  }
57  if ( trafSrc.term != "" ) {
58    ZFAdvLead.utmPValObj.utm_term = trafSrc.term;
59  }
60  if ( trafSrc.content != "" ) {
61    ZFAdvLead.utmPValObj.utm_content = trafSrc.content;
62  }
63}
64ZFAdvLead.prototype.zfautm_calcTrafSrc = function() {
65  var u1='', u2='', u3='', u4='', u5='';
66  var search_engines = [['bing', 'q'], ['google', 'q'], ['yahoo', 'q'], ['baidu', 'q'], ['yandex', 'q'], ['ask', 'q']]; //List of search engines
67  var ref = document.referrer;
68  ref = ref.substr(ref.indexOf('//')+2);
69  ref_domain = ref;
70  ref_path = '/';
71  ref_search = '';
72  // Checks for campaign parameters
73  var url_search = document.location.search;
74  if(url_search.indexOf('utm_source') > -1 || url_search.indexOf('utm_medium') > -1 || url_search.indexOf('utm_campaign') > -1 || url_search.indexOf('utm_term') > -1 || url_search.indexOf('utm_content') > -1) {
75    u1 = this.zfautm_gP(url_search, 'utm_source');
76    u2 = this.zfautm_gP(url_search, 'utm_medium');
77    u3 = this.zfautm_gP(url_search, 'utm_campaign');
78    u4 = this.zfautm_gP(url_search, 'utm_term');
79    u5 = this.zfautm_gP(url_search, 'utm_content');
80  } else if ( this.zfautm_gP(url_search, 'gclid')) {
81    u1 = 'Google Ads';
82    u2 = 'cpc';
83    u3 = '(not set)';
84    if ( !ZFAdvLead.utmcustPNameArr.includes('gclid') ) {
85      ZFAdvLead.utmcustPNameArr.push('gclid');
86    }
87  } else if(ref) {
88    var r_u1 = this.zfautm_gC('utm_source');
89    var r_u2 = this.zfautm_gC('utm_medium');
90    var r_u3 = this.zfautm_gC('utm_campaign');
91    var r_u4 = this.zfautm_gC('utm_term');
92    var r_u5 = this.zfautm_gC('utm_content');
93    if ( typeof r_u1 === "undefined" && typeof r_u2 === "undefined" && typeof r_u3 === "undefined" && typeof r_u4 === "undefined" && typeof r_u5 === "undefined") {
94      // separate domain, path and query parameters
95      if (ref.indexOf('/') > -1) {
96        ref_domain = ref.substr(0,ref.indexOf('/'));
97        ref_path = ref.substr(ref.indexOf('/'));
98        if (ref_path.indexOf('?') > -1) {
99          ref_search = ref_path.substr(ref_path.indexOf('?'));
100          ref_path = ref_path.substr(0, ref_path.indexOf('?'));
101        }
102      }
103      u2 = 'referral';
104      u1 = ref_domain;
105    // Extract term for organic source
106      for (var i=0; i<search_engines.length; i++){
107        if(ref_domain.indexOf(search_engines[i][0]) > -1){
108          u2 = 'organic';
109          u1 = search_engines[i][0];
110          u4 = this.zfautm_gP(ref_search, search_engines[i][1]) || '(not provided)';
111          break;
112        }
113      }
114    } else {
115      if ( typeof r_u1 !== "undefined" ) {
116        u1 = r_u1;
117      }
118      if ( typeof r_u2 !== "undefined" ) {
119          u2 = r_u2;
120      }
121      if ( typeof r_u3 !== "undefined" ) {
122        u3 = r_u3;
123      }
124      if ( typeof r_u4 !== "undefined" ) {
125        u4 = r_u4;
126      }
127      if ( typeof r_u5 !== "undefined" ) {
128        u5 = r_u5;
129      }
130    }
131  } else {
132    var r_u1 = this.zfautm_gC('utm_source');
133    var r_u2 = this.zfautm_gC('utm_medium');
134    var r_u3 = this.zfautm_gC('utm_campaign');
135    var r_u4 = this.zfautm_gC('utm_term');
136    var r_u5 = this.zfautm_gC('utm_content');
137    if ( typeof r_u1 === "undefined" && typeof r_u2 === "undefined" && typeof r_u3 === "undefined" && typeof r_u4 === "undefined" && typeof r_u5 === "undefined") {
138      var locRef = document.location.href;
139      locRef = locRef.substr(locRef.indexOf('//')+2);
140      if (locRef.indexOf('/') > -1) {
141        locRef = locRef.substr(0,locRef.indexOf('/'));
142      }
143      u1 = locRef;
144      u2 = 'referral';
145    } else {
146      if ( typeof r_u1 !== "undefined" ) {
147        u1 = r_u1;
148      }
149      if ( typeof r_u2 !== "undefined" ) {
150        u2 = r_u2;
151      }
152      if ( typeof r_u3 !== "undefined" ) {
153        u3 = r_u3;
154      }
155      if ( typeof r_u4 !== "undefined" ) {
156        u4 = r_u4;
157      }
158      if ( typeof r_u5 !== "undefined" ) {
159        u5 = r_u5;
160      }
161    }
162  }
163  return {
164    'source'  : u1,
165    'medium'  : u2,
166    'campaign': u3,
167    'term'    : u4,
168    'content' : u5
169  };
170}
171ZFAdvLead.prototype.zfautm_gP = function(s, q) {
172  try{
173      var match = s.match('[?&]' + q + '=([^&]+)');
174      return match ? decodeURIComponent(match[1]) : '';
175  } catch(e){
176    return '';
177  }
178}
179ZFAdvLead.prototype.zfautm_gC = function( cookieName ){
180  var cookieArr = document.cookie.split('; ');
181  for ( var i = 0 ; i < cookieArr.length ; i ++ ){
182    var cookieVals = cookieArr[i].split('=');
183      if ( cookieVals[0] === cookieName && cookieVals[1] ) {
184        return decodeURIComponent(cookieVals[1]);
185      }
186  }
187};
188ZFAdvLead.prototype.zfautm_gC_enc = function( cookieName ){
189  var cookieArr = document.cookie.split('; ');
190  for ( var i = 0 ; i < cookieArr.length ; i ++ ){
191    var cookieVals = cookieArr[i].split('=');
192      if ( cookieVals[0] === cookieName && cookieVals[1] ) {
193        return cookieVals[1];
194      }
195  }
196};
197ZFAdvLead.prototype.zfautm_iframeSprt = function () {
198  var zf_frame = document.getElementsByTagName("iframe");
199  for(var i = 0; i < zf_frame.length; ++i){
200    if((zf_frame[i].src).indexOf('formperma') > 0 ){
201      var zf_src = zf_frame[i].src;
202      for( var prmIdx = 0 ; prmIdx < ZFAdvLead.utmPNameArr.length ; prmIdx ++ ) {
203        var utmPm = ZFAdvLead.utmPNameArr[ prmIdx ];
204        utmPm = ( ZFAdvLead.isSameDomian && ( ZFAdvLead.utmcustPNameArr.indexOf(utmPm) == -1 ) ) ? "zf_" + utmPm : utmPm;
205        var utmVal = this.zfautm_gC_enc( ZFAdvLead.utmPNameArr[ prmIdx ] );
206        if ( typeof utmVal !== "undefined" ) {
207          if ( utmVal != "" ){
208            if(zf_src.indexOf('?') > 0){
209              zf_src = zf_src+'&'+utmPm+'='+ utmVal;
210            }else{
211              zf_src = zf_src+'?'+utmPm+'='+ utmVal;
212            }
213          }
214        }
215      }
216      if ( zf_frame[i].src.length < zf_src.length ) {
217        zf_frame[i].src = zf_src;
218      }
219    }
220  }
221};
222ZFAdvLead.prototype.zfautm_DHtmlSprt = function () {
223  var zf_formsArr = document.forms;
224  for ( var frmInd = 0 ; frmInd < zf_formsArr.length ; frmInd ++ ) {
225    var zf_form_act = zf_formsArr[frmInd].action;
226      if ( zf_form_act && zf_form_act.indexOf('formperma') > 0 ){
227        for( var prmIdx = 0 ; prmIdx < ZFAdvLead.utmPNameArr.length ; prmIdx ++ ) {
228          var utmPm = ZFAdvLead.utmPNameArr[ prmIdx ];
229          var utmVal = this.zfautm_gC( ZFAdvLead.utmPNameArr[ prmIdx ] );
230          if ( typeof utmVal !== "undefined" ) {
231            if ( utmVal != "" ) {
232              var fieldObj = zf_formsArr[frmInd][utmPm];
233            if ( fieldObj ) {
234              fieldObj.value = utmVal;
235            }
236          }
237        }
238      }
239    }
240  }
241};
242ZFAdvLead.prototype.zfautm_jsEmbedSprt = function ( id ) {
243  document.getElementById('zforms_iframe_id').removeAttribute("onload");
244  var jsEmbdFrm = document.getElementById("zforms_iframe_id");
245  var embdSrc = jsEmbdFrm.src;
246  for( var prmIdx = 0 ; prmIdx < ZFAdvLead.utmPNameArr.length ; prmIdx ++ ) {
247    var utmPm = ZFAdvLead.utmPNameArr[ prmIdx ];
248    utmPm = ( ZFAdvLead.isSameDomian && ( ZFAdvLead.utmcustPNameArr.indexOf(utmPm) == -1 ) ) ? "zf_" + utmPm : utmPm;
249    var utmVal = this.zfautm_gC_enc( ZFAdvLead.utmPNameArr[ prmIdx ] );
250    if ( typeof utmVal !== "undefined" ) {
251      if ( utmVal != "" ) {
252        if(embdSrc.indexOf('?') > 0){
253                    embdSrc = embdSrc+'&'+utmPm+'='+utmVal;
254        }else{
255            embdSrc = embdSrc+'?'+utmPm+'='+utmVal;
256        }
257      }
258    }
259  }
260  jsEmbdFrm.src = embdSrc;
261};
262var zfutm_zfAdvLead = new ZFAdvLead();
263zfutm_zfAdvLead.zfautm_ini();
264if( document.readyState == "complete" ){
265    zfutm_zfAdvLead.zfautm_iframeSprt();
266    zfutm_zfAdvLead.zfautm_DHtmlSprt();
267} else {
268  window.addEventListener('load', function (){
269        zfutm_zfAdvLead.zfautm_iframeSprt();
270        zfutm_zfAdvLead.zfautm_DHtmlSprt();
271  }, false);
272}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.