|
Lines 222-227
sub filter_by_bookable {
Link Here
|
| 222 |
); |
222 |
); |
| 223 |
} |
223 |
} |
| 224 |
|
224 |
|
|
|
225 |
=head3 filter_by_checked_out |
| 226 |
|
| 227 |
my $checked_out_items = $items->filter_by_checked_out; |
| 228 |
|
| 229 |
Returns a new resultset, containing only those items that are currently checked out. |
| 230 |
|
| 231 |
=cut |
| 232 |
|
| 225 |
sub filter_by_checked_out { |
233 |
sub filter_by_checked_out { |
| 226 |
my ( $self, $params ) = @_; |
234 |
my ( $self, $params ) = @_; |
| 227 |
|
235 |
|
|
Lines 237-242
sub filter_by_checked_out {
Link Here
|
| 237 |
return $self->search( { 'me.itemnumber' => { '-in' => $checkouts } } ); |
245 |
return $self->search( { 'me.itemnumber' => { '-in' => $checkouts } } ); |
| 238 |
} |
246 |
} |
| 239 |
|
247 |
|
|
|
248 |
=head3 filter_by_in_transit |
| 249 |
|
| 250 |
my $in_tranist_items = $items->filter_by_in_transit; |
| 251 |
|
| 252 |
Returns a new resultset, containing only those items that are currently in transit. |
| 253 |
|
| 254 |
=cut |
| 255 |
|
| 240 |
sub filter_by_in_transit { |
256 |
sub filter_by_in_transit { |
| 241 |
my ( $self, $params ) = @_; |
257 |
my ( $self, $params ) = @_; |
| 242 |
|
258 |
|
|
Lines 252-260
sub filter_by_in_transit {
Link Here
|
| 252 |
return $self->search( { 'me.itemnumber' => { '-in' => $transfers } } ); |
268 |
return $self->search( { 'me.itemnumber' => { '-in' => $transfers } } ); |
| 253 |
} |
269 |
} |
| 254 |
|
270 |
|
| 255 |
sub filter_by_for_loan { |
271 |
=head3 filter_by_has_holds |
| 256 |
|
272 |
|
| 257 |
} |
273 |
my $has_hold_items = $items->filter_by_has_holds; |
|
|
274 |
|
| 275 |
Returns a new resultset, containing only those items that currently have holds. |
| 276 |
|
| 277 |
=cut |
| 258 |
|
278 |
|
| 259 |
sub filter_by_has_holds { |
279 |
sub filter_by_has_holds { |
| 260 |
my ( $self, $params ) = @_; |
280 |
my ( $self, $params ) = @_; |
|
Lines 271-276
sub filter_by_has_holds {
Link Here
|
| 271 |
return $self->search( { 'me.itemnumber' => { '-in' => $holds } } ); |
291 |
return $self->search( { 'me.itemnumber' => { '-in' => $holds } } ); |
| 272 |
} |
292 |
} |
| 273 |
|
293 |
|
|
|
294 |
=head3 filter_by_has_recalls |
| 295 |
|
| 296 |
my $has_recalls_items = $items->filter_by_has_recalls; |
| 297 |
|
| 298 |
Returns a new resultset, containing only those items that currently have recalls. |
| 299 |
|
| 300 |
=cut |
| 301 |
|
| 274 |
sub filter_by_has_recalls { |
302 |
sub filter_by_has_recalls { |
| 275 |
my ( $self, $params ) = @_; |
303 |
my ( $self, $params ) = @_; |
| 276 |
|
304 |
|
|
Lines 286-291
sub filter_by_has_recalls {
Link Here
|
| 286 |
return $self->search( { 'me.itemnumber' => { '-in' => $recalls } } ); |
314 |
return $self->search( { 'me.itemnumber' => { '-in' => $recalls } } ); |
| 287 |
} |
315 |
} |
| 288 |
|
316 |
|
|
|
317 |
=head3 filter_by_available |
| 318 |
|
| 319 |
my $available_items = $items->filter_by_available; |
| 320 |
|
| 321 |
Returns a new resultset, containing only those items that are currently available. |
| 322 |
|
| 323 |
=cut |
| 324 |
|
| 289 |
sub filter_by_available { |
325 |
sub filter_by_available { |
| 290 |
my ($self) = @_; |
326 |
my ($self) = @_; |
| 291 |
|
327 |
|
|
Lines 575-580
sub apply_regex {
Link Here
|
| 575 |
return $value; |
611 |
return $value; |
| 576 |
} |
612 |
} |
| 577 |
|
613 |
|
|
|
614 |
|
| 615 |
=head3 search |
| 616 |
|
| 617 |
my $search_result = $object->search( $params, $attributes ); |
| 618 |
|
| 619 |
Filters items based on the specified status. |
| 620 |
|
| 621 |
=cut |
| 622 |
|
| 578 |
sub search { |
623 |
sub search { |
| 579 |
my ( $self, $params, $attributes ) = @_; |
624 |
my ( $self, $params, $attributes ) = @_; |
| 580 |
my $status = ( $params && ref($params) eq 'HASH' ) ? delete $params->{_status} : undef; |
625 |
my $status = ( $params && ref($params) eq 'HASH' ) ? delete $params->{_status} : undef; |
| 581 |
- |
|
|