use C4::Debug;
use C4::Serials::Frequency;
use C4::Serials::Numberpattern;
+use Koha::AdditionalField;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
my $sth = $dbh->prepare($query);
$sth->execute($subscriptionid);
my $subscription = $sth->fetchrow_hashref;
+
$subscription->{cannotedit} = not can_edit_subscription( $subscription );
+
+ # Add additional fields to the subscription into a new key "additional_fields"
+ my $additional_field_values = Koha::AdditionalField->fetch_all_values({
+ tablename => 'subscription',
+ record_id => $subscriptionid,
+ });
+ $subscription->{additional_fields} = $additional_field_values->{$subscriptionid};
+
return $subscription;
}
</div>
</ol>
</fieldset>
+
+ [% IF additional_fields_for_subscription %]
+ <div id="subscription_additional_fields">
+ <fieldset class="rows">
+ <legend>Additional fields</legend>
+ <ol>
+ [% FOR field IN additional_fields_for_subscription %]
+ <li>
+ <label for="additional_fields_[% field.name %]"> [% field.name %]: </label>
+ [% IF field.authorised_value_choices %]
+ <select name="additional_fields_[% field.name %]">
+ [% FOREACH av IN field.authorised_value_choices %]
+ [% IF av.authorised_value == additional_fields.${field.name} %]
+ <option value="[% av.authorised_value %]" selected="selected">[% av.lib %]</option>
+ [% ELSE %]
+ <option value="[% av.authorised_value %]">[% av.lib %]</option>
+ [% END %]
+ [% END %]
+ </select> (Authorised values for [% field.authorised_value_category %])
+ [% ELSE %]
+ [% IF field.marcfield %]
+ <input type="text" value="[% additional_fields.${field.name} %]" name="additional_fields_[% field.name %]" readonly="readonly" />
+ This value will be filled with the [% field.marcfield %] subfield of the selected biblio.
+ [% ELSE %]
+ <input type="text" value="[% additional_fields.${field.name} %]" name="additional_fields_[% field.name %]" />
+ [% END %]
+ [% END %]
+ </li>
+ [% END %]
+ </ol>
+ </fieldset>
+ </div>
+ [% END %]
+
<fieldset class="action">
<input type="button" value="<< Previous" onclick="show_page_1();" style="float:left;"/>
<input id="testpatternbutton" type="button" value="Test prediction pattern" onclick="testPredictionPattern();" />
[% USE Branches %]
+[% USE KohaAuthorisedValues %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Koha › Serials › Details for subscription #[% subscriptionid %]</title>
[% INCLUDE 'doc-head-close.inc' %]
</ol>
</div>
</div>
-</div>
+ </div>
+
+ [% IF additional_fields_for_subscription %]
+ <div class="yui-g">
+ <div class="yui-u first">
+ <div class="rows">
+ <legend>Additional fields:</legend>
+ <ol>
+ [% FOR field IN additional_fields_for_subscription %]
+ <li>
+ <span class="label">[% field.name %]:</span>
+ [% IF field.authorised_value_category %]
+ [% KohaAuthorisedValues.GetByCode( field.authorised_value_category, additional_fields.${field.name} ) %]
+ [% ELSE %]
+ [% additional_fields.${field.name} %]
+ [% END %]
+ </li>
+ [% END %]
+ </ol>
+ </div>
+ </div>
+ </div>
+ [% END %]
</div>
<div id="subscription_planning">
use C4::Serials::Frequency;
use C4::Serials::Numberpattern;
use C4::Letters;
+use Koha::AdditionalField;
use Carp;
#use Smart::Comments;
$template->param(branchloop => $branchloop,
locations_loop=>$locations_loop,
);
+
+
+my $additional_fields = Koha::AdditionalField->all( { table => 'subscription' } );
+for my $field ( @$additional_fields ) {
+ if ( $field->{authorised_value_category} ) {
+ $field->{authorised_value_choices} = GetAuthorisedValues( $field->{authorised_value_category} );
+ }
+}
+$template->param( additional_fields_for_subscription => $additional_fields );
+
# prepare template variables common to all $op conditions:
if ($op!~/^mod/) {
my $letters = get_letter_loop();
$skip_serialseq
);
+ my $additional_fields = Koha::AdditionalField->all( { table => 'subscription' } );
+ my @additional_field_values;
+ for my $field ( @$additional_fields ) {
+ my $af = Koha::AdditionalField->new({ id => $field->{id} });
+ $af->{values} = {
+ $subscriptionid => $query->param('additional_fields_' . $field->{name})
+ };
+ $af->insert_values;
+ }
+
print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid");
return;
}
$skip_serialseq
);
+ my $additional_fields = Koha::AdditionalField->all( { table => 'subscription' } );
+ my @additional_field_values;
+ for my $field ( @$additional_fields ) {
+ my $af = Koha::AdditionalField->new({ id => $field->{id} })->fetch;
+ if ( $af->{marcfield} ) {
+ my $record = GetMarcBiblio( $biblionumber, 1 );
+ my ( $field, $subfield ) = split /\$/, $af->{marcfield};
+ next unless $field and $subfield;
+ my $value = $record->subfield( $field, $subfield );
+ $af->{values} = {
+ $subscriptionid => $value
+ };
+ } else {
+ $af->{values} = {
+ $subscriptionid => $query->param('additional_fields_' . $field->{name})
+ };
+ }
+ $af->insert_values;
+ }
+
print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid");
return;
}
}
}
+my $additional_fields = Koha::AdditionalField->all( { tablename => 'subscription' } );
+for my $field ( @$additional_fields ) {
+ if ( $field->{authorised_value_category} ) {
+ $field->{authorised_value_choices} = GetAuthorisedValues( $field->{authorised_value_category} );
+ }
+}
+$template->param( additional_fields_for_subscription => $additional_fields );
+
$template->param(
subscriptionid => $subscriptionid,
serialslist => \@serialslist,