@@ -, +, @@ used - acqui/neworderempty.pl - catalogue/itemsearch.pl - admin/item_circulation_alerts.pl - marc21_linking_section.pl - unimarc_field_4XX.pl --- C4/ItemCirculationAlertPreference.pm | 5 +++-- acqui/neworderempty.pl | 3 ++- admin/item_circulation_alerts.pl | 18 +++--------------- catalogue/itemsearch.pl | 12 +++++++----- cataloguing/value_builder/marc21_linking_section.pl | 7 ++++--- cataloguing/value_builder/unimarc_field_4XX.pl | 5 +++-- circ/returns.pl | 10 +++++----- .../prog/en/modules/admin/item_circulation_alerts.tt | 4 ++-- t/db_dependent/HoldsQueue.t | 12 ++++++------ 9 files changed, 35 insertions(+), 41 deletions(-) --- a/C4/ItemCirculationAlertPreference.pm +++ a/C4/ItemCirculationAlertPreference.pm @@ -21,9 +21,10 @@ use strict; use warnings; use C4::Context; use C4::Category; -use C4::ItemType; use Carp qw(carp croak); +use Koha::ItemTypes; + our $AUTOLOAD; # helper function for validating \%opts @@ -331,7 +332,7 @@ sub grid { my @branch_prefs = $class->find($where); my @default_prefs = $class->find({ branchcode => '*', notification => $where->{notification} }); my @cc = C4::Category->all; - my @it = C4::ItemType->all; + my @it = Koha::ItemTypes->search; my $notification = $where->{notification}; my %disabled = map { my $key = $_->categorycode . "-" . $_->item_type . "-" . $notification; --- a/acqui/neworderempty.pl +++ a/acqui/neworderempty.pl @@ -89,6 +89,7 @@ use C4::Search qw/FindDuplicate/; use C4::ImportBatch qw/GetImportRecordMarc SetImportRecordStatus/; use Koha::Acquisition::Bookseller; +use Koha::ItemTypes; our $input = new CGI; my $booksellerid = $input->param('booksellerid'); # FIXME: else ERROR! @@ -303,7 +304,7 @@ if (C4::Context->preference('AcqCreateItem') eq 'ordering' && !$ordernumber) { } # Get the item types list, but only if item_level_itype is YES. Otherwise, it will be in the item, no need to display it in the biblio my @itemtypes; -@itemtypes = C4::ItemType->all unless C4::Context->preference('item-level_itypes'); +@itemtypes = Koha::ItemTypes->search unless C4::Context->preference('item-level_itypes'); if ( defined $subscriptionid ) { my $lastOrderReceived = GetLastOrderReceivedFromSubscriptionid $subscriptionid; --- a/admin/item_circulation_alerts.pl +++ a/admin/item_circulation_alerts.pl @@ -28,24 +28,14 @@ use C4::Auth; use C4::Context; use C4::Branch; use C4::Category; -use C4::ItemType; use C4::ItemCirculationAlertPreference; use C4::Output; +use Koha::ItemTypes; + # shortcut for long package name our $preferences = 'C4::ItemCirculationAlertPreference'; -# prepend "br_" to column name and replace spaces with "
" -sub br { - my ($data, @keys) = @_; - for (@keys) { - my $br = $data->{$_}; - $br =~ s{\s+}{
}g; - $data->{'br_'.$_} = $br; - } - $data; -} - # display item circulation alerts sub show { my ($input) = @_; @@ -78,9 +68,7 @@ sub show { my @categories = ( C4::Category->all ); - my @item_types = map { br($_, 'description') } ( - C4::ItemType->all - ); + my @item_types = Koha::ItemTypes->search; my $grid_checkout = $preferences->grid({ branchcode => $branch, notification => 'CHECKOUT' }); my $grid_checkin = $preferences->grid({ branchcode => $branch, notification => 'CHECKIN' }); --- a/catalogue/itemsearch.pl +++ a/catalogue/itemsearch.pl @@ -27,9 +27,9 @@ use C4::Items; use C4::Biblio; use C4::Branch; use C4::Koha; -use C4::ItemType; use Koha::Item::Search::Field qw(GetItemSearchFields); +use Koha::ItemTypes; my $cgi = new CGI; my %params = $cgi->Vars; @@ -255,10 +255,12 @@ if ($format eq 'html') { label => $location->{lib} // $location->{authorised_value}, }; } - my @itemtypes = C4::ItemType->all(); - foreach my $itemtype (@itemtypes) { - $itemtype->{value} = $itemtype->{itemtype}; - $itemtype->{label} = $itemtype->{translated_description}; + my @itemtypes; + foreach my $itemtype ( Koha::ItemTypes->search ) { + push @itemtypes, { + value => $itemtype->itemtype, + label => $itemtype->translated_description, + }; } my $ccode_avcode = GetAuthValCode('items.ccode') || 'CCODE'; my $ccodes = GetAuthorisedValues($ccode_avcode); --- a/cataloguing/value_builder/marc21_linking_section.pl +++ a/cataloguing/value_builder/marc21_linking_section.pl @@ -32,7 +32,8 @@ use C4::Biblio; use C4::Koha; use MARC::Record; use C4::Branch; -use C4::ItemType; + +use Koha::ItemTypes; my $builder = sub { my ( $params ) = @_; @@ -304,7 +305,7 @@ my $launcher = sub { } ); - my @itemtypes = C4::ItemType->all; + my @itemtypes = Koha::ItemTypes->search; $template->param( itypeloop => \@itemtypes, @@ -315,4 +316,4 @@ my $launcher = sub { output_html_with_http_headers $query, $cookie, $template->output; }; -return { builder => $builder, launcher => $launcher }; +return { builder => $builder, launcher => $launcher }; --- a/cataloguing/value_builder/unimarc_field_4XX.pl +++ a/cataloguing/value_builder/unimarc_field_4XX.pl @@ -32,7 +32,8 @@ use C4::Biblio; use C4::Koha; use MARC::Record; use C4::Branch; # GetBranches -use C4::ItemType; + +use Koha::ItemTypes; sub plugin_javascript { my ( $dbh, $record, $tagslib, $field_number, $tabloop ) = @_; @@ -508,7 +509,7 @@ sub plugin { } ); - my @itemtypes = C4::ItemType->all; + my @itemtypes = Koha::ItemTypes->search; $template->param( #classlist => $classlist, itypeloop => \@itemtypes, --- a/circ/returns.pl +++ a/circ/returns.pl @@ -267,16 +267,16 @@ if ($barcode) { # Check if we should display a checkin message, based on the the item # type of the checked in item - my $itemtype = C4::ItemType->get( $biblio->{'itemtype'} ); - if ( $itemtype->{'checkinmsg'} ) { + my $itemtype = Koha::ItemTypes->find( $biblio->{'itemtype'} ); + if ( $itemtype->checkinmsg ) { $template->param( - checkinmsg => $itemtype->{'checkinmsg'}, - checkinmsgtype => $itemtype->{'checkinmsgtype'}, + checkinmsg => $itemtype->checkinmsg, + checkinmsgtype => $itemtype->checkinmsgtype, ); } # make sure return branch respects home branch circulation rules, default to homebranch - my $hbr = GetBranchItemRule($biblio->{'homebranch'}, $itemtype)->{'returnbranch'} || "homebranch"; + my $hbr = GetBranchItemRule($biblio->{'homebranch'}, $itemtype->itemtype)->{'returnbranch'} || "homebranch"; my $returnbranch = $biblio->{$hbr} ; $template->param( --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/item_circulation_alerts.tt @@ -157,7 +157,7 @@ $(function(){   [% FOREACH item_type IN item_types %] - [% item_type.br_description %] + [% item_type.description %] [% END %] @@ -181,7 +181,7 @@ $(function(){   [% FOREACH item_type IN item_types %] - [% item_type.br_description %] + [% item_type.description %] [% END %] --- a/t/db_dependent/HoldsQueue.t +++ a/t/db_dependent/HoldsQueue.t @@ -14,11 +14,12 @@ use Data::Dumper; use Test::More tests => 21; - use C4::Branch; -use C4::ItemType; +use C4::Branch; use C4::Members; +use Koha::ItemTypes; + BEGIN { use FindBin; use lib $FindBin::Bin; @@ -49,9 +50,8 @@ my $branches = C4::Branch::GetBranches; my @other_branches = grep { $_ ne $borrower_branchcode } keys %$branches; my $least_cost_branch_code = pop @other_branches or BAIL_OUT("No point testing only one branch..."); -my @item_types = C4::ItemType->all; -my $itemtype = grep { $_->{notforloan} == 1 } @item_types - or BAIL_OUT("No adequate itemtype"); +my $itemtype = Koha::ItemTypes->search({ notforloan => 1 })->next; +$itemtype or BAIL_OUT("No adequate itemtype"); #Set up the stage # Sysprefs and cost matrix @@ -168,7 +168,7 @@ $dbh->do("DELETE FROM default_circ_rules"); C4::Context->set_preference('UseTransportCostMatrix', 0); my @branchcodes = keys %$branches; -( $itemtype ) = @{ $dbh->selectrow_arrayref("SELECT itemtype FROM itemtypes LIMIT 1") }; +$itemtype = Koha::ItemTypes->search->next; my $borrowernumber1 = AddMember( ( --