asb = window.asb || {}; asb.settings = { defaults: { 'movable_panels': false, 'persist_panels': false, 'login': 'fnc', // 'tracking_enabled': true 'tracking_enabled': false, show_login_after_load: 500, // show the login box (n) milliseconds after page load login_fade_in_speed: 200, // fade the login box in/out over a (n) millisecond duration show_banner_after_load: 1000, // Show the alert banner (n) milliseconds after page load // banner_slide_speed: 500, // slide the alert banner down/up over a (n) millisecond duration banner_slide_speed: 500 // slide the alert banner down/up over a (n) millisecond duration }, saved: ($.cookie('asb_settings')) ? $.parseJSON($.cookie('asb_settings')) : {}, compiled: {}, cookie_options: { // domain: '/' expires: 30, path: '/' } }; asb.begin = function () { // Things to do as soon as the document is ready // $(document).ready(function () { // Define the settings for our site, load 'settings', overwriting with any // settings that may have been stored in a local cookie (if enabled) // asb.settings.compiled = $.extend(asb.settings.defaults, asb.settings.saved); asb.setup.ready(asb.settings.compiled); asb.setup.loaded(); asb.extend.browserSupport(); $('#submitsearch').click(function (event) { event.preventDefault(); if ($('#searchQuery').val() == 'Search '+sFn) { return false; } else { window.location.replace("?q=" + encodeURI($('#searchQuery').val())); } }); $('#header-search-form').submit(function (event) { event.preventDefault(); if ($('#searchQuery').val() == 'Search '+sFn) { return false; } else { window.location.replace("?q=" + encodeURI($('#searchQuery').val())); } }); $('#submitFooterSearch').click(function (event) { event.preventDefault(); if ($('#footerSearchInput').val() == 'Search '+sFn) { return false; } else { window.location.replace("?q=" + encodeURI($('#footerSearchInput').val())); } }); $('#footer-search-form').submit(function (event) { event.preventDefault(); if ($('#footerSearchInput').val() == 'Search '+sFn) { return false; } else { window.location.replace("?q=" + encodeURI($('#footerSearchInput').val())); } }); $('#EmailEnquiry').click(function (event) { event.preventDefault(); window.open('/contact-us.html', '', 'scrollbars=yes,width=500,height=700'); }); $('.banner-close').live('click', function (event) { $(this).closest('[data-banner-container]').slideUp(parseInt(asb.settings.defaults.banner_slide_speed), function () { /* 20150428LR - HTML attribute '[data-banner-container]' gets stripped by Edit Studio */ if (asb.settings.compiled.persist_panels) { asb.settings.saved.panel_showing = false; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } }); $(this).closest('.security-alert-container').slideUp(parseInt(asb.settings.defaults.banner_slide_speed), function () { /* 20150428LR - for Edit Studio content use class '.security-alert-container' instead */ if (asb.settings.compiled.persist_panels) { asb.settings.saved.panel_showing = false; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } }); }); }); // Things to do when the entire page has finisehd loading // $(window).bind('load', function () { // asb.setup.loaded(); if ($('body').attr('id') == 'page-home') { setTimeout(function () { var target_panel = $('#login-button').data('panel'); $('#' + target_panel).fadeIn(parseInt(asb.settings.defaults.login_fade_in_speed)) }, asb.settings.defaults.show_login_after_load); } setTimeout(function () { $('[data-banner-container]').slideDown(parseInt(asb.settings.defaults.banner_slide_speed), function () { /* 20150428LR - HTML attribute '[data-banner-container]' gets stripped by Edit Studio */ if (asb.settings.compiled.persist_panels) { asb.settings.saved.panel_showing = false; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } }); $('.security-alert-container').slideDown(parseInt(asb.settings.defaults.banner_slide_speed), function () { /* 20150428LR - for Edit Studio content use class '.security-alert-container' instead */ if (asb.settings.compiled.persist_panels) { asb.settings.saved.panel_showing = false; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } }); }, parseInt(asb.settings.defaults.show_banner_after_load)); }); }; asb.setup = { ready: function(settings) { // Add an 'external' class to any links opening in a new window // $('a:isExternal').addClass('external-link'); // Enable placeholder support for legacy browsers // var fire_placeholder = true; if ($.browser.safari) fire_placeholder = false; if ($.browser.mozilla == true) { var browser_breakdown = $.browser.version.split('.'); if ((browser_breakdown[0] == 1) && (browser_breakdown[1] == 8)) { $('input[placeholder], textarea[placeholder]').removeAttr('maxlength'); } } if (fire_placeholder) $('input[placeholder], textarea[placeholder]').placeholder(); // Test if we came from the mobile site, or have a 'from-mobile' // cookie set to true, render nav-1 item //asb.fromMobile(); - removed as part of 2013 rebranding // Set the active login form // asb.login.set(settings.login); // Setup our panels by dynamically inlucding a close button, // also re-show any previously shown panel // asb.panel.setup(settings.panel_showing); // Attach our bound events, mostly clicks to a's // asb.binds(); }, loaded: function() { if ($('body').attr('id') == 'page-home') { // If it's the homepage, then load any additional hero images // Set our homepage variable for use later // asb.homepage = true; /* 20150306LR - SAS code start */ // Preload our carousels except SAS-enabled ones // $('.carousel').each(function() { if ($(this).parents('.sasia-enabled').length == 0) { asb.carousel.preload(this); } }); /* 20150306LR - SAS code end */ // Preload our carousel // /* 20150306LR - replaced with SAS enabled code above */ //asb.carousel.preload('.carousel'); // If there's a #message then animate it in // (after setting it up) // if ($('#message')) asb.message(); } else if ($('body').attr('id') == 'page-landing' || $('body').attr('id') == 'page-logged-out') { // Pages that aren't the homepage // /* 20150306LR - SAS code start */ // Load our carousels except SAS-enabled ones // $('.carousel').each(function() { if ($(this).parents('.sasia-enabled').length == 0) { asb.carousel.load(this); } }); } if (!(window.sasia === undefined)) { sasia.init(); } /* 20150306LR - SAS code end */ /* 20150306LR - replaced with SAS enabled code above */ //asb.carousel.load('.carousel'); /* 20150306LR - replaced with SAS enabled code above */ //} } }; asb.homepage = false; asb.binds = function () { // Close our open select when the body is clicked on // $(document).bind('click', function (e) { $('.select-open').trigger('click'); if ($(e.target).hasClass('banner-close')) { return true; } var is_panel = $(e.target).hasClass('panel'); if (!is_panel) is_panel = ($(e.target).parents('.panel').length > 0) ? true : false; if (!is_panel) { if ($('body').attr('id') == 'page-home') { $('.panel-close:visible').each(function () { var $this = $(this); if (!$this.hasClass('login-global') && (!$this.parents('.login-global').length > 0)) $this.trigger('click'); }); } else { $('.panel-close:visible').trigger('click'); } } }); // Bind our login-select to behave like a select // $('.login-select').live('click', function (e) { e.stopPropagation(); if (!$(this).hasClass('select-open')) $('.select-open') .toggleClass('select-open') .find('li:not(.current)') .fadeToggle(150); $(this) .toggleClass('select-open') .find('li:not(.current)') .fadeToggle(250); }); // Bind our login type toggles // $('.login-toggle').live('click', function (e) { e.preventDefault(); if (!$(this).hasClass('current')) { e.stopPropagation(); var swap_to = $(this).data('type'); asb.login.swap(swap_to); asb.track.event('Login', 'Swap', '', 'Showing: ' + swap_to); } }); // Bind our login buttons to make sure the forms aren't empty, // actual validation later $('input.login-button').live('click', function (e) { var valid_submission = true; var invalid_count = 0; $(this) .parentsUntil('form') .find('.form-item input:visible') .each(function () { if (($(this).val() == '') || ($(this).val() == $(this).attr('placeholder'))) { valid_submission = false; invalid_count++; $(this).addClass('error'); } else { $(this).removeClass('error'); } }) .promise() .done(function () { if (!valid_submission) { asb.track.event('Login form', 'Form incomplete', '', invalid_count + ' fields empty'); e.preventDefault(); } else { asb.track.event('Login form', 'Form complete', '', 'Submitting login details'); } }); }); // Remove the error class from our input's // if they have it when a key is pressed // $('.form-item input').live('keypress', function () { $(this).removeClass('error'); }); // Bind our different page 'actions' // $('a.action').live('click', function (e) { var action = $(this).data('action'); switch (action) { case 'panel-toggle': e.stopPropagation(); e.preventDefault(); var target_panel = $(this).data('panel'); $('.panel').not("#" + target_panel) .fadeOut(parseInt(asb.panel.outgoing)) .promise() .done(function () { $('#' + target_panel).fadeToggle(parseInt(asb.panel.incoming), function () { if (asb.settings.compiled.persist_panels) { asb.settings.saved.panel_showing = target_panel; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } asb.track.event('Header Panels', 'Show', '', 'Showing: ' + target_panel); }); }); break; case 'enquiry': e.preventDefault(); asb.action.enquiry(); break; case 'forward': e.preventDefault(); asb.action.forward(); break; case 'print': e.preventDefault(); asb.action.print(); break; case 'email': e.preventDefault(); asb.action.email(); break; default: break; } }); $('#login-to-fnc, #login-to-ost, #login-to-fastpay, .login-support-to-fnc, .login-support-to-fastpay, .login-support-to-ost').live('click', function (event) { var type = $(this).data('type'); asb.settings.saved.login = type; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); if (asb.settings.compiled.persist_panels) { var target_panel = $(this).data('panel'); asb.settings.saved.panel_showing = target_panel; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } window.location.href = $(this).data('href'); }); // Bind colorbox // $(document).bind('cbox_complete', function () { // Fix for IE to remove the loading spinner due to animation conflict // if ($.browser.msie) { $('#cboxLoadingOverlay, #cboxLoadingGraphic').remove(); } }); $('.colorbox').each(function () { var options = { onOpen: function () { // Pause our cycle carousel asb.carousel.pause(); }, onClosed: function () { // Resume our cycle carousel asb.carousel.resume(); }, fixed: true, returnFocus: false, opacity: 0.5 }; // Determine if this is an external colorbox var is_external = $(this).isExternal(); if (is_external) { $.extend(options, { iframe: true, width: 650, height: 650 }); } var colorbox_id = $(this).attr('id'); if (colorbox_id && (colorbox_id != '')) { var type = colorbox_id.substring((colorbox_id.indexOf('-', 0) + 1), colorbox_id.length); $.extend(options, { onComplete: function () { asb.extend.tiles(type); } }); } $(this).colorbox(options); }); // Bind Calculator colorbox $('.inline').each(function () { var options = { returnFocus: false, inline: true, width: 755, height: 350, scrolling: false, opacity: 0.5 }; $(this).colorbox(options); }); // Track our tile panel interactions // $('.tile a').live('click', function () { asb.track.event('Info Tiles', 'Click', '', 'Tile target: ' + $(this).attr('href')); }); }; asb.action = { enquiry: function () { asb.track.event('Action', 'Enquiry', '', ''); $.colorbox({ returnFocus: false, opacity: 0.5, href: '/contact-us.html', width: 500, height: 700 }); // Original version, replaced with colorbox // implementation but retained for prosperity // MM_openBrWindow( '/customerService.aspx', '', 'scrollbars=yes, width=500, height=700' ); }, forward: function () { asb.track.event('Action', 'Forward', '', ''); }, print: function () { asb.track.event('Action', 'Print', '', ''); if (window.print) { window.print(); } else { var WebBrowser = ''; document.body.insertAdjacentHTML('beforeEnd', WebBrowser); WebBrowser1.ExecWB(6, 2); //Use a 1 vs. a 2 for a prompting dialog box WebBrowser1.outerHTML = ""; } }, email: function () { asb.track.event('Action', 'Email', '', ''); // if (window.email) { window.email(); } else { var subject = document.title; var body = 'The information at this link may be of interest to you: ' + document.URL + '%0D%0A%0D%0A'; var href = 'mailto:?subject=' + subject + '&Body=' + body; window.location.href = href; //var emailAnchor = $('EMAIL'); //emailAnchor.appendTo('body').click().remove(); } } }; asb.login = { set: function(type) { // Set our login-select elements to display the correct login option // $('.login-select li[data-type="' + type + '"]').addClass('current').fadeIn(150); // Show the correct login form // $('.login-form') .fadeOut('slow') .hide() .promise() .done(function() { $('form.login-' + type).fadeIn(); }); $('.LoginSupport').hide(); $('.' + type + 'LoginSupport').show(); // Update our cookie with the currently selected login type // asb.settings.saved.login = type; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); }, swap: function(type) { // Hide all the li's in the current open select // $('.select-open li, .login-select:not(.select-open) li.current') .fadeToggle(150) .hide() .promise() .done(function() { // Our open select will be closed // $('.select-open').removeClass('select-open'); // Remove current from the current selected login type // $('.login-select li.current').removeClass('current'); // Any error fields have their error state removed // $('.form-item input.error').removeClass('error'); // Show our new login type & form // asb.login.set(type); }); } }; asb.panel = { incoming: 200, outgoing: 250, setup: function(panel_showing) { // Create and append a 'close' link to all our div.panel items // var panel_close = $(''); panel_close .text('Close') .addClass('panel-close') .bind('click', function() { $(this).parent().fadeOut(parseInt(asb.panel.outgoing), function() { if (asb.settings.compiled.persist_panels) { asb.settings.saved.panel_showing = false; $.cookie('asb_settings', $.toJSON(asb.settings.saved), asb.settings.cookie_options); } }); }); // Append the link $('.panel').append(panel_close); // If there is a showing panel, then re-show it // if (asb.settings.compiled.persist_panels && panel_showing) $('#' + panel_showing).fadeIn(parseInt(asb.panel.incoming)); } }; (function(){var n=n||{},t={Url:sU,DL:"www."+sD+",qa."+sD,Channel:"FASTNETB",BannerDelay:100,BannerContainer:"#footer-container"};n.Marketting={Initialize:function(){$("#fnbLoginHeader").submit(function(t){n.Marketting.DetermineBannerForUser(t)})},DetermineBannerForUser:function(i){var r=$.trim($($("#fnbLoginHeader input")[8]).val()),u=$.trim($($("#fnbLoginHeader input")[9]).val());(r.length>0||u.length>0)&&n.Marketting.BannersAvailableForUser(t.DL)&&(i.preventDefault(),n.Marketting.GetBanner())},BannersAvailableForUser:function(n){if(n.length>0){var t=n.split(",");return t.length>0?$.inArray(document.location.hostname,t)==-1:!1}return!1},GetBanner:function(){var r="",v=$.trim($($("#fnbLoginHeader input")[7]).val()),y=$.trim($($("#fnbLoginHeader input")[8]).val()),u=$.trim($($("#fnbLoginHeader input")[9]).val()),f,p;if(u.length>0)try{f=0;p="";function c(n){return l(w(o(n)))}function g(n,t){return l(b(o(n),o(t)))}function nt(){return c("abc").toLowerCase()=="a9993e364706816aba3e25717850c26c9cd0d89d"}function w(n){return a(e(s(n),n.length*8))}function b(n,t){var r=s(n),u,f,i,o;for(r.length>16&&(r=e(r,n.length*8)),u=Array(16),f=Array(16),i=0;i<16;i++)u[i]=r[i]^909522486,f[i]=r[i]^1549556828;return o=e(u.concat(s(t)),512+t.length*8),a(e(f.concat(o),672))}function l(n){var i,r,u,t;try{f}catch(e){f=0}for(i=f?"0123456789ABCDEF":"0123456789abcdef",r="",t=0;t>>4&15)+i.charAt(u&15);return r}function o(n){for(var i="",r=-1,t,u;++r>>6&31,128|t&63):t<=65535?i+=String.fromCharCode(224|t>>>12&15,128|t>>>6&63,128|t&63):t<=2097151&&(i+=String.fromCharCode(240|t>>>18&7,128|t>>>12&63,128|t>>>6&63,128|t&63));return i}function s(n){for(var i=Array(n.length>>2),t=0;t>5]|=(n.charCodeAt(t/8)&255)<<24-t%32;return i}function a(n){for(var i="",t=0;t>5]>>>24-t%32&255);return i}function e(n,t){var l,r,a;n[t>>5]|=128<<24-t%32;n[(t+64>>9<<4)+15]=t;var s=Array(80),u=1732584193,f=-271733879,e=-1732584194,o=271733878,c=-1009589776;for(l=0;l>16)+(t>>16)+(i>>16);return r<<16|i&65535}function h(n,t){return n<>>32-t}u=c(u)}catch(tt){}r+="a="+v+"/"+y+";";r+="b="+u+";";r+="c="+document.location+";";r+="d="+document.location.hostname+";";r+="e="+t.Channel+";";r=escape(n.Marketting.Rot13(r));$(t.BannerContainer).append("");setTimeout(function(){n.Marketting.RenderBanner()},t.BannerDelay)},RenderBanner:function(){$("#fnbLoginHeader").unbind("submit");$("#fnbLoginHeader .login-button").click()},Rot13:function(n){return n.replace(/[a-zA-Z]/g,function(n){return String.fromCharCode((n<="Z"?90:122)>=(n=n.charCodeAt(0)+13)?n:n-26)})}};n.Marketting.Initialize()})(); asb.carousel = { preload: function(target) { var hero_count = 0; var hero_loaded = 0; $('.carousel-item') .each(function() { var hero = $(this).data('image'); if (hero) { hero_count++; var image = $(''); image .attr({ 'src': hero }) .bind('load', function() { hero_loaded++; if (hero_loaded == hero_count) { $(target).data({ 'loaded': true }); asb.carousel.load(target); } }) .each(function() { if (this.complete) { $(this).trigger('load'); } }); } }) .promise() .done(function() { if (hero_count == 0) asb.carousel.load(target); }); }, load: function(target) { $(target).each(function() { var node = $(this).attr('id'); var wrapper = asb.carousel.wrap(node); var navigation = asb.carousel.navigation(node); var logoutShowing = false; asb.carousel.active.push($(this)); $(this) .find('a') .live('click', function(e) { e.stopPropagation(); e.preventDefault(); window.location = $(this).attr('href'); }) .end() .css({ 'visibility': 'visible' }) .wrap(wrapper) .before(navigation['previous']) .before(navigation['next']) .after(navigation['pagination']) .cycle({ timeout: 4000, sync: 1, activePagerClass: 'current', prev: '#' + node + '-previous', next: '#' + node + '-next', pagerAnchorBuilder: function(index, DOMelement) { var anchor = $(''); anchor .bind('click', function(e) { e.stopPropagation(); }) .text(index); return anchor; }, pager: '#' + node + '-pagination', pause: 1, pauseOnPagerHover: 1, speed: 650, before: function(currSlideElement, nextSlideElement, options, forwardFlag) { if (asb.homepage) { var next_has_image = ($(nextSlideElement).data('image')) ? true : false; if (next_has_image) { var next_image = $(nextSlideElement).data('image'); var current_image = $('img#hero').attr('src'); if (next_image && (next_image != current_image)) $('img#hero') .animate({ opacity: 0 }, 400, function() { $(this) .attr({ 'src': $(nextSlideElement).data('image') }) .data({ 'update': true }) }); } } else { $('.carousel-message') .each(function() { $(this).fadeOut('fast'); }); } }, after: function(currSlideElement, nextSlideElement, options, forwardFlag) { var object = $(this); if (asb.homepage) { if ($('img#hero').data('update')) $('img#hero') .animate({ opacity: 1 }, 350, function() { $(this).data({ 'update': false }); }); } else { if (($('#panel-logged-out').length > 0) && !logoutShowing) { logoutShowing = true; $('#panel-logged-out') .delay(500) .fadeIn(750, function() { show_message(object); }); } else { show_message(object); } } function show_message(object) { // turn other carousel message off // $('.carousel-message') .each(function() { $(this).hide(); }) .promise() .done(function() { object .find('.carousel-message') .delay(250) .fadeIn(350); }); /* for (var i = 0; i < options.slideCount; i++) { if (i != options.currSlide) { $(options.elements[i]) .find('.carousel-message') .hide(); } } object .find('.carousel-message') .delay(250) .fadeIn(750); */ }; }, onPrevNextEvent: function(isNext, zeroBasedSlideIndex, slideElement) { var direction = (isNext) ? 'Next' : 'Previous'; asb.track.event('Carousel', 'Navigation', '', 'Direction: ' + direction); }, onPagerEvent: function(zeroBasedSlideIndex, slideElement) { asb.track.event('Carousel', 'Navigation', '', 'Pagination: ' + zeroBasedSlideIndex); } }); //20141210LR var hideNavigation = ($(this)[0].children.length < 2); //20141210LR if (hideNavigation){ //20141210LR $('#landing-carousel-previous').hide(); //20141210LR $('#landing-carousel-next').hide(); //20141210LR $('#landing-carousel-pagination').hide(); //20141210LR } //20141210LR }); }, wrap: function(class_name) { var wrap = $('
'); wrap .attr({ 'id': class_name + '-wrap', 'class': 'carousel-wrap' }) .bind('click', function() { $(this).find('.carousel-item:visible a').trigger('click'); }); return wrap; }, navigation: function(node) { var navigation = {}; // Build and add our 'Prev' action link // var previous = $(''); previous .text('Previous') .attr({ 'id': node + '-previous', 'class': 'carousel-navigation carousel-previous' }) .bind('click', function() { }); navigation['previous'] = previous; // Build and add our 'Next' action link // var next = $(''); next .text('Next') .attr({ 'id': node + '-next', 'class': 'carousel-navigation carousel-next' }) .bind('click', function() { }); navigation['next'] = next; // Build and add our pagination container // var pagination = $('
'); pagination .attr({ 'id': node + '-pagination', 'class': 'carousel-pagination' }); navigation['pagination'] = pagination; return navigation; }, pause: function() { $.each(asb.carousel.active, function() { $(this).cycle('pause'); }); }, resume: function() { $.each(asb.carousel.active, function() { $(this).cycle('resume'); }); }, active: [] }; asb.message = function() { // Create and append a 'close' link to all our div.panel items // var message_close = $(''); message_close .text('Close') .addClass('message-close') .bind('click', function() { // $( this ).parent().fadeOut( parseInt( asb.panel.outgoing ), function() {}); $(this).parent() .slideUp() .fadeOut(function() { asb.track.event('Message Panel', 'Close', '', ''); }); }); // Append the link $('#message') .append(message_close) .slideDown(); }; // This is where we test if the user came from the mobile site, or has // a from mobile cookie set to true asb.fromMobile = function() { var is_from_mobile = ($.query.get('viewfull') == 'true') ? true : false; if (!is_from_mobile) { is_from_mobile = ($.cookie('asb_from_mobile') == 'true') ? true : false; } else { $.cookie('asb_from_mobile', is_from_mobile, asb.settings.cookie_options); } if (is_from_mobile == true) { var nav_item = $('#navigation li:last-child').clone(); nav_item .removeClass('current') .find('a') .bind('click', function() { $.cookie('asb_from_mobile', false, asb.settings.cookie_options); }) .attr({ 'href': 'https://m.'+sD+'/' }) .text('Back to mobile'); $('#navigation').append(nav_item); } }; // This is where tracking is managed // asb.track = { event: function(category, action, label, value) { //alert('category: ' + category + ', action: ' + action + ', label: ' + label + ', value: ' + value); if (asb.settings.compiled.tracking_enabled == true) { _gaq.push(['_trackEvent', category, action, value]); } } }; // This is where 3rd party developers should put their functions // asb.extend = { tiles: function(type) { switch (type) { case 'rates': $.ajax({ type: 'GET', url: '/rw/ASBCharts/FMOL/Rates.xml', dataType: 'xml', success: function(xml) { $('.rate-pc').each(function() { var result = $(xml).find($(this).attr('xpath')); if (result[0]) { var rate = $(result[0]).text().split('.'); $(this) .find('.digit') .text(rate[0]) .end() .find('.decimal') .text('.' + rate[1].substring(0, 2) + '%'); } }); } }); break; case 'calculator': JS.require('asb.forex', function() { asb.forex.setup(); }); break; } }, browserSupport: function() { jQuery.extend(jQuery.browser, { SafariMobile: navigator.userAgent.toLowerCase().match(/ip(hone|ad|od)/i) }); jQuery.extend(jQuery.browser, { chrome: navigator.userAgent.toLowerCase().match(/chrome/i) }); jQuery.extend(jQuery.browser, { android: navigator.userAgent.toLowerCase().match(/android/i) }); var browser = $.browser; var browsername = (browser.android ? 'android' : browser.chrome ? 'chrome' : (browser.SafariMobile ? 'safarimobile' : (browser.safari ? 'safari' : (browser.webkit ? 'webkit' : (browser.msie ? 'msie' : (browser.mozilla ? 'mozilla' : '')))))); var version = browser.version; if (browsername == 'chrome') version = navigator.userAgent.match(/Chrome\/(\d+\.\d+)/)[1]; if (browsername == 'android') version = navigator.userAgent.match(/Android (\d+(?:\.\d+))/)[1]; if (browsername == 'safari') { var match = navigator.userAgent.match(/Version\/(\d+\.\d+)/); if (match != null) version = match[1]; else version = -1; } if (browsername == 'safarimobile') { var agent = window.navigator.userAgent, start = agent.indexOf('OS '); version = agent.substr(start + 3, 3).replace('_', '.'); } version = parseFloat(version); $.ajax({ type: "GET", url: sU+"/web/acceptedbrowsers.xml", dataType: "xml", success: function(xml) { if ($(xml).find('BROWSER[name="' + browsername + '"]').length > 0) { $(xml).find('BROWSER[name="' + browsername + '"]') .each(function(value) { if (version < parseFloat($(this).find("version").text())) { $('#oldbrowser-message').removeClass('oldbrowser-hidden'); } }); } else { $('#oldbrowser-message').removeClass('oldbrowser-hidden'); } } }); } };