function getLocalBranchData(){$.ajax({contentType:"application/json",url:root+"/api/async/branches",dataType:"json",type:"GET",success:function(n){var t=JSON.parse(n),i=mapRawData(t);sessionStorage.setItem("branchData",JSON.stringify(i))},error:function(n){console.error("getLocalBranchData Failed - "+n.responseText)}})}function mapRawData(n){return $.map(n,function(n){return{Id:n.Id,Name:n.Name,DisplayTitle:n.DisplayTitle,Latitude:n.Latitude,Longitude:n.Longitude,MarkerImage:null,BranchCardImage:null,Distance:null,FreeForm:n.FreeForm,ClosedForBusiness:isClosedForBusiness(n.Type),AddressLine1:n.AddressLine1,AddressLine2:n.AddressLine2,City:n.City,PostalCode:n.PostalCode,StateCode:n.StateCode,Phone:formatPhoneNumber(n.Phone),Group:{Id:n.Group.Id,Name:n.Group.Name,Logo:n.Group.Logo},Type:{Id:n.Type.Id,Name:n.Type.Name},Services:$.map(n.Services,function(n){return{Id:n.ServiceId,Active:n.Active,ServiceName:n.ServiceName}}),Holidays:$.map(n.Holidays,function(n){return{HolidayDate:n.HolidayDate,HolidayDesc:n.HolidayDesc,BackOfficeOpen:n.BackOfficeOpen,LendingOpen:n.LendingOpen,TraditionalOpen:n.TraditionalOpen,InStoreOpen:n.InStoreOpen}}),HasATM:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="atm"}).some(function(n){return n.Active===!0}),HasSafeDeposit:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="safe deposit"}).some(function(n){return n.Active===!0}),HasInstantDebitCard:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="instant debit card"}).some(function(n){return n.Active===!0}),HasBranchService:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="branch services"}).some(function(n){return n.Active===!0}),HasWalkUpService:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="walk-up"}).some(function(n){return n.Active===!0}),HasDriveUpService:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="drive-up"}).some(function(n){return n.Active===!0}),HasCashlessService:n.Services.filter(function(n){return n.ServiceName.toLowerCase()==="cashless banking"}).some(function(n){return n.Active===!0}),HasBranchHours:n.LocationHours.filter(function(n){return n.ServiceId===1}).some(function(n){return n.StartTime!==null}),HasWalkUpHours:n.LocationHours.filter(function(n){return n.ServiceId===4}).some(function(n){return n.StartTime!==null}),HasDriveUpHours:n.LocationHours.filter(function(n){return n.ServiceId===3}).some(function(n){return n.StartTime!==null}),Hours:{BranchHours:n.LocationHours.filter(function(n){return n.ServiceId===1}).map(function(n){return{Id:n.Id,ServiceId:n.ServiceId,ServiceName:n.ServiceName,Weekday:n.Weekday,WeekdayAbv:n.WeekdayShortName,WeekdayId:n.WeekdayId,StartTime:n.StartTime,EndTime:n.EndTime,DSTOffset:n.DSTOffset,UTCOffset:n.UTCOffset}}),WalkUpHours:n.LocationHours.filter(function(n){return n.ServiceId===4}).map(function(n){return{Id:n.Id,ServiceId:n.ServiceId,ServiceName:n.ServiceName,Weekday:n.Weekday,WeekdayAbv:n.WeekdayShortName,WeekdayId:n.WeekdayId,StartTime:n.StartTime,EndTime:n.EndTime,DSTOffset:n.DSTOffset,UTCOffset:n.UTCOffset}}),DriveUpHours:n.LocationHours.filter(function(n){return n.ServiceId===3}).map(function(n){return{Id:n.Id,ServiceId:n.ServiceId,ServiceName:n.ServiceName,Weekday:n.Weekday,WeekdayAbv:n.WeekdayShortName,WeekdayId:n.WeekdayId,StartTime:n.StartTime,EndTime:n.EndTime,DSTOffset:n.DSTOffset,UTCOffset:n.UTCOffset}})}}})}function isClosedForBusiness(n){return n.Name.toLowerCase()==="temporarily closed"||n.Name.toLowerCase()==="permanently closed"?!0:!1}function formatPhoneNumber(n){var i=(""+n).replace(/\D/g,""),t=i.match(/^(\d{3})(\d{3})(\d{4})$/);return t?"("+t[1]+") "+t[2]+"-"+t[3]:n}function getDisplayMessage(n){var t=document.getElementById(n);$.ajax({contentType:"application/json",url:root+"/api/messages",dataType:"json",type:"GET",success:function(n){var i,e;if(n!==null&&n!=="null"){var u=JSON.parse(n),r=hashCode(u.DisplayMessage).toString(),f=localStorage.getItem("messageHash"),o=localStorage.getItem("headerMsg");if(o==="on"&&r===f||f!==r){i="";switch(u.MessageImportance){case 1:i="alert alert-success alert-dismissible text-center";break;case 2:i="alert alert-info alert-dismissible text-center";break;case 3:i="alert alert-warning alert-dismissible text-center";break;case 4:i="alert alert-danger alert-dismissible text-center";break;default:i="alert alert-info alert-dismissible text-center"}for(e=buildAlertMessage(u.DisplayMessage,i);t.childNodes[0];)t.removeChild(t.childNodes[0]);t.appendChild(e)}f!==r&&(localStorage.setItem("messageHash",r),localStorage.setItem("headerMsg","on"))}},error:function(){console.log("getDisplayMessage Failed")}})}function buildAlertMessage(n,t){var r=document.createElement("div"),i;return r.setAttribute("id","site-alert"),r.setAttribute("aria-label","alert message"),r.setAttribute("class",t),r.innerHTML=n,i=document.createElement("button"),i.setAttribute("id","msgClose"),i.setAttribute("name","msgClose"),i.href="#",i.setAttribute("class","close"),i.setAttribute("aria-label","close message"),i.setAttribute("data-dismiss","alert"),i.innerHTML="&times;",r.appendChild(i),r}function hashCode(n){var t=0,i,r;if(n.length===0)return t;for(i=0;i<n.length;i++)r=n.charCodeAt(i),t=(t<<5-t)+r|0;return t}function isDescendant(n,t){if(t)for(var i=t.parentNode;i;){if(i===n)return!0;i=i.parentNode}return!1}var root;$(document).ready(function(){window.location.origin||(window.location.origin=window.location.protocol+"//"+window.location.hostname+(window.location.port?":"+window.location.port:""));root=window.location.origin;root.substr(-1)==="/"&&(root=root.substr(0,root.length-1));getDisplayMessage("msgContainer");$("Body").off("click","button[name=msgClose]");$("Body").on("click","button[name=msgClose]",function(){localStorage.setItem("headerMsg","off")});$("Body").off("contextmenu",".video-container");$("Body").on("contextmenu",".video-container",function(n){return n.preventDefault(),!1});$(document).off("keyup");$(document).on("keyup",function(n){n.keyCode===27&&($(".dropdown").blur(),$("li.login-dropdown a").blur())});$("Body").off("focusin",".dropdown:not(.login-dropdown)");$("Body").on("focusin",".dropdown:not(.login-dropdown)",function(){var n=$(this).id;$(this).addClass("open")});$("Body").off("focusout",".dropdown:not(.login-dropdown)");$("Body").on("focusout",".dropdown:not(.login-dropdown)",function(n){var t=!$(this).has(n.relatedTarget).length;t&&$(this).removeClass("open")})})