$sth =
$dbh->prepare(
-"select tagfield,tagsubfield,liblibrarian,libopac,tab, mandatory, repeatable,authorised_value,authtypecode,value_builder,kohafield,seealso,hidden,isurl,link from marc_subfield_structure where frameworkcode=? order by tagfield,tagsubfield"
+"select tagfield,tagsubfield,liblibrarian,libopac,tab, mandatory, repeatable,authorised_value,authtypecode,value_builder,kohafield,seealso,hidden,isurl,link,defaultvalue from marc_subfield_structure where frameworkcode=? order by tagfield,tagsubfield"
);
$sth->execute($frameworkcode);
my $hidden;
my $isurl;
my $link;
+ my $defaultvalue;
while (
(
$mandatory, $repeatable, $authorised_value,
$authtypecode, $value_builder, $kohafield,
$seealso, $hidden, $isurl,
- $link
+ $link,$defaultvalue
)
= $sth->fetchrow
)
$res->{$tag}->{$subfield}->{hidden} = $hidden;
$res->{$tag}->{$subfield}->{isurl} = $isurl;
$res->{$tag}->{$subfield}->{link} = $link;
+ $res->{$tag}->{$subfield}->{defaultvalue} = $defaultvalue;
}
return $res;
}
# $Id$
# $Log$
+# Revision 1.191 2007/03/29 09:42:13 tipaul
+# adding default value new feature into cataloguing. The system (definition) part has already been added by toins
+#
# Revision 1.190 2007/03/29 08:45:19 hdl
# Deleting ignore_errors(1) pour MARC::Charset
#
use MARC::Record;
use C4::Log;
use C4::Koha; # XXX subfield_is_koha_internal_p
+use Date::Calc qw(Today);
use MARC::File::USMARC;
use MARC::File::XML;
#use Encode;
#$value = encode('utf-8', $value);
$value =~ s/"/"/g;
+ # if there is no value provided but a default value in parameters, get it
+ unless ($value) {
+ $value = $tagslib->{$tag}->{$subfield}->{defaultvalue};
+ # get today date & replace YYYY, MM, DD if provided in the default value
+ my ($year,$month,$day) = Today();
+ $month = sprintf("%02d",$month);
+ $day = sprintf("%02d",$day);
+ $value =~ s/YYYY/$year/g;
+ $value =~ s/MM/$month/g;
+ $value =~ s/DD/$day/g;
+
+ }
my $dbh = C4::Context->dbh;
my %subfield_data;
$subfield_data{tag}=$tag;