Commit Graph

3959 Commits

Author SHA1 Message Date
Galen Charlton d4cad06ab2 do some validation of the KohaOpacRecentSearches cookie
Add validation of the value of the KohaOpacRecentSearches.  In
particular, this patch avoids the generation of an internal server
error when the OPAC is presented with an old cookie that uses the
old Storable-based serialization.

This patch also moves parsing of the cookie value into a
new routine in C4::Auth, ParseSearchHistoryCookie, and adds
a test case.

To test (in conjunction with the previous patch):

Exercise the OPAC search history functionality, after
turning on the EnableOpacSearchHistory syspref:

- As an anonymous user, conduct a variety of searches,
  including ones that include non-ASCII characters
- Check the search history and verify that all searches
  are listed
- Apply this patch and the previous one.
- Do *not* clear the KohaOpacRecentSearches cookie
- Check the search history and verify that no searches
  are listed any more
- As an anonymous user, conduct a variety of searches,
  including ones that include non-ASCII characters
- Check the search history and verify that all searches
  are listed
- Log into the OPAC
- Verify that current and past searches are listed in
  search history.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-07-28 03:16:57 +00:00
Galen Charlton b36778ee09 use JSON rather than Storable for the OPAC search history cookie
To test:

Exercise the OPAC search history functionality, after
turning on the EnableOpacSearchHistory syspref:

- Clear the KohaOpacRecentSearches cookie
- As an anonymous user, conduct a variety of searches,
  including ones that include non-ASCII characters
- Check the search history and verified that all searches
  are listed
- Log into the OPAC
- Verify that current and past searches are listed in
  search history.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
2013-07-28 03:16:52 +00:00
Kyle M Hall 3714af3015 Bug 9541: make OPAC login page respect OPAC_CSS_OVERRIDE
When clicking the login link for opac-user.pl in a multiple branch
scenario the environment variable for OPAC_CSS_OVERRIDE was ignored from
the koha-conf.xml file.  It seems like is is working on every page in
the opac except for the login page.

Test Plan:
1) Set up a Koha server with 2 separate catalog configurations
   ( e.g. opac1.kohatest, opac2.kohatest )
2) Set the OPAC_CSS_OVERRIDE directive for separate css files
   in each opac
3) Browse to the opac login page, note the css is not applied
4) Apply this patch
5) Reload the page, note the css is now applied

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 71b79d5990)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit 69a8048eee)

Solved Conflicts in C4/Auth.pm

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit 69a8048eee)

Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit b9687ad6a6)
2013-07-18 21:14:44 +12:00
David Cook 43ae4ba709 Bug 10466: fix glitch in OPAC display of titles saved to list
When displaying (in the OPAC) the set of records saved to a list,
an apparently random number (typically 33 or 34) is sometimes
displayed at the end of the publication description.  In particular,
this can occur when XSLT is *not* being used to display search results;
this patch corrects the problem.

Now for the technical details:

This patch checks to see if "size" is undefined. If it is, we add a
blank (i.e. "") value to it in place of undef.

If we do not do this, calling "itemloo.size" will return the size
of the "itemloo" hash, rather than the value for the "size" key.

This is because "size" is a virtual method in Template Toolkit. It's
uncertain why the value is retrieved for the "size" key when there is
a defined value and why TT doesn't use the method instead, and that
it uses "size" as a method only if there is either no "size" key or
if the value tied to the "size" key is null/undef. This might be a
feature or it might be a bug in TT...

In the meantime, we will check to see if it's undefined. If it is,
we'll give it a value.

This bug has been identified in the opac-search.pl, search.pl and
addbooks.pl pages before. To address it, we're currently checking
if there is a "size" key, and if not...we're adding one with a blank
value.

This patch takes up that same idea, although I think it might be better
to rename the variable before passing it to TT in case the behaviour
of TT changes in the future in regards to how it handles virtual
methods.

N.B. Obviously, this only affects users not using XSLTs.

--

Test Plan:

Before applying the patch:

0) Make sure you have opac search result XSLT turned off

1) Find bib records that do not have a 300$c (Dimensions) value.
2) Find bib records that do have a 300$c (Dimensions) value.

(N.B. These values should be stored in the `size` column of biblioitems).

3) Add items from both sets of records to a List
4) Note that records without a 300$c will display a number at the end
of the "Publication" description/string. It should be something like
33 or 34 in most cases.
5) Note that records with a 300$c don't display this number. They just
show the value from 300$c.

Apply the patch.

6) Clear your cache, refresh the page, etc.
7) Note that the number (e.g. 33 or 34) has disappeared from the end
of the "Publication" description/string.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Added a small comment at the end of this one line.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit ceada35e00)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit a7d116e2fe)
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit a7d116e2fe)
Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit 0cb17b47f6)
2013-07-18 21:00:17 +12:00
Marcel de Rooy dc715257b7 Bug 10458: Remove obsolete Z3950 module and test
Are not used. Contain several FIXMEs.
Removing them makes life easier.

Test plan:
Actually, you cannot test this.
But for confidence: do a Z3950 search in cataloguing and acquisition.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 63ba05183e)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit 1dbd1d938a)
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit 1dbd1d938a)

Conflicts:
	C4/Z3950.pm

Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit b98c441915)
2013-07-18 20:51:10 +12:00
Galen Charlton 96418566a2 bug 9370: improve splitting of LC call numbers for labels
Use the Perl module Library::CallNumber::LC to parse and split
LC call numbers when generating spine labels.

For example, QH541.15.C6 C25 2012 should be split as follows:

QH
541.15
.C6
C25
2012

To test, create an item with call number QH541.15.C6 C25 2012
and classification source LC, then create a spine label for that
item using a layout of type 'biblio' that has the split call numbers
option enabled.  The call number should be split as indicated above.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit edb8bddff0)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit 10f5822daa)
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit 10f5822daa)
Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit 56ea58ecda)
2013-07-17 20:14:34 +12:00
Galen Charlton a51f6ff963 bug 6281: add Library::CallNumber::LC as a required Perl dependency
This module is currently packaged by Debian for Wheezy and by
Ubuntu for Precise and Quantal.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit f1c45784dc)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit e4faf296c9)

Solved minor Conflicts:
C4/Installer/PerlDependencies.pm

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit e4faf296c9)

Solved minor conflict:
	C4/Installer/PerlDependencies.pm

Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit c5f4ef1c49)
2013-07-17 19:54:34 +12:00
Galen Charlton f0fce8915d bug 6281: introduce LC::CallNumber::LC for sorting LC call numbers
This replaces the previous hand-coded normalizer.  Because
LC::CallNumber::LC appears to reject strings that aren't valid
LC call numbers, significant changes to the test cases were
made as well -- however, the one that really counts is the
last one which verifies the sorting.

To recalculate the call number sort key for each item, it is necessary
to run misc/maintenance/touch_all_items.pl

To test, create item records with the following call numbers, setting
the classification sort to 'lcc':

QC100 .U57 NO. 555 1986
QC145 .A57 V.12 1980
QC145.45 .H4 D65 1998
QC995 .E29 1997

Next, make a report of them in the inventory tool.  The items should be sorted
in the above order.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit bc87274c66)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit d7862378f0)
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit d7862378f0)
Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit a86d814225)
2013-07-17 19:53:00 +12:00
Marcel de Rooy 4c80f139ba Bug 10381: POD lines of GetBasketsInfosByBookseller
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Cedric Vita <cedric.vita@dracenie.com>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 5bf996f68d)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
(cherry picked from commit 1530cee8a5)

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit 1530cee8a5)

Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit f57dab4b0d)
2013-06-17 19:52:42 +12:00
Marcel de Rooy c526912cc6 Bug 9824: Followup for removing filter
Adds allbaskets parameter to GetBasketsInfosByBookseller. (Only used in booksellers.pl now)
Normally, all 'active' baskets are shown. With allbaskets=1 all baskets :)
In the template I had to rename a loop var supplier to supplier1 to resolve
name conflict between template vars.
In the template I added the string: Cancel filter.
Note that this string is already translated:
msgid "Cancel filter"
msgstr ""
Hope this helps.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Undoing the filter works and I checked that the string gets
translated with the po files in current master.
So this is almost perfect, only we can't apply the filters
again and the link remains 'cancel' when we already did.
Sending a follow-up trying to fix this.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
(cherry picked from commit 529434cab8)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
(cherry picked from commit a114dc7614)

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit a114dc7614)

Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from bf47671bac)
2013-06-17 19:50:38 +12:00
Lyon3 Team b5ee276f9f Bug 9824 - Hide basket with no expected items in basqket list by bookseller
Before patch you will see in acqui/booksellers.pl all the baskets ever
created.
After the patch you will see in acqui/booksellers.pl only the basket
with expected items.

Test plan :
* Create a basket with some orders lines
You should see this basket in acqui/booksellers.pl
* receive or cancel all the line in this basket
This basket shouldn't appear any more in acqui/booksellers.pl

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
(cherry picked from commit a0a6d6e64b)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
(cherry picked from commit e1dbabdb7a)

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
(cherry picked from commit e1dbabdb7a)

As this is requested, and applies well in 3.10.x, I push it with
it's followups.

Signed-off-by: Chris Hall <followingthepath@gmail.com>
(cherry picked from commit c80b91c3e0)
2013-06-17 19:49:55 +12:00
Fridolyn SOMERS d2b017a0f6 Bug 10033 - dangerous query in _koha_modify_item
The SQL query build in C4::Items::_koha_modify_item performs an update on a row of items table identified by itemnumber.
Actually the query is build using a hash of datas :
    for my $key ( keys %$item ) {
        $query.="$key=?,";
        push @bind, $item->{$key};
    }
But this hash contains 'itemnumber' key, so you get an update including the primary key.
It is actually harmless but may be dangerous.

This patch simply skips itemnumber key in above loop.

Test plan :
Check you can create and modify items.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
(cherry picked from commit 598dfe2722)

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
(cherry picked from commit ba8e383cf6)

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-05-09 19:24:34 +12:00
Julian Maurice 2f2ec10b46 Bug 9019: Return item fields in ILS-DI GetRecords
Signed-off-by: Srikanth Dhondi <srikanth@catalyst.net.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

1) Activate ILS-DI in system preferencs
2) Access http://.../cgi-bin/koha/ilsdi.pl to see documentation
3) Try http://.../cgi-bin/koha/ilsdi.pl?service=GetRecords&id=12+14
   with various valid biblionumbers for your system
4) Verify 952 is included in the <marcxml> and all other data displays
   correctly

All tests pass.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2013-04-24 21:12:51 +12:00
Mark Tompsett 854a4525d8 Bug 8737 - Incorrect icon at login in staff client
Added the following missing code to ensure the correct icon
is used when logged out:
   IntranetFavicon => C4::Context->preference('IntranetFavicon')
This was added into an existing $template->param() call.

Not to be confused with the koha logo on the login page, the
icon is a 16x16 pixel graphic in the browser tab. The default
is found at .../intranet-tmpl/prog/en/includes/favicon.ico.

If the "IntranetFavicon" system preference is set, it should be
used by the staff client regardless of login state. It was not
being used in the "AUTH rejected" section of Auth.pm, but the
OpacFavicon variable was being set. This explains why the
"OpacFavicon" system preference works for the OPAC client, but
not the staff client upon logout.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-04-21 11:14:02 +12:00
Mark Tompsett 5634fc955d Bug 8780 - Lower dependency version for DateTime::TimeZone
The fresh install of Debian, with the debian.koha-community.org
repository, only has version 1.20 by default. As only the most
basic functionality is being used, this version number should be
lowered from 1.26 to 1.20 in ./C4/Installer/PerlDependencies.pm
to make git installations cleaner.

Signed-off-by: wajasu <matted-34813@mypacks.net>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-04-21 11:00:13 +12:00
Chris Nighswonger fed08650e4 Bug 9535 - Patron card creator "Remove duplicates" function doesn't work
This bug was due to a difference in field names used in the item data
for items versus patrons. This patch adds a ternary to discern between
the two.

To test:

Before applying patch:

1. Create a batch of patroncards with one duplicate.
2. Run the de-duplication on the batch.
3. Note that all patrons beyond the first in the batch are now
   deleted.

After applying patch:
4. Repeat steps 1-2.
5. Note that only the duplicate patron is removed.

Signed-off-by: Chris Nighswonger <cnighswonger@foundations.edu>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Tested successfully with both patron card batches and label batches.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Add indentation for readability
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2013-04-14 19:26:56 +12:00
Adrien Saurat 424652b700 Bug 9838: fix on 04patron_status.t
Some patron infos were hard coded instead
of using the variables defined in SIPtest.pm

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2013-04-14 18:15:14 +12:00
Fridolyn SOMERS cc6aafc308 Bug 9726: XISBN service throttle not initialized
For limiting XISBN API use, XISBNDailyLimit syspref is used to compare
with daily use count of the API. This count is stored in
services_throttle table. But this table content is never initialized,
not in installer nor in updatedatabase. So count is never increased and
API is used without limit.

This patch add an insert of service type in services_throttle if not
existing. So service throttle will be initialized.

Test plan :
- Check that you don't have a line in services_throttle for
  service_type=xisbn
- Activate FRBRizeEditions and XISBN sysprefs
- Set a small number in XISBNDailyLimit (ie 5)
- Go to a biblio page (with ISBN)
- Look at services_throttle table
  => you should have a line for service_type=xisbn with service_count=1.
- Refresh biblio page untill limit is reached
  => service_count should be equal to limit for service_type=xisbn

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Passes test plan correctly.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Fixes problem, tested according to test plan.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2013-03-31 19:40:16 +13:00
Fridolyn SOMERS 0c1229eef2 Bug 9274: Software error in bibtex export
Exporting to Bibtex from OPAC returns a software error.
This is because call to C4::Biblio::GetMarcAuthors does
not return only authors but also authority link.
This patch replaces this call by a direct read of
MARC::Record, like for other Bibtex datas.
C4::Biblio::GetMarcAuthors is really destinated to a
direct use in a template.
Also, actually all author subfields are joined with
'and'. According to Bibtext format, authors should be
"firstname surname and ..." or "surname, firstname and
...". I have choosen second one because in non-UNIMARC
it corresponds to $a content.

For example UNIMARC :
700 $aDoe $bJohn
700 $aDoe $bJanne
Gives : Doe, John and Doe, Janne
For example MARC21 :
700 $aDoe, John
700 $aDoe, Janne
Gives : Doe, John and Doe, Janne

Test plan :
Without patch :
Exporting to Bibtex from OPAC returns a software error.
With patch :
Exporting to Bibtex from OPAC succeeds.
Authors are composed using : $a, $b and ... for UNIMARC, $a ... for other marc flavours.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>

Comment: Works as decribed. All record export that produces
error pre-patch, now export without error.
No koha-qa errors

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Fixes error and output of additional authors.
Main entry in 100 is still missing.
All tests and  QA script pass.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2013-03-31 18:53:57 +13:00
Vitor FERNANDES cd173ef3fd Bug 9341: Problem with UNIMARC authors facets
In UNIMARC installations the authors have a double comma separating the subfield a and the subfield b.

Test plan:

- After applying the patch do a search and check the double comma in authors facets.
- Apply the patch
- Do a new search
- Check if authors facets as a double comma

Sponsored-by: KEEP SOLUTIONS
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Conflicts:
	installer/data/mysql/sysprefs.sql
	installer/data/mysql/updatedatabase.pl

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Conflicts:
	installer/data/mysql/sysprefs.sql

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-03-29 19:10:36 +13:00
Fridolyn SOMERS 91b19f9f6a Bug 9377 - itemtype in duplicate biblio search
In C4::Search::FindDuplicate, when biblio has no ISBN, the duplicate search adds :
$query .= " and itemtype=$result->{itemtype}".
This is wrong when itemtype is defined in items.

This patch simply removes the itemtype from dublicate search.

Test plan :
- Go to a biblio details page
- Click on "Edit as new (duplicate)"
- If ISBN is defined, remove it
- Click on save
=> a duplicate is detected
- Change biblio item type and save
=> a duplicate is detected
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-03-17 09:24:49 +13:00
Liz Rea 9e300f6a80 Bug 8682 - Renewals do not appear on quick slips
To test:
Issue two books to a patron.
Do a renewal on one of them.
update the issuedate on the item that has been renewed to something before today (renewals on the same day will work even without this patch)
I did: select * from issues;
update issues set issuedate="2013-01-25 14:00:00" where itemnumber = 948; (itemnumber is variable depending on your test data.)

Print a quick slip before the patch - the renewal will not show up as one of today's issues.
Print a quick slip after the patch - the renewal will show up as one of today's issues.

If you need reasoning as to why a renewal should show up on the quick slip, think of it as a record of everything
a borrower did today, without the hassle of overdues.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-03-11 21:46:59 +13:00
Jared Camins-Esakov 9086611f2d Bug 9174: Fix itemtype image display in OPAC lists
Prior to this patch, C4::VirtualShelves::Page did not make sure that
the itemtype images that it chose when displaying itemtype images for
biblio-level itemtypes were for the correct interface, so
even on the OPAC the Intranet icons were requested. On standard
installations, intranet-tmpl is not available to the OPAC.

To test:
1) Set noItemTypeImages to "Show" and item-level_items to "biblio record"
2) Create a list and add an item with the default item type (942$c in
   MARC21) set to something with an itemtype image associated with it.
3) View the list in the OPAC.
4) If you are an a standard install, the itemtype image will be a broken
   link. If on a dev install, you can confirm with Firebug or the like
   that the image is pulled from /intranet-tmpl.
5) Apply patch.
6) Run `prove t/db_dependent/Koha.t` to confirm that the behavior of the
   routine used to retrieve the image URL is correct. (Note that you
   must have an item type with the code 'BK')
7) Refresh the list, noting that the display is now correct/the image is
   pulled from opac-tmpl.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
It works as expected. All tests in Koha.t passed.
Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Conflicts:

	t/db_dependent/Koha.t

Squashed with: Bug 9174 follow-up: Eliminate warning and fix POD

Thanks to Marcel for spotting these issues.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Mason James <mtj@kohaaloha.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-02-03 15:27:40 +13:00
Galen Charlton 8435eb78f5 Bug 9494: update default LOC z39.50 target settings
This patch updates the seed data from the target list at
http://www.loc.gov/z3950/lcserver.html#addr.

Comment: new target works. updated deleting and reloading
sample targets.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Elliott Davis <elliott@bywatersolions.com>
I agree with Galen that this may need to be incorproated as a follow-up
for current installations. Works fine for new installs
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-02-02 20:10:52 +13:00
Kyle M Hall 1928119e3b Bug 9348 - Format dates in HOLD notices consistently
Right now notices for holds awaiting pickup read something like this:

You have a hold available for pickup as of 2011-02-12.
This hold will expire if it is not picked up before: 02/22/2011.
If you no longer need this item or have any questions please contact us

Both dates should be formatting based on the dateformat system preference.

Test Plan:
1) Apply patch
2) Set the HOLD notice to the following:
    <<reserves.waitingdate>> / <<reserves.expirationdate>>
3) Place a hold for a patron
4) Enable the HOLD notice via email for that patron ( requires EnhancedMessaging )
5) Check the item in
6) Go to the borrower's Notices tab, check the body of the new HOLD notice,
   it should have two dates separated by a '/' in the format set by the dateformat
   system preference.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Patch works as advertised according to the test plan.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Tested also with the HOLD_PRINT notice.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-02-01 21:11:28 +13:00
Fridolyn SOMERS 13c9a79a15 Bug 9147: OPAC hidden fields are not hidden in ISBD view
When in framework a subfield has a number > 0 in hidden, it his hidden in MARCview.
It should be hidden also in ISBD view.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Does what it says, hides hidden fields on the OPAC

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
All tests and QA script pass.

To test:
1) Hide 245$b or another field from ISBD view in your MARC
   framework by assigning a hidden value greater 0
2) Check the different views in OPAC, the field should be hidden now from
  - Labelled MARC view (as it was before this patch)
  - ISBD view
   It will still show up for plain MARC and XSLT views.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-02-01 21:00:43 +13:00
Chris Cormack 702736d9da Bug 9102 : Set HttpOnly on the CGISESSID cookie
https://www.owasp.org/index.php/HttpOnly

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

To test, use curl

Before the patch

% curl -I http://192.168.2.135
HTTP/1.1 200 OK
Date: Sun, 18 Nov 2012 06:56:49 GMT
Server: Apache/2.2.22 (Ubuntu)
Pragma: no-cache
Cache-control: no-cache
Content-script-type: text/javascript
Content-style-type: text/css
Set-Cookie: CGISESSID=19689f6e7d8ec94c25269fecebf2f009; path=/
Vary: Accept-Encoding
Content-Type: text/html; charset=UTF-8

After patch

 % curl -I http://192.168.2.135
HTTP/1.1 200 OK
Date: Sun, 18 Nov 2012 07:01:04 GMT
Server: Apache/2.2.22 (Ubuntu)
Pragma: no-cache
Cache-control: no-cache
Content-script-type: text/javascript
Content-style-type: text/css
Set-Cookie: CGISESSID=da25baf03c0bc1e2c512a627028e43e6; path=/; HttpOnly
Vary: Accept-Encoding
Content-Type: text/html; charset=UTF-8
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2013-01-13 08:01:58 +13:00
christophe croullebois 185d563c48 SIGNED-OFF] bug 8382: It is not possible to cancel an order on a filtered page in parcel.pl
Because in parcel.pl page the filter (on the left) makes a table using jscript and
a very different workflow, the "cancel" link does nothing just asking for cancelling.
Principaly due to the use of the "filter" js function that call the parcel.pl page
and does all the job in a separate block with a separate perl function
(SearchOrder) that sends all to js, that constructs html to finally append it to table.
So I have decided to rebuild entirely the filter.
I have choosen to overload the function "GetPendingOrders" to enable it to accept new arguments.
To test : when you are in "parcel.pl" ready to receive orders, simply select a filter on the left
and on the filtered page try to cancel a line.
You'll have the warning message but no more, the line will be not canceled.

Signed-off-by: wajasu <matted-34813@mypacks.net>
2012-12-14 08:56:29 +13:00
Fridolyn SOMERS 51577d91e7 Bug 9123: Authorities search ordered by authid does not work
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Tested with Zebra, marc21, grs1.
Discovered that paging through auth search results does no longer work, but that is not related to these changes.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested with Zebra, marc21, dom.
All tests pass.
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-12-03 20:00:51 +13:00
Jared Camins-Esakov 91116d70d0 Bug 9149: Add missing GetAuthorizedHeading
On 3.8.x, it was possible for multiple automatically generated
authorities to be linked to a single heading. This patch deletes
previous links from headings prior to linking them to
automatically-generated headings. This patch also corrects a
potential problem wherein multiple authorities might be generated if
a record is edited repeatedly in quick succession. The latter problem
exists on Master and 3.6.x as well, and the code that corrects the
multiple linkages is equally applicable if seemingly unnecessary.

This patch adds a missing routine to C4::AuthoritiesMarc that should
have been in the 3.8.x version of the patch for bug 8823.

To test:
1) Turn on BiblioAddsAuthorities and AutoCreateAuthorities.
2) Create a new record or edit an existing one, and add an
   authority-controlled heading (for example, MARC21 1xx or 6xx or
   UNIMARC 6xx or 7xx) which does not currently exist in your authority
   file.
3) If you don't get a software error, it worked.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
For 2) you can also download a record over Z39.50.
Passes all tests.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
2012-12-02 19:15:09 +13:00
Tomas Cohen Arazi 1d69301468 Bug 8800 - useDaysMode=Datedue wrong behaviour (revisited)
useDaysMode=Datedue wasn't used as advertised in the docs. Added
next_open_day and prev_open_day subs to Koha::Calendar and some tests for them.

- Koha::Calendar->addDate was rewritten in a more sane way (also split into
  addHours and addDays for convenience).
- Fixed a bug introduced in Bug 8966 regarding dt truncation and dtSets->contains
- Minor docs typos
- Use the passed Calendar mode or default to 'Calendar' in Koha::Calendar->_mockinit.
- Tests

I'm writing some db-dependent tests for is_holiday, and hopefully for CalcDateDue so any
rewrite/followup doesn't break things.

Regards
To+

Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passed-QA-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Conflicts:
	t/Calendar.t

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-26 13:22:56 +13:00
Mathieu Saby 4718ea1a3f Bug 8954: Make languages list in advanced search translatable (revision 1)
In opac-search.pl and search.pl, this patch moves the $lang variable from the end to the begining of the script, and use it as a parameter for getAllLanguages.
In Languages.pm, getAllLanguages function is modified :
- if no parameter is passed to the function, it returns english languages names
- if a $lang parameter conforming to RFC4646 syntax is passed :
-- the function returns languages names translated in $lang if possible
-- if a language name is not translated in $lang in database, the function returns english language name
To test, set your opac and staff interface in english and in other languages and check search.pl and opac-search.pl :
- If language names in your languages_description table are translated in the same language you use for your GUI, the language names in dropdown list will be translated in this language (+native name).
- If your GUI is in english, or in a language into whitch languages names are not translated in languages_description, the dropdown list will stay in english (+native name).

Signed-off-by: Marc Veron <veron@veron.ch>

Patch behaves as expected.

With Opac language set to French I got all languages with French language name.
With German (de-DE), I got only a few with German language names (and all other with English ones),
this was due to missing entries for de-DE in table language_descriptions.
This behaviour is consistent with the description above.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

Tested language list in OPAC and staff advanced search is translated
properly after applying the patch. Checked that language switcher still
works like it should.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Fixed typo in POD.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-26 13:19:24 +13:00
Jared Camins-Esakov aaf3b8ce85 Bug 9070: [SIGNED-OFF] authority searches in auth_finder error out
When using authority records imported into Koha from elsewhere, you
can get an error like:
    Can't use string ("HASH(0xbc6c{30)") as a HASH ref while "strict refs" in use at /usr/share/koha/lib/C4/AuthoritiesMarc.pm line 363.
in authorities/auth_finder.pl. This patch fixes that error.

To test:
1) You will need records imported from elsewhere.
2) Use the authority control plugin in a bib record to search for one of
   those headings.
3) Observe you get a nasty error.
4) Apply patch.
5) Repeat step 2.
6) Observe the error is gone.
7) Sign off.

Signed-off-by: Magnus Enger <magnus@enger.priv.no>
Works as advertised. No warning about "defined(%hash) is deprecated"
under perl v5.10.1.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>

Conflicts:
	C4/AuthoritiesMarc.pm

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-26 13:05:49 +13:00
Chris Nighswonger 987d9bd110 Bug 9085 - Installer will not run with DEBUG set
This is due to raising all db errors combined with the fact that attempts
to make selections from a non-existent systempreferences table raises db errors.

The installer should run even with DEBUG set, otherwise dropping and recreating
a development database becomes somewhat of a chore. This patch adds code to
check for the existence of the systempreferece table. If the table exists, then
RaiseError is enabled on the database handle. Otherwise it is disabled to allow
the installer to run without throwing an error.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
The installer can now be run both with and without DEBUG set.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-21 08:42:12 +13:00
Fridolyn SOMERS 9cc0e57996 Bug 8996: In result page items with negative notforloan are available
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Passed-QA-by: Marcel de Rooy <M.de.Rooy@rijksmuseum.nl>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-11 19:00:07 +13:00
Fridolyn SOMERS 1b9c25f741 Bug 7921: Software error while placing order
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Passed-QA-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-11 18:58:25 +13:00
Fridolyn SOMERS 16c2e43793 Bug 8988: item status uses authorized value description for intranet
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Passed-QA-by: Marcel de Rooy <M.de.Rooy@rijksmuseum.nl>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-11 18:56:53 +13:00
Marcel de Rooy 71164aa14e 7805 Followup for perlcritic messages
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-08 16:09:40 +13:00
Marcel de Rooy bb3c997c20 7805 Exposing the new list permissions in opac and staff
This report builds on 7310.
Had to correct some lines in ModShelf and AddShelf as well in order to save 0 values correctly for the permission columns.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-08 16:09:11 +13:00
Owen Leonard 4e0af00bfa Bug 8804 [Revised] Quiet errors in the log from Auth.pm
Found three cases where variables were being
referenced which did not (in each case) exist. Adding
checks for those variables' existence.

Errors appeared when logged in and viewing a detail
page in the OPAC.

Revision simplifies logic as per RM suggestion.

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-11-03 06:13:23 +13:00
Jared Camins-Esakov 216251e524 Bug 8823: CatalogModuleRelink Creates Multiple Links between Bib and Auth record
On 3.8.x, it was possible for multiple automatically generated
authorities to be linked to a single heading. This patch deletes
previous links from headings prior to linking them to
automatically-generated headings. This patch also corrects a
potential problem wherein multiple authorities might be generated if
a record is edited repeatedly in quick succession. The latter problem
exists on Master and 3.6.x as well, and the code that corrects the
multiple linkages is equally applicable if seemingly unnecessary.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-29 09:29:01 +13:00
Robert Williams e381533412 Bug 8939 : Fines being charged during the grace period
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-27 14:30:46 +13:00
Mathieu Saby 82fc340e73 Bug 8958: Make facets more UNIMARC compliant (revision 1)
Suppressions : I suppressed some indexes not existing in Unimarc : 603, 502,
504

Corrections :

  - Places : 651 was Marc21 => I put the right value (607)
  - Topics : 600a => 600ab (name/surname) ;  604a => 604at (author/title)

To test, take a record with 607, 600ab, 601ab, 604at, do a research matching
this record, and check if facets looks nicer that before...

Signed-off-by: Frédéric Demians <f.demians@tamil.fr>

Works as described. 607 for Places is very useful! Other tweakings make sense.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-27 14:28:08 +13:00
Lyon3 Team f128fb554e Bug 8888 : Question marks in series title facet links
When series title include a question or exclamation mark, theese must be removed
to prevent search failure.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>

Before the patch: Series facet links with ! or ? return no results.
After the patch the same links return valid results.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-27 14:22:09 +13:00
Mark Tompsett 4d9d883f6f Bug 8834 - Call to C4::Context::preference fails to pass $self in Circulation.pm
Changed:
    my $circcontrol = C4::Context::preference('CircControl');
To:
    my $circcontrol = C4::Context->preference('CircControl');
This will pass $self and 'CircControl' which will then prevent
a "Use of uninitialized value" error log entry.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-25 09:26:23 +13:00
Colin Campbell 1f877328dc Bug 8841 Duedate should be set to end of expiry day
When reducing duedate to patron's expiry date
it should be set to end of that day not 00:00
take account of the fact that the borrower
expiry date will have no hours/minutes

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-25 09:22:34 +13:00
Jonathan Druart 45cff3e8de But 8787: don't load the page if OpacMaintenance is ON
If the syspref OpacMaintenance is ON, it is useless to loaded the
requested page.

To test:
- switch on the syspref OpacMaintenace
- check in your apache access log, zebra log, etc. the requested page is
  not loaded (i.e. on the opac-search.pl page)

Signed-off-by: Marc Veron <veron@veron.ch>
Checked by watching  other_vhosts_access.log
Works as expected

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-25 09:21:02 +13:00
Robin Sheat bebe004d79 Bug 8806 - [3.8.x] Changelog updates, dependencies
This adds dependencies that are required for tests to run, but weren't
added to the dependencies file, and so causing issues with package
builds.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-11 14:58:45 +13:00
Kyle M Hall 13a2d21811 Bug 8700 - RESERVESLIP fields not being replaced correctly
The slip RESERVESLIP is not replacing fields correctly.
C4::Reserves::ReserveSlip calls C4::Letters::GetPreparedLetter,
and passes the $reserve hashref to it for each table except branches
( which is passed the branchcode ). The problem is, if you pass a
hashref for a table, it uses that hashref for the replacing, rather
than looking up the data from the database.

Fixed by passing the correct keys for each of the tables requested.

Signed-off-by: Marc Veron <veron@veron.ch>

Tested following the test plan.
Could reproduce the bug.
After applying the patch slip printed as expected.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-11 10:32:37 +13:00
Julian Maurice 8d3270f1ae Bug 8850: Export CanItemBeReserved in C4::ILSDI::Services
Signed-off-by: Matthias Meusburger <matthias.meusburger@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2012-10-06 20:10:46 +13:00