Bug 8742 - Example uses perl 5.8 in Makefile.PL
[koha.git] / C4 / Languages.pm
index 415a798..d0eed69 100644 (file)
@@ -23,9 +23,19 @@ use strict;
 #use warnings; FIXME - Bug 2505
 use Carp;
 use C4::Context;
-use Koha::Cache;
 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $DEBUG);
 
+eval {
+    if (C4::Context->ismemcached) {
+        require Memoize::Memcached;
+        import Memoize::Memcached qw(memoize_memcached);
+
+        memoize_memcached('getTranslatedLanguages', memcached => C4::Context->memcached);
+        memoize_memcached('getFrameworkLanguages' , memcached => C4::Context->memcached);
+        memoize_memcached('getAllLanguages',        memcached => C4::Context->memcached);
+    }
+};
+
 BEGIN {
     $VERSION = 3.07.00.049;
     require Exporter;
@@ -67,15 +77,6 @@ Returns a reference to an array of hashes:
 =cut
 
 sub getFrameworkLanguages {
-
-    my $cache;
-    if (Koha::Cache->is_cache_active()) {
-        $cache = Koha::Cache->new();
-        if (defined $cache) {
-            my $cached = $cache->get_from_cache("getFrameworkLanguages");
-            return $cached if $cached;
-        }
-    }
     # get a hash with all language codes, names, and locale names
     my $all_languages = getAllLanguages();
     my @languages;
@@ -98,9 +99,6 @@ sub getFrameworkLanguages {
             }
         }
     }
-    if (Koha::Cache->is_cache_active() && defined $cache) {
-        $cache->set_in_cache("getFrameworkLanguages",\@languages,1000)
-    }
     return \@languages;
 }
 
@@ -181,17 +179,6 @@ Returns a reference to an array of hashes:
 =cut
 
 sub getAllLanguages {
-    # retrieve from cache if applicable
-    my $cache;
-    if (Koha::Cache->is_cache_active()) {
-        $cache = Koha::Cache->new();
-        if (defined $cache) {
-            my $cached = $cache->get_from_cache("getAllLanguages");
-            if ($cached) {
-                return $cached;
-            }
-        }
-    }
     my @languages_loop;
     my $dbh=C4::Context->dbh;
     my $current_language = shift || 'en';
@@ -226,9 +213,6 @@ sub getAllLanguages {
         }
         push @languages_loop, $language_subtag_registry;
     }
-    if (Koha::Cache->is_cache_active() && defined $cache) {
-        $cache->set_in_cache("getAllLanguages",\@languages_loop,1000);
-    }
     return \@languages_loop;
 }