{"version":3,"sources":["peopleFinder.js"],"names":["BDM","peopleFinder","results","reset","programData","settings","dataurl","shownumber","$el","finder","$","filters","mobileopen","mobileclose","filterwindow","template","loadmore","tabs","select","searchField","searchButton","notfound","loading","resultsLoaded","loadData","queryObject","campus","val","school","role","specialty","searchText","addClass","removeClass","hasClass","ajax","type","url","data","dataType","success","faculty","showResults","$temp","displayResults","find","remove","length","show","splice","hide","slice","text","forEach","result","clone","schoolname","replace","append","name","attr","title","html","join","image","alt","on","event","preventDefault","window","location","href","this","y","off","each","complete","load","setTimeout","init","offset","top","l","eq","focus","change","first","css","display","keydown","keyCode"],"mappings":"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","file":"peopleFinder.min.js","sourcesContent":["/*globals $*/\r\n(function (BDM, peopleFinder) {\r\n 'use strict';\r\n\r\n var settings = {\r\n dataurl: \"program_finder.json\",\r\n shownumber: 8 /// Number of results to reveal initially and after load more\r\n },\r\n\r\n $el = { //stored elements\r\n finder: $('.people-finder'),\r\n filters: $('.degree-finder__filter'),\r\n mobileopen: $('.degree-finder__mobilebutton'),\r\n mobileclose: $('.degree-finder__close'),\r\n filterwindow: $('.degree-finder__filters'),\r\n results: $('.degree-finder__results'),\r\n template: $('.degree-finder__template .people-finder__result'),\r\n loadmore: $('.degree-finder__loadmore'),\r\n tabs: $('.degree-finder__filter .nav > li'),\r\n select: $('.degree-finder__filter select'),\r\n searchField: $('#people-search'),\r\n searchButton: $('.degree-finder__filter .btn'),\r\n notfound: $('.degree-finder__notfound'),\r\n loading: $('.icon__loading')\r\n },\r\n\r\n results,\r\n reset,\r\n resultsLoaded = false,\r\n scrollPos = null,\r\n programData,\r\n focusElements = 'select, input, textarea, button, a';\r\n \r\n /**\r\n * Helper Methods\r\n **/\r\n\r\n function loadData() {\r\n var queryObject = {\r\n campus: $('#campus').val(),\r\n school: $('#school').val(),\r\n role: $('#role').val(),\r\n specialty: $('#specialty').val(),\r\n searchText: $('#people-search').val()\r\n };\r\n $el.loading.addClass('fadein').removeClass('fadeout');\r\n reset = true;\r\n resultsLoaded = false;\r\n if ($el.results.hasClass('fadein')) {\r\n $el.results.addClass('fadeout').removeClass('fadein');\r\n }\r\n $.ajax({\r\n type: 'POST',\r\n url: settings.dataurl,\r\n data: queryObject,\r\n dataType: 'json',\r\n success: function (data) {\r\n if (!programData) {\r\n programData = data.faculty;\r\n }\r\n results = data.faculty;\r\n reset = true;\r\n resultsLoaded = false;\r\n showResults();\r\n }\r\n });\r\n }\r\n\r\n function showResults() {\r\n var $temp, displayResults = [];\r\n if (resultsLoaded === false) {\r\n resultsLoaded = true;\r\n if (reset) {\r\n $el.results.find('.people-finder__result').remove();\r\n }\r\n reset = false;\r\n if (results.length) {\r\n if (results.length > settings.shownumber) {\r\n $el.loadmore.show();\r\n displayResults = results.splice(0, settings.shownumber);\r\n } else {\r\n $el.loadmore.hide();\r\n displayResults = results;\r\n }\r\n $el.notfound.removeClass('fadein');\r\n } else {\r\n if (programData) {\r\n displayResults = programData.slice(0, 4);\r\n } else {\r\n displayResults = [];\r\n }\r\n $el.notfound.addClass('fadein');\r\n if ($('#people-search').val()) {\r\n $('.wordsearch').show();\r\n $('.searchterm').text($('#people-search').val());\r\n } else {\r\n $('.wordsearch').hide();\r\n }\r\n $el.loadmore.hide();\r\n }\r\n if (displayResults.length) {\r\n displayResults.forEach(function (result) {\r\n $temp = $el.template.clone();\r\n $temp.addClass(result.schoolname.replace(/\\s/g, \"\"));\r\n $temp.find('.card__faculty-name.people').append(result.name ? \"