Bug 11718 - Use new DataTables include in reports templates

Bug 10649 introduced a new include file for adding DataTables-related
JavaScript assets. This patch adds use of this include file to all
circ-related pages which use DataTables.

Apply the patch and test the following pages to confirm that table
sorting works correctly:

- Reports -> Guided reports -> Use saved
  (reports/guided_reports.pl?phase=Use saved):
  "Creation date" sorting has been reconfigured to use the title-string
  method for sorting on an unformatted date. C4:Reports::Guided.pm has
  been modified to pass an unformatted date to the template. Sorting
  should work correctly for all settings of the dateformat system pref.

- Reports -> Catalog by item type
  (reports/manager.pl?report_name=itemtypes)

- Reports -> Serials statistics wizard (reports/serials_stats.pl):
  The subscription begin and subscription end columns have been modified
  to use the title-string filter for sorting. An unformatted date is now
  passed from reports/serials_stats.pl to the template, where the
  KohaDates filter is used for formatting. Sorting is based on the
  unformatted date. Sorting should work correctly for all settings of
  the dateformat system pref.

  - Sorting of titles should now exclude article from sorting.
  - Minor template improvements:
    - Vendor name now links to vendor details.
    - Subscription title now links to subscription details.
    - Library name is now shown instead of branchcode.

Signed-off-by: Aleisha <aleishaamohia@hotmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script.
Checked all pages, no regressions or Javascript errors detected.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit d6c40ebe5a2ff7ce883c1d36a47720a37754c633)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11531: make it possible to edit transport cost for a new libraries

If you are using the transport cost matrix, and you create a new
library, you cannot edit the fields for this library!

Test Plan:
1) Enable the transport cost matrix
2) Set some transport cost values in the matrix
3) Save the matrix
4) Create a new library
5) View the transport cost matrix again
6) Note the uneditable fields for the new branch
7) Apply this patch
8) View the transport cost matrix again
9) Note you can now edit the fields for the new branch

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as described, passes all tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 4edcec3d5812b159b7012c43a04577bfd7e462bc)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11845 - set overlay and import status translatable in addorderiso2709.tt

In addorderiso2709.tt, the text for overlay and import status come from
database and was not translatable.  Ths patch fixes that.

Same as Bug 10170.

Test plan :
- Go to acquisition module
- Display an open basket
- Click on "From a staged file"
- Look at table
=> Without patch, you see codes in "Status" column : staged, imported, ...
=> With patch, you see descriptions in "Status" column : Staged, Imported, ...
- Click on a "Add orders"
- Look at table
=> Without patch, you see codes in "Match?" column : no_match, auto_match, ...
=> With patch, you see descriptions in "Match?" column : No match, Match found, ...

Signed-off-by: Nathalie CHATILLON <nathalie.chatillon@uhb.fr>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
This is an improvement. Only the translation of auto_match as Match found
could perhaps be further improved.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 20d0aff0e88544cdddfb4a6b90fc73ed652c84bd)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 10415 - Add course reserves to staff client home page

A link to course reserves is in the global header menu but not on the
home page. All links from the global header should be present on the
home page as well. This patch adds it.

To test, apply the patch and if necessary clear your browser cache. View
the staff client home page. If you have "UseCourseReserves" enabled you
should see a link for the course reserves page which is visually
consistent with the other module links. If you do not have course
reserves enabled you should not see the link.

Unrelated: I positioned the admin link after the tools link because it
bugged me.

Signed-off-by: Broust <jean-manuel.broust@univ-lyon2.fr>
Signed-off-by: marjorie barry-vila <marjorie.barry-vila@ccsr.qc.ca>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script, works as described.
Course reserves is still accessible without permissions, but
you can't make any changes to the reserves then.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 8a9cdcd3bcce07ace793b9b2a6ad31f4604961a2)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11366: make "no group" option in acq basket group drop-down translatable

in Acq baskets, there's a pull-down for basket groups. One of the
entries in that pull-down is "No group", which is untranslatable.
This string is hard-coded in Perl.

This patch removes the string from Perl to set it has first option
in select. To allow it to be default value, the option "Add new group"
is moved to last position.

Test plan :
- Go to a closed aquisition basket in no basket group :
  cgi-bin/koha/acqui/basket.pl?basketno=x
=> You see "No group" selected in combobox "Basket group"
- Cick on this combobox
=> You see "No group", then existing basket groups and then "Add new
   group"
- Select a basket group and click on "change basket group"
=> You see the basket group name in combobox
Use translation, for example fr-FR
- go to src/misc/translator
- run : perl translate update fr-FR
=> You find in PO file :
  #: intranet-tmpl/prog/en/modules/acqui/basket.tt:365
  #, fuzzy, c-format
  msgid "No group"
  msgstr "Nom de groupe"
- remove ", fuzzy" and correct translation : "Pas de groupe"
- run : perl translate install fr-FR
- Go to translated aquisition basket page
=> You see translated option in combobox

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 21e6518d32477fa1fe59da64d735f3f07ae49bcd)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11647: require that user log into OPAC to request email subscription notifications

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: remy juliette <remy.gonzalves@iepg.fr>
Signed-off-by: Aurelie Fichot <aurelie.fichot@iepg.fr>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes QA script and tests.
Instead of hiding the feature completely, now a message
tells the user to login to subscribe to the email
notifications.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 6310c992bf23d164f013ead7c0b2182226279454)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11647: (follow-up) test if user is logged in before proposing to subscribe or unsubcribe from serial routing list

To test :
1) Search for a subscription with patron notification active
2) If you're not logged in, a message warns you that you must log
   in to subscribe to notification on new issues
3) If you log in, and have not yet subscribed to this routing list,
   you've got a link to subscribe
4) Once you have subscribed, you've got a link to unsubscribe
5) If you log out, you've got a message saying you must log in to
   subscribe
6) If you log in with another user, you've got the link to subscribe
   or unsubscribe depending on if he has already subscribed.

Signed-off-by: remy juliette <remy.gonzalves@iepg.fr>

Signed-off-by: Aurelie Fichot <aurelie.fichot@iepg.fr>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit b056f93c4d33a9a56d56bbb081924f7c4c974a79)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11647 : (follow-up) Add template modification for bootstrap theme

Signed-off-by: Aurelie Fichot <aurelie.fichot@iepg.fr>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit b987a206f6ba78ae72c5a21e0ce0d8720863746c)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11647: (follow-up) add comment expressing that user must be logged in

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit e34508744d3e76827e911531a56f84731a669784)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11934 - Replace given by if-else statements

To test:

[1] Verify that prove -v t/db_dependent/Circulation_issuingrules.t
    passes.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
replaces given-when with if-elsif-else constructs.
Tests still pass and code looks good.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 12df62ca33047df0c5cd372bf5574cf131f773e0)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11934: (follow-up) tidy up whitespace

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 3a99c0441a7400ddc2437300b94a98e645c89881)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11127: OPAC suggestions form - complain when trying to 'delete selected' without having selected any

To reproduce:
1/ go on opac-suggestions.pl
2/ create a suggestion
3/ click on the delete link without checking any checkbox
The form is submitted with a message "The selected suggestions have been
deleted.".

Test plan:
0/ enable the bootstrap theme
1/ after applying the patch, click on delete without any checkbox
checked, a js alert should occur.
2/ check at least a cb and click on the delete link. The deletion should
work.

Followed test plan. Patch behaves as expected.
Signed-off-by: Marc Véron <veron@veron.ch>

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script, works as described.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit b02f40d6e1febc0802b82660c56f1745ea664fd5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11127: (follow-up) define a specific message for suggestions

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit ce7b11879b850b5302b95a7b7d2f0d15089d9b44)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 9114: Make frameworks import/export routines correctly use UTF-8

Currently both the import_export_framework.pl script outputs data with
Perl's default encoding, ISO-8859. This patch properly sets
the binmode to UTF-8 when exporting SQL and CSV files using the PerlIO
layer (":encoding(UTF-8)") for STDOUT.

To test:

Export step test
- Use some ASCII character(s) with DIACRITICS in some field description
  in a chosen framework.
- Export the framework at Administration > MARC frameworks
- Run this to check the file is ISO-8859 encoded:
 $ file export_XXX.csv
 export_XXX.csv: ISO-8859 text, with very long lines
 (Note: try SQL and other output formats too. But not ODS)
- Apply the patch
- Export the framework again (change the name), and test encoding:
 $ file export_XXX_2.csv
 export_XXX_2.csv: UTF-8 Unicode text

Import step test
I assume you have two files, export_XXX.csv (ISO-8859 encoded) and
export_XXX_2.csv (XXX will depend on your framework's code)
- Reset your testing branch to master
- Import export_XXX.csv
- The string with non-ASCII chars is truncated at the first non-ASCII
  char's position (Note: this is the current behaviour).
- Import export_XXX_2.csv
- The non-ASCII chars are broken, the logs show errors on non-UNICODE
  chars.  (Note: even thou UTF-8 is the expected encoding it is
  treated as ISO-8859).
- Apply the patch
- Import the good (UTF-8 as expected) file and check everything worked
  as expected.

No double encoding should occur with either combination of formats.

Sponsored-by: Universidad Nacional de Cordoba
Signed-off-by: Magnus Enger <digitalutvikling@gmail.com>
I put some Norwegian and accented letters in a fremawork to test.
Before the patch, the exported CSV came out as ISO-8859, after the
patch it came out as UTF-8. ODS and XML (viewed in LibreOffice)
both looked good, before and after the patch.

Importing the ISO-8859 CSV cut off the strings at the first non-ASCII
char. Importing the UTF-8 CSV worked as epected.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Works as expected, passes tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 40d3800cc4d73be3f40fb3b895de3e7fe29e4999)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11762 - intranet & prog: Re-order 245 $a $b $h in results.

In the results view for OPAC and Intranet search results, titles are
currently displayed in 245 $a $b $h order. In detailed view the titles
are displayed in the better 245 $a $h $b order.

This patch corrects the behaviour for NORMARC and MARC21: all now
display 245 $a $h $b.

To test:
- Find records containing 245 $a $b and $h fields.
- Compare the way they look in detail and results view in OPAC
  (non-bootstrap) and intranet (you should see a discrepancies).
- Apply the patch.
- Re-check detail and results view: all should now look the same in
  both OPAC (non-bootstrap) and intranet.

Signed-off-by: Jesse Weaver <pianohacker@gmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Passes all tests and QA script, works as described.
Checked with Magnus Enger about the changes for the NORMARC
stylesheets and the changes are ok.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 266f6a095c15af1e56238e43c05bdbfc406afad4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11762 - bootstrap: Re-order 245 $a $b $h in results.

In the results view for OPAC and Intranet search results, titles are
currently displayed in 245 $a $b $h order. In detailed view the titles
are displayed in the better 245 $a $h $b order.

This patch corrects the behaviour for NORMARC and MARC21 in
BOOTSTRAP: all now display 245 $a $h $b.

To test:
- Find records containing 245 $a $b and $h fields.
- Compare the way they look in detail and results view on the OPAC
  (bootstrap).
- Apply the patch.
- Re-check detail and results view: all should now look the same
  on the OPAC (bootstrap).

Signed-off-by: Jesse Weaver <pianohacker@gmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 0148b236bab898012b082b2e40a20a9ce6f11e60)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 10647 - Make OPAC MARC plain view work for all flavours of MARC

On "MARC view" in the OPAC, clicking on "Plain view" does not work
for UNIMARC and NORMARC.

To test:
- Make sure you have a UNIMARC or NORMARC setup
- Go to the "MARC view" of a record in the OPAC
- Click on "view plain" and observe the "Sorry, plain view is
  temporarily unavailable." error message
- Apply the patch
- Click on "view plain" and observe that a plain view of the MARC
  record is now displayed
- Sign off

I have only tested this on NORMARC, it might be good if someone
can test on UNIMARC.

Updated 2014-03-13: Incoroprates changes suggested by Marcel.
Test plan is the same as before.

Updated 2014-03-13: Tested in my UNIMARC system.
toggled opactheme to all three values, with OPACXSLTDetailsDisplay
and OPACXSLTResultsDisplay both set to default.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Tested with MARC21 and UNIMARC, passes all tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit b4f5fee48cccec9f1fe6f403333f11ae0349d8e7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11637: don't try to guess publication dates for irregular subscriptions

Test plan:
Create a subscription with an irregular numbering pattern.

Verify the prediction pattern. With this patch, it should show "unknown"
instead of the date of the first issue publication date.

This patch does not fix the issue on generating the next serial.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
This is a partial fix for a small regression in the serials module.
Now the prediction pattern doesn't predict dates when you test it,
and shows 'Unknown' instead.

We still need to fix the 'planned date' set for the expected serial.
There should be no date, it should also be 'unknown'.

Passes tests and QA script.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit fac91e2ce1210ad202e321d1f4de2383ac693dd3)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11938: fix capitalization: Serial prediction pattern preview - Publication Date

During add or edit of a subscription when you test the
prediction pattern, "Publication Date" in the displayed table
has incorrect capitalization. This patch corrects.

To test, apply the patch and create or edit a subscription. In
step two click the "test prediction pattern" button to display
the table.  "Publication date" should be correctly capitalized.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
String change, all good.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 3a4607b5fc90ba982d43e8c2ce032ad7157bd0db)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 11935: fix capitalization: OPAC prog theme, checkouts tab

opac-user.tt in the prog theme contains 'Renew Selected' and 'Renew
All'. These are incorrectly capitalized. This patch corrects.

To test you must have OpacRenewalAllowed enabled. Apply the patch,
switch to the prog theme, and log in to the OPAC as a patron who has
checkouts.

At the bottom of the table of checkouts you should see the renew buttons
with correct capitalization.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
String change, all good.

Signed-off-by: Galen Charlton <gmc@esilibrary.com>
(cherry picked from commit 657cd3c4c0a784e2d8e202b94d538c9229fb463a)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>