In the serial module, we would like to close a subscription.
Created attachment 12305 [details] [review] Bug 8782: Close a subscription If a subscription is no longer enough published (or we are not waiting for a new periodical) we are allowed to close it. If a subscription is closed, we are not able to receive or generate a new serial. On the serial module, we can now - close a subscriptionn - reopen a closed subscription On serial search 2 tabs is displayed (opened and closed subscriptions). This patch adds: - a new field subscription.closed in DB - a new status for serials (8 = stopped) Test plan: - search subscriptions - close a subscription and check that you cannot receive or generate a new serial - launch another search and check that the closed serial is into the "closed" tab. - You are allowed to reopen a subscription on the subscription detail page and on the subscription result page. A javascript alert ask you if are certain to do this operation. - Check the serial status "stopped" everywhere the status is displayed (catalogue/detail.pl, serials/claims.pl, serials/serial-issues-full.pl, serials/serials-collection.pl, serials/serials-edit.pl, serials/serials-recieve.pl, serials/subscription-detail.pl and opac-full-serial-issues.pl) - The report statistics does not include the closed subscriptions if you don't check the "Include expired subscriptions" checkbox. /!\ This patch is based onto Bug 5357
Hi Jonathan, thank you for providing the description. I was wondering about the new status "stopped". I was thinking that closig a subscription would happen on subscription level. In which circumstances would I mark an issue as "stopped"? Or did I misunderstand the new status?
(In reply to comment #2) > Hi Jonathan, > > thank you for providing the description. I was wondering about the new > status "stopped". I was thinking that closig a subscription would happen on > subscription level. In which circumstances would I mark an issue as > "stopped"? Or did I misunderstand the new status? An issue could not be marked as 'stopped'. This status is not writable/settable. The only way to have a status=8 (for serials.status) is to close the subscription and to have a serial expected. If the subscription is closed, the serial cannot be expected. I don't know if I'm clear :)
I'm glad to see this enhancement! This issue came up with a client back when I first started using Koha, so it's nice to see a fix for what was one of my first issues! The patch seems rather large though, so I'm not completely sure how to even start testing to see if it breaks anything. Knowing Jonathan's work, I'm sure that the patch does what it describes (yay), but what's the best way of testing if it breaks something else? Unit tests? Are the following tests enough? prove t/ prove t/db_dependent prove xt/ prove xt/author Thoughts? I'd like to start testing and signing off on larger patches, but I want to make sure that I'm doing a thorough enough job.
(In reply to comment #4) > I'd like to start testing and signing off on larger patches, but I want to > make sure that I'm doing a thorough enough job. Hi David! The patch is large but there is no complex code. There are a lot of template modifications and a new status for serials. I think if 1/ you agree with this new status 2/ you don't find any regression in the serials module pages 3/ the feature works as expected 4/ you don't have any question You can sign off this patch :)
Created attachment 12879 [details] [review] Bug 8782: Followup: add some minor modifications - Show 'closed' information in biblio detail page - Add a column in serials report table - Search subscriptions on title words instead of string - Prevent serials editing when subscription is closed - Don't change status of "disabled" serials
Hi Jonathan: I just tried applying your patch against master with git bz, but it looks like it needs a rebase: Applying: Bug 8782: Close a subscription error: patch failed: installer/data/mysql/updatedatabase.pl:5795 error: installer/data/mysql/updatedatabase.pl: patch does not apply error: patch failed: koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tt:189 error: koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tt: patch does not apply error: patch failed: koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt:33 error: koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-search.tt: patch does not apply Patch failed at 0001 Bug 8782: Close a subscription Looking forward to testing this one out though! (In reply to comment #5) > (In reply to comment #4) > > I'd like to start testing and signing off on larger patches, but I want to > > make sure that I'm doing a thorough enough job. > > Hi David! > The patch is large but there is no complex code. There are a lot of template > modifications and a new status for serials. > I think if > 1/ you agree with this new status > 2/ you don't find any regression in the serials module pages > 3/ the feature works as expected > 4/ you don't have any question > > You can sign off this patch :)
Created attachment 12909 [details] [review] Bug 8782: Close a subscription If a subscription is no longer enough published (or we are not waiting for a new periodical) we are allowed to close it. If a subscription is closed, we are not able to receive or generate a new serial. On the serial module, we can now - close a subscriptionn - reopen a closed subscription On serial search 2 tabs is displayed (opened and closed subscriptions). This patch adds: - a new field subscription.closed in DB - a new status for serials (8 = stopped) Test plan: - search subscriptions - close a subscription and check that you cannot receive or generate a new serial - launch another search and check that the closed serial is into the "closed" tab. - You are allowed to reopen a subscription on the subscription detail page and on the subscription result page. A javascript alert ask you if are certain to do this operation. - Check the serial status "stopped" everywhere the status is displayed (catalogue/detail.pl, serials/claims.pl, serials/serial-issues-full.pl, serials/serials-collection.pl, serials/serials-edit.pl, serials/serials-recieve.pl, serials/subscription-detail.pl and opac-full-serial-issues.pl) - The report statistics does not include the closed subscriptions if you don't check the "Include expired subscriptions" checkbox.
Created attachment 12910 [details] [review] Bug 8782: Followup: add some minor modifications - Show 'closed' information in biblio detail page - Add a column in serials report table - Search subscriptions on title words instead of string - Prevent serials editing when subscription is closed - Don't change status of "disabled" serials
Created attachment 12930 [details] [review] [SIGNED-OFF] Bug 8782: Close a subscription If a subscription is no longer enough published (or we are not waiting for a new periodical) we are allowed to close it. If a subscription is closed, we are not able to receive or generate a new serial. On the serial module, we can now - close a subscriptionn - reopen a closed subscription On serial search 2 tabs is displayed (opened and closed subscriptions). This patch adds: - a new field subscription.closed in DB - a new status for serials (8 = stopped) Test plan: - search subscriptions - close a subscription and check that you cannot receive or generate a new serial - launch another search and check that the closed serial is into the "closed" tab. - You are allowed to reopen a subscription on the subscription detail page and on the subscription result page. A javascript alert ask you if are certain to do this operation. - Check the serial status "stopped" everywhere the status is displayed (catalogue/detail.pl, serials/claims.pl, serials/serial-issues-full.pl, serials/serials-collection.pl, serials/serials-edit.pl, serials/serials-recieve.pl, serials/subscription-detail.pl and opac-full-serial-issues.pl) - The report statistics does not include the closed subscriptions if you don't check the "Include expired subscriptions" checkbox. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Created attachment 12931 [details] [review] [SIGNED-OFF] Bug 8782: Followup: add some minor modifications - Show 'closed' information in biblio detail page - Add a column in serials report table - Search subscriptions on title words instead of string - Prevent serials editing when subscription is closed - Don't change status of "disabled" serials Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Created attachment 12932 [details] [review] Bug 8782 - Close a subscription - Followup - Fix updatedatabase.pl
Everything looks good except for updatedatabase. If get the following error: Undefined subroutine &main::column_exists called at installer/data/mysql/updatedatabase.pl line 6016. I've added a patch to remove this code. Even without it, should this query be executed it should fail gracefully.
Created attachment 12933 [details] [review] Bug 8782 - Close a subscription - Followup - Fix updatedatabase.pl Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
(In reply to comment #13) > I've added a patch to remove this code. Even without it, should this query > be executed it should fail gracefully. Thank you Kyle for your test and your followup !
QA comment: * passes koha-qa.pl * quite a large patch, but most of it is related to adding [% IF closed %] in templates and reindenting accordingly * nothing spotted that would justify a failed QA passed QA
Created attachment 13741 [details] [review] Bug 8782: Close a subscription If a subscription is no longer enough published (or we are not waiting for a new periodical) we are allowed to close it. If a subscription is closed, we are not able to receive or generate a new serial. On the serial module, we can now - close a subscriptionn - reopen a closed subscription On serial search 2 tabs is displayed (opened and closed subscriptions). This patch adds: - a new field subscription.closed in DB - a new status for serials (8 = stopped) Test plan: - search subscriptions - close a subscription and check that you cannot receive or generate a new serial - launch another search and check that the closed serial is into the "closed" tab. - You are allowed to reopen a subscription on the subscription detail page and on the subscription result page. A javascript alert ask you if are certain to do this operation. - Check the serial status "stopped" everywhere the status is displayed (catalogue/detail.pl, serials/claims.pl, serials/serial-issues-full.pl, serials/serials-collection.pl, serials/serials-edit.pl, serials/serials-recieve.pl, serials/subscription-detail.pl and opac-full-serial-issues.pl) - The report statistics does not include the closed subscriptions if you don't check the "Include expired subscriptions" checkbox. Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Bug 8782: Followup: add some minor modifications - Show 'closed' information in biblio detail page - Add a column in serials report table - Search subscriptions on title words instead of string - Prevent serials editing when subscription is closed - Don't change status of "disabled" serials Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Bug 8782 - Close a subscription - Followup - Fix updatedatabase.pl Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This patch has been pushed to master.