Commit graph

5082 commits

Author SHA1 Message Date
5266069016
Bug 30984: (QA follow-up) Switch from mediumtext to varchar(255)
My research indeicates that tinytext of less than 40 bytes uses
about the same storage as a varchar(255). Also, using
a TEXT field in a complex query may create a temp table.
varchar fields are also more efficient for sorting on.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-08-01 09:21:38 -03:00
18fd0c89cf
Bug 30984: Action logs should log the cronjob script name that generated the given log
When something is changed by a cronjob, and that entity is logged via action logs, we can know what changed, and that it was via a cronjob, but we cannot necessarily know which cronjob made that change. The closest we can come is to find the action logs for the cronjob module which ran before the change which is by no means reliable assuming the CronLog is even enabled.

We should add a new column to action logs to store the name of the script ran for any action logs where the interface is "cron".

Test plan:
1) Apply this patch
2) Run updatedatabase.pl
3) Enable all the Log/Logging sysprefs
4) Run some cronjobs that will generate action logs
5) Note the new action_logs column "script" contains the filename of the
   cronjob that caused the change.

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

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-08-01 09:21:38 -03:00
a549829701
Bug 14364: DBRev 22.06.00.025
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 16:06:12 -03:00
51cef8c0ec
Bug 29012: DBRev 22.06.00.024
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 16:04:12 -03:00
Katrin Fischer
4bbde3bde6
Bug 14364: (QA follow-up) Fix capitalization
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 16:00:38 -03:00
ba7153a762
Bug 14364: Fix spelling and tests
Moved the installer to pl file
Adjusted capitalization / reply-to
Fix tests by importing needed fuction and adjusting a wrong call

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 16:00:34 -03:00
482f3f1630
Bug 14364: (follow-up) Cleanup duplicate code and adjust notices and prefs
This patch removes a duplicated stanza left form moving routine
Changes the routines to use inbound_library_address
Improves the display if the system preferences
Updates the update file
Moves smaple notice

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 16:00:26 -03:00
Kyle M Hall
6a770ace34
Bug 14364: Allow automatically canceled expired waiting holds to fill the next hold
Right now, if a library automatically cancels expired waiting holds, a
librarian must still re-checkin an item to trap the next available hold
for that item. It would be better if the next hold was automatically
trapped and the librarians receive an email notification so they can
make any changes to the item if need be ( hold area, hold slip in item,
etc ).

Test Plan:
 1) Apply this patch
 2) Run updatedatabase.pl
 3) Create a record with one item
 4) Place two holds on that record
 5) Check in the item and set it to waiting for the first patron
 6) Set ReservesMaxPickUpDelay to 1
 7) Enable ExpireReservesMaxPickUpDelay
 8) Enable ExpireReservesAutoFill
 9) Set an email address in ExpireReservesAutoFillEmail
10) Modify the holds waitingdate to be in the past
11) Run misc/cronjobs/holds/cancel_expired_holds.pl
12) Note the hold is now waiting for the next patron
12) Note a waiting hold notification email was sent to that patron
13) Note a hold changed notification email was sent to the library

Signed-off-by: Victoria Faafia <vfaafia29@gmail.com>

Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 16:00:17 -03:00
Kevin Carnes
cf397ac3bc
Bug 29012: Add default values for blank circulation rules that weren't saved to the database
There are 5 fields that are not set if no value is provided when saving/editing a rule in Administration->Circulation and fines rules
- issuelength
- hardduedate
- unseenrenewalsallowed
- rentaldiscount
- decreaseloanholds

This is problematic because it gives the impression these rules are set as blank, but in reality they don't exist and the rule will fal back to the higher level

To test:
1 - Set a rule for
    Patron category: Teacher
    Itemtype: All
    Hard due date: (Today)
    Lona period: 10
2 - Set a rule for
    Patron category: Teacher
    Itemtype: Books
    Hard due date: (leave blank)
    Loan period: 10
3 - Expected behaviour is Book item will checkout to teacher for 10 days, all other types will be due yesterday at 25:59:00
4 - Checkout an non-book item type to teacher
5 - Hard due date applies
6 - Checkout a 'book' item type to teacher
7 - Hard due date applies - FAIL

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:44:39 -03:00
5f831bcf52
Bug 22456: DBRev 22.06.00.023
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:33:13 -03:00
d3ebbb88be
Bug 22456: Add waiting_hold_cancellation circulation rule
This patch adds handling for the waiting_hold_cancellation circulation
rule. It is set no 'No' by default in the atomic update, if not
previously set.

Handling in the rules editor is added, in its own section.

To test:
1. Apply this patch
2. Run:
   $ updatedatabase
=> SUCCESS: All good
3. Verify that the syspref is set:
   $ koha-mysql kohadev
   > SELECT * FROM circulation_rules WHERE rule_name='waiting_hold_cancellation';
=> SUCCESS: Set to 0
4. Play with the rules editor, changing things back and forth, things
   should work, including library-specific and global/defualt settings.
=> SUCCESS: It works
=> SUCCESS: Texts are idiomatic
5. Sign off :-D

Sponsored-by: Montgomery County Public Libraries

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>
2022-07-29 15:28:13 -03:00
a2dbdc6fc4
Bug 22456: Add cancellation request table
This patch adds a new table, for storing holds cancellation requests,
and managing them afterwards.

The *hold_id* attribute is not made a FK on the reserves table because
of the old_reserves thing we still do (see bug 25260 for a discussion
about it).

Sponsored-by: Montgomery County Public Libraries

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>
2022-07-29 15:28:07 -03:00
c02dae9380
Bug 30650: DBRev 22.06.00.022
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:20:27 -03:00
15365b150a
Bug 30650: Add missing name to notice added by database update
The notice was missing the name, which gives you an error when
you try to save changes in Koha.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:07:09 -03:00
0f0842465b
Bug 30650: Split yml on several lines to help translation
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:07:01 -03:00
88c600e3de
Bug 30650: Fix some typos
* Curbside pickups are not enabled for your location. = library
* Pickup Date/Time = capitalization
* ... it is an holiday = it is a holiday. (multiple)
* Deliver Date/Time = capitalization
* There is no waiting holds for this patron at this location. = There are no... at this library
* No pickup time define for this day. = defined (multiple)
* You don't have waiting holds at this location = library

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:01:45 -03:00
bcf690e69e
Bug 30650: Split the permission
We actually want one permission to manage the administration page, and
one for the circulation module.

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:00:56 -03:00
d01c0c7fa3
Bug 30650: DB - Add policy.enable_waiting_holds_only
Sponsored-by: Association KohaLa - https://koha-fr.org/

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:00:26 -03:00
00da3ec0a3
Bug 30650: Notify the patron when a new curbside pickup is created
Sponsored-by: Association KohaLa - https://koha-fr.org/

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 15:00:22 -03:00
08ad52b5e9
Bug 30650: Adjust atomic update
Take into account existing installs using the plugins

Sponsored-by: Association KohaLa - https://koha-fr.org/

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 14:59:36 -03:00
047ca189de
Bug 30650: Add new permission manage_curbside_pickups
Sponsored-by: Association KohaLa - https://koha-fr.org/

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 14:59:20 -03:00
d469bb3231
Bug 30650: Add the CurbsidePickup syspref
Sponsored-by: Association KohaLa - https://koha-fr.org/

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 14:59:16 -03:00
17812b522f
Bug 30650: DB changes
Sponsored-by: Association KohaLa - https://koha-fr.org/

Signed-off-by: Koha Team University Lyon 3 <koha@univ-lyon3.fr>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-29 14:59:07 -03:00
808e484867
Bug 31157: DBRev 22.06.00.021
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 15:18:06 -03:00
eef6b0c022
Bug 31157: (QA follow-up) Update descriptions and wording of configuration options
Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 15:14:43 -03:00
19fc6220fa
Bug 31157: Allow selection for overdue from address in the UI
This patch adds a new system preference to allow systems librarians the
option to pick wich address to use for overdues notices.

We default to 'cron' to allow existing uses of '--frombranch' on the
command line to continue to function but now allow end users to override
this option via the new OverdueNoticeFrom preference.

Signed-off-by: Caroline Cyr La Rose <caroline.cyr-la-rose@inlibro.com>

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 15:14:42 -03:00
a85d08c765
Bug 31086: DBRev 22.06.00.020
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 14:41:15 -03:00
efd2dfdaae
Bug 31086: (QA follow-up) Use plain SQL in db_rev
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 14:39:58 -03:00
0704102bc8
Bug 31086: Notify of problematic holds during upgrade
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 14:19:19 -03:00
5fa510b431
Bug 31086: (QA follow-up) Improve atomicupdate to be more resilient
We now populate the branchcode field with the first available branch on
the system if we find it to be NULL before we set the NOT NULL

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 14:19:18 -03:00
d731943c24
Bug 31086: (QA follow-up) Remove DEFAULT from column
There's no need to have a default here, and in fact it doesn't make
sense.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-22 14:19:18 -03:00
1565efe8f3
Bug 31086: DB update
This update sets branchcode as NOT NULL
default set to 0 as borrowernumber is

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>
2022-07-22 14:19:12 -03:00
7b03771eb2
Bug 30933: DBRev 22.06.00.019
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-20 09:16:47 -03:00
fc5d9c013e
Bug 30933: Database revision (new pref)
Adds pref ListOwnerDesignated.
Generalize description of ListOwnershipUponPatronDeletion a bit.

Test plan:
Run updatedatabase.

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>
2022-07-20 09:04:06 -03:00
7d65cd5db4
Bug 11889: DBRev 22.06.00.018
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-19 11:21:00 -03:00
824352d503
Bug 11889: (QA follow-up) Convert to new atomicupdate style
The first patch contained an old .sql atomic update.

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>
2022-07-19 11:00:15 -03:00
872b1908f8
Bug 11889: (QA follow-up) Add entry to sysprefs.sql
Also changes the insert in the atomic update to an insert ignore, as
we generally do for inserting sysprefs (see updatedatabase).

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Cédric Vita <cedric.vita@dracenie.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-19 11:00:15 -03:00
8aaa728aeb
Bug 29632: (QA follow-up) Add ENUM value to kohastructure.sql :-D
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-18 12:09:41 -03:00
ef32afd5ea
Bug 29632: DBRev 22.06.00.017
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-18 12:05:40 -03:00
b8b8a62f11
Bug 29632: Don't sort cn-sort numerically
When defining our sort fields in we defined all as 'numeric'

For other string containing numbers this is likely correct, however,
for callnumbers it is not. e.g. E45 should sort before E7

This patch adds a new 'callnumber' type and deifnes this for cn-sort and
adds to the field maping a sort without numeric set

To test:
0 - Be using ES with Koha
1 - On records with single item, add callnumbers:
    VA65 E7 R63 1984
    VA65 E7 T35 1990
    VA65 E45 R67 1985
2 - Add public note 'shrimp' or something to make them easily searchable as a group
3 - Search for 'shrimp', sort by callnumber
4 - Note E45 comes last, it should come first
5 - Apply patch
6 - Reset ES mappings
7 - Reindex ES
8 - Repeat search
9 - Sorting should be correct when set to callnumber

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Michal Urban <michalurban177@gmail.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-18 11:21:47 -03:00
Katrin Fischer
9802273b1f
Bug 25449: (QA follow-up) Set items.itype to mandatory by default (UNIMARC)
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-18 10:14:26 -03:00
ac54145e2a
Bug 25449: Set items.itype mandatory by default
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>
2022-07-18 10:14:21 -03:00
70ff3607b5
Bug 28854: Fix permissions problem
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 19:09:39 -03:00
c9aa31d166
Bug 28854: DBRev 22.06.00.016
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 16:22:21 -03:00
475486781f
Bug 28854: (follow-up) Replace unique constraint in return claims
This patch fixes the failing test for the return claims api.  We add a
new unique constraint to replace the one we removed earlier in the
patchset. One should not be able to create a duplicate return claim for
the same issue of an item.

Test plan
1) Run the database update
2) Confirm that t/db_dependent/api/v1/return_claims.t now passes
3) Confirm that t/db_dependent/api/v1/items.t continues to pass
4) Bonus points, confirm that bundle checkin still works when items are
   missing

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 14:53:28 -03:00
5476be0c90
Bug 28854: DBRev 22.06.00.015
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 12:21:05 -03:00
db48209356
Bug 28854: (QA follow-up) Fix DB revision for AV's above 10
The authorised_value field is a varchar and so 'MAX' will sort '9' above
'10' and cause issues if you have more than 9 AV values already for LOST
or NOT_LOAN.

This patch adds a 'CAST' to the field so we can use MAX correctly.

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 10:36:15 -03:00
5b4e36b39a
Bug 28854: Add default AV and Syspref values
This patch adds the new AV and System Preferences to the installer.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 10:35:51 -03:00
cc23b3b918
Bug 28854: (QA follow-up) Fix QA tool complaints
* Typo in code comment
* Permissions on atomicupdate
* Missing TT filter in template
* Spelling in template

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

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 10:35:45 -03:00
d7a339d8b7
Bug 28854: Drop unique index on issue_id in return claims
With the introduction of circulating items within a bundle set, we can
now loose multiple items from the bundle from the same issue.

Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
2022-07-13 10:35:29 -03:00