[Cpan-forum-commit] rev 303 - in trunk: . lib/CPAN/Forum/RM
svn at pti.co.il
svn at pti.co.il
Wed Jul 25 17:45:57 EEST 2007
Author: gabor
Date: 2007-07-25 17:45:57 +0300 (Wed, 25 Jul 2007)
New Revision: 303
Modified:
trunk/
trunk/lib/CPAN/Forum/RM/Subscriptions.pm
Log:
separate out the _module_subscription method in CPAN::Forum::RM::Subscriptions
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 7bc34947-122d-0410-bc5a-f898d2bb5f81:/local/cpan-forum:4310
8c4c90e1-83eb-0310-96eb-e7cb62807872:/local/cpan-forum:12752
+ 7bc34947-122d-0410-bc5a-f898d2bb5f81:/local/cpan-forum:4324
8c4c90e1-83eb-0310-96eb-e7cb62807872:/local/cpan-forum:12752
Modified: trunk/lib/CPAN/Forum/RM/Subscriptions.pm
===================================================================
--- trunk/lib/CPAN/Forum/RM/Subscriptions.pm 2007-07-22 04:04:52 UTC (rev 302)
+++ trunk/lib/CPAN/Forum/RM/Subscriptions.pm 2007-07-25 14:45:57 UTC (rev 303)
@@ -52,32 +52,7 @@
if (@params == 2 and $params[0] eq "dist") { # specific distribution
- my $group_name = $params[1];
- my $group = CPAN::Forum::DB::Groups->info_by(name => $group_name); # SQL
- if (not $group) {
- return $self->internal_error("Accessing");
- }
- my $gid = $group->{id};
- $gids = $group->{id};
- my ($s) = CPAN::Forum::DB::Subscriptions->search(uid => $user->{id}, gid => $gid);
- if ($s) {
- push @subscriptions, {
- gid => $gid,
- group => $group_name,
- allposts => $s->allposts,
- starters => $s->starters,
- followups => $s->followups,
- };
-
- } else {
- push @subscriptions, {
- gid => $gid,
- group => $group_name,
- allposts => 0,
- starters => 0,
- followups => 0,
- };
- }
+ ($gids, @subscriptions) = $self->_module_subscription($user, $params[1]);
} else { # show all subscriptions
my ($s) = CPAN::Forum::DB::Subscriptions_all->search(uid => $user->{id});
$self->log->debug("all subscriptions " . ($s ? "found" : "not found"));
@@ -120,7 +95,38 @@
$t->output;
}
+sub _module_subscription {
+ my ($self, $user, $group_name) = @_;
+ my $group = CPAN::Forum::DB::Groups->info_by(name => $group_name); # SQL
+ if (not $group) {
+ return $self->internal_error("Accessing");
+ }
+ my @subscriptions;
+ my $gid = $group->{id};
+ my $gids = $group->{id};
+ my ($s) = CPAN::Forum::DB::Subscriptions->search(uid => $user->{id}, gid => $gid);
+ if ($s) {
+ push @subscriptions, {
+ gid => $gid,
+ group => $group_name,
+ allposts => $s->allposts,
+ starters => $s->starters,
+ followups => $s->followups,
+ };
+ } else {
+ push @subscriptions, {
+ gid => $gid,
+ group => $group_name,
+ allposts => 0,
+ starters => 0,
+ followups => 0,
+ };
+ }
+ return ($gids, @subscriptions);
+}
+
+
=head2 update_subscription
Process the submitted form created by C<mypan()>
More information about the Cpan-forum-commit
mailing list