diff options
-rw-r--r-- | perllib/Memcached.pm | 25 | ||||
-rw-r--r-- | perllib/Page.pm | 7 |
2 files changed, 24 insertions, 8 deletions
diff --git a/perllib/Memcached.pm b/perllib/Memcached.pm index 99ee60be1..74de598fe 100644 --- a/perllib/Memcached.pm +++ b/perllib/Memcached.pm @@ -5,7 +5,7 @@ # Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved. # Email: matthew@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: Memcached.pm,v 1.1 2008-09-16 15:45:09 matthew Exp $ +# $Id: Memcached.pm,v 1.2 2008-10-10 15:44:49 matthew Exp $ # package Memcached; @@ -13,18 +13,29 @@ package Memcached; use strict; use Cache::Memcached; -my $memcache = new Cache::Memcached { - 'servers' => [ '127.0.0.1:11211' ], - 'namespace' => 'fms', - 'debug' => 0, - 'compress_threshold' => 10_000, -}; +my ($memcache, $namespace); + +sub set_namespace { + $namespace = shift; + $namespace = 'fms' if $namespace eq 'fixmystreet'; +} + +sub connect { + $memcache = new Cache::Memcached { + 'servers' => [ '127.0.0.1:11211' ], + 'namespace' => $namespace, + 'debug' => 0, + 'compress_threshold' => 10_000, + }; +} sub get { + connect() unless $memcache; $memcache->get(@_); } sub set { + connect() unless $memcache; $memcache->set(@_); } diff --git a/perllib/Page.pm b/perllib/Page.pm index 1f575bc11..6ea00db5d 100644 --- a/perllib/Page.pm +++ b/perllib/Page.pm @@ -6,7 +6,7 @@ # Copyright (c) 2006 UK Citizens Online Democracy. All rights reserved. # Email: matthew@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: Page.pm,v 1.117 2008-10-10 13:38:14 matthew Exp $ +# $Id: Page.pm,v 1.118 2008-10-10 15:44:49 matthew Exp $ # package Page; @@ -21,6 +21,8 @@ use LWP::Simple; use Digest::MD5 qw(md5_hex); use POSIX qw(strftime); use URI::Escape; + +use Memcached; use Problems; use Utils; use mySociety::Config; @@ -34,6 +36,7 @@ use mySociety::PostcodeUtil; use mySociety::Tracking; use mySociety::WatchUpdate; use mySociety::Web qw(ent NewURL); + BEGIN { mySociety::Config::set_file("$FindBin::Bin/../conf/general"); } @@ -92,6 +95,8 @@ sub microsite { if ($q->{site} eq 'scambs') { Problems::set_site_restriction('scambs'); } + + Memcached::set_namespace($q->{site}); } =item header Q [PARAM VALUE ...] |