Aleisha Amohia [Thu, 13 Feb 2020 21:23:58 +0000 (21:23 +0000)]
Bug 8595: Rename 'host item' to 'host record'
To test:
1) Enable the syspref EasyAnalyticalRecords
2) Find a biblio record, go to the detail page
3) Click the Edit dropdown and notice the option "Link to host item"
4) Apply patch and refresh page
5) Click the Edit dropdown and confirm the renamed "Link to host record"
button
Sponsored-by: Catalyst IT Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Michal Denar <black23@gmail.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Alex Buckley [Tue, 17 Mar 2020 23:59:03 +0000 (23:59 +0000)]
Bug 23808: (follow-up) Pre-fill guarantee's contact details from guarantor patron in memberentry.pl
Pre-fill guarantee contact details (email, phone) from guarantor record
when adding a gurantee to a guarantor's record
Test plan:
1. Apply first two patches and follow test plans
2. On an adult's patron record (which has an primary phone number, secondary
phone, other phone, primary email, secondary email and fax set) select
'Add a guarantee' and observe the guarantee's 'Contact' section is not
pre-filled with that information from the guarantor
3. Apply this patch
4. On the same adult's record select 'Add a guarantee' and observe that the
'Primary phone', 'Secondary phone', 'Other phone', 'Primary email',
'Secondary email', 'Fax' have been pre-filled from the guarantor's record
5. Fill out the rest of the memberentry.pl and 'Save' and observe that those
contact details are successfully saved
6. Repeat step 4 and alter the 'Primary phone' and 'Primary email'
fields and save and observe that those altered values are saved
7. Run tests and confirm they pass:
sudo koha-shell <instancename>
prove xt
prove t
Sponsored-by: South Taranaki District Council, NZ Signed-off-by: Andreas Roussos <a.roussos@dataly.gr> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Alex Buckley [Tue, 17 Mar 2020 20:43:59 +0000 (20:43 +0000)]
Bug 23808: (follow-up) Display card number in 'Guarantor information' in memberentry.pl
Instead of displaying 'Patron #' and displaying the guarantor's borrowernumber
in 'Guarantor information' we should display 'Patron card number:' with
the cardnumber displayed as that value is more meaningful to librarians.
The hyperlink containing the borrowernumber should stay the same so that
librarians can easily visit the patron record of existing guarantor
patrons.
Test plan:
1. Apply first patch and follow it's test plan
2. On an Adult patrons record select 'Add guarantee'
3. In 'Guarantor information' section of memberentry.pl observe in the
pre-filled guarantor information there is a line 'Patron #:' with a
link displaying a borrowernumber (not card number) and when you click
on the link it takes you to the adult/guarantors patron account
4. Select 'Search to add' and search and add another guarantor
5. Observe in the added guarantor 'Patron #:' is displayed along with the
borrowernumber (not card number). The borrowernumber displayed in not
a link.
6. Apply this patch
7. On a adults patron select 'Add guarantee'
8. Observe in 'Guarantor information' section the pre-filled guarantor now
has 'Patron card number:' displayed (instead of 'Patron #:', and it's
link now displays the guarantors cardnumber.
Clicking on the link still takes you to the guarantors patron account
9. Repeat step 4
10. Observe in the added guarantor they also have 'Patron card number:'
(instead of 'Patron #:'). A cardnumber rather than borrowernumber is
displayed. The cardnumber is not a link.
11. Confirm tests still pass:
sudo koha-shell <instancename>
prove xt
prove t
Sponsored-by: South Taranaki District Council, NZ Signed-off-by: Andreas Roussos <a.roussos@dataly.gr> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Alex Buckley [Tue, 17 Mar 2020 04:50:32 +0000 (04:50 +0000)]
Bug 23808: Pre-fill guarantor fields when adding guarantee to guarantor
Bug 14570 removed the guarantor pre-fill functionality when selecting
'Add guarantee' to an Adult patron. This is because guarantor
information would now only display if (1) the patron record exists
(which it won't when first adding guarantee to guarantor record) and (2)
if there is already a guarantor added to a guarantee
This patchfix will pre-fill guarantor fields and address fields (so the guarantee
has the same address as the guarantor) if no relationship (existing
guarantor data exists) and a guarantor_id is handed to memberenty.pl in
URL when clicking 'Add guarantee' button on Adults patron record.
Test plan:
1. Add adult patron make sure to fill in their 'Main address' details
2. Select 'Add guarantee'
3. Observe no details of the adult patron are displaying in the
'Guarantor information' section or 'Main address' sections of memberentry.pl
4. Select 'Search to add', search for your adult patron and choose
'Select' to add them as guarantor
5. Fill out rest of memberentry.pl and 'Save'
6. Observe adult is showing as the guarantor
7. Apply patch
8. Run tests:
sudo koha-shell <instancename>
prove xt
prove t
9. Confirm tests pass
10. Return to your adult patron
11. Select 'Add guarantee'
12. Observe in 'Guarantor information' and 'Main address' sections of
memberentry.pl are pre-filled with the 'patron #' (borrowernumber),
surname, firstname and street number, address, address2 (if you
filled that in on adults account), city
13. Fill out the rest of memberenty.pl and save and confirm your adult
patron is showing as the guarantor and the pre-filled address details
have been saved and are showing
14. Repeat steps 10,11 and 12 and in the 'Guarantor information' select
'Search to add' and add another adult as guarantor
15. Fill out the rest of memberentry.pl and 'Save' and notice with this
patch applied you can still add multiple guarantors successfully
Sponsored-by: South Taranaki District Council, NZ Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: George Veranis <gveranis@dataly.gr> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Nick Clemens [Thu, 1 Aug 2019 14:57:29 +0000 (14:57 +0000)]
Bug 23411: Do not fall back to 'email' for SMS messages
To test:
1 - Have a patron wiht an sms number, but no email
2 - Enable sms by setting SMSDriver syspref to Email
3 - Set Notice triggers to send an overdue via sms and email
4 - Ensure the selected notice is defined only for 'email'
5 - Checkout an overdue to the patron above
You can set a specify a due date in the past
6 - perl misc/cronjobs/overdue_notices.pl -t
7 - Check the patron notices tab, they have a print notice and an SMS notice pending
8 - The SMS notice used the 'email' template
9 - Apply patch
10 - sudo koha-mysql kohadev
11 - DELETE * FROM message_queue WHERE borrowernumber={borrower as above};
12 - Run the cron again
13 - Patron should have a print notice queued, no sms
14 - Define an SMS notice
15 - delete the message queue
16 - Run again
17 - The patron should have a print and an SMS
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Agustin Moyano [Mon, 9 Mar 2020 15:05:03 +0000 (12:05 -0300)]
Bug 24830: Fix parse_prefetch recursion and +count cases
When a child of a prefetched element wasn't found on element's
prefetch_whitelist, no prefetch element was returned.. including element
it self. Now we return element's name if no child was found.
Also, embeded keys that ended with +count where taken literaly. Now we
search the correct key by stripping _count of embedded element if it was
declared as "is_count"
To test:
1. Apply test patch but not this one
2. prove t/Koha/REST/Plugin/Query.t
CHECK => tests shoul fail
3. Apply this patch
4. prove t/Koha/REST/Plugin/Query.t
SUCCESS => tests pass
5. Sign off
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Agustin Moyano [Thu, 12 Mar 2020 21:47:40 +0000 (18:47 -0300)]
Bug 24830: Add tests
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Test plan:
1 - Setup SIP in your testing environment
https://wiki.koha-community.org/wiki/Koha_SIP2_server_setup
2 - Set a patron to have a restriction
3 - Send a patron status request or patron information command via
the SIP cli emulator (see link above)
4 - Note the comment on the restriction is sent only once
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Mon, 11 Nov 2019 16:54:56 +0000 (17:54 +0100)]
Bug 23900: Teach label maker to concat database fields
Test plan:
- define a label layout with this field list: "100a 245s","enumchron copynumber"
- find or create a record with values for all of those fields
- generate a label for that record
- the 100a and 245s successfully display on one line
- the enumchron and copynumber are displayed and separated by a space
Try other combinations
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Thu, 19 Mar 2020 10:57:16 +0000 (11:57 +0100)]
Bug 24904: Speed up installer process - 1 query per table
Since bug 13897 we are using YAML file to store the installer data.
We are generating/executing 1 query per row, which is much more slower than before.
We should generate 1 query per table to get back to the previous execution time.
With this patch we are going to generate a single one big SQL query per
table.
Test plan:
1/ Checkout a commit before bug 13897:
git checkout -b before_13897 0706922221dcdf9fa8ed7fcf86245c5622f33a3c
2/ Execute the following commands (several times, to get a median!):
mysql -h db -u koha_kohadev -ppassword -e"DROP DATABASE koha_kohadev";
mysql -h db -u koha_kohadev -ppassword -e"CREATE DATABASE koha_kohadev";
koha-shell -p -c "perl benchmark_installer.pl sql" kohadev;
Note the different times displayed in the output, especially the first 2
installer/data/mysql/en/marcflavour/marc21/mandatory/authorities_normal_marc21.yml
installer/data/mysql/en/marcflavour/marc21/mandatory/marc21_framework_DEFAULT.yml
They are the number of seconds took to insert them
3/ checkout master
git checkout -B master origin/master # Will reset your master branch!
4/ Execute the previous commands but without the 'sql' parameter passed
to the benchmark script
mysql -h db -u koha_kohadev -ppassword -e"DROP DATABASE koha_kohadev";
mysql -h db -u koha_kohadev -ppassword -e"CREATE DATABASE koha_kohadev";
koha-shell -p -c "perl benchmark_installer.pl" kohadev;
Note the different times.
5/ Apply this patch and retry 4
Please post the execution times when you signoff on this patch.
Spoiler: total time goes from 21s to 4s.
marc21_framework_DEFAULT.yml from 12s to .5s
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com>
My numbers, 99.99% confidence
Nick Clemens [Thu, 5 Mar 2020 10:59:22 +0000 (10:59 +0000)]
Bug 24809: Get only timestamp of deleted items attached to existing bibs when check if bib deleted
To test:
1 - Edit/create a file in the koha home dir '/var/lib/koha/{instance}/OAI.yaml' with content like below:
format:
marcxml:
metadataPrefix: marcxml
metadataNamespace: http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim
schema: http://www.loc.gov/MARC21/slim http://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd
include_items: 1
2 - Set the systempreferences below to indicated values:
OAI-PMH => Enable
OAI-PMH:ConfFile => /var/lib/koha/{instace}/OAI.yaml
3 - View a record with items and confirm the items show:
http://localhost:8080/cgi-bin/koha/oai.pl?verb=GetRecord&metadataPrefix=marcxml&identifier=KOHA-OAI-TEST:4
4 - Delete the items, then delete the record
5 - Reload the URL from step 3
6 - Internal Server Error:
Empty String at /kohadevbox/koha/Koha/OAI/Server/Record.pm line 58.
at /usr/share/perl/5.24/Carp.pm line 167
7 - Apply patch
8 - restart_all
9 - Repeat
10 - Reload URL from step 3
11 - Success
Signed-off-by: Michal Denar <black23@gmail.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch enable the translation of the
labels 'Mandatory' or 'Optional' present at install time
for groups of installer files.
To test:
1) Try install using de-DE language,
at step3 verify 'Mandatory' and 'Optional'
labels for marc21 or other data checklist
Do not close this window!
2) Apply this patch
3) Update de-DE translation files, reinstall lang files
cd misc/translator
./translate update de-DE
./translate install de-DE
4) Reload page at step3, now 'Mandatory' label
is translated to 'Pflichtfeld'
5) Verify strings in translation file
Search for
^msgid \"Mandatory\"
^msgid \"Optional\"
in po/de-DE-staff-prog.po.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Thu, 12 Mar 2020 09:01:10 +0000 (10:01 +0100)]
Bug 24856: Remove itemtypes.imageurl in fr-FR sample data
in installer/data/mysql/fr-FR/3-LecturePub/sample_itemtypes.sql and installer/data/mysql/fr-FR/4-Conservation/sample_itemtypes.sql the values of imageurl point to non-existent images.
Test plan:
Insert the 2 sql file and confirm that imageurl is not empty
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Kyle M Hall [Mon, 3 Feb 2020 12:56:37 +0000 (07:56 -0500)]
Bug 24566: UpdateItemLocationOnCheckin triggers SIP2 alert flag, even with checked_in_ok enabled
If UpdateItemLocationOnCheckin, it triggers an alert flag but cannot be acted on in the same way as LocalUse and thus should be removed in the same fashion.
Test Plan:
1) Enable UpdateItemLocationOnCheckin and set it up to trigger at
checkin for an item
2) Return that item via SIP2
3) Note the alert flag is set
4) Apply this patch
5) Repeat steps 1 and 2
6) The alert flag should not be set
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Kevin Cook <ILS@cedarparktexas.gov> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Tue, 25 Feb 2020 11:14:12 +0000 (11:14 +0000)]
Bug 24723: Update EmailPurchaseSuggestions to use inbound_email_address
This patch updates the EmailPurchaseSuggestions functionality to
use the inbound_email_address method to obtain the correct email address
for a branch when it is set to BranchEmail
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Tue, 25 Feb 2020 11:03:58 +0000 (11:03 +0000)]
Bug 24721: Update emailLibrarianWhenHoldIsPlaced to use inbound_email_address
This patch updates the emailLibrarianWhenHoldIsPlaced functionality to
use the inbound_email_address method to obtain the correct email address
for a branch.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Maryse Simard [Fri, 21 Feb 2020 19:09:17 +0000 (14:09 -0500)]
Bug 17674: Handling of special cases
This patch adds handling for those 2 particular cases:
1. Deleting the expected issue
2. Deleting a serial and it's item, but one item cannot be deleted
To test:
1.1 Create a subscription that creates items
1.2 Receive two issues
1.3 Use the new button to delete the 'Expected' issue
1.4 The issue is correctly deleted, but the new expected issue created
to replace the one which has been deleted don't have a published or
received date and is show in it's own tab.
1.5 Apply patch
1.6 Repeat steps 1.1 through 1.4
=> The new expected issue is created correctly
2.1 Use the same serial as in 1 or repeat step 1.1 and 1.2
2.2 Check out one of the items
2.3 Delete the corresponding serial and check box to delete items
2.4 The serial is deleted, but not the item.
=> No feedback is show to the user
2.5 Apply patch
2.6 Repeat step 2.1 through 2.4
=> As before, the serial is deleted, but not the item
=> This time, an error is shown to inform the user
Signed-off-by: sonia <sonia.bouis@univ-lyon3.fr> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This new feature allows for batch deletion of serials through the UI. The current usage is a one-by-one long game.
Test plan :
- Apply patch.
- Create at least four serials with items.
- Notice that new items have a numbering pattern and a date in the enumchron field.
- Use the button Delete selected issues for the following steps.
- Delete a serial and its associated item.
- Confirm the serial and item are gone.
- Delete a serial and not its item.
- Confirm the serial is gone.
- Confirm the item is still there and the date part in the enumchron field is gone.
- Delete the two lasts serials.
- Confirm they are gone.
Sponsored-by: CCSR Signed-off-by: Michal Denar <black23@gmail.com> Signed-off-by: Sonia <sonia.bouis@univ-lyon3.fr> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch adds the timestamp column to the biblioimages table.
To test:
1. Apply this patch
2. Run:
$ updatedatabase
$ koha-mysql kohadev
> SHOW CREATE TABLE biblioimages;
=> SUCCESS: Notice the new column is there with the right settings
3. Sign off :-D
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Wed, 26 Feb 2020 16:38:53 +0000 (17:38 +0100)]
Bug 24510: Code cleaning
Additional test plan:
Create 3 clubs: abc adf axy
place a hold for on of those club, search for a club 'a'
you will get the focus on the "Clubs" tab
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Owen Leonard [Wed, 26 Feb 2020 15:53:48 +0000 (15:53 +0000)]
Bug 24510: When Placing a Hold, cursor doesn't focus on Patron Name
This alternate patch tries to implement a fix in a more "correct" way by
tying the cursor focus to the initialization of the jQueryUI tabs. By
configuring both the "create" and "activate" events we can make sure the
correct input field is focused.
I think the only advantage of this patch over the other one is that
tying the focus to the tabs activation makes it a little more obvious
where in the DOM loading sequence the focus is being set.
To test, follow the original patch's test plan:
TEST PLAN:
1. Go to Biblio Record
2. Place Hold (request.pl) - either the Hold above the Bib or the Hold
on the left, it does the same thing.
3. Note that the cursor does not go to Patron Name (for whom to place
the hold for), it goes to the Top Search bar under Checkout.
4. Apply patch and reload the page.
5. The focus should now be correctly set.
6. Toggle between 'Patrons' and 'Club' tabs.
7. Focus should stay set.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Lucas Gass [Fri, 24 Jan 2020 15:34:07 +0000 (15:34 +0000)]
Bug 24510: Add focus to Patron/club input
Signed-off-by: Kelly McElligott <kelly@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Lari Taskula [Mon, 2 Mar 2020 09:18:26 +0000 (09:18 +0000)]
Bug 24774: Set JSON indentation of 2 spaces in .editorconfig
To test:
1. Start an editor that supports .editorconfig
2. Open or create a JSON file
3. Observe identation is set to 2 spaces by default
Sponsored-by: Hypernova Oy Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Fri, 6 Mar 2020 11:20:51 +0000 (11:20 +0000)]
Bug 24818: Update database accountlines.date to timestamp
This update increases the resolution for the 'date' field, used for
'creation date' in accountlines from a 'date' to a 'timestamp'.
This matches other tables where both a created and updated field are
included.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Bug 24384: Add Access-Control-Allow-Origin support to OPAC reports svc
This patch makes the opac/svc/report script use output_with_http_headers
so it sets the Access-Control-Allow-Origin header.
To test:
1. Create a new public report and remember the report id
2. Use your favourite too to fetch the report in JSON by issuing:
GET http://localhost:8080/cgi-bin/koha/svc/report?id=1
=> FAIL: There is no Access-Control-Allow-Origin header
3. Apply this patch
4. Restart Plack
$ sudo koha-plack --restart kohadev
5. Set the AccessControlAllowOrigin to anything (for example,
https://koha-community.org)
6. Repeat 2
=> SUCCESS: On the response headers you find
Access-Control-Allow-Origin: https://koha-community.org
7. Sign off :-D
Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Aleisha Amohia [Wed, 11 Mar 2020 04:02:53 +0000 (04:02 +0000)]
Bug 3137: (follow-up) Rename using 'collapse', remove syspref lettering and fix guarantor section collapsing
Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Aleisha Amohia [Fri, 7 Feb 2020 02:57:40 +0000 (02:57 +0000)]
Bug 3137: HideFieldsPatronAddForm syspref
This patches adds a syspref - HideFieldsAddPatronFrom - that controls
which fieldsets are hidden by default in the add patron form.
To test:
1) Apply patch and update database
2) Go to System preferences and confirm HideFieldsPatronAddForm has no
fields selected
3) Go to add a patron / edit an existing patron (any patron category).
confirm everything still works as expected.
4) Tick some of the fields in the syspref to hide them in the form
5) Go back to add patron form.
6) Confirm these fields are hidden and listed at the top of the page
7) Toggle the checkbox and confirm the hidden fields show or hide as
expected.
8) Go back to the HideFieldsPatronAddForm system preference and ensure
the Main address option is checked to be hidden
9) Go to the patron's details page
10) Click to edit the Contact Information section
11) Confirm the Main address option shows and the checkbox to show
hidden fields is not present.
12) Confirm you can click the legend of each section to show and hide
sections
Sponsored-by: Catalyst IT Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Aleisha Amohia [Thu, 6 Feb 2020 22:25:06 +0000 (22:25 +0000)]
Bug 15775: Show message on OPAC summary if holds are blocked due to fines
To test:
1) Set maxoutstanding syspref to 5
2) Create a manual invoice for a borrower for $6
3) Log in to the OPAC as this borrower
4) Go to opac-user.pl, your summary page
5) Confirm there is a warning box explaining that the borrower is
blocked from holds due to fines
6) Back on the staff side, pay some or all of the borrower's fines so
they are no longer over the max outstanding amount
7) Refresh the summary page in the OPAC and confirm the warning is gone
Sponsored-by: Catalyst IT Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Lucas Gass [Fri, 21 Feb 2020 20:54:41 +0000 (20:54 +0000)]
Bug 24701: Add column config to course_items_table
This patch adds course_items_table to the column config tool
TEST PLAN:
1. Have some course reserves
2. Add some items to that course reserve and browse to opac-course-details
2. See all the unconfigurable columns
3. Apply patch
4. Browse to column config > OPAC > opac-course-details
5. Try hiding each column and make sure the correct column is hidden on opac-course-details.pl
Signed-off-by: Devinim <kohadevinim@devinim.com.tr> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Aleisha Amohia [Wed, 11 Mar 2020 03:38:44 +0000 (03:38 +0000)]
Bug 24844: Focus syspref searchbar
To test:
1) Go to Administration
2) Notice neither of the syspref search bars are focussed so you have to
click inside one to begin searching
3) Apply patch and refresh page
4) Notice the header syspref search bar is now focussed so you can begin
typing straight away
Sponsored-by: Catalyst IT Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Fridolin Somers [Wed, 11 Mar 2020 11:00:21 +0000 (14:00 +0300)]
Bug 24847: Select AND by default in items search
In items search form, when clicking on "New field" a new conjunction and search field are added.
It would save time to select AND conjunction by default, like it is in advanced search.
Test plan:
1) Go to items search
2) Click on "New field"
3) Check that AND is selected
Signed-off-by: Sally <sally.healey@cheshiresharedservices.gov.uk> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Mon, 16 Mar 2020 10:45:44 +0000 (11:45 +0100)]
Bug 24846: Add new tool to batch extend due dates
With events sometimes leading to unforeseen branch closures (think Coronavirus as
an example), it would be helpful to have a tool that would allow librarians to
update due dates in bulk based on branch and current due date of the material.
It allows to select checkouts given the following parameters:
* libraries
* patron's categories
* range of the due date
You can set a hard due date, or define a number of days to extend the
due date.
Test plan:
Check some items out
Use the new tool to extend the due dates
Test the different filters to make sure they all work
Note: What about holidays?
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Fri, 28 Feb 2020 15:47:12 +0000 (15:47 +0000)]
Bug 24298: (follow-up) Add missing filter!
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Mon, 3 Feb 2020 13:21:18 +0000 (13:21 +0000)]
Bug 24298: Add tests for ModItemTransfer
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Thu, 16 Jan 2020 13:56:41 +0000 (13:56 +0000)]
Bug 24298: Record transfer triggers for returns
This patch adds handling to catch transfers that may have been triggered
on item return.
Test Plan:
1) Enable AutomaticItemReturn and accompanying system preference
2) Return an item to the wrong branch and note the transfer
3) Check the database for the new trigger value
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Thu, 16 Jan 2020 15:25:34 +0000 (15:25 +0000)]
Bug 24298: Add return enums to branchstransfer triggers
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Andrew Isherwood [Mon, 27 Jan 2020 12:00:47 +0000 (12:00 +0000)]
Bug 24518: Fix IE11 partner filtering
This patch adopts the approach detailed in comment #1.
It also fixes a couple of additional minor bugs relating to the ILL
partner list:
- Exclude partners with no email address, we cannot use them
- Quote the "value" attribute to avoid warnings displayed by IE, they
should be quoted anyway!
Test plan: USE IE11
- Apply the patch
- Define 3 ILL partner patrons (patrons in the category that has a code
that matches the <partner_code> value in the ILL config). One patron
should have no email address, the other two should have an email address
- Navigate to "Place request with partners" for an ILL request
- TEST: Observe that the patron with no email address is not displayed
- Try filtering the list
- TEST: Observe that the list filters correctly
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
When catalog has fields 773 (461 in UNIMARC), those linked items are fetched for display in search results.
Looks like the code could be more performant by replacing item search by $9 with direct call with GetMarcItem().
Test plan :
1) Enable system preference EasyAnalyticalRecords
2) Get a record A with a lot of items, it will be the 'Host record'
3) Click on 'Analytics' on this record
4) On one of its items (say item A1) click on 'Create analytics' to
create record B
5) Enter the same title as record A and all mandatory fields
6) Edit field 773 (461 in UNIMARC)
6) Check that $0 contains the biblionumber of record A
7) Check that $9 contains the itemnumber of item A1
8) Perform a search on record A title, be sure you see record B with
other results
=> Compare execution times with and without patch
Signed-off-by: Hugo Agud <hagud@orex.es> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Tue, 25 Feb 2020 07:48:31 +0000 (07:48 +0000)]
Bug 22821: Correct to_address for issue notes
This patch updates the controller and service code to use the newly
introduced 'get_effective_email' routine from bug 22823 to obtain the
branches most appropriate email address.
Signed-off-by: Myka Kennedy Stephens <mkstephens@lancasterseminary.edu> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Tue, 25 Feb 2020 09:05:18 +0000 (09:05 +0000)]
Bug 22821: Use 'reply-to' address in issue notes
This patch updates the issue notices to not pass from_address and so
default to the branch email of the user for from_address. We now pass
the patrons email (cascading through email, emailpro, B_email) into the
reply_address field so mail servers are less likely to report emails as
spam and mail clients still have access to the patron address via the
reply-to header when staff want to hit 'reply' and have the email go to
the user.
Signed-off-by: Myka Kennedy Stephens <mkstephens@lancasterseminary.edu> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Mon, 24 Feb 2020 20:42:30 +0000 (20:42 +0000)]
Bug 22823: Add get_effective_email method to Koha::Library
Add a `get_effective_email` method to the Koha::Library object which
returns the email address for the library which they are most likely to
have access to.
This method falls back through preferences `branchreplyto`, `branchemail`,
`ReplytoDefault`, `KohaAdminEmailAddress`.
This bug simply introduces a new utility function to return the most effective email address for a branch to be emailed on.
Test plan
1/ Read the new test and verify it makes sense
2/ Run the tests and verify they all pass.
Signed-off-by: Bernardo Gonzalez Kriegel <bgkriegel@gmail.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Martin Renvoize [Tue, 25 Feb 2020 09:05:18 +0000 (09:05 +0000)]
Bug 10269: Use 'reply-to' address if passed to EnqueueLetter
This patch updates the EnqueueLetter method to allow passing a reply_to
address. This allows for passing in arbitrary addresses for the reply
address which will not override the from address. This improves the
chances of your email getting past spam filters.
Signed-off-by: Myka Kennedy Stephens <mkstephens@lancasterseminary.edu> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
David Roberts [Tue, 28 Jan 2020 00:21:19 +0000 (00:21 +0000)]
Bug 24495: Reword change collection feature
This patch changes the text of the "Collect from patron" field to read "Amount tendered"
To Test:
1) In the Point of Sale screen, check that the text inside the "Collect payment" box reads "Collect from patron"
2) Go into a patron record, and create a manual invoice.
3) Go to Make a payment, and select to "Pay an amount". Check the text reads "Collect from patron".
4) Repeat the process with the "Pay Selected", and "Pay" button (listed next to the individual invoice)
5) Install the patch
6) Repeat steps 1-4, but the text should now read "Amount tendered", instead of "Collect from patron" in all payment options in the patron record, and in the Point of Sale screen.
Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Bouzid Fergani <bouzid.fergani@inlibro.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
TEST PLAN:
1. Apply patch
2. Have some checkout from today and some from multiple previous days.
3. Set todaysIssuesDefaultSortOrder & previousIssuesDefaultSortOrder to 'earliest to latest' and confirm it sorts correctly.
4. Reverse the 2 system preferences and see that it is now sorting the opposite way.
5. Also look at the wording of each system prefence and make sure it makes sense
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Arthur Suzuki [Sun, 22 Dec 2019 07:07:51 +0000 (08:07 +0100)]
Bug 23531: Add some tests for HoldItem and HoldTitle with date params provided
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com> Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Arthur Suzuki [Tue, 3 Sep 2019 09:08:49 +0000 (11:08 +0200)]
Bug 23531: fix ILSDI non-implemented but documented parameters
test plan :
1/ Submit a hold through ILSDI with start_date and expiry_date parameters
2/ Verify in Koha those parameters are not applied to the newly created
reserve. Delete reserve.
3/ Apply patch and repeat 1.
4/ Verify the reserve created by same request as 1 now has both dates
applied and visible in Koha.
Signed-off-by: Christophe Croullebois <christophe.croullebois@biblibre.com> Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com> Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Bug 23236: Remove 'its items may still be processed' in action if no match is found
When importing records and looking for duplicate records using record matching rules,
there is an option if NO match is found to "ignore incoming record (its items may
still be processed)". This doesn't make any sense. Where would the items go if there
is no match?
To test:
1) Go to Tools > Stage MARC for import
2) Browse and choose a file with at least one record that is not already in your
catalog and click on Upload file
3) Fill out the first section with the appropriate information
4) In the Look for existing records in catalog? section, choose a record matching
rule
5) In the Action if no match is found drop-down menu, choose Ignore incoming record
(its items may still be processed)
6) Click on Stage for import
7) Click on Manage staged records
8) Click Import this batch in the catalog
9) In the table, the record status should say Ignore
10) Apply patch
11) Redo steps 1-9, notice the option Ignore incoming records does not mention items
12) Make sure the tool still works and still ignores the record
Signed-off-by: Devinim <kohadevinim@devinim.com.tr> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Tue, 25 Feb 2020 11:26:31 +0000 (12:26 +0100)]
Bug 24722: DBIC changes
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Tue, 25 Feb 2020 11:15:21 +0000 (12:15 +0100)]
Bug 24722: Add test
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Tue, 25 Feb 2020 11:07:18 +0000 (12:07 +0100)]
Bug 24722: Enforce NOT NULL constraint on reserves.priority
This field is never NULL and must always be equal to an integer.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Jonathan Druart [Wed, 4 Mar 2020 18:06:03 +0000 (19:06 +0100)]
Bug 24851: Insert libraries sample data for "UNIMARC"
I am trying to make koha-testing-docker UNIMARC compabible.
In order to have koha-misc4dev insert all the data correctly (users, etc.) we need at least 1 library.
I am suggesting to reuse the usual library list for UNIMARC.
misc4dev will use fr-FR sample data for "UNIMARC"
This is related to https://gitlab.com/koha-community/koha-misc4dev/issues/29
Test plan:
outside your box, in koha-testing-docker (up-to-date), edit .env and set
KOHA_MARC_FLAVOUR=unimarc
DEBUG_GIT_REPO_MISC4DEV_URL=https://gitlab.com/joubu/koha-misc4dev.git
DEBUG_GIT_REPO_MISC4DEV_BRANCH=unimarc
Then start the koha container
When the misc4dev will start its job, the scripts will have the expected
data to continue.
Without this patch you will get
koha_1 | Not enough data in the database, library and/or patron category does not exist at /kohadevbox/misc4dev/create_superlibrarian.pl line 31.
And plenty of errors will follow.
Also, the sample data used in misc4dev will use CPL
(/kohadevbox/misc4dev/data/sql/unimarc/1812/after_22155/items.sql)
Signed-off-by: Jon Knight <J.P.Knight@lboro.ac.uk> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Fridolin Somers [Mon, 2 Mar 2020 14:27:10 +0000 (17:27 +0300)]
Bug 24776: Remove Borrowers.IsDebarred call
Borrowers Template Toolkit plugin contains method IsDebarred that can be directly called from Koha::Patron object.
Also in template circ/returns.tt, when patron is restricted and checkin was backdated, var "patron" is undefined, should be "issue.patron".
Test plan :
1) Enable system preference SpecifyReturnDate
2) For a patron without restriction create a checkout
3) Create a manual restriction to debarre patron
4) Go to return page and click on "Checkin settings"
5) Specify a date in the past, barcode and click "Check in"
6) You see message "Jon Doe is restricted. Please verify this patron should still be restricted."
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Fridolin Somers [Mon, 2 Mar 2020 14:18:34 +0000 (17:18 +0300)]
Bug 24776: Remove Borrowers.HasOverdues call
Borrowers Template Toolkit plugin contains method HasOverdues that can be directly called from Koha::Patron object.
Test plan :
1) Go to circulation page of a patron with overdues
2) Click on print button
3) You see "Print overdues"
4) Go to circulation page of a patron without overdues
5) Click on print button
6) You don't see "Print overdues"
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Andreas Roussos [Sun, 15 Mar 2020 07:43:25 +0000 (08:43 +0100)]
Bug 24827: Specify UTF-8 as encoding in new_from_xml()
The MARC preview of staged records fails when a staged record contains
items with UTF-8 characters (see attached screenshots). That's because
in EmbedItemsInImportBiblio() the call to MARC::Record->new_from_xml()
does not explicitly specify 'UTF-8' as the optional encoding to use.
This patch fixes that.
Test plan (in a MARC21 instance):
0) Stage for import the test record attached to this bug report (make
sure that 'Check for embedded item record data?' is set to 'Yes'),
then go to Home > Tools > Manage staged MARC records and click on
the filename you've just staged.
1) In the 'Citation' column, click on the hyperlink to launch the MARC
preview -- notice how it fails to produce any output apart from the
modal heading.
2) Apply the patch, and restart Plack if necessary.
3) Re-launch the MARC preview: this time the output should include the
whole record, including the embedded item data in field 952.
4) Run the unit tests to ensure nothing was broken inadvertently:
$ prove t
$ prove xt
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Andreas Roussos [Sun, 15 Mar 2020 07:34:52 +0000 (08:34 +0100)]
Bug 24827: Standardise on 'UTF-8' as the encoding name
This patch standardises the encoding name used in direct calls
to new_from_xml() to 'UTF-8' instead of 'utf8' or 'utf-8'.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
This patch introduces code to detect (cookie) annonymous sessions and
act as expected.
Right now, as check_cookie_auth is not passed the required permissions
(because there aren't always required permissions, and the code to check
permissions is shared with other authentication mechanisms) it returns
'ok' and the session id. This use case was overlooked when this was
coded, and yeilds unexpected error codes (500) when the user logs out
and the annonymous session cookie is used to hit the API. The end result
doesn't pose any security issue (i.e. the resource access is rejected)
but the returned error code is not correct and should be fixed.
This patch verifies for an anonymous session (and avoids querying the
corresponding patron) and then verifies if there is an authorization
config on the route and if the patron object is defined.
To test:
1. Apply the tests patch
2. Run:
$ kshell
k$ prove t/db_dependent/api/v1/auth_authenticate_api_request.t
=> FAIL: Tests fail, 500 instead of the expected 401
3. Apply this patch
4. Repeat 2
=> SUCCESS: Tests pass!
5. Repeat the original 'steps to reproduce' from the bug report using
the browser
=> SUCCESS: Problem solved!
6. Sign off :-D
Sponsored-by: ByWater Solutions Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>