PageSourceSearch

https://www.dsbks.com/mstinc/web/js/global.stg.js

js dsbks.com collected 2026-10-07 16:15:43 UTC 24,098 bytes, 610 lines download raw bytes

1	/* ********************************************************************** */
2	/*   USP Backwards Compatability w/ IB - written by Darnell Arford        */
3	/* ********************************************************************** */
4
5
6
7/* ********************************************************************** */
8/*   LOGO SWAP CONFIG OPTIONS (do not localize)                           */
9/* ********************************************************************** */
10MstIncGlobal.cfg.swapIFSLogo = true; // set false to disable 
11MstIncGlobal.cfg.swapIFSLogoAlt = "Digital Insight"; //value to place in alt attribute
12MstIncGlobal.cfg.swapIFSLogoLink = "javascript:void(0)"; //value to place in href attribute
13MstIncGlobal.cfg.swapIFSLogoStyle = "cursor:default;"; //value to place in style attribute
14MstIncGlobal.cfg.swapIFSLogoOnclick = "return false;"; // leave blank or set to false to keep hard-coded onclick attribute
15MstIncGlobal.cfg.swapIFSLogoImage = false; // set to true to enable image swapping
16// set these to the current filenames being pulled in
17MstIncGlobal.cfg.swapIFSLogoFilenames = new Array(
18		   
19	"intuit_100x22.png", // new Intuit Financial Services Logo - small
20	"intuit_120x25.png", // new Intuit Financial Services Logo - large
21	   
22	"logo_100x22.png", // new Intuit Financial Services Logo - small (use this)
23	"logo_120x25.png", // new Intuit Financial Services Logo - large (use this)
24	
25	"logo_91x22.gif", // replacement logo for DI logo - small (gif was a mistake)
26	"logo_140x34.gif", // replacement logo for DI logo - large (gif was a mistake)
27	
28	"logo_91x22.png", // replacement logo for DI logo - small
29	"logo_140x34.png", // replacement logo for DI logo - large
30	
31	"di_140x34_1c_k.png", 	// old DI logo
32	"di_140x34_1c_w.png", 	// old DI logo
33	"di_140x34_2c.png", 	// old DI logo
34	"di_140x34_3c.png", 	// old DI logo
35	"di_91x22_1c_k.png",	// old DI logo
36	"di_91x22_1c_w.png",	// old DI logo
37	"di_91x22_2c.png", 		// old DI logo
38	"di_91x22_3c.png" 		// old DI logo
39	
40);
41// set these mappings to replace any of the images above
42// set to false if the image should not be swapped for another
43MstIncGlobal.cfg.swapIFSLogoMapping = new Array();
44
45MstIncGlobal.cfg.swapIFSLogoMapping['intuit_100x22.png'] = false;
46MstIncGlobal.cfg.swapIFSLogoMapping['intuit_120x25.png'] = false;
47
48MstIncGlobal.cfg.swapIFSLogoMapping['logo_100x22.png'] = false;
49MstIncGlobal.cfg.swapIFSLogoMapping['logo_120x25.png'] = false;
50
51MstIncGlobal.cfg.swapIFSLogoMapping['logo_91x22.gif'] 	= "logo_91x22.png"; // changed from false on 9/2
52MstIncGlobal.cfg.swapIFSLogoMapping['logo_140x34.gif'] = "logo_140x34.png"; // changed from false on 9/2
53
54MstIncGlobal.cfg.swapIFSLogoMapping['di_140x34_1c_k.png'] 	= "logo_140x34.png"; // changed from gif on 9/2
55MstIncGlobal.cfg.swapIFSLogoMapping['di_140x34_1c_w.png'] 	= "logo_140x34.png"; // changed from gif on 9/2
56MstIncGlobal.cfg.swapIFSLogoMapping['di_140x34_2c.png'] 	= "logo_140x34.png"; // changed from gif on 9/2
57MstIncGlobal.cfg.swapIFSLogoMapping['di_140x34_3c.png'] 	= "logo_140x34.png"; // changed from gif on 9/2
58MstIncGlobal.cfg.swapIFSLogoMapping['di_91x22_1c_k.png'] 	= "logo_91x22.png"; // changed from gif on 9/2
59MstIncGlobal.cfg.swapIFSLogoMapping['di_91x22_1c_w.png'] 	= "logo_91x22.png"; // changed from gif on 9/2
60MstIncGlobal.cfg.swapIFSLogoMapping['di_91x22_2c.png'] 	= "logo_91x22.png"; // changed from gif on 9/2
61MstIncGlobal.cfg.swapIFSLogoMapping['di_91x22_3c.png'] 	= "logo_91x22.png"; // changed from gif on 9/2
62
63
64
65/* ********************************************************************** */
66/*   LOGO SWAP CODE                                                       */
67/* ********************************************************************** */
68if (MstIncGlobal.cfg.swapIFSLogo)
69{
70	MstIncGlobal.performLogoSwap = function(event)
71	{
72		// note: can use jQuery within this funciton, as this runs after jQuery is loaded
73		if ( !MstIncGlobal.cfg.bypassLogoSwap )
74		{
75			// generate query for image elements
76			var logo_query = "";
77			for ( var i in MstIncGlobal.cfg.swapIFSLogoFilenames )
78			{
79				if ( typeof MstIncGlobal.cfg.swapIFSLogoFilenames[i] == "string" )
80				{
81					if ( i != 0 ) logo_query += ",";
82					logo_query += "img[src$='" + MstIncGlobal.cfg.swapIFSLogoFilenames[i] + "']";
83				}
84			}
85
86			// for each logo, replace attributes
87			jQuery(logo_query).each( function() {
88        thisElem = jQuery(this);
89				// replace attributes
90				if (typeof MstIncGlobal.cfg.swapIFSLogoAlt == "string") this.alt = MstIncGlobal.cfg.swapIFSLogoAlt;
91				if (typeof MstIncGlobal.cfg.swapIFSLogoLink == "string") this.parentNode.href = MstIncGlobal.cfg.swapIFSLogoLink;
92				if (typeof MstIncGlobal.cfg.swapIFSLogoStyle == "string") thisElem.parent().attr('style',MstIncGlobal.cfg.swapIFSLogoStyle);
93				if (typeof MstIncGlobal.cfg.swapIFSLogoOnclick == "string" && MstIncGlobal.cfg.swapIFSLogoOnclick != "") thisElem.parent().attr('onclick',MstIncGlobal.cfg.swapIFSLogoOnclick);
94				//if (typeof MstIncGlobal.cfg.swapIFSLogoStyle == "string") this.parentNode.attr('style',MstIncGlobal.cfg.swapIFSLogoStyle);
95				//if (typeof MstIncGlobal.cfg.swapIFSLogoOnclick == "string" && MstIncGlobal.cfg.swapIFSLogoOnclick != "") this.parentNode.attr('onclick',MstIncGlobal.cfg.swapIFSLogoOnclick);
96				if (MstIncGlobal.cfg.swapIFSLogoImage)
97				{
98					var urlPieces = this.src.toString().split("/");
99					var current_filename = urlPieces[urlPieces.length-1];
100					if (typeof MstIncGlobal.cfg.swapIFSLogoMapping[current_filename] == "string")
101					{
102						this.src = this.src.replace(current_filename, MstIncGlobal.cfg.swapIFSLogoMapping[current_filename]);
103					}
104				}
105			}); // img[].each
106		}
107	}
108	MstIncGlobal.addLoadListener(MstIncGlobal.performLogoSwap);
109} // /IFS logo swap
110
111
112
113/* ********************************************************************** */
114/*   IE6 PNG REPLACE                                                      */
115/* ********************************************************************** */
116if (navigator.appVersion.indexOf("MSIE") > -1)
117{
118	var arVersion = navigator.appVersion.split("MSIE");
119	var version = parseFloat(arVersion[1]);
120	if (version < 7 && version >= 5.5 && typeof correctPNG != 'function')
121	{
122		if (window.attachEvent)	window.attachEvent("onload", function() // works in IE6
123			{
124			if (document.body.filters)
125			{
126				for (var i=0; i<document.images.length; i++)
127				{
128					var img = document.images[i];
129					if(/png$/i.test(img.src))
130					{
131						img.style.height = img.height;
132						img.style.width = img.width;
133						img.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + img.src + "', sizingMethod='scale')";
134						img.src='/mstinc/web/images/blank.gif';
135						i--;
136					}
137				}
138			}
139		});
140	}
141}
142
143
144
145/* ********************************************************************** */
146/*   "Powered by Intuit" swap out                                         */
147/* ********************************************************************** */
148
149MstIncGlobal.swapPoweredBySlogan = function(event)
150{
151	jQuery("#_poweredBySlogan").html("Powered by Intuit");
152}
153MstIncGlobal.addLoadListener(MstIncGlobal.swapPoweredBySlogan);
154
155
156
157/* ********************************************************************** */
158/*   MBox Style  by Brandon                                               */
159/* ********************************************************************** */
160
161MstIncGlobal.addMboxStylesheet = function()
162{
163	jQuery(".mboxDefault").css({ visibility: "visible" });
164}
165MstIncGlobal.addLoadListener(MstIncGlobal.addMboxStylesheet);
166
167
168
169
170
171
172	(function(){
173		
174		
175		
176		// **********************************
177		// *** CHECK ABORT CASES
178		// ********************************** 
179
180		// Abort if this script was loaded within IB, since we're only targeting Unix and WC sites
181		if (
182				location.pathname.indexOf("Signon.cgi") < 0
183				&& location.pathname.indexOf("signon.cgi") < 0
184				&& location.pathname.indexOf("usp_Signon.html") < 0
185        && location.href.indexOf("Signon_usp") < 0
186				&& (location.pathname.indexOf("/onlineserv/HB/") > -1 || location.pathname.indexOf("/preprod/HB/") > -1 ||
187					location.pathname.indexOf("/HB3/") > -1 || location.pathname.indexOf("/preprod/HB3/") > -1)
188			)
189		{
190			if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("In USP Retro Override: Aborting for pages in IB other than the Signon");
191			return;
192		}
193		
194		// Abort if jQuery is from before version 1.7
195		if (!jQuery  || !jQuery.fn.jquery)
196		{
197			if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("Global JS: USP Retro - Aborting because jQuery does not exist");
198			return;
199		}
200		var jQuery_version = jQuery.fn.jquery.split(".");
201		if (jQuery_version.length < 2) {
202			if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("Global JS: USP Retro - Aborting because jQuery version number "+
203					"does not contain minor and major version numbers");
204			return;
205		}
206		var jQuery_majorVersion = parseInt(jQuery_version[0]);
207		var jQuery_minorVersion = parseInt(jQuery_version[1]);
208		if (jQuery_majorVersion < 1 || (jQuery_majorVersion === 1 && jQuery_minorVersion < 7))
209		{
210			if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("Global JS: USP Retro - Aborting because jQuery version is not at least 1.7");
211			return;
212		}
213		
214		
215		
216		// **********************************
217		// *** SET INITIAL VARIABLES
218		// **********************************
219		var signon_remote_script_fetched = false,
220			site_is_webcenter = (location.pathname.substring(0, 6) === "/home/") ||
221					(location.pathname.substring(0, 11) === "/wcnewsite/") ||
222					(location.pathname.substring(0, 9) === "/wcmaint/"),
223			usp_settings_js2_retrograde = false,
224			usp_settings_js2_legacyfp = true,
225			usp_settings_js3_replied = false,
226			site_path_prefix = "";
227		
228		if (MstIncGlobal.Sha256.hash(location.hostname + location.pathname.substring(0, 9) + "ai3og9ain2r!gae^35") === 
229				"d703edbdfeab88e488a35eb01e8ba7467c521867661d456c3cd0a0555f34665d")
230		{
231			var split_path = location.href.split("/");
232			site_path_prefix = "//" + location.hostname + location.pathname.substring(0, 9) + split_path[4] + "/" + split_path[4] + "docs";
233		}
234			
235
236		if (typeof this.USP != "object") this.USP = {}; // to avoid errors later
237		if (MstIncGlobal.urlVars.USPRetro=="full" || MstIncGlobal.urlVars.USPRetro=="dual" || MstIncGlobal.urlVars.USPRetro=="disabled")
238		{
239			MstIncGlobal.cookie("MstIncGlobal_USPRetroOverride", MstIncGlobal.urlVars.USPRetro);
240			location.href = (location.href.indexOf("USPRetro=full&") > -1) || (location.href.indexOf("USPRetro=dual&") > -1) || (location.href.indexOf("USPRetro=disabled&") > -1)?
241					location.href=location.href.replace("USPRetro=full&", "").replace("USPRetro=dual&", "").replace("USPRetro=disabled&", ""):
242					location.href=location.href.replace("USPRetro=full", "").replace("USPRetro=dual", "").replace("USPRetro=disabled", "");
243		}
244		if (MstIncGlobal.urlVars.USPRetro=="clear")
245		{
246			MstIncGlobal.cookie("MstIncGlobal_USPRetroOverride", "");
247			
248			location.href = (location.href.indexOf("USPRetro=clear&") > -1)?
249					location.href=location.href.replace("USPRetro=clear&", ""):
250					location.href=location.href.replace("USPRetro=clear", "");
251		}
252		var usp_retro_override = MstIncGlobal.cookie("MstIncGlobal_USPRetroOverride")?
253				MstIncGlobal.cookie("MstIncGlobal_USPRetroOverride"):
254				false;
255		
256		if (usp_retro_override === "full" || usp_retro_override === "dual" || usp_retro_override === "disabled")
257		{
258			jQuery(function(){
259				jQuery("body").append("<div id='USPRetroTestingMessage' style='background-color: #BB0000; border: 3px double #000; "+
260						"position: absolute; top: 2px; left: 0; margin-left: 25%; color: #fff; font-weight: bold; padding: 2px 4px; "+
261						"text-align: center;filter:alpha(opacity=75); opacity:0.75;'>USP Retrograde Override Set To: "+
262						usp_retro_override+"<br />"+
263						"<a href='javascript:self.location.reload()' onclick='document.cookie=\"MstIncGlobal_USPRetroOverride=;path=/\"' "+
264						"style='color: #fff;'>[Stop]</a></div>");
265			});
266		}
267		
268		
269		
270		// **********************************
271		// *** METHOD DECLARATION(S)
272		// **********************************
273		
274		// Declare retrogradeLogin method for later use
275		this.USP.retrogradeLogin = function( retrograde, legacyFP )
276		{
277			// note: Inside this method, 'this' refers to MstIncGlobal.USP
278			
279			if (typeof retrograde === 'undefined' || (retrograde !== true && retrograde !== "true" && retrograde !== "full" && retrograde !== "dual") || retrograde === "disabled")
280			{
281				return false;
282			}
283			
284			var $usp_login_form = jQuery("form[action*='/tob/live/usp-core/app/initialLogin']");
285			
286			if ($usp_login_form.length > 0 && retrograde !== "dual")
287			{
288				// Retrograde login form
289				
290				$usp_login_form
291						.attr("action", this.ib_url+"/Login.cgi")
292						.each(function(){
293							if (jQuery("input[name='runmode']", this).length<1)
294									jQuery(this).prepend("<input type='hidden' value='SIGN_IN' name='runmode' />");
295							if (jQuery("input[name='DISESSIONID']", this).length<1)
296									jQuery(this).prepend("<input type='hidden' value='' name='DISESSIONID' />");
297							
298							this.onsubmit = function() {
299								
300								if (window.formField1) window.formField1 = function(form) 
301								{
302									var theForm = document.Login;
303									var Ctrl;
304									if (theForm && typeof theForm.userNumber != "undefined") Ctrl = theForm.userNumber;
305									else if (theForm && typeof theForm.userid != "undefined") Ctrl = theForm.userid;
306									else return true;
307									
308									if (Ctrl.value == "")
309									{
310										validatePrompt(Ctrl, "Please enter a valid User ID");
311										return false;
312									}
313									else
314									{
315										return true;
316									}
317								};
318								if(/(www\.)?dcu\.org/i.test(window.location.hostname) && typeof GArunImageSubmit!="undefined"){
319									if(typeof pwUp!="undefined"){pwUp();}
320									return GArunImageSubmit(this.form,this);
321								}else{
322									return runSubmit(this.form, this);
323								}
324							};
325							jQuery("input[name='userid']", this).each(function(){
326								this.name = "userNumber";
327							});
328              if (!signon_remote_script_fetched)
329              {
330                if (typeof runSubmit === "function" && typeof console != 'undefined' && typeof console.log != 'undefined')
331                {
332                  console.log("USP Retrograde: Getting Signon.cgi?remote=TRUE even though runSubmit has previously been declared");
333                }
334                signon_remote_script_fetched = true;
335                jQuery.ajax({
336                  url: MstIncGlobal.USP.ib_url+"/Signon.cgi?remote=TRUE",
337                  "cache": false,
338                  dataType: "script",
339                  dataFilter: function(data){
340                    if (typeof data != "undefined")
341                {
342                  return data.substring(84);
343                }
344                  }
345                });
346              }
347            }) // .each()
348						;
349				
350					
351
352				if (this.demo_script_url)
353				{
354					jQuery.getScript(this.demo_script_url);
355				}
356			}
357			
358			else if ($usp_login_form.length > 0 && retrograde == "dual") {
359				if (this.demo_script_url)
360				{
361					jQuery.getScript(this.demo_script_url);
362				}
363			}
364
365      if ($usp_login_form.length > 0 ) {
366        if( typeof testForDemo == 'undefined' )
367          window.testForDemo = function( fileName ) {
368            document.location = fileName;
369          }
370        else if( retrograde !== true && retrograde !== "true" ) {
371			    if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("WARNING! testForDemo() still exists somewhere on this page and should be removed.");
372        }
373      }
374			
375			//else
376			//{
377				// page is not a login
378			//}
379			
380      //if the legacyFP setting in usp_settings.js2 is true/"true", retrograde the FP link to legacy (retrograde and dual modes)
381      if( legacyFP == 'undefined' || ( legacyFP !== false && legacyFP !== "false" ) )
382        jQuery("a[href*='/tob/live/usp-core/app/authUpdate']").attr("href", MstIncGlobal.USP.ib_url+"/ForgottenPW.html");
383
384			jQuery("a[href*='"+MstIncGlobal.USP.ib_url+"/security_site/privacy.html']")
385					.add("a[href*='"+MstIncGlobal.USP.ib_url+"/BrowserTest.cgi']")
386					.removeAttr("onclick");
387		
388			if (typeof this.custom_callback == "function" && this.custom_callback) this.custom_callback(); // this is where all the dual-mode magic happens
389			
390		} // End USP.retrogradeLogin()
391		
392		
393		
394		/* This checks if MstIncGlobal.USP settings are set for WebCenter sites, and checks for these same values in 
395		 *  usp_settings.js3 for Unix sites.  Either way, if this function determines we should move forward with 
396		 *  Stage 2, the MstIncGlobal.USP settings are sure to be set.
397		 *
398		 * Param: 
399		 *
400		 * Return: No return value
401		 */
402		this.USP.testRetrogradeEligibility = function()
403		{
404			
405			// ***********
406			// WEBCENTER
407			// ***********
408			if (site_is_webcenter)
409			{
410				if (typeof this.converted_to_usp != 'undefined' && this.converted_to_usp)
411				{			
412					if (typeof this.ib_url == "undefined")
413					{
414						this.ib_url = "/onlineserv/HB";
415					}
416					
417					// Before checking settings.js2, see if we're overriding that settings via a cookie
418					if (usp_retro_override === "full" ||usp_retro_override === "dual" || usp_retro_override === "disabled")
419					{
420						if (usp_retro_override === "full") jQuery(function(){ MstIncGlobal.USP.retrogradeLogin(true,true) });
421						if (usp_retro_override === "dual") jQuery(function(){ MstIncGlobal.USP.retrogradeLogin("dual",true) });
422						return;
423					}
424					
425					// Check activation via USP settings file (via AJAX)
426					jQuery.ajax(site_path_prefix + "/usp_settings.js2", {
427						"dataType": "json",
428            "cache": false,
429						"success": function(data, textStatus, jqXHR)
430						{
431							if (data.retrograde && (typeof data.retrograde == "boolean" || data.retrograde==="true" || data.retrograde==="dual"))
432							{
433								jQuery(function(){ MstIncGlobal.USP.retrogradeLogin(data.retrograde,data.legacyFP) });
434							}
435							//else
436							//{
437								// usp retrograde disabled in usp_settings.js2
438							//}
439						}, // success
440						"error": function(jqXHR, textStatus, errorThrown)
441						{
442							if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("Error getting usp_settings.js2: " + 
443									(textStatus?"\""+textStatus+"\" ": "") + (errorThrown?errorThrown+" ": ""));
444						} // error
445					}); // jQ.ajax()
446				}
447				//else
448				//{
449					// WebCenter detected, but MstIncGlobal.USP settings missing
450				//}
451			} // WebCenter retrograde
452			
453			
454			// ***********
455			// UNIX
456			// ***********
457			else
458			{
459				// Before checking settings.js2, see if we're overriding that settings via a cookie
460				if (usp_retro_override === "full" || usp_retro_override === "dual")
461				{
462					usp_settings_js2_retrograde = usp_retro_override;
463				}
464				else if (usp_retro_override === "disabled")
465				{
466					return;
467				}
468				else
469				{
470					// Check USP settings file (via AJAX)
471					jQuery.ajax(site_path_prefix + "/usp_settings.js2", {
472						"dataType": "json",
473            "cache": false,
474						"success": function(data, textStatus, jqXHR)
475						{
476							if (typeof data.retrograde != 'undefined' && data.retrograde && (typeof data.retrograde == "boolean" || data.retrograde==="true" || data.retrograde==="dual"))
477							{
478								usp_settings_js2_retrograde = data.retrograde;
479                usp_settings_js2_legacyfp = data.legacyFP;
480								if (usp_settings_js3_replied && typeof MstIncGlobal.USP.converted_to_usp != 'undefined'
481										&& typeof MstIncGlobal.USP.converted_to_usp)
482								{
483									jQuery(function(){ MstIncGlobal.USP.retrogradeLogin(data.retrograde,data.legacyFP) });
484								}
485							}
486							//else
487							//{
488								// leave usp_settings_js2_retrograde as empty string so the retrograde is aborted
489							//}
490						},
491						"error": function(jqXHR, textStatus, errorThrown)
492						{
493							if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("Error getting usp_settings.js2: " + (textStatus?"\""+textStatus+"\" ": "") + (errorThrown?errorThrown+" ": ""));
494						}
495					});
496				}
497				
498				// Check USP settings file (via AJAX)
499				jQuery.ajax(site_path_prefix + "/usp_settings.js3", {
500					"dataType": "json",
501          "cache": false,
502					"success": function(data, textStatus, jqXHR)
503					{
504						if (typeof data.converted_to_usp != 'undefined' && data.converted_to_usp)
505						{
506							jQuery.extend(MstIncGlobal.USP, data);
507							if (typeof MstIncGlobal.USP.ib_url == "undefined")
508							{
509								MstIncGlobal.USP.ib_url = "/onlineserv/HB";
510							}
511							if (location.pathname.indexOf("/preprod/HB/") > -1 || location.pathname.indexOf("/preprod/HB3/") > -1)
512							{
513								MstIncGlobal.USP.ib_url = MstIncGlobal.USP.ib_url.replace("/onlineserv/HB", "/preprod/HB").replace("/HB3", "/preprod/HB3");
514							}
515							if (typeof MstIncGlobal.USP.custom_callback == 'string')
516							{
517								eval("MstIncGlobal.USP.custom_callback = function(){"+MstIncGlobal.USP.custom_callback+"}");
518							}
519							usp_settings_js3_replied = true;
520							if (usp_settings_js2_retrograde!==false) jQuery(function(){ MstIncGlobal.USP.retrogradeLogin(usp_settings_js2_retrograde,usp_settings_js2_legacyfp) });
521						}
522					},
523					"error": function(jqXHR, textStatus, errorThrown)
524					{
525						if (typeof console != 'undefined' && typeof console.log != 'undefined') console.log("Error getting usp_settings.js3: " + (textStatus?"\""+textStatus+"\" ": "") + (errorThrown?errorThrown+" ": ""));
526					}
527				});
528				
529			} // else (site is Unix)
530		
531		} // End USP.testRetrogradeEligibility()
532		
533
534		this.USP.testRetrogradeEligibility();
535		
536
537
538
539/************************************************************/
540/*              Adding Code for FrameBusting               */
541/************************************************************/
542
543
544	if((document.referrer.indexOf('ap.diginsite.net') == -1) && (document.referrer.indexOf('aplogin.digitalinsight.com') == -1 )&& (document.referrer.indexOf(document.location.host) == -1)) {
545		top.location = self.location;
546	}
547
548
549/************************************************************/
550/*              Ending Code for FrameBusting               */
551/************************************************************/
552
553
554/* ********************************************************************** */
555/*   iPad mobile app overlay - written by Brandon Card                    */
556/* ********************************************************************** */
557		
558		jQuery(function(){
559		jQ18 = window.jQuery;
560
561			// Replace the normal jQuery getScript function with one that supports
562			// debugging and which references the script files as external resources
563			// rather than inline.
564			jQ18.extend({
565				getScript: function(url, callback) {
566					var head = document.getElementsByTagName("head")[0];
567					var script = document.createElement("script");
568					script.src = url;
569
570					// Handle Script loading
571					{
572						var done = false;
573
574						// Attach handlers for all browsers
575						script.onload = script.onreadystatechange = function(){
576							if ( !done && (!this.readyState ||
577								this.readyState == "loaded" || this.readyState == "complete") ) {
578								done = true;
579								if (callback)
580								callback();
581
582								// Handle memory leak in IE
583								script.onload = script.onreadystatechange = null;
584							}
585						};
586					}
587
588					head.appendChild(script);
589
590					// We handle everything using the script element injection
591					return undefined;
592				},
593			});
594
595
596
597
598
599		jQ18.getScript("/mstinc/grp/web_banner/js/web_banner_test.js?v="+(new Date().getTime()), function(data, textStatus, jqxhr){
600			jQ18.mobile_dropdown({});
601		});
602	});
603
604/* ********************************************************************** */
605/*   end iPad mobile app overlay - written by Brandon Card                */
606/* ********************************************************************** */
607
608
609
610	}).apply(MstIncGlobal);

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.