(function() { 'use strict'; // Default Object var g = { settings: { version: '2.0.1', description: 'A client module to responsify HQ Sites on businesswire', bwjq: '1.2.6', debug_mode: false, custom_mode: false, force_desktop_mode: 'IPE', toggle_nav: false, break_points: [960, 600, 480], hq_type: '', base_theme: '', client_url: '#', client_logo: '', client_menu: '', client_search: '', bw_menu: '', bw_search: '', key_image_t: '', key_image_m: '', key_image_crop: 'crop', bg_top: '', bg_menu: '', link_default: '', link_active: '', hide_these: '', ignore_list: '.emvideo-thumbnail-replacement span, #panels-ipe-control-container, .pane-pr-body ul, .pane-node-body ul, img[class*="listview_thumb"], .more, .bw-user-links-list li, map, var, .pane-pr-body table, .pane-node-body table, .node-type-press-release #bw-content-content table', m_ignore: '', m_wrapper: 'body' } }; // Debug functions g.debuggers = { triggered: false, debug: function(f) { if (!g.debuggers.triggered) { window.onerror = function(error) { g.debuggers.logger(error); }; var bwjq = bw_responsive.debuggers.jquery(), stringTest = bw_responsive.settings.bg_top + bw_responsive.settings.bg_menu + bw_responsive.settings .link_default + bw_responsive.settings.link_active; if (bwjq.v !== bw_responsive.settings.bwjq) { if (bwjq.loaded) { g.debuggers.logger('jQuery on window is ' + bw_responsive.debuggers.jquery().v, 'Should be: ' + bw_responsive.settings .bwjq); } else { g.debuggers.logger('No jQuery detected', 'Please load jQuery' + bw_responsive.settings .bwjq ); } } if (stringTest.indexOf(';') === -1) { bw_responsive.debuggers.clock.t_start(); f(); //g.debuggers.logger(bw_responsive.debuggers.clock.t_stop()); } else { g.debuggers.logger( 'please do not use semi colons in variable settings' ); } } else { bw_responsive.debuggers.clock.t_start(); f(); //g.debuggers.logger(bw_responsive.debuggers.clock.t_stop()); } g.debuggers.triggered = true; }, logger: function() { bw_responsive.debuggers.log_history = bw_responsive.debuggers .log_history || []; // store logs to an array for reference bw_responsive.debuggers.log_history.push(arguments); if (g.settings.debug_mode) { if (window.console) { console.log(Array.prototype.slice.call( arguments)); } else { alert(Array.prototype.slice.call(arguments)); } } }, clock: { now: (function() { var performance = window.performance || {}; performance.now = (function() { return performance.now || performance.webkitNow || performance.msNow || performance.oNow || performance.mozNow || function() { return new Date().getTime(); }; })(); return performance.now(); }), t_start: function() { bw_responsive.debuggers.clock.i = bw_responsive.debuggers .clock .now(); }, t_stop: function() { bw_responsive.debuggers.clock.o = bw_responsive.debuggers .clock .now(); return bw_responsive.debuggers.clock.o - bw_responsive.debuggers .clock.i; } }, jquery: function() { var j; typeof jQuery === 'undefined' ? j = { loaded: false, v: '' } : j = { loaded: true, v: $().jquery }; return j; }, in_iframe: function() { try { return window.self !== window.top; } catch (e) { return true; } } }; //Init to grab overides and construct / replace window.bw_responsive object g.init = function() { if (g.debuggers.in_iframe()) { $(document).ready(function() { $('body').removeClass('bw_mobile_loader bw-responsive-mobile-loader') }); return false; } window.bw_responsive_overrides = window.bw_responsive_overrides || {}; g.settings = $.extend(g.settings, bw_responsive_overrides); g.settings.debug_mode ? g.debuggers.debug(w) : w(); }; function w() { // Actions g.detectors = { device: { android: function() { return /Android/i.test(navigator.userAgent); }, black_berry: function() { return /BlackBerry/i.test(navigator.userAgent); }, ios: function() { return /iPhone|iPad|iPod/i.test(navigator.userAgent); }, opera: function() { return /Opera Mini/i.test(navigator.userAgent); }, windows: function() { return /IEMobile/i.test(navigator.userAgent); }, hand_held: function() { return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|android|ipad|playbook|silk|Opera Mini/i.test(navigator.userAgent); }, emulator: function() { return window.self !== window.top; } }, media_query_ok: function() { return (typeof document.addEventListener != 'undefined' && (typeof window.matchMedia != 'undefined' || typeof window .msMatchMedia != 'undefined')); }, screen_size: function() { var e = window, a = 'inner'; if (!('innerWidth' in window)) { a = 'client'; e = document.documentElement || document.body; } return { width: e[a + 'Width'], height: e[a + 'Height'] }; }, orientation_change: function(f) { function onOrientationChange() { var doit = doit || ''; clearTimeout(doit); doit = setTimeout(function() { f(); }, 100); } if(typeof(window.orientation) == "undefined") { bw_responsive.detectors.screen_resize(f); return; } //Check if orientation changed var previousOrientation = window.orientation; var checkOrientation = function() { if (window.orientation !== previousOrientation) { previousOrientation = window.orientation; onOrientationChange(); } }; // Listeners window.addEventListener('resize', checkOrientation, false); window.addEventListener('orientationchange', checkOrientation, false); // Android doesn't always fire orientationChange on 180 degree turns if (bw_responsive.detectors.device.android()) { setInterval(checkOrientation, 2000); } //trigger onOrientationChange(); }, screen_resize: function(f) { $(window).resize(function() { var doit = doit || ''; clearTimeout(doit); var doit = setTimeout(function() { f(); }, 10); }).trigger('resize'); }, base_theme: function() { if (typeof bw_responsive.settings.base_theme !== 'undefined') { return bw_responsive.settings.base_theme; } else { //determin hq base it was not provided return 'unknown'; } }, plugin_path: function() { var path = '', scripts = document.getElementsByTagName( 'script'); for (var i = 0; i < scripts.length; i++) { var n = scripts[i].src.indexOf( '/js/bw-responsive.'); if (n > -1) { path = scripts[i].src.slice(0, n) + '/'; } } if (path.length == 0) path = window.location.protocol + '//' + window.location .hostname + '/sites/all/modules/custom/bw_responsive/'; return path; }, hq_type: function() { if (typeof bw_responsive.settings.hq_type !== 'undefined') { return bw_responsive.settings.hq_type; } else { //determin hq base it was not provided return 'unknown'; } }, get_visible: function(parent) { var p = $(parent)[0], found = [p], checked = 0; if (p == undefined) return []; function get_children(o) { var all = o.childNodes, children = []; for (var i = 0; i < all.length; i++) { var obj = all[i]; if (obj.nodeType == 1 && obj.nodeName != 'SCRIPT' && obj.nodeName != 'NOSCRIPT' && obj.nodeName != 'STYLE' && (obj.className).indexOf( 'bw_mobile_') == - 1) { var comp = obj.currentStyle || getComputedStyle( obj, null); if (comp.display !== 'none') { children.push(obj); } } } checked++; found = found.concat(children); } while (checked < found.length && checked < 1000) { get_children(found[checked]); } return found; }, check_css: function(elements, rule, width) { var found = [], total = 0, checks = { position: function(o) { return o.position == 'fixed' || o.position == 'absolute'; }, width: function(o, w) { return parseInt(o.width) > w; }, box: function(o) { return (Math.abs(parseInt(o.marginLeft)) > 0 || Math.abs(parseInt(o.marginRight)) > 0 || parseInt(o.paddingLeft) > 0 || parseInt(o.paddingRight) > 0) && (o.backgroundColor == 'transparent' || o.backgroundColor == 'rgba(0, 0, 0, 0)') && o.backgroundImage == 'none'; } }; for (var i = 0; i < elements.length; i++) { var obj = elements[i]; var comp = obj.currentStyle || getComputedStyle(obj, null); if (checks[rule](comp, width)) { found[total++] = obj; } } return $(found).not('#bw-content-content'); }, double_check: function(obj, rule, range) { range = range || ''; var not_fixed = [], i = 0, checks = { position: function(o) { if (o.css('position') == 'fixed' || o .css( 'position') == 'absolute') not_fixed[i++] = o[0]; }, width: function(o, w) { if (o.width() > w) not_fixed[i++] = o[ 0]; }, box: function(o) { if (Math.abs(parseInt(o.css( 'margin-left'))) > 0 || Math.abs(parseInt(o.css( 'margin-right'))) > 0 || parseInt(o.css( 'padding-left')) > 0 || parseInt(o.css( 'padding-right')) > 0) not_fixed[i++] = o[0]; } }; obj.each(function() { checks[rule]($(this), range); }); if (not_fixed.length > 0) bw_responsive.debuggers .logger( 'possible ' + rule + ' issues detected. ' + range, not_fixed); } }; g.cookies = { set_cookie: function(c_name, value, exdays) { var exdate = new Date(); exdate.setDate(exdate.getDate() + exdays); var c_value = escape(value) + ((exdays == null) ? '' : '; expires=' + exdate.toUTCString()); c_value += '; path=/'; document.cookie = c_name + '=' + c_value; }, get_cookie: function(c_name) { var c_value = document.cookie; var c_start = c_value.indexOf(' ' + c_name + '='); if (c_start == -1) { c_start = c_value.indexOf(c_name + '='); } if (c_start == -1) { c_value = null; } else { c_start = c_value.indexOf('=', c_start) + 1; var c_end = c_value.indexOf(';', c_start); if (c_end == -1) { c_end = c_value.length; } c_value = unescape(c_value.substring( c_start, c_end)); } return c_value; } }; g.fixers = { add_style: function(css) { var rules = css.join(' '); $('head').append(''); }, toggle_responsive: function() { var f = 'on'; if (bw_responsive.cookies.view_mobile_site.length <= 2) f = 'off'; bw_responsive.cookies.set_cookie('bw_mobile_c', f, 365); window.location.reload(); return false; }, viewport_meta: function(m) { if (m) { if ($('meta[name="viewport"]') .length == 0) $('head').append( '' ); } else { $('meta[name="viewport"]').remove(); $('head').append( '' ); } if ($('meta[name="mobileoptimized"]').length == 0) $('head').append( '' ); }, configure_toggle_nav: function() { var i = 4; while(i>1) { $('.m_depth_'+(i--)).prev('.m_depth_'+i).prepend('
'); } $('.bw_toggle_nav').bind('click',function(){ var $toggle = $(this), level = $toggle.attr('data-level'); if($(this).hasClass('bw_toggle_nav_closed')) { $(this).parent().nextAll('li').each(function() { var $this = $(this); if ($this.hasClass('m_depth_'+(level-1)) || $this.hasClass('m_depth_'+(level-2)) || $this.hasClass('m_depth_'+(level-3)) || $this.hasClass('m_depth_'+(level-4))) { return false; } else if($this.hasClass('m_depth_'+level)) { $this.slideDown(); } }) } else { $(this).parent().nextAll('li').each(function() { var $this = $(this), $innerToggle = $this.find('.bw_toggle_nav'); if ($this.hasClass('m_depth_'+(level-1)) || $this.hasClass('m_depth_'+(level-2)) || $this.hasClass('m_depth_'+(level-3)) || $this.hasClass('m_depth_'+(level-4))) { return false; } else { if($innerToggle.length > 0) { $innerToggle.addClass('bw_toggle_nav_closed'); } $this.slideUp(); } }); } $toggle.toggleClass('bw_toggle_nav_closed'); }); }, break_points: function(w) { for (var i = 0; i < bw_responsive.settings.break_points .length; i++) { if (w <= bw_responsive.settings.break_points[ i] && w > bw_responsive.settings.break_points[i + 1] ) { if (bw_responsive.detectors.break_point != bw_responsive.settings.break_points[ i] ) { var c = '', c2 = '', r = ''; for (var i2 = 1; i2 < bw_responsive .settings .break_points .length; i2++) { if (i2 < i) { r += ' bw_max_' + i2; } else if (i2 > i) { c += ' bw_max_' + i2; c2 += ' bw_min_' + i2; } else { r += ' bw_max_' + i; } } bw_responsive.detectors.break_point = bw_responsive.settings.break_points[ i]; return { 'p': bw_responsive.detectors.break_point, 'r': r, 'a': c, 'b': c2 }; } break; } } return false; }, create_link_tree: function(parent) { var newList = '', checked, found, links, depths; function insertArrayAt(array, index, arrayToInsert) { Array.prototype.splice.apply(array, [ index, 0 ] .concat( arrayToInsert)); } function get_children(o) { var all = o.childNodes, children = []; for (var i = 0; i < all.length; i++) { var obj = all[i]; if (obj.nodeType == 1 && obj.nodeName != 'SCRIPT' && obj.nodeName != 'NOSCRIPT' && obj.nodeName != 'STYLE') { obj.nodeName == 'A' ? links.push( obj) : children.push(obj); } } checked++; insertArrayAt(found, checked, children); } $(parent).each(function() { var p = this; found = [p], links = [], depths = [], checked = 0; while (checked < found.length) { get_children(found[checked]); } for (var i = 0; i < links.length; i++) { var total = 0, a = links[i]; while (a) { a = a.parentNode; total++; } if (depths.indexOf(total) == -1) depths.push( total); var depth = depths.indexOf(total) + 1; var linkText = $.trim($(links[i]).text()), linkHREF = $(links[i]).attr('href') || ''; if (linkText.length == 0) try { linkText = $(this).find('img:first') .attr( 'alt'); } catch (err) {} try { if (linkHREF.length > 0 && linkHREF != '#' && linkText.length > 0 ) newList += '
  • ' + linkText + '
  • '; } catch (err) {} } }); $(parent).addClass('bw_mobile_hide'); return newList; }, strip_width_queries: function() { var sheets = document.styleSheets; for (var c = 0; c < 3; c++) { for (var i = 0; i < sheets.length; i++) { try { var rules = sheets[i].cssRules || sheets[i].rules; for (var i2 = 0; i2 < rules.length; i2++) { if (rules[i2].type == 4) { var rule = rules[i2].media.mediaText || rules[i2].media[0]; if (rule.indexOf( 'min-width') > 0) { if (rule.indexOf( 'max-width') > 0) { var matched = /max-width:[\s]*?([0-9]+)/g .exec( rule) || {}; if (matched[1] < 1050) sheets[i].deleteRule( i2); } else { var matched = /min-width:[\s]*?([0-9]+)/g .exec( rule) || {}; if (matched[1] > 1) rules[i2].media .mediaText = '(min-width: 1px)'; } } else if (rule.indexOf( 'max-width') > 0) { var matched = /max-width:[\s]*?([0-9]+)/g .exec( rule) || {}; if (matched[1] < 1050) sheets[i].deleteRule( i2); } } } } catch (err) { if (c == 0) bw_responsive.debuggers .logger('bring ' + sheets[i].href + ' in house if possible.') } } } $('body, #bw-wrap').css('min-width', 1050); } }; g.settings.hand_held = g.detectors.device.hand_held(); // Overite original init bw_settings can now be used g.init = function() { // check for indexOf support and create if non-existent (ie8 and below) if (!Array.prototype.indexOf) { Array.prototype.indexOf = function(elt) { var len = this.length >>> 0; var from = Number(arguments[1]) || 0; from = (from < 0) ? Math.ceil(from) : Math.floor( from); if (from < 0) from += len; for (; from < len; from++) { if (from in this && this[from] === elt) return from; } return -1; }; } function resizeUpdates() { var wWidth = bw_responsive.detectors.screen_size() .width, range = bw_responsive.fixers.break_points( wWidth); if (typeof range === 'object') { // Media query support for old browsers if (!mq_support) $html.addClass(range['r']) .removeClass( range['a']).removeClass( 'bw_min_1 bw_min_2 bw_min_3 bw_min_4' ).addClass( range['b']); if (range['p'] < Infinity && !custom_mode) { if (bw_responsive.detectors.break_points_hit .length < 3) { if ($(bw_responsive.detectors.visible[ 0]).parents( 'html').length == 0) { bw_responsive.detectors.visible = bw_responsive.detectors.get_visible( bw_responsive.settings.m_wrapper ); } var wSpace = range['p']; if (range['p'] == bw_responsive.settings .break_points[ 1]) wSpace = bw_responsive.settings .break_points[ 1] - 60; // Check for elements that are wider than body and fix var $c1 = bw_responsive.detectors.check_css( bw_responsive.detectors.visible, 'width', wSpace); $c1.addClass('m_auto_width_' + bw_responsive.settings .break_points.indexOf(range[ 'p']) ); if (!bw_responsive.detectors.checked_css) { // Check for elements that have absolute or fixed positions var $c2 = bw_responsive.detectors .check_css( bw_responsive.detectors .visible, 'position'); $c2.addClass('m_auto_position'); // Check for elements that problematic margins var $c3 = bw_responsive.detectors .check_css( bw_responsive.detectors .visible, 'box'); $c3.addClass('m_auto_box'); // Look for problematic columns $( 'div [class*="panel-3col"]' ).each(function() { var $cols = $(this) .children( '.panel-panel' ), total = $cols.length; $cols.each(function() { if ($( this ).height() == 10) { $( this ) .addClass( 'bw_mobile_hide' ); total--; } }); $cols.addClass( 'bw_m_col_' + total); }); if (bw_responsive.settings.debug_mode) { setTimeout(function() { bw_responsive.detectors .double_check( $c2, 'position' ); bw_responsive.detectors .double_check( $c3, 'box'); }, 500); } } if (bw_responsive.settings.debug_mode && bw_responsive.detectors.break_points_hit[ 0] == bw_responsive.settings.break_points[ 1]) { bw_responsive.detectors.double_check( $c1, 'width', range['p']); } if (range['r'].length > 0) { if (bw_responsive.detectors.break_points_hit .indexOf(range['p']) == -1) bw_responsive.detectors.break_points_hit .push(range['p']); } for (var i = 0; i < bw_responsive.detectors .break_points_hit .length - 1; i++) { if (bw_responsive.detectors.break_points_hit[ i] < bw_responsive.detectors .break_points_hit[ i + 1]) { bw_responsive.detectors.break_points_hit = []; break; } } bw_responsive.detectors.checked_css = true; } } } // Historical stock chart slider $('.qm-container .bw_tbl_slider').css('max-width',(wWidth-20)) // Rotating Content $('.view-bw-rotating-content ul, .view-id-bw_rotating_content ul').each(function() { var minHeight = 0, $ul = $(this), width = $ul.css('width', 'auto') .width(); if (width == 0) return; $(this).find('li').each(function() { var $this = $(this), $img = $(this).find( 'img'); $this.css({ 'min-width': width, 'max-width': width, 'height': 'auto', 'min-height': 0 }); $img.css({ 'width': 'auto', 'max-width': '100%', 'height': 'auto' }); if ($this.is(':visible')) { var height = $this.height(); } else { var height = $this.show() .height(); $this.hide(); } if (height > minHeight) minHeight = height; }); $ul.css({'min-height':minHeight,'height':minHeight}); $ul.find('li').css({'min-height':minHeight,'height':minHeight}); }); // Search form placement if (needsTopMenu) { if (wWidth <= bw_responsive.settings.break_points[ 1]) { if (!bw_responsive.detectors.reset_elements) { if ($('#bw_search_space_holder').length == 0 && $BWSearch.length > 0) $BWSearch.after( '
    ' ); $('#m_bw_search').html($BWSearch); if ($BWSidebarLeft.length > 0) { if ($( '#bw_sidbar_l_space_holder' ) .length == 0) $BWSidebarLeft.after( '
    ' ); $('#bw-content').append( $BWSidebarLeft); } bw_responsive.detectors.reset_elements = true; bw_responsive.detectors.ran_callback = false; if (!bw_responsive.detectors.ran_callback && typeof(bw_responsive_menu_callback) === "function") { bw_responsive_menu_callback(); bw_responsive.detectors.ran_callback = true; } } } else { if (bw_responsive.detectors.reset_elements) { if ($BWSearch.length > 0) $( '#bw_search_space_holder').before( $BWSearch); if ($BWSidebarLeft.length > 0) { $('#bw_sidbar_l_space_holder').before( $BWSidebarLeft); } bw_responsive.detectors.reset_elements = false; } } } } var forceDesktop = false; if (bw_responsive.settings.force_desktop_mode == 'always' || (bw_responsive.settings.force_desktop_mode == 'IPE' && $('#panels-ipe-control-container').length > 0 )) forceDesktop = true; if (!forceDesktop) { bw_responsive.cookies.view_mobile_site = bw_responsive.cookies.get_cookie( 'bw_mobile_c') || ''; if (bw_responsive.cookies.view_mobile_site.length < 3) { /*** VARIABLES *******************************/ var $clientMenu, $clientSearch, $hideThese, $ignoreList, $BWMenu, $BWSearch, $clientLogo, $BWSidebarLeft, $head, $MWrapper, $html; $MWrapper = $(bw_responsive.settings.m_wrapper), bw_responsive.settings.m_ignore.length > 0 ? $ignoreList = $(bw_responsive.settings.ignore_list + ',' + bw_responsive.settings.m_ignore) : $ignoreList = $( bw_responsive.settings.ignore_list), bw_responsive.settings.client_menu.length > 0 ? $clientMenu = $(bw_responsive.settings.client_menu) : $clientMenu = '', bw_responsive.settings.client_search.length > 0 ? $clientSearch = $(bw_responsive.settings.client_search) : $clientSearch = '', bw_responsive.settings.hide_these.length > 0 ? $hideThese = $(bw_responsive.settings.hide_these) : $hideThese = '', bw_responsive.settings.bw_menu.length > 0 ? $BWMenu = $( bw_responsive.settings.bw_menu) : $BWMenu = '', bw_responsive.settings.bw_search.length > 0 ? $BWSearch = $( bw_responsive.settings.bw_search) : $BWSearch = ''; if (bw_responsive.settings.client_logo.length > 0) { /\.(?:jpe?g|png|gif)$/.test(bw_responsive.settings .client_logo) ? $clientLogo = $('') : $clientLogo = $( bw_responsive.settings.client_logo); } else { $clientLogo = ''; } $BWSidebarLeft = $('#bw-sidebar-left'); $head = $('head'); $html = $('html'); var clientURL = bw_responsive.settings.client_url; var keyImageT = bw_responsive.settings.key_image_t; var keyImageM = bw_responsive.settings.key_image_m; var bgTop = bw_responsive.settings.bg_top; var bgMenu = bw_responsive.settings.bg_menu; var linkDefault = bw_responsive.settings.link_default; var linkActive = bw_responsive.settings.link_active; var custom_mode = bw_responsive.settings.custom_mode; var toggle_nav = bw_responsive.settings.toggle_nav; var mq_support = bw_responsive.detectors.media_query_ok(); var bClass = 'bw_mobile_wrapper'; // Break point context bw_responsive.settings.break_points.unshift( Infinity); bw_responsive.settings.break_points.push(0); /*** /VARIABLES *******************************/ /*** DEVICE STYLE TRIGGER ********************/ bw_responsive.fixers.viewport_meta(true); if (!custom_mode) bClass += ' bw_mobile_standard'; $MWrapper.addClass(bClass); $html.addClass('bw_mobile_on'); /*** END DEVICE STYLE TRIGGER *****************/ /*** LAYOUT ADJUSTMENTS **********************/ // Fallback for no media query support if (!mq_support) $('head').append( '' ); // Hide under 960px if ($hideThese.length > 0) { $hideThese.each(function() { $(this).addClass( 'bw_mobile_hide'); }); } if ($clientSearch.length > 0) $clientSearch.addClass( 'bw_mobile_hide'); // Mobile Menu Preperation if ($BWMenu.length > 0 || $clientMenu.length > 0 || $clientLogo.length > 0) var needsTopMenu = true; if (needsTopMenu) { var mobileTop = '
    '; $MWrapper.prepend(mobileTop).addClass('bw_mobile_standard_menu'); var $wrapper = $('#bw_mobile_menu_wrapper'); // Set up primary navigation menu if (bw_responsive.settings.bw_menu.length > 0) { $wrapper.prepend( '
    ' ); var links = bw_responsive.fixers.create_link_tree( bw_responsive.settings.bw_menu); $wrapper.find('.inner_m_wrapper').append( '' ); } // Set up client menu if (bw_responsive.settings.client_menu.length > 0) { $wrapper.prepend( '
    ' ); var links = bw_responsive.fixers.create_link_tree( bw_responsive.settings.client_menu ); $wrapper.find('.inner_m_wrapper').append( ''); } if ($clientLogo.length > 0) { var img; $clientLogo.is('img') ? img = $clientLogo .attr( 'src') : img = $clientLogo.find( 'img').attr( 'src'); img = img || ''; if (img.length == 0) { // must be background image var bg = $clientLogo.css( 'background-image'); img = bg.replace('url(', '').replace( ')', '').replace( '"', '').replace("'", ''); } $clientLogo.addClass('bw_mobile_hide'); $('#bw_m_logo').html(''); } } bw_responsive.settings.hand_held ? $( '#panels-ipe-control-container').remove() : $('#m_view_full_site').remove(); $( '.bw_mobile_wrapper .pane-pr-body table, .bw_mobile_wrapper .pane-node-body table, .node-type-press-release #bw-content-content table, .qm-container .qm_history_historyContent, .page-corporate-governance .bw-inner .pane-custom table' ).each(function() { var $tbl = $(this); if (!$tbl.parent().hasClass( 'bw-zoom-table')) $tbl.wrap( '
    ' ).wrap(''); }); /*** END LAYOUT ADJUSTMENTS *******************/ /*** STYLE OVERIDES **************************/ var rules = [ '#bw_mobile_menu_wrapper, li#m_bw_search, li#m_view_full_site {background-color:' + bgTop + ' !important}', '.inner_m_wrapper ul, .inner_m_wrapper li {background-color:' + bgMenu + ' !important}', '.inner_m_wrapper a {color:' + linkDefault + ' !important}', '.inner_m_wrapper a:hover, .inner_m_wrapper a:active, .inner_m_wrapper a:focus {color:' + linkActive + ' !important}' ]; if (keyImageT.length > 0 || keyImageM.length > 0) { var image = ''; if(keyImageM.length > 0) { if (g.settings.key_image_crop != 'crop') { image = ''; } else { if (mq_support) { rules.push( '@media only screen and (max-width : ' + bw_responsive.settings.break_points[ 3] + 'px) {#mobile_key_image {background-image:url("' + keyImageM + '"); min-height:120px}}'); } else { rules.push( '.bw_max_3 #mobile_key_image {background-image:url("' + keyImageM + '"); min-height:120px}'); } } } if(keyImageT.length > 0) { if (g.settings.key_image_crop != 'crop') { image += ''; } else { if (mq_support) { rules.push( '@media only screen and (max-width : ' + bw_responsive.settings.break_points[ 1] + 'px) {#mobile_key_image {background-image:url("' + keyImageT + '"); min-height:220px}}'); } else { rules.push( '.bw_max_1 #mobile_key_image {background-image:url("' + keyImageT + '"); min-height:220px}'); } } } needsTopMenu ? $('#bw_mobile_menu_wrapper') .after( '
    ' + image + '
    ') : $MWrapper.prepend( '
    ' + image + '
    '); } bw_responsive.fixers.add_style(rules); /*** EMD STYLE OVERIDES **********************/ /*** BIND USER ACTIONS ***********************/ if(needsTopMenu) { $('.bw_mobile_gear').bind('click', function() { var pointer = $(this).attr( 'data-menu'); $('.bw_mobile_gear').removeClass( 'active'); if (!$('#' + pointer).is(':visible')) $( this).addClass( 'active'); $('.inner_m_wrapper ul').each( function() { $(this).attr('id') == pointer ? $( this).slideToggle() : $(this).hide(); }); }); if(toggle_nav) bw_responsive.fixers.configure_toggle_nav(); } /*** END BIND USER ACTIONS *******************/ /*** WINDOW RESIZE UPDATES *******************/ // Ignore from css tests if ($ignoreList.length > 0) { $ignoreList.each(function() { $(this).addClass( 'bw_mobile_ignore'); }); } bw_responsive.detectors.reset_elements = false; bw_responsive.detectors.break_point = -1; bw_responsive.detectors.checked_css = false; bw_responsive.detectors.break_points_hit = []; bw_responsive.detectors.visible = bw_responsive .detectors .get_visible( bw_responsive.settings.m_wrapper); bw_responsive.settings.hand_held ? bw_responsive.detectors .orientation_change(resizeUpdates) : bw_responsive.detectors .screen_resize(resizeUpdates); /*** END WINDOW RESIZE UPDATES ***************/ /*** VERIFICATION *******************/ setTimeout(function() { if ($('meta[name="viewport"]').attr( 'content') == 'maximum-scale=10') { $('meta[name="viewport"]').attr( 'content', 'width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0' ); } }, 200); /*** END VERIFICATION ***************/ } else { /*** BACK TO MOBILE **************************/ bw_responsive.fixers.viewport_meta(false); $('body').prepend( '' ); /*** END BACK TO MOBILE **********************/ } } else { $('body').addClass('bw_non_responsive'); bw_responsive.fixers.strip_width_queries(); } $('body').removeClass('bw_mobile_loader bw-responsive-mobile-loader'); if (bw_responsive.settings.debug_mode) g.debuggers.logger( 'BW Responsive (Debug Mode) complete:', bw_responsive.debuggers .clock.t_stop()); }; window.bw_responsive = g; $(document).ready(function() { bw_responsive.init(); }); } /* Windows Nokia */ if ("-ms-user-select" in document.documentElement.style && ( navigator.userAgent.indexOf('IEMobile') > -1 || (navigator.userAgent.indexOf('MSIE 10.0') > -1 && navigator.userAgent.indexOf('Touch') > -1) )) { var msViewportStyle = document.createElement("style"); msViewportStyle.appendChild( document.createTextNode("@-ms-viewport{width:auto!important}") ); document.getElementsByTagName("head")[0].appendChild(msViewportStyle); } window.bw_responsive = g; })();