Fixing conflict
[wip/koha-chris_n.git] / about.pl
1 รถ#!/usr/bin/perl
2  
3 # This file is part of Koha.
4 #
5 # Koha is free software; you can redistribute it and/or modify it under the
6 # terms of the GNU General Public License as published by the Free Software
7 # Foundation; either version 2 of the License, or (at your option) any later
8 # version.
9 #
10 # Koha is distributed in the hope that it will be useful, but WITHOUT ANY
11 # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12 # A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License along with
15 # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
16 # Suite 330, Boston, MA  02111-1307 USA
17
18 use strict;
19 require Exporter;
20
21 use C4::Output;    # contains gettemplate
22 use C4::Auth;
23 use C4::Context;
24 use CGI;
25 use LWP::Simple;
26 use XML::Simple;
27
28 my $query = new CGI;
29 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
30     {
31         template_name   => "about.tmpl",
32         query           => $query,
33         type            => "intranet",
34         authnotrequired => 0,
35         flagsrequired   => { parameters => 1 },
36         debug           => 1,
37     }
38 );
39
40 my $kohaVersion   = C4::Context->config("kohaversion");
41 my $osVersion     = `uname -a`;
42 my $perlVersion   = $];
43 my $mysqlVersion  = `mysql -V`;
44 my $apacheVersion = `httpd -v`;
45 $apacheVersion = `httpd2 -v` unless $apacheVersion;
46 my $zebraVersion = `zebraidx -V`;
47
48 # $apacheVersion =  (`/usr/sbin/apache2 -V`)[0];
49
50 $template->param(
51     kohaVersion   => $kohaVersion,
52     osVersion     => $osVersion,
53     perlVersion   => $perlVersion,
54     mysqlVersion  => $mysqlVersion,
55     apacheVersion => $apacheVersion,
56     zebraVersion  => $zebraVersion,
57 );
58
59
60 my @component_names =
61     qw/MARC::File::XML   MARC::Charset     Class::Accessor
62        LWP::Simple       XML::Simple       Net::Z3950
63        Event             Net::LDAP         PDF::API2
64        Mail::Sendmail    MARC::Record      Digest::MD5
65        HTML::Template    DBD::mysql        Date::Manip
66        DBI               Net::Z3950::ZOOM
67        Date::Calc
68       /;
69
70 my @components = ();
71
72 foreach my $component ( sort @component_names ) {
73     my $version;
74     if ( eval "require $component" ) {
75         $version = $component->VERSION;
76         if ( $version eq '' ) {
77             $version = 'unknown';
78         }
79     }
80     else {
81         $version = 'module is missing';
82     }
83
84     push(
85         @components,
86         {
87             name    => $component,
88             version => $version,
89         }
90     );
91 }
92
93 $template->param( components => \@components );
94
95 output_html_with_http_headers $query, $cookie, $template->output;