]> git.koha-community.org Git - koha.git/log
koha.git
6 years agoBug 19979: ->count and be called directly on Koha::Objects
Jonathan Druart [Tue, 27 Feb 2018 14:40:13 +0000 (11:40 -0300)]
Bug 19979: ->count and be called directly on Koha::Objects

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19979: Fix get_facets_info test in Search.t
Marcel de Rooy [Tue, 16 Jan 2018 13:28:36 +0000 (14:28 +0100)]
Bug 19979: Fix get_facets_info test in Search.t

The test should remove the holdingbranch key in the expected results when
there is only one branch.
See the logic in C4::Koha.

Test plan:
[1] Run Search.t on a database with multiple branches.
[2] Run Search.t on a database with one branch. Without this patch the test
    would fail: Failed test '_get_facets_info returns the correct data'.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20142: Allow translating offline circ message
Pasi Kallinen [Tue, 6 Feb 2018 11:01:36 +0000 (13:01 +0200)]
Bug 20142: Allow translating offline circ message

Allow translating the notification saying you cannot change branch or
logout while offline.

Test plan:

1) Enable AllowOfflineCirculation
2) Go to Home -> Circulation -> Built-in offline circulation interface
3) Try to change your branch. Note the notification message
4) Apply patch, install language, translate the notification
5) Repeat 2 and 3 in that language. The message should be translated

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20147: Allow translating prompt in label edit batch
Pasi Kallinen [Tue, 6 Feb 2018 12:17:45 +0000 (14:17 +0200)]
Bug 20147: Allow translating prompt in label edit batch

Fix one untranslatable prompt in the label batch edit.

Test plan:

1) Go to Home -> Tools -> Label creator
2) Click on New -> Label batch
3) Add items to the batch
4) Select any of the items
5) Click on "Remove selected items"
6) Note the popup text
7) Apply patch, update a language, translate the msgid
   "Are you sure you want to remove label number(s): %s from this batch?"
8) Repeat 1-6. The popup text should now be translated.

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: Fix DBRev message
Jonathan Druart [Tue, 27 Feb 2018 14:25:03 +0000 (11:25 -0300)]
Bug 13287: Fix DBRev message

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: DBRev 17.12.00.021
Jonathan Druart [Mon, 26 Feb 2018 16:23:38 +0000 (13:23 -0300)]
Bug 13287: DBRev 17.12.00.021

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: Remove warning if --days is not passed and pref empty
Jonathan Druart [Mon, 26 Feb 2018 16:01:05 +0000 (13:01 -0300)]
Bug 13287: Remove warning if --days is not passed and pref empty

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: (QA follow-up) Final polishing
Marcel de Rooy [Fri, 23 Feb 2018 09:33:49 +0000 (10:33 +0100)]
Bug 13287: (QA follow-up) Final polishing

Cosmetic changes.
And: adding a confirm flag (see earlier comment too). Without this flag but
with having a filled pref, the script would purge when you do not pass any
parameter. This might not be appreciated.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: (QA follow-up) Extend Suggestions.t for DelSuggestionsOlderThan
Marcel de Rooy [Fri, 23 Feb 2018 09:00:13 +0000 (10:00 +0100)]
Bug 13287: (QA follow-up) Extend Suggestions.t for DelSuggestionsOlderThan

Adding a days>0 test in the sub with a POD line.
Specific subtest for this sub added in Suggestions.t.

Test plan:
Run t/db_dependent/Suggestions.t again.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: (QA follow-up) Prepare Suggestions.t for changes
Marcel de Rooy [Fri, 23 Feb 2018 08:15:55 +0000 (09:15 +0100)]
Bug 13287: (QA follow-up) Prepare Suggestions.t for changes

Just rearranging some modules here.
Adding Koha::Database and schema calls.

Test plan:
Run t/db_dependent/Suggestions.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: (QA follow-up) Add db revision
Mark Tompsett [Wed, 24 Feb 2016 00:29:36 +0000 (19:29 -0500)]
Bug 13287: (QA follow-up) Add db revision

Added missing upgrade SQL system preference.
Corrected system preference screen message
Fixes on purge_suggestions.pl
- perlcritic friendlier
- address $PERL5LIB comment by using $PROGRAM_NAME (comment #10)
- used STDERR (comment #10)
- perltidy

TEST PLAN
---------
$ ./installer/data/mysql/updatedatabase.pl
-- should run upgrade and generate new systempreference in table
$ ./misc/cronjobs/purge_suggestions.pl --help
-- should give help with a real path used instead of $PERL5LIB.
$ ./misc/cronjobs/purge_suggestions.pl -days -1
-- should give error message as expected
$ ./misc/cronjobs/purge_suggestions.pl -days 0
-- should give error message as expected

Go to OPAC system preferences tab and check the
PurgeSuggestionsOlderThan system preference
-- message should be as expected (see comment #9)

run koha qa test tools
-- all should pass

Signed-off-by: Marc Veron <veron@veron.ch>
Signed-off-by: Jon Knight <J.P.Knight@lboro.ac.uk>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Amended: Moved new pref from OPAC to Acquisitions preferences.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 13287: Add a system preference to define the number of days used in purge_suggest...
remi [Tue, 28 Jul 2015 16:10:59 +0000 (12:10 -0400)]
Bug 13287: Add a system preference to define the number of days used in purge_suggestions.pl

    The system preferences value is used whenever purge_suggestions.pl is called without the 'days' parameter.
    This patch uses the preference description suggested by comment #9.
    This version should now be cleanly applicable.

    I Apply the patch
    II Run updatedatabase.pl

    a) Run purge_suggestions.pl without the days parameter
       - validate that there is an error message
    b) Run purge_suggestions.pl with the days parameter
       - validate that there is no error message
    c) Insert a number of days in the system variable PurgeSuggestionsOlderThan
    d) Run purge_suggestions.pl without the days parameter
       - validate that there is no error message

Signed-off-by: Liz Rea <liz@catalyst.net.nz>
Tested per plan, all tests pass.

Signed-off-by: Marc Veron <veron@veron.ch>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20140: Allow translating more of OAI sets
Pasi Kallinen [Tue, 6 Feb 2018 08:11:27 +0000 (10:11 +0200)]
Bug 20140: Allow translating more of OAI sets

Allow translating two strings in the OAI set config:
"setDescription" and "Remove"

Test plan:

1) Go to Home -> Administrator -> OAI sets config -> Add a new OAI set
2) Click on "New set"
3) Click on "Add description"
4) Note the "setDescription:" and "Remove" -texts
5) Install patch, update language, translate the new strings
6) Redo 1-4, note how the strings in part 4 are now translated

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>
Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20225: Remove unused script reports/stats.print.pl
Julian Maurice [Fri, 16 Feb 2018 10:21:09 +0000 (11:21 +0100)]
Bug 20225: Remove unused script reports/stats.print.pl

Test plan:
1. Verify that there is no remaining references to this script

Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Maksim Sen <maksim@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
https://bugs.koha-community.org/show_bug.cgi?id=20255

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20082: DBRev 17.12.00.020
Jonathan Druart [Mon, 26 Feb 2018 16:09:18 +0000 (13:09 -0300)]
Bug 20082: DBRev 17.12.00.020

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20082: Correct description of Vietnamese language and add German translation
Katrin Fischer [Thu, 1 Feb 2018 06:42:13 +0000 (07:42 +0100)]
Bug 20082: Correct description of Vietnamese language and add German translation

Fixes the language description of Vietnamese according to the
bug report and adds the German translation for the language
name.

To test:
- Run the database update
- Verify that the new descriptions Tiếng Việt shows
  in advanced search language pull down
- Install German translations
- Verify that the German translation 'Vietnamesisch'
  shows in the pull down when German is selected.

Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20199: Send a DateTime to DBIC instead of an iso formatted date
Jonathan Druart [Wed, 14 Feb 2018 17:17:58 +0000 (14:17 -0300)]
Bug 20199: Send a DateTime to DBIC instead of an iso formatted date

We do not need to format the date, DBIC handles DateTime correctly.

It fixes t/db_dependent/Letters.t with new SQL modes

Test plan:
  prove t/db_dependent/Letters.t
  prove t/db_dependent/Koha/Acquisition/Order.t
Must return green

Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20199: Add tests for Koha::Acq::Order->store
Jonathan Druart [Wed, 14 Feb 2018 17:13:15 +0000 (14:13 -0300)]
Bug 20199: Add tests for Koha::Acq::Order->store

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20075: Update installer files for uk-UA
Marcel de Rooy [Mon, 26 Feb 2018 09:59:13 +0000 (10:59 +0100)]
Bug 20075: Update installer files for uk-UA

Instead of the very laborious task of going thru all these files line by
line, I am adding a statement at the very end to correct hidden values.

Test plan:
Run a new Ukrainian install or run a few files on an empty database.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20075: Update installer files for ru-RU
Marcel de Rooy [Mon, 26 Feb 2018 09:48:50 +0000 (10:48 +0100)]
Bug 20075: Update installer files for ru-RU

Instead of the very laborious task of going thru all these files line by
line, I am adding a statement at the very end to correct hidden values.

Test plan:
Run a new Russian install or run a few files on an empty database.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20075: Adjust installer files for de-DE up to pl-PL
Marcel de Rooy [Mon, 26 Feb 2018 08:59:03 +0000 (09:59 +0100)]
Bug 20075: Adjust installer files for de-DE up to pl-PL

We are replacing the values -5 or 8 here by 1 for the hidden field in
auth_subfield_structure.
Note that 1 is mainly used in MARC21 and -5 in UNIMARC.
Since it is a boolean, I choose here for keeping 0 and 1.

The value 8 was only used for field 942 in MARC21 files.
The value -5 was replaced in
en/marcflavour/unimarc/mandatory/authorities_normal_unimarc.sql
it-IT/marcflavour/unimarc/necessari/authority_framework.sql
pl-PL/marcflavour/unimarc/mandatory/authorities_normal_unimarc.sql

NOTE: The french unimarc files
fr-FR/marcflavour/unimarc_complet/Obligatoire/autorite_default.sql
fr-FR/marcflavour/unimarc_complet/Obligatoire/autorites_norme_unimarc.sql
fr-FR/marcflavour/unimarc_lecture_pub/Obligatoire/autorites_norme_unimarc.sql
seem to display all fields, since hidden is 0 everywhere.

Test plan:
Test a new install in one of the languages.
Or run the sql script on an empty database.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20074: DBRev 17.12.00.019
Jonathan Druart [Mon, 26 Feb 2018 16:06:15 +0000 (13:06 -0300)]
Bug 20074: DBRev 17.12.00.019

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20074: (follow-up) Replace hidden value -5 by 1 in data and interface
Marcel de Rooy [Mon, 26 Feb 2018 10:43:43 +0000 (11:43 +0100)]
Bug 20074: (follow-up) Replace hidden value -5 by 1 in data and interface

[ Moved from 20075 to 20074 ]

Since hidden is used as a boolean, it makes more sense to save the values
0 and 1 instead of 0 and -5.

Test plan:
Test toggling between Show all and Hide all in the auth frameworks.
Run the db rev.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20074: (follow-up) Remove another remainder of biblio hidden logic
Marcel de Rooy [Tue, 23 Jan 2018 14:59:06 +0000 (15:59 +0100)]
Bug 20074: (follow-up) Remove another remainder of biblio hidden logic

Script authorities.pl still contains a module 2 calculation on the hidden
attribute, although it is used as a boolean.
Since -5 mod 2 == 1, it does no harm, but we better remove it.

Test plan:
Edit and save an authority. Verify that everything still works as expected.

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20074: Database revision to convert hidden to -5
Marcel de Rooy [Tue, 23 Jan 2018 14:21:27 +0000 (15:21 +0100)]
Bug 20074: Database revision to convert hidden to -5

The hidden value is used as a boolean in authority frameworks (in contrast
with biblio framework).
It is consistent to apply the same value (-5) to all non-zero values.

Test plan:
Check if you a have 0, 1 and 8 value in hidden somewhere.
Run the dbrev.
Verify that 1 and 8 are converted to -5.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20074: Fix hidden value in auth_subfields_structure
Marcel de Rooy [Tue, 23 Jan 2018 14:16:35 +0000 (15:16 +0100)]
Bug 20074: Fix hidden value in auth_subfields_structure

The template included an else branch where a value not equal to 0 or -5
was interpreted as 0 (Show all).
This effectively converted hidden values 1 and 8 to 0.
This patch removes that else branch.

Test plan:
Toggle a authority field between Hide all and Show all. Check what happens.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19823: Move template JavaScript to the footer: MARC21 editor plugins
Owen Leonard [Fri, 15 Dec 2017 15:27:31 +0000 (15:27 +0000)]
Bug 19823: Move template JavaScript to the footer: MARC21 editor plugins

This patch modifies the templates for MARC21 editor plugins so that
JavaScript is included in the footer.

To test, you must link the plugins to their corresponding tag +
subfield (if they aren't already):

In a bibliographic framework:

000 -> marc21_leader.pl
006 -> marc21_field_006.pl
007 -> marc21_field_007.pl
008 -> marc21_field_008.pl
773$t -> marc21_linking_section.tt

In an authorities framework:

000 -> marc21_leader_authorities.tt
008 -> marc21_field_008_authorities.tt
    -> marc21_field_008_classifications.tt

For each field, trigger the plugin by clicking the plugin link. Test
JavaScript-driven functionality in each plugin window and confirm that
your selections are correctly saved to the editor.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Edit: Fix for QA, add KOHA_VERSION variables to js includes

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19754: Move template JavaScript to the footer: Acquisitions, part 2
Owen Leonard [Tue, 5 Dec 2017 17:17:15 +0000 (17:17 +0000)]
Bug 19754: Move template JavaScript to the footer: Acquisitions, part 2

This patch modifies some staff client acquisitions templates so that
JavaScript is included in the footer instead of the header.

To test, apply the patch and test the JavaScript-driven features of the
modified templates: All button controls, DataTables functionality, tabs,
etc.

- Acquisitions -> Invoices
  - Datepickers
  - Search for invoices
    - Datatable
- Acquisitions -> Late orders
  - Datepickers, datatables, selection controls (when searching by
    vendor)
- Acquisitions -> Vendor -> Basket -> Add to basket -> From an existing
  record -> Search
  - Datatables, View MARC modal
- Acquisitions -> Vendor -> Basket -> Add to basket -> From a new
  (empty) record
  - Form validation, inactive fund control, add users to notify on
    receiving.
- Acquisitions -> Vendor -> Basket -> Add to basket -> From a
  subscription -> Search
  - Datatables, show only renewed, show/hide search form
- Acquisitions -> Vendor -> Basket -> Add to basket -> From a suggestion
  - Datatables, "Show" controls
- Acquisitions
  - "Ordered" link in table of funds
    - Datatables
- Acquisitions -> Vendor -> Receive shipment -> Invoice -> Receive
  - Datepickers, item add form plugins (test with AcqCreateItem set to
    'receiving an order.'

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: (QA follow-up) Fix showing links to items on boraccount page
Josef Moravec [Mon, 19 Feb 2018 22:43:32 +0000 (22:43 +0000)]
Bug 12001: (QA follow-up) Fix showing links to items on boraccount page

Test plan:
Go to the Fines -> Account page of a patron with fees linked to items
--> without patch there is no link to related item
--> with patch the link is presented in description column

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: (QA follow-up) Fix patron account summary print
Josef Moravec [Mon, 19 Feb 2018 22:31:54 +0000 (22:31 +0000)]
Bug 12001: (QA follow-up) Fix patron account summary print

Test plan:
Try to print patron account summary
--> without patch it explodes
--> with patch it works, and if there is a fee related to item, the title should be printed out

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: (QA follow-up) Add test for Koha::Account::Lines object
Josef Moravec [Mon, 19 Feb 2018 21:24:32 +0000 (21:24 +0000)]
Bug 12001: (QA follow-up) Add test for Koha::Account::Lines object

Test plan
prove t/db_dependent/Koha/Account/Lines.t
--> should be green

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: (QA follow-up) Fix printinvoice page
Josef Moravec [Mon, 19 Feb 2018 20:49:02 +0000 (20:49 +0000)]
Bug 12001: (QA follow-up) Fix printinvoice page

Test plan:
Try to print a fee
--> without patch it explodes
--> with patch it works and the date is formatted according to
system wide date format setting

Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: (QA follow-up) Explicit return
Tomas Cohen Arazi [Fri, 16 Feb 2018 18:05:30 +0000 (15:05 -0300)]
Bug 12001: (QA follow-up) Explicit return

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: Format DEBT correctly
Jonathan Druart [Sun, 7 Jan 2018 16:41:07 +0000 (13:41 -0300)]
Bug 12001: Format DEBT correctly

Before this patchset, DEBT was formatted in the module, now it should be
done template-side.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: Prove that result are the same \o/
Jonathan Druart [Fri, 5 Jan 2018 21:00:24 +0000 (18:00 -0300)]
Bug 12001: Prove that result are the same \o/

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: Move GetMemberAccountBalance to Koha::Account->non_issues_charges
Jonathan Druart [Fri, 5 Jan 2018 20:25:41 +0000 (17:25 -0300)]
Bug 12001: Move GetMemberAccountBalance to Koha::Account->non_issues_charges

As said previously, GetMemberAccountBalance returns ( the balance, the
non issues charges, the other charges)

The other charges are the balance - the non issues charges.

In this patch we remove the subroutine from C4::Members and use the
new Koha::Account->non_issues_charges subroutine instead

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: Add tests
Jonathan Druart [Fri, 5 Jan 2018 20:46:51 +0000 (17:46 -0300)]
Bug 12001: Add tests

Yes, we need tests to make sure we understand what is going on in this
subroutine.
The different combination of HoldsInNoissuesCharge,
RentalsInNoissuesCharge and ManInvInNoissuesCharge are tested here with
the subroutine we are going to remove (GetMemberAccountBalance).
In one of the next patches the new methods will be used to make sure we
are not modifying the calculated values (except the formatting).

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 12001: Move GetMemberAccountRecords to the Koha namespace
Jonathan Druart [Fri, 5 Jan 2018 19:18:37 +0000 (16:18 -0300)]
Bug 12001: Move GetMemberAccountRecords to the Koha namespace

The GetMemberAccountRecords may be a perf killer, it retrieves all the
account lines of a patron and then the related item and biblio
information.
Most of the time we only want to know how much the patron owns to the
library (sum of amountoutstanding). We already have this information in
Koha::Patron->account->balance.

This patch replaces the occurrences of this subroutine by fetching only
the information we need, either the balance, the detail, or both.
It removes the formatting done in the module, to use the TT plugin
'Price' instead.
There is a very weird and error-prone behavior/feature in
GetMemberAccountBalance (FIXME): as the accountlines.accounttype is a
varchar(5), the value of the authorised value used for the
ManInvInNoissuesCharge pref (category MANUAL_INV) is truncated to the 5
first characters. That could lead to unexpected behaviors.

On the way, this patchset also replace the GetMemberAccountBalance
subroutine, which returns the balance, the non issues charges and the
other charges. We only need to have the balance and the non issues
charges to calcul the third one.

Test plan:
Add several fees for a patron and play with HoldsInNoissuesCharge,
RentalsInNoissuesCharge and ManInvInNoissuesCharge.
The information (biblio and item info, as well as the account line) must
be correctly displayed on the different screens: 'Fines' module, fine
slips, circulation module

Note that this patchset could introduce regression on price formatting,
but will be easy to fix using the TT plugin.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20240: Remove space before : when searching for a vendor in serials (Vendor name :)
Owen Leonard [Wed, 21 Feb 2018 17:40:06 +0000 (17:40 +0000)]
Bug 20240: Remove space before : when searching for a vendor in serials (Vendor name :)

This patch removes the space before the colon in the "vendor" label in
the vendor search pop-up window.

To test, apply the patch and go to Serials -> New subscription.

- Click the "Search for a vendor" link next to the vendor form field.
- In the pop-up window, confirm that there is no space before the colon
  in the "vendor" label.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20239: Fix spelling on authority linker plugin
Owen Leonard [Wed, 21 Feb 2018 17:59:49 +0000 (17:59 +0000)]
Bug 20239: Fix spelling on authority linker plugin

This patch corrects the capitalization of the "Choose" link in the
pop-up window for selecting an authority record to link to a MARC field.

This patch also converts the link, and the "Edit authority" link, to
Bootstrap buttons.

To test:
- Create a new record
- Go to the 100 field
- Click on plugin link behind $a
- Look for an existing authoriy in your system
- In the table of search results, confirm that the "Choose" and "Edit
  authority" links look correct and work correctly.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20061: koha-common is not pulling libsearch-elasticsearch-perl / d/control
Mirko Tietgen [Fri, 23 Feb 2018 12:36:02 +0000 (13:36 +0100)]
Bug 20061: koha-common is not pulling libsearch-elasticsearch-perl / d/control

update debian/control. this file is auto generated. no testing required.

Signed-off-by: Mirko Tietgen <mirko@abunchofthings.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20061: koha-common is not pulling libsearch-elasticsearch-perl
Mirko Tietgen [Fri, 23 Feb 2018 12:10:51 +0000 (13:10 +0100)]
Bug 20061: koha-common is not pulling libsearch-elasticsearch-perl

Adds Search::Elasticsearch to Perldependencies.pm

Signed-off-by: Mirko Tietgen <mirko@abunchofthings.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 7143: Update about page for new dev - Pongtawat Chippimolchai
Jonathan Druart [Tue, 20 Feb 2018 17:14:56 +0000 (14:14 -0300)]
Bug 7143: Update about page for new dev - Pongtawat Chippimolchai

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20250: (bug 19529 follow-up) Prevent NoIssuesChargeGuarantees.t to fail randomly
Jonathan Druart [Mon, 19 Feb 2018 20:40:06 +0000 (17:40 -0300)]
Bug 20250: (bug 19529 follow-up) Prevent NoIssuesChargeGuarantees.t to fail randomly

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20249: (bug 18789 follow-up) "Patron has no outstanding fines" now appears alongs...
Charles Farmer [Mon, 19 Feb 2018 20:00:33 +0000 (15:00 -0500)]
Bug 20249: (bug 18789 follow-up) "Patron has no outstanding fines" now appears alongside fines

Test plan:
    1) Choose two patrons from your database, one who has fines, and the other who does not
    2) Visit their 'Fines' page, and click on the 'Pay fines' tab
        2.1) If they don't have any fines, you'll only see a blank row
        2.2) If they do have fines, the payment form will appear, but the text "... no outstanding fines" will also appear
    3) Apply patch
    4) Visit once again the 'Pay fines' tab of your patrons
        4.1) Now, "... no outstanding fines" will appear for the right situation

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18913: Allow symbolic link in /etc/koha/sites
Pongtawat C [Sun, 9 Jul 2017 16:34:17 +0000 (23:34 +0700)]
Bug 18913: Allow symbolic link in /etc/koha/sites

This patch makes the koha-* scripts follow symbolic links when querying for
Koha instances. Without it, it is not possible to define instances outside the
/etc/koha/sites directory,

To test:
- Create a symlink in /etc/koha/sites:
  $ sudo ln -s /tmp /etc/koha/sites/test
- Test the original is_instance function:
  $ . /usr/share/koha/bin/koha-functions.sh
  $ is_instance test && echo success || echo failure
=> FAIL: symlinks are not considered instance names (i.e. failure is printed)
- Apply this patch
- Update the koha-functions.sh file:
  $ perl misc4dev/cp_debian_files.pl
- Test is_instance again:
  $ . /usr/share/koha/bin/koha-functions.sh
  $ is_instance test && echo success || echo failure
=> SUCCESS: symlinks are considered instance names (i.e. success is printed)
- Sign off :-D

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19290: DBRev 17.12.00.018
Jonathan Druart [Mon, 19 Feb 2018 19:16:57 +0000 (16:16 -0300)]
Bug 19290: DBRev 17.12.00.018

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19290: Browse selected bibliographic records - Staff interface
Jonathan Druart [Wed, 11 Oct 2017 22:06:17 +0000 (19:06 -0300)]
Bug 19290: Browse selected bibliographic records - Staff interface

This patch adds the same feature as bug 10858 for the OPAC interface:
after a search, librarians will be able to browse selected results.
The results can be selected from several pages.
By extension it is possible to add results from several pages to a list
or the cart.

When at least one result is selected, a new "Browse selected records" button
becomes usable and change the behaviour of the existing browser.

The whole feature can be turned off with the pref BrowseResultSelection.

Test plan:
- Launch a search (on the staff interface)
- Check some biblios
- Go on another page
- Check some biblios
- Come back to a page you already check results and confirm that they are
still checked
- Click on the "Browse selected records" button
- Check that you are able to browse results you had checked.

You can also:
- add them to the cart
- add them to a list

QA note: the browsers at the OPAC and the one at the staff interface are completely different
That's why the code is not mimicking what has been done on bug 10858.
The behaviour must stay the same anyway.

Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: (follow-up) Shift TINYTEXT columns
Tomas Cohen Arazi [Mon, 19 Feb 2018 13:25:21 +0000 (10:25 -0300)]
Bug 18336: (follow-up) Shift TINYTEXT columns

This patch fixes two errors that slipped in the patchset.

To test:
- Create a dummy branch for testing:
  $ cd kohaclone
  $ git fetch
  $ git checkout v17.11.00 -b dummy
- Reset your working DB
  $ reset_all (y)
- Set your branch to current master
  $ git reset --hard origin/master
- Update the DB
  $ updatedatabase
- Update the schema files
  $ kshell
 k$ misc/devel/update_dbix_class_files.pl \
       --db_name koha_kohadev \
       --db_user koha_kohadev \
       --db_passwd password
 k$ exit
  $ git diff
=> FAIL: There are discrepancies on upgrades
- Reset to v17.11.00 revision and DB:
  $ git reset --hard v17.11.00
  $ reset_all (y)
- Set your branch to current master
  $ git reset --hard origin/master
- Apply this patch
- Update the DB
  $ updatedatabase
- Update the schema files
  $ kshell
 k$ misc/devel/update_dbix_class_files.pl \
       --db_name koha_kohadev \
       --db_user koha_kohadev \
       --db_passwd password
 k$ exit
  $ git diff
=> SUCCESS: No discrepancies!
- Reset to HEAD to get rid of the schema changes
  $ git reset --hard HEAD
- Regenerate the schema files on top of this patch
  $ dbic ; cd /home/vagrant/kohaclone
  $ git diff
=> SUCCESS: No discrepancies!
- Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20037: Switch single-column templates to Bootstrap grid: Serials
Owen Leonard [Thu, 18 Jan 2018 18:29:10 +0000 (18:29 +0000)]
Bug 20037: Switch single-column templates to Bootstrap grid: Serials

This patch updates several single-column Serials module templates to
use the Bootstrap grid. In addition to grid changes, some templates have
been modified to include the footer with the correct popup parameter.

- serials\acqui-search.tt - Go to Serials -> New subscription. Click
  "Search for a vendor."

- serials\acqui-search-result.tt - Vendor search results

- serials\result.tt - Click "Search for record."

- serials\subscription-bib-search.tt - Catalog search results.

Each of these pages should look correct.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19981: Switch single-column templates to Bootstrap grid: Course reserves
Owen Leonard [Tue, 16 Jan 2018 15:03:29 +0000 (15:03 +0000)]
Bug 19981: Switch single-column templates to Bootstrap grid: Course reserves

This patch updates three single-column course reserves templates to use
the Bootstrap grid:

- course-reserves.tt - The main Course Reserves page
- course-details.tt - The detail view of an individual course
- course.tt - Editing a course
- add_items-step1.tt - Adding items to a course, step 1 (scan barcode)
- add_items-step2.tt - Adding items to a course, step 2
- invalid-course.tt - The error page shown if you try to view
  course_reserves/course-details.pl directly without passing a course id
  in the URL
  - Also changed in this template: Error message has been wrapped in the
    standard "dialog alert" <div>.

Each of these pages should look correct, with a single centered column
with wide margins on either side. At lower browser widths the margins
should disappear.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19954: Update popup window templates to use Bootstrap grid: Patrons
Owen Leonard [Thu, 11 Jan 2018 18:16:39 +0000 (18:16 +0000)]
Bug 19954: Update popup window templates to use Bootstrap grid: Patrons

This patch updates two patron-related templates to use the
Bootstrap grid instead of the YUI grid.

This patch also corrects an unrelated error in update-child.tt where
some JS variable declarations required by members-menu.js were
missing.

To test you must have more than one adult-type patron category defined.

- Locate and view a child-type patron record.
- From the "More" menu in the toolbar, choose "Update child to adult
  patron."
  - The popup window which appears should look correct and work
    correctly.
  - The table of patron categories should be sortable.
- Add a new patron and enter the first and last names of an existing
  patron.
  - When Koha asks to confirm a possible duplicate record, click the
    "View existing record" link. The popup which is triggered should
    look correct.

Signed-off-by: Zoe Bennett <zoebennett1308@gmail.com>
Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19939: Move cataloging Z39.50 results actions into menu
Owen Leonard [Tue, 9 Jan 2018 19:11:12 +0000 (19:11 +0000)]
Bug 19939: Move cataloging Z39.50 results actions into menu

This patch modifies the template which displays cataloging Z39.50
search results so that the "MARC," "Card," and "Import" links are moved
out of separate table cells and into one menu.

The old menu which would appear when any table cell is clicked has been
removed, and code added to display the same Bootstrap menu if a table
cell is clicked.

To test, apply the patch and go to Cataloging -> New from Z39.50/SRU.

- Perform a Z39.50 search which will return more than one result.
- Confirm that clicking the "Actions" button triggers a drop-down menu.
  - Confirm that the links in the menu trigger actions for the correct
    bibliographic record.
- Confirm that clicking any other table cell in the table of results
  will trigger the display of the same menu.
  - Confirm that this menu works correctly for the correct record.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19837: Add error feedback for duplicated or unfound cardnumbers
Nick Clemens [Wed, 3 Jan 2018 01:40:13 +0000 (01:40 +0000)]
Bug 19837: Add error feedback for duplicated or unfound cardnumbers

To test:
1 - Enter some patrons on a list
2 - 'Enter multiple cardnumbers'
3 - Make sure to add some that are already in list, some that don't
    exist, and some new patrons
4 - Verify results are as expected with warnings

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19837: Add multiple patrons to a list by barcode
Owen Leonard [Fri, 15 Dec 2017 17:26:12 +0000 (17:26 +0000)]
Bug 19837: Add multiple patrons to a list by barcode

This patch adds the interface change and basic functionality for an
option to add multiple patrons to a patron list by scanning barcodes.

To test, apply the patch and go to Tools -> Patron lists.

- Create a patron list if necessary, and got to the "Add patrons"
  screen.
- Test the process for adding patrons using the "Patron search" text
  input.
- Test the process for adding patrons using the "Enter multiple card
  numbers" option.

This should really have some error-handling added to it: Onscreen
messages when a non-existing patron card number is submitted or when a
patron already exists on the list.

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19785: Replace intranet-tmpl with [% interface %]
Jonathan Druart [Sun, 18 Feb 2018 19:39:01 +0000 (16:39 -0300)]
Bug 19785: Replace intranet-tmpl with [% interface %]

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19785: Move template JavaScript to the footer: Authorities, part 1
Owen Leonard [Fri, 8 Dec 2017 19:09:05 +0000 (19:09 +0000)]
Bug 19785: Move template JavaScript to the footer: Authorities, part 1

This patch modifies even more staff client authorities templates so
that JavaScript is included in the footer instead of the header.

To test, apply the patch and test the JavaScript-driven features of the
modified templates: All button controls, DataTables functionality, tabs,
etc.

 - Authorities
   - New from Z39.50
   -> Search
      -> Results
         - New from Z39.50
         - Deletion confirmation
         - Merge records -> Merge
           - Tabs
           - Tag selection
         -> Authority detail
            - Tabs
            - Deletion confirmation
            - New from Z39.50

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 17672: DBRev 17.12.00.017
Jonathan Druart [Sun, 18 Feb 2018 19:47:12 +0000 (16:47 -0300)]
Bug 17672: DBRev 17.12.00.017

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 17672: DBIC Schema changes
Jonathan Druart [Sun, 18 Feb 2018 19:44:51 +0000 (16:44 -0300)]
Bug 17672: DBIC Schema changes

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 17672: Fixing Items.t expected tests from 12 to 13
charles [Fri, 3 Nov 2017 20:21:04 +0000 (16:21 -0400)]
Bug 17672: Fixing Items.t expected tests from 12 to 13

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 17672: Add damaged_on to items and deleteditems tables
Nick Clemens [Wed, 19 Jul 2017 13:10:41 +0000 (13:10 +0000)]
Bug 17672: Add damaged_on to items and deleteditems tables

This patchset adds a 'damaged_on' column to store the date an item is
marked damaged, analogous to withdrawn_on and itemlost_on

To test:
1 - Apply patch
2 - Mark an item damaged via moredetail.pl (Items tab on left in
        details)
3 - Note the damaged on date apears below
4 - Unmark the item, the date is removed
5 - Go to the edit items screen (from top bar 'Edit->edit items')
6 - Mark item damaged - check db or moredetails.pl to see damaged_on
date
7 - Unmark item damaged - confirm date is removed
8 - prove t/db_dependent/Items.t

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Charles Farmer <charles.farmer@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20148: Prevent adding same user multiple times to an order
Jonathan Druart [Sun, 18 Feb 2018 18:10:30 +0000 (15:10 -0300)]
Bug 20148: Prevent adding same user multiple times to an order

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20148: Prevent adding same user multiple times to acq basket
Pasi Kallinen [Wed, 7 Feb 2018 07:45:20 +0000 (09:45 +0200)]
Bug 20148: Prevent adding same user multiple times to acq basket

When adding a user to manage acquisitions basket, it is possible
to add the same user multiple times. Prevent that.

Test plan:

1) Go to Home -> Acquisitions -> [bookseller] -> [basket]
2) On the "Add user" in the Managed by-part, and try adding
   the same user multiple times.
3) Apply patch
4) Repeat 1 and 2. You should now get an error message saying
   the user is already in the list.

Signed-off-by: Pasi Kallinen <pasi.kallinen@joensuu.fi>
Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20222: Make bread crumb for cleanborrowers.pl match the link text in tools-home.pl
Owen Leonard [Fri, 16 Feb 2018 14:33:12 +0000 (14:33 +0000)]
Bug 20222: Make bread crumb for cleanborrowers.pl match the link text in tools-home.pl

This patch revises the breadcrumbs in the template for batch patron
deletion / anonymization so that they match the text used in the tools
menu and on Tools home.

To test, apply the patch and go through a batch patron anonymization
process. At each step the breadcrumbs should read "Batch patron
deletion/anonymization" instead of "clean patron records."

Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19452: Remove the truncate option
Marcel de Rooy [Thu, 12 Oct 2017 11:13:41 +0000 (13:13 +0200)]
Bug 19452: Remove the truncate option

The truncate option is not really useful. Its result is probably not what
most users of this script expect or need.
It truncates both tables borrower_message_preferences and
borrower_message_transport_preferences. This (unfortunately) includes
deleting messaging preferences for patron categories. After that, adding
preferences again will not add categories again, but only borrower
preferences which are all disabled.

Furthermore, we do not need to disable the foreign key check. Neither
do we actually need to truncate, deleting records seems sufficient.
Also deleting transport preferences is not needed, since it will be
done by a cascade from messaging preferences. Note that the subsequent
call of SetMessagingPreferencesFromDefaults will already delete the
records.

This makes it possible to remove the truncate option altogether.

Test plan:
[1] Select a patron category (say ST) and change days_in_advance to x.
[2] Select a ST patron and set days_advance to y in his msg prefs.
[3] Run borrowers-force-messaging-defaults.pl -doit
[4] Verify that the patron has been reset to the default prefs (incl.
    value x in days_in_advance).
[5] Verify that the patron category prefs are still intact.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Charles Farmer <charles.farmer@inLibro.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20145: Do not insert 0000-00-00 in patron tests (and more)
Jonathan Druart [Wed, 14 Feb 2018 18:15:39 +0000 (15:15 -0300)]
Bug 20145: Do not insert 0000-00-00 in patron tests (and more)

We should call Koha::Patron->is_expired in CanBookBeIssued instead of
doing the same calculation.

Tests have been adapted to pass with new SQL modes.

We should not need to update the values in DB, we already have
  Bug 14717: Prevent 0000-00-00 dates in patron data (3.21.00.023)

Test plan:
  prove t/db_dependent/Circulation/dateexpiry.t
  prove t/db_dependent/Koha/Patrons.t
must return green

Signed-off-by: Roch D'Amour <roch.damour@inlibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19978: Fix ITEMTYPECAT behaviour
Jonathan Druart [Tue, 16 Jan 2018 13:25:00 +0000 (10:25 -0300)]
Bug 19978: Fix ITEMTYPECAT behaviour

ITEMTYPECAT permits to group and hide item types at the OPAC (see bug
10937 for a complete description).

Since commit 091d6c513bcbee224ff06477e79be48cea7fe825
    Bug 17843: Replace C4::Koha::getitemtypeinfo with Koha::ItemTypes
the code assume that they are item types. Before it just assigned undef
to the description.

Test plan:
Create ITEMTYPECAT authorised values
Assign an item type to this authorised value group
Search for a item using this item type at the OPAC
Without this patch applied you get:
Can't call method "translated_description" on an undefined value at
/home/vagrant/kohaclone/opac/opac-search.pl line 231.

With this patch applied the search result is displayed.

Make sure the original feature still works.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18975: Retrieve up-to-date CGISESSID when just logged in
Jonathan Druart [Thu, 21 Dec 2017 20:15:43 +0000 (17:15 -0300)]
Bug 18975: Retrieve up-to-date CGISESSID when just logged in

If a user is asked to login before sending a card, the wrong (old)
CGISESSID cookie is used.
We need to retrieve the one that has just been created.

This will certainly need more work, I guess other scripts are affected
too.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: (QA follow-up) Add missing include back
Katrin Fischer [Thu, 8 Feb 2018 09:27:18 +0000 (09:27 +0000)]
Bug 9573: (QA follow-up) Add missing include back

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Add missing KOHA_VERSION in js paths
Jonathan Druart [Sat, 17 Feb 2018 14:48:51 +0000 (11:48 -0300)]
Bug 9573: Add missing KOHA_VERSION in js paths

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Add missing use statement
Jonathan Druart [Wed, 18 Oct 2017 22:49:31 +0000 (19:49 -0300)]
Bug 9573: Add missing use statement

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: (follow-up) Lost items report - add KohaTable to itemlost
Jonathan Druart [Mon, 16 Oct 2017 15:10:03 +0000 (12:10 -0300)]
Bug 9573: (follow-up) Lost items report - add KohaTable to itemlost

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Lost items report - Add the CSV export ability
Jonathan Druart [Thu, 5 Oct 2017 20:38:34 +0000 (17:38 -0300)]
Bug 9573: Lost items report - Add the CSV export ability

Finally we add the ability to export the list of lost items.
The items will be export in CSV format using a CSV profile defined.

Test plan:
0/ Apply all the patches from this patch set
1/ Define a CSV profile (type=SQL, Usage=Export lost items in report)
Try something like that to get the same columns as the default table:
Title=biblio.title
|Author=biblio.author
|Lost status=items.itemlost
|Lost on=items.itemlost_on
|Barcode=items.barcode
|Call number=items.itemcallnumber
|Date last seen=items.datelastseen
|Price=items.price
|Rep. price=items.replacementprice
|Library=items.homebranch
|item type=items.itype
|Current location=items.holdingbranch
|Location=items.location
|Not for loan status=items.notforloan
|Notes=items.itemnotes
2/ Use the filters and select items to export
3/ Export the list of items you want and make sure the CSV is correctly
formatted and contains the items you selected

QA Notes:
- I think we should add default CSV profiles for the different "usage",
but I would consider it as a separate enhancement since none of them is
defined yet
- Most of the code to export CSV is no reusable. We should make
Koha::Exporter::Record support CSV export for type=SQL (it only
supports MARC type so far).

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Lost items report - Add a new "Export selected items" link
Jonathan Druart [Thu, 5 Oct 2017 19:29:48 +0000 (16:29 -0300)]
Bug 9573: Lost items report - Add a new "Export selected items" link

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Lost items report - Add a new itemlost_on column
Jonathan Druart [Thu, 5 Oct 2017 19:44:38 +0000 (16:44 -0300)]
Bug 9573: Lost items report - Add a new itemlost_on column

This patch adds a new "Lost on" column to the result table

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Lost items report - add KohaTable to itemlost
Jonathan Druart [Thu, 5 Oct 2017 17:35:24 +0000 (14:35 -0300)]
Bug 9573: Lost items report - add KohaTable to itemlost

Before this patch set, we used KohaTable to display a table with the
column visibility plugin, and an usual dataTable initialisation for the
filters.
For the lost items report table we will need both.
To do so we need to reorganize the code a bit

We cannot pass a selector but the id of the node which represents the
table. Indeed it is how works currently the filters (we may want to
improve that later)

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Lost items report - Move filters code to a separate js file
Jonathan Druart [Thu, 5 Oct 2017 16:15:43 +0000 (13:15 -0300)]
Bug 9573: Lost items report - Move filters code to a separate js file

For the next patches we will need to reuse what is already done on the
bibliographic record detail page. This patch moves the code to make it
reusable easily and avoid copy and paste.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 9573: Lost items report - Add items.notforloan as a filter
Jonathan Druart [Thu, 5 Oct 2017 16:02:58 +0000 (13:02 -0300)]
Bug 9573: Lost items report - Add items.notforloan as a filter

This patch adds a new "Not for loan" status filter to the lost items
report.

Test plan:
0/ Apply all patches from this patch set
1/ Use the new "Not for loan" filter to search lost items
2/ The table result must be consistent and a new "Not for loan" column
should be there
3/ Confirm that you are able to hide/show this column with the column
settings tool.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 15794: Add emojiarea to the license area of the about page
Jonathan Druart [Fri, 16 Feb 2018 20:40:37 +0000 (17:40 -0300)]
Bug 15794: Add emojiarea to the license area of the about page

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 15794: Add [% KOHA_VERSION to .css and .js
Jonathan Druart [Fri, 16 Feb 2018 20:32:15 +0000 (17:32 -0300)]
Bug 15794: Add [% KOHA_VERSION to .css and .js

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 15794: Add an emoji picker to tag entry in OPAC
Tomas Cohen Arazi [Mon, 29 Jan 2018 12:54:53 +0000 (09:54 -0300)]
Bug 15794: Add an emoji picker to tag entry in OPAC

This patch introduces an emoji picker int othe OPAC's tag entry form.
It relies on the emoji-picker library [1]

To test:
- Apply the patches
- Restart all services (just in case some caching is taking place):
  $ restart_all
- Log into the OPAC
- Do a search, pick a record
- On the detail page for the record, click on 'Add tags'
=> SUCCESS: An input form is displayed, with an emoji picker on the
    right.
=> SUCCESS: Choosing an emoji populates the input with it
- Set 'TagsModeration' and retry
=> SUCCESS: Proposed tags are displayed correctly on the staff interface
    for tag moderation
- Sign off :-D

Sponsored-by: Hotchkiss School
[1] https://github.com/OneSignal/emoji-picker

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: DBRev 17.12.00.016
Jonathan Druart [Fri, 16 Feb 2018 21:10:23 +0000 (18:10 -0300)]
Bug 18336: DBRev 17.12.00.016

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: DBIC Schema changes
Jonathan Druart [Fri, 16 Feb 2018 20:56:05 +0000 (17:56 -0300)]
Bug 18336: DBIC Schema changes

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Library groups fix
Tomas Cohen Arazi [Fri, 16 Feb 2018 17:08:12 +0000 (14:08 -0300)]
Bug 18336: Library groups fix

Library groups were added after this patchset was submitted.
This patch adjusts kohastructure.sql entry for library_groups.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Shift *TEXT columns size
Tomas Cohen Arazi [Fri, 16 Feb 2018 14:25:31 +0000 (11:25 -0300)]
Bug 18336: Shift *TEXT columns size

Because of the 3-byte vs. 4-byte char size change in utf8mb4, altering a
column's encoding from utf8 into utf8mb4 results in this changes:

TEXT => MEDIUMTEXT
MEDIUMTEXT => LONGTEXT

The column size in the rows (the text itself goes to a separate object
storage) shifts by 1 byte, because all chars are shifted in bytes size
too, so there needs to be room for the byte-count in the column.

This is a debatable change, but the path needs to be included along with
the rest of the patchset for consistency.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Fix missing utf8_bin > utf8mb4_bin translation in kohastructure.sql
Tomas Cohen Arazi [Mon, 29 Jan 2018 13:02:21 +0000 (10:02 -0300)]
Bug 18336: Fix missing utf8_bin > utf8mb4_bin translation in kohastructure.sql

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Add explicit index names to kohastructure.sql
Tomas Cohen Arazi [Tue, 23 Jan 2018 15:26:26 +0000 (12:26 -0300)]
Bug 18336: Add explicit index names to kohastructure.sql

This patch just adds an explicit index name to the search_marc_map
table. The atomicupdate on this patchset is a good example of why we
better have them.

Sponsored-by: Hotchkiss School
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Atomic update
Tomas Cohen Arazi [Tue, 23 Jan 2018 14:46:05 +0000 (11:46 -0300)]
Bug 18336: Atomic update

Sponsored-by: Hotchkiss School
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: DBIC update
Tomas Cohen Arazi [Mon, 22 Jan 2018 15:35:49 +0000 (12:35 -0300)]
Bug 18336: DBIC update

Sponsored-by: Hotchkiss School
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Convert schema from utf8 to utf8mb4
Tomas Cohen Arazi [Mon, 22 Jan 2018 15:32:36 +0000 (12:32 -0300)]
Bug 18336: Convert schema from utf8 to utf8mb4

This patch adapts the DB structure so it uses utf8mb4 encoding and
utf8mb4_generic_ci collation.

Indexes for columns of type VARCHAR with prefix lenght higher than 191
are shortened because of the smaller max index lenght for utf8mb4

Note: please beware that testing this patchset risks your data and the
patchset includes reinitializing the DB.

To test:
- Be on the master branch
- Have a clean DB:
  $ reset_all
  (y)
- Apply the first patch (Unit tests)
- Run:
  $ kshell
 k$ prove t/db_dependent/www/search_utf8.t \
          t/db_dependent/www/auth_values_input_www.t
=> FAIL: Tests fail because Koha doesn't support supplemental (UTF-8)
         chars.
- Apply the rest of this patchset
- Upgrade the schema:
  $ kshell
 k$ perl installer/data/mysql/updatedatabase.pl
- Run the tests:
 k$ prove t/db_dependent/www/search_utf8.t \
          t/db_dependent/www/auth_values_input_www.t
=> SUCCESS: Tests pass!
- Now start from a clean DB
- Run:
  $ reset_all
  (y)
- Run the tests:
 k$ prove t/db_dependent/www/search_utf8.t \
          t/db_dependent/www/auth_values_input_www.t
=> SUCCESS: Tests pass!

Verify you can use emojis all over the place (MARC records, AV
        descriptions, etc).

Sponsored-by: Hotchkiss School
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: SET NAMES utf8mb4 in Koha::Database
Tomas Cohen Arazi [Mon, 22 Jan 2018 15:32:21 +0000 (12:32 -0300)]
Bug 18336: SET NAMES utf8mb4 in Koha::Database

Sponsored-by: Hotchkiss School
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18336: Full stack tests for supplemental UTF-8 chars
Tomas Cohen Arazi [Mon, 22 Jan 2018 16:16:26 +0000 (13:16 -0300)]
Bug 18336: Full stack tests for supplemental UTF-8 chars

This patch introduces tests for Koha's support for 4-byte supplemental
UTF-8 chars. encoding/decoding tools handle this gracefuly. The missing
piece is the MySQL DB backend.

The tests in this patch:
- Adds a couple records for each flavour (MARC21 and UNIMARC) so
  search_utf8.t tests 4-byte chars are handled correctly
- Adds emoji testing in auth_values_input_www.t

To test:
- Apply this patch
- Run:
  $ kshell
 k$ prove t/db_dependent/www/search_utf8.t \
          t/db_dependent/www/auth_values_input_www.t
=> FAIL: It should fail if the DB hasn't been migrated into using
utf8mb4

Sponsored-by: Hotchkiss School
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20004: Fix POD
Kyle M Hall [Fri, 16 Feb 2018 16:23:14 +0000 (16:23 +0000)]
Bug 20004: Fix POD

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20004: Adapt /v1/cities to new naming guidelines
Tomas Cohen Arazi [Wed, 17 Jan 2018 17:03:28 +0000 (14:03 -0300)]
Bug 20004: Adapt /v1/cities to new naming guidelines

This patch implements the changes required by the cities endpoint RFC
[1].

It uses the objects.search helper, and relies on bug 19686.

To test:
- Apply the patches
- Compare the spec with the RFC (api/v1/swagger/definitions/city.json)
=> SUCCESS: It makes sense
- Run:
  $ kshell
 k$ prove t/db_dependent/api/v1/cities.t
=> Tests pass!
- Sign off :-D

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20004: Unit tests
Tomas Cohen Arazi [Wed, 17 Jan 2018 17:03:52 +0000 (14:03 -0300)]
Bug 20004: Unit tests

This patch adapts the unit tests for the cities endpoint to the
requirements from the RFC. This tests are expected to just fail
without the needed followup.

To test:
- Run:
  $ kshell
 k$ prove t/db_dependent/api/v1/cities.t
=> FAIL: Tests obviously don't pass without the followup patch.

Signed-off-by: Claire Gravely <claire.gravely@bsz-bw.de>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 20229: Explicitly list the SQL modes we support
Jonathan Druart [Fri, 16 Feb 2018 15:23:26 +0000 (12:23 -0300)]
Bug 20229: Explicitly list the SQL modes we support

In our installation procedure we ask the administrator to edit the
MySQL|MariaDB configuration file to specify the SQL modes we support
(see bug 17258 comment 6 and 7 for more information).

We are on the way to catch and fix all these issues and support these
stricter modes (as they highlight problem in our codebase/DB structure)
but in the meanwhile it may be good to remove this step and revert the
changes when we are ready.

TODO:
- Remove that for dev installations (to let developers catch these bugs)
- Edit the wiki page to remove this step

Test plan:
0. Do not apply this patch
1. Edit your MySQL|MariaDB config and add:
sql-mode = "ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
to the [mysqld] section (or edit it)
2. Restart your DBMS
3. Try to make the app explode (watch the logs)
(tips: you should get "'koha_kohadev.me.id' isn't in GROUP BY" when
editing an order)
4. Apply the patch, restart_all, restart your DBMS
5. Try to recreate the failure
=> You should no longer see the error in the logs

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18789: (follow-up) Fix page title when creating a new patron
Jonathan Druart [Fri, 16 Feb 2018 18:03:17 +0000 (15:03 -0300)]
Bug 18789: (follow-up) Fix page title when creating a new patron

This has been caught by selenium test, the category name must be
displayed when we are creating a new patron, and so does not depends on
the "patron" variable

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 18789: (follow-up) Fix perlcritic issue - housebound.pl
Jonathan Druart [Fri, 16 Feb 2018 17:26:46 +0000 (14:26 -0300)]
Bug 18789: (follow-up) Fix perlcritic issue - housebound.pl

"$branch" is declared but not used at line 65, column 1.  Unused
variables clutter code and make it harder to read.  (Severity: 3)

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19686: (follow-up) Add to_api param for completeness
Tomas Cohen Arazi [Wed, 17 Jan 2018 17:33:33 +0000 (14:33 -0300)]
Bug 19686: (follow-up) Add to_api param for completeness

This patch adds (yet) another param to objects.search: a reference
to a to_api function to be applied when processing the search results
for output.

To test:
- Apply this patch
- Run:
  $ kshell
 k$ prove t/db_dependent/Koha/REST/Plugin/Objects.t
=> SUCCESS: Test count raised, and tests pass!
- Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
6 years agoBug 19686: Add objects.search a 'to_model' param
Tomas Cohen Arazi [Thu, 23 Nov 2017 20:10:42 +0000 (17:10 -0300)]
Bug 19686: Add objects.search a 'to_model' param

This patch introduces a new parameter to the objects.search Mojo helper.
The idea behind this, is that if there's any attribute name mapping
between the DB objects and the API exposed ones, we should be able to
pass it to objects.search so the filtering query params are mapped
correctly for building the DBIC query, like this example:

  my $patrons_set = Koha::Patrons->new;
  my @patrons = $c->objects->search( $patrons_set,
                                     \&to_model
                                    )->as_list;
  # and probably
  @patrons = map {to_api($_)} @patrons;

The to_model function needs to avoid autovivification, to prevent
messing with the query parameters (undef params).

To test:
- Apply this patches
- Run:
  $ kshell
 k$ prove t/db_dependent/Koha/REST/Plugin/Objects.t
=> SUCCESS: Tests pass! Params get mapped!
- Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Bourgault <david.bourgault@inlibro.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>