Bug 6898 - circulation librarians can't run overdues without reports permissions

This patch adds a new user permission overdues_report for the circulation module, and requires this permission to run the overdue items
report, rather than requiring full reports permissions.

Test plan :
With a user with permissions circulate_remaining_permissions :
- Add overdues_report permission to user
- Go to circulation home
=> you see "Overdues" link
- Clik on it
=> you are allowed to access and use this page
- Remove overdues_report permission to user
- Go to circulation home
=> you do not see "Overdues" link
- Edit URL : <server>/cgi-bin/koha/circ/overdue.pl
=> you are not allowed to access this page
- Go to main page
=> you don't have access to reports module

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Fridolyn SOMERS <fridolyn.somers@biblibre.com>

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Bug 6898 - circulation librarians can't run overdues without reports permissions followup

Better update database.

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

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10000 - Little typo in intranet-tmpl/prog/en/modules/help/tools/letter.tt: sliip

This patch removes the extra i in "sliip."

To test, go to Tools -> Notices & Slips and view the help file. The last
bulleted item on the page should contain no typo.

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

Comment: Can't resist to sign Bug 10000!!
Work as described. No errors.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Can't resist to QA - All tests and QA script pass.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10002 - Don't include line breaks in strings that are translated

Several JS alert messages contain "\n" which is problematic for
translation. This patch removes those instances (a line break is not
strictly necessary anyway). Also corrected: two instances of "holds(s)"

To test, place a hold on a title with items. From the biblio detail page
choose Edit -> Delete all items and Edit -> Delete record. In each case
you should see error messages with no line breaks and no misspellings.

Delete all items attached to the record with holds from the item edit
page. Go back to the detail page and choose Edit -> Delete record. You
should see an error message about existing hold(s) with no line breaks
or misspellings.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Harmless change, fixes misspellings and makes translations easier

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10058 - Fix unapi for NORMARC

This patch uses a lot of MARC21 XSLT to transform NORMARC records
to desired formats. Since NORMARC is mostly a subset of MARC21, I
think this should give passable results. And better results than
no unapi-support at all for NORMARC!

To reproduce:
- Make sure you have marcflavour = NORMARC
- Visit /cgi-bin/koha/unapi in a browser
- Observe the empty <formats></formats> element

To test:
- Apply the patch
- Visit /cgi-bin/koha/unapi in a browser
- Observe the the list of formats in the <formats></formats> element
- Import the provided sample NORMARC record and make a note of its
  biblionumber
- View the record at /cgi-bin/koha/unapi?id=koha:biblionumber:x&format=y
  where x = the biblionumber of the sample record and y = one of the
  formats marcxml, marcxml-full, mods, mods-full, mods3, mods3-full,
  oai_dc, rdfdc, rss2, rss2-full and srw_dc
- Check that the transformed records make some kind of superficial
  sense

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10072 - "my suggestions" always says "There are no pending purchase suggestions."

Test Plan:
1) Switch off the IndependantBranches syspref
2) Log into the OPAC
3) Place a suggestions
4) Instead of seeing your suggestion, you will see "There are no pending
   purchase suggestions."
5) Apply this patch
6) Reload the page
7) You should now see your suggestions

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9860 [Alternate] Incorrect box heading 'Cannot check in' when a late document is returned

The fix for Bug 9397 moved the "cannot check in" heading from within the
one conditional where it should have been displayed to the top of all
check-in errors/messages. "Cannot check in" is still only valid if the
item is withdrawn and BlockReturnOfWithdrawnItems is ON.

In order to accomplish the goal of Bug 9397 while fixing Bug 9860 this
patch puts "cannot check in" back into the correct conditional and adds
a generic heading to check in messages for accessibility purposes.

To test, check in items which will trigger a variety of errors
including:

- item must be returned to home library
- item is lost
- item is withdrawn (wtih BlockReturnOfWithdrawnItems on and off)
- item is overdue

...as well as items which should check in normally. Messages should
display correctly.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9613: items namespace missing in XSLT

In some XSLT, "items" namespace is used in exclude-result-prefixes but is not defined.

This patch add this namespace where missing.
Also corrects a koha.org, instead of koha-community.org, in one namespace URL.

Test plan :
- Enable XSLT on search results
- Perform a search
=> Look at error logs to check that there is no xsl error like :
[Fri Feb 08 15:35:06 2013] [error] [client 127.0.0.1] [Fri Feb  8 15:35:06 2013] opac-search.pl: compilation error: file koha-tmpl/opac-tmpl/prog/en/xslt/UNIMARCslimUtils.xsl line 8 element stylesheet, referer: http://opac.master.community.localhost/cgi-bin/koha/opac-detail.pl?biblionumber=299
[Fri Feb 08 15:35:06 2013] [error] [client 127.0.0.1] [Fri Feb  8 15:35:06 2013] opac-search.pl: xsl:exclude-result-prefixes : undefined namespace items, referer: http://opac.master.community.localhost/cgi-bin/koha/opac-detail.pl?biblionumber=299

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Mathieu Saby <mathieu.saby@univ-rennes2.fr>
Passed-QA-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
With comment on Bugzilla.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9839 - when importing MARC records, item record not created even when set to "always add"

Test Plan:
1) Catalog a new record with an ISBN
2) Add some items to the record
3) Download the record as MARCXML
4) Delete the itemnumbers from the 952 fields in the record,
   Change the barcode fields to unused barcodes
5) Use xml2marc to save as a standard MARC file
6) Import the record using the 'Stage MARC for import' tool
   Use the settings:
       Record matching rule: ISBN
       Action if matching record found: ignore
       Action if no match found: ignore
       Item processing: always_add
       Check for embedded item record data?: Yes
       How to process items: Always add items
7) Import, note the bib is ignored, and the items are not processed
8) Undo import into catalog
8) Apply this patch
9) Import this batch into the catalog
10) Note the items were processed and are now added to the matching
record

Signed-off-by: Mathieu Saby <mathieu.saby@univ-rennes2.fr>
Tested with UNIMARC record. I followed the test plan, just changing 952 by 995
Signed-off-by: Mason James <mtj@kohaaloha.com>

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9523: importing staged bib records hangs if a matched bib has been deleted

Test Plan:
1) Stage a MARC record file that will have matches with existing records
2) Delete the bib from Koha that was matched on
3) Attempt to import the records into Koha, the import will hang
4) Apply the patch
5) Reload manage-marc-import.pl and attempt to import again, this time it should succeed.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10085: unapi does not function under Plack

The following errors appear when trying to use unapi under Plack (among
others):
Variable "$cgi" is not available at /home/jcamins/kohaclone/opac/unapi line 160.
Variable "$format_to_stylesheet_map" is not available at /home/jcamins/kohaclone/opac/unapi line 173.
Variable "$format_info" is not available at /home/jcamins/kohaclone/opac/unapi line 174.
Variable "$format_to_stylesheet_map" is not available at /home/jcamins/kohaclone/opac/unapi line 185.

To test:
1) Try to view /cgi-bin/koha/unapi under Plack
2) There is no step 2. Plack crashes.
3) Apply patch.
4) Try to view /cgi-bin/koha/unapi again, and note that it doesn't crash

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

I'm puzzled how this ever worked anyway, accidentally i'm guessing,
this tidies up some lazy coding

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 8294: Fix display of serial enumeration for OPAC holds

It turns out that this was not a missing but a broken feature.
This patch corrects the template variables to make enumchron
show up on the item table for item level holds in the OPAC.

To test:
Try to place item level holds on
1) a record where at least one item
2) a record where none of the items
has items.enumchron information.

The column with enumchron should only show for 1), but not
for 2).

Signed-off-by: David Cook <dcook@prosentient.com.au>

Works as described.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10026 - OPAC cart not showing location anymore

When Bug 7570 added availability information to the cart it switched
which subroutine was used to get item information, and thus changed how
the information was being returned.

This patch makes accommodations for this change by adding processing of
item location information to the script in a way that will match the
existing template variables.

To test, add items to the cart in the OPAC some of which include
shelving location information. When you view the cart you should see the
shelving location displayed.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9804 - Fix name for NORMARC biblio-koha-indexdefs.xml

When i did bug 8805, I gave the biblio-koha-indexdefs.xml file the
wrong name, and called it biblio-zebra-indexdefs.xml. This patch
fixes that.

To reproduce:
- Check that etc/zebradb/marc_defs/normarc/biblios/biblio-zebra-
  indexdefs.xml exists

To test:
- Apply the patch and check that etc/zebradb/marc_defs/normarc/
  biblios/biblio-zebra-indexdefs.xml no longer exists, but that
  etc/zebradb/marc_defs/normarc/biblios/biblio-koha-indexdefs.xml
  does exist.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9818: Fixing capitalization and remove dollar sign

Overdue Fines Cap ($) > Overdue fines cap (amount)

To test:
Go to administration > circulation and fine rules
Check column label Overdue fines cap now follows capitalization rules
and has no dollar sign.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9831: Correct and add authorised values un French UNIMARC installer

2d version, Correcting a typo

In French UNIMARC mandatory installer, some authorised values for languages, countries and unimarc function codes are wrong.
A lot of unimarc function codes and language codes are missing.
Reference for country codes is ISO 3166-1 standard
Reference for language codes is ISO 632-2 standard
Reference for Unimarc function codes are Unimarc Manual (french version online in BNF website and ABES website)

This patch correct wrong values and add new ones.
For the moment I keep some wrong codes, because they may be used by some librairies :
- language codes deu, lan, mla, sam
- function codes 571, 573, 574, 575

To test :
1) take a fresh new koha
2) apply patch
3) install Koha, choosing French UNIMARC settings
4) look if values are OK in authorised values and if you can use them in cataloguing module

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
SQL change only, French installer installs authorised values
without problems.

Note: There is a problem loading sample labels unrelated to this
patch:

sample_labels.sql
ERROR 1146 (42S02) at line 3: Table 'koha.labels_templates' doesn't exist

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10107 - opacbookbag shouldn't prevent from adding items to a list in the OPAC

This bug is present in master and (at least 3.8.x, where we spotted it).
The patch makes adding items, to a list from the results page, not rely
only on opacbookbag syspref but also 'virtualshelves'.

Regards
To+

PS: Thanks Graciela Galli for reporting.

Sponsored-by: Universidad Nacional de Córdoba
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Template only patch, works nicely.
Test plan copied from bug report:

- Disable the opacbookbag syspref
- Login in the OPAC
- Create a list (I tested a private one)
- Search in your db for some biblios.
- Choose some and add them to the created list
- Go to your users's page, to the my lists tab
- Your list is empty.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10110: Problems with diacritics in saved SQL reports

Adds decoding for cgi params (for completeness).
Apparently, the NAME attribute of DBI statement handle has a UTF8 bug.
Fixing this by decoding the returned column names.
Did this in a shared routine.

http://bugs.koha-community.org/show_bug.cgi?id=10110
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>

Copying test plan from bug report:

Example SQL:
select
branchname as "Bibliothek (üöä)",
branchname "Bibiothek (üäa)",
branchname
from branches where branchcode = <<Bibliothekskürzel|branches>>

1) Create report with given example SQL or your own including
   some diacritics in the columnnames
2) Save the report and run it
3) Verify column names are broken before patch, but fixed after..

All tests and QA script pass.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 10110 Followup for Acquisition.pm

Adding a FIXE at a line that uses $sth->{NAME} for possible utf8 problems.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Adds a comment, no danger from that.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Bug 9684 : Correct path to compact.xsl

When try to display card view of retrieved record
error occurred as compact.xsl could not be found
script was constructing path as though it was opac

Also added fallback to en version if no xsl file
found under current lang as done in opac-showmarc.pl

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Test plan:

* Set sys pref to use CCSR
* Do a Z39.50 Search
* Click 'card' on one of the results
* confirm that there is no error.

All test pass

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
I am astonished that opacthemes affects Z39.50 search in
staff so this might be fixing a bigger problem.

Checked that clicking on Card works for both themes now
correctly after I confirmed the bug.
Also all views in OPAC were checked for both themes.

All tests and QA script pass.

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