The OPAC was originally featured a search results facets box that would
collapse at narrower browser widths and show a "Refine your search" link
under the breadcrumbs menu. At some point this broke, with the "Refine
your search" link appearing at the bottom instead.
This patch revises the page to restore the previous behavior.
To test, apply the patch and rebuild the OPAC CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Perform catalog search in the OPAC which will return multiple results.
- View the page at various browser widths. At narrower widths the facets
menu should appear as a "collapsed" box with a "Refine your search"
link.
- Clicking the link should toggle the facets menu visibility.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch adds enquire.js to the print slip template in order to
prevent a JS error.
Also removed is a line from global.js which was added in the previous
patch and which was an unwanted change.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch refactors the code around JavaScript-driven responsive
behavior in the OPAC. The use of Modernizr dropped and the dependency
removed.
This patch also adds a missing listing for Enquire.js licensing on the
"About" page.
To test, apply the patch and perform a catalog search in the OPAC.
- Narrow your browser window until its width falls below 609 pixels
(Using your browser's Responsive Design Mode is helpful for this, e.g.
https://developer.mozilla.org/en-US/docs/Tools/Responsive_Design_Mode)
- The window should automatically scroll to the "main content" area, in
this case the section headed by "Your search returned..."
- Change your browser window's width until it falls below 768 pixels.
- Scroll to the bottom of the search results where you should find the
"Refine your search" facets box collapsed.
- As you increase your browser width above 768 pixels the facets box
should expand.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch adds enquire.js to the print slip template in order to
prevent a JS error.
Also removed is a line from global.js which was added in the previous
patch and which was an unwanted change.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch refactors the code around JavaScript-driven responsive
behavior in the OPAC. The use of Modernizr dropped and the dependency
removed.
This patch also adds a missing listing for Enquire.js licensing on the
"About" page.
To test, apply the patch and perform a catalog search in the OPAC.
- Narrow your browser window until its width falls below 609 pixels
(Using your browser's Responsive Design Mode is helpful for this, e.g.
https://developer.mozilla.org/en-US/docs/Tools/Responsive_Design_Mode)
- The window should automatically scroll to the "main content" area, in
this case the section headed by "Your search returned..."
- Change your browser window's width until it falls below 768 pixels.
- Scroll to the bottom of the search results where you should find the
"Refine your search" facets box collapsed.
- As you increase your browser width above 768 pixels the facets box
should expand.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch removes the use of a specific "title-numeric" sorting routine
from the DataTables configuration of the "Most popular" table. We can
use a "data-order" attribute instead.
The patch also removes the now unused code from our custom DataTables JS
file in both the OPAC and the staff interface (where it was unused).
To test, apply the patch and make sure the OpacTopissue system
preference is enabled.
- In the OPAC, view the "Most popular" page.
- Change the filter settings, if necessary, to get multiple results.
- In the results table, confirm that sorting by number of checkouts
still works correctly.
A search of the code for instances of "title-numeric" should return only
one in a comment in the official DataTables library.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch updates the call to overdrive_proxy to allow passing a version
and updates the code to use V2 for availability
To test:
1 - Enable OverDrive integration by setting the sysprefs
2 - Log in to your overdrive account in the Koha opac
3 - Perform a search and note availability display
4 - Confirm you can checkout/hold/return books
5 - Apply patch
6 - Repeat search and test functionality
7 - Note that title with '0 out of 0 copies available' now say 'Currently unavailable'
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch modifies the checkout_download_url routine in
WebSerivce::ILS::OverDrive::Patron
We now directly hit the fulfillment endpoint with redirects disabled
and fetch the URL
The overdrive.js is modified to use a single 'Get item' button for all
checked out items and to refer to the fulfillment page
To test:
1 - Enable all OverDrive system preferences
2 - Search on opac and confirm OD results returned
3 - Checkout an item
4 - Confirm you have the new 'Get item' button on 'OverDrive account'
tab on opac-user.pl
5 - Confirm the 'Get item' button works
NOTE:
Most items will also show the 'Get item' button in results, however,
magazines may not as each checkout has a unique 'reserve id' and the
'parent' id is not checked in our current code
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch corrects the markup of the modal which is displayed when the
user clicks the "Download as" button in their list of OverDrive
checkouts. The modal markup had not been updated in the conversion to
Bootstrap 4.
I have also modified the markup generated when listing the download
format options so that they use some standard Bootstrap 4 classes,
improving the layout a little.
To test you must have valid credentials entered in system preferences
for the OverDrive API. You should test using a patron who has holds and
current checkouts in OverDrive.
Apply the patch and log in to the OPAC.
- On the "Your summary" page, open the "OverDrive Account" tab.
- Log in to your OverDrive account.
- In the list of current checkouts, click the "Download as" button for
one of the titles.
- A modal window should display with a list of radio buttons for
each available format.
- Confirm that the format text acts as the label for the radio
button.
- Confirm that closing the modal without making a selection works
correctly.
- Confirm that making a selection and submitting the form closes
the modal and submits your choice.
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch makes changes to the way HTML is generated when showing
output from OverDrive integration:
- Buttons have Bootstrap button classes
- Layout of information is improved.
- Handling of cover image thumbnails is improved, especially in cases
where images were much larger than expected.
- An OverDrive-specific CSS file is added.
To test you must have valid credentials entered in system preferences
for the OverDrive API. You should test using a patron who has holds and
current checkouts in OverDrive.
Apply the patch and log in to the OPAC.
- On the "Your summary" page, open the "OverDrive Account" tab.
- Log in to your OverDrive account.
- The contents of the tab should display well, with item
thumbnails showing in a column to the left, and item information
showing to the right.
- Controls should be styled with standard Bootstrap style.
- Confirm that operations work correctly: Acessing titles, checking
in, canceling holds, etc.
- Perform a catalog search which will return results also found in your
OverDrive collection.
- Open the OverDrive results page.
- The page should display correctly, especially thumbnails.
- Confirm that operations work correctly: Checking out and placing
holds.
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch makes changes to the OPAC Cart's CSS and JS so that the cart
pop-up message display more consistently. The CSS is changed to use
position "fixed" instead of "absolute." This allows the message to
display without recalculating the position every time, and keeps the
appearance we expect.
The z-index of the message is also increase to prevent it from being
hidden behind a floating toolbar.
To test, apply the patch and rebuild the OPAC CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Perform a catalog search in the OPAC which will return multiple
results.
- In the list of search results, click the "Add to cart" link next to
several search results. Each time you should see a message appear in
the upper left corner of the screen, "The item has been added to the
cart."
- The position of the messages should be consistent no matter how far
down the page you scroll.
- Test again after adding content to the OpacHeader region. One way to
do this is to add the following to the OpacUserJS preference:
$(document).ready(function(){
$("#wrapper").prepend('<img src="https://generative-placeholders.glitch.me/image?width=900&height=200&style=triangles&gap=30">');
});
- Test at various browser widths, from a phone-sized screen width up to
wide desktop-sized.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch corrects eslint errors in the OPAC copy of basket.js:
Indentation inconsistencies, undeclared variables, unused functions,
etc.
To test, apply the patch and test the "Cart" functionality in the
OPAC:
- In the OPAC, add an item to the cart.
- A popup message should appear telling you the item has been added.
- The "Add to cart" link should update to read "In your cart."
- The count if cart items in the header should be updated.
- The "In your cart (remove)" link should work correctly.
- Test this process from both the search results and
detail pages.
- Open the cart.
- The cart should open correctly.
- In the cart, test all the controls:
- More details
- Send
- Download
- Empty and close
- Hide window
- Print
- Select all / clear all
- With checked items:
- Remove
- Add to list
- Place hold
- Tag
The following unused functions were removed: readCookieValue,
AllAreChecked, SelectAll, and quit. A search of the Koha codebase should
return no results from the opac-tmpl directory.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
window.load won't assure us that the images loaded using JS code are
correctly loaded.
This patch adds a flag to the different providers when the images are
fully loaded.
Note that the img.naturalHeight check is not working for google jackets
and is actually not needed (test with a bib record with and without
google jacket and confirm that it's working as expected).
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds style changes like the ones made in Bug 28179. It also
addresses a bug with the way the verify_images() function was firing.
I've moved the function outside of document.ready() and added a call to
it on window load, consistent with how it works in the staff client.
I've removed a redundant call to verify_images() from the footer include
file, opac-bottom.inc.
The cosmetic changes replace the Chocolat image icons with new SVG
assets based on Bootstrap Icons (https://icons.getbootstrap.com/). The
color changes I think help the controls to be more visible.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
1. Turn on OpenLibraryCovers
2. Display the cover images in the gallery
Sponsored-by: Gerhard Sondermann Dialog e.K. (presseplus.de, presseshop.at, presseshop.ch)
Signed-off-by: Rasmus Leißner <rasmus.leissner@solutions-factory.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Test plan:
1. Turn on GoogleJackets
2. Display the cover images in the gallery
Sponsored-by: Gerhard Sondermann Dialog e.K. (presseplus.de, presseshop.at, presseshop.ch)
Signed-off-by: Rasmus Leißner <rasmus.leissner@solutions-factory.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch is the OPAC version of
Bug 28179: Add a lightbox gallery to display cover images - detail page, staff interface
But there were several difficulties as the staff and OPAC code diverged
a lot.
First we are going to apply the different enhancements that have been
made staff-side:
- Display all the local cover image on the bibliographic detail pages
(before this patch only the first one was displayed)
- The slider functionality added by bug 25031
Test plan:
All the cover images are affected, all the different sources will be
tested.
All the steps will be done on the same bibliographic record.
1. Local cover images
a. Turn on OPACLocalCoverImages and AllowMultipleCover
b. Add several local cover images to a bibliographic record
c. Add several local cover images to an item
d. Click on an image and confirm that it is displayed in a gallery and
you can navigate see all the images attached to the bibliographic
record
e. Same for items
2. Adlibris
a. Turn on AdlibrisCoversEnabled
b. Edit the biliographic record and add an ISBN that will return a
cover image for this service (9780670026623 for instance)
c. Display the cover images in the gallery
d. Note the link to the adlibris.com website at the bottom
3. Amazon
a. Turn on OPACAmazonCoverImages
b. Display the cover images in the gallery
4. Coce
a. Turn on OpacCoce, set CoceHost to "http://coce.tamil.fr:8080"
and select some values for CoceProviders.
b. Display the cover images in the gallery
5. Custom cover images
a. Turn on OPACCustomCoverImages and set CustomCoverImagesURL to https://covers.openlibrary.org/b/isbn/{isbn}-M.jpg
of anything else meaningful
b. Display the cover images in the gallery
QA Note: Other sources have been removed by this patch but will be
re-added by follow-ups
Sponsored-by: Gerhard Sondermann Dialog e.K. (presseplus.de, presseshop.at, presseshop.ch)
Signed-off-by: Rasmus Leißner <rasmus.leissner@solutions-factory.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch takes strings defined as variables in opac-bottom.inc for use
in overdrive.js and moves them to overdrive.js, wrapped in the
double-underscore translation function.
To test you must have valid credentials entered in system preferences
for the OverDrive API. Ideally you should test using a patron who has
holds and current checkouts in OverDrive.
Apply the patch and log in to the OPAC.
- On the "Your summary" page, open the "OverDrive Account" tab.
- Log in to your OverDrive account.
- The contents of the tab should display correctly, with correct
labels for controls like "Log out of your OverDrive account", "Check
in", "On hold", etc.
- Perform a catalog search which will return results also found in your
OverDrive collection.
- Open the OverDrive results page.
- The page should display correctly, with correct labels on controls
like "Check out" and "Place hold."
To test that the correct strings are translatable. In this example I'm
testing fr-FR:
- Update a translation:
> gulp po:update
> cd misc/translator
> perl translate update fr-FR
- Open the corresponding .po file for the strings pulled from
JavaScript e.g. misc/translator/po/fr-FR-messages-js.po
- Locate strings pulled from bootstrap/js/overdrive.js for
translation, e.g.:
koha-tmpl/opac-tmpl/bootstrap/js/overdrive.js:124
msgid "OverDrive account page"
msgstr ""
- Edit the "msgstr" string however you want (it's just for testing)
- Install the updated translation:
> perl translate install fr-FR
In the OPAC, switch to the language you're testing. Confirm that your
translated strings appear. In the above example, the string should
appear at the top of the "Overdrive Account" tab.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
<sigh> This commit fixes the incorrect bug fix from the previous commit
Signed-off-by: Holly Cooper <hc@interleaf.ie>
Signed-off-by: Barry Cannon <bc@interleaf.ie>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
If a row object doesn't have a 'links' property, calling 'length' on it
will fail. This commit fixes this.
Signed-off-by: Holly Cooper <hc@interleaf.ie>
Signed-off-by: Barry Cannon <bc@interleaf.ie>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This commit adds support for the new 'links' property that will allow an
availability plugin to return an array of links for a result. These
links are parsed and appended to the title field of a results record.
Signed-off-by: Holly Cooper <hc@interleaf.ie>
Signed-off-by: Barry Cannon <bc@interleaf.ie>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch modifies OPAC templates to replace the use of the
"title-string" DataTables sorting method with the newer "data-order"
attribute.
To test, apply the patch and view the following pages to confirm that
columns containing dates sort correctly when using any setting of the
"dateformat" system preference:
- As a logged-in user, (proper testing will depend on having the
relevant data associated with your user, e.g. holds, searches, ill
requests, etc.):
- Your summary
- Checkouts
- Overdues
- Holds
- Your charges
- Your search history
- Your checkout history
- Your holds history
- Your interlibrary loan requests
- Your tags
- Bibliographic detail page
- With a non-serial record: Holdings
- With a serial record: Latest issues
- More details -> Full history: Test multiple years if possible
- Course reserves -> Course details
- Self checkout -> Check out to a patron with checkouts
Signed-off-by: Amit Gupta <amitddng135@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
We already set X-Total-Count to the total number of filtered rows,
but we don't have the total number of non-filtered rows.
Test plan:
This is easy to test on top of bug 27352 or bug 27251, apply them if not
pushed yet.
1. Create 40 items with public notes = "xxx" for biblionumber=4
then, using Postman (or whatever you prefer):
http://kohadev-intra.mydnsname.org:8081/api/v1/biblios/4/items?_page=1&_per_page=20&q=[{"me.public_notes"%3A{"like"%3A"%25x%25"}}]&_match=contains
Check the headers and confirm you see X-Total-Count=40 and
X-Base-Total-Count=44
2. go to /cgi-bin/koha/tools/quotes.pl
You see "Showing 1 to 20 of 28 entries"
Search "he"
Showing 1 to 20 of 22 entries (filtered from 28 total entries)
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch updates the "your summary" page in the OPAC so that tables on
the logged-in user's page have DataTables controls. The patch also
tweaks the DataTable configuration of some other pages to make them all
more consistent.
To test, apply the patch and rebuild the OPAC CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Log in to the OPAC as a user who has checkouts, overdues, and holds.
- On the "your summary" page, confirm that the checkouts table has
controls at the top: A search form and link-style buttons: Clear
filter, Copy, CSV, Print, iCal, Renew selected, and Renew all.
- Confirm that each work correctly.
- At the bottom of the page, the style of the "Renew selected" and
"Renew all" buttons should now be side by side.
- Confirm that both buttons work correctly.
- If necessary, enable the UseCourseReserves system preference.
- Go to the OPAC course reserves page.
- Confirm that there is a working "Search courses" field at the top of
the table.
- View the contents of a course reserve.
- There should be a "Search course reserves" field at the top of the
table.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch updates the browse search interface to confirm to new
interface patterns in the Bootstrap 4 framework, especially in the form
markup.
The results list has been changed to a Bootstrap "Collapse" component
configured as an accordion
(https://getbootstrap.com/docs/4.5/components/collapse/#accordion-example).
Instead of loading the bibliographic record results below the list of
terms returned, the bibliographic results are now displayed in the
"panel" expanded below the selected term. Subtitle has been added to the
information displayed about the bibliographic record.
To test you must be using ElasticSearch and the OpacBrowseSearch
preference must be enabled. Apply the patch and rebuild the OPAC CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Open the "Browse search" page in the OPAC.
- Test various searches: Author, Subject, and Title.
- When results are found, the should be displayed as a Bootstrap-styled
accordion widget. Clicking any individual result should expand the
panel containing the corresponding records.
- Clicking the record link should open the bibliographic detail page in
a new window.
- When no results are found, a Bootstrap-style "alert" box should
appear.
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
The 'hidden' class has been replaced by 'd-none' on bug 20168
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch makes changes to the display of the Open Library "read" links
in the OPAC search results and detail page. The link is now grouped with
other details about the record ("Publisher," "Location(s)," etc. On the
detail page, the "Preview" link will no longer appear under the cover
image.
The label is changed to "Found in Open Library," and the link now opens
the Open Library reader in a new window.
The patch also changes the Open Library button image links so that they
use https and makes it so that the "Found in Open Library" information
is hidden until the availability information has loaded.
To test, apply the patch and enable the OpenLibrarySearch system
preference.
- Perform a search in the OPAC which will return results found in Open
Library, e.g. "poetry" in the sample data.
- Confirm that the "Read now" images from Open Library appear on some
search results.
- View the detail page for one of these titles.
- Confirm that the "Read now" button appears in the same format on the
detail page.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch attaches a focus() call to the login modal's "shown.bs.modal"
event so that the cursor focus is set to the username field when the
login modal is displayed.
To test, apply the patch and confirm that your OPAC uses the regular
login process--not casAuthentication or GoogleOpenIDConnect.
Click the "Log in to your account" link in the header. A the login form
should appear in a modal dialog, and the focus should be on the username
field.
The same should be true if you trigger the modal from other
locations, for instance: "Log in to add tags" on the bibliographic
detail page or the tag cloud page.
Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch modifies the OverDrive login process so that clicking the
"Log in to your OverDrive account" link automatically puts the focus on
the password field when the modal displays.
Unrelated change: A redundant "document.ready" function has been
removed.
To test you must have OverDrive credentials set in system preferences.
- Log in to the OPAC.
- On the "Your summary" page, open the "OverDrive account" tab.
- Click the "Log in to your OverDrive account" link.
- A modal dialog should appear, and the cursor focus should
automatically be on the password field.
Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds the "Print" string to datatables.js so that it can be
picked up for translation.
To test, apply the patch and add some items to the cart in the OPAC.
- Open the cart. You should see a button labeled "Print."
- The print button should work correctly.
TESTING TRANSLATABILITY
- Update a translation, e.g. fr-FR:
> cd misc/translator
> perl translate update fr-FR
- Open the corresponding .po file for JavaScript strings,
misc/translator/po/fr-FR-messages-js.po
- Locate strings pulled from
koha-tmpl/opac-tmpl/bootstrap/js/datatables.js for translation:
msgid "Print"
msgstr ""
- Edit the "msgstr" string however you want (it's just for testing).
- Install the updated translation:
> perl translate install fr-FR
- Switch to your newly translated language in the OPAC and
repeat the test plan above. The translated strings should appear.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch makes corrections to the markup for the suspend hold modal in
the OPAC. It hadn't been updated during the upgrade to Bootstrap 4.
The JavaScript controlling the "suspend until" datepicker has been
modified because the datepicker pop-up was not positioned correctly in
this new version.
Unrelated: The markup for confirmation modals has been updated to
replace Bootstrap 3's "btn-default" with Bootstrap 4's "btn-secondary."
To test, apply the patch and make sure the SuspendHoldsOpac and
AutoResumeSuspendedHolds system preferences are enabled.
- Log in to the OPAC as a user who has holds.
- On the "Your summary" page open the "Holds" tab.
- In the list of holds, click the "Suspend" button.
- The modal should appear and look correct.
- Test the "Suspend until" field: Clicking in the form field should
trigger the datepicker. It should be positioned correctly under the
form field.
- Confirm that the datepicker populates the field.
- Submit the suspension and confirm that the hold is suspended.
- Click the "Cancel" button for a hold. Confirm that the confirmation
dialog appears correctly.
Edit: Updated class of hidden submit button. Test the page with JS
disabled to test that the "Suspend until" form works correctly.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Bug 25287 changed the default DataTable configuration in the OPAC so
that tables are paginated by default. This is inconsistent with the way
we currently use DataTables in the OPAC, and the change was probably
unintentional. This patch returns the default pagination configuration
to what it was before: Off.
The patch also updates opac-course-details.tt with the same DOM
configuration as opac-course-reserves.tt.
To test, apply the patch and view the list of course reserves and the
list of titles attached to a course. In both cases there should be no
pagination controls, and the tables should show all results.
Signed-off-by: Alexis Ripetti <alexis.ripetti@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch updates the version of Bootstrap in the OPAC from 2.3.1 to
4.5.0. The Bootstrap JavaScript files have been replaced with custom
builds of the 4.5.0 JavaScript source files. The Bootstrap CSS is now
built into the OPAC CSS by loading the required Bootstrap 4.5.0 SCSS
files in node_modules.
OPAC SCSS now starts with Bootstrap customizations:
/* Bootstrap variable customizations */
$headings-color: #727272;
...
Followed by loading the necessary Bootstrap SCSS files:
/* Bootstrap imports */
@import "../../../../../node_modules/bootstrap/scss/functions";
@import "../../../../../node_modules/bootstrap/scss/variables";
...
Followed by our CSS. The build process for generating compiled CSS now
creates a file which bundles Bootstrap CSS and ours. Removed from the
Koha source: Bootstrap CSS files, Bootstrap "glyphicons" images.
The upgrade to Bootstrap 4 involved a lot of markup changes to conform
with new Bootstrap classes, especially in classes related to the grid.
Besides duplicating the grid we used before, this upgrade adds some new
features made possible by Bootstrap 4.5's use of flexbox as a layout
tool. This includes custom ordering of columns based on class names:
https://getbootstrap.com/docs/4.5/layout/grid/#order-classes.
Other areas where the most changes have been made: Navigation menus,
breadcrumb menus, buttons, dropdowns.
Bootstrap's JavaScript file is now "bootstrap.bundle.min.js" to reflect
the fact that a required JavaScript asset is now distributed separately
in Bootstrap 4. The "bundle" version includes Popper.js.
Unrelated changes: Indentation corrections, removal of invalid
"//<![CDATA[" markers, removal of invalid script type attributes.
To test, apply the patch and run 'yarn install' to install Bootstrap as
an npm module. Run 'yarn build --view opac' to regenerate the OPAC CSS.
Test as many aspect of the OPAC as possible, viewing pages at various
browser widths to confirm that everything adjusts well. Test with
various OPAC interface system preferences enabled and disabled.
Test self checkout and self checkin.
Known issues: RTL support has not been updated.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
The correct spelling of the parameter is resizable
https://developer.mozilla.org/fr/docs/Web/API/Window/open
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch moves the inclusion of Open Library JavaScript from
opac-bottom.inc to the three templates where it might be used.
In addition, the Open Library JS has been modified to check for the
existence of the relevant markup on the page before executing a query.
Unrelated: The Open Library label is now hidden when the status returned
is "Not found." Previously this information was displayed.
To test, apply the patch and enable the OpenLibrarySearch system
preference.
- Perform a search in the OPAC which will return results from Open
Library. Some ISBNs: 0140423826, 0395082552, 0679436405.
- On the search result page there should be an Open Library "Read
now" button for each result that can be opened for reading in Open
Library.
- Add these titles to a list and view the list.
- The "Read now" button should appear on the list page.
- View the details for one of these titles.
- The "Read now" button should appear on the page below the holdings.
- Watch the browser's developer tools on these and other pages in the
OPAC. There should be no errors in the console and no 404 errors in
the network tab.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
The Google Transliterate API was deprecated on May 26, 2011. This patch
removes the feature and associated system preference.
To test, apply the patch and run the database update process.
- Go to Administration -> System preferences and search for
'GoogleIndicTransliteration.' There should be no results.
- Search the Koha codebase for references to
'GoogleIndicTransliteration.' There should be no current references..
Signed-off-by: Amit Gupta <amit.gupta@informaticsglobal.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds the necessary JavaScript includes to the OPAC to
enable translation of strings in JavaScript. It also updates the
translation of cart-related strings by removing the strings from
opac-bottom.inc and putting them in basket.js where they are used.
To test, apply the patch and test that the correct strings are
translatable. In this example I'm testing fr-FR:
- Update a translation:
> cd misc/translator
> perl translate update fr-FR
- Open the corresponding .po file for the strings pulled from
JavaScript e.g. misc/translator/po/fr-FR-messages-js.po
- Locate strings pulled from bootstrap/js/basket.js for
translation, e.g.:
#: koha-tmpl/opac-tmpl/bootstrap/js/basket.js:89
msgid "Your cart is currently empty"
msgstr ""
- Edit the "msgstr" string however you want (it's just for testing)
- Install the updated translation:
> perl translate install fr-FR
In the OPAC, switch to the language you're testing. Confirm that your
translated string appears. In the above example, by clicking the "Cart"
icon in the header when there are no items in the cart.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch reverts some changes made by Bug 25287 which prematurely
introduced the double-underscore i18n function. The i18n features
haven't been fully implemented in the OPAC.
Some lines are reverts to the previous version, and some are additions,
for instance where Bug 25287 introduced new DataTables features and a
new string translation is required.
In addition to i18n changes, the patch also reverts the default
configuration of DataTables in the OPAC so that the "dom" configuration
option is set back to "t." This turns off features like pagination
buttons, filters, etc. which were previously disabled by default.
Enabling these features requires revision to the OPAC CSS in order for
them to display well.
To test, apply the patch and view a page in the OPAC which includes a
DataTable. For instance: checkouts on the "your summary" page, serial
issues on the "full subscription history" page.
Tables should display correctly and sorting should work correctly. There
should be no other DataTables controls visible.
To test translatability:
To test, apply the patch and test that the correct strings are
translatable. In this example I'm testing fr-FR:
- Update a translation:
> cd misc/translator
> perl translate update fr-FR
- Open the corresponding .po file for the strings pulled from
the templates e.g. misc/translator/po/fr-FR-opac-bootstrap.po
- Locate strings pulled from bootstrap/en/includes/datatables.inc
for translation, e.g.:
#. SCRIPT
#: opac-tmpl/bootstrap/en/includes/datatables.inc:4
msgid "Copy to clipboard"
msgstr ""
- Edit the "msgstr" string however you want (it's just for testing)
- Install the updated translation:
> perl translate install fr-FR
Open the translated copy of datatables.inc and confirm that the
translated string appears.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the code that is used for handling columns settings on
datatables and allows passing the columns_settings information to the
API-centric datatable. To test, you need bug 25288, which uses this features.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Works with bug 24561. Make working bug 25288
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds a 'Skip to content' link to the header bar which will
only appear upon the first use of 'tab' to navigate after any fresh page
load in the OPAC.
Test plan
1/ Load any page in the OPAC
2/ Hit the `tab` key
3/ Note the new 'Skip to main content' link appears at the top left of
the screen.
4/ Hit `Enter` or Click the button
5/ Note the page scrolls to the area of the page that has the first block
containing a .maincontent class.
6/ Note that the next available focusable element after the first .maincontent
block has been given focus.
7/ Note that the link has been hidden
Signed-off-by: Hayley Mapley <hayleymapley@catalyst.net.nz>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch removes the now-unused downloadBasket function from
basket.js. The patch should have no effect on the functionality of the
download process.
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds the checkEnter function to the OPAC global.js and then applies it to the SCO login page.
TO TEST:
1. Go to SCO login and try entering something in the "Login:" input amd "Password:" input.
2. Pressing enter while in either will automatically submit the form.
3. Apply patch.
4. Type something into the Login: field and press enter, the form should NOT submit.
5. Type something into the Password: field and pess enter, this SHOULD submit the form.
6. Change the syspref SelfCheckoutByLogin to 'Cardnumber'
7. Type something into the Please enter your card number: field, the form should submit.
Signed-off-by: Donnab <donna@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch removes some redundant code from the OPAC JavaScript which
was causing problems with the show/hide action on two controls which are
shown only at narrower browser widths: The "Your account" menu shown
when the user is on a user-related page, and the "Refine your search"
menu shown on the search results page.
To test, apply the patch and go to the OPAC. Narrow your browser width
to below 768 pixels.
- Perform a search.
- On the search results page you should see a "Refine your search"
link at the top of the results. Clicking it should expand and
collapse the facets menu.
- Log in to the OPAC.
- On the "Your summary" page there should be a "Your account menu" link
at the top of the main part of the page. Clicking it should expand
and collapse the account menu.
- Verify that these menus display correctly when you widen and narrow
the browser window.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
This patch adds option.criteria as an option. Possible values are
'contains', 'starts_with', 'ends_with' and 'exact'. 'contains' is the
default value.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the ability to filter and order by embedded columns.
To use it you must in JS:
$('datatable_selector').api({datatables_options})
where datatables_options are all datatables options plus:
1. embed: [list of embeddable tables]
This option adds x-koha-embed header to request.
2. header_filter: true|false
This option if true sets x-koha-query header with stringyfied json of filters
Oderable and searchable columns must define data option as string, otherwise filter and order won't be possible.
If you must custom the output, use the render function.
For example:
* Don't
> $('.table_selector').api({
> columns: [
> {
> data: function(row, type, val, meta) {
> return '<a href="'+row.link+'">'+row.holds.patron.firstname+'</a>';
> },
> orderable: true,
> searchable: true
> }
> ]
> });
* Do
> $('.table_selector').api({
> columns: [
> {
> data: 'holds.patron.firstname',
> render: function(row, type, val, meta) {
> return '<a href="'+row.link+'">'+row.holds.patron.firstname+'</a>';
> },
> orderable: true,
> searchable: true
> }
> ]
> });
To test you must implement and test bug 20936, where it will be used.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch updates the confirmation buttons to be more specific about
what each one does. My concern was that it wasn't clear that "No" meant
"No receipt" and not "Cancel logging out."
The patch also updates the modal confirmation code so that the modal
body is removed if no message is passed for it.
To test, apply the patch and repeat the previous test plan. When you
click "Finish" you should have the options "Print receipt and end
session" and "End session."
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds aria attributes to Font Awesome icons generated by
JavaScript. The icons won't appear under normal circumstances because
the code for displaying the modal dialog should replace the icons with a
text label. The icons are a fallback.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the ability for logged-in patrons to add star ratings to
titles in their list of current checkouts and on the reading history
page.
The reading history page previously only showed existing ratings. Now it
will allow the entry of ratings as well.
The JS and markup for the feature are in separate include files to
facilitate re-use. It includes markup for non-js display of ratings and
js-driven ratings controls.
To test, apply the patch and set the OpacStarRatings to all, "results,
details, and user" pages.
- Log in to the OPAC as a user with checkouts.
- On the "your summary" page, test the features of setting star
ratings:
- Any title with existing ratings should show the rating and the
average rating number.
- Set a rating. Confirm that it shows a message with your rating.
- Click the "cancel rating" link, and confirm that your rating is
removed.
- Set a rating and reload the page. Confirm that the rating was
saved.
- Test the "cancel rating" link on the title you set before you
reloaded the page. The rating should be cancelled.
- Test the same functionality on the "your reading history" page.
- Test these pages with the OpacStarRatings preference set to "only
details" or "no." The pages should function correctly.
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
TO TEST:
1. Turn on OpenLibrarySearch
2. Do an OPAC search that returns results that have results with Open Library results and some that do not.
3. Notice results that return nothing simpliy say "Open Library:" with nothing afterwards.
4. Some results return a png from OpenLibrary or "Not found"
5. Apply patch and look at records again.
6. The results that return nothing for OpenLibrary API should now to hidden.
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>