Mike Rylander [Sat, 6 Jun 2020 17:48:30 +0000 (13:48 -0400)]
Let the reactor see all undelivered appointments to avoid duplicates
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Sat, 6 Jun 2020 17:39:15 +0000 (13:39 -0400)]
Properly format times when viewing an out-of-window extant appointment (like, recently in the past)
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Fri, 5 Jun 2020 22:11:27 +0000 (18:11 -0400)]
take steps to block checking out to patrons with certain conditions
To wit:
- patron is inactive
- patron is barred
- patron is expired
- patron has active standing penalties that block CIRC
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jason Boyer [Fri, 5 Jun 2020 21:15:15 +0000 (17:15 -0400)]
Change SMS data source for Confirm Event
The only good way to get from an acsp to SMS settings is to go
through the get_user_setting helper.
Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Galen Charlton [Fri, 5 Jun 2020 21:02:28 +0000 (17:02 -0400)]
give a friendlier error message if slot limit prevents an appointment
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Fri, 5 Jun 2020 20:51:20 +0000 (16:51 -0400)]
display warning if patron's appointment is in the past
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jason Boyer [Fri, 5 Jun 2020 20:36:20 +0000 (16:36 -0400)]
Fix SMS Event Templates
Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Galen Charlton [Fri, 5 Jun 2020 20:33:49 +0000 (16:33 -0400)]
changes to time selector in staff interface
* display the number of available appointments at each time
* disable times that have no available appointments (this
does account for the appointment's current select time)
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Fri, 5 Jun 2020 18:48:01 +0000 (14:48 -0400)]
tweak display of times in staff scheduler
Use Moment's LT format to format the time according to the
browser's locale. Not quite perfect, but does point out
a need for a "Format Time with this pattern" library setting
to match "Format Date+Time with this pattern" and "Format Dates with this pattern"
Also display the number of available slots left in the drop-down.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jason Boyer [Fri, 5 Jun 2020 18:49:39 +0000 (14:49 -0400)]
Fix curbside-entry-exists check
Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Mike Rylander [Fri, 5 Jun 2020 18:00:12 +0000 (14:00 -0400)]
Somehow a typo slipped in on the array index, should be 0 not 2
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 17:40:57 +0000 (13:40 -0400)]
Apparently, different versions of DateTime::* react differently to undef timestamps, so we protect it
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 17:17:28 +0000 (13:17 -0400)]
Protect the validator against Extra Stuff
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 16:48:06 +0000 (12:48 -0400)]
The new hooks should be marked passive=FALSE
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 15:27:24 +0000 (11:27 -0400)]
Missing " caused an HTML rendering issue, and explicitly allow reselection of your selected time
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 15:00:42 +0000 (11:00 -0400)]
Support several A/T core types with the Curbside validator
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 14:49:51 +0000 (10:49 -0400)]
Properly show un-finished past appointments, and use 12-hour times for display in the selector
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 5 Jun 2020 14:25:44 +0000 (10:25 -0400)]
Fetch penalties to alert staff that patron may have a circ-blocking issue
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Boyer [Fri, 5 Jun 2020 11:36:22 +0000 (07:36 -0400)]
Correct hook for Confirm Curbside SMS
Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Galen Charlton [Thu, 4 Jun 2020 15:26:43 +0000 (11:26 -0400)]
add button to clear schedule pickup form
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Wed, 3 Jun 2020 21:41:02 +0000 (17:41 -0400)]
Improve existing slot detection in the CurbsideSlot reactor
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 3 Jun 2020 21:40:05 +0000 (17:40 -0400)]
Add example of the CurbsideSlot reactor event definition
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 3 Jun 2020 21:27:47 +0000 (17:27 -0400)]
Provide visual separation for appointment rows in the patron UI
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 3 Jun 2020 21:18:15 +0000 (17:18 -0400)]
Comment out patron-triggered delivery for now
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Wed, 3 Jun 2020 19:38:47 +0000 (15:38 -0400)]
keep current slot time (if any) in the drop-down of available times
Applies to the staff interface and is meant to avoid making it appear
that a slot time had never been chosen.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Wed, 3 Jun 2020 19:01:34 +0000 (15:01 -0400)]
add ability to unstage an appointment in the staff interface
* add open-ils.curbside.mark_unstaged method
* add button in 'staged and ready' tab
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Wed, 3 Jun 2020 18:33:28 +0000 (14:33 -0400)]
add appointment notes field to staff schedule pickup tab
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Wed, 3 Jun 2020 18:28:00 +0000 (14:28 -0400)]
Fully support multiple pickup libraries, and tighten up Request form progression
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 3 Jun 2020 18:27:05 +0000 (14:27 -0400)]
Provide a full "reset" subaction to support "select another date"
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Wed, 3 Jun 2020 18:02:54 +0000 (14:02 -0400)]
Sort curbside slots by library name in My Account
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Wed, 3 Jun 2020 18:12:28 +0000 (14:12 -0400)]
display the appointment notes field (in the patron column)
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Wed, 3 Jun 2020 14:08:35 +0000 (10:08 -0400)]
Protect patron data behind a staff login permission
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Tue, 2 Jun 2020 23:06:57 +0000 (19:06 -0400)]
Fix A/T event definition constraint violations
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Tue, 2 Jun 2020 22:36:56 +0000 (18:36 -0400)]
finish schedule pickup tab for the staff interface
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Tue, 2 Jun 2020 22:36:08 +0000 (18:36 -0400)]
add open-ils.curbside.open_user_appointments_at_lib
Needed so that staff members can fetch a user's current
apointment(s)
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Tue, 2 Jun 2020 18:51:35 +0000 (14:51 -0400)]
add curbside to the Angular navbar
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Mon, 1 Jun 2020 22:33:30 +0000 (18:33 -0400)]
Curbside A/T event definition examples for offer and confirm via email and SMS
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Mon, 1 Jun 2020 21:42:06 +0000 (17:42 -0400)]
(Correctly) Use idlist function to reduce network overhead
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Fri, 29 May 2020 23:11:35 +0000 (19:11 -0400)]
start work on the schedule pickup tab
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Fri, 29 May 2020 23:10:47 +0000 (19:10 -0400)]
add open-ils.curbside.patron.ready_holds_at_lib.count
Surprisingly, there isn't already a method for getting
a patron's ready holds at specific library.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Fri, 29 May 2020 21:08:01 +0000 (17:08 -0400)]
Completed patron UI, including some repairs
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 29 May 2020 16:20:12 +0000 (12:20 -0400)]
Add links to the curbside subtab
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 29 May 2020 16:17:54 +0000 (12:17 -0400)]
My Account curbside subtab on the holds UI
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 29 May 2020 16:17:07 +0000 (12:17 -0400)]
Initial logic for My Account curbside
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 29 May 2020 16:14:55 +0000 (12:14 -0400)]
Add CSS to support table-ish display of a div-grid for form-per-row
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 29 May 2020 16:13:09 +0000 (12:13 -0400)]
Add notes support to create/update
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Fri, 29 May 2020 19:43:02 +0000 (15:43 -0400)]
work on mark delivered
- add progress bar
- implement it on the staged tab
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Fri, 29 May 2020 19:35:20 +0000 (15:35 -0400)]
tweak formatting of buttons on staged tab
* assign different styles
* make them vertical to avoid the second button
being hidden behind an ellipsis at certain
viewport widths
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Fri, 29 May 2020 19:31:33 +0000 (15:31 -0400)]
adjust hashing for fetch_*.latest
Perl's hash order randomization was getting in the way.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Thu, 28 May 2020 20:41:36 +0000 (16:41 -0400)]
Improve freshness test
Instead of returning the most recent timestamp for various .latest
calls, we will return the md5_hex hash of the list of IDs for the
relevant appointments. This will catch new earlier-time requests.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Thu, 28 May 2020 14:58:49 +0000 (10:58 -0400)]
wording tweak
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Thu, 28 May 2020 14:52:05 +0000 (10:52 -0400)]
initial implementation of staged, arrived, and delivered tabs
TODO:
* hook up arrived and delivered button on the staged tab
* add a progress bar when the delivered action is invoked
* add more error handling for the delivered action
* add 'checked out' language to the delivered buttons?
* include list of holds on the arrived tab?
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Thu, 28 May 2020 14:23:39 +0000 (10:23 -0400)]
bump recheck interval back up to 15 seconds
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Thu, 28 May 2020 14:15:02 +0000 (10:15 -0400)]
get checking for refresh-needed working
This cleans up using of the component lifecycle hooks,
but the key to this is using ng-if to conditionally
embed the to-be-staged manager directive, as all that uib-tab
does for inactive tabs is slap a display:none on them.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Wed, 27 May 2020 23:03:40 +0000 (19:03 -0400)]
finish up core functionality of the to be staged tab
* checking for refreshes
* implementing the mark as staged action
TODO: figure out why the to-be-staged directive gets initialized
even when switch to a tab that doesn't include it. This is causing
the $interval checking for refreshes to keep going unnecessarily.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Wed, 27 May 2020 21:02:50 +0000 (17:02 -0400)]
more work on to-be-staged tab
* implement hold list directive
* change button label
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Tue, 26 May 2020 23:03:21 +0000 (19:03 -0400)]
start fleshing out the to-be-staged tab
Galen Charlton [Tue, 26 May 2020 23:02:37 +0000 (19:02 -0400)]
make open-ils.curbside a public service
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Tue, 26 May 2020 23:01:55 +0000 (19:01 -0400)]
add slot_id to various fetches
Needed by the AngularJS egGrid to uniquely identify rows, as
otherwise selecting one row will select them all.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Tue, 26 May 2020 21:17:48 +0000 (17:17 -0400)]
start AngularJS curbside page app
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Fri, 22 May 2020 19:28:37 +0000 (15:28 -0400)]
Add "fetch my appointments" API and limit/offset support
Also, flesh user object on fetch_delivered, and mark streaming methods
as such so that .atomic versions get generated.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Mike Rylander [Fri, 22 May 2020 16:21:00 +0000 (12:21 -0400)]
Adjust time math and API return data
Make sure that all DateTime objects that are in the floating timezone
are put into the configured (or default local) timezone, so that date
math is always sane. Note that DateTime->now returns an object in UTC
so it can be used in math and calls to the database safely -- Postgres
converts for us as needed with any non-floating timezone.
Return the created or updated curbside appointment object when
applicable.
Return -1 on successful delete to avoid possible confusion with
appointment IDs.
Flesh the patron's card so we can display a barcode when returning a
list of appointments for grid display.
Return the copy object and wide display entry object for each hold's
bib record when sending the list of to-be-staged appointment slots,
so staff can cross-check title, author, item barcode, etc.
Signed-off-by: Mike Rylander <mrylander@gmail.com>
Galen Charlton [Thu, 21 May 2020 22:05:31 +0000 (18:05 -0400)]
various fixes to OpenILS::Application::Curbside
* fix references to "arrival" column
* accept curbside times that lack seconds
I.e., open-ils.curbside.create_appointment will now accept
both "12:45" and "12:45:00" when setting an appointment
* fixes to open-ils.curbside.delete_appointment
- correct API doc
- fix bug that prevented deletion
- make it return a true value upon success
* fix uses of flesh_fields
* fix crash in open-ils.curbside.fetch_to_be_staged
* fix crash in open-ils.curbside.fetch_to_be_staged.latest
* fix crash in open-ils.curbside.mark_arrived
* fix calculation of slot time: account for TZ; calculate offset correctly
* fix crash in open-ils.curbside.mark_delivered
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Thu, 21 May 2020 22:16:55 +0000 (18:16 -0400)]
curbside: IDL fixes
* remove open-ils.pcrud as a controller for acsp
Sticking with APIs wrapped around it for the moment.
* fix copy-and-paste-o of column name
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Tue, 19 May 2020 19:13:57 +0000 (15:13 -0400)]
A/T components of Curbside
This commit adds a reactor and validator for automating parts of the
basic Curbside workflows.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Tue, 19 May 2020 19:11:54 +0000 (15:11 -0400)]
Curbside application
This commit adds the Curbside OpenSRF application, which provides all
the business logic and data retrieval APIs for the UIs.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Tue, 19 May 2020 19:10:34 +0000 (15:10 -0400)]
Predefined ILS Events to alert the UI
This commit defines events that might be sent to UIs in the case of
exceptional circumstances.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Mike Rylander [Tue, 19 May 2020 19:08:32 +0000 (15:08 -0400)]
Data structure
This commit defines the data structures needed to record and interact
with the curbside interfaces and business logic.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Bill Erickson [Thu, 22 Aug 2019 14:12:53 +0000 (10:12 -0400)]
LP1837656 Org proximity admin disable org filter
Disable the org unit filter for the auto-generated org unit proximity
adjustment admin page so that it does not automatically filter the grid by
any of the org unit fields.
Modify the IDL to indicate that the 'pos' field on the org unit
proximity adjustement class is required.
To test:
1. Navigate to
/eg2/en-US/staff/admin/server/actor/org_unit_proximity_adjustment
2. Create an adjustment if non exist.
3. Confirm the 'Position' field is now required.
4. Confirm new adjusment row appears in the grid after it's created.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Bill Erickson [Wed, 6 May 2020 14:47:37 +0000 (10:47 -0400)]
LP1847800 Admin grid filter display, default fields, IDL repairs
* Indicate in the UI when grid filters are applied via URL and offer a
way for the user to clear the filters.
* When grid filters are applied, use them as the basis for the "Default
New Record" object which seeds the fm-editor. In other words, apply
default values to the fm-editor to match the grid filters.
* Repair some IDL thinkos and add more 'selector' values.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Tue, 5 May 2020 21:37:05 +0000 (14:37 -0700)]
LP#
1847800: secondary admin pages for Authority Control Sets and Authority Thesauri
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Tue, 5 May 2020 21:11:41 +0000 (14:11 -0700)]
LP#
1847800 / LP#
1847810: secondary admin pages: MARC Search/Facet Fields -> virtual index definitions
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Tue, 5 May 2020 19:16:37 +0000 (12:16 -0700)]
LP#
1847800 / LP#
1847781: secondary admin pages for MARC Import Remove Fields
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Bill Erickson [Wed, 29 Apr 2020 21:27:23 +0000 (17:27 -0400)]
LP1847800 Admin grids support config_field links
For IDL fields which have config_field=true, the value in the admin grid
is rendered as a link to the grid for the linked field. Additionally,
the link contains a gridFilter so the destination grid only displays
rows related to the selected field.
Adds config_field=true values for z39.50 source and two links for hard
due date and hard due date values.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Wed, 18 Dec 2019 00:06:19 +0000 (16:06 -0800)]
LP#
1847800 / LP#
1834687: secondary admin pages: config_field attribute in IDL
Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Chris Sharp [Mon, 4 May 2020 17:20:09 +0000 (13:20 -0400)]
LP#
1873048 - Stamp upgrade script
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Thu, 30 Apr 2020 17:36:44 +0000 (10:36 -0700)]
LP#
1873048: add scoped retrieve perms for booking resource types and resources
In the XUL client, when selecting a resource type, the list was limited
by owning library. But in the web client, the list would show all
resource types across all libraries. This commit addresses that
regression by adding a new VIEW_BOOKING_RESOURCE_TYPE permission with
context_field in the IDL. That way, users only see resource types owned
by org units where they have the permission.
While we're at it, a new VIEW_BOOKING_RESOURCE perm is also added for
resources.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Tue, 28 Apr 2020 20:52:52 +0000 (13:52 -0700)]
LP#
1865533: save changes on Edit Hold in My Account
When editing a hold in the OPAC, changes are not saved if the SMS field
is blank. The sms_notify value is being passed as an empty string, and
this non-null value violates the "sms_check" constraint on
action.hold_request. Replacing the empty string with undef allows the
hold update to succeed.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca>
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Daniel Pearl [Wed, 13 Mar 2019 14:07:17 +0000 (10:07 -0400)]
LP1787636: Sort Libraries without Holdings In Holdings View
Empty libraries in holdings view are listed at the end of the library
list instead of integrated within the list. This patch sorts them
within the list.
Signed-off-by: Daniel Pearl <dpearl@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jason Stephenson [Thu, 19 Mar 2020 13:45:18 +0000 (09:45 -0400)]
LP1787636: Remove right justification in grid view
Align all owning libraries to the left as requested in the bug
description and comments.
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jason Stephenson [Thu, 26 Mar 2020 14:47:46 +0000 (10:47 -0400)]
LP1813088: Coerce Values to String in egGridValueFilter
Coerce values to string in the switch for Boolean columns in the main
egGridValueFilter function. This came about after an IRC conversation
with Mike Rylander who suggested this as a possible fix. It should
when field values are strings, integers, or Booleans.
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Bill Erickson [Tue, 31 Mar 2020 15:51:41 +0000 (11:51 -0400)]
LP1869906 Angular staff cat browse links
Use routerLinks instead of click-handlers for browse results links so
users have the option to control-click and open individual results in a
new tab.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jason Stephenson [Thu, 30 Apr 2020 18:09:40 +0000 (14:09 -0400)]
LP#
1876163 - Fix Angular Test Failure
ERROR in app/core/format.spec.ts - TS2554: Expected 4 arguments,
but got 3.
orgService = new OrgService(netService, authService, pcrudService);
Commit
9e8d662f418 added a new first argument to the OrgService
constructor and two files needed updates:
* app/core/format.spec.ts
* src/app/core/org.spec.ts
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Ben Shum [Thu, 30 Apr 2020 18:16:19 +0000 (14:16 -0400)]
LP#
1869794: Stamping upgrade script
Signed-off-by: Ben Shum <ben@evergreener.net>
Jason Etheridge [Wed, 26 Feb 2020 14:40:04 +0000 (09:40 -0500)]
LP#
1869794 new best hold sort order
owning lib to requestee home lib proximity
implementation, release notes and TechRef tweak
Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
Signed-off-by: Lindsay Stratton <lstratton@wlsmail.org>
Signed-off-by: Ben Shum <ben@evergreener.net>
Bill Erickson [Wed, 29 Apr 2020 14:14:34 +0000 (10:14 -0400)]
LP1858448 Aged money pgtap test repair
Enable the "age money with circulations" setting in the original aged
money pgtap test so the aged money it seeks may be created and found.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Chris Sharp [Wed, 29 Apr 2020 15:40:08 +0000 (11:40 -0400)]
LP#
1873286 - Add release notes entry
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jason Stephenson [Fri, 24 Apr 2020 18:22:25 +0000 (14:22 -0400)]
LP1873286: Fix Bad End Tags
Fix self-closing tags used in non-void HTML and non-empty XHTML tags.
These tags now cause errors with jQuery version 3.5.0 and were
technically wrong from the start.
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Chris Sharp [Mon, 2 Mar 2020 22:51:08 +0000 (17:51 -0500)]
LP#
1375296 - Quiet deprecation warnings in autoreconf -i step.
Thanks to Warren Layton for suggesting this fix to the community!
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Bill Erickson [Thu, 26 Dec 2019 17:17:55 +0000 (12:17 -0500)]
LP1848550 / LP1835128 Redirect to AngJS splash page
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Bill Erickson [Mon, 2 Dec 2019 17:26:22 +0000 (12:26 -0500)]
LP1848550 Cache org settings in IndexedDB (Angular)
Teach the org settings lookup code to store cacheable settings (those
for "here") in IndexedDB to reduce the number of repetitive network
calls for org unit settings.
Settings cached in IndexedDB are cleared upon successful login to avoid
stale values.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Bill Erickson [Mon, 2 Dec 2019 17:26:08 +0000 (12:26 -0500)]
LP1854850 Angular IndexedDB Shared Worker Communication
Implements the client side of the communication to the Evergreen
IndexedDB shared worker for Angular.
From this may be built caching mechanisms, offline transaction
handling, etc.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Wed, 27 Nov 2019 00:12:37 +0000 (16:12 -0800)]
LP#
1848550: client-side caching of org settings for AngularJS
The web client almost always does live lookups any time it needs to
check an org setting. But these settings rarely change, so it would
make sense to cache them. They're already cached using Lovefield in
order to support offline; this commit checks the cache first, and only
does a live lookup if the setting is uncached.
The settings cache is cleared on login to ensure stale values don't
stick around forever. To refresh the cache, simply logout and then
login; cached values will be deleted and the latest values will be
retrieved from the server when they are needed.
Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jason Stephenson [Tue, 28 Apr 2020 18:51:25 +0000 (14:51 -0400)]
Lp
1858448: Fix version number in upgrade script
Change "TODO" to "1202" in versioned upgrade script. I'm not sure how
that didn't happen unless I forgot to save the file or doing an
--amend before pushing changed things.
Signed-off-by: Jason Stephenson <jason@sigio.com>
Jason Stephenson [Tue, 28 Apr 2020 18:44:11 +0000 (14:44 -0400)]
LP
1858448: Stamping Upgrade Script
Signed-off-by: Jason Stephenson <jason@sigio.com>
Bill Erickson [Fri, 24 Apr 2020 14:42:42 +0000 (10:42 -0400)]
LP1858448 Disable inititial aged money migration
Modify the existing SQL upgrade scripts to prevent the automatic
migration of billings/payments to the new aged money tables. This is
done to prevent data loss for sites which have not yet upgraded to the
affected versions.
The schema changes are kept so both pre- and post-upgrade sites can
follow the same schema update path.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Bill Erickson [Tue, 14 Apr 2020 14:48:32 +0000 (10:48 -0400)]
LP1858448 Upgrade instructions WIP
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Bill Erickson [Tue, 14 Apr 2020 14:28:09 +0000 (10:28 -0400)]
LP1858448 Money aging srfsh script function repair
Fixes a copy pasto in the money aging script, teaching it call the
correct money aging function.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: Jason Stephenson <jason@sigio.com>
Jason Stephenson [Wed, 11 Mar 2020 16:47:55 +0000 (12:47 -0400)]
LP1858448 More IDL fixups
Make IDL fixes as recommended in the Launchpad bug discussion.
Signed-off-by: Jason Stephenson <jason@sigio.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Bill Erickson [Thu, 13 Feb 2020 16:01:41 +0000 (11:01 -0500)]
LP1858448 Aged money control flags
Adds 2 global flags for controling if/when billings and payments are
aged.
history.money.age_with_circs
history.money.retention_age
Adds a srfsh script for manually aging money based on the
'history.money.retention_age' setting value.
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Signed-off-by: John Amundson <jamundson@cwmars.org>
Signed-off-by: Jason Stephenson <jason@sigio.com>