[Cpan-forum-commit] rev 278 - in trunk: . lib/CPAN/Forum/DB lib/CPAN/Forum/RM
svn at pti.co.il
svn at pti.co.il
Sat Jul 21 18:15:49 EEST 2007
Author: gabor
Date: 2007-07-21 18:15:49 +0300 (Sat, 21 Jul 2007)
New Revision: 278
Modified:
trunk/
trunk/lib/CPAN/Forum/DB/Posts.pm
trunk/lib/CPAN/Forum/RM/Other.pm
Log:
stats page moved to plain SQL
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 7bc34947-122d-0410-bc5a-f898d2bb5f81:/local/cpan-forum:4270
8c4c90e1-83eb-0310-96eb-e7cb62807872:/local/cpan-forum:12752
+ 7bc34947-122d-0410-bc5a-f898d2bb5f81:/local/cpan-forum:4271
8c4c90e1-83eb-0310-96eb-e7cb62807872:/local/cpan-forum:12752
Modified: trunk/lib/CPAN/Forum/DB/Posts.pm
===================================================================
--- trunk/lib/CPAN/Forum/DB/Posts.pm 2007-07-21 15:15:22 UTC (rev 277)
+++ trunk/lib/CPAN/Forum/DB/Posts.pm 2007-07-21 15:15:49 UTC (rev 278)
@@ -18,23 +18,15 @@
__PACKAGE__->set_sql(count_like => "SELECT count(*) FROM __TABLE__ WHERE %s LIKE '%s'");
#__PACKAGE__->add_constraint('subject_too_long', subject => sub { length $_[0] <= 70 and $_[0] !~ /</});
#__PACKAGE__->add_constraint('text_format', text => \&check_text_format);
-__PACKAGE__->set_sql(stat_posts_by_group => qq{
- SELECT COUNT(*) cnt, groups.name gname
- FROM posts,groups
- WHERE posts.gid=groups.id
- GROUP BY gname
- ORDER BY cnt DESC
- LIMIT ?
- });
+#__PACKAGE__->set_sql(stat_posts_by_user => qq{
+# SELECT COUNT(*) cnt, users.username username
+# FROM posts,users
+# WHERE posts.uid=users.id
+# GROUP BY username
+# ORDER BY cnt DESC
+# LIMIT ?
+# });
-__PACKAGE__->set_sql(stat_posts_by_user => qq{
- SELECT COUNT(*) cnt, users.username username
- FROM posts,users
- WHERE posts.uid=users.id
- GROUP BY username
- ORDER BY cnt DESC
- LIMIT ?
- });
my $MORE_SQL = 'groups.name group_name, users.fname user_fname, users.lname user_lname, users.username user_username';
sub get_post {
@@ -141,5 +133,18 @@
return $self->_fetch_single_value($sql, $thread_id);
}
+sub stat_posts_by_group {
+ my ($self, $limit) = @_;
+ my $sql = qq{
+ SELECT COUNT(*) cnt, groups.name gname
+ FROM posts,groups
+ WHERE posts.gid=groups.id
+ GROUP BY gname
+ ORDER BY cnt DESC
+ LIMIT ?
+ };
+ return $self->_fetch_arrayref_of_hashes($sql, $limit);
+}
+
1;
Modified: trunk/lib/CPAN/Forum/RM/Other.pm
===================================================================
--- trunk/lib/CPAN/Forum/RM/Other.pm 2007-07-21 15:15:22 UTC (rev 277)
+++ trunk/lib/CPAN/Forum/RM/Other.pm 2007-07-21 15:15:49 UTC (rev 278)
@@ -39,12 +39,12 @@
sub stats {
my $self = shift;
my $t = $self->load_tmpl("stats.tmpl");
- my @groups = CPAN::Forum::DB::Posts->search_stat_posts_by_group(50);
+ my $groups = CPAN::Forum::DB::Posts->stat_posts_by_group(50);
#my @users = CPAN::Forum::DB::Posts->search_stat_posts_by_user(10);
#
# TODO: user stats removed as it was extreamly slow..
#
- $t->param(groups => \@groups);
+ $t->param(groups => $groups);
#$t->param(users => \@users);
$t->output;
}
More information about the Cpan-forum-commit
mailing list