use C4::Auth;
use C4::Context;
use C4::Installer;
-use C4::Update::Database;
#use Smart::Comments '####';
}
);
-my $kohaVersion = C4::Context->preference("Version");
-# restore ., for display consistency
-$kohaVersion =~ /(.)\.(..)(..)(...)/;
-# transform digits to Perl number, to display 3.6.1.2 instead of 3.06.01.002
-$kohaVersion = ($1+0).".".($2+0).".".($3+0).".".($4+0);
-
-my $dbrev_applied=""; # the list of database revisions
-
-# the $kohaVersion is duplicated since 3.7: the 3.6 (that uses the old mechanism) and the 3.7 (new mechanism).
-# Both versions reflects how the database has been upgraded
-my $already_applied = C4::Update::Database::list_versions_already_applied();
-# $last_known contains the previous DBrev applied number (all . removed). It's used to have a . instead of a number in case of continuous updates
-my $last_known=0;
-# $last_known_sep contains the previous DBrev applied with the separator (used for display)
-my $last_known_sep="";
-for my $v ( @$already_applied ) {
- my $current = $v->{version};
- $current =~s/\.//g;
- # if the current number is the previous one +1, then just add a ., for a better display N.........N+10, for example
- # (instead of N / N+1 / N+2 / ...)
- if ($current==$last_known+1) {
- $dbrev_applied.=".";
- } else { # we're not N+1, start a new range
- # if version don't end by a ., no need to add the current loop number
- # this avoid having N...N (in case of an isolated BDrev number)
- if ($last_known & $dbrev_applied =~ /\.$/) {
- $dbrev_applied .= "...".$last_known_sep;
- }
- # start a new range
- $dbrev_applied .= " ".$v->{version};
- }
- $last_known= $current;
- $last_known_sep=$v->{version};
-}
-# add the last DB rev number, we don't want to end with "..."
-if ($dbrev_applied =~ /\.$/) {
- $dbrev_applied .= "...".$last_known_sep;
-}
-
+my $kohaVersion = C4::Context::KOHAVERSION;
my $osVersion = `uname -a`;
my $perl_path = $^X;
if ($^O ne 'VMS') {
my $zebraVersion = `zebraidx -V`;
# Additional system information for warnings
-my $prefNoZebra = C4::Context->preference('nozebra');
my $prefAutoCreateAuthorities = C4::Context->preference('AutoCreateAuthorities');
my $prefBiblioAddsAuthorities = C4::Context->preference('BiblioAddsAuthorities');
my $warnPrefBiblioAddsAuthorities = ( $prefAutoCreateAuthorities && ( !$prefBiblioAddsAuthorities) );
my $prefEasyAnalyticalRecords = C4::Context->preference('EasyAnalyticalRecords');
my $prefUseControlNumber = C4::Context->preference('UseControlNumber');
my $warnPrefEasyAnalyticalRecords = ( $prefEasyAnalyticalRecords && $prefUseControlNumber );
+my $warnPrefAnonymousPatron = (
+ C4::Context->preference('OPACPrivacy')
+ and not C4::Context->preference('AnonymousPatron')
+);
my $errZebraConnection = C4::Context->Zconn("biblioserver",0)->errcode();
$template->param(
kohaVersion => $kohaVersion,
- dbrev_applied => $dbrev_applied,
osVersion => $osVersion,
perlPath => $perl_path,
perlVersion => $perlVersion,
mysqlVersion => $mysqlVersion,
apacheVersion => $apacheVersion,
zebraVersion => $zebraVersion,
- prefNoZebra => $prefNoZebra,
prefBiblioAddsAuthorities => $prefBiblioAddsAuthorities,
prefAutoCreateAuthorities => $prefAutoCreateAuthorities,
warnPrefBiblioAddsAuthorities => $warnPrefBiblioAddsAuthorities,
warnPrefEasyAnalyticalRecords => $warnPrefEasyAnalyticalRecords,
+ warnPrefAnonymousPatron => $warnPrefAnonymousPatron,
errZebraConnection => $errZebraConnection,
warnIsRootUser => $warnIsRootUser,
);
## Koha time line code
#get file location
-my $dir = C4::Context->config('intranetdir');
-open( my $file, "<", "$dir" . "/docs/history.txt" );
-my $i = 0;
+my $docdir;
+if ( defined C4::Context->config('docdir') ) {
+ $docdir = C4::Context->config('docdir');
+} else {
+ # if no <docdir> is defined in koha-conf.xml, use the default location
+ # this is a work-around to stop breakage on upgraded Kohas, bug 8911
+ $docdir = C4::Context->config('intranetdir') . '/docs';
+}
-my @rows2 = ();
-my $row2 = [];
+if ( open( my $file, "<", "$docdir" . "/history.txt" ) ) {
-my @lines = <$file>;
-close($file);
+ my $i = 0;
-shift @lines; #remove header row
+ my @rows2 = ();
+ my $row2 = [];
-foreach (@lines) {
- my ( $date, $desc, $tag ) = split(/\t/);
- if(!$desc && $date=~ /(?<=\d{4})\s+/) {
- ($date, $desc)= ($`, $');
- }
- push(
- @rows2,
- {
- date => $date,
- desc => $desc,
+ my @lines = <$file>;
+ close($file);
+
+ shift @lines; #remove header row
+
+ foreach (@lines) {
+ my ( $date, $desc, $tag ) = split(/\t/);
+ if(!$desc && $date=~ /(?<=\d{4})\s+/) {
+ ($date, $desc)= ($`, $');
}
- );
-}
+ push(
+ @rows2,
+ {
+ date => $date,
+ desc => $desc,
+ }
+ );
+ }
-my $table2 = [];
-#foreach my $row2 (@rows2) {
-foreach (@rows2) {
- push (@$row2, $_);
- push( @$table2, { row2 => $row2 } );
- $row2 = [];
-}
+ my $table2 = [];
+ #foreach my $row2 (@rows2) {
+ foreach (@rows2) {
+ push (@$row2, $_);
+ push( @$table2, { row2 => $row2 } );
+ $row2 = [];
+ }
-$template->param( table2 => $table2 );
+ $template->param( table2 => $table2 );
+} else {
+ $template->param( timeline_read_error => 1 );
+}
output_html_with_http_headers $query, $cookie, $template->output;