cvsuser     02/08/30 10:50:25

  Modified:    P5EEx/Blue/P5EEx/Blue Repository.pm
  Log:
  modified select_values() to optionally get a column of values rather than a row of 
values
  
  Revision  Changes    Path
  1.23      +20 -8     p5ee/P5EEx/Blue/P5EEx/Blue/Repository.pm
  
  Index: Repository.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/P5EEx/Blue/P5EEx/Blue/Repository.pm,v
  retrieving revision 1.22
  retrieving revision 1.23
  diff -u -w -r1.22 -r1.23
  --- Repository.pm     16 Aug 2002 16:07:06 -0000      1.22
  +++ Repository.pm     30 Aug 2002 17:50:25 -0000      1.23
  @@ -1,6 +1,6 @@
   
   #############################################################################
  -## $Id: Repository.pm,v 1.22 2002/08/16 16:07:06 spadkins Exp $
  +## $Id: Repository.pm,v 1.23 2002/08/30 17:50:25 spadkins Exp $
   #############################################################################
   
   package P5EEx::Blue::Repository;
  @@ -76,6 +76,7 @@
       $row       = $rep->select_row ($table, \@cols,         \@params, \%paramvalues);
       $rows      = $rep->select_rows($table, \@cols,         \@params, \%paramvalues, 
\@ordercols, $startrow, $endrow);
       @values    = $rep->select_values($table, \@cols,       \@params, \%paramvalues);
  +    @values    = $rep->select_values($table, $column,      \@params, \%paramvalues);
       $ok        = $rep->insert_row ($table, \@cols, \@row);
       $ok        = $rep->insert_rows($table, \@cols, \@rows);
       $ok        = $rep->update_row ($table, \@cols, \@row,  \@keycolidx);
  @@ -1066,14 +1067,25 @@
   
   =cut
   
  -# @values = $rep->select_values ($table, \@cols, \@params, \%paramvalues);
  +# @values = $rep->select_values ($table, \@cols, \@params, \%paramvalues, 
$ordercols);
   sub select_values {
  -    my ($self, $table, $cols, $params, $paramvalues) = @_;
  +    my ($self, $table, $cols, $params, $paramvalues, $ordercols) = @_;
  +    if (ref($cols) eq "ARRAY") {
       my $row = $self->select_row($table, $cols, $params, $paramvalues);
       return undef if (!$row);
       return undef if ($#$row == -1);
       return @$row if (wantarray);
       return $row->[0];
  +    }
  +    else {
  +        my (@values, $column);
  +        $column = $cols;
  +        my $rows = $self->select_rows($table, [ $column ], $params, $paramvalues, 
$ordercols);
  +        foreach (@$rows) {
  +            push(@values, $_->[0]);
  +        }
  +        return(@values);
  +    }
   }
   
   #############################################################################
  
  
  


Reply via email to