Bug 13618: (follow-up) Manually replace missing .raw
[koha.git] / about.pl
index 7ea8acd..a79fc2c 100755 (executable)
--- a/about.pl
+++ b/about.pl
@@ -24,8 +24,10 @@ use Modern::Perl;
 
 use CGI qw ( -utf8 );
 use DateTime::TimeZone;
+use File::Spec;
 use List::MoreUtils qw/ any /;
 use LWP::Simple;
+use Module::Load::Conditional qw(can_load);
 use XML::Simple;
 use Config;
 use Search::Elasticsearch;
@@ -37,6 +39,7 @@ use C4::Context;
 use C4::Installer;
 
 use Koha;
+use Koha::DateUtils qw(dt_from_string output_pref);
 use Koha::Acquisition::Currencies;
 use Koha::Patron::Categories;
 use Koha::Patrons;
@@ -62,9 +65,9 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
     }
 );
 
-my $config_timezone = C4::Context->config('timezone');
+my $config_timezone = C4::Context->config('timezone') // '';
 my $config_invalid  = !DateTime::TimeZone->is_valid_name( $config_timezone );
-my $env_timezone    = $ENV{TZ};
+my $env_timezone    = $ENV{TZ} // '';
 my $env_invalid     = !DateTime::TimeZone->is_valid_name( $env_timezone );
 my $actual_bad_tz_fallback = 0;
 
@@ -81,14 +84,18 @@ elsif ( $config_timezone eq '' &&
 }
 
 my $time_zone = {
-    actual                 => C4::Context->timezone(),
+    actual                 => C4::Context->tz->name,
     actual_bad_tz_fallback => $actual_bad_tz_fallback,
     config                 => $config_timezone,
     config_invalid         => $config_invalid,
     environment            => $env_timezone,
     environment_invalid    => $env_invalid
 };
-$template->param( 'time_zone' => $time_zone );
+
+$template->param(
+    time_zone              => $time_zone,
+    current_date_and_time  => output_pref({ dt => dt_from_string(), dateformat => 'iso' })
+);
 
 my $perl_path = $^X;
 if ($^O ne 'VMS') {
@@ -254,6 +261,14 @@ if ( ! defined C4::Context->config('upload_path') ) {
     }
 }
 
+if ( ! C4::Context->config('tmp_path') ) {
+    my $temporary_directory = C4::Context::temporary_directory;
+    push @xml_config_warnings, {
+        error             => 'tmp_path_missing',
+        effective_tmp_dir => $temporary_directory,
+    }
+}
+
 # Test QueryParser configuration sanity
 if ( C4::Context->preference( 'UseQueryParser' ) ) {
     # Get the QueryParser configuration file name
@@ -386,6 +401,13 @@ if ( C4::Context->preference('SearchEngine') eq 'Elasticsearch' ) {
     }
 }
 
+if ( C4::Context->preference('RESTOAuth2ClientCredentials') ) {
+    # Do we have the required deps?
+    unless ( can_load( modules => { 'Net::OAuth2::AuthorizationServer' => undef }) ) {
+        $template->param( oauth2_missing_deps => 1 );
+    }
+}
+
 # Sco Patron should not contain any other perms than circulate => self_checkout
 if (  C4::Context->preference('WebBasedSelfCheck')
       and C4::Context->preference('AutoSelfCheckAllowed')