{"version":3,"file":"jwsdw-pressRelease.js","sources":["../../../../../../../temp/ngAnnotate/assets/jwsdw-pressRelease.js"],"sourcesContent":["'use strict';\r\n\r\n(function (window, $) {\r\n var $searchForm = $('#jwsdw-pressRelease-searchForm'),\r\n $searchInput = $('#jwsdw-pressRelease-search input'),\r\n $year = $('#jwsdw-pressRelease-year'),\r\n $searchButton = $('#jwsdw-pressRelease-search button'),\r\n $pressReleaseTemplate = $('.jwsdw-pressRelease-article-template'),\r\n $noResultsTemplate = $('.jwsdw-pressRelease-noResults-template'),\r\n state = {\r\n 'q': $searchInput.val(),\r\n 'year': $year.val(),\r\n 'tab': $('input[name=tabgroup]:checked').val()\r\n },\r\n $showMore = $('.jwsdw-pressRelease-showMore');\r\n\r\n $searchForm.on('submit', search);\r\n $searchInput.on('keyup', window.jwsdwUtil.debounce(650, search));\r\n $searchButton.on('click', search);\r\n\r\n $year.on('change', search);\r\n\r\n $showMore.on('click', function () {\r\n var $button = $(this),\r\n $section = $button.parents('.jwsdw-pressRelease-section'),\r\n $hiddenArticles = $section.find('.jwsdw-pressRelease-article.jws-hidden'),\r\n i;\r\n\r\n for (i = 5; i >= 0; i--) {\r\n $($hiddenArticles[i]).removeClass('jws-hidden');\r\n }\r\n\r\n if ($section.find('.jwsdw-pressRelease-article.jws-hidden').length === 0) {\r\n $button.addClass('jws-hidden');\r\n }\r\n });\r\n\r\n $(window).on('popstate', function () {\r\n if (window.history.state) {\r\n state = window.history.state;\r\n $searchInput.val(state.q);\r\n $year.val(state.year);\r\n if (state.tab) {\r\n $('input[value=\"' + state.tab + '\"]').prop('checked', true);\r\n }\r\n search(null, true);\r\n }\r\n });\r\n\r\n $(document).on('click', '.jwsdw-tabs-nav .jwsdw-tabs-nav-item-button', function() {\r\n state.tab = document.getElementById(this.getAttribute('for')).value;\r\n window.history.pushState(state, $(document).find('title').text(), buildUrlParameters(state));\r\n });\r\n\r\n /**\r\n * @description Method to perform search request\r\n * @param {Object} e event object\r\n * @param {Boolean} popState true if triggered by popState\r\n * @return {void}\r\n */\r\n function search (e, popState) {\r\n var url = $searchForm.attr('action');\r\n\r\n if (e) {\r\n e.preventDefault();\r\n }\r\n state.q = $searchInput.val();\r\n state.year = $year.val();\r\n url = buildUrlParameters(state);\r\n if (!popState) {\r\n window.history.pushState(state, $(document).find('title').text(), url);\r\n }\r\n $.ajax({\r\n 'type': 'GET',\r\n 'format':'ajax',\r\n 'url': url,\r\n 'data': {\r\n 'isAjax': true\r\n },\r\n 'beforeSend': function() {\r\n $searchButton.find('.jwsdw-spinner').removeClass('jws-hidden');\r\n $searchButton.find('svg').addClass('jws-hidden');\r\n },\r\n /**\r\n * @function\r\n * @param {Object} response response\r\n * @param {Object} response.productReleases product releases\r\n * @param {Object} response.corporateReleases product releases\r\n * @returns {void} true\r\n */\r\n 'success': function(response) {\r\n response.categories.map(function(category) {\r\n var $navItem = $('#jwsdw-pressRelease-nav-' + category.id),\r\n $section = $('#jwsdw-pressRelease-' + category.id),\r\n $noResults;\r\n\r\n $section.find('.jwsdw-pressRelease-article, .jwsdw-pressRelease-noResults').remove();\r\n if (category.releases.length > 0) {\r\n $navItem.removeClass('jws-opacity-50');\r\n category.releases.map(function(pressRelease, index) {\r\n var $pressRelease = $pressReleaseTemplate.clone();\r\n\r\n $pressRelease.find('a').attr('href', pressRelease.url);\r\n $pressRelease.find('img').attr('src', pressRelease.image);\r\n $pressRelease.find('.jwsdw-pressRelease-date').text(pressRelease.date);\r\n $pressRelease.find('.jwsdw-pressRelease-title').text(pressRelease.title);\r\n $pressRelease.find('.jwsdw-pressRelease-excerpt').text(pressRelease.excerpt);\r\n if (index < 6) {\r\n $pressRelease.removeClass('jws-hidden');\r\n }\r\n $section.append($pressRelease);\r\n });\r\n } else {\r\n $noResults = $noResultsTemplate.clone();\r\n $noResults.removeClass('jws-hidden');\r\n $section.append($noResults);\r\n $navItem.addClass('jws-opacity-50');\r\n }\r\n if (category.releases.length > 6) {\r\n $section.find('.jwsdw-pressRelease-showMore').removeClass('jws-hidden');\r\n } else {\r\n $section.find('.jwsdw-pressRelease-showMore').addClass('jws-hidden');\r\n }\r\n\r\n $section.find('.jwsdw-pressRelease-showMore').parent().detach().appendTo($section);\r\n });\r\n },\r\n 'complete': function() {\r\n $searchButton.find('.jwsdw-spinner').addClass('jws-hidden');\r\n $searchButton.find('svg').removeClass('jws-hidden');\r\n }\r\n });\r\n }\r\n\r\n /**\r\n * @description Method to build Url Parameters from obj\r\n * @param {Object} obj the object\r\n * @returns {String} url with url parameters\r\n */\r\n function buildUrlParameters(obj) {\r\n var url = '',\r\n params = [];\r\n\r\n params = Object.keys(obj)\r\n .filter(function(key) {\r\n return obj[key];\r\n })\r\n .sort(function(a, b) {\r\n return a > b ? 1 : -1;\r\n })\r\n .map(function(key) {\r\n return key + '=' + obj[key];\r\n });\r\n if (params.length > 0) {\r\n url = '?' + params.join('&');\r\n }\r\n return url;\r\n }\r\n}(window, jQuery));"],"names":["window","$","$searchForm","$searchInput","$year","$searchButton","$pressReleaseTemplate","$noResultsTemplate","state","q","val","year","tab","$showMore","search","e","popState","attr","preventDefault","url","buildUrlParameters","history","pushState","document","find","text","ajax","type","format","data","isAjax","beforeSend","removeClass","addClass","success","response","categories","map","category","$noResults","$navItem","id","$section","remove","releases","length","pressRelease","index","$pressRelease","clone","image","date","title","excerpt","append","parent","detach","appendTo","complete","obj","params","Object","keys","filter","key","sort","a","b","join","on","jwsdwUtil","debounce","$button","this","parents","$hiddenArticles","i","prop","getElementById","getAttribute","value","jQuery"],"mappings":"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"}