[Cpan-forum-commit] rev 351 - in trunk: . lib/CPAN/Forum

svn at pti.co.il svn at pti.co.il
Tue Aug 14 13:24:41 EEST 2007


Author: gabor
Date: 2007-08-14 13:24:41 +0300 (Tue, 14 Aug 2007)
New Revision: 351

Modified:
   trunk/
   trunk/lib/CPAN/Forum/DBI.pm
Log:
fix the /author/XXX link that was broken by not processing field => [v1, v2] where clauses



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

Modified: trunk/lib/CPAN/Forum/DBI.pm
===================================================================
--- trunk/lib/CPAN/Forum/DBI.pm	2007-08-14 08:36:30 UTC (rev 350)
+++ trunk/lib/CPAN/Forum/DBI.pm	2007-08-14 10:24:41 UTC (rev 351)
@@ -199,6 +199,7 @@
 }
 
 # _prep_where({ field => value, field2 => value2 });
+# _prep_where({ field => [v1, v2, v3]);
 # return("field=? AND field2=?",    value, value2);
 sub _prep_where {
     my ($self, $args) = @_;
@@ -218,10 +219,13 @@
                 push @FIELDS, "$f LIKE ?";
                 push @values, $args->{$f}{$k[0]};
             } else {
-                Carp::croak("don't know how to handle $k[0] in $f");
+                Carp::croak("don't know how to handle $k[0] of field $f " . Data::Dumper->Dump([$args], ['args']));
             }
+        } elsif ('ARRAY' eq ref $args->{$f}) {
+            push @FIELDS, "$f IN (" . (join ", ", (("?") x @{ $args->{$f} })) . ")";
+            push @values, @{ $args->{$f} };
         } else {
-            Carp::croak("don't know how to handle $args->{$f}");
+            Carp::croak("don't know how to handle $args->{$f} of field $f " . Data::Dumper->Dump([$args], ['args']));
         }
     }
 



More information about the Cpan-forum-commit mailing list