diff --git a/themes/finc/scss/_customVariables.scss b/themes/finc/scss/_customVariables.scss index a70c9bb2316b4b409339e177f1e281c64ed764d9..025f14fca52c7484a1755f7155bca6ba52a2ec78 100644 --- a/themes/finc/scss/_customVariables.scss +++ b/themes/finc/scss/_customVariables.scss @@ -683,7 +683,6 @@ $navbar-height-sm: $navbar-height !default; // Set navbar-height for small devices, USE px as rem will throw an error in conjunction with _variables.scss $navbar-height-xs: $navbar-height + 14px !default; -$navbar-min-height-adv-search: 3rem !default; $navbar-max-height-xs: $navbar-height + 32px !default; $navbar-opened-on-xs-position: absolute !default; @@ -699,10 +698,10 @@ $hamburger-menu-margin-left-xs: 0 !default; $hamburger-menu-margin-right-xs: 0 !default; // This is for the menu items in the header incl. language, My account etc -$header-menu-flex-sm-up: 1 0 40%; -$header-menu-flex-adv-srch-sm-up: 1 0 100%; -$header-menu-flex-order-sm-up: 3; -$header-menu-padding-top-sm-up: 6px; +$header-menu-flex-sm-up: 1 0 35% !default; +$header-menu-flex-adv-srch-sm-up: 1 0 100% !default; +$header-menu-flex-order-sm-up: 3 !default; +$header-menu-padding-top-sm-up: 6px !default; $library-name-float: left !default; @@ -797,6 +796,8 @@ $search-form-advanced-search-button-border: 1px solid $oil !default; // In most instance we have MOVED the advanced search TERMS INTO the BREADCRUMBS area // in order to keep the header ok on small devices. If this is the case in your instance, // you can ignore the '$adv_search_terms...' settings. +// FIXME: REMOVE THE FOLLOWING SECTIONS + all RELATED VARIABLES when +// all instances have the new search terms display on top of search results - CK $adv-search-terms-bg: $brand-secondary !default; $adv-search-terms-border: 1px solid $brand-primary !default; $adv-search-terms-bottom-margin: 0 !default; @@ -818,8 +819,7 @@ $adv-search-links-anchor-border-bottom-sm-up: 0 !default; $adv-search-links-anchor-border-right-sm-up: 1px solid $brand-primary !default; $adv-search-links-anchor-display-sm-up: inline !default; $adv-search-links-anchor-padding-right-sm-up: .5em !default; -$adv-search-links-sm-to-md-max-max-width: 400px !default; - +$adv-search-links-sm-to-md-max-max-width: 470px !default; @@ -926,6 +926,9 @@ $content-xs-padding-top: 1.5rem !default; // This is for all lists that use the result list view or elements thereof. // For Search Control, Bulk Elements, Pagination, see below +// sets padding on '.result-body' to prevent text from running into Add to Favorites etc +$result-body-right-padding-sm-up: 1rem !default;; + // Media container $result-list-record-result-media-container-xs-sm-padding-left: 0 !default; $result-list-record-result-media-container-xs-sm-padding-right: 0 !default; diff --git a/themes/finc/scss/components/_header-navbar.scss b/themes/finc/scss/components/_header-navbar.scss index 7658f33f31edb59d54d2c90e202f8ef85d831dc0..f9f8e523a6ecebb549c8e4d93ea703edbc5eebd2 100644 --- a/themes/finc/scss/components/_header-navbar.scss +++ b/themes/finc/scss/components/_header-navbar.scss @@ -73,11 +73,6 @@ header, // body -> padding-top would need to be taller than navbar minimum-height min-height: $navbar-height; - // Advanced search - .template-name-advanced & { - min-height: $navbar-min-height-adv-search; - } - // Set min height for xs @media (max-width: $screen-xs-max) { min-height: $navbar-height-xs; @@ -175,11 +170,6 @@ header, // position to the right! order: $header-menu-flex-order-sm-up; padding-top: $header-menu-padding-top-sm-up; - - // Make right-hand header parts full width for advanced search page since it doesn't use any left-hand header parts - .template-name-advanced & { - flex: $header-menu-flex-adv-srch-sm-up; - } } } diff --git a/themes/finc/scss/components/_result-list.scss b/themes/finc/scss/components/_result-list.scss index 941f92ce15b4e581ee0cd9e8f04d8af39f94f350..0092eb8aa7f539d3c715387d2ceb5213650ad669 100644 --- a/themes/finc/scss/components/_result-list.scss +++ b/themes/finc/scss/components/_result-list.scss @@ -2,6 +2,11 @@ // For Check boxes for bulk actions and bulk action buttons, see bulk-action-buttons.scss // Pls. note that the result elements are also used in several myaccount views, such as 'Favorites' +.result-body { + @media (min-width: $screen-sm-min) { + padding-right: $result-body-right-padding-sm-up; + } +} // ***************************************************************** // ************ Media container ************************************ diff --git a/themes/finc/scss/components/_search.scss b/themes/finc/scss/components/_search.scss index 528aeefad137439f4c6971311114de56e41227f1..e8d525172fbeec49396cb5edec947937c0243bc7 100644 --- a/themes/finc/scss/components/_search.scss +++ b/themes/finc/scss/components/_search.scss @@ -123,6 +123,16 @@ border: $search-form-advanced-search-button-border; } } + + // when nav-tabs are active, style them flex-style as rest of search box; to activate, add + // [SearchTabs] + // Solr=Catalog + // WorldCat=WorldCat + // to dev/config.ini + .nav-tabs { + display: flex; + flex-basis: 100%; + } } @@ -146,52 +156,7 @@ } } -// Advanced search terms in header (visible only after an advanced search was run) -// i.e. the search terms entered -.adv_search_terms { - background-color: $adv-search-terms-bg; - border: $adv-search-terms-border; - margin-bottom: $adv-search-terms-bottom-margin; - padding: $adv-search-terms-padding; - width: $adv-search-terms-width; -} - -// Advanced search links in header (visible only after an advanced search was run) -// i.e. 'Edit advanced search' | 'New advanced search' ... -.adv_search_links { - border: $adv-search-links-border; - list-style: $adv-search-links-list-style; - margin: $adv-search-links-margin; - padding: $adv-search-links-padding; - - @media (min-width: $screen-sm-min) { - margin-top: $adv-search-links-top-margin-sm; - } - - a { - border-top: $adv-search-links-anchor-top-border; - display: $adv-search-links-anchor-display; - padding-left: $adv-search-links-anchor-padding-left; - - &:last-of-type { - border-bottom: 0; - } - - // 786px and above as inline list - @media (min-width: $screen-sm-min) { - border-bottom: $adv-search-links-anchor-border-bottom-sm-up; - border-right: $adv-search-links-anchor-border-right-sm-up; - display: $adv-search-links-anchor-display-sm-up; - padding-right: $adv-search-links-anchor-padding-right-sm-up; - - &:last-of-type { - border-right: 0; - } - } - } -} - -////////////// TODO: Review ///////////////////////////// +// FIXME: CHECK THE FOLLOWING for redundant code - it should all relate to the advanced search page but may not - CK // .tab-content.adv-search container wraps advanced search terms and links .adv-search { @media (max-width: $screen-xs-max) { @@ -317,6 +282,102 @@ } +// ***************************************************************** +// ************ Display of Search Terms and Options **************** +// ************ _AFTER_ sucessful advanced search **************** +// ***************************************************************** + +// FIXME: REMOVE THE FOLLOWING TWO SECTIONS + all RELATED VARIABLES when +// all instances have the new search terms display on top of search results - CK +// <-- REMOVE FROM HERE +// Advanced search terms in header (visible only after an advanced search was run) +// i.e. the search terms entered +.adv_search_terms { + background-color: $adv-search-terms-bg; + border: $adv-search-terms-border; + margin-bottom: $adv-search-terms-bottom-margin; + padding: $adv-search-terms-padding; + width: $adv-search-terms-width; +} + +// Advanced search links in header (visible only after an advanced search was run) +// i.e. 'Edit advanced search' | 'New advanced search' ... +.adv_search_links { + border: $adv-search-links-border; + list-style: $adv-search-links-list-style; + margin: $adv-search-links-margin; + padding: $adv-search-links-padding; + + @media (min-width: $screen-sm-min) { + margin-top: $adv-search-links-top-margin-sm; + } + + a { + border-top: $adv-search-links-anchor-top-border; + display: $adv-search-links-anchor-display; + padding-left: $adv-search-links-anchor-padding-left; + + &:last-of-type { + border-bottom: 0; + } + + // 786px and above as inline list + @media (min-width: $screen-sm-min) { + border-bottom: $adv-search-links-anchor-border-bottom-sm-up; + border-right: $adv-search-links-anchor-border-right-sm-up; + display: $adv-search-links-anchor-display-sm-up; + padding-right: $adv-search-links-anchor-padding-right-sm-up; + + &:last-of-type { + border-right: 0; + } + } + } +} + +// <-- REMOVE TO HERE + +// NEW VERSION + +.search-results-col .panel-body { + display: flex; +} + +.adv-terms-label { + display: flex; + flex-basis: 100%; +} + +.adv-terms, +.adv-delete { + flex: content; +} + +.adv-terms { + word-break: break-word; +} + +.adv-delete { + margin-top: 1.5rem; + + + .btn { + float: right; + vertical-align: bottom; + } +} + +// Lend search terms and options the same height as the delete button for better alignment +// Base this on the same code as for '.search-filter-toggle' in bootstrap +.adv-edit { + @extend .btn; + // but align to left when there are many terms + padding-left: 0; + text-align: left; + white-space: normal; +} + + // ***************************************************************** // ************ Autocomplete *************************************** // ***************************************************************** diff --git a/themes/finc/scss/finc.scss b/themes/finc/scss/finc.scss index 8921fad525c04d245a30f0f29759d7647aaffb97..09d457ebc7a5fe7f347b71c30e21913578899a3b 100644 --- a/themes/finc/scss/finc.scss +++ b/themes/finc/scss/finc.scss @@ -96,13 +96,6 @@ body { padding-top: 8.5rem; } - // for XS make exception for adv. search results - &.template-name-advanced { - @media (max-width: $screen-xs-max) { - padding-top: 3.25rem; - } - } - // for tablet @media (min-width: $screen-sm-min) { padding-top: $navbar-height-sm; diff --git a/themes/finc/templates/search/advanced-search-information.phtml b/themes/finc/templates/search/advanced-search-information.phtml index c21a6fd815e55409703732f30e710da53526a8c7..10a492af96e5fe9c6747e2263dcee21627b54550 100644 --- a/themes/finc/templates/search/advanced-search-information.phtml +++ b/themes/finc/templates/search/advanced-search-information.phtml @@ -27,18 +27,41 @@ $hiddenFilterParams = $this->searchTabs()->getCurrentHiddenFilterParams($this->s <?php $tabConfig = $this->searchTabs()->getTabConfig($this->searchClassId, $this->lookfor, $this->searchIndex, $this->searchType, $hiddenFilters); ?> <?php if ($this->params->getSearchType() == 'advanced'): ?> + <?php /* Disable search tabs on advanced search terms - refs #22361 + * uncomment following block for using search tabs again + */ ?> + <?php /* <?php $tabs = $this->context($this)->renderInContext('search/searchTabs', ['searchTabs' => $tabConfig['tabs']]); ?> <?php if (!empty($tabs)): ?> <?=$tabs ?><div class="clearfix"> <?php endif; ?> - <p class="content_adv_search_terms"><?=$this->transEsc("Your search terms")?> : "<strong><?=$this->escapeHtml($this->lookfor)?></strong>"</p> - <p class="content_adv_search_links"> - <a class="btn btn-default" href="<?=$this->url($advSearch)?>?edit=<?=$this->escapeHtmlAttr($this->searchId)?>"><?=$this->transEsc("Edit this Advanced Search")?></a> - <a class="btn btn-default" href="<?=$this->url($advSearch) . $hiddenFilterParams?>"><?=$this->transEsc("Start a new Advanced Search")?></a> - <a class="btn btn-default" href="<?=$this->url($searchHome) . $hiddenFilterParams?>"><?=$this->transEsc("Start a new Basic Search")?></a> - </p> + <?php */ ?> + <div class="panel panel-primary"> + <div class="panel-body"> + <div class="adv-terms"> + <span class="adv-terms-label"><?=$this->transEsc("Advanced Search")?>:</span> + <a class="adv-edit" href="<?= $this->url($advSearch) ?>?edit=<?= $this->escapeHtmlAttr($this->searchId) ?>"> + <i class="fa fa-pencil"></i> + <span class="hidden-xs"><?= $this->transEsc("Edit") ?>: </span> + <strong><?= $this->escapeHtml($this->lookfor) ?></strong> + </a> + </div> + <div class="adv-delete"> + <a class="btn btn-danger" href="<?= $this->url($advSearch) . $hiddenFilterParams ?>"> + <i class="fa fa-times" aria-hidden="true"></i> + <span class="hidden-xs"><?= $this->transEsc("Delete") ?></span> + </a> + </div> + </div> + + </div> + <?php /* Disable search tabs on advanced search terms - refs #22361 + * uncomment following block for using search tabs again + */ ?> + <?php /* <?php if (!empty($tabs)): ?> </div> <?php endif; ?> + <?php */ ?> <?php endif; ?> <!-- finc: search - advanced-search-information - END --> diff --git a/themes/finc/templates/search/advanced/layout.phtml b/themes/finc/templates/search/advanced/layout.phtml index ee3e898c0a92c4189bbf767bf1832c833b927288..da3c44a8128dfb3976547d66a253b7798cf6da9f 100644 --- a/themes/finc/templates/search/advanced/layout.phtml +++ b/themes/finc/templates/search/advanced/layout.phtml @@ -4,7 +4,8 @@ $this->headTitle($this->translate('Advanced Search')); // Disable top search box -- this page has a special layout. - $this->layout()->searchbox = false; + // finc: reenable searchbox by commenting out following line - refs #22361 + //$this->layout()->searchbox = false; // Set up breadcrumbs: $this->layout()->breadcrumbs = '<li>'; diff --git a/themes/finc/templates/search/results.phtml b/themes/finc/templates/search/results.phtml index 13afdc03de5909ac9673c4ee61186563dd4a2b52..10915467d2991d20e3d8bcbaa0bb5c6be7b91108 100644 --- a/themes/finc/templates/search/results.phtml +++ b/themes/finc/templates/search/results.phtml @@ -80,8 +80,8 @@ <?php endif; ?> <?=$this->flashmessages()?> - <?php /* finc: display advanced search terms and links in main container on top of content - origionally located in header (searchbox.phtml) into*/ ?> + <?php /* finc: display advanced search terms and links in main container on top of search results + origionally located in header (searchbox.phtml) */ ?> <?= $this->context($this)->renderInContext( 'search/advanced-search-information.phtml', [ diff --git a/themes/finc/templates/search/searchbox.phtml b/themes/finc/templates/search/searchbox.phtml index 322a9c679ab9ebb564b8813f912b49eaefb0acd8..fa58a64187b6fed981a6a48a60cb5d1bc9c7540b 100644 --- a/themes/finc/templates/search/searchbox.phtml +++ b/themes/finc/templates/search/searchbox.phtml @@ -42,49 +42,51 @@ $showFilters = $filterDetails && (isset($results) || $options->getRetainFilterSetting()); ?> <?php $tabConfig = $this->searchTabs()->getTabConfig($this->searchClassId, $this->lookfor, $this->searchIndex, $this->searchType, $hiddenFilters); ?> -<?php if ($this->searchType == 'advanced'): ?> - <?php /* Do not show the advanced search terms (adv_search_terms) and advanced search links (adv_search_links) - because they will be shown within the breadcrumb - #17720 - #22331 */ ?> - <?php $showAdvancedSearchTermsAndLinksInHeader = false;?> - <?php if ($showAdvancedSearchTermsAndLinksInHeader): ?> - <?php /* finc: keep .no-margin-t or advanced search box will be pushed down too far (navbar-form) */ ?> - <div class="navbar-form navbar-left flip no-margin-t"> - <?php $tabs = $this->context($this)->renderInContext('search/searchTabs', ['searchTabs' => $tabConfig['tabs']]); ?> - <?php if (!empty($tabs)): ?><?=$tabs ?><div class="tab-content clearfix no-gutter-all"><?php endif; ?> - <p class="adv_search_terms"><?=$this->transEsc("Your search terms")?> : "<strong><?=$this->escapeHtml($this->lookfor)?></strong>"</p> - <p class="adv_search_links"> - <a href="<?=$this->url($advSearch)?>?edit=<?=$this->escapeHtmlAttr($this->searchId)?>"><?=$this->transEsc("Edit this Advanced Search")?></a> - <a href="<?=$this->url($advSearch) . $hiddenFilterParams?>"><?=$this->transEsc("Start a new Advanced Search")?></a> - <a href="<?=$this->url($searchHome) . $hiddenFilterParams?>"><?=$this->transEsc("Start a new Basic Search")?></a> - </p> - <?php /* finc: Don't load active filters here but above search results */ ?> - <?php /* - <?=$this->context($this)->renderInContext( - 'search/filters.phtml', - [ - 'params' => $params ?? null, - 'urlQuery' => isset($results) ? $results->getUrlQuery() : null, - 'filterList' => $showFilters ? $filterList : [], - 'checkboxFilters' => $showFilters ? $checkboxFilters : [], - 'searchClassId' => $this->searchClassId, - 'searchType' => $this->searchType, - ] - );?> - */ ?> - <?php if (!empty($tabs)): ?></div><?php endif; ?> - </div> - <?php endif; ?> +<?php + /* Do not show the advanced search terms (adv_search_terms) and advanced search links (adv_search_links) + * because they will be shown within the breadcrumb - #17720 - #22331 - #22361 + */ + $showBasicSearchAlways = true; +?> +<?php if ($this->searchType == 'advanced' && !$showBasicSearchAlways): ?> + <?php /* finc: keep .no-margin-t or advanced search box will be pushed down too far (navbar-form) */ ?> + <div class="navbar-form navbar-left flip no-margin-t"> + <?php $tabs = $this->context($this)->renderInContext('search/searchTabs', ['searchTabs' => $tabConfig['tabs']]); ?> + <?php if (!empty($tabs)): ?><?=$tabs ?><div class="tab-content clearfix no-gutter-all"><?php endif; ?> + <p class="adv_search_terms"><?=$this->transEsc("Your search terms")?> : "<strong><?=$this->escapeHtml($this->lookfor)?></strong>"</p> + <p class="adv_search_links"> + <a href="<?=$this->url($advSearch)?>?edit=<?=$this->escapeHtmlAttr($this->searchId)?>"><?=$this->transEsc("Edit this Advanced Search")?></a> + <a href="<?=$this->url($advSearch) . $hiddenFilterParams?>"><?=$this->transEsc("Start a new Advanced Search")?></a> + <a href="<?=$this->url($searchHome) . $hiddenFilterParams?>"><?=$this->transEsc("Start a new Basic Search")?></a> + </p> + <?php /* finc: Don't load active filters here but above search results */ ?> + <?php /* + <?=$this->context($this)->renderInContext( + 'search/filters.phtml', + [ + 'params' => $params ?? null, + 'urlQuery' => isset($results) ? $results->getUrlQuery() : null, + 'filterList' => $showFilters ? $filterList : [], + 'checkboxFilters' => $showFilters ? $checkboxFilters : [], + 'searchClassId' => $this->searchClassId, + 'searchType' => $this->searchType, + ] + );?> + */ ?> + <?php if (!empty($tabs)): ?></div><?php endif; ?> + </div> <?php else: ?> <?php /* finc adds role='search' */ ?> <form id="searchForm" class="searchForm navbar-form navbar-left flip" method="get" action="<?=$this->url($basicSearch)?>" name="searchForm" autocomplete="off" role="search"> <?= $this->context($this)->renderInContext('search/searchTabs', ['searchTabs' => $tabConfig['tabs']]); ?> <?php $placeholder = $this->searchbox()->getPlaceholderText($tabConfig['selected']['id'] ?? null); ?> <?php /* finc: keep "required", keep role="searchbox" */ ?> + <?php /* finc: leave lookfor blank if this is an advanced saerch - #22361 */ ?> <input id="searchForm_lookfor" class="searchForm_lookfor form-control search-query<?php if($this->searchbox()->autocompleteEnabled($this->searchClassId)):?> autocomplete searcher:<?=$this->escapeHtmlAttr($this->searchClassId) ?><?=$this->searchbox()->autocompleteAutoSubmit($this->searchClassId) ? ' ac-auto-submit' : '' ?><?php endif ?>" type="search" name="lookfor" - value="<?=$this->escapeHtmlAttr($this->lookfor)?>" + value="<?=$this->searchType !== 'advanced' ? $this->escapeHtmlAttr($this->lookfor) : ''?>" <?php if ($placeholder): ?> placeholder="<?=$this->transEsc($placeholder) ?>" <?php endif ?>