{"version":3,"sources":["source/js/global.js","source/bower_components/squiz-module-accordion/js/global.js","source/bower_components/squiz-module-matrix-form/js/global.js","source/modules/content/js/global.js","source/modules/global-elements/js/global.js","source/modules/hero/js/global.js","source/modules/layout-header/js/global.js","source/modules/nav-main/js/global.js","source/modules/nav-section/js/global.js","source/modules/news/js/global.js","source/modules/search-page/js/global.js","source/modules/tables/js/global.js","source/modules/tiles/js/global.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AClCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnLA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACnBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACxRA;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACpCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACTA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"global.js","sourcesContent":["/*global jQuery*/\n/**\n * {{name}}\n * Global JS\n *\n * version: {{version}}\n * file: {{file}}\n * author: Squiz Australia\n * change log:\n * {{date}} - First revision\n */\n\n/*\n * Table of Contents\n *\n * - Global\n * - Modules\n{{toc}}\n */\n'use strict';\n/*\n--------------------\nGlobal\n--------------------\n*/\n// Declare JS Enabled.\n$('body').removeClass('no-js').addClass('js-enabled');\n\n\n/*\n--------------------\nModules\n--------------------\n*/\n","(function($){\n\n var $tabs = $('.tabs'),\n $tabsList = $('.tabs__tab-list'),\n $slick,\n slideCount;\n\n /*\n * Tabs to Accordion\n */\n var tab_count = 0;\n $('.tabs').each(function(){\n var wrapper = $('
');\n\n // Increment count to create unique id's\n tab_count+=1;\n\n // Create accordion content\n $(this).find('.tabs__tab-list .tabs__link').each(function(){\n var title = $(this).text(),\n id = $(this).attr('href')+tab_count,\n content = $($(this).attr('href')).html();\n\n wrapper.append('

'+title+'

'+content+'
')\n });\n\n // Place accordion after tab\n $(this).after(wrapper);\n });\n\n /*\n * Accordion\n */\n $('.accordion').UberAccordion({\n buttonClass: 'accordion__link',\n toggle: true,\n multiple: true,\n expandOnFocus: false,\n preventDefaultButton: true,\n hashChange: true\n });\n\n // Second example is a tab-like setup\n $('.tabs').UberAccordion({\n buttonClass: 'tabs__link',\n\n autoExpand: function() {\n return window.location.hash || '#tabs__target-1';\n },\n\n toggle: false,\n multiple: false,\n preventDefaultButton: true\n });\n\n\n /*\n * Tabs\n */\n\n // Check is last tab list element visible\n var checkNextArrow = function(slick) {\n var showNextArrow,\n slickList = $(slick.$list),\n slickListWidth = slickList.width(),\n activeSlide = slickList.find('.slick-active'),\n tempWidth = activeSlide.outerWidth(true,true);\n\n activeSlide.nextAll().each(function(){\n tempWidth += $(this).outerWidth(true, true);\n });\n\n if (tempWidth > slickListWidth) {\n showNextArrow = true;\n } else {\n showNextArrow = false;\n }\n\n return showNextArrow;\n }\n\n if ($tabs.length) {\n\n $tabsList\n .on('afterChange', function (event, slick, currentSlide) {\n\n // Hide $prevArrow when no LHS slides to show\n if (currentSlide === 0) {\n slick.$prevArrow.hide();\n } else {\n slick.$prevArrow.show();\n }\n\n // Hide $nextArrow when last slide is visible\n if (!checkNextArrow(slick)) {\n slick.$nextArrow.hide();\n } else {\n slick.$nextArrow.show();\n }\n });\n\n if ($tabsList.length) {\n\n $tabsList.slick({\n accessibility: false,\n slidesToScroll: 1,\n dots: false,\n focusOnSelect: false,\n centerMode: false,\n infinite: false,\n touchMove: true,\n variableWidth: true\n });\n\n $tabsList.each(function () {\n $slick = $(this).slick('getSlick');\n slideCount = $slick.slideCount;\n\n // Hide prev arrow on init\n $slick.$prevArrow.hide();\n\n // Hide $nextArrow when last slide is visible\n if (!checkNextArrow($slick)) {\n $slick.$nextArrow.hide();\n } else {\n $slick.$nextArrow.show();\n }\n });\n }\n }\n\n}(jQuery));\n","/*global jQuery*/\n(function ($) {\n 'use strict';\n\n var $formInput = $('form .sq-form-question input'),\n $emailInput = $('form .sq-form-question-email-address input'),\n $formInputWrapper = $('form .sq-form-question'),\n focusClass = 'sq-form-question--focus',\n customFileInputs;\n\n // Check for Matrix's required fields\n if ($formInputWrapper.length) {\n $formInputWrapper.each(function () {\n if ($(this).find('.sq-form-required-field').length) {\n $(this).find('input').addClass('sq-form-field--required');\n }\n });\n }\n\n // Check for email inputs\n if ($emailInput.length) {\n $emailInput.each(function () {\n $(this).addClass('sq-form-field--email');\n });\n }\n\n // // Input's label show/hide\n // $formInput\n // .on('focus', function () {\n // $(this).parents('.sq-form-question').addClass(focusClass);\n // })\n // .on('focusout', function () {\n // if (!$(this).val().length) {\n // $(this).parents('.sq-form-question').removeClass(focusClass);\n // }\n // });\n\n // jQuery class based validation rule\n $.validator.addClassRules('sq-form-field--required', {\n required: true\n });\n\n // Create custom error message for class based validation rule\n $.validator.addMethod('delwpEmail', $.validator.methods.email,\n $.validator.format('Oops, that email address in invalid'));\n\n $.validator.addClassRules('sq-form-field--email', {\n delwpEmail: true\n });\n\n // Validation\n $('.content form').each(function () {\n $(this).validate({\n errorClass: 'sq-form-error',\n errorElement: 'p',\n errorPlacement: function (error, element) {\n error.insertAfter(element.parents('.sq-form-question-answer'));\n },\n highlight: function (element, errorClass) {\n $(element).parents('.sq-form-question').addClass('sq-form-question-error');\n },\n unhighlight: function (element, errorClass) {\n $(element).parents('.sq-form-question').removeClass('sq-form-question-error');\n }\n });\n });\n\n $('footer form').each(function () {\n $(this).validate({\n errorClass: 'footer-subscribe__email--error',\n errorElement: 'p',\n errorPlacement: function (error, element) {\n error.insertAfter(element.parents('.footer-subscribe__control-group'));\n },\n highlight: function (element, errorClass) {\n $(element).parents('.footer-subscribe__control-group').addClass('footer-subscribe__error');\n },\n unhighlight: function (element, errorClass) {\n $(element).parents('.footer-subscribe__control-group').removeClass('footer-subscribe__error');\n }\n });\n });\n\n /* ========================================================\n * Custom file input styles\n * ========================================================\n *\n * Applies a custom style to file input elements by hiding\n * the native element and injecting a styled façade element\n * above the original file input.\n * ======================================================== */\n customFileInputs = (function () {\n\n return {\n\n init: function () {\n\n var fileInputs,\n placeholderText,\n facade;\n\n // Original file input elements\n fileInputs = $('input[type=\"file\"]');\n\n // Placeholder text that appears when empty input is initially loaded\n placeholderText = 'Attachment upload';\n\n // Façade overlay element that will have custom styles applied\n facade = '' + placeholderText + '';\n\n fileInputs.each(function (i, el) {\n var fileInputID = el.id,\n facadeOverlay;\n\n // Generate empty façade element with custom styles applied\n facadeOverlay = $(facade).insertAfter(el);\n\n // Has ID - add aria markup\n if (typeof fileInputID !== 'undefined' && fileInputID) {\n facadeOverlay.attr('aria-controls', fileInputID);\n }\n\n // Façade element activates corresponding file input\n facadeOverlay.on('touchstart click', function (ev) {\n $(ev.currentTarget).prev('input[type=\"file\"]').trigger('click');\n });\n\n // When value of selected file changes, print the value to the façade element\n $(el).on('change', function (ev) {\n var fileInput = $(ev.currentTarget),\n filePath = fileInput.val(),\n facade = fileInput.next('.sq-form-question-facade');\n\n // File path is not empty\n if (filePath.trim()) {\n facade.removeClass('is-empty');\n facade.text(filePath);\n } else {\n facade.addClass('is-empty');\n facade.text(placeholderText);\n }\n\n // Apply title (to display full path and file name as tooltip)\n facade.attr('title', fileInput.val());\n\n // Grab focus to apply appropriate styles\n fileInput.focus();\n\n });\n\n });\n }\n\n };\n\n }());\n // Custom file input styling\n customFileInputs.init();\n\n // selectric\n $('select.sq-form-field').selectric({\n disableOnMobile: false,\n nativeOnMobile: false\n });\n\n // Could not find solution for Safari browser that\n // throws Error: Syntax error, unrecognized expression: form input[name*=\"_submit\" error\n\n // add arrow for submit button\n // var arrowRightSpan = '',\n // arrowLeftSpan = '',\n // submitButtonSelector = 'form input[name*=\"_submit\"',\n // submitSaveButtonSelector = 'form input[name*=_save_and_exit]',\n // submitPrevButtonSelector = 'form input[name*=_previous_page]';\n // $(arrowRightSpan).insertAfter(submitButtonSelector);\n // $(arrowRightSpan).insertAfter(submitSaveButtonSelector);\n // $(arrowLeftSpan).insertBefore(submitPrevButtonSelector);\n\n}(jQuery));\n","if($('iframe.video__hide')) {\n // Inject YouTube API script\n var tag = document.createElement('script');\n tag.src = \"//www.youtube.com/player_api\";\n var firstScriptTag = document.getElementsByTagName('script')[0];\n firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);\n}\n\nvar players = [];\n\nfunction onYouTubePlayerAPIReady() {\n $('iframe.video__hide').each(function(){\n players.push(new YT.Player($(this).attr('id'), {\n events: {\n 'onReady': onPlayerReady\n }\n }));\n });\n}\n\nfunction onPlayerReady() {\n $('.video__play').each(function(index){\n $(this).on('click', function() {\n players[index].playVideo();\n });\n });\n}\n\n(function($){\n 'use strict';\n\n function videoPlayerHandler(e) {\n e.preventDefault();\n \n $(this).prev().addClass('video__on');\n $(this).siblings('iframe.video__hide').removeClass('video__hide');\n $(this).remove();\n }\n\n // Video play desktop\n $('.video__play').on('click', videoPlayerHandler);\n\n\n\n // Tables\n $('.content table').wrap('
');\n\n \n $('.sq-form-question-text').find('textarea').on('keyup', function(){\n $('.sq-form-text-charcount').text($(this).val().length);\n\n if ($(this).val().length < 351){\n if( $(this).parents('.sq-form-question-text').hasClass('sq-form-char-error')) {\n $(this).parents('.sq-form-question-text').removeClass('sq-form-char-error');\n $('.sq-form-text-charlimit--msg').remove();\n $('input[type=\"submit\"]').prop('disabled', false);\n }\n } else {\n $(this).parents('.sq-form-question-text').addClass('sq-form-char-error');\n\n if($('.sq-form-text-charlimit--msg').length < 1) {\n $('Too many characters').appendTo($('.sq-form-text-charlimit'));\n }\n \n $('input[type=\"submit\"]').prop('disabled', true);\n }\n });\n}(jQuery));","(function($){\n 'use strict';\n // ignite selectric\n $(function() {\n $('select').selectric({\n onInit: function() {\n //Add a hidden label around the selectric input for accessibility.\n $(\".selectric-input\").wrap(\"\");\n },\n disableOnMobile: false,\n nativeOnMobile: false\n });\n });\n\n // add arrow for button\n var arrowSpanBtn = '',\n ButtonSelector = '.content .btn';\n $(arrowSpanBtn).insertAfter(ButtonSelector);\n\n}(jQuery));\n","/*! Backstretch - v2.0.4 - 2013-06-19\n* http://srobbin.com/jquery-plugins/backstretch/\n* Copyright (c) 2013 Scott Robbin; Licensed MIT */\n(function(a,d,p){a.fn.backstretch=function(c,b){(c===p||0===c.length)&&a.error(\"No images were supplied for Backstretch\");0===a(d).scrollTop()&&d.scrollTo(0,0);return this.each(function(){var d=a(this),g=d.data(\"backstretch\");if(g){if(\"string\"==typeof c&&\"function\"==typeof g[c]){g[c](b);return}b=a.extend(g.options,b);g.destroy(!0)}g=new q(this,c,b);d.data(\"backstretch\",g)})};a.backstretch=function(c,b){return a(\"body\").backstretch(c,b).data(\"backstretch\")};a.expr[\":\"].backstretch=function(c){return a(c).data(\"backstretch\")!==p};a.fn.backstretch.defaults={centeredX:!0,centeredY:!0,duration:5E3,fade:0};var r={left:0,top:0,overflow:\"hidden\",margin:0,padding:0,height:\"100%\",width:\"100%\",zIndex:-999999},s={position:\"absolute\",display:\"none\",margin:0,padding:0,border:\"none\",width:\"auto\",height:\"auto\",maxHeight:\"none\",maxWidth:\"none\",zIndex:-999999},q=function(c,b,e){this.options=a.extend({},a.fn.backstretch.defaults,e||{});this.images=a.isArray(b)?b:[b];a.each(this.images,function(){a(\"\")[0].src=this});this.isBody=c===document.body;this.$container=a(c);this.$root=this.isBody?l?a(d):a(document):this.$container;c=this.$container.children(\".backstretch\").first();this.$wrap=c.length?c:a('
').css(r).appendTo(this.$container);this.isBody||(c=this.$container.css(\"position\"),b=this.$container.css(\"zIndex\"),this.$container.css({position:\"static\"===c?\"relative\":c,zIndex:\"auto\"===b?0:b,background:\"none\"}),this.$wrap.css({zIndex:-999998}));this.$wrap.css({position:this.isBody&&l?\"fixed\":\"absolute\"});this.index=0;this.show(this.index);a(d).on(\"resize.backstretch\",a.proxy(this.resize,this)).on(\"orientationchange.backstretch\",a.proxy(function(){this.isBody&&0===d.pageYOffset&&(d.scrollTo(0,1),this.resize())},this))};q.prototype={resize:function(){try{var a={left:0,top:0},b=this.isBody?this.$root.width():this.$root.innerWidth(),e=b,g=this.isBody?d.innerHeight?d.innerHeight:this.$root.height():this.$root.innerHeight(),j=e/this.$img.data(\"ratio\"),f;j>=g?(f=(j-g)/2,this.options.centeredY&&(a.top=\"-\"+f+\"px\")):(j=g,e=j*this.$img.data(\"ratio\"),f=(e-b)/2,this.options.centeredX&&(a.left=\"-\"+f+\"px\"));this.$wrap.css({width:b,height:g}).find(\"img:not(.deleteable)\").css({width:e,height:j}).css(a)}catch(h){}return this},show:function(c){if(!(Math.abs(c)>this.images.length-1)){var b=this,e=b.$wrap.find(\"img\").addClass(\"deleteable\"),d={relatedTarget:b.$container[0]};b.$container.trigger(a.Event(\"backstretch.before\",d),[b,c]);this.index=c;clearInterval(b.interval);b.$img=a(\"\").css(s).bind(\"load\",function(f){var h=this.width||a(f.target).width();f=this.height||a(f.target).height();a(this).data(\"ratio\",h/f);a(this).fadeIn(b.options.speed||b.options.fade,function(){e.remove();b.paused||b.cycle();a([\"after\",\"show\"]).each(function(){b.$container.trigger(a.Event(\"backstretch.\"+this,d),[b,c])})});b.resize()}).appendTo(b.$wrap);b.$img.attr(\"src\",b.images[c]);return b}},next:function(){return this.show(this.indexe||d.operamini&&\"[object OperaMini]\"==={}.toString.call(d.operamini)||n&&7458>t||-1e||h&&6>h||\"palmGetResource\"in d&&e&&534>e||-1=k)})(jQuery,window);\n\n(function($){\n\t\n if ($('.hero__bg').length) {\n \tvar bgArray = $('.hero__bg').data('background').split(','),\n bgImage = bgArray[Math.floor(Math.random()*bgArray.length)];\n \n if (bgImage.length) {\n //$('.hero--home').backstretch(bgImage);\n $('.hero__bg').css('background-image', 'url(' + bgImage + ')');\n }\n }\n\n}(jQuery));\n\n","(function($){\n 'use strict';\n\n svg4everybody();\n\n // Stop user to search for empty inputs in the header\n // on desktop\n $('#header-search__form').submit(function() {\n if ($.trim($(\"#header-search__input\").val()) === \"\") {\n return false;\n }\n });\n // on mobile\n $('#nav-main-mobile__search').submit(function() {\n if ($.trim($(\"#nav-main-mobile__search-input\").val()) === \"\") {\n return false;\n }\n });\n\n}(jQuery));","/*global Slideout*/\n(function ($) {\n 'use strict';\n\n var\n navMainToggle = document.querySelector('.js-toggle-nav-main'),\n navMainChildrenToggle = document.querySelectorAll('.js-toggle-nav-main-mobile-children, .nav-main-mobile__item--level-01 > .js-nav-main-mobile-link-wrapper'),\n navMainLink = document.querySelectorAll('.js-nav-main-link-wrapper'),\n heroHome = document.querySelector('.hero--home'),\n searchButton = document.querySelector('.js-header-search__toggle-button'),\n navList = document.querySelector('.js-nav-main__list'),\n searchForm = document.querySelector('#header-search__form'),\n searchInput = document.querySelector('#header-search__input'),\n navOverlay = document.querySelector('.js-nav-main__overlay'),\n mainContainer = document.getElementById('main'),\n currentWidth = window.innerWidth,\n slideOptions = {\n 'panel': document.getElementById('page-wrapper'),\n 'menu': document.getElementById('navigation'),\n 'padding': 245,\n 'side': 'right',\n 'tolerance': 200,\n 'touch': false\n },\n slideout,\n navMainFlag = false;\n\n /*\n * Toggles the state of a toggle button.\n */\n function toggleButton(button) {\n if (button.getAttribute('aria-pressed') === 'true') {\n button.setAttribute('aria-pressed', 'false');\n }\n else {\n button.setAttribute('aria-pressed', 'true');\n }\n }\n\n /*\n * Toggles the state of the child list.\n */\n function toggleNavMainChildren(button) {\n\n var isPressed = button.getAttribute('aria-pressed') === 'true' ? true : false,\n childList = button.parentNode.querySelector('.js-nav-main-mobile-children'),\n parentItem = button.parentNode,\n actualButton = button.parentNode.querySelector('.js-toggle-nav-main-mobile-children'),\n linkWrapper = button.parentNode.querySelector('.js-nav-main-mobile-link-wrapper');\n //close expand menu\n [].forEach.call(navMainChildrenToggle, function(navMainChildren){\n if( navMainChildren !== button && !button.parentNode.classList.contains('nav-main-mobile__item--level-02')){\n if (navMainChildren.getAttribute('aria-pressed') === 'true') {\n navMainChildren.setAttribute('aria-pressed', 'false');\n }\n if(navMainChildren.classList.contains('icon-arrow-down')){\n navMainChildren.classList.remove('icon-arrow-down');\n navMainChildren.classList.add('icon-arrow-right');\n navMainChildren.parentNode.classList.remove('nav-main-mobile__item--expanded');\n navMainChildren.parentNode.querySelector('.js-nav-main-mobile-children')\n .classList.remove('nav-main-mobile__dropdown--expanded');\n navMainChildren.parentNode.querySelector('.js-nav-main-mobile-children').style.height = '';\n }\n }\n });\n\n if (isPressed) {\n // Display collapsed arrow\n actualButton.classList.remove('icon-arrow-down');\n actualButton.classList.add('icon-arrow-right');\n // Hide child list\n childList.classList.remove('nav-main-mobile__dropdown--expanded');\n parentItem.classList.remove('nav-main-mobile__item--expanded');\n childList.style.height = '';\n\n } else {\n // Display expanded arrow\n actualButton.classList.remove('icon-arrow-right');\n actualButton.classList.add('icon-arrow-down');\n // Show child list\n childList.classList.add('nav-main-mobile__dropdown--expanded');\n parentItem.classList.add('nav-main-mobile__item--expanded');\n // childList.style.height = childList.querySelector('.nav-main-mobile__list').offsetHeight + 'px';\n childList.style.height = 'auto';\n }\n // Toggle button state\n toggleButton(linkWrapper);\n toggleButton(actualButton);\n }\n\n function searchToggleButton(el, listNav) {\n if(el.getAttribute('aria-pressed') === 'true') {\n el.style.display = 'none';\n listNav.style.setProperty('visibility', 'hidden');\n document.querySelector('.header').style.backgroundColor = 'rgba(0, 0, 0, 0.5)';\n searchForm.style.display = 'block';\n // [].forEach.call(document.querySelectorAll('.nav-main__dropdown'), function(navChildren){\n // navChildren.style.visibility = 'hidden';\n // });\n\n } else {\n listNav.style.visibility = '';\n document.querySelector('.header').style.backgroundColor = '';\n searchForm.style.display = '';\n // [].forEach.call(document.querySelectorAll('.nav-main__dropdown'), function(navChildren){\n // navChildren.style.visibility = 'visible';\n // });\n }\n }\n\n function handlerMenu(el, action) {\n [].forEach.call(document.querySelectorAll('.js-nav-main-children'), function(mainChildren){\n mainChildren.style.height = '';\n mainChildren.style.opacity = '';\n mainChildren.style.visibility = '';\n });\n\n if (action === 'remove' && navMainFlag) {\n navOverlay.style.height = '';\n // if (heroHome) {\n // heroHome.style.paddingTop = '';\n // } else {\n // document.querySelector('.main-wrapper').style.paddingTop = '';\n // }\n\n [].forEach.call(navMainLink, function(link) {\n link.classList.remove('js-nav-main-link-wrapper--active');\n });\n\n navMainFlag = false;\n } else if (action === 'add' && !navMainFlag) {\n var currentHeight = el.querySelector('.nav-main__list--level-02').offsetHeight;\n\n [].forEach.call(navMainLink, function(link) {\n link.classList.remove('js-nav-main-link-wrapper--active');\n });\n el.classList.add('js-nav-main-link-wrapper--active');\n\n el.querySelector('.js-nav-main-children').style.height = currentHeight + 'px';\n el.querySelector('.js-nav-main-children').style.opacity = '1';\n el.querySelector('.js-nav-main-children').style.visibility = 'visible';\n\n navOverlay.style.setProperty('height', currentHeight + 'px');\n\n // if (heroHome){\n // heroHome.style.paddingTop = currentHeight + 185 + 'px';\n // } else {\n // document.querySelector('.main-wrapper').style.paddingTop = currentHeight + 'px';\n // }\n\n navMainFlag = true;\n }\n }\n\n function handlerSearch(el) {\n if(document.querySelector('.js-header-search__toggle-button')) {\n if(el.classList.contains('js-header-search__toggle-button')) {\n toggleButton(searchButton);\n searchToggleButton(searchButton, navList);\n searchInput.focus();\n } else if(el.getAttribute('id') !== 'megamenu' && !el.classList.contains('header__wrapper') && !el.classList.contains('header') && el.getAttribute('id') !== 'header-search__input') {\n searchButton.setAttribute('aria-pressed', 'false');\n searchToggleButton(searchButton, navList);\n searchButton.style.display = '';\n }\n }\n }\n\n function expandedMobileMenu() {\n [].forEach.call(document.querySelectorAll('.js-nav-main-mobile-children'), function(mobilChild){\n if(mobilChild.querySelector('.nav-main-mobile__item--current')){\n mobilChild.classList.add('nav-main-mobile__dropdown--expanded');\n mobilChild.parentNode.classList.add('nav-main-mobile__item--expanded');\n toggleNavMainChildren(mobilChild.parentNode.querySelector('.js-toggle-nav-main-mobile-children'));\n\n }\n });\n }\n\n navMainToggle.addEventListener('click', function() {\n toggleButton(this);\n\n if(this.getAttribute('aria-pressed') === 'true') {\n this.children[0].classList.remove('icon-header-menu');\n this.children[0].classList.add('icon-close');\n } else {\n this.children[0].classList.remove('icon-close');\n this.children[0].classList.add('icon-header-menu');\n }\n\n slideout.toggle();\n expandedMobileMenu();\n });\n\n [].forEach.call(navMainChildrenToggle, function(button) {\n button.addEventListener('click', function(ev) {\n toggleNavMainChildren(ev.currentTarget);\n });\n });\n\n [].forEach.call(navMainLink, function(menuLink) {\n menuLink.children[0].addEventListener('click', function(ev) {\n var currentActive = document.getElementsByClassName('js-nav-main-link-wrapper--active');\n\n if( ev.target.parentNode.classList.contains('js-nav-main-link-wrapper--active') ) {\n handlerMenu(ev.currentTarget.parentNode, 'remove');\n } else {\n handlerMenu(currentActive, 'remove');\n handlerMenu(ev.currentTarget.parentNode, 'add');\n }\n\n ev.preventDefault();\n });\n });\n\n slideout = new Slideout(slideOptions);\n\n window.addEventListener('resize', function() {\n if ( window.innerWidth !== currentWidth ) {\n currentWidth = window.innerWidth;\n slideout.destroy();\n slideout = new Slideout(slideOptions);\n\n if(navMainToggle.children[0].classList.contains('icon-close')) {\n navMainToggle.setAttribute('aria-pressed', 'false');\n navMainToggle.children[0].classList.remove('icon-close');\n navMainToggle.children[0].classList.add('icon-header-menu');\n }\n\n if (searchButton) {\n searchButton.setAttribute('aria-pressed', 'false');\n searchToggleButton(searchButton, navList);\n searchButton.style.display = '';\n }\n }\n });\n\n document.addEventListener('click', function(ev) {\n handlerSearch(ev.target);\n });\n\n mainContainer.addEventListener('click', function(ev) {\n handlerMenu(ev.currentTarget, 'remove');\n });\n\n mainContainer.addEventListener('touchstart', function() {\n if(slideout.isOpen()) {\n slideout.close();\n toggleButton(navMainToggle);\n if(navMainToggle.getAttribute('aria-pressed') === 'true') {\n navMainToggle.children[0].classList.remove('icon-header-menu');\n navMainToggle.children[0].classList.add('icon-close');\n } else {\n navMainToggle.children[0].classList.remove('icon-close');\n navMainToggle.children[0].classList.add('icon-header-menu');\n }\n } \n });\n\n document.addEventListener('touchstart', function(ev){\n if(ev.target.getAttribute('id') !== '§megamenu' && !ev.target.classList.contains('header__wrapper') && !ev.target.classList.contains('header') && ev.target.getAttribute('id') !== 'header-search__input') {\n searchButton.setAttribute('aria-pressed', 'false');\n searchToggleButton(searchButton, navList);\n searchButton.style.display = '';\n }\n\n if (!ev.target.classList.contains('nav-main__link--level-01')){\n handlerMenu(ev.currentTarget, 'remove');\n }\n });\n\n document.querySelector('#nav-main-mobile__search-input').addEventListener('click', function(){\n $(this).focus();\n }, false);\n\n // If main nav dropdown list is equal to or less then 4, change width to auto for li second level\n $(\"ul.nav-main__list--level-02\").filter(function () {\n return $(this).find('li.nav-main__item--level-02').length <= 4\n }).addClass(\"shortNav\");\n}(jQuery));\n","(function($){\n 'use strict';\n \n}(jQuery));","(function($){\n 'use strict';\n\n var $category_selector = $('.news__type select#category');\n\n $category_selector.bind('change', function () {\n this.form.submit();\n });\n \n}(jQuery));","(function($){\n 'use strict';\n var $searchInput = $('.search__input');\n if ($searchInput.length) {\n\n //search icon & clear icon\n var cancelIcon = $('.search__form .icon-close');\n var searchIcon = $('.search__form .icon-search');\n var inputText = $searchInput.val().length;\n\n if (inputText !== 0) {\n // show cross icon\n cancelIcon.show();\n searchIcon.hide();\n } else {\n // show search icon\n searchIcon.show();\n cancelIcon.hide();\n }\n\n // show search icon when focus\n $searchInput.focus(function () {\n cancelIcon.hide();\n searchIcon.show();\n $searchInput.attr('value', '');\n });\n\n // show search icon when click on clear icon\n\n cancelIcon.parent().click(function () {\n // console.log('click');\n cancelIcon.hide();\n searchIcon.show();\n $searchInput.attr('value', '');\n });\n }\n}(jQuery));","var tables = document.querySelectorAll('table');\n\n// Wrap all tables in table wrapper to force scrolling if table is too wide\n[].forEach.call(tables, function(table) {\n var wrapper = document.createElement('div');\n wrapper.classList.add('table__wrapper');\n table.parentNode.insertBefore(wrapper, table);\n wrapper.appendChild(table);\n});\n","var tileLinks = document.querySelectorAll('.js-tile--link'),\n tilesCarousel = document.querySelector('.js-tiles__carousel'),\n tilesSection = document.querySelector('.js-tiles__section'),\n mousePosX = 0, xPos = 0, caruselInterval = null, xTouchPos = 0, xTouch = 0, touchCaruselInterval = null;\n\nfunction init() {\n if(tilesCarousel){\n if (tileLinks.length > 3) {\n if (window.innerWidth > 767) {\n \n tilesSection.addEventListener('mousemove', function(ev){\n mousePosX = ev.pageX;\n }, false);\n \n tilesCarousel.addEventListener('mouseenter', caruselAnimation, false);\n tilesCarousel.addEventListener('mouseleave', function(){\n clearInterval(caruselInterval);\n }, false);\n \n \n tilesSection.addEventListener('touchmove', function(ev){\n xTouchPos = ev.touches[0].pageX;\n }, false);\n \n tilesCarousel.addEventListener('touchstart', touchHandler, false);\n \n } else {\n tilesCarousel.style.left = '0';\n clearInterval(caruselInterval);\n tilesCarousel.removeEventListener('mouseenter', caruselAnimation, false);\n }\n } else {\n [].forEach.call(tileLinks, function(titleLink) {\n titleLink.classList.add('lte3')\n })\n }\n }\n}\n\nfunction caruselAnimation() {\n var ratio = ( tileLinks.length * tileLinks[0].offsetWidth ) / window.innerWidth;\n\n var center = window.innerWidth / 2;\n var speed = 0;\n\n caruselInterval = setInterval(function(){ \n if (mousePosX > center) {\n speed = 250 - (mousePosX - center) / 3;\n } \n else {\n speed = 250 - (center - mousePosX) / 3;\n }\n if (speed < 50) {\n speed = 50;\n }\n xPos += (( mousePosX * ratio ) - xPos) / speed;\n if (mousePosX < center ) {\n xPos += ( ( ( mousePosX * ratio ) - center ) - xPos ) / speed;\n }\n tilesCarousel.style.left = -xPos + 'px';\n }, 30);\n}\n\nfunction touchHandler(ev){\n tilesCarousel.removeEventListener('mouseenter', caruselAnimation, false);\n tilesSection.removeEventListener('mousemove', function(e){\n mousePosX = e.pageX;\n }, false);\n clearInterval(touchCaruselInterval);\n\n var firstTouchX = ev.touches[0].clientX;\n var ratio = ( tileLinks.length * tileLinks[0].offsetWidth ) / window.innerWidth;\n\n touchCaruselInterval = setInterval(function(){ \n if (firstTouchX > xTouchPos) {\n if( xTouch > -( ( window.innerWidth * ratio ) - 400) ) {\n \n xTouch += -( firstTouchX - xTouchPos ) / 20;\n }\n } else if(firstTouchX < xTouchPos) {\n if( xTouch <= 200) {\n xTouch += ( ( xTouchPos - firstTouchX ) ) / 20;\n }\n }\n\n tilesCarousel.style.left = xTouch + 'px';\n }, 30);\n}\n\nwindow.addEventListener('resize', function(){\n init();\n});\n\ninit();\n\n\n\n"]}