[Cpan-forum-commit] rev 251 - in trunk: . lib/CPAN/Forum/DB lib/CPAN/Forum/RM

svn at pti.co.il svn at pti.co.il
Thu Jul 19 08:50:02 EEST 2007


Author: gabor
Date: 2007-07-19 08:50:02 +0300 (Thu, 19 Jul 2007)
New Revision: 251

Modified:
   trunk/
   trunk/lib/CPAN/Forum/DB/Authors.pm
   trunk/lib/CPAN/Forum/RM/Author.pm
   trunk/lib/CPAN/Forum/RM/Search.pm
   trunk/lib/CPAN/Forum/RM/Subscriptions.pm
Log:
replace many of the DB::Authors calls by plain DBI calls



Property changes on: trunk
___________________________________________________________________
Name: svk:merge
   - 7bc34947-122d-0410-bc5a-f898d2bb5f81:/local/cpan-forum:4137
8c4c90e1-83eb-0310-96eb-e7cb62807872:/local/cpan-forum:12752
   + 7bc34947-122d-0410-bc5a-f898d2bb5f81:/local/cpan-forum:4138
8c4c90e1-83eb-0310-96eb-e7cb62807872:/local/cpan-forum:12752

Modified: trunk/lib/CPAN/Forum/DB/Authors.pm
===================================================================
--- trunk/lib/CPAN/Forum/DB/Authors.pm	2007-07-19 05:49:45 UTC (rev 250)
+++ trunk/lib/CPAN/Forum/DB/Authors.pm	2007-07-19 05:50:02 UTC (rev 251)
@@ -8,4 +8,12 @@
 __PACKAGE__->has_many(uid => "CPAN::Forum::DB::Groups");
 __PACKAGE__->has_many(subscriptions => "CPAN::Forum::DB::Subscriptions_pauseid");
 
+sub get_author_by_pauseid {
+    my ($self, $pauseid) = @_;
+    Carp::croak("No PAUSEID provided") if not $pauseid;
+
+    my $sql = "SELECT id, pauseid FROM authors WHERE pauseid=?";
+    return $self->_fetch_single_hashref($sql, uc $pauseid);
+}
+
 1;

Modified: trunk/lib/CPAN/Forum/RM/Author.pm
===================================================================
--- trunk/lib/CPAN/Forum/RM/Author.pm	2007-07-19 05:49:45 UTC (rev 250)
+++ trunk/lib/CPAN/Forum/RM/Author.pm	2007-07-19 05:50:02 UTC (rev 251)
@@ -23,7 +23,7 @@
     $t->param(pauseid => $pauseid);
     $t->param(title => "CPAN Forum - $pauseid");
 
-    my ($author) = CPAN::Forum::DB::Authors->search(pauseid => $pauseid);
+    my $author = CPAN::Forum::DB::Authors->get_author_by_pauseid($pauseid);
     if (not $author) {
         $self->log->warning("Invalid pauseid $pauseid called in $ENV{PATH_INFO}");
         return $self->internal_error(
@@ -33,7 +33,7 @@
     }
     # TODO: simplify query!
     my @group_ids = map {$_->id}
-                    CPAN::Forum::DB::Groups->search( pauseid => $author->id );
+                    CPAN::Forum::DB::Groups->search( pauseid => $author->{id} );
     $self->log->debug("Group IDs: @group_ids");
     my $page = $q->param('page') || 1;
     $self->_search_results($t, {where => {gid => \@group_ids}, page => $page});

Modified: trunk/lib/CPAN/Forum/RM/Search.pm
===================================================================
--- trunk/lib/CPAN/Forum/RM/Search.pm	2007-07-19 05:49:45 UTC (rev 250)
+++ trunk/lib/CPAN/Forum/RM/Search.pm	2007-07-19 05:50:02 UTC (rev 251)
@@ -108,9 +108,9 @@
         if ($what eq "module") {
             $it =  CPAN::Forum::DB::Groups->search_like(name => '%' . $name . '%');
         } else {
-            my ($author) = CPAN::Forum::DB::Authors->search(pauseid => uc $name);
+            my $author = CPAN::Forum::DB::Authors->get_author_by_pauseid($name);
             if ($author) {
-                $it =  CPAN::Forum::DB::Groups->search(pauseid => $author->id);
+                $it =  CPAN::Forum::DB::Groups->search(pauseid => $author->{id});
             } 
             $t->param(pauseid_name => uc $name)
         }

Modified: trunk/lib/CPAN/Forum/RM/Subscriptions.pm
===================================================================
--- trunk/lib/CPAN/Forum/RM/Subscriptions.pm	2007-07-19 05:49:45 UTC (rev 250)
+++ trunk/lib/CPAN/Forum/RM/Subscriptions.pm	2007-07-19 05:50:02 UTC (rev 251)
@@ -191,11 +191,11 @@
     # we should not let the user overwrite it using the new entry box
     if ($q->param("type") eq "pauseid") {
         my $pauseid = uc $q->param("name");
-        my ($author) = CPAN::Forum::DB::Authors->search(pauseid => $pauseid);
+        my $author = CPAN::Forum::DB::Authors->get_author_by_pauseid($pauseid);
         if ($author) {
             my $s = CPAN::Forum::DB::Subscriptions_pauseid->find_or_create({
                 uid       => $user->id,
-                pauseid   => $author->id,
+                pauseid   => $author->{id},
             });
             $self->_update_subs($s, "_new");
         } else {



More information about the Cpan-forum-commit mailing list