Bugzilla – Attachment 76630 Details for
Bug 20469
Add item status to staff article requests form
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 20469: Add item status to staff article request form
Bug-20469-Add-item-status-to-staff-article-request.patch (text/plain), 4.55 KB, created by
Owen Leonard
on 2018-07-02 15:17:37 UTC
(
hide
)
Description:
Bug 20469: Add item status to staff article request form
Filename:
MIME Type:
Creator:
Owen Leonard
Created:
2018-07-02 15:17:37 UTC
Size:
4.55 KB
patch
obsolete
>From 206af58061cc78d70a8d118d6a8d0667c3a2bb21 Mon Sep 17 00:00:00 2001 >From: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> >Date: Mon, 26 Mar 2018 13:20:53 +0200 >Subject: [PATCH] Bug 20469: Add item status to staff article request form > >A method Koha::Item->is_waiting_or_transit is added (with tests). >The template checks if an item is checked out, on hold (waiting or >transit), or is available. (Note: This can be extended in the future >in a general include as we have at opac side.) > >Test plan: >[1] Run t/db_dependent/Koha/Items.t >[2] Place an article request on an item on loan. Verify status on form. >[3] Place an article request on a waiting item. Check status again. > >Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> > >Signed-off-by: Owen Leonard <oleonard@myacpl.org> >--- > Koha/Item.pm | 12 ++++++++++++ > .../prog/en/modules/circ/article-requests.tt | 8 ++++++++ > t/db_dependent/Koha/Items.t | 18 ++++++++++++++++-- > 3 files changed, 36 insertions(+), 2 deletions(-) > >diff --git a/Koha/Item.pm b/Koha/Item.pm >index bea05f8..88da350 100644 >--- a/Koha/Item.pm >+++ b/Koha/Item.pm >@@ -235,6 +235,18 @@ sub current_holds { > return Koha::Holds->_new_from_dbic($hold_rs); > } > >+=head3 is_waiting_or_transit >+ >+ Returns true if an item has a waiting or transit hold >+ >+=cut >+ >+sub is_waiting_or_transit { >+ my ( $self ) = @_; >+ return 1 if Koha::Holds->search({ itemnumber => $self->itemnumber, found => ['W', 'T'] })->count > 0; >+ return q{}; >+} >+ > =head3 type > > =cut >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/article-requests.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/article-requests.tt >index 8a2a073..db0f206 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/article-requests.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/article-requests.tt >@@ -42,6 +42,12 @@ > </ul> > </div> > [% END %] >+[% BLOCK item_status %][%# pass Koha::Item into myitem %] >+ [% IF myitem.onloan %]Checked out >+ [% ELSIF myitem.is_waiting_or_transit %]On hold >+ [% ELSE %]Available >+ [% END %] >+[% END %] > > <body id="circ_article-requests" class="circ"> > [% INCLUDE 'header.inc' %] >@@ -176,6 +182,7 @@ > [% END %] > > [% ar.item.itemcallnumber %] >+ <p>[% PROCESS 'item_status' myitem = ar.item %]</p> > </td> > <td class="ar-copynumber">[% ar.item.copynumber %]</td> > <td class="ar-enumchron">[% ar.item.enumchron %]</td> >@@ -284,6 +291,7 @@ > [% END %] > > [% ar.item.itemcallnumber %] >+ <p>[% PROCESS 'item_status' myitem = ar.item %]</p> > </td> > <td class="ar-copynumber">[% ar.item.copynumber %]</td> > <td class="ar-enumchron">[% ar.item.enumchron %]</td> >diff --git a/t/db_dependent/Koha/Items.t b/t/db_dependent/Koha/Items.t >index 862f832..14542f5 100644 >--- a/t/db_dependent/Koha/Items.t >+++ b/t/db_dependent/Koha/Items.t >@@ -19,7 +19,7 @@ > > use Modern::Perl; > >-use Test::More tests => 8; >+use Test::More tests => 9; > > use C4::Circulation; > use Koha::Item; >@@ -31,7 +31,7 @@ use t::lib::TestBuilder; > my $schema = Koha::Database->new->schema; > $schema->storage->txn_begin; > >-my $builder = t::lib::TestBuilder->new; >+our $builder = t::lib::TestBuilder->new; > my $biblioitem = $builder->build( { source => 'Biblioitem' } ); > my $library = $builder->build( { source => 'Branch' } ); > my $nb_of_items = Koha::Items->search->count; >@@ -121,5 +121,19 @@ subtest 'checkout' => sub { > $retrieved_item_1->delete; > is( Koha::Items->search->count, $nb_of_items + 1, 'Delete should have deleted the item' ); > >+subtest 'is_waiting_or_transit' => sub { >+ plan tests => 3; >+ >+ my $hold = $builder->build_object({ class => 'Koha::Holds', value => { found => 'W' } }); >+ is( Koha::Items->find($hold->itemnumber)->is_waiting_or_transit, 1, >+ 'Item is waiting' ); >+ $hold->found('T')->store; >+ is( Koha::Items->find($hold->itemnumber)->is_waiting_or_transit, 1, >+ 'Item has transit hold' ); >+ $hold->found(undef)->store; >+ is( Koha::Items->find($hold->itemnumber)->is_waiting_or_transit, q{}, >+ 'Item should be available' ); >+}; >+ > $schema->storage->txn_rollback; > >-- >2.1.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 20469
:
73281
|
73282
|
73388
|
76627
|
76628
|
76630
|
76631
|
77184
|
77185
|
77186
|
77222
|
77223
|
77224
|
107235
|
107236
|
107412
|
107413
|
107417
|
107418
|
107419
|
108345
|
108346
|
108347