|
Lines 103-108
BEGIN {
Link Here
|
| 103 |
&ModBiblio |
103 |
&ModBiblio |
| 104 |
&ModBiblioframework |
104 |
&ModBiblioframework |
| 105 |
&ModZebra |
105 |
&ModZebra |
|
|
106 |
&UpdateTotalIssues |
| 106 |
); |
107 |
); |
| 107 |
|
108 |
|
| 108 |
# To delete something |
109 |
# To delete something |
|
Lines 3780-3785
sub prepare_host_field {
Link Here
|
| 3780 |
return; |
3781 |
return; |
| 3781 |
} |
3782 |
} |
| 3782 |
|
3783 |
|
|
|
3784 |
|
| 3785 |
=head2 UpdateTotalIssues |
| 3786 |
|
| 3787 |
UpdateTotalIssues($biblionumber, $increase, [$value]) |
| 3788 |
|
| 3789 |
Update the total issue count for a particular bib record. |
| 3790 |
|
| 3791 |
=over 4 |
| 3792 |
|
| 3793 |
=item C<$biblionumber> is the biblionumber of the bib to update |
| 3794 |
|
| 3795 |
=item C<$increase> is the amount to increase (or decrease) the total issues count by |
| 3796 |
|
| 3797 |
=item C<$value> is the absolute value that total issues count should be set to. If provided, C<$increase> is ignored. |
| 3798 |
|
| 3799 |
=back |
| 3800 |
|
| 3801 |
=cut |
| 3802 |
|
| 3803 |
sub UpdateTotalIssues { |
| 3804 |
my ($biblionumber, $increase, $value) = @_; |
| 3805 |
my $totalissues; |
| 3806 |
|
| 3807 |
my $data = GetBiblioData($biblionumber); |
| 3808 |
|
| 3809 |
if (defined $value) { |
| 3810 |
$totalissues = $value; |
| 3811 |
} else { |
| 3812 |
$totalissues = $data->{'totalissues'} + $increase; |
| 3813 |
} |
| 3814 |
my ($totalissuestag, $totalissuessubfield) = GetMarcFromKohaField('biblioitems.totalissues', $data->{'frameworkcode'}); |
| 3815 |
|
| 3816 |
my $record = GetMarcBiblio($biblionumber); |
| 3817 |
|
| 3818 |
my $field = $record->field($totalissuestag); |
| 3819 |
if (defined $field) { |
| 3820 |
$field->update( $totalissuessubfield => $totalissues ); |
| 3821 |
} else { |
| 3822 |
$field = MARC::Field->new($totalissuestag, '0', '0', |
| 3823 |
$totalissuessubfield => $totalissues); |
| 3824 |
$record->insert_grouped_field($field); |
| 3825 |
} |
| 3826 |
|
| 3827 |
ModBiblio($record, $biblionumber, $data->{'frameworkcode'}); |
| 3828 |
return; |
| 3829 |
} |
| 3830 |
|
| 3783 |
1; |
3831 |
1; |
| 3784 |
|
3832 |
|
| 3785 |
|
3833 |
|