Bug 8626: Fix encoding in cart emails for use of quoted-printable

When using quoted-printable data needs to be encoded accordingly.

Content-Transfer-Encoding: quoted-printable

Without the patch = in URLs or data will be interpreted as the beginning
of a special character resulting in broken URLs.

To test:
- Check diacritics in records display correctly
- Check various URLs with = to make sure they all work correctly

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This is only a partial fix, as the subject line is not encoded,
but it is a huge improvement over what it was before.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8621: Alternative template for cart email

- uses less list elements, in favour of paragraphs and line breaks
- reimplements a link to the opac for each record

Note: In order for the URLs to be correct this needs to be tested
together with the patch for bug 8626.

To test:
- Add several records to the cart, add items with and without items
- Send yourself the cart as email and check formatting
- Update po files for any language, translate the po file for OPAC
  and install language
- Send yourself the cart email again from the translated templates,
  check formatting

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8596 - Reports interface date picker doesn't force ISO formatted dates

Datepickers follow Koha's preference for date format, but the
guided reports system doesn't intelligently handle different date
formats. ISO is required. This patch adds some additional
configuration to override the date format.

To test, create a guided or SQL report which takes a date
parameter. The datepicker fields should return an ISO-formatted
date.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Works as advertised.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8590 - checked out from missing on patron detail

Adding back the line in the script which pulls the name
of the branch where the item was checked out.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8588 - Duplicate field IDs cause problems with SQL report parameter entry

Changes to markup and script to enable unique ids on form
fields. These changes allow for working label+input pairs
on one or more text and select inputs and multiple working
datepickers.

To test, create a report with more than one date parameter,
at least one text parameter, and one or more authorised
value parameters. The datepickers should each work properly,
and labels should by clickable.

Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8637: Lack of control on mandatory in orderreveive.tt

Just add a check in Jscript when the form is submited, the same as in additem.tt
On Owen's suggestion I have added the red color and 'Required', the same as in additem.
On Jonathan's suggestion I have used the CSS class for red and italic and I have changed a variable's name (alertString2).
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Mandatory fields are now correctly checked on saving.

On other Jonathan's suggestion I have created a new class "missing" and I have added the background to staff-global.css.
The same for additem.tt.

Signed-off-by: Katrin Fischer <Katrin.Fischer.83@web.de>
Retested because of minor CSS change. Works nicely.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8520: fix authority display in autocomplete

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8293: Software error when clicking on first or last result of each page on OPAC

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8532 - improve robustness when converting dates

If undef is passed to the date format conversion function, it dies. This
can happen when you have old data in the database. Better to handle it
in some fashion rather than die, so now it just returns undef too.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
I replace "return undef" with just "return" to pass perlcritic

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8485 - Make koha_perl_deps.pl batch friendly Added a -b flag for brief which outputs only the perl library name (Foo::BaR), and added a -r flag for required which filters the list to required=Yes perl libraries.

Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8524: Add a non-automatic barcode plugin

In addition to adding a new barcode plugin, this commit begins
refactoring the barcode generation code using a new module,
C4::Barcodes::ValueBuilder. From the POD:
    This module is intended as a shim to ease the eventual transition
    from having all barcode-related code in the value builder plugin
    barcode.pl file to using C4::Barcodes. Since the shift will require
    a rather significant amount of refactoring, this module will return
    value builder-formatted results, at first by merely running the
    code that was formerly in the barcodes.pl value builder, but later
    by using C4::Barcodes.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Bug 8524 follow-up: fix broken test

The t/Barcodes_ValueBuilder.t test had the wrong number of tests
declared, and rather than checking that a variable was undefined I was
checking that it had a length of zero. Fixed both issues.

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Bug 8524: Followup FIX an undeclared variable $query

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Bug 8524 follow-up: fix Javascript syntax error

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Bug 8413 Space in barcodes breaks GET request in benchmark_staff.pl

GET requests in benchmark_staff.pl test 6 do not work if a space character is part of the barcode. That seems highly unlikely to happen in barcodes, but is possible if no real barcodes are used but a substitute, like a copy of the call number. Space character needs to be changed to %20 for the request to work.

Also fixes a typo.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8419 - Suspended holds appear on the daily holds queue

Suspended holds are showing up in both the holds queue and holds to pull reports.

This patch adds to the sql queries such that any hold that is suspended
is not selected.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8575: Expected items count should not include cancelled orders

To test:
  1/ create a new basket with 2 orders, one with 1 item, another with 2
     items
  2/ look at booksellers.pl page, you should see that 3 items are
     expected
  3/ cancel the order with 1 item
  4/ refresh booksellers.pl page, it should remains 2 expected items

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

Works exactly as designed

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8533 - Non-numeric cardnumbers screw up autoMemberNum

Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Removes a warning from mysql:
    Truncated incorrect INTEGER value: 'P13000'

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8550: Z39.50 searches for ISBN/ISSN problematic

Rather than treating ISBN and ISSN as the same, this patch breaks
them out into separate parts of the query, as well as changing
the truncation attribute to enable right truncation (the correct
behavior for the ISBN field in MARC21, and valid behavior in
UNIMARC).

Signed-off-by: Joseph Alway <jbalway@gmail.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
Bug 8522 - Markup errors cause problems with customized CSS

Some includes and templates contained duplicate "header" ids in
the markup. The problem should have come up in routine page
validation, but was obvious when custom CSS was applied.

To test, load any of the affected pages and validate the
generated HTML. There should be no errors about 'ID "header"
already defined." Or, add custom CSS to intranetusercss:

...and confirm that only the topmost menu background is affected.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>