Commit graph

37435 commits

Author SHA1 Message Date
Andrew Isherwood
00d375b265
Bug 23112: (follow-up) Fix test as per feedback
As per comment #48

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:59:42 +00:00
Andrew Isherwood
39924b6769
Bug 23112: (follow-up) Address QA feedback
As per comment #46

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:59:38 +00:00
Andrew Isherwood
3896eaa2bb
Bug 23112: (follow-up) Call C4::Koha::GetAuthorisedValues
In response to the problem Magnus was experiencing in comment #28 & #29
we now call GetAuthorisedValues by it's full path

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:59:26 +00:00
Andrew Isherwood
934790769f
Bug 23112: Add unit tests
This patch adds unit test for the new Koha::Illrequest::check_out method

Sponsored-by: Loughborough University
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:59:21 +00:00
Andrew Isherwood
ae885b99f0
Bug 23112: Update request status on return
This patch updates a request's status to RET upon return

Sponsored-by: Loughborough University
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:59:15 +00:00
Andrew Isherwood
ccbfb6338e
Bug 23112: Add permission checks
We only want the ILL circulation functionality to be available if the
appropriate syspref and perm are available, this patch adds those
checks.

Sponsored-by: Loughborough University
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:59:07 +00:00
Andrew Isherwood
47895a1a23
Bug 23112: Add circulation to ILL requests
This patch adds the ability to circulate ILL requests. Once a request has a suitable status, a "Check out" button is displayed on the "Manage request" toolbar. Clicking this will enable the user to check out the item either to the user who made the request or an in-house statistical  user. A due date can be specified, but if not circ rules are used.

Prior to the check out, an item is created which is attached to the biblio record that was created when the request was added

This development has been carried out according to the originally stated requirements of the customer that sponsored it, detailed here: https://wiki.koha-community.org/wiki/ILL_Circulation_RFC

Test plan:

1. Ensure the FreeForm ILL backend is available
2. Enable the "CirculateILL" syspref
3. Ensure you have a statistical patron category defined (patron category type "Statistical")
4. Ensure you have at least one patron in your statistical patron category
5. Create a new FreeForm request (make a note of the library you select when creating it)
6. Mark the new request as confirmed by clicking the "Confirm request" button on the "Manage ILL request" page
7. TEST: Observe that a "Check out" button is now displayed in the request toolbar
8. Click the "Check out" button in the "Manage ILL request" page
9. In the "Issue requested item to..." screen:
  a. Do not select a statistical patron at this time
  b. You can at this point choose an item type, this will determine the type of the item that will be created for this request
  c. TEST: Observe that the default selected "Library" matches that that was defined when creating the request
  d. Do not select a due date at this time
10. Click "Submit"
11. TEST: Observe that the "Item checked out" screen displays, issued to the requesting patron with a due date corresponding to appropriate circ rules
12. Click "Return to request"
13. TEST: Observe that the request's status is now "Checked out"
14. Click the "Bibliographic record ID" link
15. TEST: Observe that the bibliographic record now has one item attached to it which is checked out
16. TEST: Observe that the item barcode is "ILL-" + the ILL request ID
17. Return to step 5., however, this time select a statistical patron and test that the item use is recorded and the item is not issued
18. Return to step 5., however, this time manually select a due date and test that the item's due date is set correctly on check out
19. Check in the item
20. TEST: Observe that the request's status is updated to "Returned to library"
21. Now implement a restriction on the patron (perhaps a fine) which would prevent them from checking out an item
22. Return to step 5. follow the instructions to step 10.
23. TEST: Observe that a banner is displayed at the top of the screen informing you that there was a problem checking the item out, containing a link to the patron's account page
24. Resolve the problem with the patron's account
25. Return to step 8.
26. TEST: Observe that the item is now successfully checked out
27. Disable the "CirculateILL" syspref
28. Return to step 5. at step 7. Observe that the "Check out" button is NOT displayed

Sponsored-by: Loughborough University
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:58:58 +00:00
Andrew Isherwood
04b473261a
Bug 23112: Add CirculateILL syspref
Sponsored-by: Loughborough University
Signed-off-by: Chris Walton <C.J.Walton@lboro.ac.uk>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-10 10:58:44 +00:00
7b25bb7644
Bug 24583: adjust xt/sample_notices.t
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 15:19:01 +00:00
4c7f72e4ed
Bug 24594: Fix license statements
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 15:17:25 +00:00
61a2c4db6a
Bug 24545: Cannot return outside of sub
We must die instead

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 15:04:57 +00:00
Bernardo Gonzalez Kriegel
83da3af9da
Bug 24594: Rewrite marc21_framework_DEFAULT to YAML
YAML version of marc21 mandatory marc21_framework_DEFAULT.

To test:
1) Do a clean install with mandatory data,
   dump table marc_tag_structure and
   marc_subfield_structure, reserve.

2) Apply this patch and it's dependencies

3) Do a clean install, dump again and compare
   No major differences expected

4) Try translation
  a) Go to misc/translator
  b) create files for a new language
     ./translate create xx-YY
  c) Check new file po/xx-YY-instaler-MARC21.po
     Verify strings from this file.
  d) Install new language
     ./translate install xx-YY
  e) Try clean install with new files

NOTE: This patch fails with qa tools!
Reason is that qa tools use YAML.pm module to
check files, but Installer.pm or LangInstaller.pm
are using YAML::Syck, using that module gives
no error, check for example:

perl -e 'use YAML::Syck qw( LoadFile ); $y = LoadFile("marc21_framework_DEFAULT.yml");'
No error!

perl -e 'use YAML qw( LoadFile ); $y = LoadFile("marc21_framework_DEFAULT.yml");'
Error!

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 13:54:45 +00:00
Bernardo Gonzalez Kriegel
5ead9529da
Bug 24594: Rewrite authorities_normal_marc21 to YAML
YAML version of marc21 mandatory authorities_normal_marc21.

To test:
1) Do a clean install with mandatory data,
   dump table auth_types, auth_tag_structure and
   auth_subfield_structure, reserve.

2) Apply this patch and it's dependencies

3) Do a clean install, dump again and compare
   No major differences expected

4) Try translation
  a) Go to misc/translator
  b) create files for a new language
     ./translate create xx-YY
  c) Check new file po/xx-YY-instaler-MARC21.po
     Verify strings from this file.
  d) Install new language
     ./translate install xx-YY
  e) Try clean install with new files

NOTE: This patch fails with qa tools!
Reason is that qa tools use YAML.pm module to
check files, but Installer.pm or LangInstaller.pm
are using YAML::Syck, using that module gives
no error, check for example:

perl -e 'use YAML::Syck qw( LoadFile ); $y = LoadFile("authorities_normal_marc21.yml");'
No error!

perl -e 'use YAML qw( LoadFile ); $y = LoadFile("authorities_normal_marc21.yml");'
Error!

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 13:54:45 +00:00
Bernardo Gonzalez Kriegel
d9b83c12c6
Bug 24593: (follow-up) fix sql statements
Original inserted values depends on the order of insertion.
This patch rewrites the sql statements to make them order
independent

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 13:54:40 +00:00
Bernardo Gonzalez Kriegel
0f020eabbd
Bug 24593: Rewrite marc21_simple_bib_frameworks to YAML
YAML version of marc21_simple_bib_frameworks

To test:
1) Same test plan of first patch

NOTE: Same problem as first patch with qa tools
Signed-off-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>
2020-03-09 13:54:39 +00:00
Bernardo Gonzalez Kriegel
ff39a08302
Bug 24593: Rewrite marc21_sample_fastadd_framework to YAML
YAML version of marc21_sample_fastadd_framework

To test:
1) Same test plan of first patch

NOTE: Same problem as first patch with qa tools
Signed-off-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>
2020-03-09 13:54:39 +00:00
Bernardo Gonzalez Kriegel
2c8f894b96
Bug 24593: Rewrite marc21_default_matching_rules to YAML
YAML version of marc21 optional marc21_default_matching_rules.

To test:
1) Do a clean install with optional data,
   dump table marc_matchers, reserve.

2) Apply this patch and it's dependencies

3) Do a clean install, dump again and compare
   No major differences expected

4) Try translation
  a) Go to misc/translator
  b) create files for a new language
     ./translate create xx-YY
  c) Check new file po/xx-YY-instaler-MARC21.po
     Verify strings from this file.
  d) Install new language
     ./translate install xx-YY
  e) Try clean install with new files

NOTE: This patch fails with qa tools!
Reason is that qa tools use YAML.pm module to
check files, but Installer.pm or LangInstaller.pm
are using YAML::Syck, using that module gives
no error, check for example:

perl -e 'use YAML::Syck qw( LoadFile ); $y = LoadFile("marc21_default_matching_rules.yml");'
No error!

perl -e 'use YAML qw( LoadFile ); $y = LoadFile("marc21_default_matching_rules.yml");'
Error!

Signed-off-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>
2020-03-09 13:54:39 +00:00
Bernardo Gonzalez Kriegel
95884c204c
Bug 24584: Rewrite optional/sample_z3950_servers to YAML
YAML version of optional sample_z3950_servers

To test:
1) Same test plan of first patch, only check table
   z3950servers

Signed-off-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>
2020-03-09 13:54:39 +00:00
Bernardo Gonzalez Kriegel
29411e38ee
Bug 24584: Rewrite optional/sample_quotes to YAML
YAML version of optional sample_quotes

To test:
1) Same test plan of first patch, only check table
   quotes

Signed-off-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>
2020-03-09 13:54:39 +00:00
Bernardo Gonzalez Kriegel
08b65033d0
Bug 24584: Rewrite optional/sample_patrons to YAML
YAML version of optional sample_patrons

To test:
1) Same test plan of first patch, only check table
   borrowers

Signed-off-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>
2020-03-09 13:54:39 +00:00
Bernardo Gonzalez Kriegel
e3ed060fb0
Bug 24584: Rewrite optional/sample_news to YAML
YAML version of optional sample_news

To test:
1) Same test plan of first patch, only check table
   opac_news

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
89ced6c9a0
Bug 24584: Rewrite optional/sample_libraries_holidays to YAML
YAML version of optional sample_libraries_holidays

To test:
1) Same test plan of first patch, only check table
   repeatable_holidays

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
c5ac1d23f2
Bug 24584: Rewrite optional/sample_libraries to YAML
YAML version of optional sample_libraries

To test:
1) Same test plan of first patch, only check table
   branches

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
e49f3ce3ab
Bug 24584: Rewrite optional/sample_itemtypes to YAML
YAML version of optional sample_itemtypes

To test:
1) Same test plan of first patch, only check table
   itemtypes

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
77964c9e12
Bug 24584: Rewrite optional/sample_creator_data to YAML
YAML version of optional sample_creator_data

To test:
1) Same test plan of first patch, only check tables
   creator_layouts, creator_templates and printers_profile

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
6f90d1f3bd
Bug 24584: Rewrite optional/patron_categories to YAML
YAML version of optional patron_categories

To test:
1) Same test plan of first patch, only check table
   categories

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
a57754825f
Bug 24584: Rewrite optional/patron_atributes to YAML
YAML version of optional patron_atributes

To test:
1) Same test plan of first patch, only check table
   borrower_attribute_types

Signed-off-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>
2020-03-09 13:54:38 +00:00
Bernardo Gonzalez Kriegel
3af76ad5c4
Bug 24584: Rewrite optional/parameters to YAML
YAML version of optional parameters

To test:
1) Same test plan of first patch, only check table
   currency

Signed-off-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>
2020-03-09 13:54:37 +00:00
Bernardo Gonzalez Kriegel
1c1693ddcc
Bug 24584: Rewrite optional/marc21_relatorterms to YAML
YAML version of optional marc21_relatorterms

To test:
1) Same test plan of first patch, only check table
   authorised_values

Signed-off-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>
2020-03-09 13:54:37 +00:00
Bernardo Gonzalez Kriegel
e848d36412
Bug 24584: Rewrite optional/marc21_holdings_coded_values to YAML
YAML version of optional marc21_holdings_coded_values

To test:
1) Same test plan of first patch, only check table
   authorised_values

Signed-off-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>
2020-03-09 13:54:37 +00:00
Bernardo Gonzalez Kriegel
77b0151c9d
Bug 24584: Rewrite optional/csv_profiles to YAML
YAML version of optional csv_profiles.

To test:
1) Do a clean install with optional data,
   dump table export_format, reserve.

2) Apply this patch and it's dependencies

3) Do a clean install, dump again and compare
   No major differences expected

4) Try translation
  a) Go to misc/translator
  b) create files for a new language
     ./translate create xx-YY
  c) Check new file po/xx-YY-instaler.po
     Verify strings from this file.
  d) Install new language
     ./translate install xx-YY
  e) Try clean install with new files

Signed-off-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>
2020-03-09 13:54:37 +00:00
Bernardo Gonzalez Kriegel
8ad61cb07a
Bug 24583: (follow-up) restore null values to labels
This patch adds null values to selected label2/3 in
sample numberpatterns

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 13:54:32 +00:00
Bernardo Gonzalez Kriegel
e2fceec873
Bug 24583: Rewrite mandatory/sample_numberpatterns to YAML
YAML version of mandatory sample_numberpatterns

To test:
1) Same test plan of first patch, only check table
   subscription_numberpatterns

Signed-off-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>
2020-03-09 13:54:31 +00:00
Bernardo Gonzalez Kriegel
01efbbf8c6
Bug 24583: Rewrite mandatory/sample_notices to YAML
YAML version of mandatory sample_notices

To test:
1) Same test plan of first patch, only check table
   letter

Signed-off-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>
2020-03-09 13:54:31 +00:00
Bernardo Gonzalez Kriegel
23b9c058ce
Bug 24583: Rewrite mandatory/sample_frequencies to YAML
YAML version of mandatory sample_frequencies

To test:
1) Same test plan of first patch, only check table
   subscription_frequencies

Signed-off-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>
2020-03-09 13:54:31 +00:00
Bernardo Gonzalez Kriegel
dd287a7b7f
Bug 24583: Rewrite mandatory/class_sources to YAML
YAML version of mandatory class_sources

To test:
1) Same test plan of first patch, only check tables
   class_sort_rules, class_split_rules and class_sources

Signed-off-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>
2020-03-09 13:54:31 +00:00
Bernardo Gonzalez Kriegel
c56e8b58d9
Bug 24583: Rewrite mandatory/auth_values to YAML
YAML version of mandatory auth_values.

To test:
1) Do a clean install, dump auth_values, reserve.

2) Apply this patch and it's dependencies

3) Do a clean install, dump again and compare
   No differences expected

4) Try translation
  a) Go to misc/translator
  b) create files for a new language
     ./translate create xx-YY
  c) Check new file po/xx-YY-instaler.po
     Verify strings from this file.
  d) Install new language
     ./translate install xx-YY
  e) Try clean install with new files

Signed-off-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>
2020-03-09 13:54:31 +00:00
Bernardo Gonzalez Kriegel
31774a2ee8
Bug 24262: (follow-up) admit null values on labels
This patch adds handling of null values on translatable
labels.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 13:54:24 +00:00
Bernardo Gonzalez Kriegel
33c1ddf86b
Bug 24262: Translate installer data in YAML format
This patch adds the ability to:
1) Create new translation files from yaml installer files
2) Create installer directory for a given language

It will not create a installer directory if it already exists.

New (possible) translation files:
  xx-YY-installer.po
  xx-YY-installer-MARC21.po
  xx-YY-installer-UNIMARC.po

Needs Bug 13897 (for yaml files)

NOTE: updated version adding ability to process multiline
fields, discard small ( < 2) strings, and discard strings
with pure html, TT or punctuation.

To test:
1) Apply patches from Bug 13897
2) Apply this patch
3) Go to misc/translation
4) Create translation files for a NEW language
   $ ./translate create xx-YY

   check new file 'xx-YY-installer.po'

5) Copy ../../installer/data/mysql/en/optional/auth_val.yml
   into ../../installer/data/mysql/en/marcflavour/marc21/mandatory/
   and ../../installer/data/mysql/en/marcflavour/unimarc/mandatory/

   remove po/xx-YY*, then repeat creation

   check new files 'xx-YY-installer.po', 'xx-YY-installer-MARC21.po'
   and 'xx-YY-installer-UNIMARC.po'

   remove all new files

6) Create for xx-YY again and try update
   $ ./translate create xx-YY
   edit ../../installer/data/mysql/en/optional/auth_val.yml
   and change one char in one of the translatable values,
   also edit 'xx-YY-installer.po', translate the same
   string (in msgstr).

   Do an update
   $ ./translate update xx-YY

   check in 'xx-YY-installer.po' a fuzzy value for the
   translated value and the preservation of the translation
   Fix the translation, or add a new one.

7) Create an install dir for xx-YY
   ./translate install xx-YY

    Check new dir '../../installer/data/mysql/xx-YY/'
    Check files on it
    $ tree ../../installer/data/mysql/xx-YY/
    and compare with ../../installer/data/mysql/en/

    All installation files must be present

8) Try a new Koha install using this language in the
   usual way.
   Check in authorised_values table for the translated string.

9) Try create an install dir for an existing language
   (eg. es-ES, de-DE or fr-FR ), eg.
   ./translate install de-DE

   Install dir is detected and not changed, a note is printed.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 13:50:41 +00:00
e925eb7a14
Bug 13897: Surround columns with backticks
We have some column's names that need to be surrounded by ` as they are
protected keywords ('rows' for instance)

Signed-off-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>
2020-03-09 13:50:36 +00:00
Bernardo Gonzalez Kriegel
131183b0bf
Bug 13897: Process description, multiline values and SQL statements in YAML files
This patch adds 3 features:
1) Display description of YAML files at install time
   for frameworks, and fixes it's encoding.
2) Enable use of multiline values, field required
3) Process SQL statements declared in YAML files

With this features we can process files with the
following generic YAML strucure:

  ---
  description:
    - "File description"

  tables:
    - table_name:
        translatable: [ title, content ]
        multiline: [ content ]
        rows:
          - title: "Example title"
            content:
              - "Content:"
              - ""
              - "This is the content."
            id: 1
            value: ~

  sql_statements:
    - "UPDATE table_name SET value ='empty' WHERE value IS NULL"
  ...

* file description is now inside the YAML, can have multiple
  lines.
  This attribute is expected in all YAML files.
* translatable attribute in table declare fields that can be
  translated
* multiline attribute in table declare fields that can have
  multiple lines of content, they are joined using '\r\n'
  before insert into database.
  This is useful to express fields like 'news' content, and
  to simplify it's translation.
  '\r\n' is used for correct display in Windows clients.
* sql_statements allows to add multiple SQL sentences, not
  insertions normally, that are executed in order.

This features are not needed for the example file of this patch,
but will be used in new bugs.

To test:
1) Use the same test plan of first patch.

Signed-off-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>
2020-03-09 13:50:28 +00:00
fc861f1ed9
Bug 13897: Catch the error and warn it
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-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>
2020-03-09 13:50:19 +00:00
Bernardo Gonzalez Kriegel
3edee6db6f
Bug 13897: Use YAML files for installer data
This patch modifies C4/Installer.pm to add support
for loading YAML files into database.

As an example of the functionality, optional
auth_val.sql file is replaced by auth_val.yml

The rationale behind this feature is to enable the
translation of the data that is loaded into the
database. That will be addressed in another bug.

But taking into account that goal, translatable
values are declared in the YAML files, to ease
identification by translate script.

Also file description is moved into the yaml
file.

To test:
0) Do a clean install with all optional data,
   then dump authorised_values table, reserve.
1) Apply the patch
2) Do a clean install in English (marc21/unimarc)
3) On optional data check for description of auth_val
   "Some basic default authorised values for ..."
4) Select all optional data
5) Finish installation
6) Dump again authorised_values table and compare with that
   of point '0'.
   No differences should be found.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-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>
2020-03-09 13:49:57 +00:00
0706922221
Bug 24817: Replace sleep calls with date setting in test data
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 10:38:35 +00:00
79f2230c5d
Bug 24817: Add sleep between db create actions
We need to allow some time to pass between calls that add cash register
lines to accountlines or cash_register_actions. We use database level
triggers to maintain the timestamp fields, so cannot use Time::Fake, and
the methods we are testing assume that, as human interactions, there
will be at least a second between the last 'sale' on a cash register and
the 'cashup' of that same cash register.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-09 10:38:28 +00:00
b952563a3b
Bug 24066: Add missing POD for has_permission
To test:
1) do perldoc Koha/Patron.pm
   search has_permission

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Fixed (removed) space before 'my $permission' to make it similar to
other entries.
No errors

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-06 15:03:56 +00:00
f1c93e88d4
Bug 24219: Preserve sort order when returning to result list
There is a mismatch between sort_cgi, sort and sort_by variables.

 * sort_cgi
I did not find relevant occurrences of sort_cgi in the git log of both
search.pl and results.tt. So it seems that it never worked correctly.
 * sort
It is the JS variable use in browser.js
 * sort_by is the search.pl parameter to set the sort_by option

Test plan:
1. Perform a search in the staff client
2. Change the sort order to something different (try Author A-Z)
3. Click on a result to view the record
4. Click on "Results" button on left side to return to result list
=> Without this patch the result list is sorted by relevancy
=> With this patch applied the Author A-Z is kept

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-06 15:01:50 +00:00
9c2a74a638
Bug 23384: Fix use statement order for ArticleRequest::Status
Koha::ArticleRequest is used by Koha::ArticleRequests so
Koha::ArticleRequest::Status should not be needed in
Koha::ArticleRequest.
Also Koha::ArticleRequest::Status must be loaded before
Koha::ArticleRequest

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-06 15:00:25 +00:00
deb77ffe3d
Bug 24760: (follow-up) Add a neighboring test messsage
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-06 14:58:47 +00:00
Julian Maurice
a7de3ebf8b
Bug 24760: Use C4::BackgroundJob->fetch in tests
Starting with YAML 1.30 and YAML::Syck 1.32, these modules don't bless
loaded objects by default. This is not a problem as
C4::BackgroundJob->fetch bless them anyway.

So, instead of testing what's in the session, test the result of
C4::BackgroundJob->fetch, which is what's used everywhere else

Test plan:
1. Install latest version of YAML::Syck (or YAML if YAML::Syck is not
installed)
2. prove t/db_dependent/BackgroundJob.t => should FAIL
3. Apply patch
4. prove t/db_dependent/BackgroundJob.t => should PASS
5. Verify that background jobs are still working (for instance,
tools/batchMod.pl)

Signed-off-by: Michal Denar <black23@gmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
2020-03-06 14:58:11 +00:00