PageSourceSearch

https://www.unitedwaygmwc.org/scripts/titanscripts.js

js unitedwaygmwc.org collected 2026-10-03 19:01:42 UTC 7,249 bytes, 1 lines download raw bytes

1NWS.initNamespace("NWS.Ajax",function(){function Callback(onLoad,onLoadEnd=null,onLoadError=null,name=null,canSkip=true){this.Load=onLoad;this.LoadEnd=onLoadEnd;this.LoadError=onLoadError;this.Name=name;this.CanSkip=name!==null&&canSkip}var _={isLocalUrl:function(url){return url.indexOf("://")==-1||url.indexOf(window.location.protocol+"://"+window.location.host)===0},makeBaseXhr:function(method,url,callback){var xhr=new XMLHttpRequest;return xhr.open(method,url,!0),xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"),xhr.addEventListener("load",function(evt){if(evt.target.status===401){var response=evt.target.responseType==="json"?evt.target.response:JSON.parse(evt.target.responseText);window.location=response.LoginUrl}},!1),callback instanceof Callback&&callback.ListenTo(xhr),xhr},makeBaseXhrSync:function(method,url){var xhr=new XMLHttpRequest;return xhr.open(method,url,!1),xhr.setRequestHeader("X-Requested-With","XMLHttpRequest"),xhr},isObject:function(value){return typeof value!="undefined"&&value!==null&&value.constructor===Object},appendJsonToFormData:function(formData,jsonData,previousKey){_.isObject(jsonData)&&Object.keys(jsonData).forEach(function(key){var v=jsonData[key];if(_.isObject(v))return _.appendJsonToFormData(formData,v,key);if(previousKey&&(key=[previousKey,".",key].join("")),Array.isArray(v)&&v.every(_.isObject))return v.forEach(function(val,i){_.appendJsonToFormData(formData,val,[key,"[",i,"]"].join(""))});Array.isArray(v)?v.forEach(function(val){formData.append([key,"[]"].join(""),val)}):v instanceof FileList&&v.length===1?formData.append(key,v[0],v[0].name):v instanceof File?formData.append(key,v,v.name):formData.append(key,v)})}},_callbackQueue={queue:[],Add:function(xhr,data,callback){if(xhr instanceof XMLHttpRequest){if(!(callback instanceof Callback)){xhr.send(data);return}let newCall={ajax:xhr,ajaxData:data,postOp:callback};if(callback.CanSkip){let existing=_callbackQueue.queue.findIndex((c,i)=>i>0&&c.postOp.Name===callback.Name&&c.postOp.CanSkip);if(existing>0){NWS.Logging.Log("Cancelling existing callback: "+callback.Name);_callbackQueue.queue[existing].postOp.Cancel(_callbackQueue.queue[existing].ajax);NWS.Logging.Log("Replacing existing callback: "+callback.Name);_callbackQueue.queue[existing]=newCall;return}}_callbackQueue.queue.push(newCall);NWS.Logging.Log("Queued new callback: "+newCall.postOp.Name);_callbackQueue.queue.length===1&&_callbackQueue.Execute()}},Execute:function(){if(_callbackQueue.queue.length!==0){let ajax=_callbackQueue.queue[0].ajax,data=_callbackQueue.queue[0].ajaxData;NWS.Logging.Log("Executing ajax call with callback: "+_callbackQueue.queue[0].postOp.Name);ajax.send(data)}},SkipCallback:function(){if(_callbackQueue.queue.length){let curCall=_callbackQueue.queue[0],skip=_callbackQueue.queue.some((c,i)=>i>0&&c.postOp.Name===curCall.postOp.Name&&c.postOp.CanSkip);return skip&&NWS.Logging.Log("Skipping callback: "+curCall.postOp.Name),skip}return!1},Complete:function(){let completedCall=_callbackQueue.queue.shift();NWS.Logging.Log("Completed callback: "+completedCall.postOp.Name);_callbackQueue.queue.length&&_callbackQueue.Execute()}},_commonHandlers={loadHandler:function(evt){let xhr=evt.target;xhr.status>=400||_callbackQueue.SkipCallback()||xhr.Callback.Load(xhr)},loadendHandler:function(evt){let xhr=evt.target;if(xhr.status===401||_callbackQueue.SkipCallback()){_callbackQueue.Complete();return}if(xhr.Callback.LoadEnd&&xhr.status<400){xhr.Callback.LoadEnd(xhr);_callbackQueue.Complete();return}xhr.Callback.LoadError&&xhr.status>=400&&xhr.Callback.LoadError(xhr);_callbackQueue.Complete()},loadendDefault:function(){_callbackQueue.Complete()}};return Callback.prototype.Cancel=function(xhr){xhr instanceof XMLHttpRequest&&(this.Load&&xhr.removeEventListener("load",_commonHandlers.loadHandler,!1),this.LoadEnd||this.LoadError?xhr.removeEventListener("loadend",_commonHandlers.loadendHandler,!1):xhr.removeEventListener("loadend",_commonHandlers.loadendDefault,!1))},Callback.prototype.ListenTo=function(xhr){!xhr instanceof XMLHttpRequest||(xhr.Callback=this,this.Load&&xhr.addEventListener("load",_commonHandlers.loadHandler,!1),this.LoadEnd||this.LoadError?xhr.addEventListener("loadend",_commonHandlers.loadendHandler,!1):xhr.addEventListener("loadend",_commonHandlers.loadendDefault,!1),xhr.addEventListener("error",this.LoadError||function(){console.error("An unknown network error occurred")},!1))},{Callback:Callback,QueuedCallback:function(name,onLoad,canSkip=true){return new Callback(onLoad,null,null,name,canSkip)}
1,CommonCallbacks:{DownloadFile:function(ajaxResult){if(!(ajaxResult.response instanceof Blob)){NWS.Logging.Warn("Invalid response for file download");return}let headerData=ajaxResult.getResponseHeader("Content-Disposition").split("filename=").reverse(),fileName=headerData.length?headerData[0]:"",a=document.createElement("a");a.style="display:none";a.href=URL.createObjectURL(ajaxResult.response);fileName!==""&&(a.download=fileName);document.body.appendChild(a);a.click();URL.revokeObjectURL(a.href);a.remove()}},Get:function(url,responseType,callback){var ajax=_.makeBaseXhr("GET",url,callback);responseType!==undefined&&(ajax.responseType=responseType);_callbackQueue.Add(ajax,null,callback)},Post:function(url,jsonObj,responseType,callback){var ajax=_.makeBaseXhr("POST",url,callback),formData=new FormData;let xsrf=document.querySelector("input[name='__RequestVerificationToken']");_.isLocalUrl(url)&&xsrf&&formData.append(xsrf.name,xsrf.value);_.appendJsonToFormData(formData,jsonObj,null);responseType!==undefined&&(ajax.responseType=responseType);_callbackQueue.Add(ajax,formData,callback)},PostSync:function(url,jsonObj){var ajax=_.makeBaseXhrSync("POST",url),formData=new FormData;let xsrf=document.querySelector("input[name='__RequestVerificationToken']");if(_.isLocalUrl(url)&&xsrf&&formData.append(xsrf.name,xsrf.value),_.appendJsonToFormData(formData,jsonObj,null),ajax.send(formData),ajax.status===401)window.location=response.LoginUrl;else{if(ajax.status<400)return ajax.responseText?JSON.parse(ajax.response):{};if(ajax.status>=400)return console.error(ajax.response),{}}},QueueCheck:function(){NWS.Logging.Log(_callbackQueue.queue)},Form:{PostToNewWindow:function(action,target,enctype="text/plain",args={}){var newWindow=window.open("",target),form=document.createElement("form");form.setAttribute("method","POST");form.setAttribute("enctype",enctype);form.setAttribute("action",action);form.setAttribute("target",target);form.addEventListener("formdata",function(e){let xsrf=document.querySelector("input[name='__RequestVerificationToken']");_.isLocalUrl(action)&&xsrf&&e.formData.append(xsrf.name,xsrf.value);_.appendJsonToFormData(e.formData,args,null)},!1);document.body.appendChild(form);form.submit();form.remove()}},UrlToken:{Encode:function(str){var base64=btoa(unescape(encodeURIComponent(str))),padChars=base64.match(/=/g);return base64.replace(/=/g,"")+(padChars===null?0:padChars.length)},Decode:function(token){var padChars,i;if(token.length===0||token==="bnVsbA2")return null;for(padChars=token.slice(-1),token=token.slice(0,-1),token=token.replace(/-/g,"+"),token=token.replace(/_/g,"/"),i=0;i<padChars;i++)token+="=";return decodeURIComponent(escape(atob(token)))}}}})

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.