From 4726f5bd01c8111bcb5571d37db98e61ab291228 Mon Sep 17 00:00:00 2001 From: Claas Kazzer <kazzer@ub.uni-leipzig.de> Date: Thu, 20 Jun 2019 08:45:04 +0200 Subject: [PATCH] refs #15418 [fid_bbi] styling result list * switches on bookbag * unhides saved in favorites block in result list * moves collection info for defaultRecord below data and items block, right-alogned * changes icon size for bookbag to correspond to favorites * removes fa-2x as this leads to wrong display in detail view * adds css rule for large size in result list * adds mixin to make items sr-only rather than hide them * applies mixin to cart labels in result list * relabels E-Mail this in cart tools to be same as E-mail this in Search tools * changes cart icon in header * resets check_saved_statuses for testing * changes padding in Saved in Favorites box * reinstates 'hidden' to savedLists --- fid_bbi/alpha/config/vufind/config.ini | 2 - fid_bbi/config/vufind/config.ini | 1 + fid_bbi/languages/de.ini | 2 +- fid_bbi/languages/en.ini | 2 +- themes/fid_bbi/js/check_save_statuses.js | 5 ++- themes/fid_bbi/scss/_customMixins.scss | 11 +++++ themes/fid_bbi/scss/compiled.scss | 44 ++++++++++++++++++- .../DefaultRecord/result-list.phtml | 17 +++++-- themes/fid_bbi/templates/header.phtml | 2 +- .../templates/record/cart-buttons.phtml | 25 +++++++++++ 10 files changed, 99 insertions(+), 12 deletions(-) create mode 100644 themes/fid_bbi/templates/record/cart-buttons.phtml diff --git a/fid_bbi/alpha/config/vufind/config.ini b/fid_bbi/alpha/config/vufind/config.ini index e7b2e9a5279..4d695feb072 100644 --- a/fid_bbi/alpha/config/vufind/config.ini +++ b/fid_bbi/alpha/config/vufind/config.ini @@ -26,8 +26,6 @@ debug = false [Site] url = "https://alpha.finc.info/vufind2/fid_bbi" -showBookBag = true -offcanvas=true [Database] database = "mysql://vufind_fidbbi:i3lIPQTBmbSGmzipQHjOPrzmUfUuiDiA@localhost/vufind_fidbbi" diff --git a/fid_bbi/config/vufind/config.ini b/fid_bbi/config/vufind/config.ini index 3693516f552..43a47c29bf7 100644 --- a/fid_bbi/config/vufind/config.ini +++ b/fid_bbi/config/vufind/config.ini @@ -40,6 +40,7 @@ title = "FID Buch-, Bibliotheks- und Informationswissenschaft" hideHoldingsTabWhenEmpty = true ;sidebarOnLeft = false offcanvas = true +showBookBag = true [Http] ; Pfad zu SSL-Zertifikaten in der docker-VM (global für CentOS konfiguriert) diff --git a/fid_bbi/languages/de.ini b/fid_bbi/languages/de.ini index d3602757f6f..67907d0318f 100644 --- a/fid_bbi/languages/de.ini +++ b/fid_bbi/languages/de.ini @@ -297,7 +297,7 @@ Electronic Resource (Remote Access) = "Elektronische Ressource im Fernzugriff" Electronic Resources = Online-Ressourcen Electronic Serial = "Elektronische Zeitschrift" Electronic Thesis = "Elektronische Hochschulschrift" -Email = "E-Mail" +Email = "Versenden" Email Address = "E-Mail-Adresse" Email Record = "E-Mail-Eintrag" Email address is invalid = "Die E-Mail-Adresse ist ungültig" diff --git a/fid_bbi/languages/en.ini b/fid_bbi/languages/en.ini index abe35292ecc..ec60997a72f 100644 --- a/fid_bbi/languages/en.ini +++ b/fid_bbi/languages/en.ini @@ -68,7 +68,7 @@ Edition = Edition Electronic = "Electronic Resource" Electronic Resources = "Electronic Resources" Electronicjournal = "Electronic Journal" -Email = E-Mail +Email = E-Mail this Email Address = "E-Mail Address" Email Record = "E-Mail Record" Email address is invalid = "E-mail address is invalid" diff --git a/themes/fid_bbi/js/check_save_statuses.js b/themes/fid_bbi/js/check_save_statuses.js index f9265294adc..856b8f98515 100644 --- a/themes/fid_bbi/js/check_save_statuses.js +++ b/themes/fid_bbi/js/check_save_statuses.js @@ -7,6 +7,7 @@ function displaySaveStatus(itemLists, $item) { var html = '<ul>' + itemLists.map(function convertToLi(l) { return '<li><a href="' + l.list_url + '">' + htmlEncode(l.list_title) + '</a></li>'; }).join('') + '</ul>'; + // favorites icon toggle - GG var id = $item.find('.hiddenId').val(); $item.find('#fav-icon'+id).removeClass('fa-star-o').addClass('fa-star'); $item.find('.savedLists').addClass('loaded'); @@ -86,9 +87,9 @@ function saveQueueAjax(obj, el) { saveStatusEls[obj.source + '|' + obj.id] = el; saveStatusTimer = setTimeout(runSaveAjaxForQueue, saveStatusDelay); el.addClass('js-save-pending'); - /*el.find('.savedLists') + el.find('.savedLists') .removeClass('loaded hidden') - .append('<span class="js-load">' + VuFind.translate('loading') + '...</span>');*/ + .append('<span class="js-load">' + VuFind.translate('loading') + '...</span>'); el.find('.savedLists ul').remove(); } diff --git a/themes/fid_bbi/scss/_customMixins.scss b/themes/fid_bbi/scss/_customMixins.scss index e69de29bb2d..ffbfc2dc4c1 100644 --- a/themes/fid_bbi/scss/_customMixins.scss +++ b/themes/fid_bbi/scss/_customMixins.scss @@ -0,0 +1,11 @@ +// use to show items to screen readers only // FIXME: Remove, when #15438 has been merged +@mixin sr-only { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + height: auto; + margin: 0; + overflow: hidden; + padding: 0; + position: absolute; + width: auto; +} \ No newline at end of file diff --git a/themes/fid_bbi/scss/compiled.scss b/themes/fid_bbi/scss/compiled.scss index 1fa8a65020c..e5919c80c04 100644 --- a/themes/fid_bbi/scss/compiled.scss +++ b/themes/fid_bbi/scss/compiled.scss @@ -271,8 +271,50 @@ input.searchFormKeepFilters { } } +// Content +// SEARCH TOOLS +.searchtools { + display: block; + margin: 0 0 1em; +} + +.result:nth-of-type(2n) { + background-color: $brand-primary-light; +} + +// RESULT LIST +.result-links { + // move favorites and other icons to the right + text-align: right; +} + +//// Saved in Favorites Block +.savedLists { + padding: 5px; + text-align: left; +} + +//// Bookbag Icons +.cart-link-icon.fa { + margin-right: 0; + + // Make same size as favs in result list + .template-name-results & { + font-size: 2em; + } +} + +//// Bookbag Labels - hide in result list +.template-name-results .cart-link-label { + @include sr-only; +} + +//// Collection Info (in new location) +.collection-details { + text-align: right; +} -// MyResearch / Account +// MyRESEARCH / Account //// Make tables align better .template-name-profile { .mainbody tr:first-of-type th { diff --git a/themes/fid_bbi/templates/RecordDriver/DefaultRecord/result-list.phtml b/themes/fid_bbi/templates/RecordDriver/DefaultRecord/result-list.phtml index e085be91da4..f6af201e907 100644 --- a/themes/fid_bbi/templates/RecordDriver/DefaultRecord/result-list.phtml +++ b/themes/fid_bbi/templates/RecordDriver/DefaultRecord/result-list.phtml @@ -148,15 +148,15 @@ $i = 0; <div class="left"><?=$formats[0]?></div> <?php endif; ?> - <?php + <?php /* fid_bbi: Collection info moved from here to record-links section below - CK */ ?> + <?php /* $collection = $this->driver->tryMethod('getMegaCollection'); if (!empty($collection)): ?> <div class="right"><?=$collection[0]?></div> - <?php endif; ?> + <?php endif; */?> </div> </div> <div class="result-links hidden-print"> - <?php if ($this->cart()->isActiveInSearch() && $this->params->getOptions()->supportsCart() && $this->cart()->isActive()): ?> <?=$this->render('record/cart-buttons.phtml', ['id' => $this->driver->getUniqueId(), 'source' => $this->driver->getSourceIdentifier()]);?><br/> <?php endif; ?> @@ -180,7 +180,7 @@ $i = 0; <?php $trees = $this->driver->tryMethod('getHierarchyTrees'); if (!empty($trees)): ?> <?php foreach ($trees as $hierarchyID => $hierarchyTitle): ?> - <div class="hierarchyTreeLink"> + <div class="hierarchyTreeLink hidden"> <input type="hidden" value="<?=$this->escapeHtmlAttr($hierarchyID)?>" class="hiddenHierarchyId"/> <a class="hierarchyTreeLinkText result-link-label" data-lightbox href="<?=$this->recordLink()->getTabUrl($this->driver, 'HierarchyTree')?>?hierarchy=<?=urlencode($hierarchyID)?>#tabnav" title="<?=$this->transEsc('hierarchy_tree')?>" data-lightbox-href="<?=$this->recordLink()->getTabUrl($this->driver, 'AjaxTab')?>?hierarchy=<?=urlencode($hierarchyID)?>" data-lightbox-post="tab=hierarchytree"> <i class="result-link-icon fa fa-fw fa-sitemap fa-2x" aria-hidden="true"></i> @@ -192,6 +192,15 @@ $i = 0; <?=$this->driver->supportsCoinsOpenUrl() ? '<span class="Z3988" title="' . $this->escapeHtmlAttr($this->driver->getCoinsOpenUrl()) . '"></span>' : ''?> </div> + <?php /* fid_bbi: Collection info moved here - CK */ ?> + <div class="collection-details"> + <?php + $collection = $this->driver->tryMethod('getMegaCollection'); + if (!empty($collection)): ?> + <?=$collection[0]?> + <?php endif; ?> + </div> + <?php /* fid_bbi: Collection info moved here - END */ ?> </div> <?php if ($thumbnail && $thumbnailAlignment == 'right'): ?> <?=$thumbnail?> diff --git a/themes/fid_bbi/templates/header.phtml b/themes/fid_bbi/templates/header.phtml index ccc9cea35a9..0d13f5f2ce6 100644 --- a/themes/fid_bbi/templates/header.phtml +++ b/themes/fid_bbi/templates/header.phtml @@ -36,7 +36,7 @@ if ($cart->isActive()): ?> <li id="cartSummary"> <a id="cartItems" class="btn" data-lightbox title="<?=$this->transEsc('View Book Bag')?>" href="<?=$this->url('cart-home')?>"> - <i class="fa fa-clipboard" aria-hidden="true"></i> <strong><?=count($cart->getItems())?></strong> <span class="cart-label"><?=$this->transEsc('items')?></span> + <i class="fa fa-thumb-tack" aria-hidden="true"></i> <strong><?=count($cart->getItems())?></strong> <span class="cart-label"><?=$this->transEsc('items')?></span> <span class="hidden-sm full<?=!$cart->isFull() ? ' hidden' : ''?>">(<?=$this->transEsc('bookbag_full')?>)</span> </a> </li> diff --git a/themes/fid_bbi/templates/record/cart-buttons.phtml b/themes/fid_bbi/templates/record/cart-buttons.phtml new file mode 100644 index 00000000000..54cdd8f7dec --- /dev/null +++ b/themes/fid_bbi/templates/record/cart-buttons.phtml @@ -0,0 +1,25 @@ +<!-- fid_bbi: record - cart-buttons --> +<?php $cart = $this->cart(); ?> +<?php if ($cart->isActive()): ?> + + <?php $cartId = $this->source . '|' . $this->id; ?> + <span class="btn-bookbag-toggle" data-cart-id="<?=$this->escapeHtmlAttr($this->id)?>" data-cart-source="<?=$this->escapeHtmlAttr($this->source)?>"> + <a class="cart-add hidden<?php if (!$cart->contains($cartId)): ?> correct<?php endif ?>"> + <i class="cart-link-icon fa fa-plus" aria-hidden="true" title="<?=$this->transEsc('Add to Book Bag')?>"></i><span class="cart-link-label"><?=$this->transEsc('Add to Book Bag')?></span> + </a> + <a class="cart-remove hidden<?php if ($cart->contains($cartId)): ?> correct<?php endif ?>"> + <i class="cart-link-icon fa fa-minus-circle" aria-hidden="true" title="<?=$this->transEsc('Remove from Book Bag')?>"></i> <span class="cart-link-label"><?=$this->transEsc('Remove from Book Bag')?></span> + </a> + <noscript> + <form method="post" name="addForm" action="<?=$this->url('cart-processor')?>"> + <input type="hidden" name="ids[]" value="<?=$this->escapeHtmlAttr($cartId)?>"/> + <?php if ($cart->contains($cartId)): ?> + <input class="btn btn-default" type="submit" name="delete" value="<?=$this->transEsc('Remove from Book Bag')?>"/> + <?php else: ?> + <input class="btn btn-default" type="submit" name="add" value="<?=$this->transEsc('Add to Book Bag')?>"/> + <?php endif; ?> + </form> + </noscript> + </span> +<?php endif; ?> +<!-- fid_bbi: record - cart-buttons END --> -- GitLab