From 898217f8b3d9b5cc270ba210b50a95dbe773e493 Mon Sep 17 00:00:00 2001 From: kados Date: Wed, 1 Mar 2006 17:58:00 +0000 Subject: [PATCH] adding some marc21 plugins --- value_builder/marc21_field_005.pl | 118 +++++++++++++++ value_builder/marc21_field_006.pl | 126 ++++++++++++++++ value_builder/marc21_field_007.pl | 95 ++++++++++++ value_builder/marc21_field_008.pl | 151 ++++++++++++++++++++ value_builder/marc21_leader.pl | 5 +- value_builder/marc21_leader_book.pl | 106 ++++++++++++++ value_builder/marc21_leader_computerfile.pl | 108 ++++++++++++++ value_builder/marc21_leader_video.pl | 106 ++++++++++++++ 8 files changed, 813 insertions(+), 2 deletions(-) create mode 100755 value_builder/marc21_field_005.pl create mode 100644 value_builder/marc21_field_006.pl create mode 100644 value_builder/marc21_field_007.pl create mode 100644 value_builder/marc21_field_008.pl create mode 100644 value_builder/marc21_leader_book.pl create mode 100644 value_builder/marc21_leader_computerfile.pl create mode 100644 value_builder/marc21_leader_video.pl diff --git a/value_builder/marc21_field_005.pl b/value_builder/marc21_field_005.pl new file mode 100755 index 0000000000..b8b1cb7651 --- /dev/null +++ b/value_builder/marc21_field_005.pl @@ -0,0 +1,118 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +require Exporter; +use C4::AuthoritiesMarc; +use C4::Auth; +use C4::Context; +use C4::Output; +use C4::Interface::CGI::Output; +use CGI; +use C4::Search; +use MARC::Record; +use C4::Koha; +use HTML::Template; + +=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 () named ClicXXX + +returns : +* XXX +* a variable containing the 3 scripts. +the 3 scripts are inserted after the in the html code + +=cut +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "210c".(int(rand(100000))+1); + +# find today's date +my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = + localtime(time); +$year +=1900; +$mon +=1; +if (length($mon)==1) { + $mon = "0".$mon; +} +if (length($mday)==1) { + $mday = "0".$mday; +} +if (length($hour)==1) { + $hour = "0".$hour; +} +if (length($min)==1) { + $min = "0".$min; +} +if (length($sec)==1) { + $hour = "0".$sec; +} + + +my $date = "$year$mon$mday$hour$min$sec".".0"; +my $res = " + +"; +return ($function_name,$res); +} + +=head1 + +plugin : the true value_builded. The screen that is open in the popup window. + +=cut + +sub plugin { +my ($input) = @_; +return ""; +} + +1; diff --git a/value_builder/marc21_field_006.pl b/value_builder/marc21_field_006.pl new file mode 100644 index 0000000000..59eb31c695 --- /dev/null +++ b/value_builder/marc21_field_006.pl @@ -0,0 +1,126 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; +use C4::Auth; +use CGI; +use C4::Context; +use HTML::Template; +use C4::Search; +use C4::Output; + +=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 ""; +} + +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "100".(int(rand(100000))+1); +my $res=" + +"; + +return ($function_name,$res); +} +sub plugin { +my ($input) = @_; + my %env; + +# my $input = new CGI; + my $index= $input->param('index'); + my $result= $input->param('result'); + + + my $dbh = C4::Context->dbh; + +my ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "value_builder/marc21_field_006.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {editcatalogue => 1}, + debug => 1, + }); + $result = "a|||||r|||| 00| 0 " unless $result; +# $result = "a r 00 0 " unless $result; + my $f0 = substr($result,0,1); + my $f014 = substr($result,1,4); + my $f5 = substr($result,5,1); + my $f6 = substr($result,6,1); + my $f710 = substr($result,7,4); + my $f11 = substr($result,11,1); + my $f12 = substr($result,12,1); + my $f13 = substr($result,13,1); + my $f14 = substr($result,14,1); + my $f15 = substr($result,15,1); + my $f16 = substr($result,16,1); + my $f17 = substr($result,17,1); + + $template->param( index => $index, + f0 => $f0, + "f0$f0" => $f0, + f014 => $f014, + "f014$f014" => $f014, + f5 => $f5, + "f5$f5" => $f5, + f6 => $f6, + "f6$f6" => $f6, + f710 => $f710, + "f710$f710" => $f710, + f11 => $f11, + "f11$f11" => $f11, + f12 => $f12, + "f12$f12" => $f12, + f13 => $f13, + "f13$f13" => $f13, + f14 => $f14, + "f14$f14" => $f14, + f15 => $f15, + "f15$f15" => $f15, + f16 => $f16, + "f16$f16" => $f16, + f17 => $f17, + "f17$f17" => $f17, + ); + print $input->header(-cookie => $cookie),$template->output; +} + +1; diff --git a/value_builder/marc21_field_007.pl b/value_builder/marc21_field_007.pl new file mode 100644 index 0000000000..9824d9442a --- /dev/null +++ b/value_builder/marc21_field_007.pl @@ -0,0 +1,95 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; +use C4::Auth; +use CGI; +use C4::Context; +use HTML::Template; +use C4::Search; +use C4::Output; + +=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 ""; +} + +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "100".(int(rand(100000))+1); +my $res=" + +"; + +return ($function_name,$res); +} +sub plugin { +my ($input) = @_; + my %env; + +# my $input = new CGI; + my $index= $input->param('index'); + my $result= $input->param('result'); + + + my $dbh = C4::Context->dbh; + +my ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "value_builder/marc21_field_007.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {editcatalogue => 1}, + debug => 1, + }); + $result = "ta" unless $result; + my $f0 = substr($result,0,1); + my $f1 = substr($result,1,4); + + $template->param( index => $index, + f0 => $f0, + "f0$f0" => $f0, + f1 => $f1, + "f1$f1" => $f1, + ); + print $input->header(-cookie => $cookie),$template->output; +} + +1; diff --git a/value_builder/marc21_field_008.pl b/value_builder/marc21_field_008.pl new file mode 100644 index 0000000000..0c3f11e6f9 --- /dev/null +++ b/value_builder/marc21_field_008.pl @@ -0,0 +1,151 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; +use C4::Auth; +use CGI; +use C4::Context; +use HTML::Template; +use C4::Search; +use C4::Output; + +=head1 + +plugin_parameters : other parameters added when the plugin is called by the dopop function + +=cut +# find today's date +my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = + localtime(time); +$year = substr($year,1,2); +$mon +=1; +my $date = "$year-$mon-$mday"; +my $res = ""; +if (length($mon)==1) { + $mon='0'.$mon; +} +if (length($mday)==1) { + $mday='0'.$mday; +} +my $dateentered = "$year$mon$mday"; +sub plugin_parameters { +my ($dbh,$record,$tagslib,$i,$tabloop) = @_; +return ""; +} + +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "100".(int(rand(100000))+1); +my $res=" + +"; + +return ($function_name,$res); +} +sub plugin { +my ($input) = @_; + my %env; + +# my $input = new CGI; + my $index= $input->param('index'); + my $result= $input->param('result'); + + + my $dbh = C4::Context->dbh; + +my ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "value_builder/marc21_field_008.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {editcatalogue => 1}, + debug => 1, + }); +# $result = " t xxu 00 0 eng d" unless $result; + $result = " t xxu||||| |||| 00| 0 eng d" unless $result; + my $f6 = substr($result,6,1); + my $f710 = substr($result,7,4); + my $f1114 = substr($result,11,4); + my $f1517 = substr($result,15,3); + my $f1821 = substr($result,18,4); + my $f22 = substr($result,22,1); + my $f23 = substr($result,23,1); + my $f2427 = substr($result,24,4); + my $f28 = substr($result,28,1); + my $f29 = substr($result,29,1); + my $f30 = substr($result,30,1); + my $f31 = substr($result,31,1); + my $f33 = substr($result,33,1); + my $f34 = substr($result,34,1); + my $f3537 = substr($result,35,3); + my $f38 = substr($result,38,1); + my $f39 = substr($result,39,1); + + $template->param( index => $index, + dateentered => $dateentered, + f6 => $f6, + "f6$f6" => $f6, + f710 => $f710, + f1114 => $f1114, + f1517 => $f1517, + f1821 => $f1821, + f22 => $f22, + "f22$f22" => $f22, + f23 => $f23, + "f23$f23" => $f23, + f2427 => $f2427, + "f24$f2427" => $f2427, + f28 => $f28, + "f28$f28" => $f28, + f29 => $f29, + "f29$f29" => $f29, + f30 => $f30, + "f230$f30" => $f30, + f31 => $f31, + "f31$f31" => $f31, + f33 => $f33, + "f33$f33" => $f33, + f34 => $f34, + "f34$f34" => $f34, + f3537 => $f3537, + f38 => $f38, + "f38$f38" => $f38, + f39 => $f39, + "f39$f39" => $f39, + ); + print $input->header(-cookie => $cookie),$template->output; +} + +1; diff --git a/value_builder/marc21_leader.pl b/value_builder/marc21_leader.pl index fb002b5b86..e2e16f5fd1 100644 --- a/value_builder/marc21_leader.pl +++ b/value_builder/marc21_leader.pl @@ -79,7 +79,7 @@ my ($template, $loggedinuser, $cookie) flagsrequired => {editcatalogue => 1}, debug => 1, }); - $result = " nam 7a " unless $result; + $result = " nam 22 7a 4500" unless $result; my $f5 = substr($result,5,1); my $f6 = substr($result,6,1); my $f7 = substr($result,7,1); @@ -88,7 +88,7 @@ my ($template, $loggedinuser, $cookie) my $f17 = substr($result,17,1); my $f18 = substr($result,18,1); my $f19 = substr($result,19,1); - + my $f2023 = substr($result,20,4); $template->param(index => $index, "f5$f5" => 1, "f6$f6" => 1, @@ -98,6 +98,7 @@ my ($template, $loggedinuser, $cookie) "f17$f17" => 1, "f18$f18" => 1, "f19$f19" => 1, + "f2023" => $f2023, ); print $input->header(-cookie => $cookie),$template->output; } diff --git a/value_builder/marc21_leader_book.pl b/value_builder/marc21_leader_book.pl new file mode 100644 index 0000000000..2a7bb17b6a --- /dev/null +++ b/value_builder/marc21_leader_book.pl @@ -0,0 +1,106 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; +use C4::Auth; +use CGI; +use C4::Context; +use HTML::Template; +use C4::Search; +use C4::Output; + +=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 ""; +} + +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "100".(int(rand(100000))+1); +my $res=" + +"; + +return ($function_name,$res); +} +sub plugin { +my ($input) = @_; + my %env; + +# my $input = new CGI; + my $index= $input->param('index'); + my $result= $input->param('result'); + + + my $dbh = C4::Context->dbh; + +my ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "value_builder/marc21_leader.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {editcatalogue => 1}, + debug => 1, + }); + $result = " nam 7a " unless $result; + my $f5 = substr($result,5,1); + my $f6 = substr($result,6,1); + warn "F6".$f6; + my $f7 = substr($result,7,1); + my $f8 = substr($result,8,1); + my $f9 = substr($result,9,1); + my $f17 = substr($result,17,1); + my $f18 = substr($result,18,1); + my $f19 = substr($result,19,1); + + $template->param(index => $index, + "f5$f5" => 1, + "f6$f6" => 1, + "f7$f7" => 1, + "f8$f8" => 1, + "f9$f9" => 1, + "f17$f17" => 1, + "f18$f18" => 1, + "f19$f19" => 1, + ); + print $input->header(-cookie => $cookie),$template->output; +} + +1; diff --git a/value_builder/marc21_leader_computerfile.pl b/value_builder/marc21_leader_computerfile.pl new file mode 100644 index 0000000000..e75db55ed4 --- /dev/null +++ b/value_builder/marc21_leader_computerfile.pl @@ -0,0 +1,108 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; +use C4::Auth; +use CGI; +use C4::Context; +use HTML::Template; +use C4::Search; +use C4::Output; + +=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 ""; +} + +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "100".(int(rand(100000))+1); +my $res=" + +"; + +return ($function_name,$res); +} +sub plugin { +my ($input) = @_; + my %env; + +# my $input = new CGI; + my $index= $input->param('index'); + my $result= $input->param('result'); + + + my $dbh = C4::Context->dbh; + +my ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "value_builder/marc21_leader_computerfile.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {editcatalogue => 1}, + debug => 1, + }); + $result = " nmm 7a " unless $result; + warn "RESULT:".$result; + my $f5 = substr($result,5,1); + my $f6 = substr($result,6,1); + warn "F6".$f6; + my $f7 = substr($result,7,1); + warn "F7:".$f7; + my $f8 = substr($result,8,1); + my $f9 = substr($result,9,1); + my $f17 = substr($result,17,1); + my $f18 = substr($result,18,1); + my $f19 = substr($result,19,1); + + $template->param(index => $index, + "f5$f5" => 1, + "f6$f6" => 1, + "f7$f7" => 1, + "f8$f8" => 1, + "f9$f9" => 1, + "f17$f17" => 1, + "f18$f18" => 1, + "f19$f19" => 1, + ); + print $input->header(-cookie => $cookie),$template->output; +} + +1; diff --git a/value_builder/marc21_leader_video.pl b/value_builder/marc21_leader_video.pl new file mode 100644 index 0000000000..8ceeae2344 --- /dev/null +++ b/value_builder/marc21_leader_video.pl @@ -0,0 +1,106 @@ +#!/usr/bin/perl + +# $Id$ + +# 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., 59 Temple Place, +# Suite 330, Boston, MA 02111-1307 USA + +use strict; +use C4::Auth; +use CGI; +use C4::Context; +use HTML::Template; +use C4::Search; +use C4::Output; + +=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 ""; +} + +sub plugin_javascript { +my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; +my $function_name= "100".(int(rand(100000))+1); +my $res=" + +"; + +return ($function_name,$res); +} +sub plugin { +my ($input) = @_; + my %env; + +# my $input = new CGI; + my $index= $input->param('index'); + my $result= $input->param('result'); + + + my $dbh = C4::Context->dbh; + +my ($template, $loggedinuser, $cookie) + = get_template_and_user({template_name => "value_builder/marc21_leader.tmpl", + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {editcatalogue => 1}, + debug => 1, + }); + $result = " ngm 7a " unless $result; + my $f5 = substr($result,5,1); + my $f6 = substr($result,6,1); + warn "F6".$f6; + my $f7 = substr($result,7,1); + my $f8 = substr($result,8,1); + my $f9 = substr($result,9,1); + my $f17 = substr($result,17,1); + my $f18 = substr($result,18,1); + my $f19 = substr($result,19,1); + + $template->param(index => $index, + "f5$f5" => 1, + "f6$f6" => 1, + "f7$f7" => 1, + "f8$f8" => 1, + "f9$f9" => 1, + "f17$f17" => 1, + "f18$f18" => 1, + "f19$f19" => 1, + ); + print $input->header(-cookie => $cookie),$template->output; +} + +1; -- 2.39.5