graceful degradation if memcached option is not configured in koha-conf.xml
authorGalen Charlton <gmcharlt@gmail.com>
Mon, 24 Aug 2009 11:52:46 +0000 (07:52 -0400)
committerGalen Charlton <gmcharlt@gmail.com>
Mon, 24 Aug 2009 11:53:59 +0000 (07:53 -0400)
Signed-off-by: Galen Charlton <gmcharlt@gmail.com>
C4/Languages.pm

index 971cc96..ab57614 100644 (file)
@@ -26,17 +26,20 @@ use C4::Context;
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG);
 
 eval {
-    require Memoize::Memcached;
-    import Memoize::Memcached qw(memoize_memcached);
+    my $servers = C4::Context->config('memcached_servers');
+    if ($servers) {
+        require Memoize::Memcached;
+        import Memoize::Memcached qw(memoize_memcached);
  
-    my $memcached = {
-        servers    => [ C4::Context->config('memcached_servers') ],
-        key_prefix => C4::Context->config('memcached_namespace'),
-    };
-
-    memoize_memcached('getTranslatedLanguages', memcached => $memcached, expire_time => 600); #cache for 10 minutes
-    memoize_memcached('getFrameworkLanguages' , memcached => $memcached, expire_time => 600);
-    memoize_memcached('getAllLanguages',        memcached => $memcached, expire_time => 600);
+        my $memcached = {
+            servers    => [ $servers ],
+            key_prefix => C4::Context->config('memcached_namespace') || 'koha',
+        };
+
+        memoize_memcached('getTranslatedLanguages', memcached => $memcached, expire_time => 600); #cache for 10 minutes
+        memoize_memcached('getFrameworkLanguages' , memcached => $memcached, expire_time => 600);
+        memoize_memcached('getAllLanguages',        memcached => $memcached, expire_time => 600);
+    }
 };
 
 BEGIN {