PageSourceSearch

https://www.unionbankandtrust.com/modules/locations/js/locations.js?v=1791460800

js unionbankandtrust.com collected 2026-10-09 22:41:46 UTC 13,209 bytes, 197 lines download raw bytes

1"use strict";!function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof exports?module.exports=t(require("jquery")):t(jQuery||Zepto)}(function(t){var a=function(a,e,n){a=t(a);var r,s=this,o=a.val();e="function"==typeof e?e(a.val(),void 0,a,n):e;var i={invalid:[],getCaret:function(){try{var t,e=0,n=a.get(0),r=document.selection,s=n.selectionStart;return r&&-1===navigator.appVersion.indexOf("MSIE 10")?(t=r.createRange(),t.moveStart("character",a.is("input")?-a.val().length:-a.text().length),e=t.text.length):(s||"0"===s)&&(e=s),e}catch(o){}},setCaret:function(t){try{if(a.is(":focus")){var e,n=a.get(0);n.setSelectionRange?n.setSelectionRange(t,t):n.createTextRange&&(e=n.createTextRange(),e.collapse(!0),e.moveEnd("character",t),e.moveStart("character",t),e.select())}}catch(r){}},events:function(){a.on("input.mask keyup.mask",i.behaviour).on("paste.mask drop.mask",function(){setTimeout(function(){a.keydown().keyup()},100)}).on("change.mask",function(){a.data("changed",!0)}).on("blur.mask",function(){o===a.val()||a.data("changed")||a.triggerHandler("change"),a.data("changed",!1)}).on("blur.mask",function(){o=a.val()}).on("focus.mask",function(a){n.selectOnFocus===!0&&t(a.target).select()}).on("focusout.mask",function(){n.clearIfNotMatch&&!r.test(i.val())&&i.val("")})},getRegexMask:function(){for(var t,a,n,r,o,i,c=[],l=0;l<e.length;l++)t=s.translation[e.charAt(l)],t?(a=t.pattern.toString().replace(/.{1}$|^.{1}/g,""),n=t.optional,r=t.recursive,r?(c.push(e.charAt(l)),o={digit:e.charAt(l),pattern:a}):c.push(n||r?a+"?":a)):c.push(e.charAt(l).replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"));return i=c.join(""),o&&(i=i.replace(new RegExp("("+o.digit+"(.*"+o.digit+")?)"),"($1)?").replace(new RegExp(o.digit,"g"),o.pattern)),new RegExp(i)},destroyEvents:function(){a.off(["input","keydown","keyup","paste","drop","blur","focusout",""].join(".mask "))},val:function(t){var e,n=a.is("input"),r=n?"val":"text";return arguments.length>0?(a[r]()!==t&&a[r](t),e=a):e=a[r](),e},getMCharsBeforeCount:function(t,a){for(var n=0,r=0,o=e.length;o>r&&t>r;r++)s.translation[e.charAt(r)]||(t=a?t+1:t,n++);return n},caretPos:function(t,a,n,r){var o=s.translation[e.charAt(Math.min(t-1,e.length-1))];return o?Math.min(t+n-a-r,n):i.caretPos(t+1,a,n,r)},behaviour:function(a){a=a||window.event,i.invalid=[];var e=a.keyCode||a.which;if(-1===t.inArray(e,s.byPassKeys)){var n=i.getCaret(),r=i.val(),o=r.length,c=o>n,l=i.getMasked(),u=l.length,h=i.getMCharsBeforeCount(u-1)-i.getMCharsBeforeCount(o-1);return i.val(l),!c||65===e&&a.ctrlKey||(8!==e&&46!==e&&(n=i.caretPos(n,o,u,h)),i.setCaret(n)),i.callbacks(a)}},getMasked:function(t){var a,r,o=[],c=i.val(),l=0,u=e.length,h=0,f=c.length,v=1,p="push",d=-1;for(n.reverse?(p="unshift",v=-1,a=0,l=u-1,h=f-1,r=function(){return l>-1&&h>-1}):(a=u-1,r=function(){return u>l&&f>h});r();){var k=e.charAt(l),g=c.charAt(h),m=s.translation[k];m?(g.match(m.pattern)?(o[p](g),m.recursive&&(-1===d?d=l:l===a&&(l=d-v),a===d&&(l-=v)),l+=v):m.optional?(l+=v,h-=v):m.fallback?(o[p](m.fallback),l+=v,h-=v):i.invalid.push({p:h,v:g,e:m.pattern}),h+=v):(t||o[p](k),g===k&&(h+=v),l+=v)}var y=e.charAt(a);return u!==f+1||s.translation[y]||o.push(y),o.join("")},callbacks:function(t){var r=i.val(),s=r!==o,c=[r,t,a,n],l=function(t,a,e){"function"==typeof n[t]&&a&&n[t].apply(this,e)};l("onChange",s===!0,c),l("onKeyPress",s===!0,c),l("onComplete",r.length===e.length,c),l("onInvalid",i.invalid.length>0,[r,t,a,i.invalid,n])}};s.mask=e,s.options=n,s.remove=function(){var t=i.getCaret();return i.destroyEvents(),i.val(s.getCleanVal()),i.setCaret(t-i.getMCharsBeforeCount(t)),a},s.getCleanVal=function(){return i.getMasked(!0)},s.init=function(e){if(e=e||!1,n=n||{},s.byPassKeys=t.jMaskGlobals.byPassKeys,s.translation=t.jMaskGlobals.translation,s.translation=t.extend({},s.translation,n.translation),s=t.extend(!0,{},s,n),r=i.getRegexMask(),e===!1){n.placeholder&&a.attr("placeholder",n.placeholder),"oninput"in t("input")[0]==!1&&"on"===a.attr("autocomplete")&&a.attr("autocomplete","off"),i.destroyEvents(),i.events();var o=i.getCaret();i.val(i.getMasked()),i.setCaret(o+i.getMCharsBeforeCount(o,!0))}else i.events(),i.val(i.getMasked())},s.init(!a.is("input"))};t.maskWatchers={};var e=function(){var e=t(this),r={},s="data-mask-",o=e.attr("data-mask");return e.attr(s+"reverse")&&(r.reverse=!0),e.attr(s+"clearifnotmatch")&&(r.clearIfNotMatch=!0),"true"===e.attr(s+"selectonfocus")&&(r.selectOnFocus=!0),n(e,o,r)?e.data("mask",new a(this,o,r)):void 0},n=function(a,e,n){n=n||{};var r=t(a).data("mask"),s=JSON.stringify,o=t(a).val()||t(a).text();try{return"function"==typeof e&&(e=e(o)),"object"!=typeof r||s(r.options)!==s(n)||r.mask!==e}catch(i){}};t.fn.mask=function(e,r){r=r||{};var s=this.selector,o=t.jMaskGlobals,i=t.jMaskGlobals.watchInterval,c=function(){return n(this,e,r)?t(this).data("mask",new a(this,e,r)):void 0};return t(this).each(c),s&&""!==s&&o.watchInputs&&(clearInterval(t.maskWatchers[s]),t.maskWatchers[s]=setInterval(function(){t(document).find(s).each(c)},i)),this},t.fn.unmask=function(){return clearInterval(t.maskWatchers[this.selector]),delete t.maskWatchers[this.selector],this.each(function(){var a=t(this).data("mask");a&&a.remove().removeData("mask")})},t.fn.cleanVal=function(){return this.data("mask").getCleanVal()},t.applyDataMask=function(a){a=a||t.jMaskGlobals.maskElements;var n=a instanceof t?a:t(a);n.filter(t.jMaskGlobals.dataMaskAttr).each(e)};var r={maskElements:"input,td,span,div",dataMaskAttr:"*[data-mask]",dataMask:!0,watchInterval:300,watchInputs:!0,watchDataMask:!1,byPassKeys:[9,16,17,18,36,37,38,39,40,91],translation:{0:{pattern:/\d/},9:{pattern:/\d/,optional:!0},"#":{pattern:/\d/,recursive:!0},A:{pattern:/[a-zA-Z0-9]/},S:{pattern:/[a-zA-Z]/}}};t.jMaskGlobals=t.jMaskGlobals||{},r=t.jMaskGlobals=t.extend(!0,{},r,t.jMaskGlobals),r.dataMask&&t.applyDataMask(),setInterval(function(){t.jMaskGlobals.watchDataMask&&t.applyDataMask()},r.watchInterval)});
2$(document).ready(function() {
3    // JS Tabs
4    $('.js-tabs li a').on('click', function() {
5        var tabs = $(this).data('tab');
6
7        $('.js-tabs li a').removeClass('active-tab');
8        $('.js-panel').hide();
9        $(this).addClass('active-tab');
10        $('.js-panel#'+tabs).show();
11        setCookie(tabs);
12        return false;
13    });
14
15
16    // Near Me On Click
17    $('.js-near-me').on('click', function() {
18        if (navigator.geolocation) {
19            navigator.geolocation.getCurrentPosition(function(position) {
20                var myLocation = {};
21                myLocation.lat = position.coords.latitude;
22                myLocation.lng = position.coords.longitude;
23                map.setCenter(myLocation);
24            }, function(error) {
25                console.log(error);
26                $('.location-error-div').html('<p class="message message-error">Sorry, your browser does not support geolocation</p>');
27            }, {
28                enableHighAccuracy: true,
29                maximumAge        : 30000,
30                timeout           : 27000
31              });
32        } else {
33            $('.location-error-div').html('<p class="message message-error">Sorry, your browser does not support geolocation</p>');
34        }
35    });
36
37
38    // Filters
39    $('.js-open-filters').on('click', function() {
40        $(this).toggleClass('active-filters');
41        $('.location-filters').slideToggle();
42
43        return false;
44    });
45
46    $('#locationFilter, #locationSearch').on('submit', function(evt) {
47        evt.preventDefault();
48        $('.location-filters').slideUp();
49
50
51        // Add loading gif
52        $('.location-search-filter').after('<div class="flexcol-xs-12 text-center location-loading mt-2"><p class="mb-1">Loading Results...</p><img src="/images/loading.gif" alt="Loading search results..." title="Loading search results..."/></div>');
53        $('.location-loading').nextAll().remove();
54
55        var formData = {};
56
57        $('#locationFilter input, #locationFilter select').each(function(index, elem){
58            if (elem.type == "checkbox" && elem.checked) {
59                if (typeof formData[elem.name] == 'undefined') {
60                    formData[elem.name] = [];
61                }
62
63                formData[elem.name].push(elem.value);
64            }
65        });
66
67        formData['location-search'] = $('#location-search').val();
68
69        $.ajax({
70            type 		: 'POST',
71            url 		: '/modules/locations/library/locations-search-results.php',
72            data 		: formData,
73            dataType 	: 'json',
74        }
75        ).done(function(data){
76            if (data.html) {
77                $('.location-search-filter').after(data.html);
78                updateFavoriteLocationsList();
79                if(formData['location-search'].length > 0){
80                    var fitMapBounds = false;
81                    var centerAddress = formData['location-search'];
82                } else {
83                    var fitMapBounds = true;
84                }
85                updateMap(data.filters.types,data.filters.services,data.filters.states,data.filters.search,fitMapBounds,centerAddress);
86                $('.location-loading').remove();
87            } else if (!html) {
88                $('.location-search-filter').after('<div class="flexcol-xs-12 flexcol-lg-7 flexcol-xl-8 location-loading"><p>No locations found</p></div>');
89            }
90        })
91
92    });
93
94    // Clear filters
95    $('.js-filter-reset').on('click', function(evt){
96        window.location.href = window.location.pathname;
97    });
98
99    // Location 1
100    // -- Open Details Window
101    $(document).on('click', '.js-open-details', function(evt) {
102        evt.preventDefault();
103        var locationId = $(this).data('id');
104
105        $('.location-details-window[data-id="'+ locationId +'"]').addClass('active-window');
106
107        return false;
108    });
109
110    $(document).on('click', '#location-map-tab .location-list-row', function(evt) {
111
112        var locationId = $(this).data('id');
113
114        window.location.hash = locationId;
115
116        $('.location-details-window[data-id="'+ locationId +'"]').addClass('active-window');
117
118        return false;
119    });
120
121    // -- Close Details Window
122    $(document).on('click', '.js-close', function() {
123        var locationId = $(this).closest('.location-details-window').data('id');
124
125        $('.location-details-window[data-id="'+ locationId +'"]').removeClass('active-window');
126
127        return false;
128    });
129
130    // Show all hours
131    $(document).on('click', '.js-show-all-hours', function(evt) {
132        evt.preventDefault();
133
134        $(this).parent().parent().find('.location-all-hours-table').slideToggle();
135    })
136
137
138    // Favorite a Location
139    $(document).on('click', '.js-favorite-location', function() {
140        if ($(this).hasClass('favorited')) {
141            $(this).removeClass('favorited');
142            localStorage.removeItem('favorited-location');
143        } else {
144            $('.js-favorite-location').removeClass('favorited');
145            $(this).toggleClass('favorited');
146            localStorage.setItem('favorited-location', $(this).data('id'))
147        }
148
149        return false;
150    });
151
152    // Move favorite location to the top
153    function updateFavoriteLocationsList() {
154        var favoriteLocationId = localStorage.getItem('favorited-location');
155
156        if (favoriteLocationId) {
157            var favoriteLocationLi = $('.location-list-row[data-id="'+ favoriteLocationId +'"]');
158            var detailsFavoriteLocation = $('.location-details-window[data-id="'+ favoriteLocationId +'"]');
159            var listFavoriteLocation = $('.view-location-list .location-information-column[data-id="'+ favoriteLocationId +'"]');
160            var gridFavoriteLocation = $('.location-grid-column[data-id="'+ favoriteLocationId +'"]');
161            var locationDetails = $('.view-location-details');
162
163
164            $(favoriteLocationLi).parent().prepend(favoriteLocationLi);
165            $(favoriteLocationLi).find('.js-favorite-location').addClass('favorited');
166            $(detailsFavoriteLocation).find('.js-favorite-location').addClass('favorited');
167
168            var parentListRow = $(listFavoriteLocation).closest('.location-list-row');
169            $(listFavoriteLocation).closest('.view-location-list').prepend(parentListRow);
170            $(listFavoriteLocation).find('.js-favorite-location').addClass('favorited');
171
172
173            $(gridFavoriteLocation).closest('.flexgrid-row').prepend(gridFavoriteLocation);
174            $(gridFavoriteLocation).find('.js-favorite-location').addClass('favorited');
175
176            $(locationDetails).find('.js-favorite-location').addClass('favorited');
177
178        }
179        $('.location-list').show();
180        $('.view-location-list').show();
181        $('.view-location-grid').show();
182    }
183
184    updateFavoriteLocationsList();
185
186    $('.zip-mask').mask('00000-0000');
187});
188function setCookie(tabs){
189    var date = new Date();
190    date.setTime(date.getTime()+(30*24*60*60*1000));
191    var expires = "; expires="+date.toGMTString();
192    document.cookie = 'map-view= '+ tabs + expires;
193}
194function showLocationDetails(locationId){
195    $('.js-close').trigger('click');
196    $('.location-details-window[data-id="'+ locationId +'"]').addClass('active-window');
197}

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.