LP#1720345: ensure egEditFmRecord's customFieldTemplates is optional
This patch ensures that the custom-field-templates attribute of
the eg-edit-fm-record directive is strictly optional, fixing a
regression for instances of that directive that don't need that
attribute.
To test
-------
[1] Apply the patch.
[2] Verify that the Server Administration | Copy Tag Types and
and Local Administration | Copy Tags admin interfaces
allow you to create and edit values.
[3] Verify that the Serials Administration | Prediction
Pattern Templates interface continues to work.
Docs: Adding information on using native browser functionality
The section on setting a home page seemed out of place in the Log in section.
I moved it to a new section that covers best practices for using the browser,
which also includes earlier documentation on using tabs and new documentation
on disabling popup blockers.
Docs: Update login chapter
Some things have changed in the web client since this documentation was
first created. Removing the note that workstation registration is not required
and updating the caution on what happens when exiting the browser.
Previously, workstation registration was part of installing the staff client,
but since we have nothing to install, I added it to the logging in section. I
also removed a xul client feature from the main root.adoc.
LP#1719726: adjust computation of bre visibility attribute vector
This patch moves the computation of the visiblity attribute vector
on biblio.record_entry to a separate transaction. Credit to Chris Sharp
for ideas on speeding up this part of the upgrade.
Adding a small description of Evergreen along with links to the web site,
documentation and license on the About page.
Signed-off-by: Kathy Lussier <klussier@masslnc.org>
+ Minor formatting repairs to remove an extraneous '"', give the "What
Is..." section its own column, and avoid wide lines.
Docs: Adding more acknowledgements for web client contributions
Adding contributors who participated through LP and by doing early testing
for Equinox.
On older Evergreen installs, it's possible to have both an
evergreen.maintain_control_numbers function and a
public.maintain_control_numbers function. Let's remove the
duplicate one and go ahead and assign it a schema to live in,
shall we?
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Due to bug 1474051, we're not storing it, so don't request it.
It should be noted that this patch series does /not/ add support
for using Stripe as a payment processor for staff-mediated payments,
but the web staff client opens the door to adding it later.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Support collecting credit card info for both EG-processed and
externally-processed credit card payments, consistent with the XUL
client.
Refactor the chain of events leading up to payment submission,
including verifying warning-level payment amounts, annotating payments,
and collecting credit card data so the user is able to perform any or
all of these steps and cleanly cancel at any point along the way.
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#1713764: fix 'Retrieve Patron' action from webstaff pull list
This patch fixes a regression wherein the Retrieve Patron action
didn't work on the pull list grid by ensuring that the user value
would get fleshed.
To test
-------
[1] Go to the pull list in the web staff client and attempt the
'Retrieve Patron' action. Note that nothing happens.
[2] Apply the patch and repeat step 1; this time, a new window
should be opened with the patron record.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Bill Erickson [Thu, 21 Sep 2017 20:04:03 +0000 (16:04 -0400)]
LP#1643927 Copy note captures initials; shows date
Fixes thinko in copy note staff initials tracking. Offloads the
formatting of the copy note to egStrings. Adds the workstation org unit
to the initials block a la the XUL client.
This does not add the create date to the initials block as with the XUL
client, because the create date is part of the note. Instead, we now
display the note create date in the copy note display form.
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>
Bill Erickson [Thu, 21 Sep 2017 19:23:55 +0000 (15:23 -0400)]
LP#1622364 Avoid precat dialog submit on ISBN enter
Avoid submitting the precat copy checkout entry form when the Enter key
is pressed on the ISBN field. Do this to allow scanners to enter ISBN
data without automatically submitting the form.
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>
Mike Rylander [Thu, 21 Sep 2017 17:51:41 +0000 (13:51 -0400)]
LP#1717777: Ensure the en-US is always represented in the dropdown
The assumption of an array in the eval'd code was causing the forced
en_us tag to fail. Here we push the default en_us into the list of
locales in a more structured way to ensure that failure doesn't happen.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Ben Shum <ben@evergreener.net>
Ben Shum [Wed, 20 Sep 2017 19:49:37 +0000 (15:49 -0400)]
LP#1718549: Use Nodejs source install for all distributions
Due to dependency issues and the need for newer NodeJS version, install
from source for all distributions, not just the ones without pre-packaged
apt sources.
Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
LP#1718301: catch it when multiple connection attempts fail
Lovefield only allows a single connection at a time, and throws
an exception if a second attempt is made. In the context of a
page app, wrapping the connection attempt in a promise takes
care of it, but for the test suite, the egLoveField service
gets completely reinitialized... but Lovefield itself still
thinks it's in the middle of connecting.
This patch catches the exception and allows the test suite to
pass, without otherwise affecting use in a real browser.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Ben Shum <ben@evergreener.net>
We assumed only one file per locale, but apache <Location>s because are not
independent WRT locale helpers in mod_perl, we need to load all files from
all <Location> directives for a given locale.
NOTE: there is a risk of translation collision, where the same key string in
two PO files have different translations, but in our context that is almost
surely a mistake.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Ben Shum <ben@evergreener.net>
Cesar Velez [Fri, 15 Sep 2017 21:02:31 +0000 (17:02 -0400)]
LP#1700635: enable eg-marc-editor for queued records in MARC Batch Import/Export
This enables the angular modal marc-editor to be called from
the vandelay dojo UI in the iFrame.
To test:
[1] In the web staff client, go to MARC Batch Import/Export and load
some records in a Vandelay queue.
[2] Inspect the queue and choose View MARC.
[3] Click the Edit button, and verify that it brings up the
web staff MARC editor.
[4] Make a change, then click Modify, then click Use Edits.
[5] Verify that the MARC view reflects the updated record.
[6] Go back to the queue. If the bib was /not/ imported into
Evergreen, the bib attributes may change.
[7] Verify that steps 1-6 in the XUL client work (and that the XUL
MARC editor is displayed).
Note that this patch doesn't ensure that the modal can save the
record and be dismissed via just a single click of the Modify button;
an issue was discovered with that that could not be resolved in time
for beta2.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
LP#1715503: make eg_db_config refuse to create DB if min Pg version not met
This patch ensures that eg_db_config --create-database will abort if
the Pg version is not at least 9.4. It also tweaks the version check
to (in principle) work for Pg 10.
This patch also removes some stuff related to support Pg versions
less than 9.4, most notably using contribs rather than extensions.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
LP#1715503: make upgrade script abort if not running min support version
This patch causes the monolithic upgrade script to fail if the
database its connecting to isn't running at least Pg 9.4.
To test
-------
[1] Verify that 2.12.5-3.0-beta1-upgrade-db.sql will abort
if used in a Pg database < 9.4; verify that it will work
if the Pg version is at least 9.4
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 20 Sep 2017 18:42:01 +0000 (14:42 -0400)]
LP#1718300: Fix serial.unit visibility at creation time
The new copy visibility trigger was not taking into account a particular
dataflow that is common to the serial checkin process. This branch
addressed that case where the call number of a copy changes, requiring
an update of one row on the cache table.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Refactors offline DB connection call to return a promise, resolved upon
successful connection, instead of polling for a successful connection
within the connect call.
Multiple calls to the main egLoveField connect function will result in
resolvers being linked to the same in-progress promise.
Check for connection errors via the database.connect() reject handler.
Avoid attempts to connect to the offline DB until egLoveField.connectOrGo()
is called the first time.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
We add the lib... prefix to all C library names as expected by most
linkers. This necessitates changes to the opensrf.xml configuration
file.
Debian 9's ld also apparently requires that ldconfig be run again
after the Evergreen C libraries are installed, so we add that step to
the installation instructions as well.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
LP#1706124: Make include inactive patrons checkbox sticky
The state of the 'include inactive' checkbox on the patron search page will now
be remembered when users return to the page. Many thanks to Cesar Velez,
whose code for bug 1697754 inspired this patch!
Show warning message to user when an unknown barcode is scanned in the
copy bucket pending list UI. Also, after a barcode failure occurs, select
the barcode text (instead of clearing it) so it can be seen and easily
replaced, consistent with the item status UI.
After successful scan, clear and re-focus the barcode input box.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Bill Erickson [Thu, 14 Sep 2017 22:09:08 +0000 (18:09 -0400)]
LP#1712637 Patron edit hold pickup location repairs
1. Allow setting the hold pickup location independant of the home
library.
2. Disable org units in the pickup lib selector that are not viable hold
pickup locations (can_have_vols=f)
3. Consistent w/ the XUL client, allow a patron to be created without
selecting a default pickup location.
To test:
[1] Register a new patron and confirm pickup location is initialy unset.
[2] Confirm pickup lib options are viable pickup locations.
[3] Apply a pickup location different from the home library and confirm
the home library selector remains unchanged.
[4] Confirm saving the patron applies the expected pickup location value.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
The $scope.is_registering is used to enable/disable the Register btn
and was not being set back to false, when the user chose to cancel
using an existing WS name, and exiting the modal.
To test
-------
1. Register a workstation.
2. Switch to a different computer or Chrome profile.
3. Try to register the same workstation name. Warning dialog will pop
up.
4. Click cancel.
5. See that the register button is now disabled and no actions on the
form seem to reactivate it.
6. Apply the patch and repeat steps 2-4. This time, the register button
should be active.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Ben Shum <ben@evergreener.net>
LP#1713151: display owning OU in volcopy editor location selector
This patch causes the short name of the OU that owns a location
to be displayed after the location name in shelving location selectors
in the item attribute and copy template editors.
To test
-------
[1] Edit an item and verify that the shelving location selector
displays the org unit shortname in parentheses after the location
name.
[2] Verify that the location selector in the copy template portion
also displays the OU short names.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Andrea Neiman <abneiman@equinoxinitiative.org> Signed-off-by: Ben Shum <ben@evergreener.net>
LP#1708951: fix tabbing in webstaff catalog app for Firefox
This patch works around an issue where Firefox appears to require
that the iframe for the embedded OPAC not have a null catalog_url
value. It also fixes an issue where navigating to the OPAC View tab
after retrieving the record with a different default view set would
cause it to jump back to that default view... the first time.
To test:
[1] In the web staff client, retrieve a bib record and set the default
view to a tab other than 'OPAC View'.
[2] Retrieve another bib by TCN or ID. Note that although the default tab
will briefly display, the page will jump over to the OPAC view and
display an empty record.
[3] Apply the patch and repeat step 2. This time, it should display the
record with the current default view.
[4] Select the 'OPAC View' tab and verify that it loads the record details
page.
This fixes a regression on the hotkeys introduced by the offline
circulation module.
To test
-------
[1] Apply the patch and verify that hotkeys in the web staff client
such as F1, F5, alt-s, and so forth work.
[2] Go to offline circulation and verify that select hotkeys such as
F1 and F2 activate corresponding tabs in the offline circulation
page.
[3] Repeat step 2 with the browser itself set to offline mode.
LP#1716475: Add label for mobile carrier select menu
Replace the empty string with a label in the SMS carrier select menu due to
issues that arose when putting an empty string in the translation file. It
also is good usability.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
LP#1713160: fix crash viewing circ history in public catalog
This patch fixes a crash when a patron views their circulation
history in the public catalog.
To test
-------
[1] Set up a patron record that retains circ history and make
and returns some loans. Ensure that at least one of the
loans is aged.
[2] Log into the public catalog as the test patron and riew the
Check Out History page (/eg/opac/myopac/circ_history).
[3] Note that an internal server error is reported.
[4] Apply the patch, repeat step 2, and verify that the check out
history is now displayed.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>