X-Git-Url: https://git.decadent.org.uk/gitweb/?p=memories.git;a=blobdiff_plain;f=Memories.pm;fp=Memories.pm;h=efad269268d29b667f6d7e0e52d5c7ff3ff394fb;hp=7027b09e400e3f7c9cd7defd3d2984b5d0027760;hb=d82c04ad8284377640baac802ce54fa811fc514a;hpb=79a133c5b5ef5e8a4879a8bfaaf43fc119be7631 diff --git a/Memories.pm b/Memories.pm index 7027b09..efad269 100644 --- a/Memories.pm +++ b/Memories.pm @@ -112,11 +112,13 @@ sub do_cached { return @stuff; } -sub _recent_uploads { Memories::Photo->search_recent() } -sub _random { Memories::Photo->search_random() } +for my $how (qw(random recent interesting popular)) { + no strict; + my $method = "search_$how"; + *{"_$how"} = sub { Memories::Photo->$method }; + *{$how} = sub { shift->do_cached(\&{"_$how"})}; +} -sub recent_uploads { shift->do_cached(\&_recent_uploads) } -sub random { shift->do_cached(\&_random) } sub tagcloud { shift->do_cached(\&_tagcloud) } sub _tagcloud {