LP#1680554: fix upgrade of subject|temporal_browse and subject|geographic_browse indexes
This patch fixes an issue where an Evergreen database that was
upgraded to 2.12.0 from an earlier version may not have had
the browsability of the subject|temporal and subject|geographic
indexes turned off in favor of the new *_browse versions. It also
fixes mapping of the new *_browse indexes to authority control
set bib fields.
Note that if the database started at 2.12.0, the browse
reingest can be cancelled.
To test
-------
[1] On a database that was upgraded to 2.12.0 from an earlier
version, verify that after applying the database update and
performing the browse reingest, that there are no
metabib.browse_entry_def_map rows where def is 11 or 13. Also
Also verify that the query that runs as part of the update
[2] On a database that was installed starting at 2.12.0, verify
that the database update is a no-op.
Avoid storing full transaction data with each work log entry. Only
store data need for work log display and actions.
Includes the addition of a new field (entry.hold_id) for hold requests
so that the value does not have live in the large data blob.
To test:
1. Peform checkouts, holds placements, and other log-tracked actions
in the client.
2. Open Administration -> Workstation -> Stored Preferences and see
values for key "eg.patron_log". Values added after the patch will only
contain ~8 keys with string values, no large nested objects.
3. Open Administration -> Local Administration -> Work Log and confirm
recent log-tracked actions are all represented in the grid.
Dan Wells [Tue, 18 Apr 2017 15:06:03 +0000 (11:06 -0400)]
LP#1670407 Add tests for xact_finish close/re-open
Since this bug came about due to negative balance changes (and it was
easier), this commit extends the existing negative balances test suite
to include basic tests for checking both xact_finish conditions.
One of these tests fails without the fix from the previous commit.
Avoid re-closing a circulation that was re-opened during checkin because
it acquired a non-zero balance. This is typically caused by, for
example, voiding a lost item fee during checkin and/or generating
overdues for lost-then-found items.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
LP#1670425: RTL improvements to new advanced search limiter block
Add some extra divs to the block with associated styling so that the advanced
search limiter block displays correctly for right-to-left languages. Also, add
some CSS to the rtl stylesheet so that padding and margins are added to the
correct side of blocks.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Kathy Lussier [Fri, 10 Mar 2017 13:57:26 +0000 (08:57 -0500)]
LP#1670425: New responsive design for advanced search limiters block
When the screen is 600px or smaller, we continue to only display the 'x filters
applied' link as we did with the sidebar display because displaying limiters
pushes the results too far down the screen. Clicking the link toggles the
display of the limiters.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Kathy Lussier [Thu, 2 Mar 2017 04:06:49 +0000 (23:06 -0500)]
LP#1670425: Moving display of advanced search limiters on search results page
Moves the new 2.12 advanced search filters block out of the sidebar and
along the top of the screen so that the user can see limiters along with their
other search terms.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Jason Stephenson [Tue, 11 Apr 2017 14:52:09 +0000 (10:52 -0400)]
LP 1665933: Skip XUL staff client build in make_release.
Add a -x option to skip building the XulRunner staff clients. This is
useful for making custom tarballs for local installation where you
will build the staff client on the server.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Ben Shum <ben@evergreener.net>
Dan Scott [Fri, 7 Apr 2017 18:19:22 +0000 (14:19 -0400)]
LP#1680312 Ensure oils_i18n_gettext keys are unique
To avoid inadvertent introduction of duplicate oils_18n_gettext() keys
in the data seed SQL, which will then prevent translated strings from
being able to be loaded, add a regression test.
Signed-off-by: Dan Scott <dan@coffeecode.net> Signed-off-by: Ben Shum <ben@evergreener.net>
To test
-------
[1] Open the MARC Tag Tables admin interface in the web
staff client and edit an existing entry. Note that
changing the selected OU will result in there being
no change and error messages appearing in the browser
JavaScript console.
[2] Apply the patch and repeat step 1.
[3] Verify that no errors are logged.
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Mike Rylander [Thu, 9 Mar 2017 20:26:44 +0000 (15:26 -0500)]
LP#1167541: Use Patron home org for pickup lib instead of staff's
When staff are placing a hold for a patron, we should use the patron's
preferred pickup location, and failing that, their home library rather
than the staff's home library.
To test
-------
[1] In the web staff client, search for a title to place
a hold request on, using a patron record
whose home library is different from the home library of
the staff member you are logged in as.
[2] Note that the pickup location defaults to the staff
account's home library.
[3] Apply the patch and repeat step #1. This time, the default
pickup library should be the home library of the patron.
[4] Set a preferred pickup location for the patron, then
repeat step #1. This time, the default pickup library
should be the preferred pickup location just set.
[5] Repeat steps #1-#4 using the XUL staff client; note that
for step #3, it will be necessary to rebuild the client.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Dan Scott [Mon, 27 Mar 2017 02:24:57 +0000 (22:24 -0400)]
Resolve a few doc build errors with images
* We need to match the case of images exactly on case-sensitive file systems
* Two dots in a file name confuses the simple-minded PDF build
* Comment out images that we don't actually have yet
This patch fixes a case where JavaScript used in the OPAC
attempts to set the value of a #client_tz_id input on all
pages, even though only the login page has such an input.
To test:
[1] Load the OPAC homepage and open the JavaScript console/developer tools.
Note that there's a "Cannot set property 'value' of null"
error.
[2] Apply the patch and try again; this time there shouldn't
be such an error.
[3] Open the login page, and verify, using developer tools,
that the hidden client_tz_id input does have its value
set to the client timezone.
Chris Sharp found that make check was failing on Ubuntu 14.04 and 16.04.
I borrowed a few lines from the OpenSRF configure.ac and modified the
Open-ILS/src/c-apps/tests/Makefile.am to use a more autoconf-oriented
approach that won't lead to unnecessary checks in the install scripts.
Signed-off-by: Jason Stephenson <jason@sigio.com> Signed-off-by: Ben Shum <ben@evergreener.net> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Ben Shum [Tue, 21 Mar 2017 13:37:48 +0000 (09:37 -0400)]
Docs: README to include Debian for changing ownership of /var/lock/apache2
Minor tweak to also include Debian among distributions where it might
be necessary to change ownership of /var/lock/apache2 to opensrf user.
Previously this had been Ubuntu only issue, but has since been encountered
during new Debian installations.
Kathy Lussier [Tue, 21 Mar 2017 01:25:25 +0000 (21:25 -0400)]
LP#1673891: Fix untranslatable strings in metarecord sibling links
We had a couple of untrasnlatable strings in the new sibling link section
of the record summary page. This commit makes the strings translatable and
also rewords one of the strings, as recommended by Eva Cerninakova, to make
it easier to translate in other languages.
Bill Erickson [Tue, 7 Mar 2017 17:25:32 +0000 (12:25 -0500)]
LP#1670512 Apply focus/select model udpates via timeout
Avoid manually invoking scope.$apply() in the midst of an angular
$digest loop, since this is forbidden by angular. Wrap the apply()'s in
a $timeout, so they occur after the currently running digest.
Fixes the focusMe, blurMe, and selectMe directives.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Mike Rylander [Wed, 17 Aug 2016 17:25:35 +0000 (13:25 -0400)]
LP#1638377: Allow perl to be installed in non-standard locations
Add --with-perlbase configure option to specify
an alternative location for installing the Perl modules. This
can be useful for setups that want to run the Perl modules
from a shared filesystem or environments that need to run
multiple versions of OpenSRF simultaneously.
Users of --with-perlbase are responsible for ensuring that
PERL5LIB is set appropriately.
To test
-------
[1] Use --with-perlbase during the configure step, e.g.,
./configure --with-perlbase /tmp/perl
[2] Run make; make check; sudo make install
[3] Verify that the Perl modules are installed under
/tmp/perl.
[4] Make a change to a Perl source file, then
go to src/perlmods, then run sudo ./Build install. Verify
that it remembers the --with-perlbase directory
and installs the updated module there.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Galen Charlton [Tue, 14 Mar 2017 17:52:15 +0000 (13:52 -0400)]
Docs: replace "OPAC" jargon in release notes
... in favor of "public catalog". Please note that
I don't feel strongly about this change, and won't mind
if it gets reverted. I do feel more strongly about the
word "OPAC" slipping into patron-targeted documentation.
Kathy Lussier [Tue, 14 Mar 2017 17:52:33 +0000 (13:52 -0400)]
Docs: Translator acknowledgements and PostgreSQL support
Updates the release notes with acknowledgements for translators that changed
trasnlations strings for offically-supported languages since the last release.
Also adds PostgreSQL as a recommendation as per discussion at March 2017 dev
meeting and follow-up e-mail to the dev list.
Kathy Lussier [Fri, 10 Mar 2017 20:38:10 +0000 (15:38 -0500)]
Docs: Additions to 2.12 release notes
Adds organizations that commissioned development, contributors who have
contributed since the beta release, new notes for ebook integration, and
some some missed features.
The passwd storage PgTAP test is failing because the user ids shifted when new
sample records were added to the actor.usr table in the Concerto dataset. This
branch changes the id in the test to point to the correct user.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <ben@evergreener.net>
LP#1586567 Always return Fund Years sorted descending
Currently, fund year selectors in Acq interfaces (at least Acq Admin ->
Funds, and Acq -> Load MARC Order Records) show the fund years in
database order. This commit adds a descending sort to the perl function
that retrieves fund years for those interfaces. It also removes the
unsuccessful attempt at sorting that was present in the dojo code.
Jason Etheridge [Wed, 2 Nov 2016 18:28:08 +0000 (14:28 -0400)]
lp1261835 stop colliding bill UI refreshes
for want of promises in Angular :)
population of the bill list in this implementation is asynchronous, but the rest
of the refresh action is not, and it's sadly being invoked multiple times. There
are different ways to fix this, but using a semaphore seems to work.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Dawn Dale <ddale@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Dan Wells [Wed, 2 Nov 2016 18:35:16 +0000 (14:35 -0400)]
LP#1175293 Use filtered fund dropdown in funding source interface
The exising interface for allocating to funds from a funding source
view lists all funds by code only. Since many (most?) orgs reuse
fund codes year to year, you eventually end up with a bunch of
dupes you cannot tell apart.
Let's "borrow" an AutoFieldWidget to do the heavy lifting of creating
a filtered list of active funds, and include the year for further
user validation.
This is inspired by a few other fund dropdowns, but may not be the
best overall solution.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Bill Erickson [Tue, 28 Feb 2017 16:33:25 +0000 (11:33 -0500)]
LP#1668682 Checkout holds fullfill ignores expire time
Checking out a hold-captured item for a hold whose expire time is in the
past, but has not yet been canceled by the hold targeter, now marks the
hold as fulfilled.
Signed-off-by: Bill Erickson <berickxx@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Kathy Lussier [Fri, 3 Mar 2017 04:52:30 +0000 (23:52 -0500)]
LP#1522644: Make Mark for Hold Transfer option consistent with other options
Makes the following changes to the Mark for Holds Transfer Destination option:
1) Changes the label from "Mark As Title Hold Transfer Destination" to "Title
Hold Transfer." The 'Mark" piece is already implied in the "Mark For" button
label, and the long text was pushing the menu off the screen for some displays.
2) Makes the option behave as other Mark options. If a record is already marked,
it displays the marked Record ID in the menu. The mark is also removed when the
"Reset Record Marks" option is clicked.
3) Pushes the reset option down to the bottom of the menu and alphabetizes the
other Mark options above it.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Bill Erickson <berickxx@gmail.com>