Lines 92-118
sub generate_subfield_form {
Link Here
|
92 |
# based on the ApplyFrameworkDefaults setting. |
92 |
# based on the ApplyFrameworkDefaults setting. |
93 |
# Substitute date parts, user name |
93 |
# Substitute date parts, user name |
94 |
my $applydefaults = C4::Context->preference('ApplyFrameworkDefaults'); |
94 |
my $applydefaults = C4::Context->preference('ApplyFrameworkDefaults'); |
95 |
if ( $value eq '' && ( |
95 |
|
96 |
( $applydefaults =~ /new/ && !$self->{biblionumber} ) || |
96 |
my $form_mode; |
97 |
( $applydefaults =~ /duplicate/ && $op eq 'duplicate' ) || |
97 |
if ( !$self->{biblionumber} ) { |
98 |
( $applydefaults =~ /changed/ && $changed_framework ) || |
98 |
$form_mode = 'new'; |
99 |
( $applydefaults =~ /imported/ && $breedingid ) |
99 |
} elsif ( $op eq 'duplicate' ) { |
100 |
) ) { |
100 |
$form_mode = 'duplicate'; |
101 |
$value = $tagslib->{$tag}->{$subfield}->{defaultvalue} // q{}; |
101 |
} elsif ($changed_framework) { |
|
|
102 |
$form_mode = 'changed'; |
103 |
} elsif ($breedingid) { |
104 |
$form_mode = 'imported'; |
105 |
} |
106 |
|
107 |
my ($framework_override) = |
108 |
Koha::Plugins->call( 'framework_defaults_override', $tag, $subfield, $value, $form_mode ); |
109 |
|
110 |
if ( ( $value eq '' || $framework_override->{apply_override} ) |
111 |
&& ( $applydefaults =~ /$form_mode/ ) ) |
112 |
{ |
113 |
$value = $framework_override->{override_default_value} // $tagslib->{$tag}->{$subfield}->{defaultvalue} // q{}; |
102 |
|
114 |
|
103 |
# get today date & replace <<YYYY>>, <<YY>>, <<MM>>, <<DD>> if provided in the default value |
115 |
# get today date & replace <<YYYY>>, <<YY>>, <<MM>>, <<DD>> if provided in the default value |
104 |
my $today_dt = dt_from_string; |
116 |
my $today_dt = dt_from_string; |
105 |
my $year = $today_dt->strftime('%Y'); |
117 |
my $year = $today_dt->strftime('%Y'); |
106 |
my $shortyear = $today_dt->strftime('%y'); |
118 |
my $shortyear = $today_dt->strftime('%y'); |
107 |
my $month = $today_dt->strftime('%m'); |
119 |
my $month = $today_dt->strftime('%m'); |
108 |
my $day = $today_dt->strftime('%d'); |
120 |
my $day = $today_dt->strftime('%d'); |
109 |
$value =~ s/<<YYYY>>/$year/g; |
121 |
$value =~ s/<<YYYY>>/$year/g; |
110 |
$value =~ s/<<YY>>/$shortyear/g; |
122 |
$value =~ s/<<YY>>/$shortyear/g; |
111 |
$value =~ s/<<MM>>/$month/g; |
123 |
$value =~ s/<<MM>>/$month/g; |
112 |
$value =~ s/<<DD>>/$day/g; |
124 |
$value =~ s/<<DD>>/$day/g; |
|
|
125 |
|
113 |
# And <<USER>> with surname (?) |
126 |
# And <<USER>> with surname (?) |
114 |
my $username=(C4::Context->userenv?C4::Context->userenv->{'surname'}:"superlibrarian"); |
127 |
my $username = ( C4::Context->userenv ? C4::Context->userenv->{'surname'} : "superlibrarian" ); |
115 |
$value=~s/<<USER>>/$username/g; |
128 |
$value =~ s/<<USER>>/$username/g; |
116 |
} |
129 |
} |
117 |
|
130 |
|
118 |
my $dbh = C4::Context->dbh; |
131 |
my $dbh = C4::Context->dbh; |
119 |
- |
|
|