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

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

Return to bug 35288