Added handle for .is-active for pager linke in Pager block with ajax

This commit is contained in:
Kyle Huynh 2022-01-27 04:39:35 +00:00
parent 17274d141e
commit 3e3b68c72d
3 changed files with 34 additions and 4 deletions

View file

@ -107,9 +107,13 @@
} }
.pager__link--is-active { .pager__link--is-active {
text-decoration: underline; text-decoration: underline !important;
border: solid 2px #0d77b5;
} }
.view-grid .view-content .views-row {
padding: 0px 20px 20px 0px !important;
}
/* generalizing */ /* generalizing */
.advanced_search_result_pager .pager__group .pager { .advanced_search_result_pager .pager__group .pager {
@ -142,5 +146,5 @@
.view-grid .view-content{ .view-grid .view-content{
display: grid; display: grid;
grid-template-columns: repeat(3, 1fr); grid-template-columns: repeat(3, 1fr);
margin: 0.47214rem 0 0.47214rem 2.61803rem; /*margin: 0.47214rem 0 0.47214rem 2.61803rem;*/
} }

View file

@ -77,7 +77,6 @@
Drupal.behaviors.islandoraAdvancedSearchViewsAjax = { Drupal.behaviors.islandoraAdvancedSearchViewsAjax = {
attach: function (context, settings) { attach: function (context, settings) {
window.historyInitiated = true; window.historyInitiated = true;
// Remove existing behavior from form. // Remove existing behavior from form.
if (settings && settings.views && settings.views.ajaxViews) { if (settings && settings.views && settings.views.ajaxViews) {
$.each(settings.views.ajaxViews, function (index, settings) { $.each(settings.views.ajaxViews, function (index, settings) {
@ -114,7 +113,34 @@
}); });
}); });
}); });
if (window.location.search.includes("display=") === true) {
$("li.pager__item a.pager__display").each(function () {
$(this).parent().removeClass("is-active");
$(this).removeClass("pager__link--is-active");
if ($(this).text().trim().toLowerCase() === getParam(window.location.search, "display").trim().toLowerCase()) {
$(this).addClass("pager__link--is-active");
}
});
}
if (window.location.search.includes("items_per_page=") === true) {
$("li.pager__item a.pager__itemsperpage").each(function() {
$(this).parent().removeClass("is-active");
$(this).removeClass("pager__link--is-active");
if ($(this).text().trim().toLowerCase() === getParam(window.location.search, "items_per_page").trim().toLowerCase()) {
$(this).addClass("pager__link--is-active");
}
});
}
} }
function getParam(urlstring, param) {
var searchparam = new URLSearchParams(urlstring);
return searchparam.get(param);
}
// Attach behavior to pager, summary, facet links. // Attach behavior to pager, summary, facet links.
$("[data-drupal-pager-id], [data-drupal-facets-summary-id], [data-drupal-facet-id]") $("[data-drupal-pager-id], [data-drupal-facets-summary-id], [data-drupal-facet-id]")

View file

@ -212,7 +212,7 @@ class SearchResultsPagerBlock extends BlockBase implements ContainerFactoryPlugi
* A renderable array representing the display links portion of pager. * A renderable array representing the display links portion of pager.
*/ */
protected function buildDisplayLinks(array $query_parameters) { protected function buildDisplayLinks(array $query_parameters) {
$active_display = $query_parameters['display'] ?? 'list'; $active_display = $query_parameters['display'] ?? 'grid';
$display_options = [ $display_options = [
'list' => [ 'list' => [
'icon' => 'fa-list', 'icon' => 'fa-list',