Bug 18607: Adjusting unit tests for monthly serial frequencies
[koha.git] / about.pl
index 6b77677..ef91b24 100755 (executable)
--- a/about.pl
+++ b/about.pl
@@ -36,7 +36,9 @@ use C4::Installer;
 use Koha;
 use Koha::Acquisition::Currencies;
 use Koha::Patrons;
+use Koha::Caches;
 use Koha::Config::SysPrefs;
+use C4::Members::Statistics;
 
 #use Smart::Comments '####';
 
@@ -69,7 +71,43 @@ if ( any { /(^psgi\.|^plack\.)/i } keys %ENV ) {
     );
 }
 
+# Memcached configuration
+my $memcached_servers   = $ENV{MEMCACHED_SERVERS} || C4::Context->config('memcached_servers');
+my $memcached_namespace = $ENV{MEMCACHED_NAMESPACE} || C4::Context->config('memcached_namespace') // 'koha';
+
+my $cache = Koha::Caches->get_instance;
+my $effective_caching_method = ref($cache->cache);
+# Memcached may have been running when plack has been initialized but could have been stopped since
+# FIXME What are the consequences of that??
+my $is_memcached_still_active = $cache->set_in_cache('test_for_about_page', "just a simple value");
+
+my $where_is_memcached_config = 'nowhere';
+if ( $ENV{MEMCACHED_SERVERS} and C4::Context->config('memcached_servers') ) {
+    $where_is_memcached_config = 'both';
+} elsif ( $ENV{MEMCACHED_SERVERS} and not C4::Context->config('memcached_servers') ) {
+    $where_is_memcached_config = 'ENV_only';
+} elsif ( C4::Context->config('memcached_servers') ) {
+    $where_is_memcached_config = 'config_only';
+}
+
+$template->param(
+    effective_caching_method => $effective_caching_method,
+    memcached_servers   => $memcached_servers,
+    memcached_namespace => $memcached_namespace,
+    is_memcached_still_active => $is_memcached_still_active,
+    where_is_memcached_config => $where_is_memcached_config,
+    memcached_running   => Koha::Caches->get_instance->memcached_cache,
+);
+
 # Additional system information for warnings
+
+my $warnStatisticsFieldsError;
+my $prefStatisticsFields = C4::Context->preference('StatisticsFields');
+if ($prefStatisticsFields) {
+    $warnStatisticsFieldsError = $prefStatisticsFields
+        unless ( $prefStatisticsFields eq C4::Members::Statistics->get_fields() );
+}
+
 my $prefAutoCreateAuthorities = C4::Context->preference('AutoCreateAuthorities');
 my $prefBiblioAddsAuthorities = C4::Context->preference('BiblioAddsAuthorities');
 my $warnPrefBiblioAddsAuthorities = ( $prefAutoCreateAuthorities && ( !$prefBiblioAddsAuthorities) );
@@ -90,6 +128,7 @@ my $errZebraConnection = C4::Context->Zconn("biblioserver",0)->errcode();
 my $warnIsRootUser   = (! $loggedinuser);
 
 my $warnNoActiveCurrency = (! defined Koha::Acquisition::Currencies->get_active);
+
 my @xml_config_warnings;
 
 my $context = new C4::Context;
@@ -269,13 +308,15 @@ $template->param(
     errZebraConnection => $errZebraConnection,
     warnIsRootUser => $warnIsRootUser,
     warnNoActiveCurrency => $warnNoActiveCurrency,
+    warnNoTemplateCaching => ( C4::Context->config('template_cache_dir') ? 0 : 1 ),
     xml_config_warnings => \@xml_config_warnings,
+    warnStatisticsFieldsError => $warnStatisticsFieldsError,
 );
 
 my @components = ();
 
 my $perl_modules = C4::Installer::PerlModules->new;
-$perl_modules->version_info;
+$perl_modules->versions_info;
 
 my @pm_types = qw(missing_pm upgrade_pm current_pm);