Nick Clemens [Wed, 19 May 2021 10:54:49 +0000 (10:54 +0000)]
Bug 22785: (follow-up) Don't sort by chosen and fix selection of matches
Previously the sorting took 'chosen' into account and would move a selected match to the
top on next load - it is better to preserve the same sorting every time
When loading matches the 'cehcked' variable was not being cleared, so multiple matches were
being marked 'checked="checked"'. Fixing this ensures the correct record displays as chosen
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Ben Daeuber <bdaeuber@cityoffargo.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Nick Clemens [Mon, 4 Jan 2021 14:23:52 +0000 (14:23 +0000)]
Bug 22785: Update Schema for boolean
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Ben Daeuber <bdaeuber@cityoffargo.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Nick Clemens [Mon, 31 Aug 2020 17:01:24 +0000 (17:01 +0000)]
Bug 22785: Allow option to choose which record match is applied during import
This patchset adds the display of all matches found during import to the import management screen
A staff member with the permission to manage batches will be able to select for any individual record which match, or none, should be used during import
To test:
1 - Import a batch of records or export existing records from your catalog
2 - Import the file (again) and select a matching rule that will find matches
3 - Note that you now have radio buttons allowing you to select a record, or none
4 - Test scenarios:
I - When 'Action if matching record found' is 'Ignore'
a - Imported record ignored if match is selected
b - 'Action if no match found' followed if no match is selected (Ignore matches)
II - When 'Action if matching record found' is 'Replace'
a - The chosen record is the one overlayed (you can edit the chosen record before importing to confirm)
b - 'Action if no match found' followed if no match is selected (Ignore matches)
III - When 'Action if matching record found' is 'Add incoming record'
a - Record is added regardless of matches
5 - Confirm 'Diff' 'View' links work as expected
6 - Confirm that after records are imported the radio buttons to choose are disabled
Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Bug 22785: API files
Signed-off-by: Ben Daeuber <bdaeuber@cityoffargo.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Fri, 1 Apr 2022 15:50:32 +0000 (15:50 +0000)]
Bug 30436: Convert article requests tabs to Bootstrap
This patch converts the jQuery tabs on the article requests page to
Bootstrap.
To test you should have the "ArticleRequests" system preference
enabled. If necessary, create some article requests and mark some
"Pending," some "Processing," and leave some new.
- Apply the patch and go to Circulation -> Article requests.
- The page should show three tabs: New, Pending, and Processing.
- The tabs should look correct and work correctly.
- The DataTables under each tab should work correctly.
Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Wed, 20 Apr 2022 12:53:27 +0000 (12:53 +0000)]
Bug 30466: Convert serials pages tabs to Bootstrap
This patch modifies three serials templates in order to replace jQueryUI
tabs with Bootstrap tabs.
To test, apply the patch and rebuild the staff interface CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Go to Serials.
- Perform a serials search which will return one or more results.
- On the search results page you should see an Open and Closed tab.
- The tabs should look correct and work correctly.
- Confirm that "Select all" and "Clear all" controls work correctly in
each tab.
- Click one of the search results to view the details for that
subscription.
- You should see tabs for Information, Planning, Issues, and Summary.
You may also see an Acquisition details tab depending on your data.
- In the sidebar menu click "Serial collection."
- On this page you should see tabs corresponding to each year the serial
has been received.
- Under each tab the "Select all" and "Clear all" controls should work
correctly in the context of that tab. Other controls should apply to
all tabs.
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Martin Stenberg [Wed, 26 Aug 2015 18:22:30 +0000 (20:22 +0200)]
Bug 14242: Use ISBN-field to automatically fill out purchase suggestions
Add new jQuery plugin "autofill" which transforms selected element(s)
into search fields for Google Books API and automatically fills
requested fields with search result.
Use in OPAC purchase suggestions to automatically fill out fields when
entering ISBN-number.
Test plan:
1. Run updatedatabase.pl
2. Enable system precference "OPACSuggestionAutoFill"
3. Log into OPAC and go to purchase suggestions page
4. Write a valid ISBN (such as 0-9690745-2-2 or 978-1-78416-110-1) into
the ISBN field and click the 'search google books' button, or unfocus
the field.
5. Title, Author, Publisher, publication year and Item Type fields should now be filled
automatically.
6. Press "clear form" to undo - should restore all fields that the API pull
filled to empty
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Thu, 14 Apr 2022 18:27:47 +0000 (18:27 +0000)]
Bug 30550: OPAC recalls page tries to use jQueryUI datepicker
This patch updates the recalls page in the OPAC so that it uses
Flatpickr for the "Recall not needed after" field.
To test apply the patch and enable the UseRecalls preference if
necessary. You made need to update your circulation rules as well,
defining some default values for recalls.
- Log in to the OPAC.
- Locate a bibliographic record which has one item and that item is
checked out.
- Click "Place recall."
- The "Recall not needed after" field should be styled correctly, and
clicking it should trigger the calendar popup.
- You should be limited to selections after today's date.
Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Jonathan Druart [Tue, 5 Jan 2021 13:42:20 +0000 (14:42 +0100)]
Bug 27344: Implement Elastic's update_index_background using Koha::BackgroundJob
This patch adds a background job submodule, UpdateElasticIndex, to deal
with async ES index update (not the deletion).
Using NYTProf (on a checkin):
Without
618ms, executing 35676 statements and 26355 subroutine calls in 266 source files and 83 string evals.
With
521ms, executing 13282 statements and 7979 subroutine calls in 195 source files and 26 string evals.
However there are some problems with this patch:
1. We don't want *all* the index update to be in the background_jobs
tabtle (we could add a filter on the list view)
2. We don't track the "progress" of the job as we are sending all the
records to Elastic. It is okish in my opinion but it must be noted.
Signed-off-by: Arthur Suzuki <arthur.suzuki@biblibre.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Marcel de Rooy [Fri, 21 Jan 2022 07:58:45 +0000 (07:58 +0000)]
Bug 29894: Send a confirmation notice
When registering or deregistering, send a confirmation.
Test plan:
Register or deregister with patron having email address.
Verify that you got a confirmation mail.
Run t/db_dependent/Koha/Auth/TwoFactorAuth.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: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Marcel de Rooy [Thu, 13 Jan 2022 14:27:36 +0000 (14:27 +0000)]
Bug 29873: Create QR code
Instead of using deprecated Google Charts API, and exposing our
secret in a GET parameter, we generate QR data ourselves.
Test plan:
[1] Enable two factor authentication in the prefs.
[2] Login in staff. Go to account. Select Manage 2FA.
[3] Verify that QR code is displayed.
[4] Register the QR in your authenticator app and test 2FA
by logging in again.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Tested with Google Authenticator and FreeOTP.
Bug 29873: (follow-up) Rename qr_dataurl
As requested by a QA team member.
We're moving to qr_code as method name. This is the same name as
the method in the underlying base class.
Apart from one sed statement, changing to self->SUPER on one line.
Test plan:
Can you still register, logout and login?
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Bug 29873: (follow-up) Switch to GD
We do not need a new module, we could use GD instead.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
As asked on comment4:
[1] Add a required div as a visible hint when applicable.
[2] Differentiate alert for hold start and end date.
Test plan:
See former patch.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Marcel de Rooy [Tue, 15 Feb 2022 15:25:59 +0000 (16:25 +0100)]
Bug 30108: Allow making hold dates required
Side note: Template still referred to class holddateto while not
being used any longer. Replaced this occurrence by futuredate.
Test plan:
[1] Disable OPACAllowHoldDateInFuture.
[2] Set pref OPACMandatoryHoldDates to "end date".
[3] Verify that the end date is mandatory on opac-reserve.
[4] Set pref OPACMandatoryHoldDates to "start date".
[5] Verify that no dates are required.
[6] Enable OPACAllowHoldDateInFuture.
[7] Verify that start dates are required.
[8] Set pref OPACMandatoryHoldDates to "no dates".
[9] Verify that no dates are required again.
Bonus:
Check that more options box is opened when a date still is required.
In case of item level being forced, verify that more options is opened
regardless of pref setting.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Marcel de Rooy [Thu, 17 Feb 2022 13:22:35 +0000 (13:22 +0000)]
Bug 30108: Preference description
Test plan:
Check the preferences form, tab Circulation, tab Hold policy.
Look for OPACMandatoryHoldDates.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Marcel de Rooy [Thu, 17 Feb 2022 12:55:20 +0000 (12:55 +0000)]
Bug 30108: Database revision, adding new preference
Test plan:
Run upgrade or new install.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Thu, 31 Mar 2022 18:23:53 +0000 (18:23 +0000)]
Bug 30424: Reindent advanced search template in the staff interface
This patch reindents the advanced search template. Some lines have been
split to make the markup more readable.
To test, apply the patch and test the advanced search page in the staff
interface. Everything should work as normal. Be sure to test both the
"More options" and "Fewer options" views.
When viewing the diff for this change, ignore whitespace. The only
visible changes should be split lines.
Owen Leonard [Fri, 8 Apr 2022 12:20:00 +0000 (12:20 +0000)]
Bug 30545: Replace the use of jQueryUI Accordion on the notices page
This patch updates the notices edit interface in order to replace
jQueryUI accordion and tabs widgets with Bootstrap collapse and tabs.
To test, apply the patch and rebuild the staff interface CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Set the TranslateNotices system preference to "Don't allow."
- Go to Tools -> Notices and edit any notice.
- On the "Modify notice" page you should see three collapsed sections:
Email, Print, and SMS.
- Clicking the section headings should expand and collapse the panels.
- With one of the panels open, click Save -> Save and continue editing.
- When the page reloads the same panel should be expanded.
- Enable the TranslateNotices system preference.
- Return to the edit interface for one of your notices.
- You should now see at least two tabs: Default and English.
- The sections under each tab should continue to work correctly.
- Test the "Save and continue" functionality again. When redirected you
should return to both the correct tab and the correct panel, e.g. the
"Print" section under the "English (en)" tab.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Thu, 7 Apr 2022 16:02:37 +0000 (16:02 +0000)]
Bug 30494: Replace the use of jQueryUI Accordion on the table settings page
This page updates the table settings page so that it uses Bootstrap's
"Collapse" feature instead of jQueryUI's Accordion.
To test, apply the patch and rebuild the staff interface CSS
(https://wiki.koha-community.org/wiki/Working_with_SCSS_in_the_OPAC_and_staff_client).
- Go to Administration -> Table settings.
- You should see a list of table settings which looks much the same as
it did before, with arrow icons prefixing each section header. All
panels should be collapsed.
- Test expanding and collapsing panels to confirm it's working
correctly.
- When you expand a section the heading arrow should change from
right-pointing to down.
- Make a change to one of the table configurations. After clicking
"Save" the page should reload with the same panel expanded.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Thu, 7 Apr 2022 14:39:55 +0000 (14:39 +0000)]
Bug 30491: Convert saved reports tabs to Bootstrap
This patch updates the saved reports page so that it uses Bootstrap tabs
instead of jQueryUI.
To test, apply the patch and go to Reports -> Use saved.
- On the Saved Reports page you should see multiple tabs.
- Each should look correct and work correctly.
- Clicking each tab should result in the table of reports filtering
correctly for that tab (Patrons tab showing only patrons reports).
- If necessary, edit one or more reports so that they have a subgroup.
- Confirm that each subgroup selector is correct for each tab, i.e. a
subgroup created under "Catalog" should only be available under the
Catalog tab.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Mon, 11 Apr 2022 12:00:38 +0000 (12:00 +0000)]
Bug 30489: Convert MARC and authority subfield edit tabs to Bootstrap
This patch updates the MARC and authority subfield edit interface to
replace jQueryUI tabs with Bootstrap. The code for handling
drag-to-reorder tabs is updated to accommodate the new markup.
To test, apply the patch and restart_all.
- Go to Administration -> MARC bibliographic framework -> Default
framework and choose "MARC structure" from the Actions menu.
- In the row for 000 LEADER, click Actions -> View subfields.
- Click "Edit." On the edit page the tabs should look correct and work
correctly.
- Return to the list of tags and click "View subfields" for the 245 tag.
- Click one of the "Edit" buttons for any but the first subfield, e.g.
"a".
- On the "Tag 245 Subfield constraints" page the "a" tab should be
pre-selected.
- Click any of the subfield tabs and drag it to re-order it in the
sequence of tags.
- It should stay in the correct slot when you release it.
- Save and confirm that the new sequence of subfields has been saved.
Perform all the same tests under Administration -> Authority types.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Wed, 20 Apr 2022 15:48:36 +0000 (15:48 +0000)]
Bug 30457: (follow-up) Tweak markup around search form
This patch makes a change to the markup around the patron/clubs search
form on the holds page. This change prevents the Bootstrap tabs from
inheriting an unwanted margin from the fieldset.brief definition.
The change also replaces a <label> tag with an <h2>. I think a heading
makes more sense than a free-floating <label>.
To test, apply the patch and confirm that the holds page
(/cgi-bin/koha/reserve/request.pl?biblionumber=XXX) looks correct.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Tue, 5 Apr 2022 13:49:53 +0000 (13:49 +0000)]
Bug 30457: Convert holds page tabs to Bootstrap
This patch updates the holds page to replace jQueryUI tabs with
Bootstrap.
To test, apply the patch and begin the process of placing a hold on a
title in the catalog.
If you have one or more patron clubs configured:
- You should see two tabs, Patrons and Clubs.
- Both should look correct and work correctly.
- The Patrons tab should be selected initially, with cursor focus in
the form field.
- Switch to the Clubs tab. The cursor focus should move to the form
field under this tab.
- Submit a club search which will return results.
- The page should refresh and the clubs tab should be preselected,
showing the search results.
If you have no patron clubs configured, the page should show only the
Patrons tab.
Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Mon, 4 Apr 2022 18:23:00 +0000 (18:23 +0000)]
Bug 30454: Convert holds awaiting pickup tabs to Bootstrap
This patch updates the holds awaiting pickup page to replace jQueryUI
tabs with Bootstrap tabs. A minor JavaScript change is required to work
with the new HTML structure.
To test you should have multiple holds for one library: Some which are
waiting for less than the number of days specified in
ReservesMaxPickUpDelay, some which are waiting longer.
- Apply the patch and go to Circulation -> Holds awaiting pickup.
- You should see two tabs: "Holds waiting" and "Holds waiting over..."
- Confirm that the tabs look correct and work correctly.
- Confirm that the "Cancel selected" buttons work correctly under each
tab.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Mon, 4 Apr 2022 16:40:20 +0000 (16:40 +0000)]
Bug 30453: Convert offline circulation tabs to Bootstrap
This patch updates the offline circulation page in the staff interface
to use Bootstrap tabs instead of jQueryUI.
To test, apply the patch and make sure the AllowOfflineCirculation
system preference is enabled.
- Go to Circulation -> Built-in offline circulation interface
- Submit a patron barcode in the "Check out" field.
- Under the barcode input field you should see two tabs: Checkouts and
Fines. Confirm that they look correct and work correctly.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Owen Leonard [Fri, 1 Apr 2022 14:30:49 +0000 (14:30 +0000)]
Bug 30434: Convert catalog merge page tabs to Bootstrap
This patch updates the catalog merge template so that it uses Bootstrap
tabs instead of jQueryUI. Some JavaScript is modified to accommodate the
new DOM structure.
The patch also makes a minor HTML correction, adding a missing "</ol>".
To test, apply the patch and search the catalog in the staff client.
- In the search results, check the checkbox for two records.
- Choose Edit -> Merge records.
- Click next to accept the merge reference selection.
- On the next page you should see two tabs under "Source records."
Confirm that they work correctly.
- All checkboxes in the first tab should be checked by default.
- Confirm that tag and subfield selection still works correctly.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Jonathan Druart [Thu, 28 Apr 2022 08:32:28 +0000 (10:32 +0200)]
Bug 30628: Fix patron selection in batch patron modification tool
bug 28014 added Datatables to this view, but the form is submitted with
only the checkboxes from the first page.
Solution adapted from https://stackoverflow.com/questions/33240409/how-to-submit-checkboxes-from-all-pages-with-jquery-datatables
Test plan:
Have more than 20 cardnumbers, use the batch patron modification tool
Select (not all) patrons from the first page and second page
Submit the form
Notice that the patrons you have selected appear on the confirmation
page.
Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Arthur Suzuki [Wed, 20 Feb 2019 20:15:44 +0000 (21:15 +0100)]
Bug 22379: Fix checks not made by ILS-DI method CancelHold
Disable the possibility for a borrower to cancel a reservation
which is either in a Transit or Waiting state.
This reproduce the behaviour seen on the OPAC.
Also replaces previous checks on the borrowernumber
since CanReserveBeCanceledFromOpac already checks this.
--------------------------------
Test plan (before patch) :
-Put a reserve for a borrower
-Try to cancel the reserve providing another borrowernumber as argument
-> Should fail and reply "RecordNotFound"
-> Reserve still appears in the list of holds.
-Try to cancel the reserve providing the borrowernumber the reserve is
for.
-> Should succeed, reply with "Canceled"
-> Reserve do not show up in the list of holds for the borrower
-Put a new reserve with a pickup branch != from the homebranch
-Transfer the item to the pickup branch (reserve status = Transit)
-Try to cancel the reserve (with proper borrowernumber)
-> Should succeed, reply with "Canceled"
-> Reserve do not show up in the list of holds for the borrower
-Checkout the reserved item in the pickup branch (reserve status =
Waiting)
-Try to cancel the reserve (with proper borrowernumber)
-> Should succeed, reply with "Canceled"
-> Reserve do not show up in the list of holds for the borrower
--------------------------------
Test plan (after patch) :
-Put a reserve for a borrower
-Try to cancel the reserve providing another borrowernumber as argument
-> Should fail and reply "BorrowerCannotCancelHold"
-> Reserve still appears in the list of holds.
-Try to cancel the reserve providing the borrowernumber the reserve is
for.
-> Should succeed, reply with "Canceled"
-> Reserve do not show up in the list of holds for the borrower
-Put a new reserve with a pickup branch != from the homebranch
-Transfer the item to the pickup branch (reserve status = Transit)
-Try to cancel the reserve (with proper borrowernumber)
-> Should fail and reply "BorrowerCannotCancelHold"
-> Reserve still appears in the list of holds.
-Checkout the reserved item in the pickup branch (reserve status =
Waiting)
-Try to cancel the reserve (with proper borrowernumber)
-> Should fail and reply "BorrowerCannotCancelHold"
-> Reserve still appears in the list of holds.
Bug 30597: Update RestrictionBlockRenewing description to include auto renew
To test:
- apply the patch, find the syspref, see the new wording
To confirm the behavior:
- set the syspref to Block
- give a patron an auto-renewing checkout and a restriction
- run automatic_renewal.pl, see item does not renew
- switch syspref to allow, repeat, see renewal
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 30366: Remove warn when running automatic_item_modification_by_age.pl
When using the ./misc/cronjobs/automatic_item_modification_by_age.pl -v
after setting up rules under Tools > Automatic item modifications by
age the script outputs several lines of warnings:
Use of uninitialized value in string eq at /kohadevbox/koha/C4/Items.pm
line 1864.
This is because even when there is no condition defined, modification
rule is stored with empty hash, like :
[{"substitutions":[{"field":"items.new_status","value":"0"}],"conditions":[{}],"age":"60","agefield":"items.dateaccessioned"}]
Test plan :
1) Go to Tools > Automatic item modifications by age
2) Create a rule with no conditions, just a substitution
3) Run misc/cronjobs/automatic_item_modification_by_age.pl -v
4) Check there is no warning
5) Edit the rule to add a condition
6) Run misc/cronjobs/automatic_item_modification_by_age.pl -v
7) Check the condition is applied
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 30449: (QA follow-up) Report back on problematic situations
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 30449: Add missing FK constraint on borrower_attribute_types
Old Koha databases probably have it, newer ones might not.
See also BZ description.
Test plan:
[1} Check SHOW CREATE TABLE borrower_attribute_types to see if you
have any index and FK constraint on category_code.
[2] Run updatedatabase.
[3] If you had category_code_fk, it should be replaced.
[4] Remove index and constraint again using things like:
alter table borrower_attribute_types drop constraint `borrower_attribute_types_ibfk_1`;
alter table borrower_attribute_types drop index category_code;
[5] Run updatedatabase.
[6] You should have KEY category_code and FK borrower_attribute_types_ibfk_1.
[7] Run updatedatabase. Idempotent, no changes.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Martin Renvoize [Mon, 25 Apr 2022 14:37:33 +0000 (15:37 +0100)]
Bug 30610: Update on click binding for print receipt
This patch updates the binding for the on click even of the print
receipt button so that subsequent pages in the datatable work with the
reciept printing button.
Test plan
1) Enable cash management and process enough transactions to display
more than one page of transactions in the register details page.
2) Confirm the 'Print receipt' button works on the first page of
transactions
3) Confirm the 'Print receipt' button works on subsequent transactions
pages in the datatable.
4) Confirm the same for the past transactions table.
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 30565: DBIx schema change for stockrotationrotas
No test plan.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 30565: Database revision for stockrotationrotas
Add unique key if needed.
Adjust description column to make it NOT NULL.
Test plan:
(Optionally:) Drop unique key, make description nullable.
Run dbrev.
Check if unique key present, and description not-nullable.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
The unique key was added in a dbrev and is referred to in code.
But forgotten in kohastructure.
Test plan:
Run new install or kohastructure.sql on empty db.
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Martin Renvoize [Fri, 22 Apr 2022 14:19:29 +0000 (15:19 +0100)]
Bug 30576: (follow-up) Corrections to behaviour to reflect unit tests
The unit tests highlighted my original patch didn't cover the full
preference description.
We now replace the 'standard' option with the fields from the preference
and we also add those fields as options to the field selection in
advanced searches.
This patch also adjusts the tests to test for that and reflects the
expected changes to the number of options displayed in the select boxes.
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Martin Renvoize [Thu, 21 Apr 2022 11:52:32 +0000 (12:52 +0100)]
Bug 30576: Use DefaultPatronSearchFields in patron search
This patch corrects the handling of the 'Standard' search field in
patron searches such that it accurately reflects the contents of the
DefaultPatronSearchFields system preference and falls back to a hard
coded list instead of always using the hard coded list.
To test:
1) Empty the contents of DefaultPatronSearchFields systempreference
2) Perform a patron search from the header search
3) Inspect the patrons API request and note that we search on the
default fallback fields of firstname, surname, othernames,
cardnumber and userid (and some extended attributes which are
historically hard coded).
4) Navigate to the memebers-home by clicking the 'Patrons' button from
the main page
5) Perform another search using the filters on the left with 'Standard'
selected.
6) Note the same list of search fields used as above in the patrons API
request.
7) Update the DefaultPatronSearchFields systempreference adding one or
more borrower fields in a comma delimited list.
8) Repeat steps 2 -> 6 but this time upon inspecting the API request you
should find that only the fields in your DefaultPatronSearchFields
list are searched (along with the hard coded extended attributes
list).
9) Signoff
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Jonathan Druart [Wed, 27 Apr 2022 10:34:11 +0000 (12:34 +0200)]
Bug 30626: Fix test
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Jonathan Druart [Wed, 27 Apr 2022 10:33:03 +0000 (12:33 +0200)]
Bug 30626: DT REST API wrapper - Fix general search
The general search query is not built correctly.
Say you have a table with column filters, like the main patron search:
General filter: henry
Specific filter on the 'Name' column: h
The generated query will be (= are actually LIKE):
{ Column1="henry" AND Column3="henry", ...} AND { Column2="h" }
The first term does not contain the Column2 attribute.
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Jonathan Druart [Thu, 28 Apr 2022 07:43:06 +0000 (09:43 +0200)]
Bug 30630: Prevent crash on check-in if HoldsAutoFill is ON
RevertWaitingStatus has already removed the itemnumber from the hold, passing $itemnumber (from scanned item) should work, as it will reattach the hold to the item
Test plan:
1 - Enable HoldsAutoFill
2 - Place a title level hold
3 - Check in an item and confirm hold
4 - Switch to another branch
5 - Checkin the item
Without this patch you got
Can't call method "biblionumber" on an undefined value at /kohadevbox/koha/C4/Reserves.pm line 1577.
at /kohadevbox/koha/C4/Reserves.pm line 1576
With this patch applied the operation succeeds
Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Nick Clemens [Fri, 4 Mar 2022 16:19:35 +0000 (16:19 +0000)]
Bug 24001: Fix Card template/rpinter profile creation and edit
This patch adjusts the template/profiles to use the default of '0'
This should probably be NULL, and the columns foreign keys, this code
could use a further rewrite, but this should fix a long standing bug
To test:
1 - Using the fresh install, with all the sample data.
2 - Go to Home › Tools › Patron card creator › Templates
3 - New > Card template
4 - Save
5 - Error: DBD::mysql::st execute failed: Incorrect integer value: '' for column 'profile_id' at row 1
6 - Edit an existing template
7 - Save
8 - Error: Can't bless non-reference value at /kohadevbox/koha/C4/Creators/Profile.pm line 89
9 - Create a new 'Printer profile'
10 - Save
11 - Error: DBD::mysql::st execute failed: Incorrect integer value: '' for column 'template_id' at row 1
12 - Apply the attached patch.
13 - Verify you can create a new 'Card template' and 'Printer profile' with no errors
14 - Verify you can edit and save both of the newly created objects above
Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Blou [Tue, 30 Jun 2020 16:50:09 +0000 (12:50 -0400)]
Bug 24001: Fix patron card template edition
Error when saving Patron card Template:
Can't bless non-reference value at
/home/vagrant/kohaclone/C4/Creators/Profile.pm line 89
This is caused by the profile dropdown offering invalid choices and is
fixed by adding a filter to limit options to creator = 'Patroncards'.
The UI already handles the case where no valid profile is avaiable.
Signed-off-by: Alexis Ripetti <alexis.ripetti@inLibro.com> Signed-off-by: David Nind <david@davidnind.com> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Bug 29092: Add timestamp to account-fines table column settings
Table settings for the account_fines table (in the Patrons section, the
"Transactions" table in a patron account) are missing a checkbox for the
"Updated On" column. Because of this, one cannot hide the Updated On
column and any other values one sets here get applied to the wrong
columns.
This patch adds timestamp to account-fines column settings.
To test:
1) Navigate to columns settings page and modify account-fines tables
column.
=> Note that if you hide e.g. account_type column, column
credit_number is hidden on patrons account page
2) Apply patch and update database.
=> Account-fines column settings has now a option to hide timestamp.
=> Correct columns should now be hidden.
Sponsored-by: Koha-Suomi Oy Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
Fridolin Somers [Fri, 18 Feb 2022 20:44:14 +0000 (10:44 -1000)]
Bug 30136: Add back to top button to OPAC
Like in many websites, when scrolling down the page make a button appear to go back to top.
This can be very useful specially in search results page.
This patch adds to OPAC using Javascript a button with id "backtotop".
Button appears when 300 pixels from top are hidden.
This value may be adapted.
Test plan
1) Go to OPAC
2) Perform a search with many results
3) Scroll down
=> Back to top button appears
4) Manually scroll back to top
=> Button disappears
5) Scroll down and click on Back to top button
=> You get to top
Signed-off-by: Barbara Johnson <barbara.johnson@bedfordtx.gov> Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>