Galen Charlton [Fri, 3 Jan 2020 22:55:10 +0000 (17:55 -0500)]
LP#1801163: (follow-up) deal with header fields that contain Unicode strings
Since Email::MIME->header_str_set() expects Unicode strings, not octets,
use decode_utf8() on the header values to
To test
-------
[1] Update the biblio.format.record_entry.print A/T event definition
to include non-ASCII characters in the subject and from headers.
[2] Upon applying the patch series, verifying that the strings provided
in step 1 are not mangled when the email is sent.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Lp 1801163: Switch to Email::MIME in SendEmail A/T Reactor
Switch from Email::Simple to Email::MIME Perl module in the SendEmail
Action/Trigger Reactor. Email::MIME properly encodes unescaped header
fields when added to the message with the header_str_set method.
We allow only 1 of each address field to be created while doing the
encoding, so that messages conform to RFC 2822.
This commit adds a new prerequisite as mentioned in the release notes,
so be sure to install the prerequisites for your Linux distribution
before installing.
You can test this with concerto data from a fresh installation by:
1. Configuring your test system to send email.
2. Updating all actor.usr entries to have your email address.
3. Updating the New User Created Welcome Notice event definiton to
active = true.
4. Run the action_trigger_runner with --process-hooks --run-pending.
5. You should get 237 new user welcome emails. The exact number is
subject to change.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Josh Stompro [Tue, 5 Nov 2019 21:31:21 +0000 (15:31 -0600)]
LP#1851434 - Allow COPY_NOT_AVAILABLE.override during renewal
Also addresses LP#1827901 - Allow PATRON_EXCEEDS_LONGOVERDUE_COUNT
override during checkout and renew.
Test Plan:
1. Check out an item to a patron.
2. Mark item lost by patron to change status to lost.
3. In web client, log in as user with COPY_NOT_AVAILABLE.override
4. Try to renew item for patron, see that it isn't allowed.
After fix:
1. Try to renew item for patron, see that the override is now allowed.
Also try checkouts and renews for patrons that have the PATRON_EXCEEDS_LONGOVERDUE_COUNT block.
Signed-off-by: Josh Stompro <stompro@stompro.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Bill Erickson [Wed, 21 Aug 2019 21:18:09 +0000 (17:18 -0400)]
LP1840982 Replace troublesome catalog icons
Replace 'arrow_right' icon with 'keyboard_arrow_right' (ditto left) in
the Angular catalog holdings maintenance grid. This resolves an issue
where the 'arrow_right' icon presents with excess padding, causing the
barcode / call number values to appear to be empty in the
'Location/Barcode' column of the holdings grid.
See also LP1830912 for icon padding issues.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Jane Sandberg [Thu, 17 Oct 2019 18:11:34 +0000 (11:11 -0700)]
LP1735566: Ask before deleting items in non-ideal statuses in AngularJS
To test:
1) Apply this commit.
2) Log in as a user with COPY_DELETE_WARNING.override permission.
3) Go to item status and scan an item in a non-ideal status (like #1:
checked out)
4) Delete the item. Note that you are alerted of the item's non-ideal
status, and you can confirm that you actually want to delete it.
5) Repeat steps 3-4 with an item in an ideal status (like #0:
Available). Note that no such alert appears.
6) Open the holdings view and repeat steps 4-5.
7) Log in as a user without the COPY_DELETE_WARNING.override
permission. Note that you are still informed about the non-ideal status,
but you aren't able to continue with the deletion without an admin
using their credentials.
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Garry Collum <gcollum@gmail.com> Signed-off-by: Rogan Hamby <rogan.hamby@gmail.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Galen Charlton [Sun, 19 Jan 2020 19:47:40 +0000 (14:47 -0500)]
LP#1860351: fix hasWorkPermHere() in Angular client
Fixes a bug where the Angular client's hasWorkPermHere() check
could return incorrect results and thus incorrectly report
whether or not the staff user currently has particularl permissions
at their current workstation.
To test
-------
[1] Arrange for a workstation whose internal ID is larger than
any of the org unit IDs.
[2] Log in to that workstation with a user who has permission
to update monograph parts.
[4] In the experimental Angular staff catalog, go to a record
(e.g., /eg2/en-US/staff/catalog/record/21/monoparts) and note
that the New Monograph Part button is disabled.
[5] Apply the patch and repeat step 4. This time, the button
should be active.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Galen Charlton [Fri, 20 Dec 2019 17:40:34 +0000 (12:40 -0500)]
LP#1843599: AngularJS MARC editor once again sets bib source
This patch fixes a regression introduced by the patch for bug 1693580
that prevent changes to the bib source from being made via the AngularJS
MARC editor.
To test
-------
[1] Apply the patch.
[2] Create a new bib record and save it with a non-empty source. Verify
that the record sets the source as expected.
[3] Edit a bib record and change the source. Verify that the new source
is retained when the record is saved.
[4] Edit an authority record and save it. Verify that it can be updated
without error. (Note that authority records do not have sources in
the same way that bib records do.)
In bug 1827250 I suggested Jason Stephenson look at an alternate SQL
formulation to solve the original problem. He did, and deemed it faster,
so went with that. Unfortunately, on PG 9.6, we're seeing some data sets
that decide on a /very/ poor plan for the wide-hold query with the
solution as implemented, but the original suggestion from Jason works
fine.
In the face of evidence controverting my thought that giving PG more
options for planning is better in this case, this commit moves to his
original query change.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
This patch fixes a problem where loan durations of the form
HHH:MM:SS, where the hours component is longer than 2 digits, could
cause checkouts to fail. This sort of duration has been observed
in cases where a library wanted a long-term reserves loan that
doesn't have the due time bumped up to midnight.
To test
-------
[1] Set up a circulation policy that has a loan duration of 167:59:59.
[2] Attempt a checkout that uses that policy. Note that the checkout
will fail.
[3] Apply the patch and repeat step 2. This time, the checkout should
succeed.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Bill Erickson [Fri, 18 Oct 2019 17:47:17 +0000 (13:47 -0400)]
LP1848778 Use consistent MARC breaker delimiter
Use the '$' delimiter in the read-only MARC breaker view for
consistency with the flat text MARC editor to easy copy/paste from one
to the other.
To test
-------
[1] Apply the patch.
[2] Set up two records in a record bucket and initiate a merge. Note
that when you select a lead record and choose to edit it in
flat text mode, you can copy and paste fields from the subordinate
record display without having to change the subfield delimiter
character.
[3] Mark a record for overlay, perform a Z39.50 search, then select
a hit and choose the overlay action. Note that you can copy and
paste fields from the record to overlay when editing the incoming
record using the flat text editor.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Under Patron->Bills->History if Bill # isn't visible for the Transactions
grid or Payment ID isn't visible for Payments grid, rows can't be selected
individually. This adds the required attribute to those field directives.
1. Under a patron account with multiple bills, go to Bills->History
2. Remove Bill # from the Transactions grid
3. Try to select an individual row (note all rows are selected)
4. Apply patch and repeat steps 1-3 (note rows are selected individually)
[1] Sets a default value for the modal options for dialogs such
as ProgressDialog that do not supply any value for the
options parameter; otherwise, progress dialogs would not
appear at all.
[2] Fix lint warnings.
lp1827942: prevent clicking outside an Angular modal from closing it
I added a new property to the "options" object inside the "open"
function, which resides in the dialog.component.ts. The static string
inside the backdrop property makes the form stay, even if the backdrop
is clicked.
Dan Briem [Wed, 7 Aug 2019 23:13:21 +0000 (19:13 -0400)]
LP#1803406 Due date box in check out has display issues at wider resolutions
Adjusted bootstrap .col classes so the specific due date input displays the
full date and prevents the barcode input group from collapsing at < 1179px.
Galen Charlton [Wed, 4 Dec 2019 22:41:38 +0000 (17:41 -0500)]
LP#1830923: do not show Enhanced MARC editor tab when editing in-place
As the the AngularJS side does not currently offer a path
for directly editing a queued record, the enhancd editor tab
serves no purpose in this context.
Bill Erickson [Thu, 17 Oct 2019 21:57:10 +0000 (17:57 -0400)]
LP1830923 Marc edit in-place additions
Improve Angular MARC editor for in-place editing.
* Make inPlaceMode a proper @Input.
* Allow the caller to pass in the bib source
* The recordSaved event now reports both the MARC XML and the currently
selected bib source.
* Option to hide the link to the AngJS Rich Editor
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jane Sandberg [Tue, 30 Jul 2019 20:54:10 +0000 (13:54 -0700)]
LP1607922: Receiving items on page 2 of search results
Previously, if a user selected a bunch of line items on two consecutive
pages of acq search results, and tried to receive items from the second
page, the operation would fail.
This issue was caused by Evergreen caching IDs of selected line items
from page 1, but not caching the data that went along with them.
To test:
1) Go to Acquisitions > General Search
2) In the Select Search Field dropdown, choose LI - State.
3) Set the state to on-order.
4) Click Search.
5) Click the check mark to select all results on the first page.
6) Click the Next button.
7) Click the check mark to select all results on the second page.
8) On the top --Actions-- menu, select Mark Selected Line Items as
Received.
9) Note that the interface does nothing, and that there is a TypeError
error message in the browser console.
10) Apply this commit.
11) Refresh your page completely and repeat steps 1-8.
12) Note that the items on the second page are received. Since they no
longer meet the search criteria, Evergreen gives you the next page of
results.
For further testing, see similar test steps by John Yorio at
https://bugs.launchpad.net/evergreen/+bug/1607922.
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Dan Wells [Tue, 22 Oct 2019 14:55:41 +0000 (10:55 -0400)]
LP#1846038 Remove extra grid refresh from configuration load
Bug LP#1790169 added the ability to save sorting configuration, but it
also added an additional grid refresh to the configuration load. This
breaks grid loading.
The expected flow is for is to first load any existing configuration,
then do the first collect() for the grid. This refresh() call adds
potentially a second collect() which may run earlier than it should,
and overall does not seem necessary.
To test:
(Make sure you are testing on current master or rel_3_3/3_4, or you
will (like me) hit related bugs which have been fixed. Also, some
grids (especially circ) do not honor sort for other reasons, so avoid
those for now.)
1) Find a grid which has a typical get() process. Suggestion would be
a basic auto grid, such as full bill details,
https://localhost/eg/staff/circ/patron/11/bill/43/details .
2) Set a sort value you can see, then *save* the configuration.
3) Before the patch, billing details grid doesn't load. After patch,
grid loads and still honors the defined sort.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Lp 1835620: Require some Storage submodules instead of use them
Switch from "use" to "require" for submodules in OpenILS::Application
::Storage::CDBI and OpenILS::Application::Storage::Driver::Pg.
Circular dependencies and other issues cause the following errors at
compile time for those modules:
Compilation failed in require at
/usr/local/share/perl/5.28.1/OpenILS/Application/Storage/CDBI.pm line
9.
Compilation failed in require at
/usr/local/share/perl/5.26.1/OpenILS/Application/Storage/Driver/Pg.pm
line 15.
Require loads the submodules at run time and does not attempt to
import any methods. This is the behavior we want, eliminates the
above errors, and everything still works.
Add comments above the required modules explaining why require is
needed and not use.
Enable and reorder all of the tests in Open-ILS/src/perlmods/t/
09-OpenILS-Application-Storage-Driver.t. Repairing the above issue
also repairs these tests.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
When checkout out non-cataloged items in the offline interface,
the receipt will now print 'Non-cataloged item' and the number
of items rather than printing nothing.
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Bill Erickson [Tue, 22 Oct 2019 19:54:13 +0000 (15:54 -0400)]
LP1849372 Close all open dialogs on Angular route change
On all angular route changes, force close any open dialogs, since it
makes little sense for them to persist across interfaces.
To test:
[1] Navigate to Server Administration
[2] Navigate to Age Hold Protection Rule Configuration
[3] Double-click a grid row to open an edit dialog
[4] Click browser back button to return to the Server Admin page
[5] Confirm edit dialog closes once the navigation is complete.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jason Boyer [Tue, 22 Oct 2019 13:18:29 +0000 (09:18 -0400)]
LP1825403: Do not Include Tag Owner in Tag
Copy tags were accidentally having their owning
location shortname included in the tag values,
this patch allows the owner to be displayed but
not included in the value used.
Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Remington Steed [Mon, 21 Oct 2019 20:56:31 +0000 (16:56 -0400)]
Docs: Fix image syntax in Authority Browse infrastructure docs
There are two image references in the docs section "Infrastructure
Changes to Authority Browse" that use incorrect AsciiDoc syntax, and
therefore the images don't display in the docs. This commit fixes them
(changing "images::" to "image::", removing the "s").
Garry Collum [Wed, 8 May 2019 00:57:50 +0000 (20:57 -0400)]
LP1821969 Patron Prefix and Suffix Display in Summary
Adds support for displaying the patron prefix, suffix, preferred prefix, and preferred suffix in the patron summary sidebar.
To test:
1. Add a combination of prefixes, suffixes, preferred prefixes, and preferred suffixes to several patrons.
2. Also add some other preferred information to some of these patrons.
3. In the sidebar notice the lack of prefix information in both the patron's main heading and in the preferred name information.
4. Apply the patch.
5. In the sidebar the prefixes and suffixes are now displayed.
Dan Wells [Mon, 12 Nov 2018 16:31:33 +0000 (11:31 -0500)]
LP#1802952 Check bib visibility for located URI auto suggest
Suggestions from records with only located URIs (no copies) do not
appear in the OPAC search suggestions. This appears to be a cousin of
bug #1773479, but in a neighboring function.
In the case of libraries with LURIs, we need to consider bib visibility
separate from copy visibility in order for both to show up.
Dan Briem [Sun, 11 Aug 2019 01:02:00 +0000 (21:02 -0400)]
LP#1777698 Duplicate barcode alert appearing on new barcodes
When scanning new copy barcodes, ng-change quickly fires multiple times
and sends promises to check for duplicates. If 1234 exists and you scan
12345, if the 1234 promise resolves after 12345, it will indicate it's a
duplicate. This patch keeps a count of the promises sent and only the
latest promise will set the boolean to indicate if it's a duplicate.
Hard to test because the promises usually resolve in order:
1. Add a new holding with the first few characters of an unused barcode
2. Scan the new barcode multiple times until you see the dup error
3. Apply patch and scan the new barcode multiple times (no error)
Signed-off-by: Dan Briem <dbriem@wlsmail.org> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Jeff Davis [Thu, 10 Oct 2019 18:04:48 +0000 (11:04 -0700)]
LP#1842763: Vandelay: disable grid row select on queued record matches
Users are on this screen to select a merge target, which they do by
selecting a cell in the Merge Target column. The grid selector
checkboxes are confusing and useless (they don't support the purpose of
this screen and there are no supported actions for selected rows).
Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Dan Briem [Sat, 24 Aug 2019 18:44:01 +0000 (14:44 -0400)]
LP#1841089 Apply button in Patron Bill History screen is in confusing location
It's possible to miss the apply button for the date range in bill history
because it's located before the datepickers. The interface also allows
invalid date ranges.
This removes the apply button and watches the start and finish dates in the
bill history and payment history controllers. If it's not first init and they
are valid date objects in a valid date range, the grid refreshes with the new
date range query. If start > finish they are set equal to each other to force
a valid range.
To test:
1. Apply patch
2. Bring up a patron with bills and payments (or add bills and payments)
3. Under the Bills tab click History
4. Change the date range and observe that the grid refreshes
5. Try to set the start date past the finish date and vice versa
Signed-off-by: Dan Briem <dbriem@wlsmail.org> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
For a web staff eg-grid to save and retrieve its settings, it needs a unique
persist-key. This commit adds one for the Bills grid and Payments grid on the
patron bills Full Details view (right-click a bill, choose Full Details, then
click the Details tab).
Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Jennifer Pringle <jennifer.pringle@bc.libraries.coop> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jeff Davis [Tue, 2 Oct 2018 21:28:31 +0000 (14:28 -0700)]
LP#1609556: only include OPAC-visible copies in SRU/Z39.50 holdings
To test:
1. Create a bib record.
2. Add an item to the record at BR1. Mark it as not OPAC-visible.
3. Do a CONS-level SRU search for the record, including holdings. The
record is not included in results because there are no OPAC-visible
holdings.
4. Add a second item to the same record, this time at BR3. Mark this
one as OPAC-visible.
5. Repeat the CONS-level SRU search, including holdings. The record
appears in search results, but holdings information in 852 includes
*all* copies, including non-OPAC-visible copies.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Kyle Huckins <khuckins@catalyte.io> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
LP 1827250: Fix Last Captured Hold Check for Holds Shelf
When the current copy on an on shelf hold is the same as that on some
uncaptured holds, the hold fails to appear on the hold shelf when it
should. This comes down to some SQL in the storage function to
retrieve wide holds: open-ils.storage.action.live_holds.wide_hash.
The intent of the new code is to check that the current hold matches
the most recently captured hold for the copy. However, the order by
in the query fails to take into account holds with a NULL capture time
on the same copy will sort before the captured holds. This patch
rectifies this situation by adding "NULLS LAST" to the order by.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Michele Morgan <mmorgan@noblenet.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Garry Collum [Mon, 20 May 2019 16:48:10 +0000 (12:48 -0400)]
lp1813056 Fixes Current Date in Date Returned in Circ History CSV
The date returned column in the csv file created in the opac for the patron's
Check Out History contains the current date instead of the check-in date. This
patch fixes that issue.
To test:
1. Turn on "Keep history of checked out items" in the patron Search and
History Preferences in the opac, or find a patron that already has this
option turned on.
2. Check-in some items that the patron has checked-out.
3. Wait a day, or if it was an existing history list immediately, go to the patron's Items Checked Out in the opac and look at the Date Returned
column in the Check Out History list.
4. Download the CSV file and note that the date is the current date.
5. Apply the patch.
6. Refresh and download the CSV file again and note that the Date Returned
is now the checkin date.
Mike Rylander [Wed, 17 Jul 2019 21:14:01 +0000 (17:14 -0400)]
LP#1836963: reduce the cost of utility functions, speeding up search
For large org trees, some several seconds are spent testing org visibility.
The immediate cause is that AppUtils::get_org_tree() does not populate the
process-local cache with a memcache-cached org tree. That only happens when
memcache does not have a copy of the org tree. This is obviously a simple
oversight, which is addressed by making sure any memcache return value
is pushed into the the process local cache.
Additionally, the visibility check is making heavy use of lots of
indirection and delegation to utility code, when some slightly smarter code
could avoid many repeated function calls. We now supply some local
utility code to flesh and unflesh the parent_ou field of objects in the
org tree, allowing us to avoid using find_org() and instead just calling
parent_ou() when walking "up" the tree.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jane Sandberg [Tue, 1 Oct 2019 21:47:07 +0000 (14:47 -0700)]
LP1842940: stamping and slight tweak to upgrade script
Mike Rylander suggested the INSERT ... SELECT ... WHERE NOT
EXISTS approach, since this fix is being backported to older
releases, and we don't want to cause duplicate entries or
upgrade failures if the perm already exists
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Provide functions that checks the permissions required to edit ones
own account, or accounts in groups based on group application
permissions, and alert the user if and why they can't edit an account.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Jeff Davis [Thu, 5 Sep 2019 17:23:55 +0000 (10:23 -0700)]
LP#1842940: add perm to permit staff to edit their own accounts in the client
Signed-off-by: Jeff Davis <jeff.davis@bc.libraries.coop> Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
Refactor the auto_renewal feature so that it works like other renewal
types: opac_renewal, sip_renewal, etc. This refactor prevents
desk_renewal from being set when auto_renewal is set.
Deprecate the newly added open-ils.circ.renew.auto API and ensure that
it still works as intended. Add release note indicating the
deprecation of this API and intent to remove it in Evergreen 3.5.
Modify the AutoRenew action trigger reactor to use the plain
open-ils.circ.renew API with the auto_renewal option set to 1.
Add database update script to cleanup (i.e. set to FALSE) the
desk_renewal field on action.circulation and action.aged_circulation
tables where auto_renewal is TRUE.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Jason Stephenson [Thu, 29 Aug 2019 14:15:33 +0000 (10:15 -0400)]
Lp 1835577: Add missing Auto Renewal fields to the IDL
Add entries for auto_renewal and auto_renewal_remaining fields to the
acirc and combcirc classes in fm_IDL.xml. They were missing after the
auto-renewal feature was added.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
LP#1845050: fix issue where reports interface was partially loaded
This patch adjusts mod_xmlent to not free its XML parser
prematurely in the face of an EOS bucket received while processing
a sub-request.
To test
-------
[1] Test on a platform that has Apache 2.4.25 or later, such as
Debian Stretch.
[2] Note that when loading the reports interface that the source
of the frame containing oils_rpt.xhtml is incomplete and that
actions like creating a template or folder do not work in the
interface.
[3] Apply the patch and repeat step 2. This time, oils_rpt.xhtml
should be fully loaded and the interface fuctional.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
VIEW_COPY_ALERTS and ADMIN_COPY_ALERT permissions were added
recently, but not assigned in the default seed data. This branch
assigns VIEW_COPY_ALERTS to Staff profiles at the Consortium depth
and adds ADMIN_COPY_ALERT to the Cataloging Administrator profile.
Since permissions are set so specifically per-site, this branch does
not contain an upgrade script, but does provide an update to release
notes reminding site admins to manually add them to the appropriate
profiles.
Change the update to an "ALTER FUNCTION ... STABLE" both
to make the purpose of the update more clear and to remove
the need to check the rest of the function definition when
backporting.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Chris Sharp [Mon, 20 May 2019 20:14:00 +0000 (16:14 -0400)]
LP#1768141 - Mark permission.grp_descendants STABLE.
Quoting Galen Charlton's comments on the bug report:
The database function permission.grp_descendants should
be marked stable; it qualifies, and doing so should allow
PostgreSQL to improve query plans. One example of a query
that would benefit is searching by patron profile (a la
bug 1497322)
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Jane Sandberg [Wed, 21 Aug 2019 17:26:47 +0000 (10:26 -0700)]
LP1739607: Add missing columns to patron record
To test:
1) Open up a patron record with some bills.
2) On the Items Out tab, notice that there is a column named Location
3) On the Bills tab, open up Bill history.
4) In the history transactions grid, note that the column picker is
missing the following columns:
* Item owning library
* Checkout/renewal library
* Due date
* Fines Stopped Reason
5) In the history payments grid, note that the column picker is missing
the same columns.
6) Apply this commit.
7) Note that the Items Out tab's column is renamed to "Shelving
Location".
8) Notice that both Bill history grids column pickers include the
requested columns.
Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Josh Stompro <stompro@stompro.org> Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
This fixes vertical alignment issues in the MARC View table
by removing the deprecated valign tags and moving the inline
CSS to the cat.css file. The text within each table cell should
now align to the top for better readability.
Signed-off-by: Terran McCanna <tmccanna@georgialibraries.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org>
Jeff Davis [Mon, 10 Jun 2019 16:53:44 +0000 (09:53 -0700)]
LP#1822630: fix sanitizing CGI params on place_hold_result
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Jason Stephenson <jason@sigio.com>
(cherry picked from commit 019118895c94f5cc810b3f1fb95b2634a1c993b6)
Jeff Davis [Mon, 1 Apr 2019 22:13:09 +0000 (15:13 -0700)]
LP#1822630: further sanitizing of CGI params when embedded in HTML
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
(cherry picked from commit e2d401a9da3c70c1e56e518f40d0de928919990f)
Jeff Davis [Mon, 1 Apr 2019 17:00:59 +0000 (10:00 -0700)]
LP#1822630: sanitize user input before display on browse results
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jason@sigio.com>
(cherry picked from commit 4402695e80dbcee5187a35de46e5e314bab1231a)
Jeff Davis [Thu, 13 Sep 2018 18:58:48 +0000 (11:58 -0700)]
LP#1559239: use rel="noopener" when opening external URLs in a new tab
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Jason Stephenson <jason@sigio.com>
(cherry picked from commit 1eccaeec88a99e9792b388e95732faa7576e7164)
blake [Fri, 1 Dec 2017 22:32:22 +0000 (16:32 -0600)]
LP1735847: Remove patron info from default Hold Transit Slip
Removes most patron information from the Hold Transit Slip
in both the web and XUL client default definitions.
Signed-off-by: blake <blake@mobiusconsortium.org> Signed-off-by: Dan Pearl <dpearl@cwmars.org> Signed-off-by: Jason Boyer <jboyer@equinoxinitiative.org>
Bill Erickson [Fri, 28 Jun 2019 16:29:07 +0000 (12:29 -0400)]
LP1834665 Angular catalog MARC flat text editor
Adds a set of components for editing MARC records. The main component
acts as a container with various actions (source selector, delete,
undelete, and save options). The body of this component is a tabbed
interface, one tab for the Enriched editor and one for the Flat Text
editor.
The Enriched editor tab directs the user to the AngJS version of the page.
the Flat Text editor tab implements the standard MARC flat text editor
interface.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>