Librarians often copy and paste patron data, including phone numbers. SMS phone numbers are now being validated to conform to the E.164 specification. It would be nice to try to normalize that data by stripping non-numeric data from the paste (i.e. dashes, parens, etc ).
Test Plan:
1) Apply this patch
2) On the staff side, Attempt to enter invalid characters the SMS number field
3) Note you cannot enter invalid characters
4) Attempt to paste a phone number with invalid characters
5) Note those characters are removed on paste
6) Repeat these steps on the OPAC
Signed-off-by: Liz Rea <wizzyrea@gmail.com>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 115f4f2045)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
To test:
1 - Add a record with a unique publisher "Supercalifragilistic" in the
264 b field
2 - Search for the value
3 - Record not found
4 - Apply patch (may need ot copy the .xml file into koha install)
5 - Reindex all the things
6 - Search for the value
7 - Success!
Signed-off-by: Felicia Martin <felicia.martin@dncr.nh.gov>
Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 3599e57bf6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch tweaks the display of totals on the OPAC 'Fines and charges'
page to clarify between the totals before and after applying credits.
Test Plan:
1) Add some debts and credits to a patrons account
2) Look at the 'Fines and charges' page before applying the patch
3) Look at the 'Fines and charges' page after applying the patch
4) Varify the new layout is an improvment or not
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nadine Pierre <nadine.pierre@inLibro.com>
Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 49275f27d4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch tweaks the display of totals on the fines payments page to
clarify between the totals before and after applying credits.
Test Plan:
1) Add some debts and credits to a patrons account
2) Look at the pay page before applying the patch
3) Look at the pay page after applying the patch
4) Verify the new layout is an improvment or not
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Maryse Simard <maryse.simard@inlibro.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 7c5e7ca9c4)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
When uploading KOC files the processing of transactions needs
to happen in a separate second step. This is why the success
message "Your file was processed" was found to be misleading.
This patch changes it to the wording suggested by Benjamin
Daeuber in the original bug report. Thx!
To test:
- Create a KOC file either manually or by downloading it
from the plugin
- Upload the KOC file into Koha using Circulation >
Upload offline circulation file (.koc)
- Verify the new message is clear and has no typos :)
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 286f151009)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 4f90d7ecc7)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This forces the tests to use the new changed_fields
field.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 5c5a261e4e)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 286ffd5f2f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This will use changed_fields to know whether a
borrower field is actually modified.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 30fd4eb1a5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
It is best to regenerate these from scratch.
On a kohadevbox:
$ misc/devel/update_dbix_class_files.pl --db_name=koha_kohadev --db_user=koha_kohadev --db_passwd=password
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 1af2698b84)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This modifies a fresh install structure, and provides
an atomic update.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit d102165f8d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Rather than try to use -y and symbols, since
older versions of pwgen don't have the -y,
Purposefully just shorten the generated
password to 15 characters and put @ on the end.
This avoids nasty shell globbing, fixes the
MySQL requiring a symbol by default in the
newer versions.
While @ at the end is less secure, the
password portion providing security is
still 15 characters long.
Before patch, password should have potentially
multiple ugly symbols in it.
After patch, when creating an instance, the
password will have an @ at the end of it.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 6a6866afa3)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
A library appears to be able to place a second item level hold on an item a patron already has on hold if
A) AllowHoldPolicyOverride is enabled
and
B) the circ rule allow for multple item level holds.
Once the patron submits the hold requests though, the hold does not get stored in the database.
Because allowing two item level holds for the same item makes no sense, we should not allow
this attempt to take place, even if AllowHoldPolicyOverride is enabled.
Test Plan:
1) Enable AllowHoldPolicyOverride
2) Set up circ rules to allow for multiple item level holds on one record
3) Place an item level hold on a record
4) Note you can force placing a second item hold on that reocrd
5) Attempt to do so, it will not actually work
6) Apply this patch
7) Note you can no longer place another item level hold for the same item
you just placed an item-level hold on
8) Note you can still force holds that contravene the circ rules for
any and all other reasons
9) Test with record level holds
10) Test by placing multiple holds from search results
Signed-off-by: Martha Fuerst <mfurest@hmcpl.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Simple fix for a regression. Works as expected.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 2c5e9bed7d)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch fixes a bug from Bug 15221 and hopefully also makes it so that the alert flag
is suppressed when checked_in_ok is set and an item is not checked out.
To test:
0) Create patron in web interface with a cardnumber and userid of "staff" with a password
that matches the account in SIPconfig.xml. Also set their branch to CPL
(also matching SIPconfig.xml).
1) Create an item with a barcode of 'test'
2) Choose a patron to check out to and record their borrowernumber
In one terminal:
3) cd to your git directory (e.g. /home/koha/koha)
4) perl ./C4/SIP/SIPServer.pm ~/koha-dev/etc/SIPconfig.xml
In another terminal:
5) cd to your git directory (e.g. /home/koha/koha)
6) perl ./misc/sip_cli_emulator.pl -l CPL -su staff -sp <password> --port=6001 --address=localhost --item test -m checkin --patron <borrowernumber>
NOTE: You need to replace <borrowernumber> with the borrowernumber from Step 2, and <password> with the password from Step 0.
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Matha Fuerst <mfuerst@hmcpl.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 97af85525f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
We had a mix of q||, q{} and '' in this one script. This followup just
makes them all conform to our standard style of q{}.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 4dc64b4b12)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This gets rid of the warning "Use of uninitialized value $auto_share
in string ne at [...]" by initializing the variable with empty string.
Test plan:
1) Go to page cgi-bin/koha/admin/share_content.pl and unselect "Auto
subscription sharing". Click "Save".
2) Check plack-error.log and notice the warning "Use of uninitialized
value $auto_share [...]"
3) Apply the patch and repeat the previous steps but now this time the
warning is gone in plack-error.log.
4) Make sure the AutoShareWithMana syspref with and without the patch
is in unselected state after clicking "Save".
Sponsored-by: The National Library of Finland
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 0df3fc3dae)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Test 'AnonymiseIssueHistory should not return any error if success' is obsolete,
previous statement will explode if something went wrong.
Test plan :
Run t/db_dependent/Koha/Patrons.t
Signed-off-by: Arthur Bousquet <arthur.bousquet@inlibro.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit ed7b376096)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
In Koha::Patrons::search_patrons_to_anonymise() old issues already affected to the anonymous patron should be avoided. It is useless and can impact performance.
It is already working if AnymousPatron is not defined or 0 because of :
'old_issues.borrowernumber' => { 'not' => undef }
In theory the anymous patron should have privacy=0 but in case its not it should be explicitly avoided.
Test plan :
Run t/db_dependent/Koha/Patrons.t
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 66975364b6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Add a dedicated UT and correct a test return value
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 48e5713e6f)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit d08e776cf1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Control fields are not handled correctly by Koha::SimpleMARC when
comparaison (with or without regex) is done.
Which means we did not support something like:
Do something if control field 008 equals or matches "a string"
Test plan:
Create a new MARC modification template and a new action, like:
Add new field 100$a with value "foo bar" if 008 (or any other control
fields) matches (or equals) a regex
Then use the record mofication tool and confirm that the new field is
create if the regex matches 008 of the bib record
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit c59586aebe)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit f6009342a9)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
When logged into the staff client with an account with full circulate permissions (and therefore including the manage_checkout_notes permission) an error occurs when clicking on the Checkout notes pending link. The account is logged out automatically with the message: "Error: you do not have permission to view this page. Log in as a different user".
The same error occurs for both the link on the home page dashboard and from the Circulation module button. Works as expected if Superlibrarian permission is set.
This is just a typo in perl script : circulation instead of circulate
Test plan :
1) Set preference "AllowCheckoutNotes" to "Allow"
2) Create a user with only permissions "catalogue" and "circulate > manage_checkout_notes"
3) Loggin with this user
4) Go to "Circulation" home page
5) Click on "Checkout notes"
6) You should be allowed to access
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 206498dc55)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
To test:
1) Go to Administration > MARC bibliographic framework
2) On a line click Actions > MARC structure
3) Note the dropdowns for each tag are: Edit, Subfields, Delete
4) Apply patch
5) Reload and note dropdowns are: Edit tag, View subfields, Edit subfields, Delete
6) Confirm options do what is selected
Signed-off-by: Bin Wen <bin.wen@inlibro.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 6b6dc7bc79)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Since 18.11, when viewing a framework field clicking on Actions >
Subfields goes to subfields edition instead of subfields table view.
This is because link contains op=add_form.
This is is also missing /cgi-bin/koha/admin.
Test plan :
1) Go to Administration > MARC bibliographic framework
2) On a line click Actions > MARC structure
3) On a line click Actions > Subfields
4) You see subfields table
5) Click on Edit subfields
6) You see subfields edition tabs
Signed-off-by: Owen Leonard <oleonard@myacpl.org>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 49e0384f10)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 12a9dfb659)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
The MARC modification template action edit buton does not correctly
handle variable escaping.
Assigning a JS variable containing the JSON representation of the
hashref will make the processing much more easier.
Test plan:
Create a MARC Modification Template with several actions.
In the description you should use the following characters, to try to
break this patch: \ ' " \n \r
(not sure what we handled \n and \r)
Then edit the action, modify and save again.
Signed-off-by: Mark Tompsett <mtompset@hotmail.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 7a80483a13)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
When updating (patron modification), the field should not be required.
Test plan:
Check patron modification on opac.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 6dc8306b58)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
It introduced a regression in the patron's self modification feature.
Patron's details are no longer modificable, the screen displays
"You have not filled out all required fields. Please fill in all missing
fields and resubmit."
Test plan:
- Set GDPR_Policy to either Enforced or Permissive
- Set PatronSelfRegistrationBorrowerMandatoryField to empty
- Set OPACPatronDetails to Allow
- Log into the OPAC
- Accept the GDPR screen
- Go to opac-memberentry.pl, change something, submit modification
request
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 3b14f7d636)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch makes minor corrections to the template for OPAC search
results. These corrections fix errors returned by the HTML validator.
To reproduce the problem, make sure holds and/or tags are enabled in the
OPAC. Perform a search in the OPAC which will return multiple results.
Run the page through the W3C validation service:
https://validator.w3.org. Either by pasting in the URL for the search
results (if web accessible) or by viewing source, copying, and pasting
into "Validate by Direct Input."
This patch addresses one specific error:
- "Element div not allowed as child of element span in this context."
To test, apply the patch and try again to reproduce the validation
errors. Those errors should no longer be present. There should be no
visible change to the search results view.
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>
(cherry picked from commit 48259267f6)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
The link from the patron name in the circulation > overdues report
shouldn't point to the reserves tab, as this report is about checkouts.
The patch restores the behaviour as it was in 17.11.
To test:
- Make sure you have a patron account with overdue items
- If you don't have one, check out an item with specified due date in the
past
- Go to Circulation > Overdues
- Veriy the overdue shows
- Click on the patron name that is linked
- Verify you go to the checkouts tab in patron account with holds tab selected
- Apply patch
- Reload Overdues report
- Verify the link now leads to the Details tab with the checkouts tab in front
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit d018953ca1)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Test Plan:
1) Checkout an item to a patron
2) Ensure the item has a replacement cost (or itemtype has default)
3) Ensure patrons are charged when items lost
4) Mark the item lost
5) Confirm patron has a fine
6) Write off the fine
7) Delete the patron
8) Check in the item
9) Note the internal server error
10) Apply this patch
11) Repeat steps 1-8
12) Note there is no internal server error!
13) prove t/db_dependent/Circulation.t
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>
(cherry picked from commit d2a2e4a8d5)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This patch makes a few minor improvements to Circulation.t
1) Adds a name to some of the scoped blocks by converting them to
subtests.
2) Adds output messages to some tests where they were missing.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 90d4e3a672)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
This resolves:
DBIx::Class::Storage::txn_rollback(): A txn_rollback in nested transaction is ineffective! (depth 1)
Removing unneeded subtest txn's. We should probably add them everywhere or
just at global level.
Test plan:
With all three patches applied, run Circulation.t a few times.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit c7a707d60b)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Removed trailing comma for last sub too.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 568d3f82cb)
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>