Cesar Velez [Fri, 16 Feb 2018 16:01:23 +0000 (11:01 -0500)]
LP#1745422 - Add Parts column to Patron holds grids and detail view
The webstaff's patron ui did not have a display for the Part,
which will be fetched for any hold type "P" (monographic part).
This adds a Part column to the hold grids and inthe detail view
IF the hold type is P, it'll append the part.label in the same
field/well.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Remington Steed [Thu, 31 May 2018 17:59:30 +0000 (13:59 -0400)]
Docs: Add bullet number images removed in 2.10
These number images are used by the code callout feature of AsciiDoc,
used by the new Receipt Template Editor chapter (and possibly other
docs). I had renamed them in 2015, supposedly to prevent an ePub build
error, but that broke the code callout images. And since I cannot
replicate the ePub error now, I am renaming them back to their original
state, with sincere apologies to code callout readers everywhere.
Mike Rylander [Mon, 29 Jan 2018 21:37:15 +0000 (16:37 -0500)]
LP#1707063: Naive ng-class test for last-column-modified
Instead of comparing a (potentially undefined) property of a column, we'll
just compare the column object directly when checking to see if a column
header should be highlighted for "last touched in editing mode."
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Avoid modifying the copy status in the hold-reset API when it's passing
the copy off to the transit API for canceling the transit. Let the
transit API handle the status instead.
This fixes a bug where resetting a transiting hold, and canceling its
transit, would leave the targeted copy in "in transit" status instead of
"canceled transit".
Patron barcodes in the patron search grid are now click-able, making it
possible to quickly open multiple patrons in new tabs from patron search
by control-clicking (or middle-clicking) the barcode links.
Cesar Velez [Fri, 30 Mar 2018 15:32:45 +0000 (11:32 -0400)]
LP#1759352: improve webstaff fix checkout specific due date UX
The Date Options dropdown UI added as a result of bug 1717025
hides the state of the "checkboxes" for custom due date and
the datepicker wasn't disabled when custom due date was disabled.
This addresses these UX issues, to that the user has visual feedback
as to the state of that option.
Jason Stephenson [Tue, 10 Apr 2018 14:51:24 +0000 (10:51 -0400)]
LP#1751126: Make print holds shelf list aware of clear mode.
We change the Print Full List button on the holds shelf view to be
aware of whether clear mode is active. If clear mode is active, then
the list of holds to clear is printed. If not, then the full holds
shelf list is printed.
This commit does not change the label of the print full list button.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Dawn Dale <ddale@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jane Sandberg [Mon, 21 May 2018 16:28:39 +0000 (09:28 -0700)]
LP1772417: Adding the bucket ID to the user bucket display
To test:
1) Open a patron bucket. Note that the bucket ID is not listed
in the bucket information section at the top of this screen.
2) Apply this commit.
3) Open the same patron bucket. Note that the bucket ID is
listed in the bucket information section
If the lib.timezone org setting is not a valid timezone, attempting to
use it can result in an internal server error in the OPAC. Let's handle
the error with try/catch instead.
To test
-------
1. In Library Settings Editor, edit the "Library time zone" setting for
Example Branch 1, setting the value to something that's not the name
of a time zone (like "invalid" or "UTC-07:00").
2. In the OPAC, retrieve a record with holdings at Example Branch 1.
You will get an Internal Server Error.
3. Edit the library setting to use a valid timezone name, like
"America/Vancouver".
4. Retrieve the same record again. This time, the record will display
properly.
5. Apply the patch and repeat steps 1 and 2; this time, there should
be no internal server error.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Use the org unit linked to the provided workstation to collect the
login timeout org unit setting value during login. Previously, all
checks defaulted to the global org unit.
This patch solidifies the precedence order for OUS lookups during login
like so:
1. Workstation org unit.
2. API org unit value.
3. Users' home org unit.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Renamed the hold_id url param from "id" to "hid" and prevent it from
sticking in url's where it not needed.
To test
-------
[1] Log in to the public catalog as a patron that has at least
two hold requests.
[2] Go to the My Account holds tab and edit one of the holds.
[3] Rather than submit a change, click on the holds tab again.
[4] Note that /only/ the hold you were edit displays, and that the
'id' URL parameter persists as you navigate through the public
catalog.
[5] Apply the patch and repeat steps 1-3. This time, you should
see all of the holds.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Wed, 25 Apr 2018 16:32:15 +0000 (12:32 -0400)]
LP#1753005: Avoid copy alert error for call numbers with no copies
When displaying the Holdings View tab for a bib in the web staff client,
if a volume record has no copies, a Javascript error gets thrown.
Item-less volumes still end up in svc.copies at this point, so at the
moment it is necessary to check whether copy_alerts actually exists.
Some renaming might also be in order to clarify that svc.copies doesn't
necessarily contain /only/ fleshed acp records.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Mike Rylander [Fri, 4 May 2018 13:58:53 +0000 (09:58 -0400)]
LP#1755220: Return value checking in offline session fetch
We need to make sure that we receive the correct shape of data (array) rather
than that we simply got anything when fetching sessions. In the case of an
expired session token, we'll receive an ILS Event object informing us of the
expiration where we'd normally see a list of sessions.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Dawn Dale <ddale@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
Garry Collum [Wed, 23 May 2018 23:47:56 +0000 (19:47 -0400)]
LP#1745240: Hold Alias Missing from Hold Shelf Slip
A patron's hold alias can be printed in the hold shelf slip using the variable patron.alias. This patch just adds 'patron.alias' to the list of available options displayed at the top of the template. Also adds a colon before the patron's name fields for consistency.
Signed-off-by: Garry Collum <gcollum@gmail.com> Signed-off-by: John Amundson <jamundson@cwmars.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
Garry Collum [Thu, 24 May 2018 02:17:38 +0000 (22:17 -0400)]
LP#1745232 - Bill History Receipt doesn't have Finish Date
Adds xact.finish and xact.summary.last_payment to the example data. Also adds xact.summary.last_payment_ts to the template body to indicate when the last payment was made. Also adds a list of variables that can be used in the template in the template's description.
To test -
1. apply the patch
2. find a patron with billings, or add some billings to a patron record.
3. make payments on some of the billings using various methods.
4. go to billing history and print the history list.
Signed-off-by: Garry Collum <gcollum@gmail.com> Signed-off-by: John Amundson <jamundson@cwmars.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
gcollum [Sun, 20 May 2018 17:18:18 +0000 (13:18 -0400)]
LP#1743782 Copy Status not available in Check-In Screen
Makes the status an available column to display in the Check-In screen.
To test:
1. Apply patch.
2. Go to check-in and display 'Status' as a column in the table.
3. Check-in various items that may be checked-out, catch a hold, not checked out, etc.
Signed-off-by: gcollum <gcollum@gmail.com> Signed-off-by: Dawn Dale <ddale@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
Cesar Velez [Thu, 19 Apr 2018 21:25:59 +0000 (17:25 -0400)]
LP#1765731 - restore CN suffix and preffix in Holds Pull List
Overly gung-ho removal of "redundant" fields/columns in bug 1728147 removed call number prefix and suffix as available columns
in the hold pull list grid in the web staff client; this will
restore them there.
Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
LP#1765444: improve how MARC editor fetches fixed field metadata
This patch fixes a problem where the web staff MARC editor would
make repeated and redundant calls to two Evergreen methods to fetch
data about fixed field positions and values if that metadata was
not already cached by local storage or Hatch.
In particular, this patch caches and returns the data retrieval
promises, ensuring that only one set of FF position and value
requests are made.
Prior to this patch, each eg-marc-edit-fixed-field directive, of which
there are 64, could end up invoking those methods when initializing
the editor for a record type that had not been previously seen.
To test
-------
[1] Clear all FFPosTable_* and FFValueTable_* keys from local storage
(or Hatch).
[2] Retrieve a bib record in the web staff client. Note that up to
64 calls each are made of open-ils.cat.biblio.fixed_field_values.by_rec_type
and open-ils.fielder.cmfpm.atomic.
[3] Apply the patch and repeat steps #1 and #2.
[4] This time, note that only one call each are made.
[5] Verify that the fixed field inputs continue to work as expected.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
A thinko in the org tree reconstruction for offline mode caused the tree to be
broken in some situations, when the orgs were not ordered strictly by ID in
the list stored in the browser's IndexedDB storage. This commit removes that
requirement, and allows trees of any ID and storage ordering to be
reconstituted.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Jason Stephenson <jason@sigio.com>
- Add update watcher and call itemSvc.get_floating_groups within
egVolTemplate directive to properly populate dropdown when accessing
volcopy editor from local administration.
Apply payment button on patron bills screen should be inactive if Payment
Received is blank
Adds a test to see if there is a value in Payment Received input box. The
Apply Payment button doesn't activate unless a billing or billings is
selected and a numerical value is in Payment Received.
To test.
1. Add some billings to a patron's account.
2. Click some of the billings to select them. Notice that the Apply Payment
button is active.
3. Apply patch
4. Select some of the billings. The Apply Payment button is not active.
5. Enter some values into Payment Received. If values other than numbers
are entered the Apply Payment button is not activated. If numbers are
added the button is activated.
6. Uncheck all of the billings to see that the activated button deactivates,
if no billings are checked.
Signed-off-by: gcollum <gcollum@gmail.com> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Dawn Dale <ddale@georgialibraries.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Add support for converting change to patron credit in the patron bills
interface, consistent with the XUL feature. When the
'circ.disable_patron_credit' org unit setting is applied, the option is
hidden.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Laura Sachjen <sachjenl@branchdistrictlibrary.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Jason Boyer [Fri, 20 Apr 2018 18:49:25 +0000 (14:49 -0400)]
LP14973322: Search for Users by Profile
Stop treating profile like a text value, instead
include users in the selected profiles and descendants.
To test
-------
[0] Search for users by last name (and / or first) and do not
select a profile, take note of results
[1] Select the top of your permission group tree (Users, likely) and
search again, results should be the same.
[2] Select a group further down the tree (Circulators, Administrators,
Patrons, etc.) and repeat the search, there should only be results
from that group and its descendants.
[3] Finally, select a group with no child groups. Results will only be
that specific group.
Signed-off-by: Jason Boyer <jboyer@library.in.gov> Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Wed, 21 Mar 2018 16:03:27 +0000 (12:03 -0400)]
LP#1756912: restore display of copy counts for preferred library
This patch fixes a regression introduced by the patches for bug 1698206
and restores the display of copy counts for the preferred library (when set)
on the public catalog results and record details pages.
To test
-------
[1] Log into the public catalog as a user and set a preferred library.
[2] Perform a catalog search at a system that is other than the
preferred library set in step 1. Repeat the search with
"Groups Formats and Editions" checked.
[3] Note that in both cases, the copy counts displayed in search results and
the record details pages do not include a line for the preferred
library.
[4] Apply the patch and repeat step 2. This time, the preferred library
count should be included in the display.
The substance of this patch (with the exception of the pgTAP tests)
follows an approach suggested by Bob Wicksall <bwicksall@pls-net.org>
- Updated screenshots.
- Changed name of "Lost, Claimed Returned, Long Overdue, Has Unpaid
Billings" to "Other/Special Circulations".
- Added tip pointing to the docs chapter on the library settings editor.
- Changed a setting code to its equivalent display name.
Signed-off-by: Katie G. Martin <bcl@blaircountylibraries.org> Signed-off-by: Remington Steed <rjs7@calvin.edu>
Remington Steed [Thu, 10 May 2018 15:00:16 +0000 (11:00 -0400)]
Docs: Fix inaccuracies in Holdings Import Profiles sections
In dev/_importing_materials_in_the_staff_client.html:
- Fix "For more details" link
- Remove remaining references to "Keep" (some were removed previously in
commit 7570423802)
- Remove "static values" references from both pages (not supported)
- Add link to related Library Settings
In dev/_import_item_attributes_2.html:
- Remove sentence fragment left behind when previous "Keep" reference
was deleted.
- Add table row for "Parts Data"
Always retrieve the latest copy transit from the server when displaying
the copy transit dialog. This resolves an issue where a just-closed
transit is used instead.
Add a filter to avoid canceled transits.
Make the transit lookup call authoritative, since the transit may have
just been created.
To test (test plan courtesy of John Amundson):
1. Sign in as Library A.
2. Check in an item owned by Library B that does not have any holds
associated with it. This will send the item in transit to its home,
Library B.
3. Place a hold on the item to be picked up at Library C.
4. Sign in as Library B.
5. Check in the item. The transit pop-up and printout will show that
the item needs to be transited to Library B instead of Library C.
6. Apply the patch and repeat steps 1-5 using a different item. This
time, the transit pop-up will show that the item needs
to be transited to Library C.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
LP#1765501: ensure that webstaff MARC editor can deal with short 008s
This patch ensures that the 008 field, when maintained by the web staff
MARC editor, is kept at its proper length. In particular, this solves a
problem where input can get messed up if the user selects the entire
contents of the 008 field and replaces it with a shorter string.
To test
------
[1] Create a new bib record. Ensure that the MARC record editor is
/not/ in flat text mode.
[2] Edit the 008 field by selecting its entire contents and replacing it
with a subset. For example, this might be done when the first action
that a cataloger takes is to set the 008/00-05.
[3] Enter value in the individual fixed-field inputs at the top of the
MARC editor form. For example, enter 'eng' in the Lang field.
[4] Note that the results are wrong; e.g., the text ends up as
"080419en en eng".
[5] Apply the patch and repeat steps #1-#4. This time, the results
should be correct.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Chris Sharp [Mon, 7 May 2018 12:31:56 +0000 (08:31 -0400)]
LP#1743854 - Correct initial cursor focus in in-house use UI
Previously, the "Record In-House Use" UI opened with the cursor
focused in the "# of Uses" field, which required staff to manually
select the "Barcode" field. It is far more intuitive to have the
"Barcode" field have initial focus.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Geoff Sams <gsams@roanoketexas.com>
Kathy Lussier [Fri, 23 Mar 2018 20:35:16 +0000 (16:35 -0400)]
LP#1758426: Disable triggers before recalculating bib visibility
Disabling triggers in the 3.0.2-3.0.3 upgrade script to speed up the
recalculation of bib visibility. These are the same triggers that were
disabled when performing a similar recalculation in the 2.12.6-3.0.0 upgrade
script.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Rogan Hamby [Fri, 23 Mar 2018 13:51:59 +0000 (09:51 -0400)]
LP#1387722: Update MARC leader when deleting a record
When merging bib records, in the Leader, position 05 - Record Status
of the deleted record, the code should be changed to "d," for deleted,
as it is when a record is simply deleted within the client.
Rogan's squashed branch for updating record status in leader, along with
pgtap test and release notes.
Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com> Signed-off-by: Ben Shum <ben@evergreener.net>
Jane Sandberg [Thu, 22 Mar 2018 14:28:27 +0000 (07:28 -0700)]
LP1119370: Corrects sorting in the list of z39.50 services
To test
-------
[1] Add several z39.50 servers, with names starting with both
lower case and capital letters.
[2] In the Web client, go to Cataloging > Import Record from
Z39.50. The list of Services and Credentials will be sorted
in order alphabetically twice -- first for names that start
with a capital letter, then for names that start with lower
case letters.
[3] Apply this patch and repeat step 2. This time, the list
should be sorted alphabetically, and then have Local Catalog
at the very bottom of the list.
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Ben Shum <ben@evergreener.net>
When suggested call numbers are pulled from a bib record, space delimiters are
dropped. This is bad for noralization routines. Now we will forcibly inject
a space between subfield values.
Also included are two small optimizations: exit early if no nodes are found
for a particular bib CN definition; use map+join instead of a for loop and
blind substring trim to stitch together an xpath expression.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
This patch works around two regressions introduced by a previous patch:
- record links from titles on the OPAC results page simply re-ran
the search
- record links from cover images on the OPAC results page dropped
all paramters
In one case, a 'record_url' should have been a mkurl() expression. In the
other case, the prior patch did not handle the clear_params parameter
correctly; an empty array is /not/ equivalent to undef, and all CGI parameters
were getting cleared.
This patch is offered in lieu of simply pushing a revert.
Jane Sandberg [Sat, 10 Feb 2018 16:22:20 +0000 (08:22 -0800)]
LP1748649: Don't show bib call # in show_details mode
Using "show more details" in the public catalog displays
a list of items associated with each bib in the results list --
and their call numbers. Consequently, when in that mode, it
is not necessary to separately display one of the bib call numbers
in the bib summary on the results page; this patch removes it.
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Allow staff to manually override the patron juvenile flag value
regardless of patron DoB.
Patch removes the ng-blur handler for dob and expire_date, which fires
too aggressively. The dob handler is replaced with a $watch handler, so
the new and old value can be compared. No watch is applied to
expire_date, since no code is currently fired when it's changed.
Change the log level of the "field changed" message from log to debug.
To test:
[1] Open a patron in the web staff patron editor.
[2] Apply a juvenile birth date (less than 18 years by default).
[3] Confirm the juvenile flag is automatically activated (if it wasn't
already).
[4] Confirm it's possible to un-check the juvenile flag and save the
patron.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>