[dw-free] Code Refactoring
[commit: http://hg.dwscoalition.org/dw-free/rev/28e0103cbb09]
http://bugs.dwscoalition.org/show_bug.cgi?id=1726
Rename synlib.pl to LJ/Syn.pm.
Patch by
szabgab.
Files modified:
http://bugs.dwscoalition.org/show_bug.cgi?id=1726
Rename synlib.pl to LJ/Syn.pm.
Patch by
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Files modified:
- cgi-bin/LJ/Syn.pm
- cgi-bin/modperl_subs.pl
- cgi-bin/synlib.pl
-------------------------------------------------------------------------------- diff -r c994593e71e9 -r 28e0103cbb09 cgi-bin/LJ/Syn.pm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cgi-bin/LJ/Syn.pm Thu Oct 01 08:25:28 2009 -0500 @@ -0,0 +1,54 @@ +#!/usr/bin/perl +# + +package LJ::Syn; +use strict; + +sub get_popular_feeds +{ + my $popsyn = LJ::MemCache::get("popsyn"); + unless ($popsyn) { + $popsyn = _get_feeds_from_db(); + + # load u objects so we can get usernames + my %users; + LJ::load_userids_multiple([ map { $_, \$users{$_} } map { $_->[0] } @$popsyn ]); + unshift @$_, $users{$_->[0]}->{'user'}, $users{$_->[0]}->{'name'} foreach @$popsyn; + # format is: [ user, name, userid, synurl, numreaders ] + # set in memcache + my $expire = time() + 3600; # 1 hour + LJ::MemCache::set("popsyn", $popsyn, $expire); + } + return $popsyn; +} + +sub get_popular_feed_ids { + my $popsyn_ids = LJ::MemCache::get("popsyn_ids"); + unless ($popsyn_ids) { + my $popsyn = _get_feeds_from_db(); + @$popsyn_ids = map { $_->[0] } @$popsyn; + + # set in memcache + my $expire = time() + 3600; # 1 hour + LJ::MemCache::set("popsyn_ids", $popsyn_ids, $expire); + } + return $popsyn_ids; +} + +sub _get_feeds_from_db { + my $popsyn = []; + + my $dbr = LJ::get_db_reader(); + my $sth = $dbr->prepare("SELECT userid, synurl, numreaders FROM syndicated ". + "WHERE numreaders > 0 ". + "AND lastnew > DATE_SUB(NOW(), INTERVAL 14 DAY) ". + "ORDER BY numreaders DESC LIMIT 1000"); + $sth->execute(); + while (my @row = $sth->fetchrow_array) { + push @$popsyn, [ @row ]; + } + + return $popsyn; +} + +1; diff -r c994593e71e9 -r 28e0103cbb09 cgi-bin/modperl_subs.pl --- a/cgi-bin/modperl_subs.pl Wed Sep 30 06:34:35 2009 +0000 +++ b/cgi-bin/modperl_subs.pl Thu Oct 01 08:25:28 2009 -0500 @@ -63,6 +63,7 @@ BEGIN { $LJ::HAVE_DBI_PROFILE = eval "us BEGIN { $LJ::HAVE_DBI_PROFILE = eval "use DBI::Profile (); 1;" } use LJ::Lang; +use LJ::Syn; require "htmlcontrols.pl"; require "weblib.pl"; require "imageconf.pl"; @@ -76,7 +77,6 @@ require "ljmemories.pl"; require "ljmemories.pl"; require "ljmail.pl"; require "sysban.pl"; -require "synlib.pl"; require "communitylib.pl"; require "taglib.pl"; require "schoollib.pl"; diff -r c994593e71e9 -r 28e0103cbb09 cgi-bin/synlib.pl --- a/cgi-bin/synlib.pl Wed Sep 30 06:34:35 2009 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,54 +0,0 @@ -#!/usr/bin/perl -# - -package LJ::Syn; -use strict; - -sub get_popular_feeds -{ - my $popsyn = LJ::MemCache::get("popsyn"); - unless ($popsyn) { - $popsyn = _get_feeds_from_db(); - - # load u objects so we can get usernames - my %users; - LJ::load_userids_multiple([ map { $_, \$users{$_} } map { $_->[0] } @$popsyn ]); - unshift @$_, $users{$_->[0]}->{'user'}, $users{$_->[0]}->{'name'} foreach @$popsyn; - # format is: [ user, name, userid, synurl, numreaders ] - # set in memcache - my $expire = time() + 3600; # 1 hour - LJ::MemCache::set("popsyn", $popsyn, $expire); - } - return $popsyn; -} - -sub get_popular_feed_ids { - my $popsyn_ids = LJ::MemCache::get("popsyn_ids"); - unless ($popsyn_ids) { - my $popsyn = _get_feeds_from_db(); - @$popsyn_ids = map { $_->[0] } @$popsyn; - - # set in memcache - my $expire = time() + 3600; # 1 hour - LJ::MemCache::set("popsyn_ids", $popsyn_ids, $expire); - } - return $popsyn_ids; -} - -sub _get_feeds_from_db { - my $popsyn = []; - - my $dbr = LJ::get_db_reader(); - my $sth = $dbr->prepare("SELECT userid, synurl, numreaders FROM syndicated ". - "WHERE numreaders > 0 ". - "AND lastnew > DATE_SUB(NOW(), INTERVAL 14 DAY) ". - "ORDER BY numreaders DESC LIMIT 1000"); - $sth->execute(); - while (my @row = $sth->fetchrow_array) { - push @$popsyn, [ @row ]; - } - - return $popsyn; -} - -1; --------------------------------------------------------------------------------