Cesar Velez [Wed, 4 Oct 2017 18:01:25 +0000 (14:01 -0400)]
LP#1712686 - display completed barcode on copy grids not partial input
The check in, check out, and renew interfaces were not displaying
the actual complete(d) barcode when barcode completion is on.
This saves the inputted partial barcode in row_item.input_barcode
and let's the returned acp.barcode be in row_item.copy_barcode for
display.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cesar Velez [Thu, 28 Sep 2017 17:08:48 +0000 (13:08 -0400)]
LP#1714060 - fixes thinko when obeying patron.password.use_phone setting in patron regctl
There was a bug, an undefined variable was being used to assign the last
four digits of the day_phone to usr.passwd when this library setting
was being used.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cesar Velez [Thu, 28 Sep 2017 14:48:58 +0000 (10:48 -0400)]
LP#1715423 - fix issues with the display of IDs in patron summary pane
The Patron summary pane was not properly displaying the values
for the primary ID and secondary ID. Also added the type name of
the ID in next to primary ID label.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
In order to store grid column config preferences locally, a persist-key
attribute needs to be declared for the grid. Thus, for this UI a
'circ.patron.staff_messages' and a 'circ.patron.archived_messages'
persist-keys were added.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cesar Velez [Tue, 10 Oct 2017 17:55:59 +0000 (13:55 -0400)]
LP#1689325 - require most modals have explicit 'exit' or 'cancel' action inside the modal
Disable the default bahavior of bootstrap modals that lets
the user click outside the modal to dismiss or cancel it.
Similar behavior is not in the XUL, and this will make
unintentional clicks outside the modal less prone to losing
work in said modal.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cesar Velez [Thu, 21 Sep 2017 19:58:49 +0000 (15:58 -0400)]
LP#1717025 - make Specific Due Dates Until Logout in Patron Checkout
Made a few (opinionated) changes, that try to follow some JS
best practices. Changed Bool flags like date_options.sticky_date
to has_sticky_date, which avoids confusion with the checkoutArgs
property of the same name, and provides a clue about it's type
and function. Also added semicolons to any JS statements and
function expressions that were missing them.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Boyer [Wed, 13 Sep 2017 20:36:47 +0000 (15:36 -0500)]
LP1717025: Persist Specific Due Dates Until Logout
Add an option to the specific due date feature to
save the specified date until logout. This allows
all circulations from a given workstation to be due
on the same date.
Signed-off-by: Jason Boyer <JBoyer@library.in.gov> Signed-off-by: Cesar Velez <cesar.velez@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
1. Adds a new 'Print Full Grid' action which generates printer-friendly
HTML output of all grid rows. The print content matches the display
grid structure, uses the same field filters (e.g. for formatting dates)
and is retrieved using the same query and sort parameters as the display
grid.
To render the grid as HTML, a new print HTML template is included at
print_templates/t_grid_html.tt2.
2. Modifies the 'Export CSV' action to export all grid rows instead of
only the visible rows. The link label is modified to 'Export Full CSV'
to better indicate its intent.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cesar Velez [Wed, 27 Sep 2017 17:16:04 +0000 (18:16 +0100)]
LP#1716962 - honor In-House Use: num of uses threshold setting
The 'ui.circ.in_house_use.entry_warn' library setting was not being
taken into account nor any confirmation/warning modal being shown.
This fix addresses that by watching the changes and if selected
num_uses value exceeds setting value, displays egConfirm modal.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Cesar Velez [Thu, 12 Oct 2017 21:31:37 +0000 (17:31 -0400)]
LP#1719967 - Add alert message field to volcopy editor
As 1676608 was deferred to 3.1, this adds a copy alert_message
field, to the volcopy editor. The defaults tab "Alerts" checkbox has
been replaced by "Alert Message" and this new field will be active until replaced by
the changes of 3.1.
Signed-off by: Cesar Velez <cesar.velez@equinoxinitiative.org>
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Triggering a file download from dojo pages within the web client
requires a new technique. This commit borrows from the acq lineitem
table export (acq/common/li_table.js) and applies the technique to the
vandelay feature.
Kathy Lussier [Thu, 5 Oct 2017 15:04:54 +0000 (11:04 -0400)]
Docs: ebook api release note entry and doc changes
Moved the content from ebook_transactions.adoc file to the 3.0 release notes.
I also incorporated changes introduced in 3.0 into the documentation on
ebook api.
A closing td tag appears to be have been accidentally used when closing the
opening td tag. It doesn't appear to affect the display of the copy tag, but should probably be fixed.
Resolves a race condition where egProgressDialog.open() is called twice
before the first call completes (i.e. the dialog is opened), leaving 2
open dialogs, one of which cannot be closed because its reference is
lost.
Going forward, attempts to open multiple dialogs will always result in
the most recently visible dialog taking preference. When collisions
occur, a warning is also issued to the console.
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>
This repatch was requested by Galen Charlton to make it easier for
upgrades to avoid adding the entries or failing if the entries already
existed.
Also drops the unnecessary i18n tagging for the billing type names
since it does not work with applying upgrade scripts (only for sourcing
db.seed data for translation to PO file)
Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Chris Sharp [Tue, 21 Feb 2017 13:03:55 +0000 (08:03 -0500)]
LP#1666512 - Add billing types from 2009-era features.
For systems that were running Evergreen 1.2 or so and upgraded to 1.4
or so, there were billing types added that did not make it into an
upgrade script. We add them here just in case you don't have them.
Systems installed since Evergreen 1.4 are probably not affected.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
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>