]> git.koha-community.org Git - koha.git/log
koha.git
6 years agoBug 20996: Fix unit tests
Andrew Isherwood [Wed, 4 Jul 2018 12:13:33 +0000 (13:13 +0100)]
Bug 20996: Fix unit tests

- Remove unit tests relating to TO_JSON
- Add tests for new explicit embedding
- Modify tests relating to now deprecated brw_cat

Signed-off-by: Magnus Enger <magnus@libriotech.no>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20996: Remove prefix use of borrower category
Andrew Isherwood [Tue, 3 Jul 2018 10:36:58 +0000 (11:36 +0100)]
Bug 20996: Remove prefix use of borrower category

This patch removes the potential use of borrower category as a ILL
request ID prefix. It makes no sense. We provide the ability for a site
to define a request prefix based on branch, there is no use case for
using the borrower category. Add to this that the borrower for every
request was being retrieved in order to get the category, it's a huge
performance hit also.

We also now require the <branch> block in the <interlibrary_loans> block
and complain if it's not present. The request prefix should be defined
in this block.

This patch also improves the performance of the API request that returns all
requests, optionally including additional data.

It also deprecates the overloaded TO_JSON method and moves the request
augmentation code into the API route's controller. It may be that we
want to shift it out of there at some point, but it is fine where it is
for now.

Signed-off-by: Magnus Enger <magnus@libriotech.no>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21604: Fix add/edit fund/budget
Jonathan Druart [Thu, 18 Oct 2018 21:10:19 +0000 (18:10 -0300)]
Bug 21604: Fix add/edit fund/budget

[Strict SQL modes context]

For insert aqbudgetperiods:
Incorrect integer value: '' for column 'budget_period_id'

For insert/update aqbudgets
Incorrect integer value: '' for column 'budget_owner_id'
Incorrect decimal value: '' for column 'budget_encumb'

Test plan:
Add/edit budgets and funds

A good example of why we should use Koha::Object for all our objects

Signed-off-by: Pierre-Marc Thibault <pierre-marc.thibault@inLibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21604: Add two trivial test cases
Marcel de Rooy [Fri, 2 Nov 2018 06:44:34 +0000 (07:44 +0100)]
Bug 21604: Add two trivial test cases

Adding an id in AddBudgetPeriod and an empty string in AddBudget for
budget_encumb.

Test plan:
Run Budgets.t with/without this patch in strict sql mode.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21620: Prevent stockrotation cronjob failures
Martin Renvoize [Fri, 19 Oct 2018 13:37:26 +0000 (14:37 +0100)]
Bug 21620: Prevent stockrotation cronjob failures

Superflous use of sprintf combined with rebasing issue left the
stockrotation cronjob such that a 'No action taken' email report would
catastrophically fail with the error:

Redundant argument in sprintf at ./stockrotation.pl line 316

This patch both resolves the error and cleans up some additional
unrequired sprintf usage.

Test Plan
1) Create a rotation plan
2) Add some items to the rotation plan
3) Run the cronjob using `stockrotation.pl --report=email --send-email
--execute`
4) Note the lack of errors

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21656: DBRev 18.06.00.049
Nick Clemens [Fri, 2 Nov 2018 10:01:16 +0000 (10:01 +0000)]
Bug 21656: DBRev 18.06.00.049

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21656: Update 4 missing sample_notices.sql
Jonathan Druart [Thu, 25 Oct 2018 16:34:44 +0000 (13:34 -0300)]
Bug 21656: Update 4 missing sample_notices.sql

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21656: Reduce the risk of possible side-effects
Jonathan Druart [Thu, 25 Oct 2018 16:32:17 +0000 (13:32 -0300)]
Bug 21656: Reduce the risk of possible side-effects

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21656: (follow-up) Fix atomicupdate
Mark Tompsett [Thu, 25 Oct 2018 15:30:10 +0000 (15:30 +0000)]
Bug 21656: (follow-up) Fix atomicupdate

The atomicupdate is going to run as part of an upgrade.
It needs to UPDATE, not INSERT.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21656: Fix for bad TT syntax in default stock rotation notice
Martin Renvoize [Wed, 24 Oct 2018 10:14:56 +0000 (11:14 +0100)]
Bug 21656: Fix for bad TT syntax in default stock rotation notice

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21585: Ignore missing firstname in ILL requests table
Magnus Enger [Tue, 16 Oct 2018 19:25:43 +0000 (21:25 +0200)]
Bug 21585: Ignore missing firstname in ILL requests table

To test:
- Make sure you have a patron with just a surname and no firstname
- Create an ILL request so that the name of this patron shows up in
  the Patron column of the ILL requests table
- Before the patch, the name will display as "null Surname"
- Apply the patch
- Reload the ILL requests page
- The name should now display as just "Surname"
- Sign ye merrily off

Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21717: Fix generation of real's values
Jonathan Druart [Mon, 29 Oct 2018 21:16:19 +0000 (18:16 -0300)]
Bug 21717: Fix generation of real's values

With strict SQL modes we now have TestBuilder tests that fail randomly with:
  Out of range value for column 'tax_rate_on_receiving'
  Out of range value for column 'discount'

We are trying to insert a value that is too high for the type defined at DB level.

It happens for discount when a value > 100 is generated. The datatype is float(6,4).
From the MySQL Doc:
"""
MySQL permits a nonstandard syntax: FLOAT(M,D) or REAL(M,D) or DOUBLE PRECISION(M,D).
Here, (M,D) means than values can be stored with up to M digits in total, of which D digits may be after the decimal point.
"""

So float(6,4) does not allow 100.

To recreate easily the issue:
  use t::lib::TestBuilder;
  my $builder = t::lib::TestBuilder->new;
  $builder->build( { source => 'Aqorder', value => { discount => 100 } } )->{discount};

To make sure this patch fixes the issue you can use this script:
  use Modern::Perl;
  use t::lib::TestBuilder;
  my $builder = t::lib::TestBuilder->new;
  my ( $real, $i ) = ( 0, 0 );
  while ( $real < 100 ) {
      $real = $builder->_gen_real( { info => { size => [ 6, 4 ] } } );
      warn $i++;
  }
  warn "$i - $real";

Test plan:
0/ Does not apply this patch
1/ Run the snippet above
2/ Confirm that it fails quite quickly (constantly before 500 for me)
3/ Apply this patch
4/ Run again the script
5/ Confirm that it is stuck in an infinite loop
6/ CTRL-C :D

QA Note:
Other _gen_* subroutine may need a fix, but we will wait for them to fail
TODO:
1. Add JS check to the interface to prevent the use to enter a value > 100
2. Allow '100' as a valid value for discount (?)

Followed test plan, patch worked as described
Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21556: Do not crash if a biblio is deleted twice
Jonathan Druart [Tue, 16 Oct 2018 17:52:25 +0000 (14:52 -0300)]
Bug 21556: Do not crash if a biblio is deleted twice

To recreate:
- Go to a bibliographic detail page
- Delete it
- Go back
- Delete it again
=> Without this patch you will get a 500
 Can't call method "holds" on an undefined value at
 /home/vagrant/kohaclone/C4/Biblio.pm line 406.
=> With this patch applied it will silently redirect you to the search
form.

Note: We could/should improve the behavior and display a message, but
DelBiblio will need to be moved to Koha::Biblio->delete and other
callers adjusted

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21556: Deleting same record twice leads to fatal software error
David Cook [Fri, 12 Oct 2018 01:53:22 +0000 (01:53 +0000)]
Bug 21556: Deleting same record twice leads to fatal software error

If you delete a record, confirm the deletion, and try to delete the
record and confirm it again befoe the first deletion completes, you'll
generate a fatal software error.

This patch unbinds the click handlers for the "Delete record" button
after the deletion is confirmed and just before the Javascript
processes the redirect to the next page in the process.

To test:
1) You will need a bibliographic record that is able to be deleted
2) Click "Edit", then "Delete record", then "OK"
3) While the browser is reloading, click "Edit", then "Delete record",
    then "OK
4) Observe a fatal error such as "Internal server error" or 'Can't call
method "holds" on an undefined value at
/home/vagrant/kohaclone/C4/Biblio.pm line 406.'
5) Apply the patch
6) Run "restart_all" on kohadevbox (or otherwise restart Plack if
    running Plack)
7) Navigate to another bibliographic record that is able to be deleted
8) Click "Edit", then "Delete record", then "OK"
9) While the browser is reloading, click "Edit", then "Delete record"
10) Observe that no fatal software error is generated
11) You are redirected to
http://localhost:8081/cgi-bin/koha/catalogue/search.pl (on kohadevbox)

Signed-off-by: Pierre-Marc Thibault <pierre-marc.thibault@inLibro.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21725: Use full statement in HAVING rather than constructed column
Nick Clemens [Tue, 30 Oct 2018 11:59:26 +0000 (11:59 +0000)]
Bug 21725: Use full statement in HAVING rather than constructed column

To test:
1 - prove -v t/db_dpendent/Acquisition/GetBasketsInfosByBookseller.t
2 - Apply patch
3 - prove -v t/db_dpendent/Acquisition/GetBasketsInfosByBookseller.t
4 - It passes
5 - Have some open/closed and some fully and not full received baskets
6 - View a vendor and confirm baskets are shwn as expected
7 - Check 'Show all baskets' shows all baskets

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Note sure this is the best thing but it fixes the issue

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21682: DBRev 18.06.00.048
Nick Clemens [Thu, 1 Nov 2018 19:03:01 +0000 (19:03 +0000)]
Bug 21682: DBRev 18.06.00.048

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21682: Add update DB entry for existing installs
Jonathan Druart [Wed, 31 Oct 2018 18:36:21 +0000 (15:36 -0300)]
Bug 21682: Add update DB entry for existing installs

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21682: Corrections for strict sql in stockrotationrotas
Martin Renvoize [Fri, 26 Oct 2018 10:55:54 +0000 (11:55 +0100)]
Bug 21682: Corrections for strict sql in stockrotationrotas

Test Plan:
1) Ensure you're database is prior to version 18.06.00.040
2) Ensure 'strict_sql_modes' is enabled
3) Run updatedatabase
4) See no errors during upgrade
5) Run a fresh install
6) Note no errors during database installation

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21476: Fix HTML5 media from playing in the OPAC - incorrect filters
Nick Clemens [Tue, 23 Oct 2018 12:30:25 +0000 (12:30 +0000)]
Bug 21476: Fix HTML5 media from playing in the OPAC - incorrect filters

This patch makes a correction to a template filter to prevent
incorrectly-encoded HTML in media source links which were preventing
media from embedding correctly in the OPAC.

To test, apply the patch and enable the HTML5MediaEnabled and
HTML5MediaYouTube system preferences.

- Edit a record to include links to videos in 856$u. For example:
  - https://www.youtube.com/watch?v=grTwH6Evdfc
    - https://archive.org/download/POPEYEMeetsSindbadTheSailor1936/POPEYE%20meets%20Sindbad%20The%20Sailor%20%281936%29.ogv

    View the record in the OPAC and confirm that the videos display in
    the
    "Play media" tab and that they play correctly.

Tested and works as described, also matches the intranet code.

Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21742: Fix YouTube variable propagation
Nick Clemens [Wed, 31 Oct 2018 12:18:58 +0000 (12:18 +0000)]
Bug 21742: Fix YouTube variable propagation

The loop to find all media has an $isyoutube variable. This was declared
outside the loop and never reset. Once a YouTube video was encountered
all subsequent videos were considered as YouTube. This patch reduces the
scope of the variable and resets per loop.

To test:
1 - Enable HTML5Media and HTML5MediaYouTube
2 - Add 856$u to record for a youtube vido and a pdf (sample record
        attached to bug)
3 - View the record, the Play media tab has two video boxes
4 - Play the second, it fails
5 - Apply patch
6 - View record, Play media should include only one video link

Signed-off-by: Devinim <kohadevinim@devinim.com.tr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21681: Improve the account lines fetch
Jonathan Druart [Fri, 26 Oct 2018 18:19:36 +0000 (15:19 -0300)]
Bug 21681: Improve the account lines fetch

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21681: Add tests for GetPatronInfo
Jonathan Druart [Fri, 26 Oct 2018 18:25:09 +0000 (15:25 -0300)]
Bug 21681: Add tests for GetPatronInfo

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21681: Remove C4::Accounts::getcharges
Josef Moravec [Fri, 26 Oct 2018 10:05:11 +0000 (10:05 +0000)]
Bug 21681: Remove C4::Accounts::getcharges

Test plan:
0) Do not apply the patch
1) Enable ILS-DI
2) Go to
<opac_url>/cgi-bin/koha/ilsdi.pl?service=GetPatronInfo&patron_id=51&show_fines=1
use patron with some paid and unpaid fines
3) Save the page for later usage
4) Apply the patch
5) Repeat 2 with same patron and compare the saved result with the new
one, they should be same
6) git grep getcharges should return no occurance
7) prove t/db_dependent/Accounts.t

Co-authored-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21694: Keep the context
Jonathan Druart [Fri, 26 Oct 2018 18:08:51 +0000 (15:08 -0300)]
Bug 21694: Keep the context

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21694: Add the Koha::Account->lines method
Martin Renvoize [Fri, 26 Oct 2018 17:34:35 +0000 (18:34 +0100)]
Bug 21694: Add the Koha::Account->lines method

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21698: (QA follow-up) Fix typo verbosev -> verbose
Josef Moravec [Mon, 29 Oct 2018 19:59:00 +0000 (19:59 +0000)]
Bug 21698: (QA follow-up) Fix typo verbosev -> verbose

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21698: Fix POD of cancel_unfilled_holds.pl
Magnus Enger [Fri, 26 Oct 2018 20:47:16 +0000 (22:47 +0200)]
Bug 21698: Fix POD of cancel_unfilled_holds.pl

To test:
- Run "perldoc misc/cronjobs/holds/cancel_unfilled_holds.pl"
- Notice some problems:
-- No description in the NAME section
-- Descriptions of options in the SYNOPSIS section
-- A literal head1
-- Long options are listed with a single leading dash
-- Options --verbose and --confirm are not listed under OPTIONS)
- Take a look at the script itself to see that --verbose and
  --confirm should be listed.
- Also note the typo on line 97: 'v|verbosev' => \$verbose,
- Apply the patch
- Look at the script and perldoc again and check that all problems
  described above are now fixed.

Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18720: Use exception instead of die in GetBasketAsCsv
Josef Moravec [Mon, 5 Jun 2017 09:55:12 +0000 (11:55 +0200)]
Bug 18720: Use exception instead of die in GetBasketAsCsv

Test plan:
prove t/db_dependent/Acquisition/GetBasketAsCSV.t

Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: (follow-up) Switch 'media' -> 'types'
Andrew Isherwood [Mon, 8 Oct 2018 12:33:46 +0000 (13:33 +0100)]
Bug 20941: (follow-up) Switch 'media' -> 'types'

Clearing up the inconsistency mentioned in comment #35. There is one
place where we use the term 'media' for a template variable, everywhere
we refer to material types as 'types'.

NOTE: This is a breaking change for existing backends that still use
'media'. Of the PTFS Europe backends, only the Koha backend uses it,
this will be modified as necessary. Generally backends will supply this
variable themselves, so the breaking-ness of this change should be
minimal.

No test plan as it's backend dependent.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: (follow-up) Update N/A handling
Andrew Isherwood [Fri, 5 Oct 2018 07:56:45 +0000 (08:56 +0100)]
Bug 20941: (follow-up) Update N/A handling

Modify the conditional display of N/A in accordance with comment #17

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: (follow-up) Wrap N/A strings in <span>
Andrew Isherwood [Thu, 4 Oct 2018 12:38:20 +0000 (13:38 +0100)]
Bug 20941: (follow-up) Wrap N/A strings in <span>

All N/A strings in ILL templates wrapped in <span> to aid translation

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: (QA follow-up) Fix return value of get_type, make templates more consistant
Josef Moravec [Thu, 4 Oct 2018 07:44:53 +0000 (07:44 +0000)]
Bug 20941: (QA follow-up) Fix return value of get_type, make templates more consistant

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: (follow-up) Carry out comment #4 advice
Andrew Isherwood [Wed, 3 Oct 2018 11:05:40 +0000 (12:05 +0100)]
Bug 20941: (follow-up) Carry out comment #4 advice

- Switch getType -> get_type
- get_type now returns a type or undef
- Ternary now performed in template

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: Add unit tests
Andrew Isherwood [Tue, 2 Oct 2018 14:50:51 +0000 (15:50 +0100)]
Bug 20941: Add unit tests

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20941: Add Illrequest->getType method
Andrew Isherwood [Thu, 14 Jun 2018 13:26:02 +0000 (14:26 +0100)]
Bug 20941: Add Illrequest->getType method

This patch adds a method to the Illrequest object enabling it to return
its type, which is stored as an Illrequestattribute object

To observe broken state:

- Do not apply patch
- Ensure you have at least one Interlibrary loan created
- In OPAC view, go to "your interlibrary loan requests"
  - => TEST: Observe that the "Request type" column is not populated
  - Click on "View" for one of the requests
  - => TEST: Observer that the "Request type" row is not populated
- In Staff view, go to "ILL requests"
- Click on "Manage request" on a request
  - => TEST: Observer that the "Request type" row is not populated

To Test:

- Apply patch
- In OPAC view, go to "your interlibrary loan requests"
  - => TEST: Observe that the "Request type" column IS populated
  - Click on "View" for one of the requests
  - => TEST: Observer that the "Request type" row IS populated
- In Staff view, go to "ILL requests"
- Click on "Manage request" on a request
  - => TEST: Observer that the "Request type" row IS populated

Signed-off-by: Niamh.Walker-Headon@it-tallaght.ie
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 10442: Compiled CSS
Nick Clemens [Wed, 31 Oct 2018 13:34:43 +0000 (13:34 +0000)]
Bug 10442: Compiled CSS

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 10442: Remove references to non-standard "error" class
Owen Leonard [Mon, 13 Aug 2018 13:39:42 +0000 (13:39 +0000)]
Bug 10442: Remove references to non-standard "error" class

The CSS for <div class="error"> is obsolete and should not be used. This
patch removes the definition from the main CSS file and corrects
instances of its use in the templates to the standard <div class="dialog
alert">.

To test:

- In Acquisitions -> Late orders, locate an order from a vendor which
  doesn't have an email address. Selecting that order and clicking
  "Claim" should trigger an error dialog, "This vendor has no email." It
  should be styled correctly.

- With  AcqCreateItem set to "when placing an order," add to an existing
  order using the "From a new (empty) record" option. Add two items with
  identical barcodes and submit the form. A error should show at
  the top of the page.

- With AcqCreateItem set to "when receiving an order," receive an order
  and add two items with identical barcodes. Submitting the form should
  trigger an error message at the top of the page.

With the remaining cases I don't know how to trigger the errors in
question, so a visual check of the changes may be required:

- Administration -> Funds -> "You are not authorized to modify this
  fund"
- Administration -> Search engine configuration
  (/admin/searchengine/elasticsearch/mappgings.pl) -> Various
  modification errors.
- With the  AutoEmailOpacUser preference set to "send," adding a patron
  without an email address can trigger an error, "This member has no
  email."
- With plugins enabled, and installed, there are error messages
  displayed under various circumstances.

Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21080: Fix patron's attributes display when PA_CLASS is used
Jonathan Druart [Mon, 29 Oct 2018 22:23:53 +0000 (19:23 -0300)]
Bug 21080: Fix patron's attributes display when PA_CLASS is used

When a patron attribute class (AV PA_CLASS) is created, the patron's
edit view is broken:
https://screenshots.firefox.com/62uNhoUtH6rPXm9l/pro.kohadev.org

To recreate:
1. Create 1+ authorised values PA_CLASS
2. Create patron's attributes using it
3. Edit a patron

it depends on the order of the fieldset and the ol elements

This is certainly not the best fix but the display does not look broken!

Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 14716: Fix more unencoded url parameters.
Ere Maijala [Fri, 26 Oct 2018 15:13:10 +0000 (18:13 +0300)]
Bug 14716: Fix more unencoded url parameters.

Fixes issues found during QA and unifies the SubfieldSelect function across the utils xsl's.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 14716: URI-encode URLs in NORMARC xsl templates.
Ere Maijala [Fri, 14 Sep 2018 22:32:07 +0000 (01:32 +0300)]
Bug 14716: URI-encode URLs in NORMARC xsl templates.

https://bugs.koha-community.org/show_bug.cgi?id=14716

Test plan:

1. Catalog a record with series name "Series & more"
2. Find the record
3. Make sure clicking the "Series & more" link works and the ampersand is properly encoded in the URL.

Signed-off-by: Magnus Enger <magnus@libriotech.no>
Works as advertised.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 14716: URI-encode URLs in UNIMARC xsl templates.
Ere Maijala [Thu, 22 Feb 2018 13:37:25 +0000 (15:37 +0200)]
Bug 14716: URI-encode URLs in UNIMARC xsl templates.

https://bugs.koha-community.org/show_bug.cgi?id=14716

Test plan:

1. Catalog a record with series name "Series & more"
2. Find the record
3. Make sure clicking the "Series & more" link works and the ampersand is properly encoded in the URL.
4. Also try the attached test records and make sure their links work.

Signed-off-by: Julian Maurice <julian.maurice@biblibre.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 14716: URI-encode URLs in MARC21 xsl templates.
Ere Maijala [Thu, 22 Feb 2018 13:37:25 +0000 (15:37 +0200)]
Bug 14716: URI-encode URLs in MARC21 xsl templates.

https://bugs.koha-community.org/show_bug.cgi?id=14716

Test plan:

1. Catalog a record with series name "Series & more"
2. Find the record
3. Make sure clicking the "Series & more" link works and the ampersand is properly encoded in the URL.
4. Also try the attached test records and make sure their links work.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21581: (QA follow-up) Update comment according to code in SearchAuthorities
Josef Moravec [Mon, 29 Oct 2018 22:35:57 +0000 (22:35 +0000)]
Bug 21581: (QA follow-up) Update comment according to code in SearchAuthorities

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21581: Pass through authorities indexes
Nick Clemens [Tue, 16 Oct 2018 15:09:32 +0000 (15:09 +0000)]
Bug 21581: Pass through authorities indexes

To test:
 1 - Define a rule:
  Matching rule code: LCAUTH
  Match threshold: 100
  Record type: Authority record
  MATCH POINTS
  Search index: LC-card-number
  Score: 100
  Tag: 010
  Subfield: a
 2 - Have a record with an LC number in 010
 3 - Export it
 4 - Edit the record in Koha, move the value from 010 to another field
 5 - Import the original record
 6 - Use the matching rule above, you expect it won't match (nothing in 010 anymore)
 7 - It matches?!?!?!
 8 - Enable zebra logging in koha-conf.xml
  <zebra_loglevels>none,fatal,warn,request,info</zebra_loglevels>
 9 - tail -f /var/log/koha/kohadev/zebra-output.log
10 - On manage marc apply matchign with no rule, then reapply with rule
11 - View the output in the log - the index searched is 'Any'
12 - Apply patch
13 - Reapply matching
14 - Note we search the expected index and no match is found

NOTE: By applying bug 21579, I was able to view the difference, and
      see that it didn't match identically, because I had moved the
      value from 010 to 155. No log checking needed. clean/delete batch.
      Apply patch, no match. clean/delete batch.
      Edit authority back, matches.

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21581: Unit tests and updated data
Nick Clemens [Wed, 24 Oct 2018 11:53:07 +0000 (11:53 +0000)]
Bug 21581: Unit tests and updated data

To test:
1 - Apply this patch only
2 - prove -v t/db_dependent/Search.t
3 - It fails
4 - Apply second patch
5 - prove -v t/db_dependent/Search.t
6 - It passes!

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21702: (follow-up) Simplify checks and use standard fallback behaviour
Tomas Cohen Arazi [Sat, 27 Oct 2018 12:22:00 +0000 (09:22 -0300)]
Bug 21702: (follow-up) Simplify checks and use standard fallback behaviour

This patch acknowledges the fact that some checks here are done in a way
that is not standard these days. This checks are originally done
multiple times in different ways. output_and_exit_if_error should be
used.

This implies a minor behaviour change: if the passed (in the URL)
borrowernumber doesn't exist, it sends the user to a 'Patron doesn't
exist page' instead of the circulation page for the borrowernumber.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21702: Make mancredit.pl use the patron id for the staff user
Tomas Cohen Arazi [Sat, 27 Oct 2018 12:11:33 +0000 (09:11 -0300)]
Bug 21702: Make mancredit.pl use the patron id for the staff user

I think unsafe SQL modes and the fact that manager_id has no FK allowed this to go unnoticed. But now we catch it!

To test:
- On a patron, try adding a new manual credit of any type
=> FAIL: It fails telling the userid of the logged user is not a valid integer!
- Apply this patch
- Try adding a manual credit of any type
=> SUCCESS: Manual credit added!
- Sign off!

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 13098: Fix POD for Koha::Account::Offsets::total
Tomas Cohen Arazi [Sat, 27 Oct 2018 11:34:39 +0000 (08:34 -0300)]
Bug 13098: Fix POD for Koha::Account::Offsets::total

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 13098: Sum at DBMS level
Jonathan Druart [Thu, 25 Oct 2018 19:13:27 +0000 (16:13 -0300)]
Bug 13098: Sum at DBMS level

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 13098: Do not compare with precision
Jonathan Druart [Thu, 25 Oct 2018 19:06:14 +0000 (16:06 -0300)]
Bug 13098: Do not compare with precision

Formating will be done TT side

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 13098: Make _FixAccountForLostAndReturned refund the right thing
Tomas Cohen Arazi [Thu, 18 Oct 2018 16:08:42 +0000 (13:08 -0300)]
Bug 13098: Make _FixAccountForLostAndReturned refund the right thing

This patch changes the logic inside the method, to make it match the
behaviour described on the tests.

It uses the existing offsets on the account_offsets table to gather
information about the right things to refund.

To test:
- Run:
  $ kshell
 k$ prove t/db_dependent/Circulation.t
=> FAIL: Tests don't pass!
- Apply this patch
- Run
 k$ prove t/db_dependent/Circulation.t
=> SUCCESS: Tests pass!
- Sign off :-D

Followed test plan, patch works as described. All three patches pass QA
test tool
Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 13098: Tests for all _FixAccountForLostAndReturned use cases
Tomas Cohen Arazi [Fri, 12 Oct 2018 13:27:06 +0000 (10:27 -0300)]
Bug 13098: Tests for all _FixAccountForLostAndReturned use cases

This patch introduces tests for all the use cases for
_FixAccountForLostAndReturned. This includes the following scenarios
before _FixAccountForLostAndReturned is called:

- Full write off (the original issue)
- Full payment
- No payment or write off
- Partial payment and partial write off

Written off debts (L lines) are just skipped, any kind of payment is
added and then refund as a single credit (CR). Amount outstanding is set
to 0. Offsets need to be generated for paper trail of this decisions.

To test:
- Run:
  $ kshell
 k$ prove t/db_dependent/Circulation.t
=> FAIL: Tests fail because _FixAccountForLostAndReturned is not doing
the right thing :-D

Followed test plan, patch works as described
Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 13098: Add Koha::Account::Offsets->total
Tomas Cohen Arazi [Thu, 18 Oct 2018 15:57:33 +0000 (12:57 -0300)]
Bug 13098: Add Koha::Account::Offsets->total

This patch introduces this trivial method for returning the sum0 result
of the amount columns of a Koha::Account::Offsets set.

To test:
- Apply this patch
- Run:
  $ kshell
 k$ prove t/db_dependent/Koha/Account/Offsets.t
- Sign off :-D

Followed test plan, patch worked as described
Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21596: (follow-up) Handle updated_on part 2
Jonathan Druart [Mon, 29 Oct 2018 20:27:52 +0000 (17:27 -0300)]
Bug 21596: (follow-up) Handle updated_on part 2

It seems that I have over complicated things here, now
t/db_dependent/Koha/Object.t is failing

Apparently everything is ok with this change.
Test plan:
prove -r prove -r t/db_dependent/Koha/Object.t t/Auth_with_shibboleth.t
t/db_dependent/Patrons.t t/db_dependent/Koha/Patron*

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20720: (QA follow-up) Some minor corrections
Katrin Fischer [Sun, 28 Oct 2018 05:43:30 +0000 (05:43 +0000)]
Bug 20720: (QA follow-up) Some minor corrections

Made some corrections to countries, spelling and
changed OPUS entry.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20720: Found some more sponsors to add to 'about'
Martin Renvoize [Sat, 20 Oct 2018 12:49:51 +0000 (13:49 +0100)]
Bug 20720: Found some more sponsors to add to 'about'

git log|grep -i "sponsored-by"|sort -n | uniq
git log|grep -i "sponsored by"|sort -n | uniq

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20720: Using git Sponsored-by lines to update 'about'
Martin Renvoize [Fri, 19 Oct 2018 16:17:41 +0000 (17:17 +0100)]
Bug 20720: Using git Sponsored-by lines to update 'about'

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21242: If not searching for patron, move to log viewer
Nick Clemens [Fri, 17 Aug 2018 12:22:50 +0000 (12:22 +0000)]
Bug 21242: If not searching for patron, move to log viewer

To test:
1 - Bring up a patron
2 - Click 'Modification log'
3 - Note you get borrower info
4 - Move the object field into info field
5 - Submit
6 - You are now on the 'Log viewer' page with admin options, not
borrower circ options

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21634: Keep "circulation" module selected when viewing patron's logs
Jonathan Druart [Tue, 23 Oct 2018 13:15:11 +0000 (10:15 -0300)]
Bug 21634: Keep "circulation" module selected when viewing patron's logs

To recreate:
- View a patron detail page
- Click "Modification log"
- Notice that the url has "modules=MEMBERS&amp;modules=circulation", but
the "Circulation" option is not selected in the "Modules" dropdown list.
This is because of uppercase vs lowercase.

The bug:
- Right after you click "Modification log" you will see all the
"members" and "circulation" logs
- Submit the form without changing any input/select from the form
=> Now you only see the "members" logs.

Test plan:
- Apply the patch
- Click "Modification log"
- Notice that the url now contains "modules=MEMBERS&amp;modules=CIRCULATION"
- Submit the form without changing any input/select from the form
=> Now you have the "members" and "circulation" modules selected.

Signed-off-by: Pierre-Marc Thibault <pierre-marc.thibault@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21613: (QA follow-up) Resolve warning on $ENV{_} - avoid autovivification
Jonathan Druart [Fri, 19 Oct 2018 14:36:16 +0000 (11:36 -0300)]
Bug 21613: (QA follow-up) Resolve warning on $ENV{_} - avoid autovivification

See C4::Circulation::SendCirculationAlert
3355     my $do_not_lock = ( exists $ENV{_} && $ENV{_} =~ m|prove| ) || $ENV{KOHA_NO_TABLE_LOCKS};

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21613: (QA follow-up) Resolve warning on $ENV{_}
Marcel de Rooy [Fri, 19 Oct 2018 08:15:56 +0000 (10:15 +0200)]
Bug 21613: (QA follow-up) Resolve warning on $ENV{_}

Some shells may not pass the program name in underscore, and cron also
does not like it here:
Use of uninitialized value $ENV{"_"} in pattern match (m//) at Koha/Database.pm line 79.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21613: Turn strict SQL modes on for tests
Jonathan Druart [Thu, 18 Oct 2018 23:06:07 +0000 (20:06 -0300)]
Bug 21613: Turn strict SQL modes on for tests

This patch will turn the strict SQL modes on When tests are ran with prove.

Test plan:
- Apply the first patch
- prove t/db_dependent/Koha/Database.t
=> Will pass if you have <strict_sql_modes>1</strict_sql_modes> in your
koha-conf.xml
=> Will fail otherwise
- Apply the second patch
- prove t/db_dependent/Koha/Database.t
=> Will pass whatever the value of strict_sql_modes in your
koha-conf.xml

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21613: Add a test
Jonathan Druart [Thu, 18 Oct 2018 23:06:03 +0000 (20:06 -0300)]
Bug 21613: Add a test

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21349: Instructors with special characters in cardnumber cannot be removed from...
Mark Tompsett [Fri, 14 Sep 2018 23:06:49 +0000 (16:06 -0700)]
Bug 21349: Instructors with special characters in cardnumber cannot be removed from course reserves

The cardnumber can contain strange non-javascript-friendly
characters. This patch converts all the internal references
to borrowernumber, but displays the cardnumber when showing
list of matching users.

TEST PLAN
---------
1) Make sure Course Reserves is being used. Check system preferences.
2) Make sure there is a Course entered.
3) Make sure there is a patron with an cardnumber which breaks
   the existing javascript (eg. Ka-boom:Ka-boom!KABOOM@#$!)
4) Go into the course list.
5) Click the course name link
6) In the "Instructor Search" box enter the patron name.
7) Select the patron which has the ugly cardnumber.
8) Click Save
   -- The course listing should have the new teacher listed.
9) Click the course name link again.
10) Click 'Remove' beside the instructor's name.
    -- nothing happens, and inspecting the error console gives
       you the ugly error described in comment #0
11) apply this patch
12) restart_all
13) sudo service apache2 restart
14) refresh the page.
15) click 'Remove' beside the instructor's name.
    -- name is removed.
16) Click Save
    -- the course listing no longer lists the new teacher.
17) Actually confirm that adding and removing others normally
    works as expected.
18) run koha qa test tools.

Signed-off-by: Charles Farmer <charles.farmer@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21186: (follow-up) Incorrect Bootstrap modal event name in multiple templates
Owen Leonard [Thu, 25 Oct 2018 15:24:29 +0000 (15:24 +0000)]
Bug 21186: (follow-up) Incorrect Bootstrap modal event name in multiple templates

This patch addresses a few more instances of this problem which I didn't
catch in my first pass.

To test, apply the patch and clear your browser cache if necessary.

- Go to Circulation -> Check in and check in an item which has a hold.
  - When the 'Hold found' modal appears the checkin barcode field
    behind it should be disabled.
  - When the modal is dismissed the checkin field should be enabled
    again and focus should be on that field.

- Go to Administration -> Library groups.
  - Click the "Add group" button. The cursor focus should be on the
    title field.

- Go to Tools -> MARC modification templates.
  - Click the "New template" button. The cursor focus should be on the
    name field.

Signed-off-by: Cori Lynn Arnold <carnold@dgiinc.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21186: Incorrect Bootstrap modal event name in multiple templates
Owen Leonard [Wed, 8 Aug 2018 19:03:38 +0000 (19:03 +0000)]
Bug 21186: Incorrect Bootstrap modal event name in multiple templates

Modals in the staff client which load data via AJAX require an "on
close" action in order to clear the modal of the loaded data. The
problem presents itself the second time the modal is opened: The
"loading" message doesn't appear, and the data from the previous link
is shown until the new data loads.

To test, apply the patch and test the following pages. In each case,
click multiple instances of the modal trigger link/button to confirm
that the "loading" message always appears between re-displays of the
modal.

- Acquisitions -> Vendor -> Add to basket -> From a staged file -> Add orders
  - Test the "MARC" and "Card" links
- Acquisitions -> EDIFACT messages
  - Test the "View message" button
- Acquisitions -> Vendor -> Add to basket -> From an existing record
  - Test "View MARC" link
- Acquisitions -> Vendor -> Invoices -> Invoice -> Receipt page
  - Test the "Order," "MARC," and "Card" links.
- Catalog -> Bibliographic record details
  - Test the MARC Preview link.
- Cataloging -> Cataloging search results
  - Test the Actions -> MARC preview and Actions -> Card preview menu
    items
- Cataloging -> Cataloging search results -> Merge
  - Test the "View MARC" linkscataloguing/merge.tt
- Tools -> Patron lists -> Actions -> Print patron cards
- Tools -> Batch record modification -> Results -> Show MARC
- Tools -> Staged MARC record management -> View batch
  - Test MARC preview shown when you click a staged title

Signed-off-by: Cori Lynn Arnold <carnold@dgiinc.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21621: Remove incorrect GROUP BY from tools/letter.pl
Jonathan Druart [Fri, 19 Oct 2018 15:06:43 +0000 (12:06 -0300)]
Bug 21621: Remove incorrect GROUP BY from tools/letter.pl

Fix:
  'koha_kohadev.letter.name' isn't in GROUP BY

DBD::mysql::db selectall_arrayref failed: 'koha_kohadev.letter.name' isn't in GROUP BY [for Statement "SELECT branchcode, module, code, name, branchname
            FROM letter
            LEFT OUTER JOIN branches USING (branchcode)
     GROUP BY branchcode,module,code ORDER BY module, code, branchcode"] at /home/vagrant/kohaclone/tools/letter.pl line 383.

Test plan:
- Copy some default notice templates for specific libraries
- List the different notice templates
- Confirm that notices appear only one, with "all libraries" you will see all

Signed-off-by: Pierre-Marc Thibault <pierre-marc.thibault@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21703: Fix filter on dataurl variable to allow placing holds in staff again
Jonathan Druart [Sun, 28 Oct 2018 11:59:51 +0000 (08:59 -0300)]
Bug 21703: Fix filter on dataurl variable to allow placing holds in staff again

We must not encode & again and use the url filter, instead of uri.

To test:
- Search for a record in staff
- Go to holds
- Search for patrons, multiple should be displayed
- Pick a patron by clicking on the name
- Verify an error is shown and the URL is incorrect
- Apply patch
- Repeat test above, placing a hold should now work.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21311: (follow-up) Adjust wording of failed login message
Marcel de Rooy [Thu, 25 Oct 2018 09:37:42 +0000 (11:37 +0200)]
Bug 21311: (follow-up) Adjust wording of failed login message

Based on the feedback of Jonathan, Katrin, Mark and Martin (thx), adding
the general remark that if lockout is enabled, an account may be locked
out after x attempts. This does not say that the account on hand is
locked or not.

Adding a <p> tag between 'Log in'-button and 'Forgot your password' for
presentation.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21311: Remove locked message from opac-auth.tt
Marcel de Rooy [Wed, 10 Oct 2018 14:04:38 +0000 (16:04 +0200)]
Bug 21311: Remove locked message from opac-auth.tt

We should not expose more information than needed when someone tries
to login with invalid credentials. Saying that an account is locked
reveals that the account exists (or perhaps an email address).

Trivial fix. Keeping the var too_many_login_attempts for staff.
Note: We do not remove this distinction for the staff client here (in the
assumption that a library may well have additional security measures in
place for staff client). But it could be done too (on another report).

Test plan:
Enable lockout feature.
Enter invalid credentials until account locks out (on OPAC !!)
Note that message does no longer change to 'Account is locked'.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21641: (follow-up) Address wrong call method
Andrew Isherwood [Thu, 25 Oct 2018 13:17:59 +0000 (14:17 +0100)]
Bug 21641: (follow-up) Address wrong call method

This patch substitutes C4::Accounts->getnextacctno for
C4::Accounts::getnextacctno since getnextacctno is only expecting to be
passed a borrowernumber

Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21641: (follow-up) Address additional call
Andrew Isherwood [Thu, 25 Oct 2018 12:23:31 +0000 (13:23 +0100)]
Bug 21641: (follow-up) Address additional call

This patch makes the same change as the main patch, just for an
additional occurance of getnextacctno

Signed-off-by: Alex Buckley <alexbuckley@catalyst.net.nz>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21641: Added C4::Accounts to getnextacctno() call
Alex Buckley [Wed, 24 Oct 2018 03:37:57 +0000 (03:37 +0000)]
Bug 21641: Added C4::Accounts to getnextacctno() call

Test plan:
1. Fetch and checkout the master branch
2. Checkout an item with a rental charge associated with it to a user
and notice an error is thrown
3. Apply patch
4. Restart memcached and plack
5. Repeat steps 1 and 2 and notice the checkout happens successfully

Sponsored-By: Catalyst IT
Signed-off-by: Andrew Isherwood <andrew.isherwood@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21611: Fix priority dropdown for holds
Nick Clemens [Thu, 25 Oct 2018 11:29:28 +0000 (11:29 +0000)]
Bug 21611: Fix priority dropdown for holds

To Test:
 1 - Find a record
 2 - Place several holds some with differing pickup locations
 3 - Check in one hold to confirm as waiting
 4 - Check another in to set a hold in transit
 5 - View the holds queue for the record:
    /cgi-bin/koha/reserve/request.pl?biblionumber=##
 6 - Confirm found holds are incorrect
 7 - Apply patch
 8 - Reload
 9 - Confirm holds look correct
10 - Alter the values of HoldsSplitQueue and HoldsSplitQueueNumbering
11 - Confirm things still look right

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21704: (QA follow-up) Fix evil tabs
Katrin Fischer [Sun, 28 Oct 2018 16:10:52 +0000 (16:10 +0000)]
Bug 21704: (QA follow-up) Fix evil tabs

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21704: (follow-up) Remove unused 'frameworkcode' template param
Tomas Cohen Arazi [Sun, 28 Oct 2018 12:56:17 +0000 (09:56 -0300)]
Bug 21704: (follow-up) Remove unused 'frameworkcode' template param

This patch removes the 'frameworkcode' template parameter. Now the
'framework' object is passed, and everytime the frameworkcode is needed
on the template, framework.frameworkcode is called.

To test:
- Apply this patch
- Run:
  $ grep ' frameworkcode ' koha-tmpl/intranet-tmpl/prog/en/modules/admin/marctagstructure.tt
=> SUCCESS: There's no use of 'frameworkcode' in the template
- Sign off :-D

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21704: Edit framework subfield link is broken (TT filter)
Tomas Cohen Arazi [Sun, 28 Oct 2018 12:36:32 +0000 (09:36 -0300)]
Bug 21704: Edit framework subfield link is broken (TT filter)

This patch removes URL building from the controller
(admin/marctagstructure.pl) and does it on the templates, using the
right 'uri' filter for the query parameters.

It also removes:
- No longer used attributes that are passed to the template
- Duplicated code in the templates

To test:
- Go to Home > Administration > MARC bibliographic framework
- On any of the listed frameworks, pick the 'MARC structure' action in
the dropdown
- On any subfield, hover on the actions dropdown
=> FAIL: The URLs are wrongly formed
- Click on the links
=> FAIL: You get errors because of the bad URL
- Apply this patch
- Reload the 'MARC structure' page
- On any subfield, hover on the actions dropdown
=> SUCCESS: LInks look correct
- Click on any of them
=> SUCCESS: They work!
- Use the 'Display only used tags/subfields' checkbox
=> SUCCESS: No behaviour change!
- Sign off :-D

Sponsored-by: Theke Solutions
Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: Fix pluralization of type
Nick Clemens [Sat, 27 Oct 2018 15:53:34 +0000 (15:53 +0000)]
Bug 18591: Fix pluralization of type

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: Add missing schema file
Nick Clemens [Sat, 27 Oct 2018 15:03:03 +0000 (15:03 +0000)]
Bug 18591: Add missing schema file

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21435: Update two-column templates with Bootstrap grid: Tools part 3
Owen Leonard [Thu, 3 May 2018 17:06:54 +0000 (17:06 +0000)]
Bug 21435: Update two-column templates with Bootstrap grid: Tools part 3

This patch modifies several tools templates to use the
Bootstrap grid instead of YUI.

This patch also removes obsolete "text/javascript" attributes from
<script> tags and "text/css" attributes from <style> tags in the
modified templates.

To test, apply the patch and view the following pages, confirming that
they look correct at various browser widths:

 - Tools -> MARC modification templates
   - View and edit templates
 - Tools -> Batch patron modification
   - Test each step of the process
 - Tools -> Overdue notice/status triggers
 - Tools -> Upload patron images
   - Test each step of the upload process
 - Tools -> Quote editor
   -> Quote uploader
     - Import quotes

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21434: (follow-up) Switch two-column templates to Bootstrap grid: Tools part 2
Owen Leonard [Fri, 12 Oct 2018 14:23:49 +0000 (14:23 +0000)]
Bug 21434: (follow-up) Switch two-column templates to Bootstrap grid: Tools part 2

This follow-up corrects CSS which was dependent on YUI-specific markup
context.

To test, apply the patch, regenerate the staff client CSS, go to Tools
-> Calendar.

- Click any date on the calendar
- In the entry form the checkbox and radio button options should be
  styled correctly.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21434: Update two-column templates with Bootstrap grid: Tools part 2
Owen Leonard [Thu, 3 May 2018 16:48:34 +0000 (16:48 +0000)]
Bug 21434: Update two-column templates with Bootstrap grid: Tools part 2

This patch modifies several tools templates to use the
Bootstrap grid instead of YUI.

This patch also removes obsolete "text/javascript" attributes from
<script> tags and "text/css" attributes from <style> tags in the
modified templates.

To test, apply the patch and view the following pages, confirming that
they look correct at various browser widths:

 - Tools -> Export data
 - Tools -> Calendar
 - Tools -> Import patrons
 - Tools -> Inventory
 - Tools -> Staged MARC management
   - View batches and batch details

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20450: (follow-up) Add missing template filters
Owen Leonard [Thu, 27 Sep 2018 15:36:28 +0000 (15:36 +0000)]
Bug 20450: (follow-up) Add missing template filters

This patch adds two missing template filters as pointed out by the
template test.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20450: Add collection to item table when placing a hold on a specific copy (OPAC)
Katrin Fischer [Thu, 9 Aug 2018 22:13:32 +0000 (22:13 +0000)]
Bug 20450: Add collection to item table when placing a hold on a specific copy (OPAC)

This patch adds a new collection column to the item table when selecting
a specific item for a hold. The column will only appear if at least
one item has a collection set.

To test, in OPAC:
- Place a specific hold on
  - a record with one or more items with collections
  - a record with one or more items without collections
- Verify the collections display correctly when they exist
- Verify the table still works as expected

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20450: Add collection to item table when placing a hold on a specific copy (Intranet)
Katrin Fischer [Thu, 9 Aug 2018 21:28:30 +0000 (21:28 +0000)]
Bug 20450: Add collection to item table when placing a hold on a specific copy (Intranet)

This patch adds a new collection column to the item table when selecting
a specific item for a hold. The column will only appear if at least
one item has a collection set.

To test, in staff:
- Place a specific hold on
  - a record with one or more items with collections
  - a record with one or more items without collections
- Verify the collections display correctly when they exist
- Verify the table still works as expected

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 20896: Move serial enumeration after callnumber on intranet detail page
Katrin Fischer [Wed, 8 Aug 2018 19:52:26 +0000 (19:52 +0000)]
Bug 20896: Move serial enumeration after callnumber on intranet detail page

The column with serial enumeration/chronology information is moved
from the back to the right of itemcallnumber on the intranet detail
page.

To test:
- Apply patch
- Look at different detail pages in staff:
  - 1 or more items have serial enumeration information
  - no item has serial enumeration informatoin
- Verify
  - itemcallnumber is now followed by serial information, if
    an item with the field filled in exists for the record
  - all other functionality, like sorting, works as expected

https://bugs.koha-community.org/show_bug.cgi?id=20896

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 19263: DBRev 18.06.00.047
Nick Clemens [Sat, 27 Oct 2018 14:20:37 +0000 (14:20 +0000)]
Bug 19263: DBRev 18.06.00.047

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 19263: Rancor - 001 widget - changes to address QA issues
Cori Lynn Arnold [Fri, 12 Oct 2018 13:13:12 +0000 (13:13 +0000)]
Bug 19263: Rancor - 001 widget - changes to address QA issues

Changes were made to address QA issues from Comment 17

Tests:

1) Verify that a new entry for CONTROL_NUM_SEQUENCE is added to table authorised_value_categories
2) Edit a bib record using advanced editor and note that the 001 widget isn't there when adding/editing 001 field
3) Add a new row into authorised_values table with:
     a) CONTROL_NUM_SEQUENCE in category column
     b) authorised_value column has a string ending with a number i.e. sprLib0001
     c) lib column has a short string indicating the type of control number i.e. "Springfield Library"
4) Edit a bib record using the advanced editor and note that the 001 widget is there when adding / editing 001 field

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 19263: Rancor - 001 widdget only for configured client
Cori Lynn Arnold [Tue, 9 Oct 2018 12:48:58 +0000 (12:48 +0000)]
Bug 19263: Rancor - 001 widdget only for configured client

Tests:

1) Verify that a new entry for CONTROL_NUM_SEQUENCE is added to table
authorised_value_categories
2) Edit a bib record using advanced editor and note that 001 widget
isn't there when adding/editing 001 field
3) Add a new row into authorised_values table with:
    a) CONTROL_NUM_SEQUENCE in category column
    b) authorised_value column has a string ending with a number i.e.
    "faw0001"
    c) lib column has a short string indicating type of control number
    i.e. "FAW"
4) Edit a bib record using the advanced editor and note that the 001
widget is there when adding / editing 001 field

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 19263: Rancor - 001 widget - db update
Cori Lynn Arnold [Mon, 8 Oct 2018 16:10:16 +0000 (16:10 +0000)]
Bug 19263: Rancor - 001 widget - db update

    In advanced editor mode for cataloging, the 001 widget will
    automatically assign the next control number if a format is defined
    in  authorised_values table.

    To test you need access to the database.
    1) Verify that a new entry for CONTROL_NUM_SEQUENCE is added to
    table  authorised_value_categories
    2) Enter a new value for authorised_values with the authorised_value
    column ending in a number
    3) Edit a record using the advanced editor, specifically the 001
    field
    4) Note the new widget and option to increment or assign manually.

    The buttons fit within the widget now, and there's a database update
    to create the CONTROL_NUM_SEQUENCE.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 19263: Rancor - Add auto-001 widget
Jesse Weaver [Tue, 10 Nov 2015 19:04:14 +0000 (12:04 -0700)]
Bug 19263: Rancor - Add auto-001 widget

To test:

1 - Define a new authorised valued category "CONTROL_NUM_SEQUENCE"
2 - Add a value/sequence
    The authorised_value is the starting value - shoudl end in a number
    that can be incremented e.g. "control_sequence_001"
    The description field is the name for the seqeuence
    Opac description is unused
3 - Edit a record in rancor
4 - Note the new widget and option to increment or assign manually

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: (RM follow-up) Fix filter
Nick Clemens [Sat, 27 Oct 2018 13:24:30 +0000 (13:24 +0000)]
Bug 18591: (RM follow-up) Fix filter

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: DBRev 18.06.00.046
Nick Clemens [Sat, 27 Oct 2018 13:21:09 +0000 (13:21 +0000)]
Bug 18591: DBRev 18.06.00.046

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: (follow-up) Add more POD
Andrew Isherwood [Fri, 5 Oct 2018 13:31:48 +0000 (14:31 +0100)]
Bug 18591: (follow-up) Add more POD

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: (follow-up) Add missing html filters
Andrew Isherwood [Fri, 5 Oct 2018 13:20:11 +0000 (14:20 +0100)]
Bug 18591: (follow-up) Add missing html filters

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: Allow any number of comments on ILLs
Magnus Enger [Mon, 20 Nov 2017 14:14:30 +0000 (14:14 +0000)]
Bug 18591: Allow any number of comments on ILLs

This patch makes it possible to add arbitrary comments to ILL
requests. Comments are read only and displayed in chronological
order. Comments can be added by librarians, but also added automatically
based on comments in the different protocols, so that comments from the
lending library can also be added.

To test:
- Enable the ILL module ("ILLModule" syspref + config in koha-conf.xml)
- Install the Dummy backend from here:
  https://github.com/PTFS-Europe/Dummy
- Create a Dummy ILL request
- Add comments to the request, checking that the name and borrowernumber
  of the person that added the comment is displayed ok
- Check that the displayed date and time the comment was submitted follows
  the "dateformat" syspref
- On the "List requests" page, check that the correct number of comments
  is displayed in the "Comments" column
- Check that the tests pass:
  prove t/db_dependent/Illcomments.t

Signed-off-by: andrew.isherwood@ptfs-europe.com
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 18591: Database updates
Magnus Enger [Sat, 11 Nov 2017 14:02:22 +0000 (14:02 +0000)]
Bug 18591: Database updates

Signed-off-by: andrew.isherwood@ptfs-europe.com
Bug 18591: (QA follow-up) Fix merge error in kohastructure.sql

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21526: (RM follow-up) Fix merge markers and a few extra filters
Nick Clemens [Fri, 26 Oct 2018 19:43:20 +0000 (19:43 +0000)]
Bug 21526: (RM follow-up) Fix merge markers and a few extra filters

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21680: Remove dead code - C4::Accounts::fixaccounts
Josef Moravec [Fri, 26 Oct 2018 09:28:01 +0000 (09:28 +0000)]
Bug 21680: Remove dead code - C4::Accounts::fixaccounts

Test plan:

git grep fixacccounts
-- without patch there are 3 occurences
-- with patch - no occurence of fixaccounts

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
6 years agoBug 21654: Remove refund_lost_item_fee_rules.sql from the installer process
Jonathan Druart [Wed, 24 Oct 2018 22:50:02 +0000 (19:50 -0300)]
Bug 21654: Remove refund_lost_item_fee_rules.sql from the installer process

This is a follow-up patch for bug 14048 comment 97

Test plan:
  git grep refund_lost_item_fee_rules.sql
should not return any results

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>