Koha/cataloguing/value_builder/marc21_field_005.pl
Marcel de Rooy 76338220dd Bug 5374 (update transaction date when saving biblio) RESENT with small fix
Currently, the plugin marc21_field_005 and its unimarc opponent fill field 005
when this field gets focus. This implies that updating a record without
touching this field does not update 005.
At the same time, a user could accidentally delete a character in the 005 when
having focus. This mutilated field value will be saved however.

I would suggest to add a few lines to ModBiblioMarc in Biblio.pm to ascertain
that adding or updating a record always updates 005 in marc21 as well as
unimarc.

Signed-off-by: Nicole Engard <nengard@bywatersolutions.com>
Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
2011-01-05 08:42:47 +13:00

89 lines
2.2 KiB
Perl
Executable file

#!/usr/bin/perl
# Copyright 2000-2002 Katipo Communications
#
# This file is part of Koha.
#
# Koha is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with Koha; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
use strict;
#use warnings; FIXME - Bug 2505
#use C4::Context;
=head1
plugin_parameters : other parameters added when the plugin is called by the dopop function
=cut
sub plugin_parameters {
# my ($dbh,$record,$tagslib,$i,$tabloop) = @_;
return "";
}
=head1
plugin_javascript : the javascript function called when the user enters the subfield.
contain 3 javascript functions :
* one called when the field is entered (OnFocus). Named FocusXXX
* one called when the field is leaved (onBlur). Named BlurXXX
* one called when the ... link is clicked (<a href="javascript:function">) named ClicXXX
returns :
* XXX
* a variable containing the 3 scripts.
the 3 scripts are inserted after the <input> in the html code
=cut
sub plugin_javascript {
my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_;
my $function_name= $field_number;
# find today's date
my @a= (localtime) [5,4,3,2,1,0]; $a[0]+=1900; $a[1]++;
my $date = sprintf("%4d%02d%02d%02d%02d%04.1f",@a);
my $res = "
<script type=\"text/javascript\">
//<![CDATA[
function Blur$function_name(index) {
//need this?
}
function Focus$function_name(subfield_managed) {
document.getElementById(\"$field_number\").value='$date';
return 0;
}
function Clic$function_name(subfield_managed) {
}
//]]>
</script>
";
return ($function_name,$res);
}
=head1
plugin : the true value_builded. The screen that is open in the popup window.
=cut
sub plugin {
return "";
}
1;