View | Details | Raw Unified | Return to bug 29844
Collapse All | Expand All

(-)a/C4/Acquisition.pm (-1 / +1 lines)
Lines 2291-2297 sub GetHistory { Link Here
2291
        push @query_params, @$ordernumbers;
2291
        push @query_params, @$ordernumbers;
2292
    }
2292
    }
2293
    if ( @$additional_fields ) {
2293
    if ( @$additional_fields ) {
2294
        my @baskets = Koha::Acquisition::Baskets->filter_by_additional_fields($additional_fields);
2294
        my @baskets = Koha::Acquisition::Baskets->filter_by_additional_fields($additional_fields)->as_list;
2295
2295
2296
        return [] unless @baskets;
2296
        return [] unless @baskets;
2297
2297
(-)a/C4/Auth.pm (-3 / +3 lines)
Lines 528-534 sub get_template_and_user { Link Here
528
            EnableBorrowerFiles                                                        => C4::Context->preference('EnableBorrowerFiles'),
528
            EnableBorrowerFiles                                                        => C4::Context->preference('EnableBorrowerFiles'),
529
            UseCourseReserves                                                          => C4::Context->preference("UseCourseReserves"),
529
            UseCourseReserves                                                          => C4::Context->preference("UseCourseReserves"),
530
            useDischarge                                                               => C4::Context->preference('useDischarge'),
530
            useDischarge                                                               => C4::Context->preference('useDischarge'),
531
            pending_checkout_notes                                                     => scalar Koha::Checkouts->search({ noteseen => 0 }),
531
            pending_checkout_notes                                                     => Koha::Checkouts->search({ noteseen => 0 }),
532
        );
532
        );
533
    }
533
    }
534
    else {
534
    else {
Lines 1144-1150 sub checkauth { Link Here
1144
                        $register_id   = $register->id   if ($register);
1144
                        $register_id   = $register->id   if ($register);
1145
                        $register_name = $register->name if ($register);
1145
                        $register_name = $register->name if ($register);
1146
                    }
1146
                    }
1147
                    my $branches = { map { $_->branchcode => $_->unblessed } Koha::Libraries->search };
1147
                    my $branches = { map { $_->branchcode => $_->unblessed } Koha::Libraries->search->as_list };
1148
                    if ( $type ne 'opac' and C4::Context->preference('AutoLocation') ) {
1148
                    if ( $type ne 'opac' and C4::Context->preference('AutoLocation') ) {
1149
1149
1150
                        # we have to check they are coming from the right ip range
1150
                        # we have to check they are coming from the right ip range
Lines 1559-1565 sub check_api_auth { Link Here
1559
                    my $library = Koha::Libraries->find($branchcode);
1559
                    my $library = Koha::Libraries->find($branchcode);
1560
                    $branchname = $library? $library->branchname: '';
1560
                    $branchname = $library? $library->branchname: '';
1561
                }
1561
                }
1562
                my $branches = { map { $_->branchcode => $_->unblessed } Koha::Libraries->search };
1562
                my $branches = { map { $_->branchcode => $_->unblessed } Koha::Libraries->search->as_list };
1563
                foreach my $br ( keys %$branches ) {
1563
                foreach my $br ( keys %$branches ) {
1564
1564
1565
                    #     now we work with the treatment of ip
1565
                    #     now we work with the treatment of ip
(-)a/C4/Circulation.pm (-1 / +1 lines)
Lines 837-843 sub CanBookBeIssued { Link Here
837
    my $no_issues_charge_guarantees = C4::Context->preference("NoIssuesChargeGuarantees");
837
    my $no_issues_charge_guarantees = C4::Context->preference("NoIssuesChargeGuarantees");
838
    $no_issues_charge_guarantees = undef unless looks_like_number( $no_issues_charge_guarantees );
838
    $no_issues_charge_guarantees = undef unless looks_like_number( $no_issues_charge_guarantees );
839
    if ( defined $no_issues_charge_guarantees ) {
839
    if ( defined $no_issues_charge_guarantees ) {
840
        my @guarantees = map { $_->guarantee } $patron->guarantee_relationships();
840
        my @guarantees = map { $_->guarantee } $patron->guarantee_relationships->as_list;
841
        my $guarantees_non_issues_charges = 0;
841
        my $guarantees_non_issues_charges = 0;
842
        foreach my $g ( @guarantees ) {
842
        foreach my $g ( @guarantees ) {
843
            $guarantees_non_issues_charges += $g->account->non_issues_charges;
843
            $guarantees_non_issues_charges += $g->account->non_issues_charges;
(-)a/C4/HoldsQueue.pm (-1 / +1 lines)
Lines 429-435 sub MapItemsToHoldRequests { Link Here
429
429
430
    map { $_->{_object} = Koha::Items->find( $_->{itemnumber} ) } @$available_items;
430
    map { $_->{_object} = Koha::Items->find( $_->{itemnumber} ) } @$available_items;
431
    my $libraries = {};
431
    my $libraries = {};
432
    map { $libraries->{$_->id} = $_ } Koha::Libraries->search();
432
    map { $libraries->{$_->id} = $_ } Koha::Libraries->search->as_list;
433
433
434
    # group available items by itemnumber
434
    # group available items by itemnumber
435
    my %items_by_itemnumber = map { $_->{itemnumber} => $_ } @$available_items;
435
    my %items_by_itemnumber = map { $_->{itemnumber} => $_ } @$available_items;
(-)a/C4/ILSDI/Services.pm (-1 / +1 lines)
Lines 546-552 sub GetPatronInfo { Link Here
546
                    value_description => $_->description, # Awkward retro-compability...
546
                    value_description => $_->description, # Awkward retro-compability...
547
                  }
547
                  }
548
                  : ()
548
                  : ()
549
            } $patron->extended_attributes->search
549
            } $patron->extended_attributes->search->as_list
550
        ];
550
        ];
551
    }
551
    }
552
552
(-)a/C4/ItemCirculationAlertPreference.pm (-2 / +2 lines)
Lines 331-338 sub grid { Link Here
331
    my ($class, $where) = @_;
331
    my ($class, $where) = @_;
332
    my @branch_prefs = $class->find($where);
332
    my @branch_prefs = $class->find($where);
333
    my @default_prefs = $class->find({ branchcode => '*', notification => $where->{notification} });
333
    my @default_prefs = $class->find({ branchcode => '*', notification => $where->{notification} });
334
    my @cc = Koha::Patron::Categories->search_with_library_limits;
334
    my @cc = Koha::Patron::Categories->search_with_library_limits->as_list;
335
    my @it = Koha::ItemTypes->search;
335
    my @it = Koha::ItemTypes->search->as_list;
336
    my $notification = $where->{notification};
336
    my $notification = $where->{notification};
337
    my %disabled = map {
337
    my %disabled = map {
338
        my $key = $_->categorycode . "-" . $_->item_type . "-" . $notification;
338
        my $key = $_->categorycode . "-" . $_->item_type . "-" . $notification;
(-)a/C4/Members.pm (-1 / +1 lines)
Lines 167-173 sub patronflags { Link Here
167
    $no_issues_charge_guarantees = undef unless looks_like_number( $no_issues_charge_guarantees );
167
    $no_issues_charge_guarantees = undef unless looks_like_number( $no_issues_charge_guarantees );
168
    if ( defined $no_issues_charge_guarantees ) {
168
    if ( defined $no_issues_charge_guarantees ) {
169
        my $p = Koha::Patrons->find( $patroninformation->{borrowernumber} );
169
        my $p = Koha::Patrons->find( $patroninformation->{borrowernumber} );
170
        my @guarantees = map { $_->guarantee } $p->guarantee_relationships;
170
        my @guarantees = map { $_->guarantee } $p->guarantee_relationships->as_list;
171
        my $guarantees_non_issues_charges = 0;
171
        my $guarantees_non_issues_charges = 0;
172
        foreach my $g ( @guarantees ) {
172
        foreach my $g ( @guarantees ) {
173
            $guarantees_non_issues_charges += $g->account->non_issues_charges;
173
            $guarantees_non_issues_charges += $g->account->non_issues_charges;
(-)a/C4/Overdues.pm (-1 / +1 lines)
Lines 652-658 sub GetBranchcodesWithOverdueRules { Link Here
652
    |);
652
    |);
653
    if ( $branchcodes->[0] eq '' ) {
653
    if ( $branchcodes->[0] eq '' ) {
654
        # If a default rule exists, all branches should be returned
654
        # If a default rule exists, all branches should be returned
655
        return map { $_->branchcode } Koha::Libraries->search({}, { order_by => 'branchname' });
655
        return map { $_->branchcode } Koha::Libraries->search({}, { order_by => 'branchname' })->as_list;
656
    }
656
    }
657
    return @$branchcodes;
657
    return @$branchcodes;
658
}
658
}
(-)a/C4/Reserves.pm (-2 / +2 lines)
Lines 977-983 Unsuspends all suspended reserves with a suspend_until date from before today. Link Here
977
sub AutoUnsuspendReserves {
977
sub AutoUnsuspendReserves {
978
    my $today = dt_from_string();
978
    my $today = dt_from_string();
979
979
980
    my @holds = Koha::Holds->search( { suspend_until => { '<=' => $today->ymd() } } );
980
    my @holds = Koha::Holds->search( { suspend_until => { '<=' => $today->ymd() } } )->as_list;
981
981
982
    map { $_->resume() } @holds;
982
    map { $_->resume() } @holds;
983
}
983
}
Lines 1541-1547 sub SuspendAll { Link Here
1541
    $params->{borrowernumber} = $borrowernumber if $borrowernumber;
1541
    $params->{borrowernumber} = $borrowernumber if $borrowernumber;
1542
    $params->{biblionumber}   = $biblionumber if $biblionumber;
1542
    $params->{biblionumber}   = $biblionumber if $biblionumber;
1543
1543
1544
    my @holds = Koha::Holds->search($params);
1544
    my @holds = Koha::Holds->search($params)->as_list;
1545
1545
1546
    if ($suspend) {
1546
    if ($suspend) {
1547
        map { $_->suspend_hold($suspend_until) } @holds;
1547
        map { $_->suspend_hold($suspend_until) } @holds;
(-)a/C4/SIP/ILS/Patron.pm (-1 / +1 lines)
Lines 565-571 sub build_patron_attributes_string { Link Here
565
                    borrowernumber => $self->{borrowernumber},
565
                    borrowernumber => $self->{borrowernumber},
566
                    code           => $a->{code}
566
                    code           => $a->{code}
567
                }
567
                }
568
            );
568
            )->as_list;
569
569
570
            foreach my $attribute ( @attributes ) {
570
            foreach my $attribute ( @attributes ) {
571
                my $value = $attribute->attribute();
571
                my $value = $attribute->attribute();
(-)a/C4/Search.pm (-2 / +2 lines)
Lines 307-313 sub getRecords { Link Here
307
    my $results_hashref = ();
307
    my $results_hashref = ();
308
308
309
    # TODO simplify this structure ( { branchcode => $branchname } is enought) and remove this parameter
309
    # TODO simplify this structure ( { branchcode => $branchname } is enought) and remove this parameter
310
    $branches ||= { map { $_->branchcode => { branchname => $_->branchname } } Koha::Libraries->search };
310
    $branches ||= { map { $_->branchcode => { branchname => $_->branchname } } Koha::Libraries->search->as_list };
311
311
312
    # Initialize variables for the faceted results objects
312
    # Initialize variables for the faceted results objects
313
    my $facets_counter = {};
313
    my $facets_counter = {};
Lines 1638-1644 sub searchResults { Link Here
1638
    });
1638
    });
1639
1639
1640
    #Build branchnames hash
1640
    #Build branchnames hash
1641
    my %branches = map { $_->branchcode => $_->branchname } Koha::Libraries->search({}, { order_by => 'branchname' });
1641
    my %branches = map { $_->branchcode => $_->branchname } Koha::Libraries->search({}, { order_by => 'branchname' })->as_list;
1642
1642
1643
# FIXME - We build an authorised values hash here, using the default framework
1643
# FIXME - We build an authorised values hash here, using the default framework
1644
# though it is possible to have different authvals for different fws.
1644
# though it is possible to have different authvals for different fws.
(-)a/C4/Serials.pm (-1 / +1 lines)
Lines 527-533 sub SearchSubscriptions { Link Here
527
    my $additional_fields = $args->{additional_fields} // [];
527
    my $additional_fields = $args->{additional_fields} // [];
528
    my $matching_record_ids_for_additional_fields = [];
528
    my $matching_record_ids_for_additional_fields = [];
529
    if ( @$additional_fields ) {
529
    if ( @$additional_fields ) {
530
        my @subscriptions = Koha::Subscriptions->filter_by_additional_fields($additional_fields);
530
        my @subscriptions = Koha::Subscriptions->filter_by_additional_fields($additional_fields)->as_list;
531
531
532
        return () unless @subscriptions;
532
        return () unless @subscriptions;
533
533
(-)a/C4/XSLT.pm (-1 / +1 lines)
Lines 342-348 sub buildKohaItemsNamespace { Link Here
342
    my $ccodes =
342
    my $ccodes =
343
      { map { $_->{authorised_value} => $_->{opac_description} } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => "", kohafield => 'items.ccode' } ) };
343
      { map { $_->{authorised_value} => $_->{opac_description} } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => "", kohafield => 'items.ccode' } ) };
344
344
345
    my %branches = map { $_->branchcode => $_->branchname } Koha::Libraries->search({}, { order_by => 'branchname' });
345
    my %branches = map { $_->branchcode => $_->branchname } Koha::Libraries->search({}, { order_by => 'branchname' })->as_list;
346
346
347
    my $itemtypes = { map { $_->{itemtype} => $_ } @{ Koha::ItemTypes->search->unblessed } };
347
    my $itemtypes = { map { $_->{itemtype} => $_ } @{ Koha::ItemTypes->search->unblessed } };
348
    my $xml = '';
348
    my $xml = '';
(-)a/Koha/AudioAlerts.pm (-3 / +3 lines)
Lines 91-104 sub move { Link Here
91
91
92
    if ( $where eq 'up' ) {
92
    if ( $where eq 'up' ) {
93
        unless ( $alert->precedence() == 1 ) {
93
        unless ( $alert->precedence() == 1 ) {
94
            my ($other) = $self->search( { precedence => $alert->precedence() - 1 } );
94
            my ($other) = $self->search( { precedence => $alert->precedence() - 1 } )->as_list;
95
            $other->precedence( $alert->precedence() )->store();
95
            $other->precedence( $alert->precedence() )->store();
96
            $alert->precedence( $alert->precedence() - 1 )->store();
96
            $alert->precedence( $alert->precedence() - 1 )->store();
97
        }
97
        }
98
    }
98
    }
99
    elsif ( $where eq 'down' ) {
99
    elsif ( $where eq 'down' ) {
100
        unless ( $alert->precedence() == $self->get_last_precedence() ) {
100
        unless ( $alert->precedence() == $self->get_last_precedence() ) {
101
            my ($other) = $self->search( { precedence => $alert->precedence() + 1 } );
101
            my ($other) = $self->search( { precedence => $alert->precedence() + 1 } )->as_list;
102
            $other->precedence( $alert->precedence() )->store();
102
            $other->precedence( $alert->precedence() )->store();
103
            $alert->precedence( $alert->precedence() + 1 )->store();
103
            $alert->precedence( $alert->precedence() + 1 )->store();
104
        }
104
        }
Lines 125-131 and to have no gaps Link Here
125
sub fix_precedences {
125
sub fix_precedences {
126
    my ($self) = @_;
126
    my ($self) = @_;
127
127
128
    my @alerts = $self->search();
128
    my @alerts = $self->search->as_list;
129
129
130
    my $i = 1;
130
    my $i = 1;
131
    map { $_->precedence( $i++ )->store() } @alerts;
131
    map { $_->precedence( $i++ )->store() } @alerts;
(-)a/Koha/AuthorisedValues.pm (-1 / +1 lines)
Lines 126-132 sub get_descriptions_by_koha_field { Link Here
126
    my $cached       = $memory_cache->get_from_cache($cache_key);
126
    my $cached       = $memory_cache->get_from_cache($cache_key);
127
    return @$cached if $cached;
127
    return @$cached if $cached;
128
128
129
    my @avs          = $self->search_by_koha_field($params);
129
    my @avs          = $self->search_by_koha_field($params)->as_list;
130
    my @descriptions = map {
130
    my @descriptions = map {
131
        {
131
        {
132
            authorised_value => $_->authorised_value,
132
            authorised_value => $_->authorised_value,
(-)a/Koha/BackgroundJob/BatchUpdateBiblio.pm (-1 / +1 lines)
Lines 155-161 sub additional_report { Link Here
155
155
156
    my $loggedinuser = C4::Context->userenv ? C4::Context->userenv->{'number'} : undef;
156
    my $loggedinuser = C4::Context->userenv ? C4::Context->userenv->{'number'} : undef;
157
    return {
157
    return {
158
        lists => scalar Koha::Virtualshelves->search(
158
        lists => Koha::Virtualshelves->search(
159
            [
159
            [
160
                { public => 0, owner => $loggedinuser },
160
                { public => 0, owner => $loggedinuser },
161
                { public => 1 }
161
                { public => 1 }
(-)a/Koha/Club.pm (-1 / +1 lines)
Lines 71-77 sub club_enrollments { Link Here
71
71
72
    return unless $self->id();
72
    return unless $self->id();
73
73
74
    return scalar Koha::Club::Enrollments->search( { club_id => $self->id(), date_canceled => undef } );
74
    return Koha::Club::Enrollments->search( { club_id => $self->id(), date_canceled => undef } );
75
}
75
}
76
76
77
=head3 club_fields
77
=head3 club_fields
(-)a/Koha/Clubs.pm (-1 / +1 lines)
Lines 50-56 sub get_enrollable { Link Here
50
    my $borrower = $params->{borrower};
50
    my $borrower = $params->{borrower};
51
    if ($borrower) {
51
    if ($borrower) {
52
        delete( $params->{borrower} );
52
        delete( $params->{borrower} );
53
        my @enrollments = $borrower->get_club_enrollments();
53
        my @enrollments = $borrower->get_club_enrollments->as_list;
54
        if (@enrollments) {
54
        if (@enrollments) {
55
            $params->{'me.id'} = { -not_in => [ map { $_->club()->id() } @enrollments ] };
55
            $params->{'me.id'} = { -not_in => [ map { $_->club()->id() } @enrollments ] };
56
        }
56
        }
(-)a/Koha/Library/Group.pm (-3 / +3 lines)
Lines 96-102 sub library { Link Here
96
96
97
=head3 libraries
97
=head3 libraries
98
98
99
my @libraries = $group->libraries( { [invert => 1] } );
99
my $libraries = $group->libraries( { [invert => 1] } );
100
100
101
Returns the libraries set as direct children of this group.
101
Returns the libraries set as direct children of this group.
102
102
Lines 117-123 sub libraries { Link Here
117
            branchcode => { '!=' => undef },
117
            branchcode => { '!=' => undef },
118
        },
118
        },
119
        { order_by => 'branchcode' }
119
        { order_by => 'branchcode' }
120
    );
120
    )->as_list;
121
121
122
    my @branchcodes = map { $_->branchcode } @children;
122
    my @branchcodes = map { $_->branchcode } @children;
123
123
Lines 163-169 sub all_libraries { Link Here
163
163
164
=head3 libraries_not_direct_children
164
=head3 libraries_not_direct_children
165
165
166
my @libraries = $group->libraries_not_direct_children();
166
my $libraries = $group->libraries_not_direct_children();
167
167
168
Returns the libraries *not* set as direct children of this group
168
Returns the libraries *not* set as direct children of this group
169
169
(-)a/Koha/Objects/Mixin/AdditionalFields.pm (-1 / +1 lines)
Lines 28-34 Koha::Objects::Mixin::AdditionalFields Link Here
28
28
29
=head3 filter_by_additional_fields
29
=head3 filter_by_additional_fields
30
30
31
    my @objects = Koha::Foos->filter_by_additional_fields([
31
    my $objects = Koha::Foos->filter_by_additional_fields([
32
        {
32
        {
33
            id => 1,
33
            id => 1,
34
            value => 'foo',
34
            value => 'foo',
(-)a/Koha/Patron.pm (-4 / +4 lines)
Lines 395-405 sub delete { Link Here
395
            # This pref should then govern the results of other routines/methods such as
395
            # This pref should then govern the results of other routines/methods such as
396
            # Koha::Virtualshelf->new->delete too.
396
            # Koha::Virtualshelf->new->delete too.
397
            # FIXME Could be $patron->get_lists
397
            # FIXME Could be $patron->get_lists
398
            $_->delete for Koha::Virtualshelves->search( { owner => $self->borrowernumber } );
398
            $_->delete for Koha::Virtualshelves->search( { owner => $self->borrowernumber } )->as_list;
399
399
400
            # We cannot have a FK on borrower_modifications.borrowernumber, the table is also used
400
            # We cannot have a FK on borrower_modifications.borrowernumber, the table is also used
401
            # for patron selfreg
401
            # for patron selfreg
402
            $_->delete for Koha::Patron::Modifications->search( { borrowernumber => $self->borrowernumber } );
402
            $_->delete for Koha::Patron::Modifications->search( { borrowernumber => $self->borrowernumber } )->as_list;
403
403
404
            $self->SUPER::delete;
404
            $self->SUPER::delete;
405
405
Lines 1123-1129 sub get_overdues { Link Here
1123
1123
1124
=head3 get_routing_lists
1124
=head3 get_routing_lists
1125
1125
1126
my @routinglists = $patron->get_routing_lists
1126
my $routinglists = $patron->get_routing_lists
1127
1127
1128
Returns the routing lists a patron is subscribed to.
1128
Returns the routing lists a patron is subscribed to.
1129
1129
Lines 1695-1701 sub _anonymize_column { Link Here
1695
1695
1696
=head3 add_guarantor
1696
=head3 add_guarantor
1697
1697
1698
    my @relationships = $patron->add_guarantor(
1698
    my $relationship = $patron->add_guarantor(
1699
        {
1699
        {
1700
            borrowernumber => $borrowernumber,
1700
            borrowernumber => $borrowernumber,
1701
            relationships  => $relationship,
1701
            relationships  => $relationship,
(-)a/Koha/Patron/Modification.pm (-1 / +1 lines)
Lines 127-133 sub approve { Link Here
127
                        {   borrowernumber => $patron->borrowernumber,
127
                        {   borrowernumber => $patron->borrowernumber,
128
                            code           => $code
128
                            code           => $code
129
                        }
129
                        }
130
                    );
130
                    )->as_list;
131
                }
131
                }
132
                foreach my $attr ( @{$extended_attributes} ) {
132
                foreach my $attr ( @{$extended_attributes} ) {
133
                    $attr->{attribute} = exists $attr->{attribute} ? $attr->{attribute} : $attr->{value};
133
                    $attr->{attribute} = exists $attr->{attribute} ? $attr->{attribute} : $attr->{value};
(-)a/Koha/REST/V1/Biblios.pm (-2 / +2 lines)
Lines 292-299 sub get_checkouts { Link Here
292
292
293
        my $checkouts =
293
        my $checkouts =
294
          ($checked_in)
294
          ($checked_in)
295
          ? $c->objects->search( scalar $biblio->old_checkouts )
295
          ? $c->objects->search( $biblio->old_checkouts )
296
          : $c->objects->search( scalar $biblio->current_checkouts );
296
          : $c->objects->search( $biblio->current_checkouts );
297
297
298
        return $c->render(
298
        return $c->render(
299
            status  => 200,
299
            status  => 200,
(-)a/Koha/REST/V1/Patrons.pm (-1 / +1 lines)
Lines 75-81 sub get { Link Here
75
75
76
    return try {
76
    return try {
77
        my $patron_id = $c->validation->param('patron_id');
77
        my $patron_id = $c->validation->param('patron_id');
78
        my $patron    = $c->objects->find( scalar Koha::Patrons->search_limited, $patron_id );
78
        my $patron    = $c->objects->find( Koha::Patrons->search_limited, $patron_id );
79
79
80
        unless ($patron) {
80
        unless ($patron) {
81
            return $c->render(
81
            return $c->render(
(-)a/Koha/SearchEngine/Elasticsearch.pm (-2 / +2 lines)
Lines 1355-1364 sub get_facetable_fields { Link Here
1355
    my @search_field_names = qw( author itype location su-geo title-series subject ccode holdingbranch homebranch ln );
1355
    my @search_field_names = qw( author itype location su-geo title-series subject ccode holdingbranch homebranch ln );
1356
    my @faceted_fields = Koha::SearchFields->search(
1356
    my @faceted_fields = Koha::SearchFields->search(
1357
        { name => { -in => \@search_field_names }, facet_order => { '!=' => undef } }, { order_by => ['facet_order'] }
1357
        { name => { -in => \@search_field_names }, facet_order => { '!=' => undef } }, { order_by => ['facet_order'] }
1358
    );
1358
    )->as_list;
1359
    my @not_faceted_fields = Koha::SearchFields->search(
1359
    my @not_faceted_fields = Koha::SearchFields->search(
1360
        { name => { -in => \@search_field_names }, facet_order => undef }, { order_by => ['facet_order'] }
1360
        { name => { -in => \@search_field_names }, facet_order => undef }, { order_by => ['facet_order'] }
1361
    );
1361
    )->as_list;
1362
    # This could certainly be improved
1362
    # This could certainly be improved
1363
    return ( @faceted_fields, @not_faceted_fields );
1363
    return ( @faceted_fields, @not_faceted_fields );
1364
}
1364
}
(-)a/Koha/Template/Plugin/Branches.pm (-1 / +1 lines)
Lines 132-138 sub pickup_locations { Link Here
132
              if defined $biblio;
132
              if defined $biblio;
133
        }
133
        }
134
    } else {
134
    } else {
135
        @libraries = Koha::Libraries->search( { pickup_location => 1 }, { order_by => ['branchname'] } )
135
        @libraries = Koha::Libraries->search( { pickup_location => 1 }, { order_by => ['branchname'] } )->as_list
136
          unless @libraries;
136
          unless @libraries;
137
    }
137
    }
138
138
(-)a/Koha/Template/Plugin/Desks.pm (-1 / +1 lines)
Lines 80-86 sub ListForLibrary { Link Here
80
    my ($self) = @_;
80
    my ($self) = @_;
81
    my $branch_limit =
81
    my $branch_limit =
82
      C4::Context->userenv ? C4::Context->userenv->{"branch"} : "";
82
      C4::Context->userenv ? C4::Context->userenv->{"branch"} : "";
83
    return scalar Koha::Desks->search(
83
    return Koha::Desks->search(
84
        { branchcode => $branch_limit },
84
        { branchcode => $branch_limit },
85
        { order_by   => { '-asc' => 'desk_name' } }
85
        { order_by   => { '-asc' => 'desk_name' } }
86
    );
86
    );
(-)a/Koha/Uploader.pm (-2 / +2 lines)
Lines 36-43 Koha::Uploader - Facilitate file uploads (temporary and permanent) Link Here
36
    # Do something with $upload->count, $upload->result or $upload->err
36
    # Do something with $upload->count, $upload->result or $upload->err
37
37
38
    # get some upload records (in staff) via Koha::UploadedFiles
38
    # get some upload records (in staff) via Koha::UploadedFiles
39
    my @uploads1 = Koha::UploadedFiles->search({ filename => $name });
39
    my $uploads1 = Koha::UploadedFiles->search({ filename => $name });
40
    my @uploads2 = Koha::UploadedFiles->search_term({ term => $term });
40
    my $uploads2 = Koha::UploadedFiles->search_term({ term => $term });
41
41
42
    # staff download (via Koha::UploadedFile[s])
42
    # staff download (via Koha::UploadedFile[s])
43
    my $rec = Koha::UploadedFiles->find( $id );
43
    my $rec = Koha::UploadedFiles->find( $id );
(-)a/acqui/addorderiso2709.pl (-2 / +2 lines)
Lines 97-103 if ($op eq ""){ Link Here
97
} elsif ($op eq "batch_details"){
97
} elsif ($op eq "batch_details"){
98
#display lines inside the selected batch
98
#display lines inside the selected batch
99
    # get currencies (for change rates calcs if needed)
99
    # get currencies (for change rates calcs if needed)
100
    my @currencies = Koha::Acquisition::Currencies->search;
100
    my @currencies = Koha::Acquisition::Currencies->search->as_list;
101
101
102
    $template->param("batch_details" => 1,
102
    $template->param("batch_details" => 1,
103
                     "basketno"      => $cgiparams->{'basketno'},
103
                     "basketno"      => $cgiparams->{'basketno'},
Lines 611-617 sub import_biblios_list { Link Here
611
    my $overlay_action = GetImportBatchOverlayAction($import_batch_id);
611
    my $overlay_action = GetImportBatchOverlayAction($import_batch_id);
612
    my $nomatch_action = GetImportBatchNoMatchAction($import_batch_id);
612
    my $nomatch_action = GetImportBatchNoMatchAction($import_batch_id);
613
    my $item_action = GetImportBatchItemAction($import_batch_id);
613
    my $item_action = GetImportBatchItemAction($import_batch_id);
614
    my @itypes = Koha::ItemTypes->search;
614
    my @itypes = Koha::ItemTypes->search->as_list;
615
    $template->param(biblio_list => \@list,
615
    $template->param(biblio_list => \@list,
616
                        num_results => $num_records,
616
                        num_results => $num_records,
617
                        import_batch_id => $import_batch_id,
617
                        import_batch_id => $import_batch_id,
(-)a/acqui/basket.pl (-2 / +2 lines)
Lines 424-431 if ( $op eq 'list' ) { Link Here
424
        unclosable           => @orders || @cancelledorders ? $basket->{is_standing} : 1,
424
        unclosable           => @orders || @cancelledorders ? $basket->{is_standing} : 1,
425
        has_budgets          => $has_budgets,
425
        has_budgets          => $has_budgets,
426
        duplinbatch          => $duplinbatch,
426
        duplinbatch          => $duplinbatch,
427
        csv_profiles         => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'export_basket' }) ],
427
        csv_profiles         => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'export_basket' })->as_list ],
428
        available_additional_fields => [ Koha::AdditionalFields->search( { tablename => 'aqbasket' } ) ],
428
        available_additional_fields => [ Koha::AdditionalFields->search( { tablename => 'aqbasket' } )->as_list ],
429
        additional_field_values => { map {
429
        additional_field_values => { map {
430
            $_->field->name => $_->value
430
            $_->field->name => $_->value
431
        } Koha::Acquisition::Baskets->find($basketno)->additional_field_values->as_list },
431
        } Koha::Acquisition::Baskets->find($basketno)->additional_field_values->as_list },
(-)a/acqui/basketheader.pl (-2 / +2 lines)
Lines 74-80 my $basket; Link Here
74
my $op = $input->param('op');
74
my $op = $input->param('op');
75
my $is_an_edit = $input->param('is_an_edit');
75
my $is_an_edit = $input->param('is_an_edit');
76
76
77
$template->param( available_additional_fields => [ Koha::AdditionalFields->search( { tablename => 'aqbasket' } ) ] );
77
$template->param( available_additional_fields => [ Koha::AdditionalFields->search( { tablename => 'aqbasket' } )->as_list ] );
78
78
79
if ( $op eq 'add_form' ) {
79
if ( $op eq 'add_form' ) {
80
    my @contractloop;
80
    my @contractloop;
Lines 118-124 if ( $op eq 'add_form' ) { Link Here
118
    }
118
    }
119
    my @booksellers = Koha::Acquisition::Booksellers->search(
119
    my @booksellers = Koha::Acquisition::Booksellers->search(
120
                        undef,
120
                        undef,
121
                        { order_by => { -asc => 'name' } } );
121
                        { order_by => { -asc => 'name' } } )->as_list;
122
122
123
    $template->param( add_form => 1,
123
    $template->param( add_form => 1,
124
                    basketname => $basket->{'basketname'},
124
                    basketname => $basket->{'basketname'},
(-)a/acqui/booksellers.pl (-1 / +1 lines)
Lines 83-89 if ($booksellerid) { Link Here
83
} else {
83
} else {
84
    @suppliers = Koha::Acquisition::Booksellers->search(
84
    @suppliers = Koha::Acquisition::Booksellers->search(
85
                        { name => { -like => "%$supplier%" } },
85
                        { name => { -like => "%$supplier%" } },
86
                        { order_by => { -asc => 'name' } } );
86
                        { order_by => { -asc => 'name' } } )->as_list;
87
}
87
}
88
88
89
my $supplier_count = @suppliers;
89
my $supplier_count = @suppliers;
(-)a/acqui/duplicate_orders.pl (-1 / +1 lines)
Lines 117-123 elsif ( $op eq 'batch_edit' ) { Link Here
117
    @{$budget_loop} =
117
    @{$budget_loop} =
118
      sort { uc( $a->{b_txt} ) cmp uc( $b->{b_txt} ) } @{$budget_loop};
118
      sort { uc( $a->{b_txt} ) cmp uc( $b->{b_txt} ) } @{$budget_loop};
119
119
120
    my @currencies = Koha::Acquisition::Currencies->search;
120
    my @currencies = Koha::Acquisition::Currencies->search->as_list;
121
    $template->param(
121
    $template->param(
122
        currencies  => \@currencies,
122
        currencies  => \@currencies,
123
        budget_loop => $budget_loop,
123
        budget_loop => $budget_loop,
(-)a/acqui/histsearch.pl (-1 / +1 lines)
Lines 99-105 unless ( $input->param('from') ) { Link Here
99
}
99
}
100
$filters->{from_placed_on} = output_pref( { dt => $from_placed_on, dateformat => 'iso', dateonly => 1 } );
100
$filters->{from_placed_on} = output_pref( { dt => $from_placed_on, dateformat => 'iso', dateonly => 1 } );
101
$filters->{to_placed_on} = output_pref( { dt => $to_placed_on, dateformat => 'iso', dateonly => 1 } );
101
$filters->{to_placed_on} = output_pref( { dt => $to_placed_on, dateformat => 'iso', dateonly => 1 } );
102
my @additional_fields = Koha::AdditionalFields->search( { tablename => 'aqbasket', searchable => 1 } );
102
my @additional_fields = Koha::AdditionalFields->search( { tablename => 'aqbasket', searchable => 1 } )->as_list;
103
$template->param( available_additional_fields => \@additional_fields );
103
$template->param( available_additional_fields => \@additional_fields );
104
my @additional_field_filters;
104
my @additional_field_filters;
105
foreach my $additional_field (@additional_fields) {
105
foreach my $additional_field (@additional_fields) {
(-)a/acqui/invoices.pl (-1 / +1 lines)
Lines 87-93 if ( $op and $op eq 'do_search' ) { Link Here
87
}
87
}
88
88
89
# Build suppliers list
89
# Build suppliers list
90
my @suppliers      = Koha::Acquisition::Booksellers->search( undef, { order_by => { -asc => 'name' } } );
90
my @suppliers      = Koha::Acquisition::Booksellers->search( undef, { order_by => { -asc => 'name' } } )->as_list;
91
my $suppliers_loop = [];
91
my $suppliers_loop = [];
92
my $suppliername;
92
my $suppliername;
93
foreach (@suppliers) {
93
foreach (@suppliers) {
(-)a/acqui/lateorders.pl (-1 / +1 lines)
Lines 157-162 $template->param( Link Here
157
    estimateddeliverydatefrom => $estimateddeliverydatefrom,
157
    estimateddeliverydatefrom => $estimateddeliverydatefrom,
158
    estimateddeliverydateto   => $estimateddeliverydateto,
158
    estimateddeliverydateto   => $estimateddeliverydateto,
159
	intranetcolorstylesheet => C4::Context->preference("intranetcolorstylesheet"),
159
	intranetcolorstylesheet => C4::Context->preference("intranetcolorstylesheet"),
160
    csv_profiles         => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'late_orders' }) ],
160
    csv_profiles         => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'late_orders' })->as_list ],
161
);
161
);
162
output_html_with_http_headers $input, $cookie, $template->output;
162
output_html_with_http_headers $input, $cookie, $template->output;
(-)a/acqui/neworderempty.pl (-2 / +2 lines)
Lines 326-332 $template->param( catalog_details => \@catalog_details, ); Link Here
326
my $suggestion;
326
my $suggestion;
327
$suggestion = GetSuggestionInfo($suggestionid) if $suggestionid;
327
$suggestion = GetSuggestionInfo($suggestionid) if $suggestionid;
328
328
329
my @currencies = Koha::Acquisition::Currencies->search;
329
my @currencies = Koha::Acquisition::Currencies->search->as_list;
330
my $active_currency = Koha::Acquisition::Currencies->get_active;
330
my $active_currency = Koha::Acquisition::Currencies->get_active;
331
331
332
# build bookfund list
332
# build bookfund list
Lines 367-373 if ($basketobj->effective_create_items eq 'ordering' && !$ordernumber) { Link Here
367
367
368
# 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
368
# 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
369
my @itemtypes;
369
my @itemtypes;
370
@itemtypes = Koha::ItemTypes->search unless C4::Context->preference('item-level_itypes');
370
@itemtypes = Koha::ItemTypes->search->as_list unless C4::Context->preference('item-level_itypes');
371
371
372
if ( defined $from_subscriptionid ) {
372
if ( defined $from_subscriptionid ) {
373
    # Get the last received order for this subscription
373
    # Get the last received order for this subscription
(-)a/acqui/orderreceive.pl (-1 / +1 lines)
Lines 152-158 $template->param( Link Here
152
    freight               => $freight,
152
    freight               => $freight,
153
    name                  => $bookseller->name,
153
    name                  => $bookseller->name,
154
    active_currency       => $active_currency,
154
    active_currency       => $active_currency,
155
    currencies            => scalar $currencies->search({ rate => { '!=' => 1 } }),
155
    currencies            => $currencies->search({ rate => { '!=' => 1 } }),
156
    invoiceincgst         => $bookseller->invoiceincgst,
156
    invoiceincgst         => $bookseller->invoiceincgst,
157
    bookfund              => $budget->{budget_name},
157
    bookfund              => $budget->{budget_name},
158
    creator               => $creator,
158
    creator               => $creator,
(-)a/acqui/supplier.pl (-1 / +1 lines)
Lines 96-102 if ( $op eq 'display' ) { Link Here
96
    print $query->redirect('/cgi-bin/koha/acqui/acqui-home.pl');
96
    print $query->redirect('/cgi-bin/koha/acqui/acqui-home.pl');
97
    exit;
97
    exit;
98
} else {
98
} else {
99
    my @currencies = Koha::Acquisition::Currencies->search;
99
    my @currencies = Koha::Acquisition::Currencies->search->as_list;
100
100
101
    # get option values from TaxRates syspref
101
    # get option values from TaxRates syspref
102
    my @gst_values = map {
102
    my @gst_values = map {
(-)a/acqui/transferorder.pl (-1 / +1 lines)
Lines 119-125 if( $basketno && $ordernumber) { Link Here
119
    if( $op eq "do_search" ) {
119
    if( $op eq "do_search" ) {
120
        my @booksellers = Koha::Acquisition::Booksellers->search(
120
        my @booksellers = Koha::Acquisition::Booksellers->search(
121
                            { name     => { -like => "%$query%" } },
121
                            { name     => { -like => "%$query%" } },
122
                            { order_by => { -asc => 'name' } } );
122
                            { order_by => { -asc => 'name' } } )->as_list;
123
        $template->param(
123
        $template->param(
124
            query => $query,
124
            query => $query,
125
            do_search => 1,
125
            do_search => 1,
(-)a/admin/audio_alerts.pl (-1 / +1 lines)
Lines 61-66 if (@delete) { Link Here
61
    Koha::AudioAlerts->fix_precedences();
61
    Koha::AudioAlerts->fix_precedences();
62
}
62
}
63
63
64
$template->param( AudioAlertsPage => 1, audio_alerts => scalar Koha::AudioAlerts->search() );
64
$template->param( AudioAlertsPage => 1, audio_alerts => Koha::AudioAlerts->search() );
65
65
66
output_html_with_http_headers $cgi, $cookie, $template->output;
66
output_html_with_http_headers $cgi, $cookie, $template->output;
(-)a/admin/auth_subfields_structure.pl (-1 / +1 lines)
Lines 78-84 if ($op eq 'add_form') { Link Here
78
        push @authorised_value_categories, 'itemtypes';
78
        push @authorised_value_categories, 'itemtypes';
79
79
80
        # build thesaurus categories list
80
        # build thesaurus categories list
81
        my @authtypes = uniq( "", map { $_->authtypecode } Koha::Authority::Types->search );
81
        my @authtypes = uniq( "", map { $_->authtypecode } Koha::Authority::Types->search->as_list );
82
82
83
	# build value_builder list
83
	# build value_builder list
84
	my @value_builder=('');
84
	my @value_builder=('');
(-)a/admin/authorised_values.pl (-2 / +2 lines)
Lines 212-218 $template->param( Link Here
212
212
213
if ( $op eq 'list' ) {
213
if ( $op eq 'list' ) {
214
    # build categories list
214
    # build categories list
215
    my @categories = Koha::AuthorisedValueCategories->search({ category_name => { -not_in => ['', 'branches', 'itemtypes', 'cn_source']}}, { order_by => ['category_name'] } );
215
    my @categories = Koha::AuthorisedValueCategories->search({ category_name => { -not_in => ['', 'branches', 'itemtypes', 'cn_source']}}, { order_by => ['category_name'] } )->as_list;
216
    my @category_list;
216
    my @category_list;
217
    for my $category ( @categories ) {
217
    for my $category ( @categories ) {
218
        push( @category_list, $category->category_name );
218
        push( @category_list, $category->category_name );
Lines 220-226 if ( $op eq 'list' ) { Link Here
220
220
221
    $searchfield ||= $category_list[0];
221
    $searchfield ||= $category_list[0];
222
222
223
    my @avs_by_category = Koha::AuthorisedValues->new->search( { category => $searchfield } );
223
    my @avs_by_category = Koha::AuthorisedValues->new->search( { category => $searchfield } )->as_list;
224
    my @loop_data = ();
224
    my @loop_data = ();
225
    # builds value list
225
    # builds value list
226
    for my $av ( @avs_by_category ) {
226
    for my $av ( @avs_by_category ) {
(-)a/admin/branches.pl (-1 / +1 lines)
Lines 55-61 if ( $op eq 'add_form' ) { Link Here
55
        $template->param( selected_smtp_server => $library->smtp_server );
55
        $template->param( selected_smtp_server => $library->smtp_server );
56
    }
56
    }
57
57
58
    my @smtp_servers = Koha::SMTP::Servers->search;
58
    my @smtp_servers = Koha::SMTP::Servers->search->as_list;
59
59
60
    $template->param(
60
    $template->param(
61
        library      => $library,
61
        library      => $library,
(-)a/admin/classsources.pl (-2 / +2 lines)
Lines 60-67 if ( $op eq "add_source" ) { Link Here
60
      $cn_source ? Koha::ClassSources->find($cn_source) : undef;
60
      $cn_source ? Koha::ClassSources->find($cn_source) : undef;
61
    $template->param(
61
    $template->param(
62
        class_source => $class_source,
62
        class_source => $class_source,
63
        sort_rules   => scalar Koha::ClassSortRules->search,
63
        sort_rules   => Koha::ClassSortRules->search,
64
        split_rules  => scalar Koha::ClassSplitRules->search,
64
        split_rules  => Koha::ClassSplitRules->search,
65
    );
65
    );
66
}
66
}
67
elsif ( $op eq "add_source_validate" ) {
67
elsif ( $op eq "add_source_validate" ) {
(-)a/admin/item_circulation_alerts.pl (-2 / +2 lines)
Lines 47-54 sub show { Link Here
47
    );
47
    );
48
48
49
    my $branch   = $input->param('branch') || '*';
49
    my $branch   = $input->param('branch') || '*';
50
    my @categories = Koha::Patron::Categories->search_with_library_limits;
50
    my @categories = Koha::Patron::Categories->search_with_library_limits->as_list;
51
    my @item_types = Koha::ItemTypes->search;
51
    my @item_types = Koha::ItemTypes->search->as_list;
52
    my $grid_checkout = $preferences->grid({ branchcode => $branch, notification => 'CHECKOUT' });
52
    my $grid_checkout = $preferences->grid({ branchcode => $branch, notification => 'CHECKOUT' });
53
    my $grid_checkin  = $preferences->grid({ branchcode => $branch, notification => 'CHECKIN' });
53
    my $grid_checkin  = $preferences->grid({ branchcode => $branch, notification => 'CHECKIN' });
54
54
(-)a/admin/koha2marclinks.pl (-1 / +1 lines)
Lines 91-97 my @loop_data; Link Here
91
foreach my $col ( @cols ) {
91
foreach my $col ( @cols ) {
92
    my $found;
92
    my $found;
93
    my $readonly = $col =~ /\.(biblio|biblioitem|item)number$/;
93
    my $readonly = $col =~ /\.(biblio|biblioitem|item)number$/;
94
    foreach my $row ( $kohafields->search({ kohafield => $col }) ) {
94
    foreach my $row ( $kohafields->search({ kohafield => $col })->as_list ) {
95
        $found = 1;
95
        $found = 1;
96
        push @loop_data, {
96
        push @loop_data, {
97
            kohafield    => $col,
97
            kohafield    => $col,
(-)a/admin/marc_subfields_structure.pl (-2 / +2 lines)
Lines 97-107 if ( $op eq 'add_form' ) { Link Here
97
    $sth2->finish;
97
    $sth2->finish;
98
    $sth2 = $dbh->prepare("select distinct category from authorised_values");
98
    $sth2 = $dbh->prepare("select distinct category from authorised_values");
99
    $sth2->execute;
99
    $sth2->execute;
100
    my @av_cat = Koha::AuthorisedValueCategories->search;
100
    my @av_cat = Koha::AuthorisedValueCategories->search->as_list;
101
    my @authorised_values = map { $_->category_name } @av_cat;
101
    my @authorised_values = map { $_->category_name } @av_cat;
102
102
103
    # build thesaurus categories list
103
    # build thesaurus categories list
104
    my @authtypes = uniq( "", map { $_->authtypecode } Koha::Authority::Types->search );
104
    my @authtypes = uniq( "", map { $_->authtypecode } Koha::Authority::Types->search->as_list );
105
105
106
    # build value_builder list
106
    # build value_builder list
107
    my @value_builder = ('');
107
    my @value_builder = ('');
(-)a/admin/overdrive.pl (-1 / +1 lines)
Lines 55-61 if ( $op && $op eq 'update' ) { Link Here
55
    }
55
    }
56
}
56
}
57
57
58
my @branches = Koha::Libraries->search();
58
my @branches = Koha::Libraries->search->as_list;
59
my @branch_od_info;
59
my @branch_od_info;
60
foreach my $branch ( @branches ){
60
foreach my $branch ( @branches ){
61
    my $od_info =  Koha::Library::OverDriveInfos->find($branch->branchcode);
61
    my $od_info =  Koha::Library::OverDriveInfos->find($branch->branchcode);
(-)a/admin/preferences.pl (-1 / +1 lines)
Lines 99-105 sub _get_chunk { Link Here
99
            } elsif ( $options{'choices'} eq 'staff-templates' ) {
99
            } elsif ( $options{'choices'} eq 'staff-templates' ) {
100
                $options{'choices'} = { map { $_ => $_ } getallthemes( 'intranet' ) }
100
                $options{'choices'} = { map { $_ => $_ } getallthemes( 'intranet' ) }
101
            } elsif ( $options{choices} eq 'patron-categories' ) {
101
            } elsif ( $options{choices} eq 'patron-categories' ) {
102
                $options{choices} = { map { $_->categorycode => $_->description } Koha::Patron::Categories->search };
102
                $options{choices} = { map { $_->categorycode => $_->description } Koha::Patron::Categories->search->as_list };
103
                $add_blank = 1;
103
                $add_blank = 1;
104
            } else {
104
            } else {
105
                die 'Unrecognized source of preference values: ' . $options{'choices'};
105
                die 'Unrecognized source of preference values: ' . $options{'choices'};
(-)a/admin/sms_providers.pl (-1 / +1 lines)
Lines 62-68 elsif ( $op eq 'delete' ) { Link Here
62
    $provider->delete() if $provider;
62
    $provider->delete() if $provider;
63
}
63
}
64
64
65
my @providers = Koha::SMS::Providers->search();
65
my @providers = Koha::SMS::Providers->search->as_list;
66
66
67
$template->param( providers => \@providers );
67
$template->param( providers => \@providers );
68
68
(-)a/admin/transport-cost-matrix.pl (-1 / +1 lines)
Lines 45-51 unless ($update) { Link Here
45
    $have_matrix = keys %$cost_matrix if $cost_matrix;
45
    $have_matrix = keys %$cost_matrix if $cost_matrix;
46
}
46
}
47
47
48
my @branchloop = map { code => $_->branchcode, name => $_->branchname }, Koha::Libraries->search({}, { order_by => 'branchname' });
48
my @branchloop = map { code => $_->branchcode, name => $_->branchname }, Koha::Libraries->search({}, { order_by => 'branchname' })->as_list;
49
my (@branchfromloop, @errors);
49
my (@branchfromloop, @errors);
50
foreach my $branchfrom ( @branchloop ) {
50
foreach my $branchfrom ( @branchloop ) {
51
    my $fromcode = $branchfrom->{code};
51
    my $fromcode = $branchfrom->{code};
(-)a/basket/basket.pl (-1 / +1 lines)
Lines 126-132 my $resultsarray = \@results; Link Here
126
126
127
$template->param(
127
$template->param(
128
    BIBLIO_RESULTS => $resultsarray,
128
    BIBLIO_RESULTS => $resultsarray,
129
    csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
129
    csv_profiles => Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }),
130
    bib_list => $bib_list,
130
    bib_list => $bib_list,
131
);
131
);
132
132
(-)a/basket/downloadcart.pl (-1 / +1 lines)
Lines 92-98 if ($bib_list && $format) { Link Here
92
    print $output;
92
    print $output;
93
93
94
} else { 
94
} else { 
95
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ]);
95
    $template->param(csv_profiles => Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }));
96
    $template->param(bib_list => $bib_list); 
96
    $template->param(bib_list => $bib_list); 
97
    output_html_with_http_headers $query, $cookie, $template->output;
97
    output_html_with_http_headers $query, $cookie, $template->output;
98
}
98
}
(-)a/catalogue/issuehistory.pl (-2 / +2 lines)
Lines 47-60 my @checkouts = Koha::Checkouts->search( Link Here
47
        join       => 'item',
47
        join       => 'item',
48
        order_by   => 'timestamp',
48
        order_by   => 'timestamp',
49
    }
49
    }
50
);
50
)->as_list;
51
my @old_checkouts = Koha::Old::Checkouts->search(
51
my @old_checkouts = Koha::Old::Checkouts->search(
52
    { biblionumber => $biblionumber },
52
    { biblionumber => $biblionumber },
53
    {
53
    {
54
        join       => 'item',
54
        join       => 'item',
55
        order_by   => 'timestamp',
55
        order_by   => 'timestamp',
56
    }
56
    }
57
);
57
)->as_list;
58
58
59
my $biblio = Koha::Biblios->find( $biblionumber );
59
my $biblio = Koha::Biblios->find( $biblionumber );
60
60
(-)a/catalogue/item-export.pl (-1 / +1 lines)
Lines 36-42 my ($template, $borrowernumber, $cookie) = get_template_and_user({ Link Here
36
my @itemnumbers = $cgi->multi_param('itemnumber');
36
my @itemnumbers = $cgi->multi_param('itemnumber');
37
my $format = $cgi->param('format') // 'csv';
37
my $format = $cgi->param('format') // 'csv';
38
38
39
my @items = Koha::Items->search({ itemnumber => { -in => \@itemnumbers } });
39
my @items = Koha::Items->search({ itemnumber => { -in => \@itemnumbers } })->as_list;
40
40
41
if ($format eq 'barcodes') {
41
if ($format eq 'barcodes') {
42
    print $cgi->header({
42
    print $cgi->header({
(-)a/catalogue/itemsearch.pl (-2 / +2 lines)
Lines 259-267 if ( defined $format ) { Link Here
259
259
260
# Display the search form
260
# Display the search form
261
261
262
my @branches = map { value => $_->branchcode, label => $_->branchname }, Koha::Libraries->search( {}, { order_by => 'branchname' } );
262
my @branches = map { value => $_->branchcode, label => $_->branchname }, Koha::Libraries->search( {}, { order_by => 'branchname' } )->as_list;
263
my @itemtypes;
263
my @itemtypes;
264
foreach my $itemtype ( Koha::ItemTypes->search_with_localization ) {
264
foreach my $itemtype ( Koha::ItemTypes->search_with_localization->as_list ) {
265
    push @itemtypes, {
265
    push @itemtypes, {
266
        value => $itemtype->itemtype,
266
        value => $itemtype->itemtype,
267
        label => $itemtype->translated_description,
267
        label => $itemtype->translated_description,
(-)a/cataloguing/editor.pl (-1 / +1 lines)
Lines 49-55 my ( $template, $loggedinuser, $cookie ) = get_template_and_user( Link Here
49
49
50
my $schema = Koha::Database->new->schema;
50
my $schema = Koha::Database->new->schema;
51
51
52
my @keyboard_shortcuts = Koha::KeyboardShortcuts->search();
52
my @keyboard_shortcuts = Koha::KeyboardShortcuts->search->as_list;
53
53
54
# Keyboard shortcuts
54
# Keyboard shortcuts
55
$template->param(
55
$template->param(
(-)a/cataloguing/value_builder/cn_browser.pl (-1 / +1 lines)
Lines 83-89 my $launcher = sub { Link Here
83
    }
83
    }
84
84
85
    my $cn_source = $cgi->param('cn_source') || C4::Context->preference("DefaultClassificationSource");
85
    my $cn_source = $cgi->param('cn_source') || C4::Context->preference("DefaultClassificationSource");
86
    my @class_sources = Koha::ClassSources->search({ used => 1});
86
    my @class_sources = Koha::ClassSources->search({ used => 1})->as_list;
87
87
88
    #Don't show half the results of show lt or gt
88
    #Don't show half the results of show lt or gt
89
    $real_limit = $results_per_page if $search ne $q;
89
    $real_limit = $results_per_page if $search ne $q;
(-)a/cataloguing/value_builder/marc21_linking_section.pl (-1 / +1 lines)
Lines 297-303 my $launcher = sub { Link Here
297
            }
297
            }
298
        );
298
        );
299
299
300
        my @itemtypes = Koha::ItemTypes->search;
300
        my @itemtypes = Koha::ItemTypes->search->as_list;
301
301
302
        $template->param(
302
        $template->param(
303
            itypeloop => \@itemtypes,
303
            itypeloop => \@itemtypes,
(-)a/cataloguing/value_builder/unimarc_field_4XX.pl (-1 / +1 lines)
Lines 484-490 sub plugin { Link Here
484
            }
484
            }
485
        );
485
        );
486
486
487
        my @itemtypes = Koha::ItemTypes->search;
487
        my @itemtypes = Koha::ItemTypes->search->as_list;
488
488
489
        $template->param(    #classlist => $classlist,
489
        $template->param(    #classlist => $classlist,
490
            itypeloop    => \@itemtypes,
490
            itypeloop    => \@itemtypes,
(-)a/circ/article-requests.pl (-3 / +3 lines)
Lines 39-47 my $branchcode = defined( $query->param('branchcode') ) ? $query->param('branchc Link Here
39
39
40
$template->param(
40
$template->param(
41
    branchcode                  => $branchcode,
41
    branchcode                  => $branchcode,
42
    article_requests_requested  => scalar Koha::ArticleRequests->requested($branchcode),
42
    article_requests_requested  => Koha::ArticleRequests->requested($branchcode),
43
    article_requests_pending    => scalar Koha::ArticleRequests->pending($branchcode),
43
    article_requests_pending    => Koha::ArticleRequests->pending($branchcode),
44
    article_requests_processing => scalar Koha::ArticleRequests->processing($branchcode),
44
    article_requests_processing => Koha::ArticleRequests->processing($branchcode),
45
);
45
);
46
46
47
output_html_with_http_headers $query, $cookie, $template->output;
47
output_html_with_http_headers $query, $cookie, $template->output;
(-)a/circ/circulation.pl (-4 / +4 lines)
Lines 545-555 my $view = $batch Link Here
545
545
546
my @relatives;
546
my @relatives;
547
if ( $patron ) {
547
if ( $patron ) {
548
    if ( my @guarantors = $patron->guarantor_relationships()->guarantors() ) {
548
    if ( my @guarantors = $patron->guarantor_relationships()->guarantors->as_list ) {
549
        push( @relatives, $_->id ) for @guarantors;
549
        push( @relatives, $_->id ) for @guarantors;
550
        push( @relatives, $_->id ) for $patron->siblings();
550
        push( @relatives, $_->id ) for $patron->siblings->as_list;
551
    } else {
551
    } else {
552
        push( @relatives, $_->id ) for $patron->guarantee_relationships()->guarantees();
552
        push( @relatives, $_->id ) for $patron->guarantee_relationships()->guarantees->as_list;
553
    }
553
    }
554
}
554
}
555
my $relatives_issues_count =
555
my $relatives_issues_count =
Lines 603-609 $template->param( Link Here
603
603
604
604
605
if ( C4::Context->preference("ExportCircHistory") ) {
605
if ( C4::Context->preference("ExportCircHistory") ) {
606
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ]);
606
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' })->as_list ]);
607
}
607
}
608
608
609
my $has_modifications = Koha::Patron::Modifications->search( { borrowernumber => $borrowernumber } )->count;
609
my $has_modifications = Koha::Patron::Modifications->search( { borrowernumber => $borrowernumber } )->count;
(-)a/circ/transfers_to_send.pl (-1 / +1 lines)
Lines 53-59 my @transfers = Koha::Libraries->search( Link Here
53
        prefetch => 'branchtransfers_tobranches',
53
        prefetch => 'branchtransfers_tobranches',
54
        order_by => 'branchtransfers_tobranches.tobranch'
54
        order_by => 'branchtransfers_tobranches.tobranch'
55
    }
55
    }
56
);
56
)->as_list;
57
57
58
$template->param(
58
$template->param(
59
    libraries => \@transfers,
59
    libraries => \@transfers,
(-)a/clubs/clubs.pl (-2 / +2 lines)
Lines 45-52 my $club_id = $cgi->param('club_id'); Link Here
45
my $club_template = $club_template_id ? Koha::Club::Templates->find( $club_template_id ) : undef;
45
my $club_template = $club_template_id ? Koha::Club::Templates->find( $club_template_id ) : undef;
46
my $club = $club_id ? Koha::Clubs->find( $club_id ) : undef;
46
my $club = $club_id ? Koha::Clubs->find( $club_id ) : undef;
47
47
48
my @club_templates = Koha::Club::Templates->search();
48
my @club_templates = Koha::Club::Templates->search->as_list;
49
my @clubs          = Koha::Clubs->search();
49
my @clubs          = Koha::Clubs->search->as_list;
50
50
51
$template->param(
51
$template->param(
52
    stored         => $stored,
52
    stored         => $stored,
(-)a/clubs/patron-clubs-tab.pl (-2 / +2 lines)
Lines 42-49 my $patronnumber = $cgi->param('borrowernumber'); Link Here
42
42
43
my $patron = Koha::Patrons->find($patronnumber);
43
my $patron = Koha::Patrons->find($patronnumber);
44
44
45
my @enrollments = $patron->get_club_enrollments();
45
my @enrollments = $patron->get_club_enrollments->as_list;
46
my @clubs       = $patron->get_enrollable_clubs();
46
my @clubs       = $patron->get_enrollable_clubs->as_list;
47
47
48
$template->param(
48
$template->param(
49
    enrollments    => \@enrollments,
49
    enrollments    => \@enrollments,
(-)a/ill/ill-requests.pl (-1 / +1 lines)
Lines 429-435 $template->param( Link Here
429
    backends   => $backends,
429
    backends   => $backends,
430
    types      => [ "Book", "Article", "Journal" ],
430
    types      => [ "Book", "Article", "Journal" ],
431
    query_type => $op,
431
    query_type => $op,
432
    branches   => scalar Koha::Libraries->search,
432
    branches   => Koha::Libraries->search,
433
);
433
);
434
434
435
output_html_with_http_headers( $cgi, $cookie, $template->output );
435
output_html_with_http_headers( $cgi, $cookie, $template->output );
(-)a/members/apikeys.pl (-2 / +2 lines)
Lines 84-90 if ($op) { Link Here
84
84
85
        $template->param(
85
        $template->param(
86
            fresh_api_key => $api_key,
86
            fresh_api_key => $api_key,
87
            api_keys      => scalar Koha::ApiKeys->search({ patron_id => $patron_id }),
87
            api_keys      => Koha::ApiKeys->search({ patron_id => $patron_id }),
88
        );
88
        );
89
    }
89
    }
90
90
Lines 121-127 if ($op) { Link Here
121
    }
121
    }
122
}
122
}
123
123
124
my @api_keys = Koha::ApiKeys->search({ patron_id => $patron_id });
124
my @api_keys = Koha::ApiKeys->search({ patron_id => $patron_id })->as_list;
125
125
126
$template->param(
126
$template->param(
127
    api_keys   => \@api_keys,
127
    api_keys   => \@api_keys,
(-)a/members/boraccount.pl (-1 / +1 lines)
Lines 177-183 my $total = $patron->account->balance; Link Here
177
my @accountlines = Koha::Account::Lines->search(
177
my @accountlines = Koha::Account::Lines->search(
178
    { borrowernumber => $patron->borrowernumber },
178
    { borrowernumber => $patron->borrowernumber },
179
    { order_by       => { -desc => 'accountlines_id' } }
179
    { order_by       => { -desc => 'accountlines_id' } }
180
);
180
)->as_list;
181
181
182
my $totalcredit;
182
my $totalcredit;
183
if($total <= 0){
183
if($total <= 0){
(-)a/members/mancredit.pl (-1 / +1 lines)
Lines 115-121 else { Link Here
115
115
116
    my @credit_types = Koha::Account::CreditTypes->search_with_library_limits(
116
    my @credit_types = Koha::Account::CreditTypes->search_with_library_limits(
117
        { can_be_added_manually => 1, archived => 0 },
117
        { can_be_added_manually => 1, archived => 0 },
118
        {}, $library_id );
118
        {}, $library_id )->as_list;
119
119
120
    $template->param(
120
    $template->param(
121
        patron       => $patron,
121
        patron       => $patron,
(-)a/members/maninvoice.pl (-1 / +1 lines)
Lines 207-213 if ($add) { Link Here
207
207
208
my @debit_types = Koha::Account::DebitTypes->search_with_library_limits(
208
my @debit_types = Koha::Account::DebitTypes->search_with_library_limits(
209
  { can_be_invoiced => 1, archived => 0 },
209
  { can_be_invoiced => 1, archived => 0 },
210
  {}, $library_id );
210
  {}, $library_id )->as_list;
211
211
212
$template->param(
212
$template->param(
213
  debit_types => \@debit_types,
213
  debit_types => \@debit_types,
(-)a/members/memberentry.pl (-2 / +2 lines)
Lines 68-74 if ( $borrowernumber and not $patron ) { Link Here
68
}
68
}
69
69
70
if ( C4::Context->preference('SMSSendDriver') eq 'Email' ) {
70
if ( C4::Context->preference('SMSSendDriver') eq 'Email' ) {
71
    my @providers = Koha::SMS::Providers->search();
71
    my @providers = Koha::SMS::Providers->search->as_list;
72
    $template->param( sms_providers => \@providers );
72
    $template->param( sms_providers => \@providers );
73
}
73
}
74
74
Lines 96-102 my $userenv = C4::Context->userenv; Link Here
96
my @messages;
96
my @messages;
97
97
98
## Deal with guarantor stuff
98
## Deal with guarantor stuff
99
$template->param( relationships => scalar $patron->guarantor_relationships ) if $patron;
99
$template->param( relationships => $patron->guarantor_relationships ) if $patron;
100
100
101
my @relations = split /\|/, C4::Context->preference('borrowerRelationship'), -1;
101
my @relations = split /\|/, C4::Context->preference('borrowerRelationship'), -1;
102
@relations = ('') unless @relations;
102
@relations = ('') unless @relations;
(-)a/members/members-home.pl (-1 / +1 lines)
Lines 43-49 if( Koha::Libraries->search->count < 1){ Link Here
43
    $template->param(no_branches => 1);
43
    $template->param(no_branches => 1);
44
}
44
}
45
45
46
my @categories = Koha::Patron::Categories->search_with_library_limits;
46
my @categories = Koha::Patron::Categories->search_with_library_limits->as_list;
47
if(scalar(@categories) < 1){
47
if(scalar(@categories) < 1){
48
    $no_add = 1;
48
    $no_add = 1;
49
    $template->param(no_categories => 1);
49
    $template->param(no_categories => 1);
(-)a/members/members-update.pl (-1 / +1 lines)
Lines 59-65 foreach my $pm (@$pending_modifications) { Link Here
59
    foreach my $type (@modified_atypes) {
59
    foreach my $type (@modified_atypes) {
60
        my $type_obj = Koha::Patron::Attribute::Types->find($type);
60
        my $type_obj = Koha::Patron::Attribute::Types->find($type);
61
        my @before   = Koha::Patron::Attributes->search(
61
        my @before   = Koha::Patron::Attributes->search(
62
            { borrowernumber => $pm->{borrowernumber}, code => $type } );
62
            { borrowernumber => $pm->{borrowernumber}, code => $type } )->as_list;
63
        my @after = grep { $_->code eq $type } @{ $pm->{extended_attributes} };
63
        my @after = grep { $_->code eq $type } @{ $pm->{extended_attributes} };
64
        push @{$modified_attributes}, { type => $type_obj, before => \@before, after => \@after };
64
        push @{$modified_attributes}, { type => $type_obj, before => \@before, after => \@after };
65
    }
65
    }
(-)a/members/moremember.pl (-4 / +4 lines)
Lines 95-105 $template->param( flagged => 1 ) if $patron->account_locked; Link Here
95
95
96
my @relatives;
96
my @relatives;
97
my $guarantor_relationships = $patron->guarantor_relationships;
97
my $guarantor_relationships = $patron->guarantor_relationships;
98
my @guarantees              = $patron->guarantee_relationships->guarantees;
98
my @guarantees              = $patron->guarantee_relationships->guarantees->as_list;
99
my @guarantors              = $guarantor_relationships->guarantors;
99
my @guarantors              = $guarantor_relationships->guarantors->as_list;
100
if (@guarantors) {
100
if (@guarantors) {
101
    push( @relatives, $_->id ) for @guarantors;
101
    push( @relatives, $_->id ) for @guarantors;
102
    push( @relatives, $_->id ) for $patron->siblings();
102
    push( @relatives, $_->id ) for $patron->siblings->as_list;
103
}
103
}
104
else {
104
else {
105
    push( @relatives, $_->id ) for @guarantees;
105
    push( @relatives, $_->id ) for @guarantees;
Lines 162-168 if (C4::Context->preference('EnhancedMessagingPreferences')) { Link Here
162
}
162
}
163
163
164
if ( C4::Context->preference("ExportCircHistory") ) {
164
if ( C4::Context->preference("ExportCircHistory") ) {
165
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' }) ]);
165
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc' })->as_list ]);
166
}
166
}
167
167
168
my $patron_messages = Koha::Patron::Messages->search(
168
my $patron_messages = Koha::Patron::Messages->search(
(-)a/members/paycollect.pl (-1 / +1 lines)
Lines 125-131 if ( $selected_accts ) { Link Here
125
    @selected_accountlines = Koha::Account::Lines->search(
125
    @selected_accountlines = Koha::Account::Lines->search(
126
        $search_params,
126
        $search_params,
127
        { order_by => 'date' }
127
        { order_by => 'date' }
128
    );
128
    )->as_list;
129
129
130
    my $sum = Koha::Account::Lines->search(
130
    my $sum = Koha::Account::Lines->search(
131
        $search_params,
131
        $search_params,
(-)a/members/print_overdues.pl (-1 / +1 lines)
Lines 49-55 my $patron = Koha::Patrons->find( $borrowernumber ); Link Here
49
output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } );
49
output_and_exit_if_error( $input, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } );
50
50
51
my $overdues = [
51
my $overdues = [
52
    map { $_->unblessed_all_relateds } $patron->get_overdues
52
    map { $_->unblessed_all_relateds } $patron->get_overdues->as_list
53
];
53
];
54
54
55
my $letter = parse_overdues_letter(
55
my $letter = parse_overdues_letter(
(-)a/members/update-child.pl (-1 / +1 lines)
Lines 80-86 elsif ( $op eq 'update' ) { Link Here
80
    # But we should not hit that with a normal use of the interface
80
    # But we should not hit that with a normal use of the interface
81
    die "You are doing something wrong updating this child" unless $adult_category;
81
    die "You are doing something wrong updating this child" unless $adult_category;
82
82
83
    $_->delete() for $patron->guarantor_relationships();
83
    $_->delete() for $patron->guarantor_relationships->as_list;
84
84
85
    $patron->categorycode($adult_category->categorycode);
85
    $patron->categorycode($adult_category->categorycode);
86
    $patron->store;
86
    $patron->store;
(-)a/misc/cronjobs/delete_records_via_leader.pl (-1 / +1 lines)
Lines 86-92 foreach my $m (@metadatas) { Link Here
86
    if ($delete_items) {
86
    if ($delete_items) {
87
        my $deleted_count = 0;
87
        my $deleted_count = 0;
88
        my $biblio = Koha::Biblios->find( $biblionumber );
88
        my $biblio = Koha::Biblios->find( $biblionumber );
89
        my @items = Koha::Items->search( { biblionumber => $biblionumber } );
89
        my @items = Koha::Items->search( { biblionumber => $biblionumber } )->as_list;
90
        foreach my $item ( @items ) {
90
        foreach my $item ( @items ) {
91
            my $itemnumber = $item->itemnumber;
91
            my $itemnumber = $item->itemnumber;
92
92
(-)a/misc/cronjobs/reconcile_balances.pl (-1 / +1 lines)
Lines 81-87 my @patron_ids = map { $_->borrowernumber } Koha::Account::Lines->search( Link Here
81
            columns  => [ qw/borrowernumber/ ],
81
            columns  => [ qw/borrowernumber/ ],
82
            distinct => 1,
82
            distinct => 1,
83
        }
83
        }
84
    );
84
    )->as_list;
85
85
86
my $patrons = Koha::Patrons->search({ borrowernumber => { -in => \@patron_ids } });
86
my $patrons = Koha::Patrons->search({ borrowernumber => { -in => \@patron_ids } });
87
87
(-)a/opac/clubs/clubs-tab.pl (-2 / +2 lines)
Lines 39-46 my $borrowernumber = $cgi->param('borrowernumber'); Link Here
39
39
40
my $borrower = Koha::Patrons->find($borrowernumber);
40
my $borrower = Koha::Patrons->find($borrowernumber);
41
41
42
my @enrollments = $borrower->get_club_enrollments();
42
my @enrollments = $borrower->get_club_enrollments->as_list;
43
my @clubs = $borrower->get_enrollable_clubs( my $opac = 1 );
43
my @clubs = $borrower->get_enrollable_clubs( my $opac = 1 )->as_list;
44
44
45
$template->param(
45
$template->param(
46
    enrollments => \@enrollments,
46
    enrollments => \@enrollments,
(-)a/opac/opac-account.pl (-1 / +1 lines)
Lines 50-56 if ( C4::Context->preference('AllowPatronToSetFinesVisibilityForGuarantor') Link Here
50
    my @relatives;
50
    my @relatives;
51
51
52
    # Filter out guarantees that don't want guarantor to see checkouts
52
    # Filter out guarantees that don't want guarantor to see checkouts
53
    foreach my $gr ( $patron->guarantee_relationships() ) {
53
    foreach my $gr ( $patron->guarantee_relationships->as_list ) {
54
        my $g = $gr->guarantee;
54
        my $g = $gr->guarantee;
55
        if ( $g->privacy_guarantor_fines ) {
55
        if ( $g->privacy_guarantor_fines ) {
56
56
(-)a/opac/opac-basket.pl (-1 / +1 lines)
Lines 179-185 $template->param( Link Here
179
    csv_profiles => [
179
    csv_profiles => [
180
        Koha::CsvProfiles->search(
180
        Koha::CsvProfiles->search(
181
            { type => 'marc', used_for => 'export_records', staff_only => 0 }
181
            { type => 'marc', used_for => 'export_records', staff_only => 0 }
182
        )
182
        )->as_list
183
    ],
183
    ],
184
    bib_list => $bib_list,
184
    bib_list => $bib_list,
185
    BIBLIO_RESULTS => $resultsarray,
185
    BIBLIO_RESULTS => $resultsarray,
(-)a/opac/opac-downloadcart.pl (-1 / +1 lines)
Lines 137-143 if ($bib_list && $format) { Link Here
137
                    used_for   => 'export_records',
137
                    used_for   => 'export_records',
138
                    staff_only => 0
138
                    staff_only => 0
139
                }
139
                }
140
            )
140
            )->as_list
141
        ]
141
        ]
142
    );
142
    );
143
    $template->param(bib_list => $bib_list); 
143
    $template->param(bib_list => $bib_list); 
(-)a/opac/opac-downloadshelf.pl (-1 / +1 lines)
Lines 153-159 if ( $shelf and $shelf->can_be_viewed( $borrowernumber ) ) { Link Here
153
                        used_for   => 'export_records',
153
                        used_for   => 'export_records',
154
                        staff_only => 0
154
                        staff_only => 0
155
                    }
155
                    }
156
                )
156
                )->as_list
157
            ]
157
            ]
158
        );
158
        );
159
        $template->param( shelf => $shelf );
159
        $template->param( shelf => $shelf );
(-)a/opac/opac-memberentry.pl (-2 / +2 lines)
Lines 86-92 if ( $action eq 'create' || $action eq 'new' ) { Link Here
86
    $params = { branchcode => { -in => \@PatronSelfRegistrationLibraryList } }
86
    $params = { branchcode => { -in => \@PatronSelfRegistrationLibraryList } }
87
      if @PatronSelfRegistrationLibraryList;
87
      if @PatronSelfRegistrationLibraryList;
88
}
88
}
89
my @libraries = Koha::Libraries->search($params);
89
my @libraries = Koha::Libraries->search($params)->as_list;
90
90
91
my ( $min, $max ) = C4::Members::get_cardnumber_length();
91
my ( $min, $max ) = C4::Members::get_cardnumber_length();
92
if ( defined $min ) {
92
if ( defined $min ) {
Lines 698-704 sub ParsePatronAttributes { Link Here
698
    my @values = $cgi->multi_param('patron_attribute_value');
698
    my @values = $cgi->multi_param('patron_attribute_value');
699
699
700
    my @editable_attribute_types
700
    my @editable_attribute_types
701
        = map { $_->code } Koha::Patron::Attribute::Types->search({ opac_editable => 1 });
701
        = map { $_->code } Koha::Patron::Attribute::Types->search({ opac_editable => 1 })->as_list;
702
702
703
    my $ea = each_array( @codes, @values );
703
    my $ea = each_array( @codes, @values );
704
    my @attributes;
704
    my @attributes;
(-)a/opac/opac-messaging.pl (-1 / +1 lines)
Lines 79-85 $template->param( Link Here
79
                  TalkingTechItivaPhone        =>  C4::Context->preference("TalkingTechItivaPhoneNotification") );
79
                  TalkingTechItivaPhone        =>  C4::Context->preference("TalkingTechItivaPhoneNotification") );
80
80
81
if ( C4::Context->preference("SMSSendDriver") eq 'Email' ) {
81
if ( C4::Context->preference("SMSSendDriver") eq 'Email' ) {
82
    my @providers = Koha::SMS::Providers->search();
82
    my @providers = Koha::SMS::Providers->search->as_list;
83
    $template->param( sms_providers => \@providers, sms_provider_id => $patron->sms_provider_id );
83
    $template->param( sms_providers => \@providers, sms_provider_id => $patron->sms_provider_id );
84
}
84
}
85
85
(-)a/opac/opac-search.pl (-1 / +1 lines)
Lines 436-442 my %is_nolimit = map { $_ => 1 } @nolimits; Link Here
436
if (@searchCategories > 0) {
436
if (@searchCategories > 0) {
437
    my @tabcat;
437
    my @tabcat;
438
    foreach my $typecategory (@searchCategories) {
438
    foreach my $typecategory (@searchCategories) {
439
        my @itemtypes = Koha::ItemTypes->search({ searchcategory => $typecategory });
439
        my @itemtypes = Koha::ItemTypes->search({ searchcategory => $typecategory })->as_list;
440
        push @tabcat, $_->itemtype for @itemtypes;
440
        push @tabcat, $_->itemtype for @itemtypes;
441
    }
441
    }
442
442
(-)a/opac/opac-shelves.pl (-1 / +1 lines)
Lines 400-406 if ( $op eq 'view' ) { Link Here
400
                csv_profiles => [
400
                csv_profiles => [
401
                    Koha::CsvProfiles->search(
401
                    Koha::CsvProfiles->search(
402
                        { type => 'marc', used_for => 'export_records', staff_only => 0 }
402
                        { type => 'marc', used_for => 'export_records', staff_only => 0 }
403
                    )
403
                    )->as_list
404
                ],
404
                ],
405
            );
405
            );
406
            if ( $page ) {
406
            if ( $page ) {
(-)a/opac/opac-user.pl (-2 / +2 lines)
Lines 370-376 if ( C4::Context->preference('AllowPatronToSetCheckoutsVisibilityForGuarantor' Link Here
370
{
370
{
371
    my @relatives;
371
    my @relatives;
372
    # Filter out guarantees that don't want guarantor to see checkouts
372
    # Filter out guarantees that don't want guarantor to see checkouts
373
    foreach my $gr ( $patron->guarantee_relationships() ) {
373
    foreach my $gr ( $patron->guarantee_relationships->as_list ) {
374
        my $g = $gr->guarantee;
374
        my $g = $gr->guarantee;
375
        push( @relatives, $g ) if $g->privacy_guarantor_checkouts;
375
        push( @relatives, $g ) if $g->privacy_guarantor_checkouts;
376
    }
376
    }
Lines 382-388 if ( C4::Context->preference('AllowPatronToSetFinesVisibilityForGuarantor') Link Here
382
{
382
{
383
    my @relatives_with_fines;
383
    my @relatives_with_fines;
384
    # Filter out guarantees that don't want guarantor to see checkouts
384
    # Filter out guarantees that don't want guarantor to see checkouts
385
    foreach my $gr ( $patron->guarantee_relationships() ) {
385
    foreach my $gr ( $patron->guarantee_relationships->as_list ) {
386
        my $g = $gr->guarantee;
386
        my $g = $gr->guarantee;
387
        push( @relatives_with_fines, $g ) if $g->privacy_guarantor_fines;
387
        push( @relatives_with_fines, $g ) if $g->privacy_guarantor_fines;
388
    }
388
    }
(-)a/reports/acquisitions_stats.pl (-1 / +1 lines)
Lines 181-187 else { Link Here
181
181
182
    my $CGIsepChoice = GetDelimiterChoices;
182
    my $CGIsepChoice = GetDelimiterChoices;
183
183
184
    my @branches = Koha::Libraries->search({}, { order_by => 'branchname' });
184
    my @branches = Koha::Libraries->search({}, { order_by => 'branchname' })->as_list;
185
185
186
    my $ccode_subfield_structure = GetMarcSubfieldStructureFromKohaField('items.ccode');
186
    my $ccode_subfield_structure = GetMarcSubfieldStructureFromKohaField('items.ccode');
187
    my $ccode_label;
187
    my $ccode_label;
(-)a/reports/borrowers_stats.pl (-1 / +1 lines)
Lines 219-225 sub calculate { Link Here
219
        }
219
        }
220
    }
220
    }
221
221
222
    my @branchcodes = map { $_->branchcode } Koha::Libraries->search;
222
    my @branchcodes = map { $_->branchcode } Koha::Libraries->search->as_list;
223
	($status  ) and push @loopfilter,{crit=>"Status",  filter=>$status  };
223
	($status  ) and push @loopfilter,{crit=>"Status",  filter=>$status  };
224
	($activity) and push @loopfilter,{crit=>"Activity",filter=>$activity};
224
	($activity) and push @loopfilter,{crit=>"Activity",filter=>$activity};
225
# year of activity
225
# year of activity
(-)a/reports/issues_stats.pl (-1 / +1 lines)
Lines 82-88 $template->param(do_it => $do_it, Link Here
82
82
83
our $itemtypes = Koha::ItemTypes->search_with_localization->unblessed;
83
our $itemtypes = Koha::ItemTypes->search_with_localization->unblessed;
84
84
85
our @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']});
85
our @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']})->as_list;
86
86
87
our $locations = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.location' }, { order_by => ['description'] } ) };
87
our $locations = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.location' }, { order_by => ['description'] } ) };
88
our $ccodes = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.ccode' }, { order_by => ['description'] } ) };
88
our $ccodes = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.ccode' }, { order_by => ['description'] } ) };
(-)a/reports/reserves_stats.pl (-2 / +2 lines)
Lines 70-76 $sep = "\t" if ($sep eq 'tabulation'); Link Here
70
$template->param(do_it => $do_it,
70
$template->param(do_it => $do_it,
71
);
71
);
72
72
73
my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']});
73
my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']})->as_list;
74
74
75
my $locations = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.location' }, { order_by => ['description'] } ) };
75
my $locations = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.location' }, { order_by => ['description'] } ) };
76
my $ccodes = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.ccode' }, { order_by => ['description'] } ) };
76
my $ccodes = { map { ( $_->{authorised_value} => $_->{lib} ) } Koha::AuthorisedValues->get_descriptions_by_koha_field( { frameworkcode => '', kohafield => 'items.ccode' }, { order_by => ['description'] } ) };
Lines 325-331 sub display_value { Link Here
325
        }
325
        }
326
    }
326
    }
327
    elsif ( $crit =~ /category/ ) {
327
    elsif ( $crit =~ /category/ ) {
328
        my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']});
328
        my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']})->as_list;
329
        foreach my $patron_category ( @patron_categories ) {
329
        foreach my $patron_category ( @patron_categories ) {
330
            ( $value eq $patron_category->categorycode ) or next;
330
            ( $value eq $patron_category->categorycode ) or next;
331
            $display_value = $patron_category->description and last;
331
            $display_value = $patron_category->description and last;
(-)a/reserve/request.pl (-1 / +1 lines)
Lines 168-174 if($findclub) { Link Here
168
        my @clubs = Koha::Clubs->search( [
168
        my @clubs = Koha::Clubs->search( [
169
            { name => { like => '%'.$findclub.'%' } },
169
            { name => { like => '%'.$findclub.'%' } },
170
            { description => { like => '%'.$findclub.'%' } }
170
            { description => { like => '%'.$findclub.'%' } }
171
        ] );
171
        ] )->as_list;
172
        if( scalar @clubs == 1 ) {
172
        if( scalar @clubs == 1 ) {
173
            $club_hold = $clubs[0]->id;
173
            $club_hold = $clubs[0]->id;
174
        } elsif ( @clubs ) {
174
        } elsif ( @clubs ) {
(-)a/serials/acqui-search-result.pl (-1 / +1 lines)
Lines 60-66 my ($template, $loggedinuser, $cookie) Link Here
60
my $supplier=$query->param('supplier');
60
my $supplier=$query->param('supplier');
61
my @suppliers = Koha::Acquisition::Booksellers->search(
61
my @suppliers = Koha::Acquisition::Booksellers->search(
62
                    { name     => { -like => "%$supplier%" } },
62
                    { name     => { -like => "%$supplier%" } },
63
                    { order_by => { -asc => 'name' } } );
63
                    { order_by => { -asc => 'name' } } )->as_list;
64
64
65
#build result page
65
#build result page
66
my $loop_suppliers = [];
66
my $loop_suppliers = [];
(-)a/serials/claims.pl (-1 / +1 lines)
Lines 96-102 $template->param( Link Here
96
        supplierid => $supplierid,
96
        supplierid => $supplierid,
97
        claimletter => $claimletter,
97
        claimletter => $claimletter,
98
        additional_fields_for_subscription => $additional_fields,
98
        additional_fields_for_subscription => $additional_fields,
99
        csv_profiles => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'late_issues' }) ],
99
        csv_profiles => [ Koha::CsvProfiles->search({ type => 'sql', used_for => 'late_issues' })->as_list ],
100
        letters => $letters,
100
        letters => $letters,
101
        (uc(C4::Context->preference("marcflavour"))) => 1
101
        (uc(C4::Context->preference("marcflavour"))) => 1
102
        );
102
        );
(-)a/serials/serials-search.pl (-2 / +2 lines)
Lines 76-82 if ( $op and $op eq "close" ) { Link Here
76
}
76
}
77
77
78
78
79
my @additional_fields = Koha::AdditionalFields->search( { tablename => 'subscription', searchable => 1 } );
79
my @additional_fields = Koha::AdditionalFields->search( { tablename => 'subscription', searchable => 1 } )->as_list;
80
my @additional_field_filters;
80
my @additional_field_filters;
81
for my $field ( @additional_fields ) {
81
for my $field ( @additional_fields ) {
82
    my $value = $query->param( 'additional_field_' . $field->id );
82
    my $value = $query->param( 'additional_field_' . $field->id );
Lines 163-169 else Link Here
163
        }
163
        }
164
    }
164
    }
165
165
166
    my @branches = Koha::Libraries->search( {}, { order_by => ['branchcode'] } );
166
    my @branches = Koha::Libraries->search( {}, { order_by => ['branchcode'] } )->as_list;
167
    my @branches_loop;
167
    my @branches_loop;
168
    foreach my $b ( @branches ) {
168
    foreach my $b ( @branches ) {
169
        my $selected = 0;
169
        my $selected = 0;
(-)a/serials/subscription-add.pl (-1 / +1 lines)
Lines 130-136 $template->param( Link Here
130
    locations_loop=>$locations_loop,
130
    locations_loop=>$locations_loop,
131
);
131
);
132
132
133
my @additional_fields = Koha::AdditionalFields->search({ tablename => 'subscription' });
133
my @additional_fields = Koha::AdditionalFields->search({ tablename => 'subscription' })->as_list;
134
my %additional_field_values;
134
my %additional_field_values;
135
if ($subscriptionid) {
135
if ($subscriptionid) {
136
    my $subscription = Koha::Subscriptions->find($subscriptionid);
136
    my $subscription = Koha::Subscriptions->find($subscriptionid);
(-)a/serials/subscription-batchedit.pl (-2 / +2 lines)
Lines 47-53 foreach my $subscriptionid (@subscriptionids) { Link Here
47
    push @subscriptions, $subscription if $subscription;
47
    push @subscriptions, $subscription if $subscription;
48
}
48
}
49
49
50
my @additional_fields = Koha::AdditionalFields->search({tablename => 'subscription'});
50
my @additional_fields = Koha::AdditionalFields->search({tablename => 'subscription'})->as_list;
51
51
52
my $batchedit = $cgi->param('batchedit');
52
my $batchedit = $cgi->param('batchedit');
53
if ($batchedit) {
53
if ($batchedit) {
Lines 98-104 if ($batchedit) { Link Here
98
98
99
$template->param(
99
$template->param(
100
    subscriptions => \@subscriptions,
100
    subscriptions => \@subscriptions,
101
    booksellers => [ Koha::Acquisition::Booksellers->search() ],
101
    booksellers => [ Koha::Acquisition::Booksellers->search->as_list ],
102
    additional_fields => \@additional_fields,
102
    additional_fields => \@additional_fields,
103
    referrer => scalar $cgi->param('referrer'),
103
    referrer => scalar $cgi->param('referrer'),
104
);
104
);
(-)a/serials/subscription-detail.pl (-1 / +1 lines)
Lines 126-132 my $default_bib_view = get_default_view(); Link Here
126
126
127
my $subscription_object = Koha::Subscriptions->find( $subscriptionid );
127
my $subscription_object = Koha::Subscriptions->find( $subscriptionid );
128
$template->param(
128
$template->param(
129
    available_additional_fields => [ Koha::AdditionalFields->search( { tablename => 'subscription' } ) ],
129
    available_additional_fields => [ Koha::AdditionalFields->search( { tablename => 'subscription' } )->as_list ],
130
    additional_field_values => {
130
    additional_field_values => {
131
        map { $_->field->name => $_->value }
131
        map { $_->field->name => $_->value }
132
          $subscription_object->additional_field_values->as_list
132
          $subscription_object->additional_field_values->as_list
(-)a/suggestion/suggestion.pl (-1 / +1 lines)
Lines 456-462 if( $suggestion_ref->{STATUS} ) { Link Here
456
    );
456
    );
457
}
457
}
458
458
459
my @currencies = Koha::Acquisition::Currencies->search;
459
my @currencies = Koha::Acquisition::Currencies->search->as_list;
460
$template->param(
460
$template->param(
461
    currencies   => \@currencies,
461
    currencies   => \@currencies,
462
    suggestion   => $suggestion_ref,
462
    suggestion   => $suggestion_ref,
(-)a/t/db_dependent/AudioAlerts.t (-2 / +2 lines)
Lines 27-33 BEGIN { Link Here
27
my $schema = Koha::Database->new()->schema();
27
my $schema = Koha::Database->new()->schema();
28
$schema->storage->txn_begin();
28
$schema->storage->txn_begin();
29
29
30
map { $_->delete() } Koha::AudioAlerts->search();
30
map { $_->delete() } Koha::AudioAlerts->search->as_list;
31
31
32
## Check the basics
32
## Check the basics
33
# Creating 3 audio alerts named a, b and c
33
# Creating 3 audio alerts named a, b and c
Lines 97-103 is( $c->precedence, 3, "Alert C has a precedence of 3" ); Link Here
97
$a->move('bottom');
97
$a->move('bottom');
98
# Changed precedence order from database insert order
98
# Changed precedence order from database insert order
99
# Insert order was a, b, c. Precedence order is now b, c, a.
99
# Insert order was a, b, c. Precedence order is now b, c, a.
100
( $b, $c, $a ) = Koha::AudioAlerts->search();
100
( $b, $c, $a ) = Koha::AudioAlerts->search->as_list;
101
101
102
is( $b->selector,   'B', 'First sound is indeed B' );
102
is( $b->selector,   'B', 'First sound is indeed B' );
103
is( $b->precedence, 1,   "Alert B has a precedence of 1" );
103
is( $b->precedence, 1,   "Alert B has a precedence of 1" );
(-)a/t/db_dependent/AuthorisedValues.t (-4 / +4 lines)
Lines 111-117 $av3->lib_opac(''); Link Here
111
is( $av3->opac_description, 'display value 3', 'Got correction opac description if lib_opac is *not* set' );
111
is( $av3->opac_description, 'display value 3', 'Got correction opac description if lib_opac is *not* set' );
112
112
113
my @authorised_values =
113
my @authorised_values =
114
  Koha::AuthorisedValues->new()->search( { category => 'av_for_testing' } );
114
  Koha::AuthorisedValues->new()->search( { category => 'av_for_testing' } )->as_list;
115
is( @authorised_values, 3, "Get correct number of values" );
115
is( @authorised_values, 3, "Get correct number of values" );
116
116
117
my $branchcode1 = $builder->build({ source => 'Branch' })->{branchcode};
117
my $branchcode1 = $builder->build({ source => 'Branch' })->{branchcode};
Lines 119-132 my $branchcode2 = $builder->build({ source => 'Branch' })->{branchcode}; Link Here
119
119
120
$av1->add_library_limit( $branchcode1 );
120
$av1->add_library_limit( $branchcode1 );
121
121
122
@authorised_values = Koha::AuthorisedValues->search_with_library_limits( { category => 'av_for_testing' }, {}, $branchcode1 );
122
@authorised_values = Koha::AuthorisedValues->search_with_library_limits( { category => 'av_for_testing' }, {}, $branchcode1 )->as_list;
123
is( @authorised_values, 3, "Search including value with a branch limit ( branch can use the limited value ) gives correct number of results" );
123
is( @authorised_values, 3, "Search including value with a branch limit ( branch can use the limited value ) gives correct number of results" );
124
124
125
@authorised_values = Koha::AuthorisedValues->search_with_library_limits( { category => 'av_for_testing' }, {}, $branchcode2 );
125
@authorised_values = Koha::AuthorisedValues->search_with_library_limits( { category => 'av_for_testing' }, {}, $branchcode2 )->as_list;
126
is( @authorised_values, 2, "Search including value with a branch limit ( branch *cannot* use the limited value ) gives correct number of results" );
126
is( @authorised_values, 2, "Search including value with a branch limit ( branch *cannot* use the limited value ) gives correct number of results" );
127
127
128
$av1->del_library_limit( $branchcode1 );
128
$av1->del_library_limit( $branchcode1 );
129
@authorised_values = Koha::AuthorisedValues->search_with_library_limits( { category => 'av_for_testing' }, {}, $branchcode2 );
129
@authorised_values = Koha::AuthorisedValues->search_with_library_limits( { category => 'av_for_testing' }, {}, $branchcode2 )->as_list;
130
is( @authorised_values, 3, "Branch limitation deleted successfully" );
130
is( @authorised_values, 3, "Branch limitation deleted successfully" );
131
131
132
$av1->add_library_limit( $branchcode1 );
132
$av1->add_library_limit( $branchcode1 );
(-)a/t/db_dependent/Budgets.t (-1 / +1 lines)
Lines 516-522 is ( GetBudgetOrdered( $fund ), '20', "total ordered price is 20"); Link Here
516
516
517
# CloneBudgetPeriod
517
# CloneBudgetPeriod
518
# Let's make sure our timestamp is old
518
# Let's make sure our timestamp is old
519
my @orig_funds = Koha::Acquisition::Funds->search({ budget_period_id => $budget_period_id });
519
my @orig_funds = Koha::Acquisition::Funds->search({ budget_period_id => $budget_period_id })->as_list;
520
foreach my $fund (@orig_funds){
520
foreach my $fund (@orig_funds){
521
    $fund->timestamp('1999-12-31 23:59:59')->store;
521
    $fund->timestamp('1999-12-31 23:59:59')->store;
522
}
522
}
(-)a/t/db_dependent/Koha.t (-2 / +2 lines)
Lines 202-211 subtest 'GetItemTypesCategorized test' => sub{ Link Here
202
    $insertSth->execute('BKghjklo3', 'Yet another type of book', 'Qwertyware', 0);
202
    $insertSth->execute('BKghjklo3', 'Yet another type of book', 'Qwertyware', 0);
203
203
204
    # Azertyware should not exist.
204
    # Azertyware should not exist.
205
    my @itemtypes = Koha::ItemTypes->search({ searchcategory => 'Azertyware' });
205
    my @itemtypes = Koha::ItemTypes->search({ searchcategory => 'Azertyware' })->as_list;
206
    is( @itemtypes, 0, 'Search item types by searchcategory: Invalid category returns nothing');
206
    is( @itemtypes, 0, 'Search item types by searchcategory: Invalid category returns nothing');
207
207
208
    @itemtypes = Koha::ItemTypes->search({ searchcategory => 'Qwertyware' });
208
    @itemtypes = Koha::ItemTypes->search({ searchcategory => 'Qwertyware' })->as_list;
209
    my @got = map { $_->itemtype } @itemtypes;
209
    my @got = map { $_->itemtype } @itemtypes;
210
    my @expected = ( 'BKghjklo2', 'BKghjklo3' );
210
    my @expected = ( 'BKghjklo2', 'BKghjklo3' );
211
    is_deeply(\@got,\@expected,'Search item types by searchcategory: valid category returns itemtypes');
211
    is_deeply(\@got,\@expected,'Search item types by searchcategory: valid category returns itemtypes');
(-)a/t/db_dependent/Koha/Objects/Mixin/AdditionalFields.t (-6 / +6 lines)
Lines 88-94 my @baskets = Koha::Acquisition::Baskets->filter_by_additional_fields([ Link Here
88
        id => $foo->id,
88
        id => $foo->id,
89
        value => 'foo value for basket1',
89
        value => 'foo value for basket1',
90
    },
90
    },
91
]);
91
])->as_list;
92
92
93
is(scalar @baskets, 1, 'search returns only one result');
93
is(scalar @baskets, 1, 'search returns only one result');
94
is($baskets[0]->basketno, $basket1->basketno, 'result is basket1');
94
is($baskets[0]->basketno, $basket1->basketno, 'result is basket1');
Lines 98-104 is($baskets[0]->basketno, $basket1->basketno, 'result is basket1'); Link Here
98
        id => $foo->id,
98
        id => $foo->id,
99
        value => 'foo value for basket2',
99
        value => 'foo value for basket2',
100
    },
100
    },
101
]);
101
])->as_list;
102
102
103
is(scalar @baskets, 1, 'search returns only one result');
103
is(scalar @baskets, 1, 'search returns only one result');
104
is($baskets[0]->basketno, $basket2->basketno, 'result is basket2');
104
is($baskets[0]->basketno, $basket2->basketno, 'result is basket2');
Lines 112-118 is($baskets[0]->basketno, $basket2->basketno, 'result is basket2'); Link Here
112
        id => $bar->id,
112
        id => $bar->id,
113
        value => 'bar value for basket1',
113
        value => 'bar value for basket1',
114
    },
114
    },
115
]);
115
])->as_list;
116
116
117
is(scalar @baskets, 1, 'search returns only one result');
117
is(scalar @baskets, 1, 'search returns only one result');
118
is($baskets[0]->basketno, $basket1->basketno, 'result is basket1');
118
is($baskets[0]->basketno, $basket1->basketno, 'result is basket1');
Lines 126-132 is($baskets[0]->basketno, $basket1->basketno, 'result is basket1'); Link Here
126
        id => $bar->id,
126
        id => $bar->id,
127
        value => 'bar value for basket2',
127
        value => 'bar value for basket2',
128
    },
128
    },
129
]);
129
])->as_list;
130
130
131
is(scalar @baskets, 0, 'search returns no result');
131
is(scalar @baskets, 0, 'search returns no result');
132
132
Lines 135-141 is(scalar @baskets, 0, 'search returns no result'); Link Here
135
        id => $foo->id,
135
        id => $foo->id,
136
        value => 'foo',
136
        value => 'foo',
137
    },
137
    },
138
]);
138
])->as_list;
139
139
140
is(scalar @baskets, 2, 'search returns two results');
140
is(scalar @baskets, 2, 'search returns two results');
141
141
Lines 148-154 is(scalar @baskets, 2, 'search returns two results'); Link Here
148
        id => $foo->id,
148
        id => $foo->id,
149
        value => 'basket1',
149
        value => 'basket1',
150
    },
150
    },
151
]);
151
])->as_list;
152
152
153
is(scalar @baskets, 1, 'search returns only one result');
153
is(scalar @baskets, 1, 'search returns only one result');
154
is($baskets[0]->basketno, $basket1->basketno, 'result is basket1');
154
is($baskets[0]->basketno, $basket1->basketno, 'result is basket1');
(-)a/t/db_dependent/LibraryGroups.t (-4 / +4 lines)
Lines 36-42 my $library7 = $builder->build( { source => 'Branch' } ); Link Here
36
my $root_group =
36
my $root_group =
37
  Koha::Library::Group->new( { title => "Test root group" } )->store();
37
  Koha::Library::Group->new( { title => "Test root group" } )->store();
38
38
39
my @root_groups = Koha::Library::Groups->get_root_groups();
39
my @root_groups = Koha::Library::Groups->get_root_groups->as_list;
40
my $in_list = any { $_->id eq $root_group->id } @root_groups;
40
my $in_list = any { $_->id eq $root_group->id } @root_groups;
41
ok( $in_list, 'New root group is in the list returned by the get_root_groups method');
41
ok( $in_list, 'New root group is in the list returned by the get_root_groups method');
42
42
Lines 66-72 my $library = $groupA_library1->library(); Link Here
66
is( ref( $library ), 'Koha::Library', 'Method library returns a Koha::Library object' );
66
is( ref( $library ), 'Koha::Library', 'Method library returns a Koha::Library object' );
67
is( $library->id, $groupA_library1->branchcode, 'Branchcode for fetched library matches' );
67
is( $library->id, $groupA_library1->branchcode, 'Branchcode for fetched library matches' );
68
68
69
my @libraries_not_direct_children = $groupA->libraries_not_direct_children();
69
my @libraries_not_direct_children = $groupA->libraries_not_direct_children->as_list;
70
$in_list = any { $_->id eq $groupA_library1->branchcode } @libraries_not_direct_children;
70
$in_list = any { $_->id eq $groupA_library1->branchcode } @libraries_not_direct_children;
71
ok( !$in_list, 'Method libraries_not_direct_children returns all libraries not direct descendants of group, library 1 is not in the list');
71
ok( !$in_list, 'Method libraries_not_direct_children returns all libraries not direct descendants of group, library 1 is not in the list');
72
$in_list = any { $_->id eq $groupA1_library2->branchcode } @libraries_not_direct_children;
72
$in_list = any { $_->id eq $groupA1_library2->branchcode } @libraries_not_direct_children;
Lines 119-127 subtest 'Koha::Library::Group->get_search_groups' => sub { Link Here
119
    $groupA = Koha::Library::Groups->find( $groupA->id );
119
    $groupA = Koha::Library::Groups->find( $groupA->id );
120
    $groupB = Koha::Library::Groups->find( $groupB->id );
120
    $groupB = Koha::Library::Groups->find( $groupB->id );
121
121
122
    my @groups = Koha::Library::Groups->get_search_groups({ interface => 'opac' });
122
    my @groups = Koha::Library::Groups->get_search_groups({ interface => 'opac' })->as_list;
123
    is_deeply( $groups[0]->unblessed, $groupA->unblessed, 'Get search groups opac should return enabled group' );
123
    is_deeply( $groups[0]->unblessed, $groupA->unblessed, 'Get search groups opac should return enabled group' );
124
    @groups = Koha::Library::Groups->get_search_groups({ interface => 'staff' });
124
    @groups = Koha::Library::Groups->get_search_groups({ interface => 'staff' })->as_list;
125
    is_deeply( $groups[0]->unblessed, $groupB->unblessed, 'Get search groups staff should return enabled group' );
125
    is_deeply( $groups[0]->unblessed, $groupB->unblessed, 'Get search groups staff should return enabled group' );
126
};
126
};
127
127
(-)a/t/db_dependent/Overdues.t (-1 / +1 lines)
Lines 91-97 $dbh->do(q| Link Here
91
        ( '', '', 1, 'LETTER_CODE1', 1, 5, 'LETTER_CODE2', 1, 10, 'LETTER_CODE3', 1 )
91
        ( '', '', 1, 'LETTER_CODE1', 1, 5, 'LETTER_CODE2', 1, 10, 'LETTER_CODE3', 1 )
92
|);
92
|);
93
93
94
my @branchcodes = map { $_->branchcode } Koha::Libraries->search;
94
my @branchcodes = map { $_->branchcode } Koha::Libraries->search->as_list;
95
95
96
my @overdue_branches = C4::Overdues::GetBranchcodesWithOverdueRules();
96
my @overdue_branches = C4::Overdues::GetBranchcodesWithOverdueRules();
97
is_deeply( [ sort @overdue_branches ], [ sort @branchcodes ], 'If a default rule exists, all branches should be returned' );
97
is_deeply( [ sort @overdue_branches ], [ sort @branchcodes ], 'If a default rule exists, all branches should be returned' );
(-)a/t/db_dependent/Patrons.t (-1 / +1 lines)
Lines 81-87 $b3_new->set({ firstname => 'Some first name for Test 3' })->store(); Link Here
81
$b3_new = Koha::Patrons->find( $b3->borrowernumber() );
81
$b3_new = Koha::Patrons->find( $b3->borrowernumber() );
82
is( t::lib::Dates::compare( $b3_new->updated_on, $now), 0, "borrowers.updated_on should have been set to now on updating" );
82
is( t::lib::Dates::compare( $b3_new->updated_on, $now), 0, "borrowers.updated_on should have been set to now on updating" );
83
83
84
my @patrons = Koha::Patrons->search( { branchcode => $branchcode } );
84
my @patrons = Koha::Patrons->search( { branchcode => $branchcode } )->as_list;
85
is( @patrons, 3, "Found 3 patrons with Search" );
85
is( @patrons, 3, "Found 3 patrons with Search" );
86
86
87
my $unexistent = Koha::Patrons->find( '1234567890' );
87
my $unexistent = Koha::Patrons->find( '1234567890' );
(-)a/t/db_dependent/Reserves.t (-1 / +1 lines)
Lines 272-278 is($holds->next->priority, 0, 'Item is correctly waiting'); Link Here
272
is($holds->next->priority, 1, 'Item is correctly priority 1');
272
is($holds->next->priority, 1, 'Item is correctly priority 1');
273
is($holds->next->priority, 2, 'Item is correctly priority 2');
273
is($holds->next->priority, 2, 'Item is correctly priority 2');
274
274
275
my @reserves = Koha::Holds->search({ borrowernumber => $requesters{$branch_3} })->waiting();
275
my @reserves = Koha::Holds->search({ borrowernumber => $requesters{$branch_3} })->waiting->as_list;
276
is( @reserves, 1, 'GetWaiting got only the waiting reserve' );
276
is( @reserves, 1, 'GetWaiting got only the waiting reserve' );
277
is( $reserves[0]->borrowernumber(), $requesters{$branch_3}, 'GetWaiting got the reserve for the correct borrower' );
277
is( $reserves[0]->borrowernumber(), $requesters{$branch_3}, 'GetWaiting got the reserve for the correct borrower' );
278
278
(-)a/t/db_dependent/Upload.t (-3 / +3 lines)
Lines 217-223 subtest 'Test delete_missing' => sub { Link Here
217
subtest 'Call search_term with[out] private flag' => sub {
217
subtest 'Call search_term with[out] private flag' => sub {
218
    plan tests => 3;
218
    plan tests => 3;
219
219
220
    my @recs = Koha::UploadedFiles->search_term({ term => 'file' });
220
    my @recs = Koha::UploadedFiles->search_term({ term => 'file' })->as_list;
221
    is( @recs, 1, 'Returns only one public result' );
221
    is( @recs, 1, 'Returns only one public result' );
222
    is( $recs[0]->filename, 'file3', 'Should be file3' );
222
    is( $recs[0]->filename, 'file3', 'Should be file3' );
223
223
Lines 289-298 subtest 'Testing delete_temporary' => sub { Link Here
289
    my $today = dt_from_string;
289
    my $today = dt_from_string;
290
    $today->subtract( minutes => 2 ); # should be enough :)
290
    $today->subtract( minutes => 2 ); # should be enough :)
291
    my $dt = $today->clone->subtract( days => 1 );
291
    my $dt = $today->clone->subtract( days => 1 );
292
    foreach my $rec ( Koha::UploadedFiles->search({ permanent => 1 }) ) {
292
    foreach my $rec ( Koha::UploadedFiles->search({ permanent => 1 })->as_list ) {
293
        $rec->dtcreated($dt)->store;
293
        $rec->dtcreated($dt)->store;
294
    }
294
    }
295
    my @recs = Koha::UploadedFiles->search({ permanent => 0 });
295
    my @recs = Koha::UploadedFiles->search({ permanent => 0 })->as_list;
296
    $dt = $today->clone->subtract( days => 3 );
296
    $dt = $today->clone->subtract( days => 3 );
297
    $recs[0]->dtcreated($dt)->store;
297
    $recs[0]->dtcreated($dt)->store;
298
    $dt = $today->clone->subtract( days => 5 );
298
    $dt = $today->clone->subtract( days => 5 );
(-)a/tools/additional-contents.pl (-1 / +1 lines)
Lines 69-75 if ( $op eq 'add_form' ) { Link Here
69
                    location   => $additional_content->location,
69
                    location   => $additional_content->location,
70
                    branchcode => $additional_content->branchcode,
70
                    branchcode => $additional_content->branchcode,
71
                }
71
                }
72
            )
72
            )->as_list
73
        };
73
        };
74
        $category = $additional_content->category;
74
        $category = $additional_content->category;
75
    }
75
    }
(-)a/tools/batch_delete_records.pl (-1 / +1 lines)
Lines 54-60 if ( $op eq 'form' ) { Link Here
54
    # Display the form
54
    # Display the form
55
    $template->param(
55
    $template->param(
56
        op => 'form',
56
        op => 'form',
57
        lists => scalar Koha::Virtualshelves->search(
57
        lists => Koha::Virtualshelves->search(
58
            [
58
            [
59
                { public => 0, owner => $loggedinuser },
59
                { public => 0, owner => $loggedinuser },
60
                { public => 1 }
60
                { public => 1 }
(-)a/tools/batch_record_modification.pl (-1 / +1 lines)
Lines 82-88 if ( $op eq 'form' ) { Link Here
82
    # Display the form
82
    # Display the form
83
    $template->param(
83
    $template->param(
84
        view => 'form',
84
        view => 'form',
85
        lists => scalar Koha::Virtualshelves->search(
85
        lists => Koha::Virtualshelves->search(
86
            [
86
            [
87
                { public => 0, owner => $loggedinuser },
87
                { public => 0, owner => $loggedinuser },
88
                { public => 1 }
88
                { public => 1 }
(-)a/tools/export.pl (-1 / +1 lines)
Lines 301-307 else { Link Here
301
        itemtypes                => $itemtypes,
301
        itemtypes                => $itemtypes,
302
        authority_types          => $authority_types,
302
        authority_types          => $authority_types,
303
        export_remove_fields     => C4::Context->preference("ExportRemoveFields"),
303
        export_remove_fields     => C4::Context->preference("ExportRemoveFields"),
304
        csv_profiles             => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
304
        csv_profiles             => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' })->as_list ],
305
        messages                 => \@messages,
305
        messages                 => \@messages,
306
    );
306
    );
307
307
(-)a/tools/import_borrowers.pl (-1 / +1 lines)
Lines 76-82 my ( $template, $loggedinuser, $cookie ) = get_template_and_user( Link Here
76
);
76
);
77
77
78
# get the patron categories and pass them to the template
78
# get the patron categories and pass them to the template
79
my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']});
79
my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']})->as_list;
80
$template->param( categories => \@patron_categories );
80
$template->param( categories => \@patron_categories );
81
my $columns = C4::Templates::GetColumnDefs( $input )->{borrowers};
81
my $columns = C4::Templates::GetColumnDefs( $input )->{borrowers};
82
$columns = [ grep { $_->{field} ne 'borrowernumber' ? $_ : () } @$columns ];
82
$columns = [ grep { $_->{field} ne 'borrowernumber' ? $_ : () } @$columns ];
(-)a/tools/inventory.pl (-2 / +2 lines)
Lines 122-131 for my $authvfield (@$statuses) { Link Here
122
# the full set.
122
# the full set.
123
@notforloans = @{$staton->{'items.notforloan'}} if defined $staton->{'items.notforloan'} and scalar @{$staton->{'items.notforloan'}} > 0;
123
@notforloans = @{$staton->{'items.notforloan'}} if defined $staton->{'items.notforloan'} and scalar @{$staton->{'items.notforloan'}} > 0;
124
124
125
my @class_sources = Koha::ClassSources->search({ used => 1 });
125
my @class_sources = Koha::ClassSources->search({ used => 1 })->as_list;
126
my $pref_class = C4::Context->preference("DefaultClassificationSource");
126
my $pref_class = C4::Context->preference("DefaultClassificationSource");
127
127
128
my @itemtypes = Koha::ItemTypes->search;
128
my @itemtypes = Koha::ItemTypes->search->as_list;
129
my @selected_itemtypes;
129
my @selected_itemtypes;
130
foreach my $itemtype ( @itemtypes ) {
130
foreach my $itemtype ( @itemtypes ) {
131
    if ( defined $input->param('itemtype-' . $itemtype->itemtype) ) {
131
    if ( defined $input->param('itemtype-' . $itemtype->itemtype) ) {
(-)a/tools/modborrowers.pl (-1 / +1 lines)
Lines 130-136 if ( $op eq 'show' ) { Link Here
130
    my @patron_attributes_codes;
130
    my @patron_attributes_codes;
131
    my $library_id = C4::Context->userenv ? C4::Context->userenv->{'branch'} : undef;
131
    my $library_id = C4::Context->userenv ? C4::Context->userenv->{'branch'} : undef;
132
    my $patron_attribute_types = Koha::Patron::Attribute::Types->search_with_library_limits({}, {}, $library_id);
132
    my $patron_attribute_types = Koha::Patron::Attribute::Types->search_with_library_limits({}, {}, $library_id);
133
    my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']});
133
    my @patron_categories = Koha::Patron::Categories->search_with_library_limits({}, {order_by => ['description']})->as_list;
134
    while ( my $attr_type = $patron_attribute_types->next ) {
134
    while ( my $attr_type = $patron_attribute_types->next ) {
135
        # TODO Repeatable attributes are not correctly managed and can cause data lost.
135
        # TODO Repeatable attributes are not correctly managed and can cause data lost.
136
        # This should be implemented.
136
        # This should be implemented.
(-)a/tools/overduerules.pl (-1 / +1 lines)
Lines 32-38 use Koha::Patron::Categories; Link Here
32
our $input = CGI->new;
32
our $input = CGI->new;
33
my $dbh = C4::Context->dbh;
33
my $dbh = C4::Context->dbh;
34
34
35
my @patron_categories = Koha::Patron::Categories->search( { overduenoticerequired => { '>' => 0 } } );
35
my @patron_categories = Koha::Patron::Categories->search( { overduenoticerequired => { '>' => 0 } } )->as_list;
36
my @category_codes  = map { $_->categorycode } @patron_categories;
36
my @category_codes  = map { $_->categorycode } @patron_categories;
37
our @rule_params     = qw(delay letter debarred);
37
our @rule_params     = qw(delay letter debarred);
38
38
(-)a/tools/viewlog.pl (-1 / +1 lines)
Lines 139-145 if ($do_it) { Link Here
139
        $search_params{object} = $object if $object;
139
        $search_params{object} = $object if $object;
140
    }
140
    }
141
141
142
    my @logs = Koha::ActionLogs->search(\%search_params);
142
    my @logs = Koha::ActionLogs->search(\%search_params)->as_list;
143
143
144
    my @data;
144
    my @data;
145
    foreach my $log (@logs) {
145
    foreach my $log (@logs) {
(-)a/virtualshelves/downloadshelf.pl (-1 / +1 lines)
Lines 100-106 if ($shelfid && $format) { Link Here
100
    }
100
    }
101
}
101
}
102
else {
102
else {
103
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ]);
103
    $template->param(csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' })->as_list ]);
104
    $template->param(shelfid => $shelfid); 
104
    $template->param(shelfid => $shelfid); 
105
}
105
}
106
$template->param( messages => \@messages );
106
$template->param( messages => \@messages );
(-)a/virtualshelves/shelves.pl (-2 / +1 lines)
Lines 358-364 $template->param( Link Here
358
    messages => \@messages,
358
    messages => \@messages,
359
    public   => $public,
359
    public   => $public,
360
    print    => scalar $query->param('print') || 0,
360
    print    => scalar $query->param('print') || 0,
361
    csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' }) ],
361
    csv_profiles => [ Koha::CsvProfiles->search({ type => 'marc', used_for => 'export_records' })->as_list ],
362
);
362
);
363
363
364
output_html_with_http_headers $query, $cookie, $template->output;
364
output_html_with_http_headers $query, $cookie, $template->output;
365
- 

Return to bug 29844