From d6c71cf275610b50a8ea5bd7590f15589892795e Mon Sep 17 00:00:00 2001
From: Claas Kazzer <kazzer@ub.uni-leipzig.de>
Date: Thu, 20 Apr 2017 15:01:09 +0200
Subject: [PATCH] refs #10275: * post BS-overhaul fixes incl. header and JS
 files

---
 themes/finc/images/headerlogo.png             | Bin 0 -> 4861 bytes
 themes/finc/scss/_customVariables.scss        |   2 +-
 themes/finc/scss/compiled.scss                |  38 ++++----
 .../Auth/AbstractBase/resetpassword.phtml     |  10 +--
 .../SolrDefault/collection-record.phtml       |  70 +++++++++++++++
 .../RecordDriver/SolrLido/core.phtml          |  18 ++--
 .../RecordDriver/SolrMarc/core.phtml          |   6 +-
 .../templates/RecordTab/hierarchytree.phtml   |   2 +-
 themes/finc/templates/RecordTab/topics.phtml  |   5 +-
 .../documentdeliveryservice/form.phtml        |  84 +++++++++---------
 themes/finc/templates/header.phtml            |   8 +-
 themes/finc/templates/layout/layout.phtml     |   4 +-
 themes/finc/templates/librarycards/home.phtml |  66 ++++++++++++++
 themes/finc/templates/myresearch/fines.phtml  |  56 ++++++++++++
 themes/finc/templates/record/emailhold.phtml  |   2 +-
 .../templates/search/advanced/limit.phtml     |  20 +++++
 .../templates/search/controls/limit.phtml     |   6 +-
 .../finc/templates/search/controls/sort.phtml |   2 +-
 18 files changed, 310 insertions(+), 89 deletions(-)
 create mode 100644 themes/finc/images/headerlogo.png
 create mode 100644 themes/finc/templates/RecordDriver/SolrDefault/collection-record.phtml
 create mode 100644 themes/finc/templates/librarycards/home.phtml
 create mode 100644 themes/finc/templates/myresearch/fines.phtml
 create mode 100644 themes/finc/templates/search/advanced/limit.phtml

diff --git a/themes/finc/images/headerlogo.png b/themes/finc/images/headerlogo.png
new file mode 100644
index 0000000000000000000000000000000000000000..e8f2483a48ea5a883570513a282a7e15cb251f22
GIT binary patch
literal 4861
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

literal 0
HcmV?d00001

diff --git a/themes/finc/scss/_customVariables.scss b/themes/finc/scss/_customVariables.scss
index 96970325bc6..144e187bf79 100644
--- a/themes/finc/scss/_customVariables.scss
+++ b/themes/finc/scss/_customVariables.scss
@@ -164,7 +164,7 @@ $content-top-padding: $grid-gutter-width / 4 !default;
 
 
 // BREADCRUMBS
-//// Separator between breadcrumb elements, use this variable to change it 
+//// Separator between breadcrumb elements, use this variable to change it
 //// $breadcrumb-separator: '/' !default;
 
 
diff --git a/themes/finc/scss/compiled.scss b/themes/finc/scss/compiled.scss
index e134e6b0b94..1cbd36c5150 100644
--- a/themes/finc/scss/compiled.scss
+++ b/themes/finc/scss/compiled.scss
@@ -3,14 +3,10 @@
 //  which includes finc plus all subsequent customizations
 //  i.e. finc's compiled.scss imports bootstrap3/scss/compiled - the house-specific branches such as
 //  de_15 then import finc/scss/compiled
-
 // 0. Note for developers
 // Do NOT EDIT  compiled.css
-
 // 1.   Define or re-define KEY VARIABLES and MIXINS (see 1.1 ff below) OR import your own
-
 @import 'customVariables';
-
 //@import 'customMixins';
 // 1.1  Unless imported, define standard colour variables here which are used in variables below prior to finc.scss import
 // e.g. $brand-primary: #008CBA !default;   // bondi-blue
@@ -20,7 +16,6 @@
 // $brand-success: #43AC6A !default;   // sea-green
 // $brand-warning: #f08a24 !default;   // carrot
 // 1.2  DO NOT define site-specific colours in finc - this will be done in site-specific themes
-
 // 2. For Media queries use:
 // Extra small screen / phone: '$screen-xs-min' (480px);
 // Small screen / tablet: '$screen-sm-min' (768px);
@@ -29,8 +24,6 @@
 // The maximum ranges are defined as the next higher element minus 1px, so:
 // '$screen-xs-max' = $screen-sm-min - 1
 // etc: you can use '$screen-xs-max', '$screen-sm-max' and '$screen-md-max'
-
-
 // 3. import entire BS or (instances) finc compiled.scss to have variables and mixins defined above applied to it
 @import 'bootstrap';
 // @import '../../finc/scss/compiled.scss'
@@ -283,7 +276,6 @@ select {
 
 // FORMS - END
 
-
 // IMAGES
 
 //// img {}
@@ -307,7 +299,6 @@ select {
 
 // IDs
 
-
 // CLASSES (Elements that are used in several places)
 //// DROPDOWNS
 //// remove padding as it creates space above/below menu items (e.g. language selector)
@@ -315,6 +306,7 @@ select {
   padding-bottom: 0;
   padding-top: 0;
 }
+
 //// HOVERABLE DROPDOWNS -- make DDs hoverable as in FNDTN
 // Add the dropdown-on-hover class to the parent li container! OR use on all (see commented-out part below)
 // Menu will show on hover
@@ -322,6 +314,11 @@ select {
   display: block;
 }
 
+//// OR use on ALL dropdowns like so
+//.dropdown:hover .dropdown-menu {
+//  display: block;
+//}
+
 //// ALERTS
 ////// Light Text on Dark BG
 .alert a {
@@ -402,6 +399,7 @@ select {
 }
 
 
+
 //// Source-id branding (WISO etc)
 .branding {
   display: none;
@@ -989,6 +987,11 @@ header,
   font-size: $font-size-breadcrumbs;
   padding-left: ($grid-gutter-width / 2 - 2px); // take 2 px off for borders
 
+  // Divider:
+  > li + li::before {
+    color: inherit;
+  }
+
   //// color of links in breadcrumbs
   a,
   > .active a {
@@ -1000,11 +1003,16 @@ header,
 
 // MAIN CONTENT (SIDEBAR BELOW, ADVANCED SEARCH BELOW)
 #content {
-  //// push content a little lower to allow for height of navbar/header, same needs to be applied to .sidebar, below!
+  // push content a little lower to allow for height of navbar/header, same needs to be applied to .sidebar, below!
   .row:first-of-type {
     padding-top: $content-top-padding;
 
-    //// for all widths that use Offcanvas (767px) ($screen-xs-max)
+    // correct content padding on subsequent rows
+    .row .row {
+      padding-top: 0;
+    }
+
+    // for all widths that use Offcanvas (767px) ($screen-xs-max)
     @media only screen and (max-width: $screen-xs-max) {
       padding-top: $content-top-padding * 4;
     }
@@ -1072,7 +1080,7 @@ footer .container {
 .savedLists {
 
   &.alert {
-    color: $state-light-text-on-dark;}
+    color: $state-light-text-on-dark; }
 
   ul {
     list-style: none;
@@ -1222,16 +1230,14 @@ footer .container {
   // Remove dotted lines around items when hovering over
   .close {
     &:hover,
-    &:focus { 
-        outline: none; 
-    }
+    &:focus {outline: none;}
   }
 }
+
 //// Advanced Search - END
 
 // MAIN CONTENT - END
 
-
 // SIDEBAR
 //// Add top padding to sidebar for better looks -- same as for #content, above
 .sidebar {
diff --git a/themes/finc/templates/Auth/AbstractBase/resetpassword.phtml b/themes/finc/templates/Auth/AbstractBase/resetpassword.phtml
index f3b57d8d7c9..e8ddd45f3b8 100644
--- a/themes/finc/templates/Auth/AbstractBase/resetpassword.phtml
+++ b/themes/finc/templates/Auth/AbstractBase/resetpassword.phtml
@@ -12,31 +12,31 @@ $this->headTitle($this->translate('Reset Password'));
 
   <div class="row">
     <label class="col-xs-5 col-sm-2"><?=$this->transEsc('First Name') ?>:</label>
-    <div class="col-xs-7 col-sm-4 columns end">
+    <div class="col-xs-7 col-sm-4">
       <input type="text" name="firstname" <?=isset($firstname) ? 'value="'.$firstname.'" ' : ''?>required />
     </div>
   </div>
   <div class="row">
     <label class="col-xs-5 col-sm-2"><?=$this->transEsc('Last Name') ?>:</label>
-    <div class="col-xs-7 col-sm-4 columns end">
+    <div class="col-xs-7 col-sm-4">
       <input type="text" name="lastname" <?=isset($lastname) ? 'value="'.$lastname.'" ' : ''?>required/>
     </div>
   </div>
   <div class="row">
     <label class="col-xs-5 col-sm-2"><?=$this->transEsc('Username') ?>:</label>
-    <div class="col-xs-7 col-sm-4 columns end">
+    <div class="col-xs-7 col-sm-4">
       <input type="text" name="username" <?=isset($username) ? 'value="'.$username.'" ' : ''?>required/>
     </div>
   </div>
   <div class="row">
     <label class="col-xs-5 col-sm-2"><?=$this->transEsc('Email') ?>:</label>
-    <div class="col-xs-7 col-sm-4 columns end">
+    <div class="col-xs-7 col-sm-4">
       <input type="email" name="email" <?=isset($email) ? 'value="'.$email.'" ' : ''?>required/>
     </div>
   </div>
   <?=$this->recaptcha()->html($this->useRecaptcha) ?>
   <div class="row">
-    <div class="col-sm-10 offset-sm-2 columns">
+    <div class="col-sm-10 offset-sm-2">
       <input class="btn btn-transparent" name="submit" type="submit" aria-label="submit form"  value="<?=$this->transEsc('recovery_title') ?>"/>
     </div>
   </div>
diff --git a/themes/finc/templates/RecordDriver/SolrDefault/collection-record.phtml b/themes/finc/templates/RecordDriver/SolrDefault/collection-record.phtml
new file mode 100644
index 00000000000..480dc26d79a
--- /dev/null
+++ b/themes/finc/templates/RecordDriver/SolrDefault/collection-record.phtml
@@ -0,0 +1,70 @@
+<h2><?=$this->escapeHtml($this->driver->getShortTitle() . ' ' . $this->driver->getSubtitle() . ' ' . $this->driver->getTitleSection())?></h2>
+<a href="<?=$this->recordLink()->getUrl($this->driver)?>"><?=$this->transEsc('View Full ' . ($this->driver->isCollection() ? 'Collection' : 'Record'))?></a>
+
+<table class="table table-striped">
+  <caption class="sr-only">
+    <?=$this->transEsc('Bibliographic Details')?>
+  </caption>
+  <? $summary = $this->driver->getSummary(); $summary = isset($summary[0]) ? $summary[0] : false; ?>
+  <? if ($summary): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc('Description')?>: </th>
+      <td><?=$this->escapeHtml($summary)?></td>
+    </tr>
+  <? endif; ?>
+
+  <? $authors = $this->driver->getDeduplicatedAuthors(); ?>
+  <? if (isset($authors['main']) && !empty($authors['main'])): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc(count($authors['main']) > 1 ? 'Main Authors' : 'Main Author')?>: </th>
+      <td>
+        <? $i = 0; foreach ($authors['main'] as $author => $roles): ?><?=($i++ == 0)?'':', '?><a href="<?=$this->record($this->driver)->getLink('author', $author)?>"><?=$this->escapeHtml($author)?></a><? if (count($roles) > 0): ?> (<? $j = 0; foreach ($roles as $role): ?><?=($j++ == 0)?'':', '?><?=$this->transEsc("CreatorRoles::" . $role)?><? endforeach; ?>)<? endif; ?><? endforeach; ?>
+      </td>
+    </tr>
+  <? endif; ?>
+
+  <? if (isset($authors['corporate']) && !empty($authors['corporate'])): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc(count($authors['corporate']) > 1 ? 'Corporate Author' : 'Corporate Authors')?>: </th>
+      <td>
+        <? $i = 0; foreach ($authors['corporate'] as $corporate => $roles): ?><?=($i++ == 0)?'':', '?><a href="<?=$this->record($this->driver)->getLink('author', $corporate)?>"><?=$this->escapeHtml($corporate)?></a><? if (count($roles) > 0): ?> (<? $j = 0; foreach ($roles as $role): ?><?=($j++ == 0)?'':', '?><?=$this->transEsc("CreatorRoles::" . $role)?><? endforeach; ?>)<? endif; ?><? endforeach; ?>
+      </td>
+    </tr>
+  <? endif; ?>
+
+  <? $langs = $this->driver->getLanguages(); if (!empty($langs)): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc('Language')?>: </th>
+      <td><? foreach ($langs as $lang): ?><?= $this->escapeHtml($lang)?><br/><? endforeach; ?></td>
+    </tr>
+  <? endif; ?>
+
+  <? $formats = $this->driver->getFormats(); if (!empty($formats)): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc('Format')?>: </th>
+      <td><?=$this->record($this->driver)->getFormatList()?></td>
+    </tr>
+  <? endif; ?>
+
+  <? $access = $this->driver->getAccessRestrictions(); if (!empty($access)): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc('Access')?>: </th>
+      <td>
+        <? foreach ($access as $field): ?>
+          <?=$this->escapeHtml($field)?><br/>
+        <? endforeach; ?>
+      </td>
+    </tr>
+  <? endif; ?>
+
+  <? $related = $this->driver->getRelationshipNotes(); if (!empty($related)): ?>
+    <tr valign="top">
+      <th><?=$this->transEsc('Related Items')?>: </th>
+      <td>
+        <? foreach ($related as $field): ?>
+          <?=$this->escapeHtml($field)?><br/>
+        <? endforeach; ?>
+      </td>
+    </tr>
+  <? endif; ?>
+</table>
diff --git a/themes/finc/templates/RecordDriver/SolrLido/core.phtml b/themes/finc/templates/RecordDriver/SolrLido/core.phtml
index c27e6bae14b..5368b178a3c 100644
--- a/themes/finc/templates/RecordDriver/SolrLido/core.phtml
+++ b/themes/finc/templates/RecordDriver/SolrLido/core.phtml
@@ -1,4 +1,4 @@
-<!-- recordDriver - solrLido - CORE.phtml -->
+<!-- recordDriver - solrLido - CORE -->
 <?
 if($loggedin = $this->auth()->isLoggedIn()) {
   $user_id = $loggedin->id;
@@ -12,7 +12,7 @@ if($loggedin = $this->auth()->isLoggedIn()) {
      $cover = $this->record($this->driver)->getCover('core', 'medium', $this->record($this->driver)->getThumbnail('large'));
      $preview = $this->record($this->driver)->getPreviews(); ?>
   <? if ($QRCode || $cover || $preview): ?>
-  <div class="medium-3 columns">
+  <div class="col-sm-3">
     <div class="text-center">
         <? /* Display thumbnail if appropriate: */ ?>
       <? if($cover): ?>
@@ -25,7 +25,7 @@ if($loggedin = $this->auth()->isLoggedIn()) {
 
         <? /* Display qrcode if appropriate: */ ?>
         <? if($QRCode): ?>
-        <span class="hide-for-small">
+        <span class="hidden-xs">
           <br/><img alt="<?=$this->transEsc('QR Code')?>" class="qrcode" src="<?=$this->escapeHtmlAttr($QRCode);?>"/>
         </span>
         <? endif; ?>
@@ -58,9 +58,9 @@ if($loggedin = $this->auth()->isLoggedIn()) {
     <? if ($preview): ?><?=$preview?><? endif; ?>
   </div>
 
-  <div class="medium-9 columns">
+  <div class="col-sm-9">
   <? else: ?>
-  <div class="medium-12 columns">
+  <div class="col-sm-12">
   <? endif; ?>
     <? /* This following line is a finc-specific change */ ?>
     <h3 property="name"><?=$this->escapeHtml($this->driver->getTitle())?></h3>
@@ -76,13 +76,13 @@ if($loggedin = $this->auth()->isLoggedIn()) {
 
     <? if ($this->userlist()->getMode() !== 'disabled'): ?>
       <? /* Display the lists that this record is saved to */ ?>
-      <div class="savedLists hide alert-box info" data-alert tabindex="0" aria-live="assertive" role="alertdialog">
+      <div class="savedLists hidden alert alert-info">
         <strong><?=$this->transEsc("Saved in")?>:</strong>
       </div>
     <? endif; ?>
 
     <?/* Display Main Details */?>
-    <table class="table">
+    <table class="table table-striped">
       <caption class="sr-only"><?=$this->transEsc('Bibliographic Details')?></caption>
       <? $journalTitle = $this->driver->getContainerTitle(); if (!empty($journalTitle)): ?>
       <tr>
@@ -402,7 +402,7 @@ if($loggedin = $this->auth()->isLoggedIn()) {
         <tr>
           <th><?=$this->transEsc('Tags')?>: </th>
           <td>
-            <span class="right hide-for-print">
+            <span class="right hidden-print">
               <a class="tagRecord right" href="<?=$this->recordLink()->getActionUrl($this->driver, 'AddTag')?>" data-lightbox><i class="fa fa-plus"></i><?=$this->transEsc('Add Tag')?></a>
             </span>
             <?=$this->context($this)->renderInContext('record/taglist', array('tagList'=>$tagList, 'loggedin'=>$loggedin)) ?>
@@ -413,4 +413,4 @@ if($loggedin = $this->auth()->isLoggedIn()) {
     <?/* End Main Details */?>
   </div>
 </div>
-<!-- recordDriver - solrLido - CORE.phtml end -->
\ No newline at end of file
+<!-- recordDriver - solrLido - CORE - END -->
diff --git a/themes/finc/templates/RecordDriver/SolrMarc/core.phtml b/themes/finc/templates/RecordDriver/SolrMarc/core.phtml
index 328f63a5c48..5c135bbcfc9 100644
--- a/themes/finc/templates/RecordDriver/SolrMarc/core.phtml
+++ b/themes/finc/templates/RecordDriver/SolrMarc/core.phtml
@@ -1,4 +1,4 @@
-<!-- recordDriver - solrMarc - CORE.phtml -->
+<!-- recordDriver - solrMarc - CORE -->
 <?
 if($loggedin = $this->auth()->isLoggedIn()) {
   $user_id = $loggedin->id;
@@ -57,7 +57,7 @@ if($loggedin = $this->auth()->isLoggedIn()) {
 
     <? if ($this->userlist()->getMode() !== 'disabled'): ?>
       <? /* Display the lists that this record is saved to */ ?>
-      <div class="savedLists hide alert alert-info" data-alert tabindex="0" aria-live="assertive" role="alertdialog">
+      <div class="savedLists hidden alert alert-info">
         <strong><?=$this->transEsc("Saved in")?>:</strong>
       </div>
     <? endif; ?>
@@ -392,4 +392,4 @@ if($loggedin = $this->auth()->isLoggedIn()) {
     <?/* End Main Details */?>
   </div>
 </div>
-<!-- recordDriver - solrMarc - CORE.phtml end -->
+<!-- recordDriver - solrMarc - CORE - END -->
diff --git a/themes/finc/templates/RecordTab/hierarchytree.phtml b/themes/finc/templates/RecordTab/hierarchytree.phtml
index 26546c10c41..8730329881d 100644
--- a/themes/finc/templates/RecordTab/hierarchytree.phtml
+++ b/themes/finc/templates/RecordTab/hierarchytree.phtml
@@ -45,7 +45,7 @@
       <div id="treeSearchNoResults" class="alert alert-danger hidden"><?=$this->translate('nohit_heading')?></div>
       <div id="treeSearchLimitReached" class="alert alert-danger hidden"><?=$this->translate('tree_search_limit_reached_html', array('%%url%%' => $this->url('search-results'), '%%limit%%' => $this->tab->getSearchLimit()))?></div>
     <? endif; ?>
-    <div id="hierarchyLoading" class="hide"><i class="fa fa-spinner fa-spin"></i> <?=$this->transEsc("Loading")?>...</div>
+    <div id="hierarchyLoading" class="hidden"><i class="fa fa-spinner fa-spin"></i> <?=$this->transEsc("Loading")?>...</div>
     <div id="hierarchyTree" class="hierarchy-tree">
       <input type="hidden" value="<?=$this->escapeHtml($this->driver->getUniqueId())?>" class="hiddenRecordId" />
       <input type="hidden" value="<?=$this->escapeHtml($activeTree)?>" class="hiddenHierarchyId" />
diff --git a/themes/finc/templates/RecordTab/topics.phtml b/themes/finc/templates/RecordTab/topics.phtml
index 7cc51f5571f..8dcb5694096 100644
--- a/themes/finc/templates/RecordTab/topics.phtml
+++ b/themes/finc/templates/RecordTab/topics.phtml
@@ -4,7 +4,10 @@
 $this->headTitle($this->translate('Topics') . ': ' . $this->driver->getBreadcrumb());
 
 ?>
-<table class="table table-striped" summary="<?=$this->transEsc('Topics')?>">
+<table class="table table-striped">
+  <caption class="sr-only">
+    <?=$this->transEsc('Topics')?>
+  </caption>
 <? if ($rvk = $this->driver->tryMethod('getRvkWithMetadata')): ?>
   <? $contentDisplayed = true; ?>
   <tr>
diff --git a/themes/finc/templates/documentdeliveryservice/form.phtml b/themes/finc/templates/documentdeliveryservice/form.phtml
index d586715fd34..d2bc7385958 100644
--- a/themes/finc/templates/documentdeliveryservice/form.phtml
+++ b/themes/finc/templates/documentdeliveryservice/form.phtml
@@ -24,57 +24,57 @@
         </div>
         <!-- phone -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sphone"><?=$this->transEsc("DDS::form_field_phone")?>:</label>
           </div>
           <? if (isset($this->error->phone)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->phone;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="sphone" name="subito[phone]" class="w-100" <?=(!empty($this->phone) ? 'value="' . $this->phone . '"' : '')?>/>
           </div>
         </div>
         <!-- email -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="semail"><?=$this->transEsc("DDS::form_field_email")?>:*</label>
            </div>
             <? if (isset($this->error->email)): ?>
-              <div class="medium-9 columns error-field">
+              <div class="col-sm-9 error-field">
                 <?=$this->error->email;?>
               </div>
             <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="semail" name="subito[email]" class="w-100" <?=(!empty($this->email) ? 'value="' . $this->email . '"' : '')?>/>
           </div>
         </div>
         <!-- user id -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="suserid"><?=$this->transEsc("DDS::form_field_library_id")?>:*</label>
           </div>
           <? if (isset($this->error->userid)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->userid;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="suserid" name="subito[userid]" class="w-100" <?=(!empty($this->userid) ? 'value="' . $this->userid . '"' : '')?>/>
           </div>
         </div>
         <!-- division -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sdivision"><?=$this->transEsc("DDS::form_field_division")?>:*</label>
           </div>
           <? if (isset($this->error->division)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->division;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <select id="sdivision" name="subito[division]" size="1" class="w-100"/>
             <option value=""></option>
             <? foreach ($this->divisions as $cat => $division): ?>
@@ -85,15 +85,15 @@
         </div>
         <!-- department -->
         <div class="row input-sdepartment">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sdepartment"><?=$this->transEsc("DDS::form_field_department")?>:*</label>
           </div>
           <? if (isset($this->error->department)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->department;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <select id="sdepartment" name="subito[department]" size="1" class="w-100"/>
             <option value=""></option>
             </select>
@@ -101,10 +101,10 @@
         </div>
         <!-- department medicine -->
         <div class="row input-department">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="smdepartment"><?=$this->transEsc("DDS::form_field_department")?>:*</label>
           </div>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="smdepartment" name="subito[inputdepartment]" class="w-100" <?=(!empty($this->inputdepartment) ? 'value="' . $this->inputdepartment . '"' : '')?>/>
           </div>
         </div>
@@ -116,118 +116,118 @@
 
         <!-- author -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sauthor"><?=$this->transEsc("DDS::form_field_author")?>:*</label>
           </div>
           <? if (isset($this->error->author)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->author;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="sauthor" name="subito[author]" class="w-100" <?=(!empty($this->author) ? 'value="' . $this->author . '"' : '')?>/>
           </div>
         </div>
         <!-- title of issue -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sarticle"><?=$this->transEsc("DDS::form_field_title")?>:</label>
           </div>
           <? if (isset($this->error->article)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->article;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="sarticle" name="subito[article]" class="w-100" <?=(!empty($this->article) ? 'value="' . $this->article . '"' : '')?>/>
           </div>
         </div>
         <!-- title of journal -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sjournal"><?=$this->transEsc("DDS::form_field_journal")?>:*</label>
           </div>
           <? if (isset($this->error->journal)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->journal;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="sjournal" name="subito[journal]" class="w-100" <?=(!empty($this->journal) ? 'value="' . $this->journal . '"' : '')?>/>
           </div>
         </div>
         <!-- issn -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sjournal"><?=$this->transEsc("ISSN")?>:</label>
         </div>
           <? if (isset($this->error->issn)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->issn;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="sissn" name="subito[issn]" class="w-100" <?=(!empty($this->issn) ? 'value="' . $this->issn . '"' : '')?>/>
           </div>
         </div>
         <!-- publish date -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="spublishdate"><?=$this->transEsc("DDS::form_field_publishing_date")?>:*</label>
           </div>
           <? if (isset($this->error->publishdate)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->publishdate;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="spublishdate" name="subito[publishdate]" class="w-100" <?=(!empty($this->publishdate) ? 'value="' . $this->publishdate . '"' : '')?>/>
           </div>
         </div>
         <!-- journal number -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="snumber"><?=$this->transEsc("DDS::form_field_volume")?>:*</label>
           </div>
           <? if (isset($this->error->number)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->number;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="snumber" name="subito[number]" class="w-100" <?=(!empty($this->number) ? 'value="' . $this->number . '"' : '')?>/>
           </div>
         </div>
         <!-- pages -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="spages"><?=$this->transEsc("DDS::form_field_pages")?>:*</label>
           </div>
           <? if (isset($this->error->pages)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->pages;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <input type="text" id="spages" name="subito[pages]" class="w-100" <?=(!empty($this->pages) ? 'value="' . $this->pages . '"' : '')?>/>
           </div>
         </div>
         <!-- remarks -->
         <div class="row">
-          <div class="medium-3 columns">
+          <div class="col-sm-3">
             <label class="inline" for="sremarks"><?=$this->transEsc("DDS::form_fields_remarks")?>:</label>
           </div>
           <? if (isset($this->error->remarks)): ?>
-            <div class="medium-9 columns error-field">
+            <div class="col-sm-9 error-field">
               <?=$this->error->remarks;?>
             </div>
           <? endif; ?>
-          <div class="medium-9 columns">
+          <div class="col-sm-9">
             <textarea id="sremarks" name="subito[remarks]" class="w-100"><?=(!empty($this->remarks) ? $this->remarks : '')?></textarea>
           </div>
         </div>
         <div class="row">
-          <div class="medium-9 columns medium-offset-3">
+          <div class="col-sm-9 offset-sm-3">
             <input role="button" type="submit" class="btn btn-primary" value="<?=$this->transEsc("DDS::form_button_submit")?>"/>
           </div>
         </div>
diff --git a/themes/finc/templates/header.phtml b/themes/finc/templates/header.phtml
index de2d32d0423..b87bc8ec865 100644
--- a/themes/finc/templates/header.phtml
+++ b/themes/finc/templates/header.phtml
@@ -1,4 +1,4 @@
-<!-- HEADER.PHTML begin -->
+<!-- HEADER begin -->
 <? $account = $this->auth()->getManager(); ?>
 
 <? /* This nav element is the sticky element in the header - CK */ ?>
@@ -124,8 +124,6 @@
         </nav>
       </div>
     <? endif; ?>
-
-
+  </div>
 </nav>
-</div>
-<!-- HEADER.PHTML end -->
\ No newline at end of file
+<!-- HEADER - END -->
\ No newline at end of file
diff --git a/themes/finc/templates/layout/layout.phtml b/themes/finc/templates/layout/layout.phtml
index 28ce76f251d..67475c65c0f 100644
--- a/themes/finc/templates/layout/layout.phtml
+++ b/themes/finc/templates/layout/layout.phtml
@@ -2,7 +2,9 @@
 <html lang="<?=$this->layout()->userLang?>">
 <head>
   <? $this->headThemeResources() ?>
-  <meta charset="utf-8">
+  <? /* remove meta because of Validator error - CK */
+       /*  <meta charset="utf-8">  */
+  ?>
   <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
   <meta name="viewport" content="width=device-width,initial-scale=1.0"/>
   <?=$this->headMeta()?>
diff --git a/themes/finc/templates/librarycards/home.phtml b/themes/finc/templates/librarycards/home.phtml
new file mode 100644
index 00000000000..1891c2f7ad8
--- /dev/null
+++ b/themes/finc/templates/librarycards/home.phtml
@@ -0,0 +1,66 @@
+<?
+    // Set up page title:
+    $this->headTitle($this->translate('Library Cards'));
+
+    // Set up breadcrumbs:
+    $this->layout()->breadcrumbs = '<li><a href="' . $this->url('myresearch-home') . '">' . $this->transEsc('Your Account') . '</a></li> <li class="active">' . $this->transEsc('Library Cards') . '</li>';
+?>
+<div class="row">
+  <div class="<?=$this->layoutClass('mainbody')?>">
+
+    <?=$this->flashmessages()?>
+
+    <h2><?=$this->transEsc('Library Cards')?></h2>
+    <? if ($this->libraryCards->count() == 0): ?>
+      <div><?=$this->transEsc('You do not have any library cards')?></div>
+    <? else: ?>
+      <table class="table table-striped">
+        <caption class="sr-only">
+          <?=$this->transEsc('Library Cards')?>
+        </caption>
+      <tr>
+        <th><?=$this->transEsc('Library Card Name')?></th>
+        <? if ($this->multipleTargets): ?>
+        <th><?=$this->transEsc('login_target')?></th>
+        <? endif; ?>
+        <th><?=$this->transEsc('Username')?></th>
+        <th>&nbsp;</th>
+      </tr>
+      <? foreach ($this->libraryCards as $record): ?>
+        <tr>
+          <td><?=$this->escapeHtml($record['card_name'])?></td>
+          <? $username = $record['cat_username']; if ($this->multipleTargets): ?>
+            <? $target = ''; ?>
+            <? if (strstr($username, '.')): ?>
+              <? list($target, $username) = explode('.', $username, 2); ?>
+            <? endif; ?>
+            <td><?=$target ? $this->transEsc("source_$target", null, $target) : '&nbsp;' ?></td>
+          <? endif; ?>
+          <td><?=$this->escapeHtml($username)?></td>
+          <td>
+            <div class="btn-group">
+              <a class="btn btn-link" href="<?=$this->url('editLibraryCard') . $this->escapeHtmlAttr($record['id']) ?>" title="<?=$this->transEsc('Edit Library Card')?>"><i class="fa fa-edit"></i> <?=$this->transEsc('Edit')?></a>
+              <a class="btn btn-link dropdown-toggle" data-toggle="dropdown" href="<?=$this->url('librarycards-deletecard') ?>?cardID=<?=urlencode($record['id'])?>">
+                <i class="fa fa-trash-o"></i> <?=$this->transEsc('Delete')?>
+              </a>
+              <ul class="dropdown-menu">
+                <li><a href="<?=$this->url('librarycards-deletecard') ?>?cardID=<?=urlencode($record['id'])?>&amp;confirm=1"><?=$this->transEsc('confirm_dialog_yes') ?></a></li>
+                <li><a href="#"><?=$this->transEsc('confirm_dialog_no')?></a></li>
+              </ul>
+            </div>
+          </td>
+        </tr>
+      <? endforeach; ?>
+      </table>
+    <? endif; ?>
+
+    <div class="btn-group">
+      <a href="<?=$this->url('editLibraryCard') ?>NEW" class="btn btn-link"><i class="fa fa-edit"></i> <?=$this->transEsc('Add a Library Card')?></a>
+    </div>
+  </div>
+
+  <div class="<?=$this->layoutClass('sidebar')?>">
+    <?=$this->context($this)->renderInContext("myresearch/menu.phtml", array('active' => 'librarycards'))?>
+  </div>
+
+</div>
diff --git a/themes/finc/templates/myresearch/fines.phtml b/themes/finc/templates/myresearch/fines.phtml
new file mode 100644
index 00000000000..a1fe30686df
--- /dev/null
+++ b/themes/finc/templates/myresearch/fines.phtml
@@ -0,0 +1,56 @@
+<?
+    // Set up page title:
+    $this->headTitle($this->translate('My Fines'));
+
+    // Set up breadcrumbs:
+    $this->layout()->breadcrumbs = '<li><a href="' . $this->url('myresearch-home') . '">' . $this->transEsc('Your Account') . '</a></li> <li class="active">' . $this->transEsc('Fines') . '</li>';
+?>
+<div class="<?=$this->layoutClass('mainbody')?>">
+  <h2><?=$this->transEsc('Your Fines')?></h2>
+  <?=$this->flashmessages()?>
+
+  <?=$this->context($this)->renderInContext('librarycards/selectcard.phtml', array('user' => $this->auth()->isLoggedIn())); ?>
+
+  <? if (empty($this->fines)): ?>
+    <?=$this->transEsc('You do not have any fines')?>
+  <? else: ?>
+    <table class="table table-striped">
+      <caption class="sr-only">
+        <?=$this->transEsc('Your Fines')?>
+      </caption>
+    <tr>
+      <th><?=$this->transEsc('Title')?></th>
+      <th><?=$this->transEsc('Checked Out')?></th>
+      <th><?=$this->transEsc('Due Date')?></th>
+      <th><?=$this->transEsc('Fine')?></th>
+      <th><?=$this->transEsc('Fee')?></th>
+      <th><?=$this->transEsc('Balance')?></th>
+    </tr>
+    <? $totalDue = 0; ?>
+    <? foreach ($this->fines as $record): ?>
+      <tr>
+        <td>
+          <? if (empty($record['title'])): ?>
+            <?=$this->transEsc('not_applicable')?>
+          <? elseif (!isset($record['driver']) || !is_object($record['driver'])): ?>
+            <?=$this->escapeHtml(trim($record['title'], '/:'))?>
+          <? else: ?>
+            <a href="<?=$this->recordLink()->getUrl($record['driver'])?>"><?=$this->escapeHtml(trim($record['title'], '/:'))?></a>
+          <? endif; ?>
+        </td>
+        <td><?=isset($record['checkout']) ? $this->escapeHtml($record['checkout']) : ''?></td>
+        <td><?=isset($record['duedate']) ? $this->escapeHtml($record['duedate']) : ''?></td>
+        <td><?=isset($record['fine']) ? $this->escapeHtml($record['fine']) : ''?></td>
+        <td><?=isset($record['amount']) ? $this->safeMoneyFormat($record['amount']/100.00) : ''?></td>
+        <td><?=isset($record['balance']) ? $this->safeMoneyFormat($record['balance']/100.00) : ''?></td>
+      </tr>
+      <? $totalDue += $record['balance']; ?>
+    <? endforeach; ?>
+      <tr style="font-weight:bold"><td colspan="5"><?=$this->transEsc('Total Balance Due')?></td><td><?=$this->safeMoneyFormat($totalDue/100.00) ?></td></tr>
+    </table>
+  <? endif; ?>
+</div>
+
+<div class="<?=$this->layoutClass('sidebar')?>">
+  <?=$this->context($this)->renderInContext("myresearch/menu.phtml", array('active' => 'fines'))?>
+</div>
diff --git a/themes/finc/templates/record/emailhold.phtml b/themes/finc/templates/record/emailhold.phtml
index 18556f62e1f..24b17785b1d 100644
--- a/themes/finc/templates/record/emailhold.phtml
+++ b/themes/finc/templates/record/emailhold.phtml
@@ -66,7 +66,7 @@
               </option>
             <? endif; ?>
             <? foreach ($this->pickup as $lib): ?>
-              <option value="<?=$this->escapeHtmlAttr($lib['locationID'])?>"<?=($selected == $lib['locationID']) ? ' selected="selected"' : ''?>>
+              <option value="<?=$this->escapeHtmlAttr($lib['locationID'])?>" <?=($selected == $lib['locationID']) ? ' selected="selected"' : ''?>>
                 <?=$this->escapeHtml($lib['locationDisplay'])?>
               </option>
             <? endforeach; ?>
diff --git a/themes/finc/templates/search/advanced/limit.phtml b/themes/finc/templates/search/advanced/limit.phtml
new file mode 100644
index 00000000000..2158c668cb3
--- /dev/null
+++ b/themes/finc/templates/search/advanced/limit.phtml
@@ -0,0 +1,20 @@
+<!-- Search - advanced - limit -->
+<?
+    // Set up convenience variables:
+    $limitList = $this->options->getLimitOptions();
+
+    // If a previous limit was used, make that the default; otherwise, use the "default default"
+    $lastLimit = $this->searchMemory()->getLastLimit($this->options->getSearchClassId());
+    $defaultLimit = empty($lastLimit) ? $this->options->getDefaultLimit() : $lastLimit;
+?>
+<? if (count($limitList) > 1): ?>
+  <fieldset class="col-sm-4">
+    <legend><?=$this->transEsc('Results per page')?></legend>
+    <select id="limit" name="limit" class="form-control">
+      <? foreach ($limitList as $limitVal): ?>
+        <option value="<?=$this->escapeHtmlAttr($limitVal)?>" <?=($limitVal == $defaultLimit) ? 'selected="selected"' : ''?>><?=$this->escapeHtml($limitVal)?></option>
+      <? endforeach; ?>
+    </select>
+  </fieldset>
+<? endif; ?>
+<!-- Search - advanced - limit - END -->
diff --git a/themes/finc/templates/search/controls/limit.phtml b/themes/finc/templates/search/controls/limit.phtml
index acf3855fbe7..aba8023d5ce 100644
--- a/themes/finc/templates/search/controls/limit.phtml
+++ b/themes/finc/templates/search/controls/limit.phtml
@@ -1,4 +1,4 @@
-<!-- search - controls - LIMIT.phtml -->
+<!-- search - controls - LIMIT -->
 <? $limitList = $this->params->getLimitList(); ?>
 <? if (count($limitList) > 1): ?>
   <? /* Do not use form-inline as it messes up the select box */ ?>
@@ -7,10 +7,10 @@
     <? /* Do not use form-control as it messes up the select box */ ?>
     <select id="limit" name="limit" class="jumpMenu">
       <? foreach ($limitList as $limitVal => $limitData): ?>
-        <option value="<?=$this->escapeHtmlAttr($limitVal)?>"<?=$limitData['selected']?' selected="selected"':''?>><?=$this->escapeHtml($limitData['desc'])?></option>
+        <option value="<?=$this->escapeHtmlAttr($limitVal)?>" <?=$limitData['selected']? ' selected="selected" ':'' ?>><?=$this->escapeHtml($limitData['desc'])?></option>
       <? endforeach; ?>
     </select>
     <noscript><input type="submit" value="<?=$this->transEsc("Set")?>" /></noscript>
   </form>
 <? endif; ?>
-<!-- search - controls - LIMIT.phtml - end -->
+<!-- search - controls - LIMIT - END -->
diff --git a/themes/finc/templates/search/controls/sort.phtml b/themes/finc/templates/search/controls/sort.phtml
index 9eb01a7d84c..75069438555 100644
--- a/themes/finc/templates/search/controls/sort.phtml
+++ b/themes/finc/templates/search/controls/sort.phtml
@@ -7,7 +7,7 @@
     <? /* Do not use form-control as it messes up the select box */ ?>
     <select id="sort_options_1" name="sort" class="jumpMenu">
       <? foreach ($list as $sortType => $sortData): ?>
-        <option value="<?=$this->escapeHtmlAttr($sortType)?>"<?=$sortData['selected']?' selected="selected"':''?>><?=$this->transEsc($sortData['desc'])?></option>
+        <option value="<?=$this->escapeHtmlAttr($sortType)?>" <?=$sortData['selected']?' selected="selected"':''?>><?=$this->transEsc($sortData['desc'])?></option>
       <? endforeach; ?>
     </select>
     <noscript><input type="submit" class="btn btn-primary" value="<?=$this->transEsc("Set")?>" /></noscript>
-- 
GitLab