fix date formatting in overdue_notices.pl
[koha.git] / about.pl
blob7fb2efca784ac1725b3ce40749fdf45b57f6d7c4
1 #!/usr/bin/perl
3 # This file is part of Koha.
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.
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.
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
18 use strict;
20 use C4::Output; # contains gettemplate
21 use C4::Auth;
22 use C4::Context;
23 use CGI;
24 use LWP::Simple;
25 use XML::Simple;
26 use Config;
28 my $query = new CGI;
29 my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
31 template_name => "about.tmpl",
32 query => $query,
33 type => "intranet",
34 authnotrequired => 0,
35 flagsrequired => { catalogue => 1 },
36 debug => 1,
40 my $kohaVersion = C4::Context::KOHAVERSION;
41 my $osVersion = `uname -a`;
42 my $perl_path = $^X;
43 if ($^O ne 'VMS') {
44 $perl_path .= $Config{_exe} unless $perl_path =~ m/$Config{_exe}$/i;
46 my $perlVersion = $];
47 my $mysqlVersion = `mysql -V`;
48 my $apacheVersion = `httpd -v`;
49 $apacheVersion = `httpd2 -v` unless $apacheVersion;
50 $apacheVersion = (`/usr/sbin/apache2 -V`)[0] unless $apacheVersion;
51 my $zebraVersion = `zebraidx -V`;
53 $template->param(
54 kohaVersion => $kohaVersion,
55 osVersion => $osVersion,
56 perlPath => $perl_path,
57 perlVersion => $perlVersion,
58 perlIncPath => [ map { perlinc => $_ }, @INC ],
59 mysqlVersion => $mysqlVersion,
60 apacheVersion => $apacheVersion,
61 zebraVersion => $zebraVersion,
63 my @component_names =
64 qw/
65 Biblio::EndnoteStyle
66 CGI
67 CGI::Carp
68 CGI::Session
69 Class::Factory::Util
70 Class::Accessor
71 Compress::Zlib
72 DBD::mysql
73 DBI
74 Data::Dumper
75 Date::Calc
76 Data::ICal
77 Date::Manip
78 Digest::MD5
79 Email::Date
80 File::Temp
82 GD::Barcode::UPCE
83 Getopt::Long
84 Getopt::Std
85 HTML::Template::Pro
86 HTTP::Cookies
87 HTTP::Request::Common
88 HTML::Scrubber
89 LWP::Simple
90 LWP::UserAgent
91 Lingua::Stem
92 List::Util
93 List::MoreUtils
94 Locale::Language
95 MARC::Crosswalk::DublinCore
96 MARC::Charset
97 MARC::File::XML
98 MARC::Record
99 MIME::Base64
100 MIME::Lite
101 MIME::QuotedPrint
102 Mail::Sendmail
103 Net::LDAP
104 Net::LDAP::Filter
105 Net::Z3950::ZOOM
106 PDF::API2
107 PDF::API2::Page
108 PDF::API2::Util
109 PDF::Reuse
110 PDF::Reuse::Barcode
112 POSIX
113 Schedule::At
114 SMS::Send
115 Term::ANSIColor
116 Test
117 Test::Harness
118 Test::More
119 Text::CSV
120 Text::CSV_XS
121 Text::Iconv
122 Text::Wrap
123 Time::HiRes
124 Time::localtime
125 Unicode::Normalize
126 XML::Dumper
127 XML::LibXML
128 XML::LibXSLT
129 XML::SAX::ParserFactory
130 XML::Simple
131 XML::RSS
132 YAML::Syck
135 my @components = ();
137 my $counter=0;
138 foreach my $component ( sort @component_names ) {
139 my $version;
140 if ( eval "require $component" ) {
141 $version = $component->VERSION;
142 if ( $version eq '' ) {
143 $version = 'unknown';
146 else {
147 $version = 'module is missing';
149 push(
150 @components,
152 name => $component,
153 version => $version,
154 newrow => (++$counter % 4) ? 0 : 1,
159 $template->param( components => \@components );
161 output_html_with_http_headers $query, $cookie, $template->output;