koha.git
4 years agoBug 5161: Keep patron's attributes on warning/duplicate
Jonathan Druart [Tue, 21 Apr 2020 12:30:19 +0000]
Bug 5161: Keep patron's attributes on warning/duplicate

When a patron is added or modified and a warning appears (duplicate,
inconsistent data, etc.) the form lost the patron's attributes.

Test plan:
Create some attribute types for patrons
Create a new patron, use an userid that already exists and fill the attributes
=> You get a warning and the attributes are kept
Modify the userid and save again
Edit the same patron
Modify the attributes, as well as the userid (to get the duplicate warning)
=> You get a warning and the attributes are kept with the modified
values
Modify the userid and save again
=> The new values are saved
Edit the attributes from the detail page (so not with the full edit form)
Modify them and save
=> The new values are saved

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25233: Staff XSLT material type label "Book" should be "Text"
Lucas Gass [Tue, 21 Apr 2020 21:33:03 +0000]
Bug 25233: Staff XSLT material type label "Book" should be "Text"

This patch makes the staff client XSLT stylesheets consistent with the
ones for the OPAC, it also makes consitent the use of 'Text' when the leader6 = 't'

TO TEST:
1. Have a record with leader06 = 'a' and leader07 = 'c' 'd' or 'm'.
2. Check the staff client results and details page. See that the
   material type label says "Book"
3. Check the OPAC client results and details page. See that the
   materila type label says "Text"
4. Apply patch.
5. See that both staff client and OPAC results/details all now say
   "Text"
6. Set the leader6 = 't' and make sure that is says 'Text' on both the
   staff client and OPAC

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25276: Compiled CSS
Martin Renvoize [Mon, 27 Apr 2020 10:26:22 +0000]
Bug 25276: Compiled CSS

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25276: Correct hover style of list share button in the OPAC
Owen Leonard [Fri, 24 Apr 2020 14:24:07 +0000]
Bug 25276: Correct hover style of list share button in the OPAC

This patch adds missing "btn" classes to the OPAC share button so that
its style is consistent with similar controls.

The patch also makes some general changes to the OPAC CSS to make sure
link color and hover color are applied with enough specificity. This
corrects the hover color of the share button but should not change any
other existing style.

To test you should have the OpacAllowSharingPrivateLists preference
enabled.
 - Rebuild the OPAC CSS
   (https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
 - Log in to the OPAC as a user with one or more private lists.
 - Go to Lists -> Your lists.
 - In the list of lists there should be a "Share" link for each list.
   Hovering your mouse pointer over the link should change the style in
   the same way the "Edit" link does.

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25211: Add missing share icon to OPAC lists page
Owen Leonard [Mon, 20 Apr 2020 11:38:41 +0000]
Bug 25211: Add missing share icon to OPAC lists page

This patch adds a Font Awesome icon to the "Share" links on the list of
lists in the OPAC.

To test, apply the patch and log in to the OPAC as a user who has one
or more private lists.

  - Go to Lists -> Your lists
  - In the table of your lists, each list should have a "Share" link
    with an icon.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24957: OpenLibrarySearch shouldnt display if nothing is returned
Lucas Gass [Tue, 21 Apr 2020 20:11:17 +0000]
Bug 24957: OpenLibrarySearch shouldnt display if nothing is returned

TO TEST:
1. Turn on OpenLibrarySearch
2. Do an OPAC search that returns results that have results with Open Library results and some that do not.
3. Notice results that return nothing simpliy say "Open Library:" with nothing afterwards.
4. Some results return a png from OpenLibrary or "Not found"
5. Apply patch and look at records again.
6. The results that return nothing for OpenLibrary API should now to hidden.

Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25045: DBRev 19.12.00.079
Martin Renvoize [Mon, 27 Apr 2020 10:17:33 +0000]
Bug 25045: DBRev 19.12.00.079

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25045: (follow-up) Add a note to OpacPublic
Tomas Cohen Arazi [Mon, 13 Apr 2020 14:47:30 +0000]
Bug 25045: (follow-up) Add a note to OpacPublic

This patch tweaks the OpacPublic system preference description so users
don't expect, incorrectly, this syspref to disable the public API
anonymous access.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25045: Allow restricting anonymous requests on the public API
Tomas Cohen Arazi [Mon, 13 Apr 2020 14:40:48 +0000]
Bug 25045: Allow restricting anonymous requests on the public API

This patch introduces a check on the authenticate_api_request method for
the RESTPublicAnonymousRequests system preference. If disabled,
anonymous  requests get rejected.

The idea is to replicate the homologous OpacPublic system preference
behaviour.

To test:
1. Apply the Unit tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/auth_authenticate_api_request.t
=> FAIL: Tests fail, 200 is answered instead of 401 on the route.
3. Apply this patch
4. Repeat 2.
=> SUCCESS: Tests pass!
5. Sign off :-D

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25045: Unit tests
Tomas Cohen Arazi [Mon, 13 Apr 2020 14:40:44 +0000]
Bug 25045: Unit tests

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25045: Add the RESTPublicAnonymousRequests syspref
Tomas Cohen Arazi [Mon, 13 Apr 2020 14:36:12 +0000]
Bug 25045: Add the RESTPublicAnonymousRequests syspref

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24909: Add unprivileged route to get a bibliographic record
Tomas Cohen Arazi [Thu, 19 Mar 2020 20:04:31 +0000]
Bug 24909: Add unprivileged route to get a bibliographic record

This patch adds a route to get bibliographic records without privileged
access. This needs to match the OPAC expected behaviour.

Some things were considered on the implementation:
- The ViewPolicy filter that hides/shows things based on the frameworks
  needded to be used, as in the OPAC.
- OpacHiddenItems and OpacHiddenItemsExceptions need to be considered
  for hiding records the same way the OPAC is expected to.
- Avoid using OpacHiddenItemsExceptions, but rely on the patron category
  instead (use Koha::Patron::Category->override_hidden_items abstraction
  is used instead so it should keep working once 22547 is moved
  forward).
- Tests should cover all the use cases:
  * logged in user
  * anonymous user
  * logged in with category that overrides
  * logged in with category that doesn't override

This is all implemented on the tests.

To test:
1. Apply the tests patch
2. Run:
   $ kshell
  k$ prove t/db_dependent/api/v1/biblios.t
=> FAIL: Route not implemented
3. Apply the rest of the patches
4. Repeat 2
=> SUCCESS: Tests pass!
5. Try it with your favourite API tool (Postman?)
6. Sign off :-D

Note: please notice there isn't a default fallback behaviour for when
you don't specify the Accept header, so testing this on a regular
browser will just print the accepted mime types instead of the record
itself.

To test this with a tool (like Postman) you should enable
RESTBasicAuthe and make the tool use Basic authentication with valid
credentials. And you need to specify any of the following strings on the
Accept header:
- application/marcxml+xml
- application/marc-in-json
- application/marc
- text/plain

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>

4 years agoBug 24909: Route spec
Tomas Cohen Arazi [Thu, 19 Mar 2020 20:03:53 +0000]
Bug 24909: Route spec

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
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>

4 years agoBug 24909: Unit tests
Tomas Cohen Arazi [Thu, 19 Mar 2020 20:03:23 +0000]
Bug 24909: Unit tests

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
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>

4 years agoBug 21927: Acq - Add blank values in pull downs of mandatory item subfields
Katrin Fischer [Sun, 12 Apr 2020 03:19:03 +0000]
Bug 21927: Acq - Add blank values in pull downs of mandatory item subfields

This is the same fix as on bug 14662, which fixed the behaviour in
cataloguing, but for the item form in acquisitions.

The code assumes that if a subfield is marked as mandatory, there
should be no empty entry in the pull downs.

This assumption is not correct, as it leads to the first entry of the
pull down being preselected if there is no default set. As the field
can never be 'unset', there will never be a 'required' warning.
Furthermore, it might be counterproductive to use mandatory fields,
as it might be easily forgotten to change the preselected value and
those mistakes will be hard to find.

Correct behaviour would be to preselect the empty value when there is
no default. This means on saving the item an error message is triggered
and the cataloger is forced to set the value.

To test:
- This is best tested with an ACQ framework, but default can be used
  when no ACQ framework was created.
- In your MARC bibliographic framework:
  - In 952 make itemtype, classification source and some other pull downs
    like location or collection mandatory and set them to visibel if needed
- Create a new basket with 'items created while ordering'
- Add a new order, an existing record with 942$c set will work best
- Add items for your order line
  - Verify that the first value of each pull down is preselected,
    there is no way to trigger the 'required' error
- Apply patch
  - Add a new order line
    - Verify that classification source is preselected according to the
      DefaultClassificationSource system preference (try unsetting it later)
    - Verify all mandatory fields can be set to empty
    - Verify that you can't save before correctly setting them
  - Change your frameworks and set a default for itemtype (Ex: BK) and
    another mandatory and non-mandatory field of your choice
  - Add a new order line and item and verify the defaults are selected

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>

4 years agoBug 25274: Don't initialize DataTable if table isn't present
Owen Leonard [Fri, 24 Apr 2020 11:49:21 +0000]
Bug 25274: Don't initialize DataTable if table isn't present

This patch modifies the OPAC basket JavaScript so that a check is added
for the existence of the "itemst" table. This avoids an error if the
"More details" view is selected and hte "itemst" table isn't present.

To reproduce the error, add some items to the OPAC cart and open the
cart window. Open the JavaScript console in your browser and click the
"More details" link. You'll see an error.

To test, apply the patch and perform the same test as above. The error
should not be present. Test that table sorting in the "brief" view words
correctly.

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24897: Remove es-ES installer data
Bernardo Gonzalez Kriegel [Thu, 19 Mar 2020 10:12:51 +0000]
Bug 24897: Remove es-ES installer data

With installer data in YAML format and it's translations,
there are no need for localized installer files.

This patch removes es-ES installer files.

To test on top of Bug 24871
1) Apply the patch
2) Translate to spanish
   cd misc/translator
   ./translate update es-ES
   -/translate install es-ES
3) Do a clean install using es-ES,
   check no problems during install
4) Verify MARC21 frameworks, they must
   be translated

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24871: Add new *-installer*.po translation files
Bernardo Gonzalez Kriegel [Sun, 15 Mar 2020 21:15:32 +0000]
Bug 24871: Add new *-installer*.po translation files

This patch simply adds new po files for each supported
language.

The are not created on update, so the need to add this files.

To test:
1) Update your preferred language
2) Check missing *installer*po files
3) Create new translation files:
   cd /misc/translation
   ./translate create xx-YY

   check *installer*po files
4) Apply patch
5) Repeat 1, verify installer files are updated
   see last modification time

Pre-filled translations for some languages
(https://translate.koha-community.org/projects/marc21/)

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25257: Preserve prolog on translated XML files
Bernardo Gonzalez Kriegel [Thu, 5 Dec 2019 00:51:16 +0000]
Bug 25257: Preserve prolog on translated XML files

This patch fix the missing xml prolog in translated
files, XML or TT.

Is fixed teaching C4::TTParse not to ignore <?..?> constructs,
then teaching xgettext.pl to ignore those strings. Net result is
that they are copied in the translated file.

To test:
1) Update & install your preferred language,
(cd misc/translator/; perl translate update xx-YY; perl translate install xx-YY )

2) Compare the first lines (head -2) of:
koha-tmpl/opac-tmpl/bootstrap/en/xslt/compact.xsl
koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-opensearch.tt
koha-tmpl/intranet-tmpl/prog/en/xslt/plainMARC.xsl
and
koha-tmpl/opac-tmpl/bootstrap/xx-YY/xslt/compact.xsl
koha-tmpl/opac-tmpl/bootstrap/xx-YY/modules/opac-opensearch.tt
koha-tmpl/intranet-tmpl/prog/xx-YY/xslt/plainMARC.xsl

Check the missing prolog

3) Install this patch, repeat 1 and 2, now the prolog is present
on translated files.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25118: Return claims has some translation issues
Owen Leonard [Tue, 14 Apr 2020 11:52:17 +0000]
Bug 25118: Return claims has some translation issues

This patch adds the right function calls to checkouts.js so that English
strings can be picked up by the translator. The resolution message has
been reformatted so that it can be clear without including "on" and
"by" in the middle of the string.

To test you should have a patron with at least one return claim. Open
the checkout page for that patron and open the "Claims" tab. Test the
process of editing, deleting, and resolving claims.

TESTING TRANSLATABILITY

- Update a translation:

> cd misc/translator
> perl translate update fr-FR

- Open the corresponding .po file for the staff
  client: misc/translator/po/fr-FR-messages-js.po
- Locate strings pulled from checkouts.js for translation, e.g.:

  #: koha-tmpl/intranet-tmpl/prog/js/checkouts.js:920
  msgid "Double click to edit"
  msgstr ""

- Edit the "msgstr" string however you want (it's just for testing).
- Install the updated translation:

> perl translate install fr-FR

Switch to the udpated translation and test the functionality under the
"Claims" tab again to confirm that your translated strings appear.

Note that "untranslatable string" failures reported by the QA script are
false positives.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25224: Show large print format in search results XSLT
Andrew Fuerste-Henry [Tue, 21 Apr 2020 17:41:29 +0000]
Bug 25224: Show large print format in search results XSLT

To test:
1: find a bib with 008 type Book
(Leader position 6 = 'a' and leader position 7 = 'm' -- use bib number 1 in master data)
2: set 008 position 23 to 'd' for large print
3: check your book record in opac and intranet search results, note that your change is not reflected in the "format" note in line with material type
4: find a bib with 008 type Continuing Resource
(Leader position 6 = 'a' and leader position 7 = 's' -- use bib number 44 in master data)
5: set 008 position 23 to 'd' for large print
6: check your continuing resource record in opac and intranet search results, note that your change is not reflected in the "format" note in line with material type
7: apply patch, restart_all
8: reload search results from steps 3 and 6, confirm they now say "format: large print"

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25248: (bug 23463 follow-up) Item is returned if deletion successful, not 1
Nick Clemens [Wed, 22 Apr 2020 13:30:06 +0000]
Bug 25248: (bug 23463 follow-up) Item is returned if deletion successful, not 1

To test:
1 - Have a record with some items
2 - Click 'Delete all' under 'Edit'
3 - Confirm deletion
4 - Note you are redirected to additem.pl
5 - Add an item
6 - Apply patch
7 - Delete all items again
8 - Note you are redirected to detail.pl

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25142: Fix wrong grep logical test
Jonathan Druart [Tue, 14 Apr 2020 11:22:44 +0000]
Bug 25142: Fix wrong grep logical test

To test and understand what's going on, you can try that bit of code:
my @a = qw( a b c a);
my @b = qw( b c d );
my @c;
@c = grep { 'a' eq $_ } @a ? 'ok' : ();
say @c;
@c = ( grep { 'a' eq $_ } @a ) ? 'ok' : ();
say @c;
@c = grep { 'a' eq $_ } @a ? ('ok') : (undef);
say @c;

The problem here:
Have patrons in 3 branches CPL, MPL, SPL
Have a non superlibrarian with edit_borrowers permission but
without view_borrower_infos_from_any_libraries, from CPL
Create a library group with CPL, MPL
Use that non superlibrarian to search for patrons
You can search for patrons fro CPL and MPL
BUT, edit the value for CPL, use SPL (edit the DOM)
Search and... oops

Apply this patch, try again

Also use a superlibrarian patron (and/or with view_borrower_infos_from_any_libraries)
and confirm that they can see all patrons

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25009: Avoid leakages in opac-showmarc.pl
Tomas Cohen Arazi [Fri, 27 Mar 2020 21:16:58 +0000]
Bug 25009: Avoid leakages in opac-showmarc.pl

This patch cleans opac-showmarc.pl so it doesn't allow retrieving
records from import batches without requiring any permissions in the
OPAC.

it does so by just removing the code portion that does that.

It also cleans the record fetch operation and how the record processor
is initialized to it actually works :-D

To test:
1. Perform a successful Z39.50 search in cataloguing (this fetches 20
   records usually)
2. Query your DB for a valid import_record_id:
  $ koha-mysql kohadev
  > SELECT * FROM import_records LIMIT 1;
3. Notice some of the MARCXML details (title, author, etc), and the
   import_record_id
4. Point your browser to the opac-showmarc.pl URL like this:
   http://kohadev.mydnsname.org:8080/cgi-bin/koha/opac-showmarc.pl?importid=20
=> FAIL: You get the record! (Bonus: no field/subfield takes place)
5. Hide some obvious subfield on the framework for a known (to you)
   biblionumber
6. Point your browser to:
   http://kohadev.mydnsname.org:8080/cgi-bin/koha/opac-showmarc.pl?id=<biblionumber_here>
=> FAIL: No filtering takes place
7. Apply this patch
8. Repeat 4
=> SUCCESS: You get an error because you did a bad request (no id param)
9. Repeat 6
=> SUCCESS: Subfield filtering actually works!
10. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 16922: Add RewriteRule to apache-shared-intranet for dev package installs
Marcel de Rooy [Thu, 14 Jul 2016 11:51:21 +0000]
Bug 16922: Add RewriteRule to apache-shared-intranet for dev package installs

As a simple alternative to the solution in bug 9949 or just as an
additional measure, this patch adds a rewrite rule for intranet
in order to intercept potential misuse of perl scripts that could be
reached on a dev package install via the cgi-bin/koha scriptalias.

It simply rewrites them to the nonexistent "notfound", resulting in a
regular 404 error.

The rewrite rule does not harm regular installs and is just a little extra
step in securing a dev install. You should have more security measures in
place to secure your staff client.

QA Note: Although a rewrite rule may not be our first choice, this one
rule is more elegant and easier to maintain than e.g. a whole bunch of
aliases.

Note: This patch should have a regular and a dev install signoff.

Test plan:
[1] Make sure that this rewrite rule is inserted in your actual apache
    config via /etc/koha/apache-shared-intranet.conf. Restart Apache.
[2] For regular package installs:
    Try one of the URLs in step 3.
    Verify that your staff client still operates as usual. Test a few
    URLs inside some modules.
[3] For dev installs:
    Try some URLs like below.
    Expect 404 errors only, not 500s. If you do not see a 404, go back!
    /misc/stage_file.pl
    /t/db_dependent/default_search_class.pl
    /installer/data/mysql/updatedatabase.pl
    /Makefile.PL
[4] Do you see an additional directory to add to the regex? Please report.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25172: Fix Auth_with_ldap.t
Jonathan Druart [Wed, 22 Apr 2020 14:40:08 +0000]
Bug 25172: Fix Auth_with_ldap.t

  #   Failed test 'checkpw_ldap tests'
  #   at t/db_dependent/Auth_with_ldap.t line 324.
  {UNKNOWN}: Configuration not defined at /usr/share/perl5/Log/Log4perl/Config.pm line 579. at /kohadevbox/koha/Koha/Patron.pm line 395

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25172: Add missing filter
Kyle M Hall [Mon, 20 Apr 2020 17:16:11 +0000]
Bug 25172: Add missing filter

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25172: Identify and display possible problems on the about page
Jonathan Druart [Thu, 16 Apr 2020 15:16:59 +0000]
Bug 25172: Identify and display possible problems on the about page

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25172: Adjust tests
Jonathan Druart [Thu, 16 Apr 2020 14:50:50 +0000]
Bug 25172: Adjust tests

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25172: Remove _recheck_logfile
Jonathan Druart [Thu, 16 Apr 2020 14:12:32 +0000]
Bug 25172: Remove _recheck_logfile

I don't understand how that could be useful. We do not want to test if
the logfile is writable every time we log something!

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25172: Make Koha::Logger explode if init went wrong
Jonathan Druart [Thu, 16 Apr 2020 14:11:02 +0000]
Bug 25172: Make Koha::Logger explode if init went wrong

We do not want to fail silently for the logger.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 5614: Organize 'patron' system preferences
Katrin Fischer [Sat, 11 Apr 2020 14:43:41 +0000]
Bug 5614: Organize 'patron' system preferences

Until now, there was only "General" and "Privacy". This patch
breaks the "General" prefs up into multiple sections.

To test:
- Go to Administration > Patrons
- Verify the current state of things
- Apply patch
- Reload patch
- Verify headings make sense and groups make sense as well

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20816: Make SIP tests pass under ES
Nick [Wed, 2 Oct 2019 14:53:42 +0000]
Bug 20816: Make SIP tests pass under ES

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20816: Add ability to define custom templated fields in SIP patron responses
Nick Clemens [Wed, 19 Jun 2019 17:59:14 +0000]
Bug 20816: Add ability to define custom templated fields in SIP patron responses

To test:
 1 - You will need to enable SIP on your testing instance
    cp etc/SIPconfig.xml /etc/koha/sites/kohadev/
    sudo koha-start-sip
    add a user listed in the SIPconfig to your system and give them permissions (superlibrarian works)
    on koha-testing-docker you should be able to start sip with user koha/koha without any adjustments
 2 - If you copied the above file you should be set to get custom field DE with dateexpiry
     Otherwise edit the sip login for the user to have a custom section like:
  <login id="koha"   password="koha"  delimiter="|" error-detect="enabled" institution="kohalibrary" encoding="utf8" >
  <custom_patron_field field="DE" template="[% patron.dateexpiry %]" />
  </login>
 3 - send a status test using the sip cli tester:
     perl misc/sip_cli_emulator.pl -a 127.0.0.1 -p 6001 -su koha -sp koha -l kohalibrary --patron 23529001000463 -m patron_status_request
 4 - send an information test using the sip cli tester:
     perl misc/sip_cli_emulator.pl -a 127.0.0.1 -p 6001 -su koha -sp koha -l kohalibrary --patron 23529001000463 -m patron_information
 5 - confirm you receive the DE field with a dateexpiry
 6 - Add your own custom fields and confirm it works with several
         <custom_patron_field field="EW" template="Phone: [% patron.phone %] Email: [% patron.email %]" />
 7 - prove -v t/db_dependent/SIP/Patron.t
 8 - prove -v t/db_dependent/SIP/

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 16962: Remove the use of "onclick" from serial collection template
Owen Leonard [Tue, 17 Mar 2020 18:44:23 +0000]
Bug 16962: Remove the use of "onclick" from serial collection template

This patch removes the use of event attributes like "onclick" from the
serial collection template. Events are now defined in JavaScript.

To test, apply the patch and go to Serials

- Locate or create a subscription for which an item record is NOT
  created when receiving.
  - On the serial collection page for this subscription, test that the
    "Multi receiving" button works correctly.
  - For any subscription, test that the "Generate next" button works
    correctly.
  - In each tab, test that the "select all" and "clear all" links work
    correctly and affect only that tab.
  - On a subscription which has expired, test that the "Renew" button
    works correctly.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25186: Fix accordion sections height in columns configuration page
Jonathan Druart [Mon, 20 Apr 2020 09:13:40 +0000]
Bug 25186: Fix accordion sections height in columns configuration page

The height for each section was the height of the highest section.
Now the height is set to the length of the section.

Test plan:
Go to Administration > Column configuration
Open the sections and confirm that the height fits its content.

QA: note that I guess "autoHeight: false" was meant to achieve that,
but it does not exist in the API of the plugin.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24183: (RM follow-up) Remove re-introduced UseKohaPlugins
Martin Renvoize [Wed, 22 Apr 2020 11:24:27 +0000]
Bug 24183: (RM follow-up) Remove re-introduced UseKohaPlugins

We removed UseKohaPlugins in bug 20415 but incidentally added a
reference to it bug 24183. This patch corrects that error.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20501: Don't cut strings when unhighlighting in intranet search results
Phil Ringnalda [Sun, 19 Apr 2020 02:37:49 +0000]
Bug 20501: Don't cut strings when unhighlighting in intranet search results

When you click Unhighlight on the search results of a search in the staff client
when the search terms contain the same word twice, like "ma ma", the highlighted
words disappear, and don't reappear if you click Highlight.

This patch makes the same change to the intranet copy of jquery.highlight-3.js that
bug 5844 made to the OPAC copy.

Test plan:
1) Without this patch, search in the intranet for ma ma and verify you have at least
   two matching records.
2) Notice that the Ma in Material type: Book is highlighted.
3) Click Unhighlight, and notice that it has become terial type: Book
4) Apply this patch, repeat the search with a shift+reload to reload the .js
5) Click Unhighlight, and verify that Material type: Book remains Material

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Josef Moravec <josef.moravec@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25223: Make join of aqbasket and aqorders explicit
Nick Clemens [Mon, 20 Apr 2020 18:41:37 +0000]
Bug 25223: Make join of aqbasket and aqorders explicit

This is simply a SQL change that makes things a bit easier to read
and also prevents too much data being returned in a large system

To test:
1 - Have some orders in your system in the ordered status
2 - Click the 'Ordered' amount for your budget from Acquisitions home
3 - Note the view of orders, possibly screen shot
4 - Apply patch
5 - Restart all the things
6 - Reload the ordered page
7 - Confirm nothing has changed

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>

4 years agoBug 24913: DBRev 19.12.00.078
Martin Renvoize [Tue, 21 Apr 2020 11:33:47 +0000]
Bug 24913: DBRev 19.12.00.078

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24913: Add PatronSelfRegistrationConfirmEmail syspref
Aleisha Amohia [Tue, 14 Apr 2020 04:51:41 +0000]
Bug 24913: Add PatronSelfRegistrationConfirmEmail syspref

To test:
1) update database, restart memcached/plack
2) Go to Administration -> System preferences -> OPAC tab. Enable the
new PatronSelfRegistrationConfirmEmail system preference. Enable other
required self registration sysprefs.
3) Go to the OPAC home page. (You may need to log out). Click the
'Register' link so you are redirected to the member entry form.
4) Notice the 'Confirm primary email' field after the 'primary email'
field. Put 'a@a.com' in primary email, and 'b@b.com' in the confirm
field. Scroll to the end of the form and Submit.
5) Confirm the form is not successfully submitted, and an error message
is shown to indicate the email addresses do not match.
6) Confirm you cannot cut, copy or paste in either the primary email or
confirm primary email fields. Confirm the right click menu doesn't work
in these fields.

7) Disable javascript in your browser.
8) Repeat steps 3 and 4.
9) Confirm there is an error message to indicate the email addresses do
not match.

10) Re-enable javascript. Fill in the form correctly with matching email
addresses and confirm it successfully submits.

11) Disable the PatronSelfRegistrationConfirmEmail syspref.
12) Attempt to register an account on the OPAC again. Confirm the
'confirm email address' field is gone and form works as expected.
13) Re-enable the PatronSelfRegistrationConfirmEmail syspref.
14) Log in to the OPAC and go to your personal details
15) Edit the primary email field
16) Confirm you are able to submit your changes (you should not see an
error about emails not matching).

Sponsored-by: Bibliotheksservice-Zentrum Baden-Württemberg (BSZ)
Signed-off-by: holly <hc@interleaf.ie>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25123: (QA follow-up) Re-used variable name
Martin Renvoize [Mon, 20 Apr 2020 07:37:10 +0000]
Bug 25123: (QA follow-up) Re-used variable name

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>

4 years agoBug 25123: Count the current fine when reducing for maxFine
Nick Clemens [Mon, 13 Apr 2020 11:38:28 +0000]
Bug 25123: Count the current fine when reducing for maxFine

If maxFine is set, we total the patrons outstanding fines when making an adjustment, however, we neglect to count the amount of a currently updating fine when doing so.

To test:
1 - Set maxFine to 5
2 - Create an overdue amount of 4.99 for a patron
3 - Set an itemtype to have a fine of $.10 per day
4 - Checkout an item of that type to a patron and backdate the due date so it is overdue
5 - Run fines.pl with -v
6 - Note the fine is reduced from $.10 (or a multiple) to .01
7 - Run it again, a second cent is added
8 - Repeat and note it keeps happening until the amount of the fine is reached, exceeding the maxFine setting
9 - Apply patch
10 - Note the fine is now reduced to 0 and nothing is added to account

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>

4 years agoBug 25123: Unit tests
Nick Clemens [Mon, 13 Apr 2020 11:38:23 +0000]
Bug 25123: Unit tests

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>

4 years agoBug 14369: Only show 'Create labels' link on staged records import when status is...
Katrin Fischer [Sun, 12 Apr 2020 22:06:05 +0000]
Bug 14369: Only show 'Create labels' link on staged records import when status is imported

The label creator won't be able to add a batch for items, if they are
not imported into the database (missing itemnumber). This patch hides
the link, when the status is not imported, to avoid the error situation.

To test:
- Export a record with items from your Koha installation
- Delete items and record from Koha
- Stage the record with the items - the "Create labels" link should be showing
- Try to create the labels - note error
- Apply patch
- Retry - the link should no longer show
- Import the records - the link should show now
- Create labels again - a new batch should have been created
- Verify the link on the batch # leads to the batch in the labels module

Bonus: Moves the message from the .pl file to the template to make
it translatable.

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>

4 years agoBug 20484: (RM follow-up) Highlight ES disablement
Martin Renvoize [Tue, 21 Apr 2020 11:14:13 +0000]
Bug 20484: (RM follow-up) Highlight ES disablement

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20484: Implement blocking_errors for ES config page
Nick Clemens [Tue, 21 Apr 2020 10:54:56 +0000]
Bug 20484: Implement blocking_errors for ES config page

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 14229: Remove extra spaces
Jonathan Druart [Mon, 20 Apr 2020 10:38:05 +0000]
Bug 14229: Remove extra spaces

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 14229: Add link from patron search results fine to accounting tab in patron account
Katrin Fischer [Wed, 15 Apr 2020 22:29:57 +0000]
Bug 14229: Add link from patron search results fine to accounting tab in patron account

This adds a link to the accounting tab from the patron search results by
making the amount in the Fines column clickable.

To test:
- Make sure you have some patrons with fines, credits and 0,00
- Search for your patrons using the patron search, make sure you
  get more than one result for your search
- Check the results table - the amount should always be linked
  and lead to the patron account accounting > transactions tab.

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>

4 years agoBug 24819: (follow-up) Rename suggestor to suggester
Katrin Fischer [Mon, 13 Apr 2020 18:22:04 +0000]
Bug 24819: (follow-up) Rename suggestor to suggester

I believe I suggested a typo - trying to fix it here.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24819: (follow-up) Rename suggestion_search to suggestor_search
Matthias Meusburger [Tue, 24 Mar 2020 13:52:31 +0000]
Bug 24819: (follow-up) Rename suggestion_search to suggestor_search

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24819: Allow the librarian to choose a patron when entering a purchase suggestion
Matthias Meusburger [Thu, 5 Mar 2020 15:41:25 +0000]
Bug 24819: Allow the librarian to choose a patron when entering a purchase suggestion

Sometimes librarians are creating purchase suggestions that came from patrons
which didn't use the opac (but sent an email, or told the librarian verbally...)

This patch allows the librarian to change the creator of the purchase suggestion
when entering it.

This way, the patron will be able to receive notifications during the purchase
suggestion workflow.

Test plan:

 - Apply the patch

 - Check that you can change the default creator of the purchase suggestion when
   creating a new suggestion by clicking on 'Set to patron'
   (Home > Acquisitions > Suggestions management > New purchase suggestion)

 - Check that you can also change the creator of the purchase suggestion when
   editing an existing suggestion

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20484: Allow configuration of ES before switching to ES
Nick Clemens [Wed, 8 Apr 2020 10:11:38 +0000]
Bug 20484: Allow configuration of ES before switching to ES

To test:
1 - Set SearchEngine syspref to Zebra
2 - Be a user with permission to manage search engine configuration (manage_search_engine_config)
3 - Confirm you do not see 'Search engine configuration' on Admin main page
4 - Apply patch
5 - Confirm you see it with '(Elasticsearch)' appended
6 - Be a user without above permission
7 - Confirm you cannot see the 'Search engine configuration'
8 - Confirm you cannot access directly:
    /cgi-bin/koha/admin/searchengine/elasticsearch/mappings.pl

Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25135: Improve clarity and navigation of columns settings administration
Owen Leonard [Mon, 13 Apr 2020 17:45:22 +0000]
Bug 25135: Improve clarity and navigation of columns settings administration

This patch makes some modifications to the columns setting
administration template so that the headings are a little clearer.
In-page navigation is added for each section.

To test, apply the patch and go to Administration -> Columns settings.

 - Confirm that the collapsing panels work correctly.
 - Expand a section and confirm that the "jump to" links work correctly.

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Looks good, works good.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23349: (follow-up) Correct translation function
Owen Leonard [Fri, 17 Apr 2020 13:32:35 +0000]
Bug 23349: (follow-up) Correct translation function

This patch corrects the translation function inside results.js. It
should be two underscores instead of one.

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23349: Add batch operations to staff interface catalog search results
Owen Leonard [Mon, 6 Apr 2020 20:39:35 +0000]
Bug 23349: Add batch operations to staff interface catalog search results

This patch adds three new options to the staff interface catalog search
results for users with cataloging permission: batch edit, batch delete,
and merge. The choices are found in an "Edit" menu which is disabled by
default. Checking any boxes in the search results table enables the
button.

To test, apply the patch and log in to Koha as a user with
edit_catalogue permission.

 - Perform a search in the catalog
 - You should see a disabled "Edit" button in the toolbar at the top of
   the search results table.
 - Check a single checkbox. The button should become enabled.
   - Test the "Batch edit" and "Batch delete" menu items. They should
     work correctly.
   - Test the "Merge records" item. It should warn you that you must
     select at least two records.
 - Check more than one checkbox and test each menu item again. All
   should work as expected.
 - Log in to the staff client as a user who does not have edit_catalogue
   permission. The "Edit" menu should no longer appear on the search
   results page.

Signed-off-by: Abbey Holt <aholt@dubuque.lib.ia.us>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 13557: Add hint for on-site checkouts to list of current checkouts in OPAC
Katrin Fischer [Mon, 13 Apr 2020 21:45:22 +0000]
Bug 13557: Add hint for on-site checkouts to list of current checkouts in OPAC

In the list of checkouts it's currently not possible for the
patront or tell the difference between normal checkouts (item
is at home with them) and on-site checouts (items remained at
the library). This patch adds a hint to the list of checkouts to
allow differentiating these kinds of checkouts.

To test:
- In your patron account, have multiple checkouts, some on-site,
  some others, overdue items, etc.
- Go to: OPAC > your summary > Checked out
- Verify that there is no hint for the on-site checkouts
- Apply patch
- Check again, there should now be a note

The note also has a class, so would be easy to be hidden
or formatted differently: class="onsite_checkout".

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>

4 years agoBug 21211: Add patron toolbar to suggestions, discharges and ill requests tabs
Katrin Fischer [Tue, 14 Apr 2020 13:14:37 +0000]
Bug 21211: Add patron toolbar to suggestions, discharges and ill requests tabs

When paging through the patron account in staff, using the tabs on
the right, you notice that some pages are missing the patron toolbar
on top and that the headings, where they exist, vary in size.

This patch adds the patron toolbar to 3 more tabs and changes headings
to h1 to be consistent with older tabs. It has also been suggested on
another tab that this is preferrable for screen readers.

Note: Modification log was left out for now, as this is also used in tools.

To test:
- Activate ILL (ILLModule pref)
- Activate discharges (UseDischarge pref)
- Go to any patron account, tab through the tabs...
- Verify that discharge, purchase suggestions and ill requests are
  missing the toolbar
- Apply patch
- Verify that the toolbar now appears on these pages and works
  correctly
- Also veriy that the headings are now consistently h1 on all pages

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 18680: Add an empty entry by default to sort1/sort2 values in patron account
Katrin Fischer [Tue, 14 Apr 2020 16:57:38 +0000]
Bug 18680: Add an empty entry by default to sort1/sort2 values in patron account

When using sort1/sort2 with authorised values to create a pull down
list, there will be no empty entry unless one is manually added to
the authorised values list.

This is not a good default behaviour, as it can easily
cause errors on patron creation. Without the empty entry, the first
alphabetic value is pre-selected and will be saved if not explicitly
changed. It also doesn't allow to mark sort1/sort2 as mandatory,
as the value is always 'set', the required message won't be triggered.

This adds an empty parameter to av-build-dropbox.inc to allow selectively
adding this empty entry without causing side-effects in other places
this include is used.

To test:
- Create authorised values for either Bsort1 or Bsort2 authorised
  value category
- Create a new patron:
  - you should see a pull down list on one and an input field for the other
  - for the pull down list, there will be no empty entry and the first
    alphabetic value will be preselected
- Make your sort1 and sort2 mandatory using BorrowerMandatoryField
- Verify there is still on empty entry
- Apply patch
- Repeat tests and verify that the behaviour is as expected
  - There should now be an empty entry
  - When the field is marked mandatory and empty is left, the required
    warning will be shown.

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 10561: Rephrase DisplayOPACiconsXSLT and DisplayIconsXSLT slightly
Katrin Fischer [Mon, 13 Apr 2020 01:46:25 +0000]
Bug 10561: Rephrase DisplayOPACiconsXSLT and DisplayIconsXSLT slightly

As the pref removes the whole 'line' of information, this tries to makes
the behaviour a little clearer by adding a 'and descriptions' to the pref
text. It now reads:

[Show|Don't show]  the format, audience, and material type icons and
descriptions in XSLT MARC21 results and detail pages in ...

To test:
- Check both preference descriptions in the staff client
- Verify the text reads correctly and this helps things

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 13518: Delete patron's modifications along with the patron
Jonathan Druart [Fri, 17 Apr 2020 09:22:04 +0000]
Bug 13518: Delete patron's modifications along with the patron

The table borrower_modifications has no FK constraint on the borrowernumber
and will remain untouched when the patron is deleted.
If the borrowernumber doesn't exist in the database, the modification entry is no longer visible in Koha.

The problem is that this table is used for the borrower modifications and the self-registration features.

So far borrowernumber is the PK (int(11) NOT NULL DEFAULT '0'), for the self-registration feature we can have borrowernumber that is not defined (0 is used)

Ideally we would like to have borrowernumber a DEFAULT NULL, and use NULL for self-reg, but then we will loose the PK (PK cannot be NULL).

As we cannot keep the correct constraints at DB level anyway, we will need to handle consistency at code-level.

Test plan:
Create a new patron
Do some modification at the OPAC
Delete the patron
Confirm that the modifications as been removed (directly in DB)

Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25176: Compiled CSS
Martin Renvoize [Mon, 20 Apr 2020 11:17:44 +0000]
Bug 25176: Compiled CSS

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25176: Fix style of checkout form
Owen Leonard [Fri, 17 Apr 2020 11:40:36 +0000]
Bug 25176: Fix style of checkout form

This patch makes a small CSS change in order to fix a display problem
with the checkout form where the form's width doesn't match that of the
"last checked out" message.

To test, apply the patch and regenerate the staff client CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).

Check an item out to a patron. Confirm that the green-bordered "Checked
out" message under the checkout form matches the width of the form.

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24768: (RM follow-up) Add missing koha_object_class's
Martin Renvoize [Fri, 17 Apr 2020 15:05:43 +0000]
Bug 24768: (RM follow-up) Add missing koha_object_class's

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24768: Add 'Return claims' to column configuration for checkouts tables
Katrin Fischer [Sat, 11 Apr 2020 10:36:36 +0000]
Bug 24768: Add 'Return claims' to column configuration for checkouts tables

The checkouts tables on the checkouts and details tabs in the staff
patron account support column confiugration, but the new column
"Return claims" was missing.

This patch adds the column to the column configuration.

To test:
- Make sure to test with a patron having return claims and without
- Verify cou can toggle the visibility of the return claims column
  from top of the tables in the checkouts and details tabs
- Go to administrastion > column configuration
- Change the settings for the issues tables in the Patrons and
  Circulation sections
- Verify the changes have been applied to the tables as configured

Signed-off-by: David Roberts <david@koha-ptfs.co.uk>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25138: (follow-up) Terminology: Point of sale should use library instead of branch
Devinim [Thu, 16 Apr 2020 11:09:54 +0000]
Bug 25138: (follow-up) Terminology: Point of sale should use library instead of branch

Signed-off-by: Devinim <kohadevinim@devinim.com.tr>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25138: Terminology: Point of sale should use library instead of branch
Katrin Fischer [Sun, 12 Apr 2020 02:25:48 +0000]
Bug 25138: Terminology: Point of sale should use library instead of branch

This fixes the navigation on the Point of sale page:
Branch details => Library details

And the heading and the 'no register defined for this branch/library'
message on the page it links to.

To test:
- Activate cash registers and point of sales features
- Go to the point of sales page
- Verify text on the menu to the left
- Click on the Branch/library details - verify text and heading

Signed-off-by: Devinim <kohadevinim@devinim.com.tr>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: DBRev 19.12.00.077
Martin Renvoize [Fri, 17 Apr 2020 12:48:47 +0000]
Bug 23727: DBRev 19.12.00.077

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: (QA follow-up) Fix for boolean flags
Martin Renvoize [Thu, 20 Feb 2020 17:15:57 +0000]
Bug 23727: (QA follow-up) Fix for boolean flags

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: (QA follow-up) Fix script tags
Martin Renvoize [Thu, 20 Feb 2020 17:10:49 +0000]
Bug 23727: (QA follow-up) Fix script tags

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: Editing course reserve items is broken
Kyle M Hall [Fri, 14 Feb 2020 20:22:17 +0000]
Bug 23727: Editing course reserve items is broken

Adding an item to course reserves and trying to edit any values in a second step does not work. Values are not saved and the table shows all values as "Unchanged".

This patch set adds two new sets of columns to the course_items table.

The first set determines if the specified column should be swapped or
not. The was previously 'implied' by the column being set to undef which
has been the root problem with that way of knowing if a column should
swap or not.

The second set of new columns are for storing the item field values
while the item is on course reserve. Previously, the column values
were swapped between the items table and the course_items table,
which leaves ambiguity as to what each value is. Now, the original
columns *always* store the value when the item is on course reserve,
and the new storage columns store the original item value while the
item is on reserve, and are NULL when an item is *not* on reserve.

Test Plan:
1) Apply this patch
2) Add and edit course items, not the new checkboxes for enabling fields
3) Everything should function as before

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: Add Koha Object(s) related to course reserves
Kyle M Hall [Fri, 14 Feb 2020 13:57:05 +0000]
Bug 23727: Add Koha Object(s) related to course reserves

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: Update Schema
Kyle M Hall [Fri, 14 Feb 2020 13:45:11 +0000]
Bug 23727: Update Schema

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23727: Add new columns
Kyle M Hall [Fri, 14 Feb 2020 13:41:28 +0000]
Bug 23727: Add new columns

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 21901: (RM follow-up) Use TestBuilder to fix tests
Martin Renvoize [Fri, 17 Apr 2020 12:36:39 +0000]
Bug 21901: (RM follow-up) Use TestBuilder to fix tests

A few tests failed due to missing values for foreign key relationships.
Switching to TestBuilder for data mocking resolves this elegantly.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 23463: Remove double store call
Jonathan Druart [Fri, 17 Apr 2020 08:42:21 +0000]
Bug 23463: Remove double store call

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 22887: (RM follow-up) Restore warnings in updatedatabase
Martin Renvoize [Fri, 17 Apr 2020 09:20:27 +0000]
Bug 22887: (RM follow-up) Restore warnings in updatedatabase

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 21901: DBRev 19.12.00.076
Martin Renvoize [Fri, 17 Apr 2020 09:17:32 +0000]
Bug 21901: DBRev 19.12.00.076

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 21901: (QA follow-up) Add a few NOT NULL constraints in dbrev
Marcel de Rooy [Fri, 17 Apr 2020 08:04:14 +0000]
Bug 21901: (QA follow-up) Add a few NOT NULL constraints in dbrev

We need to specify NOT NULL on subscription and -history as well.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 21901: Add a warning if we removed entries
Jonathan Druart [Mon, 9 Mar 2020 14:25:29 +0000]
Bug 21901: Add a warning if we removed entries

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 21901: (QA follow-up) Ensure consistent data before adding keys
Martin Renvoize [Fri, 31 Jan 2020 13:21:41 +0000]
Bug 21901: (QA follow-up) Ensure consistent data before adding keys

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 21901: Add FK on subscription and serial tables
Jonathan Druart [Wed, 11 Dec 2019 07:29:27 +0000]
Bug 21901: Add FK on subscription and serial tables

In order to improve performance in the serial modules and add DB constraints,
this patch is going to add missing foreign key on the following columns:
 * serial.biblionumber
 * serial.subscription
 * subscriptionhistory.biblionumber
 * subscriptionhistory.subscriptionid
 * subscription.biblionumber

Once done, some code can be removed from the Del* subroutines, as the ON
CASCASE clause will make the RDBMS handles the deletions.

Test plan:
0/ It would be useful to test the update DB entry on a big and old
production DB, to make sure the constraints will be added correctly.
We could remove the entries before creating the constraints, but it can
be unecessary
1/ Make sure you can recreate a fresh install with the kohastructure.sql
from this patch
2/ Make sure you can upgrade from a master install
3/ Create a subscription, serial, etc. and delete the biblio
=> The subscription/serials should have been deleted from the DB
4/ Create a subscription, serial, etc. and delete the subscription
=> The serials should have been deleted from the DB

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25016: Coce should not return a 1-pixel Amazon cover image
Owen Leonard [Sun, 29 Mar 2020 00:19:39 +0000]
Bug 25016: Coce should not return a 1-pixel Amazon cover image

This patch adds an onload function to the JavaScript which loads images
from Coce. In the case where the image is 1 x 1 pixel the image should
be removed.

To test you should have Coce enabled and Amazon.com included in the list
of sources.

 - Apply the patch and view the bibliographic details page under a
  variety of conditions:
   - A title which has a matching Amazon image:
     - The image should load as expected.
   - A title which doesn't have a matching Amazon image
     - The image should not be found in the source at all after the page
       has loaded.
  - Test with local cover images enabled

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 24715: Cache repeatable subfield in TransformKohaToMarc
Marcel de Rooy [Mon, 24 Feb 2020 12:52:13 +0000]
Bug 24715: Cache repeatable subfield in TransformKohaToMarc

Implemented by calling GetMarcSubfieldStructure and improving
_check_split which may check repeatability in a specific framework,
and return the framework hash.

Test plan:
Run t/db_dependent/Biblio/TransformKohaToMarc.t
Optionally, follow the test plan of bug 21800#comment7.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Ere Maijala <ere.maijala@helsinki.fi>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20116: Cache language list
Jonathan Druart [Wed, 31 Jan 2018 17:51:22 +0000]
Bug 20116: Cache language list

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20116: Flush the caches
Jonathan Druart [Wed, 16 May 2018 20:26:09 +0000]
Bug 20116: Flush the caches

When languages are added or removed when need to flush the caches to
keep the interface consistent

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20116: Prepare the ground
Jonathan Druart [Wed, 31 Jan 2018 17:36:22 +0000]
Bug 20116: Prepare the ground

Just refactoring to make the next patch more readable

Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25011: Improve display of MARC21 508 - Production credits in staff and OPAC
Katrin Fischer [Fri, 27 Mar 2020 22:48:56 +0000]
Bug 25011: Improve display of MARC21 508 - Production credits in staff and OPAC

Makes some tiny changes to improve display and consistency between
OPAC and staff:
- Capitalization fix: Production Credits - Production credits
- Changes div to span avoiding display issues
- Make sequence of fields in display match (505, 508, 586)

To test:
- Catalog one or more records with none, one and multiple 508 $a
- Check and compare the staff and OPAC detail pages, both
  should display the production credits information correctly

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 20101: Cronjob automatic_item_modification_by_age.pl does not log run in action...
Kyle M Hall [Tue, 30 Jan 2018 16:10:07 +0000]
Bug 20101: Cronjob automatic_item_modification_by_age.pl does not log run in action logs

C4::Log::cronlogaction() was never implemented in automatic_item_modification_by_age.pl.

Test Plan:
1) Apply this patch
2) Enable CronjobLog
3) Run automatic_item_modification_by_age.pl succesfully
4) Note the run is noted in the action logs

Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25086: DBRev 19.12.00.075
Martin Renvoize [Fri, 17 Apr 2020 08:13:13 +0000]
Bug 25086: DBRev 19.12.00.075

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25086: Set changed_fields column as nullable
Agustin Moyano [Wed, 8 Apr 2020 19:53:43 +0000]
Bug 25086: Set changed_fields column as nullable

This patch changed_fields column as nullable.

To test:
1. Do not apply any patch
2. Set PatronSelfRegistrationVerifyByEmail preference to require
3. Fill self registration form in opac and submit
CHECK => OPAC dies with a nasty message, that says Field 'changed_fields' doesn't have a default value
4. Apply this patch and updatedatabase
5. Repeat step 3
SUCCESS => Registry process continues as expected
6. Sign off

Sponsored-by: Orex Digital
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: (RM follow-up) Update pref references.
Martin Renvoize [Fri, 17 Apr 2020 08:02:58 +0000]
Bug 25147: (RM follow-up) Update pref references.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: (RM follow-up) Update display
Martin Renvoize [Fri, 17 Apr 2020 07:30:40 +0000]
Bug 25147: (RM follow-up) Update display

I missed the display change in the preference name change.. oops.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: DBRev 19.12.00.074
Martin Renvoize [Fri, 17 Apr 2020 07:24:57 +0000]
Bug 25147: DBRev 19.12.00.074

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: Clarify section name
Martin Renvoize [Fri, 17 Apr 2020 07:18:44 +0000]
Bug 25147: Clarify section name

Clarify the preference section headings for Self-checkout and
Self-checkin.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: Rename preference
Martin Renvoize [Fri, 17 Apr 2020 07:16:10 +0000]
Bug 25147: Rename preference

This patch renames the preference from the ambiguous 'AllowSelfCheckReturns'
to 'SCOAllowCheckin' which is more consistent with other preferences
affecting this module.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25152: (RM follow-up) Correction to update description
Martin Renvoize [Fri, 17 Apr 2020 06:55:09 +0000]
Bug 25152: (RM follow-up) Correction to update description

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: AllowSelfCheckReturns is in the wrong system preference section
Martin Renvoize [Fri, 17 Apr 2020 06:51:16 +0000]
Bug 25147: AllowSelfCheckReturns is in the wrong system preference section

This reverts commit 8aa9f2cc078932a0a4db434f8bd793de29a8ff7b.

I agree with the following comment and as such have reverted the patch.

Quoting Phil Ringnalda <phil@chetcolibrary.org>:

  Everything currently in the chunk labelled "Self Checkout" is
  preferences used to control sco-main.pl, a feature that does checkout
  and renewal, and optionally with the preference AllSelfCheckReturns,
  also checkin.

  Everything currently in the chunk labelled "Self check-in module" is
  preferences used to control sci-main.pl, a separate feature that does
  only checkin, and does checkin whether or not AllowSelfCheckReturns is
  set.

  I'd think a better solution would be to either rename the preference,
  which is actually AllowReturnsInSelfCheckout, or rename the chunks to
  make it more clear that they are preferences for two different features.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25147: AllowSelfCheckReturns is in the wrong system preference section
David Roberts [Wed, 15 Apr 2020 16:34:40 +0000]
Bug 25147: AllowSelfCheckReturns is in the wrong system preference section

This patch moves the AllowSelfCheckReturns system preference to the "Self check-in module" section of the Circulation system preferences.

To test:

1) Check that the AllowSelfCheckReturns system preference is currently
in the "Self Checkout" section of the Circulation system preferences.
2) Apply the patch
3) The preference should now be in the "Self check-in module" section of
the Circulation system preferences.

Signed-off-by: Devinim <kohadevinim@devinim.com.tr>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>

4 years agoBug 25136: Join the 2 ifs
Jonathan Druart [Thu, 16 Apr 2020 09:51:32 +0000]
Bug 25136: Join the 2 ifs

Highlight that we only need this for action="new"

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>