Bug 11944: use CGI( -utf8 ) everywhere
[koha-equinox.git] / cataloguing / value_builder / unimarc_field_117.pl
1 #!/usr/bin/perl
2
3
4 # Copyright 2000-2002 Katipo Communications
5 #
6 # This file is part of Koha.
7 #
8 # Koha is free software; you can redistribute it and/or modify it under the
9 # terms of the GNU General Public License as published by the Free Software
10 # Foundation; either version 2 of the License, or (at your option) any later
11 # version.
12 #
13 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
14 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
15 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License along
18 # with Koha; if not, write to the Free Software Foundation, Inc.,
19 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20
21 use strict;
22 #use warnings; FIXME - Bug 2505
23
24 use Koha::Util::FrameworkPlugin qw(wrapper);
25 use C4::Auth;
26 use CGI qw ( -utf8 );
27 use C4::Context;
28
29 use C4::Search;
30 use C4::Output;
31
32 =head1 FUNCTIONS
33
34 =head2 plugin_parameters
35
36 Other parameters added when the plugin is called by the dopop function
37
38 =cut
39
40 sub plugin_parameters {
41 my ($dbh,$record,$tagslib,$i,$tabloop) = @_;
42 return "";
43 }
44
45 sub plugin_javascript {
46 my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_;
47 my $res="
48 <script>
49 function Focus$field_number(subfield_managed) {
50 return 1;
51 }
52
53 function Blur$field_number(subfield_managed) {
54         return 1;
55 }
56
57 function Clic$field_number(i) {
58         defaultvalue=document.getElementById(\"$field_number\").value;
59         newin=window.open(\"../cataloguing/plugin_launcher.pl?plugin_name=unimarc_field_117.pl&index=$field_number&result=\"+defaultvalue,\"unimarc_field_117\",'width=600,height=225,toolbar=false,scrollbars=yes');
60
61 }
62 </script>
63 ";
64
65 return ($field_number,$res);
66 }
67
68
69 sub plugin {
70 my ($input) = @_;
71         my $index= $input->param('index');
72         my $result= $input->param('result');
73
74         my $dbh = C4::Context->dbh;
75 my ($template, $loggedinuser, $cookie)
76     = get_template_and_user({template_name => "cataloguing/value_builder/unimarc_field_117.tt",
77                              query => $input,
78                              type => "intranet",
79                              authnotrequired => 0,
80                              flagsrequired => {editcatalogue => '*'},
81                              debug => 1,
82                              });
83         my $f1 = substr($result,0,2); $f1 = wrapper( $f1 ) if $f1;
84         my $f2 = substr($result,2,2); $f2 = wrapper( $f2 ) if $f2;
85         my $f3 = substr($result,4,2); $f3 = wrapper( $f3 ) if $f3;
86         my $f4 = substr($result,6,2); $f4 = wrapper( $f4 ) if $f4;
87
88         my $f5 = substr($result,8,1); $f5 = wrapper( $f5 ) if $f5;
89
90         $template->param(index => $index,
91                                                         "f1$f1" => 1,
92                                                         "f2$f2" => 1,
93                                                         "f3$f3" => 1,
94                                                         "f4$f4" => 1,
95                                                         "f5$f5" => 1
96  );
97         output_html_with_http_headers $input, $cookie, $template->output;
98 }
99
100 1;