Joe Atzberger [Thu, 14 May 2009 20:28:40 +0000 (15:28 -0500)]
@renew_failed can cause enormous performance-killing array.
The array was populated and values flagged with an accessor, like:
for (@failedrenews) { $renew_failed[$_] = 1; }
But this means that an array of possibly hundreds of thousands of elements
would have to be auto-populated for high itemnumbers. A hash is the correct
structure. We also haven't checked the user input for validity, so we do not know
for sure that @failedrenews really does contain just itemnumbers.
Chris Catalfo [Tue, 12 May 2009 00:35:13 +0000 (00:35 +0000)]
Bug 1907 partial fix: prevent warnings on undefined params.
This patch adds default blank values for a couple of params the script might receive which were producing warns in the error log. Also wraps GetMarcBiblio in an eval.
Joe Atzberger [Mon, 11 May 2009 21:44:29 +0000 (16:44 -0500)]
Script to check for corruption of marcxml, and optionally to attempt fix.
When marcxml cannot be parsed into a MARC::Record object, the biblio is
undisplayable and it obviously breaks many features in Koha. This script
can test to parse every marcxml, and alert on failures. Optionally, the
marcxml can be replaced from the marc field.
Note that as a result of this patch, not only will the
page use valid XHTML, but the intranet stylesheets are
now used, IMO improving the display of the form.
This patch also fixes the descriptions of the Leader/09
and Leader/17.
Galen Charlton [Fri, 8 May 2009 20:10:13 +0000 (15:10 -0500)]
bug 3209: add 'p' (mixed materials) to MARC21 Leader/06 dropdown
Also made the following updates to the MARC21 leader plugin
[1] Changed description of Leader/08 to 'Type of control'
[2] Fixed typo in description value for 'z' in Leader/17
[3] Updated Leader/19, which is now 'Multipart resource record level'
Galen Charlton [Fri, 8 May 2009 22:31:14 +0000 (17:31 -0500)]
bug 3120: tweak splitting of Dewey call number
If a call number prefix contains a hyphen, try not to
split on the hyphen. For example, rather than
splitting the call number 'CD-ROM 787.87 EAS'
like this:
(bug #3497) show publication year, or copyrightdate
This change the shelf view in opac, to show publication year, in the column "Year"(that was previously copyrightdate), and is there is no publication year, show copyright date.
This patch, fix the unimarc 700-4 plugin, adding the plugin_parameters() function.
And add an eval, that permit to have error in plugin, but don't die the editor.
This patch add the use of CircControl and HomeOrHoldingBranch for return and transfert rules.
* ItemHomeLibrary goes to item{HomeOrHoldingBranch}
* PatronLibrary goes to the borrower library
* PickupLibrary depends where the items was checked out, and the actual library.
This add a little improvment that does not re-request each time the circcontrol syspref.
Allow autotruncation to be set on its own
This simply reprocess operands in order to add * at lefthandside
It is a problem with non LTR scripts. But works fine with all the latin scripts
(bug #3553) do not allow users to create code-less frameworks
This patch, disallow the users to create frameworks without frameworkcode.
It adds some javascripts checks, and some perls checks(for non-javascript users).
This fix the user ability to cancel holds in OPAC.
At the moment, a user can cancel all his holds, but in fact, only items that are not in transfert or waiting to be checked out can be cancelled by the user.
The values are not escaped in javascript, so if there is double quotes, the authority cannot be imported because of javascript error. This patch fix this.
Colin Campbell [Thu, 20 Aug 2009 10:12:57 +0000 (11:12 +0100)]
Avoid numeric comparisons with leading zeroes
Numbers in perl with leading zeros are interpreted in octal
Ensure that comparisons are done using string operators
or where appropriate use the MARC::Field method
Colin Campbell [Tue, 11 Aug 2009 16:43:02 +0000 (17:43 +0100)]
Bug 3522 Refactor Create Update Delete letter for consistency and readability
Fixed inconsistent usuage of primary key in delete
Refactored:
Moved operations to separate subroutines to clarify data flow
Removed unnecessary redirects to self
Renamed confusingly named else variable passed to template
Other changes for code clarity
NB Outstanding:
database reading/writing should live in appropriate module
not duplicate it here.
Galen Charlton [Tue, 11 Aug 2009 14:46:20 +0000 (10:46 -0400)]
bug 3520: fix crash when adding or editing items
Fix the following crash when adding or editing an
item record in the staff interface:
Can't call method "append_fields" on an undefined value at
/usr/local/share/perl/5.10.0/MARC/File/SAX.pm line 92.
at /usr/local/share/perl/5.10.0/MARC/File/SAX.pm line 92
This crash appears only if a version of MARC::File::XML
greater than 0.88 is installed, and was triggered by
C4::Biblio::TransformHtmlToXml() failing to create a valid
MARCXML blob, which must include a <record> element.
This patch also fixes the indicator values generated by
TransformHtmlToXml(), setting them to " " instead of
"" when no indicator value is supplied.
Galen Charlton [Mon, 10 Aug 2009 04:18:08 +0000 (00:18 -0400)]
bug 2157: add ability to 'clean' staged record batches
batches, it is now possible to 'clean' a batch by
removing all bib and item records staged in the batch. This
has the effect of helping to reduce database space used
by old import batches as well as removing staged records
from the cataloging reservoir search. Note that 'cleaning'
a batch affects only the copies of the records that were staged;
if the batch was committed, cleaning the batch does not
affect any bibs and items that were committed into the catalog.
Also note that once you clean a committed batch of records, it is
impossible to undo the previous commit operation.
Michael Hafen [Mon, 10 Aug 2009 17:24:05 +0000 (11:24 -0600)]
bugfix opac-user stomps mylibraryfirst value in quick search label
the system preference mylibraryfirst is exported by Auth containing the logged
in users branchcode. It is also exported as the value of the syspref by
opac-user.pl. The effect is that when mylibraryfirst is on and the user
logged in the text label for the OPAC quick search instead of displaying
'Search (in [branchcode] only)' shows 'Search (in 1 only)'. Other user pages
are uneffected.
Galen Charlton [Sat, 1 Aug 2009 16:17:18 +0000 (12:17 -0400)]
bug 3465: enhance DB update reporting by web installer
This enhances the web installer so that messages from updatedatabase.pl will
be displayed to the user running a database update. Messages printed to STDOUT
will be displayed as the update report, while messages printed to STDERR will
be displayed as update errors.
This patch introduces a new module dependency, IPC::Cmd.
IPC::Cmd lets one run an external program such as updatedatabase.pl and easily
capture STDERR and STDOUT for further munging. IPC::Cmd is core in Perl 5.10
and stable in Perl 5.8.
This little script establishes a framework for database cleanup on some regular
schedule. Initial implementation provides for brute truncation of the sessions
table, and selective-by-age cleanup of the zebraqueue.
Bug 1607: Fixes the delete checkboxes in purchase suggestions.
If a user views suggestions of another user, syspref (OPACViewOthersSuggestions), a selection check box for deletion appeared next to all of the suggested titles whether the logged-in user owned them or not. - fixed
Also fixes the "Clear all" and "Select all" links which appeared for anonymouse users, if AnonSuggestions is turned on.
Joe Atzberger [Wed, 8 Jul 2009 20:27:45 +0000 (15:27 -0500)]
Search.pm minor cleanup
Trying to move towards enabling warnings.
Add warn for unknown $query_type.
Use common $dbh.
push @array, ({key1=>value1...}); is the same as
push @array, {key1=>value1...};
if ( scalar(@$arrayref) > 0 ) is the same as
if (scalar @$arrayref)
Lines like:
my @operators = @$operators if $operators;
are bad because we need @operators to be declared and in scope later,
even if it is undef. Without $operators, the variable is not in scope.
(Bug 3402) Serials issue name not escaped when passed forward to routing slip
The issue descriptor was not being escaped before being passed on to the
routing slip, causing truncation. It's truly impossible to know for sure
what will be there, so uri_escape-ing seemed the best way to ensure that
it gets handed forward and makes it all the way to the printable slip.
Joe Atzberger [Wed, 22 Jul 2009 15:23:16 +0000 (10:23 -0500)]
Cleanup _Findgroupreserve.
Mostly formatting SELECT statement for readability. Also updated POD
and added a comment. This command:
git diff -w C4/Reserves.pm
shows only the POD and comment chnages.
Bug 3322: Fixes expandedSearchOption in opac. Makes "fewer options" possible.
Copies the logic of catalogue/search.pl to fix the expanded search option in opac. When expanded search is the default, it was impossible to go to the "fewer" options.
Bug 3423 - In Cataloging, fields are not ordered by tag number
In cataloging, depending on installation and how biblio framework has been
created/modified, fields are not displayed ordered by tag number. For example,
in UNIMARC you can have in tab '2':
225
200
210
This patch order fields in tabs by tag and letter in the tag.