To test:
1) Add some suggestions
2) Go to suggestions in staff
3) Choose from filters 'suggested by' or 'managed by'
4) Compare names shown on tabs with names in list of suggestions
Before patch: tab name has the wrong order, while list name is correct.
After patch: all names should be consistent and correct.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Currently, when you delete an item, the timestamp column in deleteditems is
updated with current time. (This comes from an [unintentional] additional
update statement in DelItem.) It makes deletion time visible.
In the past, the marcxml was updated too at that moment, resulting in an
updated timestamp in biblioitems too. The timestamp in biblio was not touched.
If you delete a biblio however, the timestamps in deletedbiblio and
deletedbiblioitems do not reflect time of deletion. They still show the time of
last update before the record was deleted. This last update can be extracted
from MARC field 005 too.
This behavior is not consistent nor logical. I would suggest to add a statement
in DelBiblio to force updating the timestamp in deletedbiblio(items) too. It
makes the time of deletion visible in the record too. The time of deletion of a
biblio can be very useful for e.g. synchronizing purposes.
Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Removes $tablename and $hash from global scope of C4/SQLHelper.pm. They are never used;
all instances of $table are locally scoped to the subroutines, and $hash is never used.
This may help with persistance; if not, it's at least a bit of trivial cleanup.
To test:
1. Search for a patron
2. Create a Contract in Acquisitions
3. Modify that Contract
4. Delete that Contract
All instances should return error free. This checks the subroutines of SQLHelper
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
C4::Category module returns badly encoded patron categories when they are
containing non pure-ASCII characters.
To reproduce this bug:
- Go in Administration > Patron Categories
- Add a new category. Give it this code for example:
Café
- Click on Patrons link on top menu
- Click on New button
=> You get 'Café' displayed without accent
Signed-off-by: Piotr Wejman <ropuch@bagno.be>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
dealing with some BNF/SUDOC invalid utf-8 (in title, the removed fields are used to mark non-sorted words)
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
I can't test this works ok for UNIMARC, but it does not cause any
problems with the translation scripts or MARC21 so signing off
Adds a small check in C4::VirtualShelves::Page::shelfpage to only render
OPACResultsXSLT if the $type is 'opac'. Since parsing the XML is such an expensive
thing, and the resulting XSLTBloc is not used on the staff side, this will increase
performance for Lists in the intranet
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Instead of using the 'p' subfield directly, use the subfield letter
associated with the items.barcode column.
http://bugs.koha-community.org/show_bug.cgi?id=6963
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test cases tested:
- 1 item, barcode empty
- 2 items, barcodes both empty
- 1 item, existing barcode
- 1 item, new barcode
- 2 items, one barcode empty, one existing
All test cases worked nicely and gave correct error messages.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
If the AcqCreateItem preference is set to "ordering" and the barcode for
the new item is already in use, no error is returned, but an invalid
itemnumber is saved in the aqorders_items table and the item is never
created.
This patch adds a duplicate barcode verification in neworderempty.pl
_koha_add_item is also modified so it won't return an invalid ID when
an item can't be added.
http://bugs.koha-community.org/show_bug.cgi?id=6963
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test plan on second patch.
This is a fairly hacky solution, a counter patch would be more than
welcome
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Updated, translated and installed German po files after applying this patch.
No problems found.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
http://bugs.koha-community.org/show_bug.cgi?id=7069
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Patch changes '' to "" to make it work for strings which contain '.
Patch does NOT add new strings to the po files.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Table sorter script causes error if there is no <tbody> to sort.
JS errors cause the YUI toolbar js to abort, causing the problem
observed. When there are no results the whole table should be
omitted and a message displayed in its place.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
To test:
- check toolbar on top of patron reading history with no entries
- check toolbar on top of patron reading history after a few checkouts
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
http://bugs.koha-community.org/show_bug.cgi?id=6414
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed off with a note: this doesn't fix everything mentioned in the bug.
It also might clash with bug 4831 and should be tested with that patch.
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Removes HTML::Template::Pro as a requirement (since we're now on Template::Toolkit).
To test:
On a system without, HTML::Template::Pro installed, run perl koha_perl_deps.pl -m -u
Shouldn't return anything about HTML::Template::Pro
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Takes work done by Eduardo Trápani, alphabetizes, and adds two other packages:
libuniversal-require-perl
libgravatar-url-perl
From my testing, only CGI::Session::Driver::memcached remains missing; it is only
packaged for sid and wheezy at this time
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
The patronid value (cardnumber) set by checkpw in the case of SelfCheckoutByLogin
was improperly scoped with 'my' inside a conditional. The changes followup to 5995
made this more apparent, causing logins to fail.
Also added "parts copyright" statement to the script, since ByWater Solutions did make some
significant contributions to the operations of the page
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
In my haste, I overlooked circ/returns.pl's need for borrower flags. This patch
changes back the call in AddReturn from GetMember to GetMemberDetails
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Add paging in opac-detail when coming from a search to be
able to continue viewing the previous and next register
from the detail without returning to the results.
The partial list pagination can be showed to increase forwarding
or rewinding in the pagination.
It's implemented for Zebra search and not build_grouped_results.
The param busc with all the information from the search is stored
on the session when running opac-search and opac-detail, outside these
pages the busc param is removed from the session.
A list of the biblionumbers inside the OPACnumSearchResults range
is passed to avoid repeating the searching everytime we see the
previous or next biblio. The searching will be run again when
we are going to exceed the list and a new one will be calculated
from the new search.
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
When the CSV file has no password column and no default value was set for
the password :
If we try to modify an existing user, the password from the BD is sent
to ModMember, which then encrypts the already-encrypted password a
second time.
http://bugs.koha-community.org/show_bug.cgi?id=6854
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Confirmed bug on current master.
1) Import new patron with password provided
> OPAC login works
2) Overwrite patron record, password provided
> OPAC login works
3) Overwrite patron record, password not provided
Before patch: OPAC login broken, password in database changed
After patch: OPC login works with same password as before
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Improving the cleanup_database.pl script in two aspects:
1) In some cases CGI::Session seems to place quotes around the atime and ctime
data in the a_session field. Two regexps now take this into account.
2) If the --sessdays parameter is used, the --sessions parameter is now
implicitly enabled too.
With thanks to Ian Bays and Tom Hanstra.
Signed-off-by: Ian Bays <ian.bays@ptfs-europe.com>
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Adds purging completed entries from need_merge_authorities table.
If you set dontmerge to ON, you need to periodically remove records.
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Replaces all instances of GetMemberDetails with the more efficient GetMember. Since
no hash values other than the borrowers table's fields are used in this module, the
transition is safe.
To test:
1. Checkout a material; the page should load without error
2. Renew a material: the page should load without error
3. Return a material: the page should load without error
The above test plan invokes all the subroutines affected by this patch; any call to an undefined
value in a hashref should give a warning
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Replaces all four usages of GetMemberDetails with GetMember, since none of the
hashref fields used were anything other than those in borrower table, which GetMember
returns.
To Test:
1. Apply patch
2. Go to reserve/request.pl; the page should load without error
3. Search for a cardnumber: the page should load without error
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Replaces call to GetMemberDetails with a call to GetMember. Much more efficient,
and since only branchcode is used, no required data is lost.
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
This little script, given a --days numeric parameter, will anonymise checkouts
before that many days ago. Useful for sites that want to automatically do this on
a periodic (cronnable) basis.
Signed-off-by: Ian Walls <ian.walls@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
This follow-up adds a system preference which controls display
of a link to recent comments in the OPAC masthead alongside
"Advanced search," "Tag cloud," etc.
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
The item form on the order receive page (AcqCreateItem = on receive) contains a
lot of blank space which makes it hard to read and fill out.
To test:
- set AcqCreateItem = on receive
- create basket, order something, receive shipment
- check item form is nicely formatted and doesn't include lots of blank space
Note: It will be easier to test if you have an ACQ framework created to hide some
unnecessary subfields, because the hidden fields create the blank space.
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Created an ACQ framework and hid some of the fields (hidden = 5). Before the
patch there were gaps between the fields as shown in the screenshot from
Katrin. After the patch fields line up nicely, with no extra space between
them.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
CanBookBeReserved uses the very heavy-weight function GetItemsInfo to simply retrieve
the itemnumbers attached to a given biblio. The function get_itemnumbers_of() is much
lighter-weight and returns the required information; switching to it will reduce the overall
system resource cost of placing a hold.
Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Rephrasing, correcting typos, removing blank lines
Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Does not break the web-installer and I'm assuming
Katrin is doing the right thing when it comes to
the German text, so signing off!
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
This patch adds a check for the value of the ExtendedPatronAttributes
preference to the scripts and corresponding logic to the templates
controlling the sidebar menu.
The patch also corrects a duplication of attributes code in moremember.pl
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
1) Added extended patron attributes in configuration, turned ExtendedPatronAttributes on
2) Altered patron details, added values for patron attributes
> Verified patron attributes show show correctly
3) Turned off ExtendedPatronAttributes
> Verified patron attributes were hidden everywhere
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Standard author information wasn't even in the template markup, only
"additional author." Added standard author and improved output of
additional authors (hiding label when empty).
Also added subtitle via GetRecordValue (see bug 3550).
Also added check for and output of OPACBaseURL in order
to make OPAC links in the email clickable.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
QA revision: renamed OPACBaseurl to OPACBaseURL for consistency
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Only contains db revision to insert new table need_merge_authorities.
You can apply the revision by running
cgi-bin/koha/installer/install.pl?step=3&op=updatestructure. (Will not change
your version while testing.)
Oct 19, 2011: Rebased after functionality patch signoff.
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Pref MergeAuthoritiesOnUpdate does not exist; should be dontmerge
(AuthoritiesMarc.pm).
Instead of folder modified_authorities, now introducing a table for this
purpose: need_merge_authorities. This eliminates several permissions and
security issues. This change applies to AuthoritiesMarc.pm and
merge_authority.pl.
POD lines added for ModAuthority. Deprecated parameter $merge removed.
Test this patch by applying the db revision first from the second patch.
August 4, 2011: Rebased.
Signed-off-by: Frédéric Demians <f.demians@tamil.fr>
Thanks Marcel. It works as advertised. Both modes are functionnal
(back):
- Immediate with dontmerge=0: After modifying an authority record, its
linked biblios are immediately modified. This isn't the case in 3.4.5.
- Delayed with dontmerge=1: After modifying an authority record, its
linked biblios are not modified. But an entry is added to
need_merge_authority new table and 'merge_authorities.pl -b' script
updates biblios.
Comment: need_merge_authority, like zebraqueue, should be cleared
from time to time.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
If an author's name includes parentheses or other escape-characters, the tracing links
produced in the OPAC and staff client fail in XSLT mode. This patch wraps the author names
in double-quotes, providing the necessary escapement.
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Test plan:
- Create a new framework, delete Thesaurus from 700 and other fields
- Create a new record in this framework
- Add 700$a - use parentheses
- Check the search links in OPAC and staff detail pages
> before patch link was broken, after it works
Note: Links are only broken when no authorities are being used.
When using authorities the link uses the auth number instead of the text
for linking, so the parentheses don't matter for search.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
in C4::SQLHelper::_Process_Operands, $operand has been modified to be cast as an array ref
if the incoming $operand is not a ref. However, the incoming $operand could be some other
kind of ref (hashref for example), which would case the dereferencing in line 419 to fail and exit.
Adding an explicit test for whether the ref is ARRAY seems to clear up this issue.
To test, run t/db_dependent/Members.t. Before, it fails after test 3. After, it completes all tests.
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>