We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. This but is to add just the volume management itself, which no functionality tied to volumes.
Created attachment 100652 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items
Created attachment 100653 [details] [review] Bug 24857: Add Schema files
Created attachment 100654 [details] [review] Bug 24857: Add Koha Object(s)
Created attachment 100655 [details] [review] Bug 24857: Add Object Methods
Created attachment 100656 [details] [review] Bug 24857: API spec
Created attachment 100657 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded)
Created attachment 100658 [details] [review] Bug 24857: Implement volume related controllers
Created attachment 100659 [details] [review] Bug 24857: Add volume management to detail.pl
Created attachment 100660 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume
Created attachment 100661 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl
Created attachment 100662 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted
Created attachment 101637 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items
Created attachment 101638 [details] [review] Bug 24857: Add new Schema files
Created attachment 101639 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 101640 [details] [review] Bug 24857: Add Koha Object(s)
Created attachment 101641 [details] [review] Bug 24857: Add Object Methods
Created attachment 101642 [details] [review] Bug 24857: API spec
Created attachment 101643 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded)
Created attachment 101644 [details] [review] Bug 24857: Implement volume related controllers
Created attachment 101645 [details] [review] Bug 24857: Add volume management to detail.pl
Created attachment 101646 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume
Created attachment 101647 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl
Created attachment 101648 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted
Created attachment 101650 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items
Created attachment 101651 [details] [review] Bug 24857: Add new Schema files
Created attachment 101652 [details] [review] Bug 24857: Add Koha Object(s)
Created attachment 101653 [details] [review] Bug 24857: Add Object Methods
Created attachment 101654 [details] [review] Bug 24857: API spec
Created attachment 101655 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded)
Created attachment 101656 [details] [review] Bug 24857: Implement volume related controllers
Created attachment 101657 [details] [review] Bug 24857: Add volume management to detail.pl
Created attachment 101658 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume
Created attachment 101659 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl
Created attachment 101660 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted
Created attachment 101661 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 101670 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items
Created attachment 101671 [details] [review] Bug 24857: Add new Schema files
Created attachment 101672 [details] [review] Bug 24857: Add Koha Object(s)
Created attachment 101673 [details] [review] Bug 24857: Add Object Methods
Created attachment 101674 [details] [review] Bug 24857: API spec
Created attachment 101675 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded)
Created attachment 101676 [details] [review] Bug 24857: Implement volume related controllers
Created attachment 101677 [details] [review] Bug 24857: Add volume management to detail.pl
Created attachment 101678 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume
Created attachment 101679 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl
Created attachment 101680 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted
Created attachment 101681 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Getting an ISE because volume info is not cleared from items when volume is deleted -add items to volume -delete volume -see that items still show as in deleted volume -select items, see you still have volume-related links even though there are no volumes -click "add/modify volume" and receive ISE
Created attachment 101730 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items
Created attachment 101731 [details] [review] Bug 24857: Add new Schema files
Created attachment 101732 [details] [review] Bug 24857: Add Koha Object(s)
Created attachment 101733 [details] [review] Bug 24857: Add Object Methods
Created attachment 101734 [details] [review] Bug 24857: API spec
Created attachment 101735 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded)
Created attachment 101736 [details] [review] Bug 24857: Implement volume related controllers
Created attachment 101737 [details] [review] Bug 24857: Add volume management to detail.pl
Created attachment 101738 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume
Created attachment 101739 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl
Created attachment 101740 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted
Created attachment 101741 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 101752 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101753 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101754 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101755 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101756 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101757 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101758 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101759 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101760 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101761 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101762 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 101763 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
This sounds odd. What's a volume mean in this context?
A volume is a grouping of items within a bib. See bug 24860 for one implementation (patrons can place hold on a volume, get first available item within that volume). Imagine, say, a bib containing multiple copies of a multi-volume series. Patron wants whichever copy of Book 1 comes in first.
When will this be added to the system and will ther be a way to identify and possibly migrate or create volumes for items in the system cuurently
Could this also be used in context of bound serials (all issues of a year bound into one volume)?
Laura - It's hard to say when this will be in Koha, as it has not yet gone through QA. This patch doesn't include a mechanism to automatically assign items to volumes, but existing items can be added to volumes manually. Katrin - Yes, absolutely! I can see ways in which defining volumes of periodicals would be useful. Though the only functionality beyond the creation of a volume that's currently being worked on is that in bug 24860.
(In reply to Andrew Fuerste-Henry from comment #74) > A volume is a grouping of items within a bib. See bug 24860 for one > implementation (patrons can place hold on a volume, get first available item > within that volume). Imagine, say, a bib containing multiple copies of a > multi-volume series. Patron wants whichever copy of Book 1 comes in first. That's interesting. I wonder if we should use more generic terminology like "item_group" instead of "volume". Perhaps each group could have a translatable label assigned so you could choose "Volume", "Kit", etc. This might be useful for libraries that provide kits, toy bags, computers (with peripherals). Individual pieces could be barcoded and be items in their own right, but be grouped together.
In our last system it was called parts and was used for books dvds kits, etc
Y'all might have a look at bug 24023, which adds a way to group items to check out all together.
Created attachment 104952 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104953 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104954 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104955 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104956 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104957 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104958 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104959 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104960 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104961 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104962 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com>
Created attachment 104963 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
I see this was signed off... What version of Koha will it be available? Not sure if there is somewhere I need to look to see this information... If so please let me know so I won't have to ask this question again. Thanks in advance
Created attachment 104964 [details] [review] Bug 24857: Copy the volume to the item's enumchron
Created attachment 104966 [details] [review] Bug 24857: Add user permission for volumes management
(In reply to Laura Horgan from comment #93) > I see this was signed off... What version of Koha will it be available? Not > sure if there is somewhere I need to look to see this information... If so > please let me know so I won't have to ask this question again. Thanks in > advance Hi Laura, after sign off this still needs to go through QA. For 20.05 it's too late, as we have already entered 'feature freeze' (focusing on bug fixing and stabilizing) and 'string freeze' (no GUI changes for translations to catch up) for this release. The next one this could be released with is 22.11. Koha doesn't do road maps, but for every version we include what it's ready on time. So the bug and the status is the best way to see what's going on.
Created attachment 106728 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106729 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106730 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106731 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106732 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106733 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106734 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106735 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106736 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106737 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106738 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106739 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106740 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 106741 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Patches don't apply cleanly right now, can you please rebase? Apply? [(y)es, (n)o, (i)nteractive] y Applying: Bug 24857: Update Database Applying: Bug 24857: Add new Schema files Applying: Bug 24857: Add Koha Object(s) Applying: Bug 24857: Add Object Methods Applying: Bug 24857: API spec Applying: Bug 24857: Koha::Biblio::Volume methods Applying: Bug 24857: Implement volume related controllers Applying: Bug 24857: Add volume management to detail.pl Applying: Bug 24857: Add ability to attach newly cataloged items to a volume Applying: Bug 24857: Add ability to manage item's volumes from detail.pl .git/rebase-apply/patch:121: trailing whitespace. if($query->cookie("holdfor")){ error: sha1 information is lacking or useless (koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt). error: could not build fake ancestor Patch failed at 0001 Bug 24857: Add ability to manage item's volumes from detail.pl The copy of the patch that failed is found in: .git/rebase-apply/patch When you have resolved this problem run "git bz apply --continue". If you would prefer to skip this patch, instead run "git bz apply --skip". To restore the original branch and stop patching run "git bz apply --abort". Patch left in /tmp/Bug-24857-Add-ability-to-manage-items-volumes-from-GJYBG0.patch
Created attachment 108443 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108444 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108445 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108446 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108447 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108448 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108449 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108450 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108451 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108452 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108453 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108454 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108455 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108456 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
This one is a little scary already, but going in for a first review :) 1) QA script Several issues found, please fix: FAIL Koha/Biblio/Volume.pm FAIL forbidden patterns forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 16) FAIL Koha/Biblio/Volume/Item.pm FAIL forbidden patterns forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 16) FAIL pod *** WARNING: empty section in previous paragraph in file Koha/Biblio/Volume/Item.pm FAIL Koha/Biblio/Volume/Items.pm FAIL forbidden patterns forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 16) FAIL pod *** WARNING: empty section in previous paragraph in file Koha/Biblio/Volume/Items.pm FAIL Koha/Biblio/Volumes.pm FAIL forbidden patterns forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 16) FAIL pod *** WARNING: empty section in previous paragraph in file Koha/Biblio/Volumes.pm FAIL Koha/REST/V1/Biblios/Volumes.pm FAIL forbidden patterns forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 16) FAIL Koha/REST/V1/Biblios/Volumes/Items.pm FAIL forbidden patterns forbidden pattern: Incorrect license statement (using postal address), may be a false positive if the file is coming from outside Koha (bug 24545) (line 16) FAIL Koha/Schema/Result/Volume.pm FAIL pod coverage POD is missing for koha_object_class POD is missing for koha_objects_class FAIL Koha/Schema/Result/VolumeItem.pm FAIL pod coverage POD is missing for koha_object_class POD is missing for koha_objects_class FAIL koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt FAIL forbidden patterns forbidden pattern: simple-quote string (line 1446) FAIL koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt FAIL filters missing_filter at line 20 ( var has_volumes = [% volumes.count %];) FAIL js_in_body 2) Doubled up use statement in Biblio.pm +use Koha::Biblio::Volumes; +use Koha::Biblio::Volumes; 3) REST API I'd love to have Tomas take a look on the REST API bits here. 4) sysprefs.sql After all the use statements were so nicely alphabetically resorted, THIS? +('EnableVolumes','0','','Enable volumes feature','YesNo'), ('viewISBD','1','','Allow display of ISBD view of bibiographic records','YesNo'), ;) 5) Pref (question) Enable|Don't enable volumes feature to allow collecting groups of items on a record into volumes. Does it mean the items have to be from the same record or could they be from different ones? 6) Table configuration The new volumn column on the holdings table needs to be added to the table configuration options. 7) GUI "Create new" on the items table would work nicer as "Create new volume" or "New volume" to give context to translators and for better accessibility. Future improvements: It might be nice to offer a kind of grouped view for the items in volumes... but I am not sure yet how this would work best. It might be nice to show the volumes in the OPAC as well. 8) Use case and future plans? Can you tell a bit about in what context or use case this partner is using this? Serials?
Hm, I've checked the test plan on the dependent bug now too and am still a little confused about the use case for this. Reading "volume" made me think of something that would be used for serial issues bound together into one volume (serials, binding) But this doesn't seem to be the case with how the volume hold feature works. Does this more work like a "Hold group" maybe? One item out of the group appears to satisfy the hold - so maybe "Group" would be a better word to describe the idea?
Created attachment 108666 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108667 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108668 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108669 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108670 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108671 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108672 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108673 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108674 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108675 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108676 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108677 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108678 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108679 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 108680 [details] [review] Bug 24857: Fix license statements
Created attachment 108681 [details] [review] Bug 24857: Fix POD
Created attachment 108682 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 108683 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 108684 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 108685 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 108686 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
(In reply to Katrin Fischer from comment #126) > This one is a little scary already, but going in for a first review :) > > 1) QA script Fixed! > 2) Doubled up use statement in Biblio.pm Fixed! > 3) REST API > > I'd love to have Tomas take a look on the REST API bits here. I'll ask Tomas to take a look! > > 4) sysprefs.sql Fixed! > > 5) Pref (question) > > Enable|Don't enable > volumes feature to allow collecting groups of items on a record into volumes. > > Does it mean the items have to be from the same record or could they be from > different ones? We decided early on that volumes would have contain only items within the same record. > 6) Table configuration > > The new volumn column on the holdings table needs to be added to the table > configuration options. This table is not a datatable so that doesn't really apply. > 7) GUI > > "Create new" on the items table would work nicer as "Create new volume" or > "New volume" to give context to translators and for better accessibility. Fixed! > Future improvements: > It might be nice to offer a kind of grouped view for the items in volumes... > but I am not sure yet how this would work best. > It might be nice to show the volumes in the OPAC as well. Agreed. If volume management turns out to be popular, that would be an easy extension to this work. > 8) Use case and future plans? > > Can you tell a bit about in what context or use case this partner is using > this? Serials? Our current and only use case at this time is for volume level holds. Some libraries keep different volumes on the same record ( imagine different seasons of a TV series ). In these cases, a bib level hold won't work if you only want Season 1, but if there are 3 copies of season one, you wouldn't want an item level hold either. Volume level holds solve this problem.
(In reply to Katrin Fischer from comment #127) > Hm, I've checked the test plan on the dependent bug now too and am still a > little confused about the use case for this. > > Reading "volume" made me think of something that would be used for serial > issues bound together into one volume (serials, binding) But this doesn't > seem to be the case with how the volume hold feature works. That is correct. The term volume is used here because that is what most if not all other ILSs use. > Does this more work like a "Hold group" maybe? One item out of the group > appears to satisfy the hold - so maybe "Group" would be a better word to > describe the idea? You are correct! I described it in a bit more detail in my previous comment.
Hi Kyle, >> 3) REST API >> >> I'd love to have Tomas take a look on the REST API bits here. >I'll ask Tomas to take a look! Waiting for Tomas to comment then :) >> 6) Table configuration >> >> The new volumn column on the holdings table needs to be added to the table >> configuration options. >This table is not a datatable so that doesn't really apply. That one is a misunderstanding I think: The items table on the detail page is controlled by the table configuration settings and the volume column appears there as a new column. Table configuration > catalog > holdings_table 9) Unit tests I am a quite suspicious that there are no unit tests at all... We have new things in Biblio.pm, Items.pm and also new modules.
Created attachment 109074 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109075 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109076 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109077 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109078 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109079 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109080 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109081 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109082 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109083 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109084 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109085 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109086 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109087 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109088 [details] [review] Bug 24857: Fix license statements
Created attachment 109089 [details] [review] Bug 24857: Fix POD
Created attachment 109090 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 109091 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 109092 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 109093 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 109094 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
(In reply to Katrin Fischer from comment #151) > Hi Kyle, > > >> 3) REST API > >> > >> I'd love to have Tomas take a look on the REST API bits here. > > >I'll ask Tomas to take a look! > > Waiting for Tomas to comment then :) > > > >> 6) Table configuration > >> > >> The new volumn column on the holdings table needs to be added to the table > >> configuration options. > > >This table is not a datatable so that doesn't really apply. > > That one is a misunderstanding I think: The items table on the detail page > is controlled by the table configuration settings and the volume column > appears there as a new column. > > Table configuration > catalog > holdings_table I'll take a look! > > > 9) Unit tests > > I am a quite suspicious that there are no unit tests at all... We have new > things in Biblio.pm, Items.pm and also new modules. I'll add unit tests!
Created attachment 109795 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109796 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109797 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109798 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109799 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109800 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109801 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109802 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109803 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109804 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109805 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109806 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109807 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109808 [details] [review] Bug 24857: Fix license statements
Created attachment 109809 [details] [review] Bug 24857: Fix POD
Created attachment 109810 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 109811 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 109812 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 109813 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 109814 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
Created attachment 109815 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 109894 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings
Created attachment 109901 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109902 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109903 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109904 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109905 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109906 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109907 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109908 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109909 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109910 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109911 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109912 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109913 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 109914 [details] [review] Bug 24857: Fix license statements
Created attachment 109915 [details] [review] Bug 24857: Fix POD
Created attachment 109916 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 109917 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 109918 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 109919 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 109920 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
Created attachment 109921 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 109922 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings
Created attachment 109923 [details] [review] Bug 24857: (QA follow-up) Unit tests
Hi Kyle, tests pass, but there is a db error when you run them: [2020-09-12 21:06:37.69672] [26709] [debug] POST "/api/v1/biblios/XXX/volumes" (57471cdc) [2020-09-12 21:06:37.69813] [26709] [debug] Routing to controller "Koha::REST::V1::Auth" and action "under" [2020-09-12 21:06:37.72833] [26709] [debug] Routing to controller "Koha::REST::V1::Biblios::Volumes" and action "add" DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st execute failed: Cannot add or update a child row: a foreign key constraint fails (`koha_kohadev`.`volumes`, CONSTRAINT `volumes_ibfk_1` FOREIGN KEY (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON UPDATE CASCADE) [for Statement "INSERT INTO `volumes` ( `biblionumber`, `created_on`, `description`, `display_order`, `updated_on`) VALUES ( ?, NOW(), ?, ?, current_timestamp )" with ParamValues: 0=0, 1="Vol 1", 2=1] at /home/vagrant/kohaclone/Koha/Object.pm line 166 [2020-09-12 21:06:37.73397] [26709] [debug] 409 Conflict (0.037233s, 26.858/s) ok 5 - POST //jFfMRdUyfmSrbUO5TWioGEhp2HSDQXGSqy01hFdFW0DUU9utfXIyBXUNR:thePassword123@/api/v1/biblios/XXX/volumes ok 6 - SWAGGER3.2.1 ok 2 - volumes add() tests Can you please check?
Created attachment 113136 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113137 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113138 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113139 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113140 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113141 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113142 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113143 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113144 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113145 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113146 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113147 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113148 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113149 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113150 [details] [review] Bug 24857: Fix license statements
Created attachment 113151 [details] [review] Bug 24857: Fix POD
Created attachment 113152 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 113153 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 113154 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 113155 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 113156 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
Created attachment 113157 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings
Created attachment 113158 [details] [review] Bug 24857: (QA follow-up) Unit tests
Created attachment 113159 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 113160 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete
Created attachment 113168 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113169 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113170 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113171 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113172 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113173 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113174 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113175 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113176 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113177 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113178 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113179 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113180 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 113181 [details] [review] Bug 24857: Fix license statements
Created attachment 113182 [details] [review] Bug 24857: Fix POD
Created attachment 113183 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 113184 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 113185 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 113186 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 113187 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
Created attachment 113188 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings
Created attachment 113189 [details] [review] Bug 24857: (QA follow-up) Unit tests
Created attachment 113190 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 113191 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete
(In reply to Katrin Fischer from comment #219) > Hi Kyle, > > tests pass, but there is a db error when you run them: > > [2020-09-12 21:06:37.69672] [26709] [debug] POST > "/api/v1/biblios/XXX/volumes" (57471cdc) > [2020-09-12 21:06:37.69813] [26709] [debug] Routing to controller > "Koha::REST::V1::Auth" and action "under" > [2020-09-12 21:06:37.72833] [26709] [debug] Routing to controller > "Koha::REST::V1::Biblios::Volumes" and action "add" > DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::mysql::st > execute failed: Cannot add or update a child row: a foreign key constraint > fails (`koha_kohadev`.`volumes`, CONSTRAINT `volumes_ibfk_1` FOREIGN KEY > (`biblionumber`) REFERENCES `biblio` (`biblionumber`) ON DELETE CASCADE ON > UPDATE CASCADE) [for Statement "INSERT INTO `volumes` ( `biblionumber`, > `created_on`, `description`, `display_order`, `updated_on`) VALUES ( ?, > NOW(), ?, ?, current_timestamp )" with ParamValues: 0=0, 1="Vol 1", 2=1] at > /home/vagrant/kohaclone/Koha/Object.pm line 166 > [2020-09-12 21:06:37.73397] [26709] [debug] 409 Conflict (0.037233s, > 26.858/s) > ok 5 - POST > //jFfMRdUyfmSrbUO5TWioGEhp2HSDQXGSqy01hFdFW0DUU9utfXIyBXUNR:thePassword123@/ > api/v1/biblios/XXX/volumes > ok 6 - SWAGGER3.2.1 > ok 2 - volumes add() tests > > Can you please check? That error is expected, as we are testing adding a volume for an invalid biblionumber.
As this had been waiting so long I've tried to fix the conflict in kohastructure.sql myself, but then ran into the next one in paths.json... Can you please rebase?
Created attachment 120495 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120496 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120497 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120498 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120499 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120500 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120501 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120502 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120503 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120504 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120505 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120506 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120507 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 120508 [details] [review] Bug 24857: Fix license statements
Created attachment 120509 [details] [review] Bug 24857: Fix POD
Created attachment 120510 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 120511 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 120512 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 120513 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 120514 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
Created attachment 120515 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings
Created attachment 120516 [details] [review] Bug 24857: (QA follow-up) Unit tests
Created attachment 120517 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete
Created attachment 120518 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 122808 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122809 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122810 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122811 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122812 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122813 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122814 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122815 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122816 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122817 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122818 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122819 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122820 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us>
Created attachment 122821 [details] [review] Bug 24857: Fix license statements
Created attachment 122822 [details] [review] Bug 24857: Fix POD
Created attachment 122823 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt
Created attachment 122824 [details] [review] Bug 24857: Fix simple-quote string
Created attachment 122825 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes'
Created attachment 122826 [details] [review] Bug 24857: Fix sorting of new syspref
Created attachment 122827 [details] [review] Bug 24857: Change button text from "Create new" to "New volume"
Created attachment 122828 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings
Created attachment 122829 [details] [review] Bug 24857: (QA follow-up) Unit tests
Created attachment 122830 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete
Created attachment 122831 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH]
Created attachment 123882 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123883 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123884 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123885 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123886 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123887 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123888 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123889 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123890 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123891 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123892 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123893 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123894 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123895 [details] [review] Bug 24857: Fix license statements Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123896 [details] [review] Bug 24857: Fix POD Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123897 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123898 [details] [review] Bug 24857: Fix simple-quote string Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123899 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes' Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123900 [details] [review] Bug 24857: Fix sorting of new syspref Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123901 [details] [review] Bug 24857: Change button text from "Create new" to "New volume" Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123902 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123903 [details] [review] Bug 24857: (QA follow-up) Unit tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123904 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123905 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123906 [details] [review] Bug 24857: (QA follow-up) Fix QA script issues Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123907 [details] [review] Bug 24857: (follow-up) Use $c->unhandled_exception This patch makes the controller up to date with the currently used style and codebase. It also sinlences a useless warning, and makes it return 404 (instead of 409) when trying to add items to a volume on a non-existing biblio. To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Some warnings 2. Apply this patch 3. Repeat 1 => SUCCESS: No errors, no warnings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123908 [details] [review] Bug 24857: Use $c->objects->find Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123909 [details] [review] Bug 24857: Fix permissions in spec This patch corrects the spec so it requires the right permissions.
Created attachment 123910 [details] [review] Bug 24857: (QA follow-up) Adding items should check volume linked to biblio I noticed some tests included /biblios/{biblio_id}/volumes... in the URL. And they passed :-D This means the biblio_id is never tested. This patch fixes those two tests so they have valid biblio_id in the path, and adds a proper regression test for the expected behavior (409). To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Notice the tests pass, even with bad data on the request 2. Apply this patch, notice a test is added for the bad biblio_id case and the other two tests are fixed so they have the intended biblio_id. 3. Repeat 1 => SUCCESS: Tests pass! This means things are correctly tested in the controller and the unit tests cover teh 'bad case' returning 409. 4. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 123912 [details] [review] Bug 24857: (QA follow-up) Further spec fixes Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124021 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124022 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124023 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124024 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124025 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124026 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124027 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124028 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124029 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124030 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124031 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124032 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124033 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124034 [details] [review] Bug 24857: Fix license statements Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124035 [details] [review] Bug 24857: Fix POD Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124036 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124037 [details] [review] Bug 24857: Fix simple-quote string Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124038 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes' Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124039 [details] [review] Bug 24857: Fix sorting of new syspref Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124040 [details] [review] Bug 24857: Change button text from "Create new" to "New volume" Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124041 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124042 [details] [review] Bug 24857: (QA follow-up) Unit tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124043 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124044 [details] [review] Bug 24857: Update existing Schema files [DO NOT PUSH] Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124045 [details] [review] Bug 24857: (QA follow-up) Fix QA script issues Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124046 [details] [review] Bug 24857: (follow-up) Use $c->unhandled_exception This patch makes the controller up to date with the currently used style and codebase. It also sinlences a useless warning, and makes it return 404 (instead of 409) when trying to add items to a volume on a non-existing biblio. To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Some warnings 2. Apply this patch 3. Repeat 1 => SUCCESS: No errors, no warnings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124047 [details] [review] Bug 24857: Use $c->objects->find Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124048 [details] [review] Bug 24857: Fix permissions in spec This patch corrects the spec so it requires the right permissions.
Created attachment 124049 [details] [review] Bug 24857: (QA follow-up) Adding items should check volume linked to biblio I noticed some tests included /biblios/{biblio_id}/volumes... in the URL. And they passed :-D This means the biblio_id is never tested. This patch fixes those two tests so they have valid biblio_id in the path, and adds a proper regression test for the expected behavior (409). To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Notice the tests pass, even with bad data on the request 2. Apply this patch, notice a test is added for the bad biblio_id case and the other two tests are fixed so they have the intended biblio_id. 3. Repeat 1 => SUCCESS: Tests pass! This means things are correctly tested in the controller and the unit tests cover teh 'bad case' returning 409. 4. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124050 [details] [review] Bug 24857: (QA follow-up) Further spec fixes Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124051 [details] [review] Bug 24857: Rename Volumes => Item groups (DB) This patch renames Volumes => Item groups in the DB structure, and also on permissions and sysprefs. Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124052 [details] [review] Bug 24857: Adapt code to the volumes => item_groups change This patch updates the code so all references to 'volumes' are translated into 'item groups'. Relevant changes: - API routes and specs - Permission name is changed - Syspref name changed Note: I removed a behavior that felt unnatural (at least in the place it was put): deleting the item group if the linked item is deleted. It feels like a controller thing, and also something that could be offered to the staff on the UI on item deletion. To avoid blocking the feature, I suggest this removal, and discuss it in its own context. To test: 1. Run: $ reset_all 2. Apply this patchset 3. Run: $ updatedatabase => SUCCESS: Update works 4. Repeat 1 (with the patches applied) => SUCCESS: Install works with this DB structure 5. Run all the tests: $ kshell k$ git diff origin/master --name-only | grep -e '\.t$' | xargs prove => SUCCESS: Tests pass! 6. Follow the original plan (with the Volume=>ItemGRoup change in mind) => SUCCESS: All good! 7. Sign off :-D
Created attachment 124053 [details] [review] Bug 24857: item_group_items.item_id must be unique
I'm really glad to see Volume change to Item Group, because we've had a number of times when we've wanted to have Item Group holds where library staff could group together items. I haven't looked through the code in a long time. Is it just for holds or does it handle aspects of circulation too like checkouts? That's just a question and by no means a comment on the patches. Just curious.
(In reply to David Cook from comment #382) > I'm really glad to see Volume change to Item Group, because we've had a > number of times when we've wanted to have Item Group holds where library > staff could group together items. > > I haven't looked through the code in a long time. Is it just for holds or > does it handle aspects of circulation too like checkouts? That's just a > question and by no means a comment on the patches. Just curious. This code implements the groups. There's a separate bug that implements hold fulfillment by group items. That one will need some changes after the refactoring we made. It would be great if you could go QA this one so we can build the rest on top of this.
(In reply to Tomás Cohen Arazi from comment #383) > This code implements the groups. There's a separate bug that implements hold > fulfillment by group items. That one will need some changes after the > refactoring we made. > > It would be great if you could go QA this one so we can build the rest on > top of this. With 33 patches, I think this might make it on the TODO list that I just feel guilty about and never action :(.
(In reply to David Cook from comment #384) > (In reply to Tomás Cohen Arazi from comment #383) > > This code implements the groups. There's a separate bug that implements hold > > fulfillment by group items. That one will need some changes after the > > refactoring we made. > > > > It would be great if you could go QA this one so we can build the rest on > > top of this. > > With 33 patches, I think this might make it on the TODO list that I just > feel guilty about and never action :(. If you apply them, and do a git diff, things are pretty clear and simple. I hesitated to squash everything because it wasn't my dev.
(In reply to Tomás Cohen Arazi from comment #385) > (In reply to David Cook from comment #384) > > (In reply to Tomás Cohen Arazi from comment #383) > > > This code implements the groups. There's a separate bug that implements hold > > > fulfillment by group items. That one will need some changes after the > > > refactoring we made. > > > > > > It would be great if you could go QA this one so we can build the rest on > > > top of this. > > > > With 33 patches, I think this might make it on the TODO list that I just > > feel guilty about and never action :(. > > If you apply them, and do a git diff, things are pretty clear and simple. That takes a fair number of steps (starting up koha-testing-docker is very slow these days due to db setup), and it isn't easy to comment via Bugzilla when the changes are spread out across a large number of overlapping patches. > I hesitated to squash everything because it wasn't my dev. Yeah that makes sense. I wasn't suggesting that someone should. I'm just super time poor for Koha these days. -- Mostly it's just me making excuses not to do things :(
Created attachment 124331 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124332 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124333 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124334 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124335 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124336 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124337 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124338 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124339 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124340 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124341 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124342 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124343 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124344 [details] [review] Bug 24857: Fix license statements Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124345 [details] [review] Bug 24857: Fix POD Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124346 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124347 [details] [review] Bug 24857: Fix simple-quote string Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124348 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes' Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124349 [details] [review] Bug 24857: Fix sorting of new syspref Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124351 [details] [review] Bug 24857: Change button text from "Create new" to "New volume" Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124352 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124353 [details] [review] Bug 24857: (QA follow-up) Unit tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124354 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124355 [details] [review] Bug 24857: (QA follow-up) Fix QA script issues Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124356 [details] [review] Bug 24857: (follow-up) Use $c->unhandled_exception This patch makes the controller up to date with the currently used style and codebase. It also sinlences a useless warning, and makes it return 404 (instead of 409) when trying to add items to a volume on a non-existing biblio. To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Some warnings 2. Apply this patch 3. Repeat 1 => SUCCESS: No errors, no warnings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124357 [details] [review] Bug 24857: Use $c->objects->find Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124358 [details] [review] Bug 24857: Fix permissions in spec This patch corrects the spec so it requires the right permissions.
Created attachment 124359 [details] [review] Bug 24857: (QA follow-up) Adding items should check volume linked to biblio I noticed some tests included /biblios/{biblio_id}/volumes... in the URL. And they passed :-D This means the biblio_id is never tested. This patch fixes those two tests so they have valid biblio_id in the path, and adds a proper regression test for the expected behavior (409). To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Notice the tests pass, even with bad data on the request 2. Apply this patch, notice a test is added for the bad biblio_id case and the other two tests are fixed so they have the intended biblio_id. 3. Repeat 1 => SUCCESS: Tests pass! This means things are correctly tested in the controller and the unit tests cover teh 'bad case' returning 409. 4. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124360 [details] [review] Bug 24857: (QA follow-up) Further spec fixes Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124361 [details] [review] Bug 24857: Rename Volumes => Item groups (DB) This patch renames Volumes => Item groups in the DB structure, and also on permissions and sysprefs. Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124362 [details] [review] Bug 24857: Adapt code to the volumes => item_groups change This patch updates the code so all references to 'volumes' are translated into 'item groups'. Relevant changes: - API routes and specs - Permission name is changed - Syspref name changed Note: I removed a behavior that felt unnatural (at least in the place it was put): deleting the item group if the linked item is deleted. It feels like a controller thing, and also something that could be offered to the staff on the UI on item deletion. To avoid blocking the feature, I suggest this removal, and discuss it in its own context. To test: 1. Run: $ reset_all 2. Apply this patchset 3. Run: $ updatedatabase => SUCCESS: Update works 4. Repeat 1 (with the patches applied) => SUCCESS: Install works with this DB structure 5. Run all the tests: $ kshell k$ git diff origin/master --name-only | grep -e '\.t$' | xargs prove => SUCCESS: Tests pass! 6. Follow the original plan (with the Volume=>ItemGRoup change in mind) => SUCCESS: All good! 7. Sign off :-D
Created attachment 124363 [details] [review] Bug 24857: item_group_items.item_id must be unique
Created attachment 124421 [details] [review] Bug 24857: (QA follow-up) Fix for missing Scalar context Template Toolkit will generally assume list context and so we get the wrong result when chaning relationships. We must force scalar context using the Scalar plugin.
I presume it's deliberate to not expose any of this on the OPAC at all at this time? That comes with the holds work etc?
I probably would have used the rowGroup plugin for DataTables to visually group the grouped items.. but that can be done in a followup bug maybe?
Removing dependency on bug 28883 as it is only relevant for the tests (not) using ->as_list. And is not fair for this bug to be blocked by it.
Created attachment 124463 [details] [review] Bug 24857: Do not depend on bug 28883 Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 124583 [details] [review] Bug 24857: Update Database We have a partner that needs Volume Level Holds. This is a feature that some ILSs have that allows the creation of volumes at the bibliographic level, with items being optionally assigned to a given volume. This facilitates the ability to place holds at a volume level, rather than on a specific item or any available item on a record. Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableVolumes 5) Browse to detail.pl for a record with items 6) Note the new volumes tab 7) Test creating, editing and deleting volumes 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting a volume for items, and for clearing a volume for items. 9) Test adding and clearing the volume set for items Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124584 [details] [review] Bug 24857: Add new Schema files Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124585 [details] [review] Bug 24857: Add Koha Object(s) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124586 [details] [review] Bug 24857: Add Object Methods Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124587 [details] [review] Bug 24857: API spec Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124588 [details] [review] Bug 24857: Koha::Biblio::Volume methods This patch introduces the following methods: - add_item - del_item - items - to_api_mapping - store (overloaded) Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124589 [details] [review] Bug 24857: Implement volume related controllers Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124590 [details] [review] Bug 24857: Add volume management to detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124591 [details] [review] Bug 24857: Add ability to attach newly cataloged items to a volume Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124592 [details] [review] Bug 24857: Add ability to manage item's volumes from detail.pl Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124593 [details] [review] Bug 24857: Delete a volume when the last item on that volume is deleted Signed-off-by: Andrew Fuerste-Henry <andrew@bywatersolutions.com> Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124594 [details] [review] Bug 24857: Copy the volume to the item's enumchron Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124595 [details] [review] Bug 24857: Add user permission for volumes management Signed-off-by: Rebecca Coert <rcoert@arlingtonva.us> Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124596 [details] [review] Bug 24857: Fix license statements Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124597 [details] [review] Bug 24857: Fix POD Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124598 [details] [review] Bug 24857: Add missing filter and move js to footer on additem.tt Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124599 [details] [review] Bug 24857: Fix simple-quote string Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124600 [details] [review] Bug 24857: Remove doubled 'use Koha::Biblio::Volumes' Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124601 [details] [review] Bug 24857: Fix sorting of new syspref Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124602 [details] [review] Bug 24857: Change button text from "Create new" to "New volume" Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124603 [details] [review] Bug 24857: (QA follow-up) Add volume to table settings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124604 [details] [review] Bug 24857: (QA follow-up) Unit tests Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124605 [details] [review] Bug 24857: (QA follow-up) Fix unit tests and code for changes in Koha::Item::delete Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124606 [details] [review] Bug 24857: (QA follow-up) Fix QA script issues Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124607 [details] [review] Bug 24857: (follow-up) Use $c->unhandled_exception This patch makes the controller up to date with the currently used style and codebase. It also sinlences a useless warning, and makes it return 404 (instead of 409) when trying to add items to a volume on a non-existing biblio. To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Some warnings 2. Apply this patch 3. Repeat 1 => SUCCESS: No errors, no warnings Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124608 [details] [review] Bug 24857: Use $c->objects->find Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124609 [details] [review] Bug 24857: Fix permissions in spec This patch corrects the spec so it requires the right permissions. Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124610 [details] [review] Bug 24857: (QA follow-up) Adding items should check volume linked to biblio I noticed some tests included /biblios/{biblio_id}/volumes... in the URL. And they passed :-D This means the biblio_id is never tested. This patch fixes those two tests so they have valid biblio_id in the path, and adds a proper regression test for the expected behavior (409). To test: 1. Run: $ kshell k$ prove t/db_dependent/api/v1/volumes.t => FAIL: Notice the tests pass, even with bad data on the request 2. Apply this patch, notice a test is added for the bad biblio_id case and the other two tests are fixed so they have the intended biblio_id. 3. Repeat 1 => SUCCESS: Tests pass! This means things are correctly tested in the controller and the unit tests cover teh 'bad case' returning 409. 4. Sign off :-D Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124611 [details] [review] Bug 24857: (QA follow-up) Further spec fixes Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124612 [details] [review] Bug 24857: Rename Volumes => Item groups (DB) This patch renames Volumes => Item groups in the DB structure, and also on permissions and sysprefs. Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124613 [details] [review] Bug 24857: Adapt code to the volumes => item_groups change This patch updates the code so all references to 'volumes' are translated into 'item groups'. Relevant changes: - API routes and specs - Permission name is changed - Syspref name changed Note: I removed a behavior that felt unnatural (at least in the place it was put): deleting the item group if the linked item is deleted. It feels like a controller thing, and also something that could be offered to the staff on the UI on item deletion. To avoid blocking the feature, I suggest this removal, and discuss it in its own context. To test: 1. Run: $ reset_all 2. Apply this patchset 3. Run: $ updatedatabase => SUCCESS: Update works 4. Repeat 1 (with the patches applied) => SUCCESS: Install works with this DB structure 5. Run all the tests: $ kshell k$ git diff origin/master --name-only | grep -e '\.t$' | xargs prove => SUCCESS: Tests pass! 6. Follow the original plan (with the Volume=>ItemGRoup change in mind) => SUCCESS: All good! 7. Sign off :-D Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124614 [details] [review] Bug 24857: item_group_items.item_id must be unique Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Created attachment 124615 [details] [review] Bug 24857: Do not depend on bug 28883 Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io> Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
That was quite a QA effort.. all works as expected, though I'm sure some future polishing of the UI is likely to take place down the line. Tests pass, QA script is happy and functionality works Passing QA
Just to raise awareness: It seems to me that this overlaps the holdings record functionality in bug 20447 quite significantly while providing some that the holdings support doesn't yet. While I've not really familiarized myself with what grouped items provide (is there an RFC or other documentation somewhere?), I don't think it makes much sense to have two different methods for grouping items in a bib record. Since this one has already passed QA I assume this one will get merged soon enough, and that means that the future of bug 20447 (to which many people have invested quite a bit, me included) needs to be reconsidered. I wish I had known about this development much sooner. If anyone has further thoughts, I'd welcome discussion.
A discussion needs to take place on the status of the different bug reports offering the same or alternative to this patch set. Bug 24023 - Add ability to create bundles of items Bug 20447 - Add support for MARC holdings records Bug 28854 - [ALTERNATIVE] Add ability to create bundles of items It's not clear to me and I won't have time to spend on this huge task before the release. Bug 20447 has been part of the roadmap for the 2 last dev cycles and it would be weird to make this one passed before the "MARC holdings records" if they conflict with each other.
(In reply to Jonathan Druart from comment #459) > A discussion needs to take place on the status of the different bug reports > offering the same or alternative to this patch set. > > Bug 24023 - Add ability to create bundles of items > Bug 20447 - Add support for MARC holdings records > Bug 28854 - [ALTERNATIVE] Add ability to create bundles of items > > It's not clear to me and I won't have time to spend on this huge task before > the release. > Bug 20447 has been part of the roadmap for the 2 last dev cycles and it > would be weird to make this one passed before the "MARC holdings records" if > they conflict with each other. While these patch sets all have similar functions, I don't believe they are contradictory: This bug creates groups for holds functionality, i.e. holds one any of a 'volume' set - it is a logical grouping only Bug 24023/28854 are 'bundles' for circulation purposes Bug 20447 is tied to MARC import/export While there may be some overlap, I think these are discrete enough to operate independently - a library would likely only want to implement either 'groups' or 'holdings' and I believe they can stand alone
No discussion but wait for another RM. Ok, if you want, that's a technique...
What a complex situation. This also linked to Bug 15516 - Allow to place a hold on first available item from a group of titles And maybe a bit to Bug 15565 - Place multiple item-level holds at once for the same record Holds system is already really complex, we must be careful what we add in it.
Created attachment 131449 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission
Created attachment 131450 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 131451 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 131452 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 131453 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 131454 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 131455 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 131456 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Patches rebased and squashed
Created attachment 134288 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission
Created attachment 134289 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 134290 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 134291 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 134292 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 134293 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 134294 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 134295 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 134296 [details] [review] Bug 24857: Add object classes to Schema
I don't understand enough this feature and its links with other features. So I've chosen to pass it to next Release Manager. Great work ByWaters.
Created attachment 135590 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission
Created attachment 135591 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission
Created attachment 135592 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135593 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 135594 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 135595 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 135596 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 135597 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135598 [details] [review] Bug 24857: Add new Schema files
Created attachment 135599 [details] [review] Bug 24857: Add object classes to Schema
Created attachment 135600 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 135601 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission https://bugs.koha-community.org/show_bug.cgi?id=24860
Created attachment 135602 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135603 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 135604 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 135605 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 135606 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 135607 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135608 [details] [review] Bug 24857: Add new Schema files
Created attachment 135609 [details] [review] Bug 24857: Add object classes to Schema
Created attachment 135610 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 135614 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission https://bugs.koha-community.org/show_bug.cgi?id=24860
Created attachment 135615 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135616 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 135617 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 135618 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 135619 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 135620 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135621 [details] [review] Bug 24857: Add new Schema files
Created attachment 135622 [details] [review] Bug 24857: Add object classes to Schema
Created attachment 135623 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 135624 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 135625 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 135626 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 135627 [details] [review] Bug 24857: Add new Schema files
Created attachment 135628 [details] [review] Bug 24857: Add object classes to Schema
Created attachment 135629 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 137259 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission https://bugs.koha-community.org/show_bug.cgi?id=24860
Created attachment 137260 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 137261 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 137262 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 137263 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 137264 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 137265 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 137266 [details] [review] Bug 24857: Add new Schema files
Created attachment 137267 [details] [review] Bug 24857: Add object classes to Schema
Created attachment 137268 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Created attachment 137311 [details] [review] Bug 24857: Fix rebase problems Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 137314 [details] [review] Bug 24857: Database updates This adds the new tables, syspref, and a new permission https://bugs.koha-community.org/show_bug.cgi?id=24860
Created attachment 137315 [details] [review] Bug 24857: Add Koha Objects To test: 1 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 137316 [details] [review] Bug 24857: API spec To test: 1 - prove t/db_dependent/api/v1/item_groups.t
Created attachment 137317 [details] [review] Bug 24857: Add Object Methods To test: 1 - prove t/db_dependent/Koha/Biblio.t 2 - prove t/db_dependent/Koha/Item.t
Created attachment 137318 [details] [review] Bug 24857: Add item group management to detail.pl Test Plan: 1) Apply the patches for this bug 2) Run updatedatabase.pl 3) Restart all the things! 4) Enable the new syspref EnableItemGroups 5) Browse to detail.pl for a record with items 6) Note the new Item Groups tab 7) Test creating, editing and deleting groups 8) On the Holdings tab, select one or more items using the checkboxes 8) Note new selection options for setting an item group for items, and for clearing an item group for items. 9) Test adding and clearing the item group for items
Created attachment 137319 [details] [review] Bug 24857: Add ability to set item group when adding a new item During cataloging a user may wish to add an item to a group when creating a new item This patch also copies the group description to the enumchron field To test: 1 - Browse to details page for a record 2 - Create or ensure the record has item group(s) 3 - Click New->New item 4 - Note the bottom of the page has a form to attach to existing group, or create new 5 - Note when a group is selected the enumchron field is populated 6 - Confirm item is saved to group when saved
Created attachment 137320 [details] [review] Bug 24857: Delete item group when last item is deleted To test: 1 - Find a record with an item gorup, or add a group 2 - Add an item to this group, ensure it is the only item in the group 3 - Delete the item 4 - Confirm the gorup was also deleted 5 - prove t/db_dependent/Koha/Biblio/ItemGroups.t
Created attachment 137321 [details] [review] Bug 24857: Add new Schema files
Created attachment 137322 [details] [review] Bug 24857: Add object classes to Schema
Created attachment 137323 [details] [review] Bug 24857: DO NOT PUSH: Schema changes
Pushed to master for 22.11. Nice work everyone, thanks!
Created attachment 137441 [details] [review] Bug 24857: (QA follow-up) Make update idempotent Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 137442 [details] [review] Bug 24857: Fix missing additionalProperties in spec Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 137443 [details] [review] Bug 24857: Remove incorrect object_class method Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Created attachment 137608 [details] [review] Bug 24857: Remove object_class from singular classes Fixes Can't use string ("Koha::Biblio::ItemGroup") as a HASH ref while "strict refs" in use at /kohadevbox/koha/Koha/Object.pm line 830. Can't use string ("Koha::Biblio::ItemGroup::Item") as a HASH ref while "strict refs" in use at /kohadevbox/koha/Koha/Object.pm line 830.
Created attachment 138933 [details] [review] Bug 24857: (QA follow-up) Add spec description Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
No backport for 22.05.x
I'm starting to look at this and it looks like a similar idea to bug 15516 except that it's the library creating the group rather than the patron. I wonder if bug 15516 could be re-implemented as a item_group. Maybe we could add a column to differentiate between staff-added and user-added item groups. I'll be looking again at bug 15516 shortly, so I suppose I'll see...
(In reply to David Cook from comment #547) > I'm starting to look at this and it looks like a similar idea to bug 15516 > except that it's the library creating the group rather than the patron. > > I wonder if bug 15516 could be re-implemented as a item_group. Maybe we > could add a column to differentiate between staff-added and user-added item > groups. I'll be looking again at bug 15516 shortly, so I suppose I'll see... There is another major different: item groups group items from the same record. The point of 15526 I think is creating groups with items from different records (I don't care if I get the movie, the paperback, the hardcover...)
(In reply to Katrin Fischer from comment #548) > (In reply to David Cook from comment #547) > > I'm starting to look at this and it looks like a similar idea to bug 15516 > > except that it's the library creating the group rather than the patron. > > > > I wonder if bug 15516 could be re-implemented as a item_group. Maybe we > > could add a column to differentiate between staff-added and user-added item > > groups. I'll be looking again at bug 15516 shortly, so I suppose I'll see... > > There is another major different: item groups group items from the same > record. The point of 15526 I think is creating groups with items from > different records (I don't care if I get the movie, the paperback, the > hardcover...) Hmm that could be. It's been a while since I looked at a live implementation or the code. I'll be looking at it very shortly so I guess I'll see!
(In reply to Katrin Fischer from comment #548) > There is another major different: item groups group items from the same > record. The point of 15526 I think is creating groups with items from > different records (I don't care if I get the movie, the paperback, the > hardcover...) I've just finished rebasing and doing some testing... With bug 15516 alone, it creates hold groups using record-level or item-level holds from different records. However, when bug 15516 and bug 15565 are combined, then you can do hold groups for items within the same bib record as well. For now, on Bugzilla, I'm trying to keep the two bug reports separate. Locally, I join them together.