Lines 414-420
sub ModCourseInstructors {
Link Here
|
414 |
|
414 |
|
415 |
=head2 GetCourseItem { |
415 |
=head2 GetCourseItem { |
416 |
|
416 |
|
417 |
$course_item = GetCourseItem( itemnumber => $itemnumber [, ci_id => $ci_id ); |
417 |
Given one of biblionumber, itenumber, or ci_id, returns hashref of the course_items values |
|
|
418 |
|
419 |
$course_item = GetCourseItem( itemnumber => $itemnumber [, ci_id => $ci_id ] ); |
420 |
$course_item = GetCourseItem( biblionumber => $biblionumber [, ci_id => $ci_id ]); |
421 |
$course_item = GetCourseItem( ci_id => $ci_id ); |
418 |
|
422 |
|
419 |
=cut |
423 |
=cut |
420 |
|
424 |
|
Lines 426-432
sub GetCourseItem {
Link Here
|
426 |
my $itemnumber = $params{'itemnumber'}; |
430 |
my $itemnumber = $params{'itemnumber'}; |
427 |
my $biblionumber = $params{'biblionumber'}; |
431 |
my $biblionumber = $params{'biblionumber'}; |
428 |
|
432 |
|
429 |
return unless ( $itemnumber || $biblionumber || $ci_id ); |
433 |
return unless ( $itemnumber xor $biblionumber xor $ci_id ); |
430 |
|
434 |
|
431 |
my ( $field, $value ); |
435 |
my ( $field, $value ); |
432 |
if ( $itemnumber ) { |
436 |
if ( $itemnumber ) { |
Lines 463-469
sub GetCourseItem {
Link Here
|
463 |
|
467 |
|
464 |
ModCourseItem( %params ); |
468 |
ModCourseItem( %params ); |
465 |
|
469 |
|
466 |
Creates or modifies an existing course item. |
470 |
Creates or modifies an existing course item. Must be passed either an itemnumber or biblionumber parameter |
467 |
|
471 |
|
468 |
=cut |
472 |
=cut |
469 |
|
473 |
|
Lines 474-480
sub ModCourseItem {
Link Here
|
474 |
my $itemnumber = $params{'itemnumber'}; |
478 |
my $itemnumber = $params{'itemnumber'}; |
475 |
my $biblionumber = $params{'biblionumber'}; |
479 |
my $biblionumber = $params{'biblionumber'}; |
476 |
|
480 |
|
477 |
return unless ($itemnumber || $biblionumber); |
481 |
return unless ($itemnumber xor $biblionumber); |
478 |
|
482 |
|
479 |
my $course_item = $itemnumber ? GetCourseItem( itemnumber => $itemnumber ) : GetCourseItem( biblionumber => $biblionumber ); |
483 |
my $course_item = $itemnumber ? GetCourseItem( itemnumber => $itemnumber ) : GetCourseItem( biblionumber => $biblionumber ); |
480 |
|
484 |
|
Lines 509-514
sub ModCourseItem {
Link Here
|
509 |
|
513 |
|
510 |
sub _AddCourseItem { |
514 |
sub _AddCourseItem { |
511 |
my (%params) = @_; |
515 |
my (%params) = @_; |
|
|
516 |
warn "adding"; |
512 |
warn identify_myself(%params) if $DEBUG; |
517 |
warn identify_myself(%params) if $DEBUG; |
513 |
|
518 |
|
514 |
$params{homebranch} ||= undef; # Can't be empty string, FK constraint |
519 |
$params{homebranch} ||= undef; # Can't be empty string, FK constraint |
Lines 883-890
sub GetCourseReserves {
Link Here
|
883 |
|
888 |
|
884 |
if ($include_items) { |
889 |
if ($include_items) { |
885 |
foreach my $cr (@$course_reserves) { |
890 |
foreach my $cr (@$course_reserves) { |
886 |
my $item = Koha::Items->find( $cr->{itemnumber} ); |
891 |
my $item = Koha::Items->find( $cr->{itemnumber}, { prefetch => ['biblio','biblioitem'] }); |
887 |
my $biblio = $cr->{itemnumber} ? $item->biblio : Koha::Biblios->find( $cr->{biblionumber} ); |
892 |
my $biblio = $cr->{itemnumber} ? $item->biblio : Koha::Biblios->find( $cr->{biblionumber}, { prefetch => ['biblioitem'] }); |
888 |
my $biblioitem = $biblio->biblioitem; |
893 |
my $biblioitem = $biblio->biblioitem; |
889 |
$cr->{'course_item'} = GetCourseItem( ci_id => $cr->{'ci_id'} ); |
894 |
$cr->{'course_item'} = GetCourseItem( ci_id => $cr->{'ci_id'} ); |
890 |
$cr->{'item'} = $item; |
895 |
$cr->{'item'} = $item; |
Lines 946-952
sub DelCourseReserve {
Link Here
|
946 |
my $arrayref = GetItemCourseReservesInfo( itemnumber => $itemnumber ); |
951 |
my $arrayref = GetItemCourseReservesInfo( itemnumber => $itemnumber ); |
947 |
my $arrayref = GetItemCourseReservesInfo( biblionumber => $biblionumber ); |
952 |
my $arrayref = GetItemCourseReservesInfo( biblionumber => $biblionumber ); |
948 |
|
953 |
|
949 |
For a given item, returns an arrayref of reserves hashrefs, |
954 |
For a given itemnumber or biblionumber, returns an arrayref of reserves hashrefs, |
950 |
with a course hashref under the key 'course' |
955 |
with a course hashref under the key 'course' |
951 |
|
956 |
|
952 |
=cut |
957 |
=cut |
Lines 958-964
sub GetItemCourseReservesInfo {
Link Here
|
958 |
my $itemnumber = $params{'itemnumber'}; |
963 |
my $itemnumber = $params{'itemnumber'}; |
959 |
my $biblionumber = $params{'biblionumber'}; |
964 |
my $biblionumber = $params{'biblionumber'}; |
960 |
|
965 |
|
961 |
return unless ($itemnumber || $biblionumber); |
966 |
return unless ($itemnumber xor $biblionumber); |
962 |
|
967 |
|
963 |
my $course_item = $itemnumber ? GetCourseItem( itemnumber => $itemnumber ) : GetCourseItem( biblionumber => $biblionumber ); |
968 |
my $course_item = $itemnumber ? GetCourseItem( itemnumber => $itemnumber ) : GetCourseItem( biblionumber => $biblionumber ); |
964 |
|
969 |
|
Lines 998-1006
sub CountCourseReservesForItem {
Link Here
|
998 |
my $enabled = $params{'enabled'}; |
1003 |
my $enabled = $params{'enabled'}; |
999 |
my $biblionumber = $params{'biblionumber'}; |
1004 |
my $biblionumber = $params{'biblionumber'}; |
1000 |
|
1005 |
|
1001 |
return unless ( $ci_id || ( $itemnumber || $biblionumber ) ); |
1006 |
return unless ( $ci_id xor $itemnumber xor $biblionumber ); |
1002 |
|
1007 |
|
1003 |
my $course_item = $itemnumber ? GetCourseItem( ci_id => $ci_id, itemnumber => $itemnumber ) : GetCourseItem( ci_id => $ci_id, biblionumber => $biblionumber ); |
1008 |
my $course_item = GetCourseItem( ci_id => $ci_id ) || GetCourseItem( itemnumber => $itemnumber ) || GetCourseItem( biblionumber => $biblionumber ); |
1004 |
|
1009 |
|
1005 |
my @params = ( $course_item->{'ci_id'} ); |
1010 |
my @params = ( $course_item->{'ci_id'} ); |
1006 |
push( @params, $enabled ) if ($enabled); |
1011 |
push( @params, $enabled ) if ($enabled); |