LP1849182 Angular catalog result/detail tab titles Add tab/page titles to the Angular staff catalog Search Results and Record Details pages. Search results offers 1 of 2 titles, depending on whether a search has be run: "Catalog Search" "Catalog Search - <count> Results" The record detail title shows the bib ID and bib title: "Bib <bib TCN> - <bib title>" Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
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>
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>
LPLP1835982 Holds grid user barcode text generator; handle null Adds a new text generator for the patron barcode template in the staff catalog holds grid. Also adds a name field to the <eg-grid-column/> to support the text generator. Teach the cell text generator internals to translate undefined and null values to '' so generator authors don't have to. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP#1835982: tweak a few of the new GridCellTextGenerator - do not display 'null' for Vandelay import errors and holds table current copy barcodes - trim leading and trailing whitespace from the items table call number Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP#1835982: add GridCellTextGenerator to the btGrid in the sandbox This patch also adds a usage note: since the GridCellTextGenerator only has access to the row object but a cellTemplate can be passed arbitrary context in addition to the row, a GridCellTextGenerator that needs that additional context to have the print content match the displayed content may require that the caller stick it in the row object. Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP1835982 Remove more deprecated cellPrintValue refs cellPrintValue inputs were replaced with grid-wide cellTextGenerator handlers. This patch removes a few remaining references to cellPrintValue inputs. Having them linger was breaking --prod builds, since they referred to nonexistent methods. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP1835982 Grid cell text generator API migration Migrate cell-specific cellPrintValue handlers to a grid-wide cellTextGenerator handler. This simplifies the client-side API and helps to formalize the API a bit more by providing a new GridCellTextGenerator interface. Warning messages are now display at page load time when a grid cell uses a cellTemplate but does not have a matching text generator. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP1835982 More grid cell print generators Adds additional print content generators for Angular grid cells which are rendered via cell templates. * Vandelay match set list grid * Vandelay queue contents grid * Vandelay queued record matches grid * Catalog holds grid. Also adds a warning to the grid component when an attempt is made to print a templated cell which has no print content generator. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP#1835982: add cell value print handlers to holdings grid This patch adds cell value print handlers for the barcode and holdable columns of the Angular staff catalog holdings view. To test ------- [1] After applying the patches for this bug, perform a "Download Full CSV" or "Print Full Grid" action on the Holdings View grid in the Angular staff catalog. [2] Verify that the Location/Barcode and Holdable? columns in the output contain appropriate values. Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
LP1835982 Grid cell print values option Allow grid callers to implement functions that return plain text (printable) values for a given cell. These are primarily useful when a cell is rendered via cellTemplate, which may not produce content which is ideal for printing. Such functions are specified by the cellPrintValue attribute in the eg-grid-column element. Includes sample implementation for the Angular record detail copies grid, which uses several cellTemplate cells. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu>
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.) Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Rogan Hamby <rhamby@esilibrary.com> Signed-off-by: Jason Etheridge <jason@EquinoxInitiative.org>
LP#1855329: Hold shelf query speed problem 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>
LP#1858138: (follow-up) flesh creator and editor in sandbox's acp grid Doing so ensures that the usrnames are displayed in the respective grid columns rather than the au ID. Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
LP#1858138: remove remaining uses of showLinkSelector Now that showLinkSelector is deprecated and does nothing, remove current uses of it. To test ------- [1] Apply the patch. [2] Visit Angular admin interfaces that have grids that refer to linked IDL classes, e.g., - Local Admin -> Carousels (carousel type) - Server Admin -> Weights Association (circ weights and hold weights) - Local Admin -> Item Tags (copy tag type) - Acq Admin -> EDI Accounts (provider) [3] Verify that the columns for linked fields display the appropriate selector field rather than the numeric ID. Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
LP1858138 Sandbox example of simple grid filtering Adds a trimmed down grid example demonstrating consistent filtering and link selector display for auto and manual fields without requiring any additional grid markup to define basic column behevior. Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>