Mike Rylander [Thu, 6 Nov 2014 21:03:36 +0000 (16:03 -0500)]
LP#1390225: Fail to care about errors from auth.session.delete
We're just tossing this call over the wall and moving on. We don't
care if the session wasn't there to delete or even if we didn't pass
a session to the server.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Mike Rylander [Thu, 6 Nov 2014 20:36:16 +0000 (15:36 -0500)]
LP#1390225: redirect to ctx.home_page instead of through ctx.logout_page
This way, we skip the auth.session.delete call that will error out because
we no longer have the authtoken cookie.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
Dan Wells [Thu, 16 Jan 2014 20:07:40 +0000 (15:07 -0500)]
Changes to smooth out make_release
1) Make the fake 'HeadURL' into a URL which works with our web repo.
Note that this has 'tags/' hardcoded in, so it only works with true
release branches (e.g. rel_x_y_z) not "working" branches
(e.g. rel_x_y).
2) Change range selector when building log to better exclude commits
from previous releases.
Dan Scott [Tue, 21 Oct 2014 15:02:12 +0000 (11:02 -0400)]
lp1383763 - Display OpenURL embargo statement
The ResolverResolver service fetches the embargo statement (such as
"Last year not available") from OpenURL resolvers and stores it in a
target_embargo field. In JSPAC we used to display this along with the
coverage statement, because it is very important that people know that a
resource may be available from 1999 but the last year isn't available
online.
Restore the display of this information to the TPAC.
Signed-off-by: Dan Scott <dscott@laurentian.ca> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Galen Charlton [Thu, 23 Oct 2014 19:17:58 +0000 (12:17 -0700)]
LP#1384868: limit fund drop-downs on the invoice page to only active funds
This patch fixes the fund selectors for adding extra copies
and charges to invoices to only active funds (in addition
to the existing restriction to funds visible to the user).
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Bill Erickson <berickxx@gmail.com>
Dan Wells [Thu, 9 Oct 2014 21:32:42 +0000 (17:32 -0400)]
LP#1379824 Make PermaCrud.js disconnect() actually disconnect
The disconnect() method in PermaCrud.js was meant to wrap the
underlying session disconnect, but it never actually disconnected
the session. This could lead to problems in long-living PermaCrud
objects, as they may think they are still connected when they are not
(the session remote_id is never cleared).
Also, remove a couple (now redundant) manual session.disconnect() calls.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Yamil Suarez <yamil@yamil.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Mike Rylander [Fri, 18 Apr 2014 17:45:59 +0000 (13:45 -0400)]
LP#1309664: Add some fixed field seed data for COM and SER
There are a few useful fixed fields we're missing mapping data for,
so this branch adds three: Freq, Regl, and File. There are certainly
more, but here's a bit that's of use to folks in the wild using the
fixed field editor improvements.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Ben Shum [Fri, 26 Sep 2014 21:05:39 +0000 (17:05 -0400)]
LP#1306814: Make use of patron timeout setting for selfcheck
As described in the bug, the library setting "Self Check: Patron Login Timeout
(in seconds)" does not appear to work with the newer selfcheck interface.
It looks like some of it was already being pulled in, like the variable, but
the interface was not utilizing it.
This commit borrows from the old JS selfcheck and implements a default of
three minutes for selfcheck timeout otherwise handled by the library setting.
Signed-off-by: Ben Shum <bshum@biblio.org> Signed-off-by: Michele Morgan <mmorgan@noblenet.org>
Mike Rylander [Mon, 29 Sep 2014 16:40:32 +0000 (12:40 -0400)]
LP#1374091: Speed up metarecord version of unAPI mra call
The change to metabib.record_attr_flat in the previous commit caused
a regression in the plan used in unapi.mmr_mra. This commit addresses
that by unrolling the mra view when used in context with metarecords,
which are shaped differently and require slightly different access
patterns.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Mike Rylander [Thu, 25 Sep 2014 18:34:20 +0000 (14:34 -0400)]
LP#1374091: Redefine view to help PG make better plans
The metabib.record_attr_flat view previously pulled its data
through several other intermediate views. While this improves
maintenance overhead, it ends up being an optimization fence
for certain data sets. So, we pull the logic from the leaf
views up into the main view. And, poof, 2 orders of magnitude
speedup on large data sets.
Signed-off-by: Mike Rylander <miker@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Galen Charlton [Tue, 7 Oct 2014 23:42:18 +0000 (16:42 -0700)]
LP#1378575: teach action::hold_request about behind_desk
This patch teaches the CDBI class for the action.hold_request
table about the newish behind_desk column, preventing errors
like this from being thrown if a recent OpenSRF version is in
use:
Processing of hold failed: Can't locate object method "behind_desk"
via package "action::hold_request" at /usr/local/share/perl/5.14.2/OpenILS/Application/Storage/CDBI.pm line 181.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Fri, 9 May 2014 18:32:14 +0000 (14:32 -0400)]
LP#1254918 limit ACQ batch update fund retrieval by perms
In the ACQ batch update bar along the top of the PO page, limit the
number of funds which require permission checks on the server by
limiting the fund search to those at org units where the requesting user
has the CREATE_PURCHSE_ORDER or MANAGE_FUND permissions.
In other words, if a user only has create-po perms at Branch 1, we can
specifically request funds at that branch (or below) for display so that
the server (PCRUD) does not have to inspect unrelated funds for
permissibility. This speeds up fund retrieval.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Previous to this commit, permissions in Evergreen check a cominbation
of:
* user-object permissions (does the user have a direct permission
mapping to the object in question)
* user-context permissions (does the user have the permission at the
object's context location, whose field is defined in the IDL)
* user-global permission (lacking a context location, does the user
have the permission globally (at the top of the org tree) and therefore
can apply the action to all objects of this typ)
In practice, there are almost no user-object permissions. When retrieving
just on object from the database, the cost of this check is negligable to
the point that we can completely ignore it. However, when retrieving a
large set of objects, such as the list of all funds in a large, consortial
environment, the cost to check the user-object permission adds up to a
noticable amount of time.
To address this, we add a new construct to the IDL instructing the PCRUD
infrastructure to skip user-object permission checking in those cases where
the design and use of the system makes user-specific object permissions
needless or superfluous. This is embodied in a new XML attribute on the
<pcrud> element: ignore_object_perms. When set to "true", pcrud will skip
all user-object permission checks, resulting in faster time-to-first-result.
Additionally, we add a new "owning_user" attribute on the <action> element
of the <pcrud> section. This new attribute specifies the field containing
the actor.usr.id of the user that "owns" the object. This allows PCRUD to
test ownership of an object directly, and if the requesting user and owning
user are the same, the action is allowed.
Finaly, when "global_required" is "true" for the permission check, and there
is no "owning_user" attribute defined for the class in the IDL, we skip the
above-mentioned user-object permission check. When "global_required" is
"false" or there is an "owning_user" attribute, we check for user permissions.
In all cases, the "ignore_object_perms" attribute is honored, and in its
presence we skip non-owner user-object permissions.
The net result is an immediate increase in speed for retrieval of objects
in the presence of the "global_required" attribute, and a mechanism to
increase the speed of specific cases of context-aware retrival by the use
of "ignore_object_perms".
We use this new mechanism to speed the retrieval of fund objects in the
ACQ interfaces that draw available-fund dropdowns.
Signed-off-by: Mike Rylander <mrylander@gmail.com> Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Jeff Davis [Fri, 16 May 2014 22:14:43 +0000 (15:14 -0700)]
LP#1314827: On login, don't allow referer-based redirect to external site
On /eg/opac/login, if no redirect_to param is provided, the TPAC will
attempt to use the referer (if any) as the redirect destination. This
leads to undesirable behavior if the referring URL is from an external
site.
Signed-off-by: Jeff Davis <jdavis@sitka.bclibraries.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
Dan Scott [Wed, 24 Sep 2014 03:29:42 +0000 (23:29 -0400)]
Tidy search section of Using the OPAC
Primarily focused on restructuring the information around Boolean
searching, particularly as I find librarians want to know what the
Boolean operators are that they should use. However, cleaned up some
typos and formatting along the way.
Staff discovered an issue with the tt2 changes that caused the
place hold button to disappear when it shouldn't. Changing an &&
back to || seems to fix this.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Jason Stephenson [Wed, 14 May 2014 19:46:29 +0000 (15:46 -0400)]
LP 1319560: Silence template error messages in Apache error log.
We get a number of messages like the following in our Apache error
logs on a constant basis:
Argument "" isn't numeric in addition (+) at
/openils/var/templates/opac/parts/record/navigation.tt2 line 6.
Argument "" isn't numeric in division (/) at
/openils/var/templates/opac/results.tt2 line 1.
Argument "" isn't numeric in numeric ge (>=) at
/openils/var/templates/opac/parts/record/navigation.tt2 line 38.
Argument "" isn't numeric in numeric gt (>) at
/openils/var/templates/opac/myopac/holds/edit.tt2 line 106.
Argument "" isn't numeric in numeric gt (>) at
/openils/var/templates/opac/myopac/holds.tt2 line 42.
Argument "" isn't numeric in numeric gt (>) at
/openils/var/templates/opac/parts/place_hold.tt2 line 98.
Argument "" isn't numeric in numeric gt (>) at
/openils/var/templates/opac/parts/record/summary.tt2 line 56.
Argument "" isn't numeric in numeric gt (>) at
/openils/var/templates/opac/parts/result/table.tt2 line 87.
Argument "" isn't numeric in numeric lt (<) at
/openils/var/templates/opac/myopac/hold_history.tt2 line 122.
Argument "" isn't numeric in numeric lt (<) at
/openils/var/templates/opac/myopa/result/table.tt2 line 87.
Argument "" isn't numeric in numeric lt (<) at
/openils/var/templates/opac/myopac/hold_history.tt2 line 122.
Argument "" isn't numeric in numeric lt (<) at
/openils/var/templates/opac/myopac/holds.tt2 line 215.
This commit adds some sanity checking to make those messages go
away.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Steven Chan [Mon, 29 Jul 2013 23:27:13 +0000 (16:27 -0700)]
Fix LP904860, Cannot print a patron address label
The sequence of events for printing an address label is as follows.
Staff client Code in the util/print.js file builds an HTML page of the
address label. The page includes two vital components, 1) a source tag
to pull 'print_win.js' file from the server, and 2) an onload event
handler bound to the body tag to execute a 'print_init()' function that
is defined in the source tag.
However, print_init() is undefined because the source tag contains a
badly formed URL. It needs to be prefixed by 'oils://remote' so that the
new 'oils:' protocol can be used to pull the file remotely from the
server.
Signed-off-by: Steven Chan <schan@sitka.bclibraries.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Tue, 17 Jun 2014 19:14:12 +0000 (15:14 -0400)]
LP#1331127 Repair sort logic of previous issuances
Ensure that the list of previous issuances is sorted correctly (on
date_published) when looking for the previous serial.unit to update its
copy location (when serial.prev_issuance_copy_location is enabled).
The data comes sorted from the DB, but the sorting was lost during the
process of unique-ifying the list. Ultimately, it was relying on the
order of hash keys, which is undefined.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Dan Wells <dbw2@calvin.edu>
LP#1370630: don't log mod_deflate actions by default
This patch comments out logging of mod_deflate actions,
as this is needed only for debugging. Otherwise,
deflate_log will grow without bound, as it isn't dealt
with by typical default logrotate configs.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Remington Steed [Fri, 29 Aug 2014 18:45:50 +0000 (14:45 -0400)]
LP#1361801: Add required fields to serial issuance form
This commit prevents issuances from being created without a date_published
or holding_code. This has two benefits:
1. Prevents uncaught exceptions related to submitting null values for
either of those fields.
2. Requiring date_published prevents an ugly error when trying to
predict new issuances from an issuance without a date_published.
This commit does NOT provide any feedback to the user about which fields
are required. That would require further investigation into the Dojo/Dijit
objects being used for the edit form fields.
Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Jennifer Pringle <jpringle@sitka.bclibraries.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
Jeff Godin [Wed, 30 Oct 2013 20:41:06 +0000 (16:41 -0400)]
LP#1246859: Improve username flow for staged users
Staged users in most cases have a username that consists of a UUID.
Rather than leave the UUID as their username or require staff to
clear the field and replace it with a barcode or other value, it
would be better to remove this username when loading the staged user
in the user editor.
This commit clears the username when loading a stage user if the
username looks like a UUID.
If a barcode has been staged for the loaded staged user, the
username will be populated with that value.
If there is no staged barcode, the username will remain blank and
will be populated using the standard method after staff enters a
value in the barcode field.
Signed-off-by: Jeff Godin <jgodin@tadl.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Kathy Lussier [Tue, 12 Aug 2014 21:33:16 +0000 (17:33 -0400)]
LP1309131 - Fix series link
Clicking on a series link with a hyphen failed because the hyphen was
stripped and the two words are joined together. This branch changes
series.tts to replace special characters with a space, which is similar to
the links we build for authors.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Bill Erickson [Mon, 2 Jun 2014 20:14:38 +0000 (16:14 -0400)]
LP#1325720 Repair fund rollover year selector query
Dojo dojo stores track values as strings, so values used in data store
queries must be coerced into strings before performing the query.
This fixes the year query in the fund rollover UI so that the page is
able to render the results of a rollover without dying from an JS error
before completing.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Steven Callender [Thu, 13 Mar 2014 17:34:23 +0000 (13:34 -0400)]
LP#1292129: Removed deleted call numbers from the search results to properly show copy count.
The SQL in fm_IDL.xml for setting up the reporter source "Hold/Copy
Ratio per Bib" includes deleted call numbers which in turn can give
an incorrect copy count. The ratio appears to still be correct because
deleted copies are considered in the ratio calculation, but not the
copy count that is displayed.
Signed-off-by: Steven Callender <stevecallender@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Galen Charlton [Tue, 19 Aug 2014 20:19:20 +0000 (13:19 -0700)]
LP#1358916: refuse to retrieve over-large MARC records via Z39.50
At least one malformed record discovered in the wild can
cause open-ils.search backends to balloon to over 3G of memory
consumption. This patch works around that by refusing
to process any (MARC) Z39.50 results that are larger than the
MARC record maximum of 99,999 octets.
Signed-off-by: Galen Charlton <gmc@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Docs: Fix filenames to match references in the docs - second time
This is just like the fix that Remington Steed sent in on Sept 4th.
These images were creating errors for me when I try to create
an epub version of the docs because they are all referenced as .jpg
but the filenames were .JPG.
Kathy Lussier [Mon, 30 Jun 2014 18:57:29 +0000 (14:57 -0400)]
lp1335958 Remove parameters from current checkouts link
The limit and offset parameters can cause patrons to be stuck in a small
section of their current checkout lists. Let's remove those two parameters
when linking to that list from the patron dashboard.
Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Jim Keenan <jkeenan@cwmars.org> Signed-off-by: Ben Shum <bshum@biblio.org>
LP#1359934: prevent error opening patron search form
As a result of the patch for OpenSRF bug 1316245, JSON2js
in the OpenSRF library is now stricter -- in particular, passing
an undefined value to it results in an exception being thrown.
This patch runs with the increased strictness and fixes an
issue where the patron search form was passing an undefined value
to JSON2js.
Docs: Fix filenames to match references in the docs
These image files were not displaying in the docs because the filenames
and the references used different capitalization. Web URLs are
case-sensitive, so this commit changes the image filenames to be all
lowercase.
Fall back to an unitialized maketext handler, which defaults to the
template language, when OpenILS::WWW::EGWeb::I18N->get_handle fails to
return a response.
Note that why get_handle() returns undef is not yet known.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Ben Shum <bshum@biblio.org>
Jason Etheridge [Mon, 1 Oct 2012 20:49:04 +0000 (16:49 -0400)]
LP#1010027: tweak patron columns in patron search interface
specifically, remove the Mailing Address and Billing Address columns that come
off the actor table, since they are redundant with the Mailing Addr: Address ID
and Billing Addr: Address ID columns that come off the address table.
Also, alphabetize the columns coming directly off of the user table. The columns
coming off the library card and address tables remain unsorted; I believe their
order is as listed in the fm_IDL.xml file for their corresponding fieldmapper
definitions.
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Jennifer Pringle <jpringle@sitka.bclibraries.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
specifically, give fm_columns a sort_headers flag for alphabetizing the columns
returned by label; and delete_me flag for omitting a column definition entirely
Not all xul lists are using fm_columns yet
Signed-off-by: Jason Etheridge <jason@esilibrary.com> Signed-off-by: Jennifer Pringle <jpringle@sitka.bclibraries.ca> Signed-off-by: Ben Shum <bshum@biblio.org>
Chris Sharp [Tue, 11 Jun 2013 14:09:20 +0000 (10:09 -0400)]
LP#1189556: Fix typo in URL_VERIFY permission description
The description for the URL_VERIFY permission contained a typo,
fixed here.
Added an upgrade sql to update the text.
Signed-off-by: Chris Sharp <csharp@georgialibraries.org> Signed-off-by: Pasi Kallinen <pasi.kallinen@pttk.fi> Signed-off-by: Ben Shum <bshum@biblio.org>
Ben Shum [Wed, 30 Apr 2014 06:02:49 +0000 (02:02 -0400)]
LP#1314370: Enable dojo all the time in the catalog
Because we rely on the dojo framework for the shelving location filter in the
advanced search, we should choose to use dojo everywhere and not just when
autosuggest, google books, or novelist are enabled.
This is a quick change to toggle the flag for want_dojo to be set all the time.
Signed-off-by: Ben Shum <bshum@biblio.org> Signed-off-by: Liam Whalen <liam.whalen@bc.libraries.coop>
LP1277556 Fast Item Add no longer opens record after copy is created
Altered save_attempt to handle undefined and true cases for replace_on_complete
When fastItemAdd is not used, replace_on_complete is undefined
When it is used, and successful, replace_on_complete will be set to true
then we need it to execute result.on_complete()
Liam Whalen [Sat, 28 Jun 2014 22:37:28 +0000 (15:37 -0700)]
LP1084269, LP1050043 Expert Search Fixes
Sorting Expert Search corrected
LP1050043 was issued because attempting to sort the MARC expert search
results, in the staff client, caused the staff client to return to the
basic search page rather than sort the results.
To fix the sorting I had to modify two perl files.
metabib.pm had to be changed in a number of ways.
1. The way the sort works currently assumes the user is doing a full
text search. So, it passes in the values of titlesort and authorsort as
the sort variable in the URL. However, in the expert search, it is
looking for the values 'title' and 'author'. This resulted in the title
sort and author sort never being executed and returning the relevance
sort instead. I modified the search to use a regex instead of eq.
2. If a record has no value associated with it e.g. no 260 c for
pubdate, no 245 $a for title, no 1xx $a for author, then the SQL is
supposed to replace those values with either 'AAAA' or 'zzzz' depending
on the order of the sort. This should cause records without the
relevant sort values to be pushed to the bottom of the sort results.
But, the PgSQL function COALESCE, which is supposed to do the
replacing, does not do anything if no rows are returned for a record's
relevant value. To work around this, I surrounded the relevant values
with the MAX() function call, which returns NULL if no row is returned.
Because author sort works on any 1xx value, it sorts those values in
numerical order when there is more than one 1xx in a record. This
requires the use of an ORDER BY statement, which seems to nullify
the effect of MAX(). So, I had to move the MAX() into a second SELECT
statement in the case of author sort.
3. I added the variables number_default_sort and string_default_sort
to the metabib code because the current code hard codes values of
'9999' and 'zzzzzzzz' into the sort.
Search.pm had to be changed to pass the sort values from the TPAC
into the relevant sort subroutines. This was done with the addition of
an $arghash variable that checks the cgi parameters for the sort
variable.
As well, Expert search puts the tag and _special params in the
search form. This causes all other searches to perform Expert searches
afterwords. To fix this, Search.pm is modified to look for an empty
query value before it conducts an Expert search. If it is empty and
the Expert search variables are present, then the Expert search is
performed. Otherwise, a normal search is done.
Finally, to fix the problem reported by LP1050043, I had to modify
searchbar.tt2. Currently, searchbar.tt2 does not have the values from
the Expert search entered into the <form> where the sort functionality
is located. This means, when a sort option is chosen, the TPAC no
longer knows which values were used for the Expert search.
This is not obvious at first because after choosing to sort, the
user is returned to a page where the URL has the Expert search values
in it. This happens because the sort is submitting a form without a
query value, so the TPAC redirects the user to the referring page,
which is the initial Expert search.
To fix this, I added the Expert search values as hidden variables
into the <form> where the sort functionality is located. I also
removed the use of the "_adv" hidden variable from the <form> when
not in the advanced search.
[LP1094269] Retrive past 100 records in Expert Search
Currently, when paging through the results of the Expert search, the
system will not return more than 100 records. Going past page 10
causes a no results screen.
This is due to the offset and limit values not being passed into the
argument hash used to create the SQL for the search. Once the SQL
returns, it returns record ids within the range of the offset and
the limit. So, if the offset is 100 and the limit is 10, the record
ids for search results 100 to 109 are returned.
But, because offset and limit are not being passed into the arghash,
they default to 0 and 100 respectively. This means the first 100
records are always returned regardless of where in the search pages
you are viewing. These 100 results were then pruned to the relevant
10 results in Biblio.pm. However, if the offset starts beyond 100
then no results are returned because the results passed 100 are not
returned by metabib.pm.
This commit passes the offset and limit as arguments in the search
hash. It also removes offset and limit as parameters of the
search.biblio.marc call. Because offset and limit are needed in the
arghash to limit the number of records returned, it is better to
pass them only via the arghash to ensure that no more than the
necessary number of records are returned.
Offset and limit could be kept as parameters, but it would require
modifying metabib as well to look for those parameters, so I think
forcing the Expert search to pass them as argument parameters is the
better option.
As well, this commit removes the pruning in Biblio.pm that was based
on the offset and limit because that is handled in metabib.pm now
that offset and limit are being supplied in the argument hash.
I have checked the source code and the marc_search function in
Biblio.pm is only called via the Expert search in
WWW/EGCatLoader/Search.pm, so modifying Biblio.pm in this manner
will only affect the Expert search and nothing else.
Signed-off-by: Liam Whalen <liam.whalen@bc.libraries.coop> Signed-off-by: Sarah Childs <sarahc@zionsvillelibrary.org> Signed-off-by: Ben Shum <bshum@biblio.org>
Victoria Lewis [Wed, 30 Apr 2014 22:09:07 +0000 (15:09 -0700)]
lp1182605 Abstracting out common functionality from code that sorts call numbers by label_sortkey
Code had been added to insure that LC call numbers are sorting as they should by asset.call_number.label_sortkey.
Code was duplicated in the 'call_number column' in the 'columns' group and in the 'hold_columns'group.
I abstracted the logic out of 'sort_value' and 'render' in the 'call_number' column in the 'columns' group and from
'render' in the 'call_number' column in the 'hold_columns' group to a utility function called
'sort_call_numbers_by_label_sortkey'.
Signed-off-by: Victoria Lewis <vcamklewis@gmail.com>
modified: xul/staff_client/server/circ/util.js Signed-off-by: Kathy Lussier <klussier@masslnc.org> Signed-off-by: Remington Steed <rjs7@calvin.edu> Signed-off-by: Dan Wells <dbw2@calvin.edu>
Kyle Tomita [Mon, 2 Dec 2013 23:50:17 +0000 (15:50 -0800)]
LP1182605 : LC call numbers sort improperly in tabular displays
The issue was that the column was sorting on the label (call number)
and not label_sortkey. An attribute 'sort_value' was added that used
label_sortkey.
Dan Wells [Mon, 7 Jul 2014 17:16:58 +0000 (13:16 -0400)]
Fix currently harmless but still confusing sigil error
get_org_descendants() returns an array ref, not a list, so it doesn't
make sense to assign it to an '@orgs' variable. Lucky for us, our
where-parser treats this single element list containing the ref in the
same manner as the proper ref itself, but at best, it is still very
confusing to see.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
If you have generated holdings, but are not using the "compressed"
display, your holdings show up regardless of scope. This change
limits the display to only sdists with a holding_lib in your current
search scope.
Signed-off-by: Dan Wells <dbw2@calvin.edu> Signed-off-by: Kathy Lussier <klussier@masslnc.org>
Bill Erickson [Tue, 25 Feb 2014 17:23:13 +0000 (12:23 -0500)]
LP#800478 repair logic error in acq fund transfer
The source data for the amount applied to each allocation and transfer
(in certain circumstances) was incorrect.
The transfer amount should not be the total amount allocated from the
source to the fund, but instead the amount of the funding source credit
in cases where we have to pull money from multiple funding source
credits.
Signed-off-by: Bill Erickson <berick@esilibrary.com> Signed-off-by: Liam Whalen <liam.whalen@bc.libraries.coop> Signed-off-by: Mike Rylander <mrylander@gmail.com>
Yamil Suarez [Thu, 7 Aug 2014 21:51:22 +0000 (17:51 -0400)]
Docs: various AsciiDoc formatting fixes for docs
Fixed the 'bad first character' error, the bad apostrophe error. Removed various UTF-8 chars.
Fixed some numbered list formatting, to take out redundant manual numerals…
for example:
. 1 item
. 2 item
. 3 item
became:
. item
. item
. item
also added "+" to wrap around breaks in numbered lists
for example:
. Right-click on the value control for the fixed field that needs to be edited.
image::media/ffrc1.jpg[]
. Select the appropriate value for the fixed field from the menu options.
became:
. Right-click on the value control for the fixed field that needs to be edited.
+
image::media/ffrc1.jpg[]
+
. Select the appropriate value for the fixed field from the menu options.
LP#1302207 - Attempt to validate ISBNs in AddedContent.pm.
When getting ISBNs from the database, they often contain extra stuff
after the ISBN that sometimes causes problems for Business::ISBN.
This commit attempts to resolve some of that by looking only for the
part of the ISBN data that resembles an ISBN and using just that part.
If the ISBN data doesn't look like an ISBN, then it is discarded.
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org> Signed-off-by: Ben Shum <bshum@biblio.org>