]> git.koha-community.org Git - koha.git/log
koha.git
12 months agoBug 31503: (QA follow-up) Improve count of available_types
Marcel de Rooy [Fri, 13 Oct 2023 14:54:47 +0000 (14:54 +0000)]
Bug 31503: (QA follow-up) Improve count of available_types

Tidied one other line.

Test plan:
Run t/db_dependent/Koha/Patron/Consents.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: (follow-up) Remove OPACCustomConsentTypes
Martin Renvoize [Mon, 18 Sep 2023 09:28:06 +0000 (10:28 +0100)]
Bug 31503: (follow-up) Remove OPACCustomConsentTypes

This patch removes all trace of the original OPACCustomConsentTypes
preference.  We now use Koha::Plugins->feature_enabled in preference.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: (follow-up) Use KohaPlugins.feature_enabled
Martin Renvoize [Fri, 15 Sep 2023 15:42:25 +0000 (16:42 +0100)]
Bug 31503: (follow-up) Use KohaPlugins.feature_enabled

This patch switches the code from using
Koha.preference('OPACCustomConsentTypes') to using
KohaPlugins.feature_enabled('patron_consent_type').

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: (follow-up) Add 'feature_enabled' to Koha::Plugins
Martin Renvoize [Fri, 15 Sep 2023 15:09:56 +0000 (16:09 +0100)]
Bug 31503: (follow-up) Add 'feature_enabled' to Koha::Plugins

This patch adds a 'feature_enabled' accessor to the Koha::Plugins class.
Passing the plugin method name for the plugin feature you're looking for
will return a boolean denoting whether any enabled plugins carry said
method.

Included in the patch is an addition to the TT KohaPlugins plugin to
enable quick access to this function.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
[EDIT] Tidied t/db_dependent/Koha/Plugins/Plugins.t
[EDIT] Tidied Koha/Template/Plugin/KohaPlugins.pm

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: (follow-up) Styling and pre-selection
Martin Renvoize [Fri, 15 Sep 2023 07:25:57 +0000 (08:25 +0100)]
Bug 31503: (follow-up) Styling and pre-selection

This patch restores some of the wording and styling from the original
GDPR/Privacy policy feature including highlighting in a warning box.

I also remove the jQuery approach for pre-selecting already selected
radio options and rely on standard TT processing instead.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: (follow-up) Update description for system preference
David Nind [Sun, 3 Sep 2023 04:07:16 +0000 (04:07 +0000)]
Bug 31503: (follow-up) Update description for system preference

Update new OPACCustomConsentType system preference description - bold
and capitalize NOTE for consistency, link to PrivacyPolicyConsent
system preference for consistency, and other minor changes.

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>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: Make opac-patron-consent more generic
Marcel de Rooy [Thu, 31 Aug 2023 08:40:29 +0000 (08:40 +0000)]
Bug 31503: Make opac-patron-consent more generic

Adds $patron->consent and $consents->available_types.
Incorporates them into script/template.
Provides two unit tests.

Note: A follow-up patch helps you test this with an
example plugin.

Test plan:
Run t/db_dependent/Koha/Patron.t
Run t/db_dependent/Koha/Patron/Consents.t
Toggle the value of pref PrivacyPolicyConsent and look at
OPAC account, tab Consents.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: Change usermenu condition, add preference
Marcel de Rooy [Wed, 30 Aug 2023 14:32:52 +0000 (16:32 +0200)]
Bug 31503: Change usermenu condition, add preference

Adds preference OPACCustomConsentTypes.

Test plan:
Run dbrev.
Toggle value of OPACCustomConsentTypes / PrivacyPolicyConsent.
Check user page for Consents tab.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31503: Change patron_consent.type
Marcel de Rooy [Tue, 29 Aug 2023 12:09:09 +0000 (14:09 +0200)]
Bug 31503: Change patron_consent.type

Test plan:
Run db rev.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: DBRev 23.06.00.048
Tomas Cohen Arazi [Tue, 24 Oct 2023 18:43:06 +0000 (15:43 -0300)]
Bug 27153: DBRev 23.06.00.048

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: DBIC schema
Tomas Cohen Arazi [Tue, 24 Oct 2023 18:41:45 +0000 (15:41 -0300)]
Bug 27153: DBIC schema

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: Adjust kohastructure for new primary key
Nick Clemens [Tue, 5 Sep 2023 17:25:45 +0000 (17:25 +0000)]
Bug 27153: Adjust kohastructure for new primary key

Signed-off-by: Danielle M Elder <danielle.elder@law.utexas.edu>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: Adjust mappings to add title without punctuation
Nick Clemens [Fri, 1 Sep 2023 17:32:35 +0000 (17:32 +0000)]
Bug 27153: Adjust mappings to add title without punctuation

This patch finally adjust the default mappings to add a new field to
the elastic index with the title stripped of punctuation

This method optionally allows the library to place the filtered version in the same
search field, or a new search field. The default mappings will include the filtered version
in a keyword search, but not a targeted search

To test:
1 - Import some affected records via z3950, e.g.:
    Carrie's war
    1,000 Japanese words
2 - Search (using Elasticsearch) for the titles without including punctuation
    Carries war
    1000 Japanese words
3 - No results
4 - Reload mappings and reindex
    perl misc/search_tools/rebuild_elasticsearch.pl -v -r
5 - Search again
6 - Success!
7 - Search title specifically:
    ti:Carries war
8 - No results
9 - Adjust mappings.yaml to add second mapping for 245 to title index:
    - facet: ''
      marc_field: 245abp
      marc_type: marc21
      sort: 1
      suggestible: 1
      filter: punctuation
10 - Reload mappings and reindex
11 - Repeat 7
12 - Success

Signed-off-by: Danielle M Elder <danielle.elder@law.utexas.edu>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: Add filter option to Elasticsearch indexing
Nick Clemens [Fri, 1 Sep 2023 17:30:14 +0000 (17:30 +0000)]
Bug 27153: Add filter option to Elasticsearch indexing

This patch uses the filter option from the mappings to add a value_callback
to reord processing for indexing.

Fields defined with 'punctuation' filter will have all punctuation stripped when
conveted to documents.

Tests are updated.

Signed-off-by: Danielle M Elder <danielle.elder@law.utexas.edu>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: Interface updates
Nick Clemens [Fri, 1 Sep 2023 12:40:15 +0000 (12:40 +0000)]
Bug 27153: Interface updates

This patch adds a new column to the 'Bibliographic records' tab in
Administration > Search engine configuration (Elasticsearch)

To test:
1 - Confirm the new 'filter' column shows
2 - Update an existing field to set filter to punctuation
3 - Confirm it can be saved
4 - Add a new field
5 - Confirm it saves correctly
6 - Unset filter for a field
7 - Confirm it saves

Signed-off-by: Danielle M Elder <danielle.elder@law.utexas.edu>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 27153: DB Updates
Nick Clemens [Fri, 1 Sep 2023 12:38:44 +0000 (12:38 +0000)]
Bug 27153: DB Updates

We start by adding the field to the table

It is possible a library would want two versions of the same field in
the indexing. We need to make the filter part of the primary key in
order to allow this

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35001: Add some checks to membership_expiry
Marcel de Rooy [Fri, 13 Oct 2023 08:26:46 +0000 (08:26 +0000)]
Bug 35001: Add some checks to membership_expiry

Test plan:
Toggle pref TrackLastPatronActivityTriggers (clear it).
And try variations of --active, --inactive to see the warnings.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35001: Simplify ->is_active in light of activity triggers
Marcel de Rooy [Thu, 12 Oct 2023 14:10:51 +0000 (14:10 +0000)]
Bug 35001: Simplify ->is_active in light of activity triggers

The fact that we update lastseen for various triggers now, makes
it a bit easier to let go of those 'hardcoded queries' ;)

Test plan:
Run t/db_dependent/Koha/Patron.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35136: (bug 31383 follow-up) Fix db rev
Jonathan Druart [Tue, 24 Oct 2023 06:06:55 +0000 (08:06 +0200)]
Bug 35136: (bug 31383 follow-up) Fix db rev

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35072: Fix invalid usage of "&amp;" in JavaScript intranet-tmpl script redirects
Michał Kula [Mon, 23 Oct 2023 13:51:40 +0000 (15:51 +0200)]
Bug 35072: Fix invalid usage of "&amp;" in JavaScript intranet-tmpl script redirects

These escapes were invalid in these places, as HTML entity escapes
are meant to be used only inside of HTML elements/attributes, not
inside of JavaScript code.

These URLs would be sent out by the browser as-is, and that'd usually
work on the default install only coincidentally. Unfortunately, on some
setups (such as when using reverse proxies), this would break, and the
URL after "&amp;" would have been truncated.

This small patch adjusts the URLs in templates to not use wrong escapes,
and makes them consistent with how URLs are formatted for JavaScript
redirects in most of the templates already.

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34983: Force a sort order in JSON output of po2json
Marcel de Rooy [Wed, 4 Oct 2023 13:04:27 +0000 (15:04 +0200)]
Bug 34983: Force a sort order in JSON output of po2json

This patch does so by default. If you do not want them sorted,
export CANONICAL-0 on the command line.

Test plan:
Copy a staff PO file from misc/translator to test.po
Now run:   time misc/translator/po2json test.po > json1
And do:    time misc/translator/po2json test.po > json2
Run:       diff json1 json2; #They should be the same.
Now:       export CANONICAL=0
And run:   time misc/translator/po2json test.po > json3
And again: time misc/translator/po2json test.po > json4
And run:   diff json3 json4; # Lots of changes
Remove the created cruft. And signoff :)

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35030: Add 'article' to patron activity triggers
Martin Renvoize [Thu, 12 Oct 2023 11:53:34 +0000 (12:53 +0100)]
Bug 35030: Add 'article' to patron activity triggers

This patch adds 'article' to the list of triggers available for
tracking patron activity.

Test plan
1) Select 'Placing an article request
   TrackPatronLastActivityTriggers system preference
2) As a staff member, place a hold on any item for a test user
3) Confirm that the borrowers.lastseen field is updated for that
   test borrower

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35027: Add 'hold' to patron activity triggers
Martin Renvoize [Thu, 12 Oct 2023 11:40:17 +0000 (12:40 +0100)]
Bug 35027: Add 'hold' to patron activity triggers

This patch adds 'hold' to the list of triggers available for tracking
patron activity.

Test plan
1) Select 'Placing a hold on an item' in the
   TrackPatronLastActivityTriggers system preference
2) As a staff member, place a hold on any item for a test user
3) Confirm that the borrowers.lastseen field is updated for that test
   borrower

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Fix tests count
Tomas Cohen Arazi [Tue, 24 Oct 2023 12:58:57 +0000 (09:58 -0300)]
Bug 15504: Fix tests count

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: DBRev 23.06.00.047
Tomas Cohen Arazi [Tue, 24 Oct 2023 12:47:42 +0000 (09:47 -0300)]
Bug 15504: DBRev 23.06.00.047

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (QA follow-up): more consistent quotes in atomicupdate
Victor Grousset/tuxayo [Sun, 22 Oct 2023 20:30:20 +0000 (22:30 +0200)]
Bug 15504: (QA follow-up): more consistent quotes in atomicupdate

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (QA follow-up) Final changes
Marcel de Rooy [Thu, 12 Oct 2023 07:35:58 +0000 (07:35 +0000)]
Bug 15504: (QA follow-up) Final changes

[1] Comment in Patron->is_active sharpened.
[2] Patron->update_lastseen
      return if $cached && $cached eq $now->ymd;
    Should be
      return $self if $cached && $cached eq $now->ymd;
    Consistent return value.
[3] Typo if there are not TrackLastPatronActivityTriggers enabled
[4] Typo TrackLastPatronActivityTriggers must be contain
[5] Typo patron is does .. option => performs an action
[6] Tidy on dbrev to fix
      The file is less tidy than before (bad/messy lines before: 0, now: 4)

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (QA follow-up) Fix dbrev
Marcel de Rooy [Thu, 12 Oct 2023 07:26:40 +0000 (07:26 +0000)]
Bug 15504: (QA follow-up) Fix dbrev

Resolve:
ERROR - {UNKNOWN}: DBI Exception: DBD::mysql::db do failed: Unknown column 'check_out' in 'field list' at /usr/share/koha/C4/Installer.pm line 741

Test plan:
Remove new pref from db.
Run dbrev again.
Check results.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Remove PatronLastActivity preference
Martin Renvoize [Wed, 11 Oct 2023 17:43:31 +0000 (18:43 +0100)]
Bug 15504: Remove PatronLastActivity preference

This patch removes the older PatronLastActivity preference opting to
replace it by the new PatronLastActivityTriggers preference. The feature
can now be disabled by simply not selecting any triggers

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Clarify --last_seen option in delete_patrons
Martin Renvoize [Wed, 11 Oct 2023 17:10:32 +0000 (18:10 +0100)]
Bug 15504: (follow-up) Clarify --last_seen option in delete_patrons

This patch adds clarifications to the last_seen option in delete_patrons
to clarify that TrackLastPatronActivity and
TrackLastPatronActivityTriggers system preferences act as a couplet.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Update terminology on cleanborrowers
Martin Renvoize [Wed, 11 Oct 2023 17:06:37 +0000 (18:06 +0100)]
Bug 15504: (follow-up) Update terminology on cleanborrowers

This patch updates the terminology on the cleanborrowers form to reflect
that 'activity' and not just 'connectivity' is tracked by
TrackLastPatronActivity.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (QA follow-up) Terminology
Martin Renvoize [Wed, 11 Oct 2023 17:02:13 +0000 (18:02 +0100)]
Bug 15504: (QA follow-up) Terminology

This just updates 'Login to OPAC' to 'Login'.. we should squash this

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Rename cache key
Martin Renvoize [Wed, 11 Oct 2023 16:52:43 +0000 (17:52 +0100)]
Bug 15504: (follow-up) Rename cache key

I agree, it's better to use borrowernumber for the cache key and I also
take the oportunity to rename it to more clearly reflect the function
(it's no longer 'login' only, it's now 'activity')

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Respect existing TrackLastPatronActivity
Martin Renvoize [Wed, 11 Oct 2023 16:47:06 +0000 (17:47 +0100)]
Bug 15504: (follow-up) Respect existing TrackLastPatronActivity

This patch updates the database update to set
'check_out,connection,login' as the activity triggers should we find at
upgrade time that TrackLastPatronActivity is set to true.

This retains the existing functionality.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Fix is_active test
Martin Renvoize [Fri, 6 Oct 2023 10:37:19 +0000 (11:37 +0100)]
Bug 15504: (follow-up) Fix is_active test

Bug 33245 introduced a new is_active patron method and the corresponding
tests included calls to the method we depreacte in this patchset

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Tidy 'lastseen' section of unit test
Martin Renvoize [Fri, 6 Oct 2023 10:25:01 +0000 (11:25 +0100)]
Bug 15504: (follow-up) Tidy 'lastseen' section of unit test

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Add Triggers mock to unit tests
Martin Renvoize [Fri, 6 Oct 2023 10:16:48 +0000 (11:16 +0100)]
Bug 15504: (follow-up) Add Triggers mock to unit tests

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Use borrowernumber in Koha::Patrons->find
Martin Renvoize [Fri, 6 Oct 2023 10:02:54 +0000 (11:02 +0100)]
Bug 15504: (follow-up) Use borrowernumber in Koha::Patrons->find

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Migrate to one clear method
Martin Renvoize [Tue, 20 Jun 2023 18:23:11 +0000 (19:23 +0100)]
Bug 15504: (follow-up) Migrate to one clear method

We were using a series of similarly named methods spread in distinct places
around the codebase. This combines the logic of C4::Auth::track_login_daily
and Koha::Patron->track_login into a new Koha::Patron->update_lastseen method.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: (follow-up) Unit tests
Martin Renvoize [Wed, 21 Jun 2023 07:21:59 +0000 (08:21 +0100)]
Bug 15504: (follow-up) Unit tests

This patch removes, moves and updates the existing unit tests for
track_login_daily and track_login to all sit under Koha::Patron and
update_lastseen.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Add unit test
Matt Blenkinsop [Wed, 14 Jun 2023 14:16:34 +0000 (14:16 +0000)]
Bug 15504: Add unit test

prove -v t/db_dependent/Auth.t

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Remove update_lastseen method
Matt Blenkinsop [Wed, 14 Jun 2023 14:15:33 +0000 (14:15 +0000)]
Bug 15504: Remove update_lastseen method

This patch removes update_lastseen which has been replaced by a call to track_login_daily

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Add triggers to instances of track_login_daily
Matt Blenkinsop [Wed, 14 Jun 2023 14:14:53 +0000 (14:14 +0000)]
Bug 15504: Add triggers to instances of track_login_daily

This patch adds a trigger to every instance of track_login_daily

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Update track_login_daily to accept triggers
Matt Blenkinsop [Wed, 14 Jun 2023 14:11:08 +0000 (14:11 +0000)]
Bug 15504: Update track_login_daily to accept triggers

This patch adds triggers to track_login_daily so that it only tracks activity when that trigger is active

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15504: Add new syspref TrackLastPatronActivityTriggers
Matt Blenkinsop [Wed, 14 Jun 2023 14:08:17 +0000 (14:08 +0000)]
Bug 15504: Add new syspref TrackLastPatronActivityTriggers

This patch adds a new syspref TrackLastPatronActivityTriggers to determine which actions should update borrowers.lastseen

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34030: non-table view
Jonathan Druart [Fri, 16 Jun 2023 11:47:40 +0000 (13:47 +0200)]
Bug 34030: non-table view

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: BULAC - http://www.bulac.fr/
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Laurence Rault <laurence.rault@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34030: Add a "print slips" action links to print in batch
Jonathan Druart [Fri, 16 Jun 2023 10:34:59 +0000 (12:34 +0200)]
Bug 34030: Add a "print slips" action links to print in batch

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: BULAC - http://www.bulac.fr/
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Laurence Rault <laurence.rault@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33547: DBRev 23.06.00.046
Tomas Cohen Arazi [Mon, 23 Oct 2023 14:28:02 +0000 (11:28 -0300)]
Bug 33547: DBRev 23.06.00.046

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33547: (QA follow-up) Tidy
Nick Clemens [Thu, 12 Oct 2023 13:32:08 +0000 (13:32 +0000)]
Bug 33547: (QA follow-up) Tidy

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33547: Add missing action button for non-table view
Jonathan Druart [Fri, 9 Jun 2023 15:18:18 +0000 (17:18 +0200)]
Bug 33547: Add missing action button for non-table view

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: BULAC - http://www.bulac.fr/
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Laurence Rault <laurence.rault@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33547: Display AV descriptions instead of codes
Jonathan Druart [Tue, 6 Jun 2023 13:56:46 +0000 (15:56 +0200)]
Bug 33547: Display AV descriptions instead of codes

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: BULAC - http://www.bulac.fr/
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Laurence Rault <laurence.rault@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33547: DBIC schema changes
Jonathan Druart [Mon, 17 Apr 2023 18:59:07 +0000 (20:59 +0200)]
Bug 33547: DBIC schema changes

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: BULAC - http://www.bulac.fr/
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Laurence Rault <laurence.rault@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33547: Add print slip
Jonathan Druart [Wed, 12 Apr 2023 13:20:12 +0000 (15:20 +0200)]
Bug 33547: Add print slip

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: BULAC - http://www.bulac.fr/
Signed-off-by: Heather Hernandez <heather_hernandez@nps.gov>
Signed-off-by: Laurence Rault <laurence.rault@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 28166: DBRev 23.06.00.045
Tomas Cohen Arazi [Mon, 23 Oct 2023 14:22:42 +0000 (11:22 -0300)]
Bug 28166: DBRev 23.06.00.045

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 28166: (QA follow-up) Fix and tidy tests and code
Nick Clemens [Mon, 25 Sep 2023 13:50:30 +0000 (13:50 +0000)]
Bug 28166: (QA follow-up) Fix and tidy tests and code

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 28166: Optionally add MARC fields to authority search
Mark Hofstetter [Mon, 27 Mar 2023 10:09:32 +0000 (12:09 +0200)]
Bug 28166: Optionally add MARC fields to authority search

adds the same feature to Authority Search as in the "normal" Z39.50 search, to display
arbitrary marc fields in the search results

1. apply patch
2. go to System preferences->Authorities preferences
3. the new option "AdditionalFieldsInZ3950ResultAuthSearch" shows up
4. enter the additional field numbers you want to see eg '001'
5. make an "Authority" search via Z39.50
6. the new new column "Additional fields" will display
7. sign off ;-)

Sponsored-by: Steiermärkische Landesbibliothek
Signed-off-by: Laura Escamilla <laura.escamilla@bywatersolutions.com>
Signed-off-by: Clemens Tubach <clemens.tubach@kit.edu>
Bug 28166: Removed comments and _add_rowdata

Bug 28166: (follow-up) Restore custom fields for biblios

To test:
1 - Add "245$a" to AdditionalFieldsInZ3950ResultSearch preference
2 - Cataloging -> new from z3950
3 - Search and see results have 'additional fields' including the title
4 - Apply other patches
5 - Restart all
6 - Repeat Z39 Additional fields are now blank
7 - Apply thi patch, restart all
8 - Repeat Z39 search. Additional fields are restored

Bug 28166: (QA follow-up) Fix rebase issue

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33810: Opac advanced search fields need aria-labels
Matt Blenkinsop [Tue, 23 May 2023 14:49:08 +0000 (14:49 +0000)]
Bug 33810: Opac advanced search fields need aria-labels

The OPAC advanced search fields need aria-labels to assist with screen reading. This patch adds labels to both the dropdown selects and the text inputs

Signed-off-by: joubu <xxx@example.org>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35124: Incorrect item groups table markup
Owen Leonard [Fri, 20 Oct 2023 17:01:00 +0000 (17:01 +0000)]
Bug 35124: Incorrect item groups table markup

This patch corrects the markup of the item groups table which is found
under the "Item groups" tab on the bibliographip detail page in the
staff interface.

The patch also adds the "NoSort" class to the "actions" column to
prevent it from being sortable.

To test, apply the patch and make sure the "EnableItemGroups" system
preference is enabled.

- In the staff interface, locate a record with items and view the detail
  page.
- Under the "Item groups" tab confirm that the table looks correct: The
  heading labels should be centered bold text.
- You should see sorting indicators on the "Display order" and "Description"
  headings but not on the last one.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31383: (bug 29691 follow-up) Remove get_opac_news_by_id
Jonathan Druart [Mon, 23 Oct 2023 09:19:27 +0000 (11:19 +0200)]
Bug 31383: (bug 29691 follow-up) Remove get_opac_news_by_id

We can simply use get here

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31383: Fix the DB upgrade process
Jonathan Druart [Sat, 21 Oct 2023 06:17:10 +0000 (08:17 +0200)]
Bug 31383: Fix the DB upgrade process

This patch fixes misc4dev/run_tests.pl --run-db-upgrade-only

We need to make sure the column exists before running the query.

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
12 months agoBug 31383: Fix kohastructure.sql
Tomas Cohen Arazi [Fri, 20 Oct 2023 22:12:26 +0000 (19:12 -0300)]
Bug 31383: Fix kohastructure.sql

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33916: (QA follow-up) Correct "Label profiles"
Katrin Fischer [Fri, 20 Oct 2023 20:16:24 +0000 (20:16 +0000)]
Bug 33916: (QA follow-up) Correct "Label profiles"

... to "Printer profiles"

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33916: (QA follow-up) Remove redundant template code
Owen Leonard [Mon, 9 Oct 2023 10:59:40 +0000 (10:59 +0000)]
Bug 33916: (QA follow-up) Remove redundant template code

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33916: Improve translation of title tags: Labels
Owen Leonard [Tue, 6 Jun 2023 15:16:45 +0000 (15:16 +0000)]
Bug 33916: Improve translation of title tags: Labels

This patch label creator templates so that title tags can be more easily
translated.

The patch also makes some minor changes to some templates to improve
consistency between page title, breadcrumb navigation, and page heading.

To test, apply the patch and confirm that the following pages have the
correct title tags:

- Cataloging -> Label creator home
  - Manage -> Label batches
    - Edit ->
      - Click the "Add item(s)" button without entering any barcodes or
        item numbers in the form.
        - Test the search form and search results
  - Manage -> Layouts
  - Manage -> Label templates
  - Manage -> Printer profiles
  - New -> Label batch
  - New -> Layout
  - New -> Label template
  - New -> Printer profile
  - New -> Barcode range
- Cataloging -> Barcode image generator
- Cataloging -> Quick spine label creator

Signed-off-by: Salah Ghedda <salah.ghedda@inLibro.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34824: Added missing colon to 'Title'
Laura Escamilla [Thu, 19 Oct 2023 17:46:49 +0000 (17:46 +0000)]
Bug 34824: Added missing colon to 'Title'

To test:
0. Add budgets, vendors and baskets to acquisitions, if necessary
1. Go to Acquisitions
2. Click 'Search' next to the vendor search box
3. If you don't already have an open basket, create one by clicking New
   > Basket
4. Click 'Add to basket'
5. Click 'From an external source'
6. Search for a title or author (I searched for Shakespeare in the
   author field on the Library of Congress server)
7. To the right of a record (with a title) Click the arrow next to the
   MARC button and choose Order
   --> Notice that in the 'Catalog details' section, all labels are
       followed by a colon except 'Title'
8. Apply the patch and refresh the page. Notice that ’Title’ now has a
   colon.
9. Sign off and have a great day!

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Emily Lamancusa <emily.lamancusa@montgomerycountymd.gov>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34422: (follow-up) Add markup comments
Owen Leonard [Wed, 26 Jul 2023 16:40:39 +0000 (16:40 +0000)]
Bug 34422: (follow-up) Add markup comments

This patch adds comments to the template to highlight the markup
structure.

This patch should have no effect on the page's appearance or
functionality.

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34422: Reindent factets.inc
Owen Leonard [Tue, 17 Oct 2023 16:46:39 +0000 (16:46 +0000)]
Bug 34422: Reindent factets.inc

This patch reindents the staff interface catalog search results facets
template so that it has consistent indentation. These changes should
have no visible effect on the page.

To test, apply the patch and perform a catalog search in the staff
interface.The facets should look the same as always.

Viewing the diff while ignoring whitespace changes should show only
places where a line break was added.

Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34946: Remove the use of event attributes from self checkout and check-in
Owen Leonard [Thu, 28 Sep 2023 12:48:36 +0000 (12:48 +0000)]
Bug 34946: Remove the use of event attributes from self checkout and check-in

This patch removes the use of event attributes from the self checkout
and self check-in templates. These events are defined now along with the
other in-page JS.

To test you must have SelfCheckInModule and WebBasedSelfCheck
preferences enabled. And SelfCheckoutByLogin = cardnumber.

- Navigate to the self checkout interface
  (/cgi-bin/koha/sco/sco-main.pl).
- When the page loads, cursor focus should be automatically placed in
  the barcode field.
- Test the "munge history" feature from Bug 10016:
  [1] Start a web-based self-check session.
  [2] Enter a patron barcode.
  [3] Allow the self-check session to time out.
  [4] Use the back button.  You should get the patron barcode
      entry form; you should not be prompted to resubmit form input.
  [5] Enter a patron barcode, perform some transactions, then
      use the finish button.
  [6] Next, use the back button.  You should get the patron barcode
      entry form.
- Test the updated checkout_confirm function by submitting the "magic"
  barcode for checkout: __KOHA_NEW_CIRC__. The user's session should be
  ended.

- Navigate to the self check-in interface
  (/cgi-bin/koha/sco/sci-main.pl).
- Test the cursor focus and "munge history" feature on this page too.

Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34227: (QA follow-up) Fix translation issue and add a space
Katrin Fischer [Thu, 21 Sep 2023 20:40:22 +0000 (20:40 +0000)]
Bug 34227: (QA follow-up) Fix translation issue and add a space

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34227: Add persistent selections and batch operations to item search
Owen Leonard [Fri, 29 Jan 2021 11:48:24 +0000 (11:48 +0000)]
Bug 34227: Add persistent selections and batch operations to item search

This patch modifies the item search results page so that user selections
are stored in local storage. This allows the user to make selections on
one page of search results, move to another, and continue to make
selections.

The patch also adds the option to send selected items to batch item
modification or batch item deletion.

Changes to the patron search results template have been made to make
some CSS classes more generic so they can be used by both pages.

To test, apply the patch and rebuild the staff interface CSS.
- Log in to the staff interface as a user with permission to perform
  batch item modification and batch item deletion.
- Go to item search and perform a search which will return at
  least two pages of results.
  - On the search results page you should see a new search header
    toolbar with some controls: "Select visible rows," "Clear
    selection," "Export all results to" and "Batch operations"
    (disabled).
 - Without making any selections, confirm that the "Export all results
   to" menu items work correctly to export all results to a CSV or a
   barcode file.
 - Confirm that the "Select visible rows" control works as expected,
   selecting all checkboxes on the current page (and on no other pages)
   - After selecting all checkboxes the search header controls should be
     updated:
     - The "Export all..." button should now show the number of
       selections: "Export selected results (X) to..."
     - The batch operations button should be enabled.
     - There should be a new element labeled "Items selected: X" with a
       "Clear" link.
   - If you uncheck any checkboxes the controls should be updated,
     showing the new count of selected records.
   - Move to the next page of results and confirm that making selections
     on this page works to increment all counters
   - Confirm that the "Export selected.." options work and that your CSV
     and barcode files now contain only the items you selected.
   - Test the batch operations menu:
     - Test that the controls correctly reflect the logged-in user's
       permissions:
       - With permission to batch modify items
       - With permission to batch delete items
       - With both; with neither
     - Both menu options should take you to the correct page and the
       list of submitted items should match your selections.
  - Test that clicking the "Clear" button next to "Items selected" hides
    the items selected box and reverts the "Export all" and "Batch
    operations" buttons to their original state.
    - Page through the search results to confirm that no checkboxes are
      checked.
 - Test that your search selections are really persistent:
   - Navigate away from the page, return to item search, and perform
     another search.
     - The "Item selected" box should still show your previous
       selections.
     - Any items you previously selected which are also in this result
       set should have a checked checkbox.
   - Click the "Edit search" button from the item search results page
     and new search with different parameters.
     - The "Items selected" should still show your previous selections.
 - Log out of Koha and back in. When you perform an item search now,
   there should be no "Item selected"

 - Go to Patrons and test patron searching. As you make selections the
   "Patrons selected" box should be updated correctly and look correct,
   matching the one on the item search page.

Signed-off-by: Sam Lau <samalau@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35110: Authorities editor with JS error when only one tab
Fridolin Somers [Thu, 19 Oct 2023 19:17:57 +0000 (09:17 -1000)]
Bug 35110: Authorities editor with JS error when only one tab

Exactly like Bug 34251 for biblios :
When using the an authorities framework with all fields in the same tab, there is thrown a JS error in selectTab( "#tab0XX_panel" );
This is because no nav tabs are build in authorities/authorities.tt as BIG_LOOP has a length(size) of 1

Test plan :
1) Edit an authority framework, for example 'Meeting Name', to set all sufields in tab 0
   You may use SQL : UPDATE auth_subfield_structure SET tab=0 WHERE authtypecode='MEETI_NAME'
   Don't forget to restart memcached
2) Go to 'Authorities'
3) Click on 'New authority' then 'Meeting Name'
4) Check you don't see any JavaScript error
5) Check you can save

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Bug 35110: (follow-up) Fix comment in addbiblio.tt

Change comment in addbiblio.tt since any biblio framework may use only
one tab.
Also fixes indenting using 4 spaces.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: squashed because follow-up fixes code introduced by the same
author.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35000: Fix OPACMandatoryHoldDates feature in opac-reserve
Marcel de Rooy [Tue, 10 Oct 2023 11:36:45 +0000 (13:36 +0200)]
Bug 35000: Fix OPACMandatoryHoldDates feature in opac-reserve

Somewhere (perhaps after bug 29012) this feature has been broken
somehow.
The fact that we have two inputs for the date and the active one
is one level deeper, requires a few adjustments in the jquery
selectors etc. (Note that two Required lines were visible too.)
The corrected jquery constructs become a bit complexer now.

Test plan:
Enable AllowHoldDateInFuture + OPACAllowHoldDateInFuture.
Set circ rule for book to test with allows item level holds.
Set OPACMandatoryHoldDates to no hold dates.
Place hold on a book in OPAC. Check that More options is collapsed.
(If you force item level holds, it will open.)
Set OPACMandatoryHoldDates to Hold start date.
Refresh place hold page. More options is expanded now.
Click Place hold. You should see an alert and focus goes to start date.
Set OPACMandatoryHoldDates to Hold end date. Repeat place hold.
Set OPACMandatoryHoldDates to Both hold dates. Fill one. Place hold.
Bonus: Place hold on multiple biblios. Repeat former steps.

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 35019: Add a CSRF token when deleting news
Emily-Rose Francoeur [Tue, 10 Oct 2023 17:30:43 +0000 (13:30 -0400)]
Bug 35019: Add a CSRF token when deleting news

I add a CSRF token as a parameter in the link for deleting a news
entry, which solves the problem.

TEST PLAN
1) Apply the patch
2) Go to "Tools > News > New entry"
3) "Display location" should be set to "Staff interface"
4) Fill in the fields
5) Return to the homepage
6) Delete the created news entry
7) The "Additional contents" page is displayed, and the deleted news
   entry no longer appears
8) Return to the homepage; the news entry no longer displays

Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Edit: adapted the template change to latest master inline
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 34954: Fixed typo to 'dateexpiry'
Laura Escamilla [Thu, 19 Oct 2023 18:25:51 +0000 (18:25 +0000)]
Bug 34954: Fixed typo to 'dateexpiry'

To test:

1. In KTD use grep -rn --exclude=*.po "datexpiry" *
2. Notice that the four locations below are showing the typo:
    1. git add koha-tmpl/intranet-tmpl/prog/en/modules/tools/import_borrowers.tt
    2. git add misc/release_notes/release_notes_18_05_00.html
    3. git add misc/release_notes/release_notes_18_05_00.md
    4. git add t/db_dependent/Koha/Patrons/Import.t
3. Apply patch. Repeat step 1.
4. Notice that no results show. All instances of the typo have been fixed to dateexpiry.
5. Sign off and have a great day :)

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: DBRev 23.06.00.044
Tomas Cohen Arazi [Fri, 20 Oct 2023 18:54:05 +0000 (15:54 -0300)]
Bug 25393: DBRev 23.06.00.044

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: (QA follow-up) Tidy
Nick Clemens [Wed, 11 Oct 2023 14:40:37 +0000 (14:40 +0000)]
Bug 25393: (QA follow-up) Tidy

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: (QA follow-up) simplify auto_renew condition
Nick Clemens [Wed, 11 Oct 2023 14:00:08 +0000 (14:00 +0000)]
Bug 25393: (QA follow-up) simplify auto_renew condition

_CanBookBeAutoRenewed will only ever return 'auto_too_soon' not 'too_soon' so we can do a simple equality check

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: (QA follow-up) Report 'too_soon' errors from cron
Nick Clemens [Wed, 11 Oct 2023 13:55:42 +0000 (13:55 +0000)]
Bug 25393: (QA follow-up) Report 'too_soon' errors from cron

This patchset made it possible for 'too_soon' to be returned instead of 'auto_too_soon' - we just need to take that into account in the error listing

To test:
1 - Set circ rule to no renewal before 2, no auto renewal before 3
2 - Checkout 3 items with auto renew, due tomorrow, in 2 days, in 3 days
3 - perl misc/cronjobs/automatic_renewals.pl -v
4 - Confirm 1 can be renewed, 1 is too soon, 1 is auto too soon

Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Update Circulation.t
Pedro Amorim [Thu, 17 Aug 2023 11:05:20 +0000 (11:05 +0000)]
Bug 25393: Update Circulation.t

prove t/db_dependent/Circulation.t

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Tests - Variable renaming
Pedro Amorim [Wed, 16 Aug 2023 11:27:06 +0000 (11:27 +0000)]
Bug 25393: Tests - Variable renaming

issue_4 is an auto_renew issue, rename to auto_renew_issue

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Update CanBookBeRenewed pod with bug 25758 changes
Pedro Amorim [Wed, 16 Aug 2023 10:55:16 +0000 (10:55 +0000)]
Bug 25393: Update CanBookBeRenewed pod with bug 25758 changes

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Auto renewals logic reimplementation:
Pedro Amorim [Fri, 11 Aug 2023 14:20:48 +0000 (14:20 +0000)]
Bug 25393: Auto renewals logic reimplementation:

Check if it's too soon for a manual renewal  even if 'Automatic renewals' is enabled
Allow for a manual renewal even if it's too soon for an automatic renewal

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: atomicupdate file
Pedro Amorim [Fri, 11 Aug 2023 14:16:51 +0000 (14:16 +0000)]
Bug 25393: atomicupdate file

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Distinguish between auto or normal renewals in GetSoonestRenewDate
Pedro Amorim [Fri, 11 Aug 2023 13:37:08 +0000 (13:37 +0000)]
Bug 25393: Distinguish between auto or normal renewals in GetSoonestRenewDate

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: UI adjustments
Pedro Amorim [Fri, 11 Aug 2023 13:35:55 +0000 (13:35 +0000)]
Bug 25393: UI adjustments

This updates the information messages that are displayed in Staff, OPAC and SCO
regarding renewals and if the item is up for automatic renewal or not.

Add issues.auto_renew to svc/checkouts endpoint response

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Use new noautorenewalbefore circulation rule in _CanBookBeAutoRenewed
Pedro Amorim [Fri, 11 Aug 2023 13:43:31 +0000 (13:43 +0000)]
Bug 25393: Use new noautorenewalbefore circulation rule in _CanBookBeAutoRenewed

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 25393: Add new noautorenewalbefore circulation rule
Pedro Amorim [Thu, 10 Aug 2023 15:44:05 +0000 (15:44 +0000)]
Bug 25393: Add new noautorenewalbefore circulation rule

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31357: DBRev 23.06.00.043
Tomas Cohen Arazi [Fri, 20 Oct 2023 18:13:23 +0000 (15:13 -0300)]
Bug 31357: DBRev 23.06.00.043

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 31357: Separate holds history from intranetreadinghistory
Kyle M Hall [Thu, 29 Jun 2023 18:17:09 +0000 (14:17 -0400)]
Bug 31357: Separate holds history from intranetreadinghistory

Currently the system preference intranetreadinghistory determines visibility of both circulation history and holds history tabs in the patron record.  It would be helpful to allow the option of setting each of those independently.

Specifically, libraries have requested the option of being able to view the holds history in a patron record without having to enable viewing of the circulation history.

Test Plan:
1) Apply this patch
2) Restart all the things!
3) Run updatadatabase.pl
4) Verify the new syspref intranetReadingHistoryHolds has the same value
   as the existing syspref intranetreadinghistory
5) Disable intranetreadinghistory, enable intranetReadingHistoryHolds
6) Verify you can view a patron's holds history but not reading history

Signed-off-by: Sam Lau <samalau@gmail.com>
JD amended patch:
* renamed syspref intranetReadingHistoryHolds => IntranetReadingHistoryHolds
* tidy

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 14092: (QA follow-up) Avoid fiddling with the hash in the template
Katrin Fischer [Fri, 22 Sep 2023 14:11:23 +0000 (14:11 +0000)]
Bug 14092: (QA follow-up) Avoid fiddling with the hash in the template

prove t/db_dependent/Acquisition.t

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 14092: Add 'any status' option to acq order search form
Katrin Fischer [Fri, 15 Sep 2023 17:09:00 +0000 (17:09 +0000)]
Bug 14092: Add 'any status' option to acq order search form

Sometimes it's really helpful to see all orders for a basket, a
vendor or a standing order, including the cancelled ones.
Currently this is not possible, as we have search options for
every single status and one for "any except cancelled",
but no "Any status" option.

This patch adds the "Any status" option. The sometimes
appearing empty entry is updated to "Any status except cancelled"
as this is what it does.

Testing data:
* Requires multiple order lines with different order status
* Must include at least one order line with status 'cancelled'

To test:
* Go to acquisitions
* Open the advanced search page from the top search options:
  Order search > config icon > Advanced search link
* Verify the status pull down looks as described above
* Apply patch
* Verify there is now an "Any status" option in the pull down
* Try searches for different status, including "Any status"
* Verify the results are as expected
* Create a new basket
* Create an order line by 'From an existing order (copy)'
* Verify the search form there also works as expected

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 26994: List names in alphabetical order in Suggestion filter
Shi Yao Wang [Wed, 26 Jul 2023 16:58:39 +0000 (12:58 -0400)]
Bug 26994: List names in alphabetical order in Suggestion filter

Display list of names in alphabetical order when using the Suggestion information filter in Suggestions management

Test plan:
1. Add different purchase suggestions from various patron's names
2. Go to Acquisition > Suggestions
3. Click on the Suggestion information filters on the left-hand side
4. Use one of these drop-down menus: "Suggested by" or, "Managed by" or "Accepted by"
--> notice the list of names in menus, names aren't displayed from A to Z
5. Apply patch and refresh page
6. Redo step 4
--> notice now it's sorted alphabetically

Signed-off-by: Kelly <kelly@bywatersolutions.com>
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: DBRev 23.06.00.042
Tomas Cohen Arazi [Fri, 20 Oct 2023 18:08:23 +0000 (15:08 -0300)]
Bug 33845: DBRev 23.06.00.042

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: Tidy and add update
Nick Clemens [Fri, 29 Sep 2023 13:22:17 +0000 (13:22 +0000)]
Bug 33845: Tidy and add update

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: (follow-up) Rename config and add a second configuration section
Nick Clemens [Tue, 6 Jun 2023 12:40:50 +0000 (12:40 +0000)]
Bug 33845: (follow-up) Rename config and add a second configuration section

This patch renames the table in the columns configuration to match the id
used in the templates

It also adds a section for the moremember table to alllow config of each page as we do for issues

Lastly we add the table controls as they exist on the issues tables

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: (follow-up) escape hold notes for display
Nick Clemens [Fri, 26 May 2023 12:41:05 +0000 (12:41 +0000)]
Bug 33845: (follow-up) escape hold notes for display

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: Use table settings and hide note by default
Nick Clemens [Fri, 26 May 2023 12:23:56 +0000 (12:23 +0000)]
Bug 33845: Use table settings and hide note by default

This patch updates the holds table on circulation and moremembers to use
table settings and hides the note column by default to preserve existing views

To test:
 1 - Apply patch
 2 - Enable system preferece 'OpacHoldNotes'
 3 - Place a hold on the opac and enter a note
 4 - Confirm it shows on the patron's page
 5 - View the patron in staff client
 6 - Ensure the holds note does not display on Holds tab in Checkout or Details view
 7 - Go to Admin->Table settings->Circulation
 8 - Under holds_table confirm 'notes' is hidden by default
 9 - Uncheck the box
10 - Refresh patron pages and confirm hold note shows

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: Display hold notes in OPAC
Nick Clemens [Fri, 26 May 2023 11:02:51 +0000 (11:02 +0000)]
Bug 33845: Display hold notes in OPAC

This patch adds the holds notes to the patron's account holds list

1 - Ensure system preference 'OpacHoldNotes' is enabled
2 - Place a hold on the OPAC and add a note
3 - Confirm the note displays on the Summary page Holds tab of 'Your account'
4 - In staff client, disable system preference 'OpacHoldNotes'
5 - View Holds on patron's account in opac
6 - Confirm the note no longer shows

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 33845: Display hold notes in staff client circulation paes
Nick Clemens [Fri, 26 May 2023 10:58:33 +0000 (10:58 +0000)]
Bug 33845: Display hold notes in staff client circulation paes

This patch adds the reservenotes column to svc holds, and ensures they display on
circulation and memeber details

To test:
1 - Enable system preference 'OpacHoldNotes'
2 - Place a hold for a ptron via the OPAC
3 - View the patron in the staff client
4 - Click on the 'Holds' tab
5 - Ensure you can see the hold note
6 - Click on the 'Circulation' tab on the left
7 - Click the 'Holds' tab and confirm you can view the note

Signed-off-by: Andrew Fuerste-Henry <andrewfh@dubcolib.org>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
12 months agoBug 15222: Add to cart option/other list options missing from OPAC lists display
Owen Leonard [Tue, 29 Aug 2023 16:23:52 +0000 (16:23 +0000)]
Bug 15222: Add to cart option/other list options missing from OPAC lists display

This patch adds the option to add titles to the cart or a list from the
view of a list's contents.

To test you should have at least one public list with titles added.
Apply the patch and go to the OPAC.

- View a public list.
- In the toolbar at the top of the table of titles you should see "Add
  to cart" and "Add to list." The controls should be disabled.
- Check checkboxes for one or more titles on the list.
- The controls should now be enabled.
- Clicking the "Add to cart" button should add the selected titles to
  the cart.
- If you are not logged into the OPAC, clicking the "Add to list" button
  should trigger an alert, "You must be logged in..."
- Log in to the OPAC and view the list again.
- Confirm that the "Add to list" control should trigger a popup allowing
  you to add your selected titles to an existing or a new list.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>