{"version":3,"sources":["Pages/Home/_GetInvolvedFilters.js"],"names":["allInterestsData","hasInterests","newUrl","window","location","origin","pathname","parsedUrl","$","url","parse","document","URL","initFilters","params","interestIds","selectedInterestIds","split","val","trigger","interestCategoryIds","selectedInterestCategoryIds","specialSkillIds","selectedSpecialSkillIds","placeIds","selectedPlaceIds","initEvents","on","updateOpportunities","categoryIds","getCommaSepString","getJSON","result","select2","empty","data","filter","x","indexOf","id","history","replaceState","path","myInterestIds","this","mySpecialSkillIds","show","map","length","each","i","e","doShow","some","includes","hide","urlParams","interestParams","idName","idArray","join","push","interestCategoryParams","placeParams","specialSkillsParams","forEach","index","find","option","text","get"],"mappings":"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","file":"_GetInvolvedFilters.min.js","sourcesContent":["var allInterestsData = [];\nvar hasInterests = false;\nvar newUrl = window.location.origin + window.location.pathname;\nvar parsedUrl = $.url.parse(document.URL);\n\n$(function () {\n $('.select2').select2();\n\n allInterestsData = $('#interestFilter option').map(function () {\n var option = $(this);\n\n return {\n id: option.val(),\n text: option.text()\n };\n })\n .get();\n\n initEvents();\n updateOpportunities();\n initFilters(parsedUrl);\n});\n\nfunction initFilters(parsedUrl) {\n if (parsedUrl.params) {\n\n if (parsedUrl.params.interestIds != null) {\n var selectedInterestIds = parsedUrl.params.interestIds.split(',');\n\n if (selectedInterestIds != null) {\n hasInterests = true;\n }\n $('#interestFilter').val(selectedInterestIds).trigger('change');\n }\n\n if (parsedUrl.params.interestCategoryIds != null) {\n var selectedInterestCategoryIds = parsedUrl.params.interestCategoryIds.split(',');\n $('#interestCategoryFilter').val(selectedInterestCategoryIds).trigger('change');\n }\n\n if (parsedUrl.params.specialSkillIds != null) {\n var selectedSpecialSkillIds = parsedUrl.params.specialSkillIds.split(',');\n $('#specialSkillFilter').val(selectedSpecialSkillIds).trigger('change');\n }\n\n if (parsedUrl.params.placeIds != null) {\n var selectedPlaceIds = parsedUrl.params.placeIds.split(',');\n $('#placeFilter').val(selectedPlaceIds).trigger('change');\n }\n }\n}\n\nfunction initEvents() {\n $(document).on('change', '#specialSkillFilter', updateOpportunities);\n $(document).on('change', '#interestFilter', updateOpportunities);\n $(document).on('change', '#placeFilter', updateOpportunities);\n $(document).on('change', '#interestCategoryFilter', function () {\n var categoryIds = getCommaSepString('#interestCategoryFilter');\n\n if (categoryIds) {\n $.getJSON('/api/GetInterestsByCategory?interestCategories=' + categoryIds, function (result) {\n $('#interestFilter').select2('destroy')\n .empty()\n .select2({\n data: allInterestsData.filter(function (x) {\n return result.interestIds.indexOf(x.id) >= 0;\n })\n });\n\n if (hasInterests) {\n var selectedInterestIds = parsedUrl.params.interestIds.split(',');\n $('#interestFilter').val(selectedInterestIds).trigger('change');\n hasInterests = false;\n }\n\n updateOpportunities();\n });\n }\n else {\n $('#interestFilter').select2('destroy')\n .empty()\n .select2({\n data: allInterestsData\n });\n\n if (hasInterests) {\n var selectedInterestIds = parsedUrl.params.interestIds.split(',');\n $('#interestFilter').val(selectedInterestIds).trigger('change');\n hasInterests = false;\n }\n\n updateOpportunities();\n }\n });\n\n $(document).on('click', '#clearFiltersBtn', function () {\n $('#placeFilter').val('').trigger('change');\n $('#interestFilter').val('').trigger('change');\n $('#interestCategoryFilter').val('').trigger('change');\n $('#specialSkillFilter').val('').trigger('change');\n updateOpportunities();\n\n newUrl = window.location.origin + window.location.pathname;\n history.replaceState({ path: newUrl }, '', newUrl);\n });\n\n $(document).on('click', '#filterToMyInterestsBtn', function () {\n $('#interestCategoryFilter').val('').trigger('change');\n $('#interestFilter').val('').trigger('change');\n $('#specialSkillFilter').val('').trigger('change');\n\n var myInterestIds = $(this).data('myInterestIds').split(',');\n\n $('#interestFilter').val(myInterestIds).trigger('change');\n updateOpportunities();\n });\n\n $(document).on('click', '#filterToMySkillsBtn', function () {\n $('#interestCategoryFilter').val('').trigger('change');\n $('#interestFilter').val('').trigger('change');\n $('#specialSkillFilter').val('').trigger('change');\n\n var mySpecialSkillIds = $(this).data('mySpecialSkillIds').split(',');\n\n $('#specialSkillFilter').val(mySpecialSkillIds).trigger('change');\n updateOpportunities();\n });\n}\n\nfunction updateOpportunities() {\n $('.volunteerGroupDiv').show();\n $('.departmentDiv').show();\n\n var placeIds = $('#placeFilter')\n .select2('data')\n .map(function (x) {\n return x.id;\n });\n\n var interestIds = $('#interestFilter')\n .select2('data')\n .map(function (x) {\n return x.id;\n });\n\n var interestCategoryIds = $('#interestCategoryFilter')\n .select2('data')\n .map(function (x) {\n return x.id;\n });\n\n var specialSkillIds = $('#specialSkillFilter')\n .select2('data')\n .map(function (x) {\n return x.id;\n });\n\n if (placeIds.length > 0 || interestIds.length > 0 || interestCategoryIds.length > 0 || specialSkillIds.length > 0) {\n $('.volunteerGroupDiv').each(function (i, e) {\n var doShow = true;\n\n if (interestIds.length > 0 && !$(this).data('interestIds').split(',').some(function (x) { return interestIds.includes(x); })) {\n doShow = false;\n }\n\n if (interestCategoryIds.length > 0 && !$(this).data('interestCategoryIds').split(',').some(function (x) { return interestCategoryIds.includes(x); })) {\n doShow = false;\n }\n\n if (placeIds.length > 0 && !$(this).data('placeIds').split(',').some(function (x) { return placeIds.includes(x); })) {\n doShow = false;\n }\n\n if (specialSkillIds.length > 0 && !$(this).data('specialSkillIds').split(',').some(function (x) { return specialSkillIds.includes(x); })) {\n doShow = false;\n }\n\n if (!doShow) {\n $(this).hide();\n }\n });\n\n var urlParams = [];\n\n if (interestIds.length > 0) {\n var interestParams = { idName: 'interestIds', idArray: interestIds.join() };\n\n urlParams.push(interestParams);\n };\n\n if (interestCategoryIds.length > 0) {\n var interestCategoryParams = { idName: 'interestCategoryIds', idArray: interestCategoryIds.join() };\n\n urlParams.push(interestCategoryParams);\n };\n\n if (placeIds.length > 0) {\n var placeParams = { idName: 'placeIds', idArray: placeIds.join() };\n\n urlParams.push(placeParams);\n };\n\n if (specialSkillIds.length > 0) {\n var specialSkillsParams = { idName: 'specialSkillIds', idArray: specialSkillIds.join() };\n\n urlParams.push(specialSkillsParams);\n };\n\n newUrl = newUrl = '?';\n\n urlParams.forEach(function (x, index) {\n if (index >= 1) {\n newUrl = newUrl + '&';\n }\n\n newUrl = newUrl + x.idName + '=' + x.idArray;\n })\n\n history.replaceState({ path: newUrl }, '', newUrl);\n\n $('.departmentDiv').each(function (i, e) {\n if ($(this).find('.volunteerGroupDiv:visible').length === 0) {\n $(this).hide();\n }\n });\n }\n}"]}