'use strict'; $(document).ready(function() { var siteTitle = (document.title).split("-")[1]; var pageTitle = (($(".breadcrumb .active").html()).concat(" -")).concat(siteTitle); document.title = pageTitle; }); $(function() { $(document).on('click', '.pagination a', function(event) { goToPage(this); }); $('.pagination a').on('click', function(event) { goToPage(this); }); var updateSelectors = function(data, type) { switch (type) { case "division": $("select#citySelector").prepend( $("")); $.each(data.cities, function() { $("select#citySelector").append( $("").attr("value", this).text(this)); }); break; case "city": $("select#divisionSelector").prepend( $("")); $.each(data.divisions, function() { $("select#divisionSelector").append( $("").attr("value", this).text(this)); }); break; default: break; } }; var updatePageContent = function(data, type) { $('#news-feed').html(data.jobs); $('.pagination-helper').html(data.page); $('.listing-footer').html(data.pagination); updateSelectors(data, type); }; var submitJobs = function(query, type) { $.ajax({ async : false, cache : false, dataType : 'json', data : query, url : '/blocks/careers/jobs/json/jobsJsonObject.jsp', success : function(data) { updatePageContent(data, type); }, error : function(jqXHR, textStatus, errorThrown) { } }); }; var goToPage = function(pageLink) { var page = $(pageLink).data('page'); if (page) { var query = 'page=' + page; submitJobs(query, ""); } }; $("select#citySelector").on('change', function(event) { var division = $("select#divisionSelector").val(); var city = $("option:selected").val(); var query = 'city=' + city +'&division='+division; if (city === "") { $("select#citySelector").empty(); submitJobs(query, "division"); } $("select#divisionSelector").empty(); var allDivision = $("#emptyDivision").val(); submitJobs(query, "city"); }); $("select#divisionSelector").on('change', function(event) { var division = $("select#divisionSelector").val(); var city = $("select#citySelector").val(); if (division === "") { $("select#divisionSelector").empty(); submitJobs(query, "city"); } var query = 'city=' + city +'&division='+division; $("select#citySelector").empty(); submitJobs(query, "division"); }); });