Removing 'use C4::Branch' in favour of a subroutine-specific 'require C4::Branch'
causes the GetBranchName subroutine to return an error, as it's not defined
in C4::Items. Adding "C4::Branch::" scoping fixes the error, which is what's done here.
To confirm problem:
1. Attempt to run bulkmarcimport.pl before applying the patch. You should get
ERROR: Adding items to bib 435 failed: Undefined subroutine &C4::Items::GetBranchName
called at /home/sekjal/kohaclone/C4/Items.pm line 656, <GEN13> line 435.
To test:
2. apply patch
3. run bulkmarcimport again. Error should disappear.
Signed-off-by: Ian Walls <koha.sekjal@gmail.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Note that this problem only appears when importing records with item (952)
fields.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
C4::Branch is used only in CheckItemPresave, moving from a use to a require in the sub
C4::Reserve:
This package is loaded just for C4::Reserves::CheckReserves called in C4::Items::GetItemsInfo
The GetItemsInfo stores the result of CheckReserves in a hash entry, count_reserve, that is used only in opac_detail to display the status of a hold. We could remove the reserve_count hash entry and inline C4::Reserves::CheckReserves directly from opac-detail.pl page
in opac-detail.pl, instead of
if( $itm->{'count_reserves'} eq "Waiting"){ $itm->{'waiting'} = 1; }
write :
if ( C4::Reserves::CheckReserves(<<parameters>>) eq "Waiting"){ $itm->{'waiting'} = 1; }
C4::Acquisition is used only in MoveItemFromBiblio, a sub that is rarely called. Moving from a use to a require in the sub
C4::Charset is used only in _parse_unlinked_item_subfields_from_xml. Moving from a use to require in the sub
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Checked opac-detail and cataloging. Code looks good.
C4::Biblio is used in many many places. The goal of this cleaning is to do from C4::Biblio a package with as many dependancies as possible.
* C4::Heading is called only in 1 place, highly rarely used (only in 1 misc/link_bibs_to_authorities.pl), moving to require
* PrepareItemrecordDisplay is a sub that is more related to Items, moving it here. It means some scripts that used this sub must be checked against use C4::Items
* C4::Items is needed in EmbedItemsInMarcBiblio, moving it only in this sub, and switching to require
* 2 subs are totally useless z3950_extended_services and set_service_options, removing them
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
No test plan included, but tested some opac and cataloging functions.
Code looks good. Marked as Passed QA.
This patch adds a C4::Search to subscription-detail.pl to compensate for a removed
one from auth.pm during the denesting effort.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 7546 Do not call routine as bareword
Fixes compilation errors due to calling routine without parens
Also nothing was gained (and obfuscation added) by forcing
the return into a hash ref have changed variable to hash
tidied up the if else chain
These routines should be refactored out future
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
bug 7546 follow-up, enabled_staff_search_views problem
* enabled_staff_search_views was not exported by C4::Search, should have been
* serials/serials-edit.pl were also missing it
Comments:
* checked with for file in */*.pl; do perl -wc $file; done that no script was still having this problem
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Final sign off for all 3 patches
Note: I had some problems with tests, but it is probably related to my data and not this patch.
* removed use C4::Koha that is useless
* moved "use C4::Members" to "require C4::Members" just before GetMemberDetails call. This will avoid loading C4::Member everytime a page is called by someone not logged
* still to do = work on C4::VirtualShelves, that can be optimized, definetly !
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Rebased on latest master, 28 Jan 2012
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Please WAIT with virtual shelves. Working on that..
Tested and marked as Passed QA.
* C4::Circulation is unused, removing it
* C4::Members used only in ShelfPossibleAction, switching from use to require
* C4::Auth used only in RefreshShelvesSummary, a sub called only in
opac-addbybiblionumber.pl script, moving the require inside the sub
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
C4::Search is needed only in authorities sub, moving it here and switching to
require
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Corrected call to SimpleSearch in both subs where it is used. Additional
performance improvements are included in bug 7284. 28 Jan 2012
* use C4::Branch is loaded only to call GetBranchNAme in PrepareSerialsData
and set branchname in the hashresult. This sub PrepareSerialsData is used
in the following scripts :
opac/opac-serial-issues.pl: my $subscriptioninformation=PrepareSerialsData($subscriptions); => no use of branchname after
serials/serials-collection.pl: $subscriptions=PrepareSerialsData(\@subscriptioninformation); => no use of branchname after
=> we can remove the ->{branchname} from the result, and remove the C4::Branch dependancy
* moves use C4::Items to require C4::Items, to call AddItemFromMarc, when
receiving a serial, with Recieving create an item set in the subscription.
* removed use C4::Letters and C4::Search, that are useless
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
* removed use C4::Output, that was not used
* moved use URI::split to getitemtypeimagelocation and switched to "require".
Checked it still works through admin/itemtype.pl
* moved use Business::ISBN to _isbn_cleanup.pl and switched to "require".
Checked it still works with the following small script :
use C4::Koha;
print GetNormalizedISBN("1-56592-257-3");
(GetNormalizedISBN uses _isbn_cleanup)
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Removed unneeded self=shift from unshift_token
(as peek and next do not take a self, makes interface more consistent)
http://bugs.koha-community.org/show_bug.cgi?id=5327
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Use dataTables plugin
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Add an option for marcstd to the opac-export.pl and catalogue/export.pl
scripts. This new format removes all 9XX, X9X, XX9 fields and subfield $9
(with the exception of 490 in flavours of MARC other than UNIMARC). The work is
done in C4::Record::marc2marc.
This patch adds the new export option 'marcstd' for exporting MARC
records without 9xx, x9x and xx9 fields and subfields to the staff
detail page.
Testing plan:
1. Export a record in "MARC (Unicode/UTF-8)" format as a control
2. In the OPAC, run the following jQuery to add the marcstd option to the UI:
> $("#export #format").append("<option value='marcstd'>MARC (no 9xx)</option>");
3. Export the same record in "MARC (no 9xx)" format
4. Compare the two, noticing that any subfield $9 or fields including 9 (other
than 490 in flavours of MARC other than UNIMARC) have been removed
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Works as advertised now.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This patch squashes both the original patch and Katrin's follow-up adding
marcstd as an export option on the staff client.
Feb 13, 2012 (marcel): Amended this patch to resolved two definitions of $error in catalogue/export script.
Just add to your Koha configuration file
<template_cache_dir>/path/writable/by/apache/user</template_cache_dir>
in the <config> block, and Koha will use template caching, for about
10% CPU time saving.
on linux servers, /tmp is usually OK
(also fixes an indenting with a TAB)
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
The results of using this are very striking. Based on an insufficient
sample size, it would seem that the time spent in T::T is reduced by a
factor of at least 5.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Observe AllowItemsOnHandCheckout syspref when using SIP self checkout
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
To test:
* place an item on hold for patron A
* attempt to circulate that item to patron B (via SIP/selfcheck)
syspref off: item should not circulate to patron B
Syspref On: item should circulate to patron B
Both conditions passed in our testing.
Also verified that normal staff client behavior regarding this situation was preserved. It was.
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Tested:
item checked out and marked lost - item is removed from borrower's checkouts and charged to patron
Checking out the item (without checking it in first) removed the fines and issued the item normally.
Passed prove t xt t/db_dependent (results congruent with current master failures)
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
The scripts run with the caveat that you must specify the path to SIPconfig.xml. The followup previously attached should take care of that issue.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This requires Chris C's patch to move the scripts to the new location outside of C4.
To test:
run sip_run.sh with no arguments - it should fail with a message to add the path and try again.
Run sip_run.sh with a path to a valid SIPconfig.xml - it should start and run.
Signed-off-by: Aleksa Vujicic <aleksa@catalyst.net.nz>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Amended to replace some copy-and-paste comments only with consent of MJR.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch adds a system preference under Patron -> BorrowerRenewalPeriodBase
Using this preference the patch allows renewal of Patron account either from todays date or from existing expiry date in the patrons account.
To test : Apply patch; Set System Preference BorrowerRenewalPeriodBase ( under Patron ) to "current membership expiry date";
Renew a patron; You will observe that patrons account expiry date has been calculated from previuos expiry date instead of today's date
( as is the default in Koha prior to this patch ).
If I search for a valid ISBN number and hit the Z39.50 search, the title field
is populated with the ISBN number I searched for. This number should populate
the ISBN field and not the title field.
http://bugs.koha-community.org/show_bug.cgi?id=6539
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
To test:
- Search new ISBN using ISBN search from advanced search page
- 0 results - click on Z39.50 search
- Z30.50 form will have your ISBN in ISBN search option
I am signing off on this, because it's an improvement over the current
behaviour.
I see some problems though that should perhaps be addressed in a separate
bug or as a follow-up:
If you use th catalog search field and search for an ISBN or
a keyword the right fields of the Z39.50 search form will be populated, but
the search index will be put in front:
ISBN: kw,wrdl: 9783492251495
or
Title: kw,wrdl: koha testing
If you search for ISBN as keyword on the advanced search page, it will
still populate the Title search.
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
ModBiblio() - set framework to "" if "Default"
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
All 4 tests passed:
Test 1: Merge two records with the same framework
Desired result: shouldn't get any prompting to pick a framework, and the
same framework should be used
Test 2: 2 records, different frameworks, into the kept record's framework
Desired result: merge with kept records framework used
Test 3: 2 records, different frameworks, into the discarded record's
framework
Desired result: merge with used records framework used
Test 4: 2 records, different frameworks, into a third framework
Desired result: merge with third framework used
Changed searchResults() interface
Added trailing \n when parsing OpacHiddenItems to make YAML happy
XSLTParse4Display() and buildKohaItemsNamespace() take hidden
items as input param
Removed numbering from the search results, looks wrong with
hidden items
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Commit 07d1eae7cc removed this statement from the module, but some months later commit 7b12e07d3b reintroduced it again while reindenting code ;)
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch add the javascript library, a CSS (and image files from
datatables.net) and another javascript file which provides some extra
features.
It also add a Perl module C4::Utils::Datatables which provides helpful
functions for server-side processing
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
* Show the "Upload images" button when OPACLocalCoverImages is enabled but
LocalCoverImages (i.e. local cover images on the staff client) is not
* Correct copyright and license comments in new files
* perltidy and replace tabs by four spaces
Signed-off-by: Koustubha Kale <kmkale@anantcorp.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
A frequently-requested feature for Koha, especially by special libraries, is
the ability to upload local cover images into Koha.
This patch adds a bibliocoverimage table, and image handling code in the
C4::Images module. Key features of the implementation include:
1. The ability to have multiple cover images for a biblio
2. Handling for "full size" (800x600) and thumbnail-size (200x140) images
3. Uploading images directly from the record view
The image display functionality by Koustubha Kale of Anant Corporation will
follow in a second patch.
Special thanks to Koustubha Kale and Anant Corporation for the initial
implementation of local cover images, and to Chris Nighswonger of Foundation
Bible College for his prior work on patron images.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Will add comments on Bugzilla.
Patch failed to apply because installer/data/mysql/sysprefs.sql had changed in master.
Corrected the same with this new patch.
getroutinglist returns a count variable to indicate how many elements
are in the array. This is almost always a serious code smell. (We are
programming in a list manipulating language) The routine was executing
am unnecessary loop just to maintain that var.
Removed the variable from the routine and perldoc
refactored calls of the routine removed the c-style loops for
more idiomatic and maintainable for loops
renamed some opaquely named variables
removed a call to the routine where nothing was done with the data
moved some html out of the calling script and into the template
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This depends on bug 929
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Uses the new TT plugin to display the date, while using iso format
to build a correct URL to the invoice page.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Tested by recieving multiple items with the AcqCreateItem
preference set to 'placing and order' and 'receiving an item'
In both cases the pricing and vendor is brought over to the
item record so I'm signing off.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>