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

(-)a/cataloguing/additem.pl (-12 / +17 lines)
Lines 107-113 sub _increment_barcode { Link Here
107
107
108
108
109
sub generate_subfield_form {
109
sub generate_subfield_form {
110
        my ($tag, $subfieldtag, $value, $tagslib,$subfieldlib, $branches, $biblionumber, $temp, $loop_data, $i, $restrictededition) = @_;
110
        my ($tag, $subfieldtag, $value, $tagslib,$subfieldlib, $branches, $biblionumber, $temp, $loop_data, $i, $restrictededition, $item) = @_;
111
  
111
  
112
        my $frameworkcode = &GetFrameworkCode($biblionumber);
112
        my $frameworkcode = &GetFrameworkCode($biblionumber);
113
113
Lines 171-183 sub generate_subfield_form { Link Here
171
            my %authorised_lib;
171
            my %authorised_lib;
172
            # builds list, depending on authorised value...
172
            # builds list, depending on authorised value...
173
            if ( $subfieldlib->{authorised_value} eq "LOST" ) {
173
            if ( $subfieldlib->{authorised_value} eq "LOST" ) {
174
                  $subfield_data{IS_LOST_AV} = 1;
174
                my $ClaimReturnedLostValue = C4::Context->preference('ClaimReturnedLostValue');
175
                  push @authorised_values, qq{};
175
                my $item_is_return_claim = $ClaimReturnedLostValue && $item && $item->itemlost && $ClaimReturnedLostValue eq $item->itemlost;
176
                  my $av = GetAuthorisedValues( $subfieldlib->{authorised_value} );
176
                $subfield_data{IS_RETURN_CLAIM} = $item_is_return_claim;
177
                  for my $r ( @$av ) {
177
178
                      push @authorised_values, $r->{authorised_value};
178
                $subfield_data{IS_LOST_AV} = 1;
179
                      $authorised_lib{$r->{authorised_value}} = $r->{lib};
179
180
                  }
180
                push @authorised_values, qq{};
181
                my $av = GetAuthorisedValues( $subfieldlib->{authorised_value} );
182
                for my $r ( @$av ) {
183
                    push @authorised_values, $r->{authorised_value};
184
                    $authorised_lib{$r->{authorised_value}} = $r->{lib};
185
                }
181
            }
186
            }
182
            elsif ( $subfieldlib->{authorised_value} eq "branches" ) {
187
            elsif ( $subfieldlib->{authorised_value} eq "branches" ) {
183
                foreach my $thisbranch (@$branches) {
188
                foreach my $thisbranch (@$branches) {
Lines 918-923 for my $library ( @$libraries ) { Link Here
918
    $library->{selected} = 1 if $library->{branchcode} eq $branch
923
    $library->{selected} = 1 if $library->{branchcode} eq $branch
919
}
924
}
920
925
926
my $item = Koha::Items->find($itemnumber);
927
921
# We generate form, from actuel record
928
# We generate form, from actuel record
922
@fields = ();
929
@fields = ();
923
if($itemrecord){
930
if($itemrecord){
Lines 931-937 if($itemrecord){ Link Here
931
938
932
            next if ($tagslib->{$tag}->{$subfieldtag}->{'tab'} ne "10");
939
            next if ($tagslib->{$tag}->{$subfieldtag}->{'tab'} ne "10");
933
940
934
            my $subfield_data = generate_subfield_form($tag, $subfieldtag, $value, $tagslib, $subfieldlib, $libraries, $biblionumber, $temp, \@loop_data, $i, $restrictededition);
941
            my $subfield_data = generate_subfield_form($tag, $subfieldtag, $value, $tagslib, $subfieldlib, $libraries, $biblionumber, $temp, \@loop_data, $i, $restrictededition, $item);
935
            push @fields, "$tag$subfieldtag";
942
            push @fields, "$tag$subfieldtag";
936
            push (@loop_data, $subfield_data);
943
            push (@loop_data, $subfield_data);
937
            $i++;
944
            $i++;
Lines 955-961 foreach my $tag ( keys %{$tagslib}){ Link Here
955
        my @values = (undef);
962
        my @values = (undef);
956
        @values = $itemrecord->field($tag)->subfield($subtag) if ($itemrecord && defined($itemrecord->field($tag)) && defined($itemrecord->field($tag)->subfield($subtag)));
963
        @values = $itemrecord->field($tag)->subfield($subtag) if ($itemrecord && defined($itemrecord->field($tag)) && defined($itemrecord->field($tag)->subfield($subtag)));
957
        for my $value (@values){
964
        for my $value (@values){
958
            my $subfield_data = generate_subfield_form($tag, $subtag, $value, $tagslib, $tagslib->{$tag}->{$subtag}, $libraries, $biblionumber, $temp, \@loop_data, $i, $restrictededition);
965
            my $subfield_data = generate_subfield_form($tag, $subtag, $value, $tagslib, $tagslib->{$tag}->{$subtag}, $libraries, $biblionumber, $temp, \@loop_data, $i, $restrictededition, $item);
959
            push (@loop_data, $subfield_data);
966
            push (@loop_data, $subfield_data);
960
            $i++;
967
            $i++;
961
        }
968
        }
Lines 963-970 foreach my $tag ( keys %{$tagslib}){ Link Here
963
}
970
}
964
@loop_data = sort {$a->{subfield} cmp $b->{subfield} } @loop_data;
971
@loop_data = sort {$a->{subfield} cmp $b->{subfield} } @loop_data;
965
972
966
my $item = Koha::Items->find($itemnumber); # We certainly want to fetch it earlier
967
968
# what's the next op ? it's what we are not in : an add if we're editing, otherwise, and edit.
973
# what's the next op ? it's what we are not in : an add if we're editing, otherwise, and edit.
969
$template->param(
974
$template->param(
970
    biblionumber => $biblionumber,
975
    biblionumber => $biblionumber,
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/cataloguing/additem.tt (-2 / +1 lines)
Lines 157-163 Link Here
157
                [% IF ( mv.type == 'hidden' ) %]
157
                [% IF ( mv.type == 'hidden' ) %]
158
                    <input type="hidden" id="[%- mv.id | html -%]" name="field_value" class="input_marceditor" size="50" maxlength="[%- mv.maxlength | html -%]" value="[%- mv.value | html -%]">
158
                    <input type="hidden" id="[%- mv.id | html -%]" name="field_value" class="input_marceditor" size="50" maxlength="[%- mv.maxlength | html -%]" value="[%- mv.value | html -%]">
159
                [% ELSIF ( mv.type == 'select' ) %]
159
                [% ELSIF ( mv.type == 'select' ) %]
160
                    [% IF ( mv.readonly ) %]
160
                    [% IF ( mv.readonly || ite.IS_RETURN_CLAIM ) %]
161
                        <select name="field_value" id="[%- mv.id | html -%]" size="1" class="input_marceditor" readonly="readonly" disabled="disabled">
161
                        <select name="field_value" id="[%- mv.id | html -%]" size="1" class="input_marceditor" readonly="readonly" disabled="disabled">
162
                    [% ELSE %]
162
                    [% ELSE %]
163
                        <select name="field_value" id="[%- mv.id | html -%]" size="1" class="input_marceditor">
163
                        <select name="field_value" id="[%- mv.id | html -%]" size="1" class="input_marceditor">
164
- 

Return to bug 24279