cvsuser     02/06/15 21:48:02

  Modified:    P5EEx/Blue/P5EEx/Blue/Widget/HTML DataTable.pm
  Log:
  use all columns from target table if column list not supplied
  
  Revision  Changes    Path
  1.14      +27 -16    p5ee/P5EEx/Blue/P5EEx/Blue/Widget/HTML/DataTable.pm
  
  Index: DataTable.pm
  ===================================================================
  RCS file: /cvs/public/p5ee/P5EEx/Blue/P5EEx/Blue/Widget/HTML/DataTable.pm,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -w -r1.13 -r1.14
  --- DataTable.pm      7 Jun 2002 22:42:30 -0000       1.13
  +++ DataTable.pm      16 Jun 2002 04:48:02 -0000      1.14
  @@ -1,10 +1,10 @@
   
   ######################################################################
  -## $Id: DataTable.pm,v 1.13 2002/06/07 22:42:30 spadkins Exp $
  +## $Id: DataTable.pm,v 1.14 2002/06/16 04:48:02 spadkins Exp $
   ######################################################################
   
   package P5EEx::Blue::Widget::HTML::DataTable;
  -$VERSION = do { my @r=(q$Revision: 1.13 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
  +$VERSION = do { my @r=(q$Revision: 1.14 $=~/\d+/g); sprintf "%d."."%02d"x$#r,@r};
   
   use P5EEx::Blue::P5EE;
   use P5EEx::Blue::Widget::HTML;
  @@ -78,16 +78,6 @@
   
       $self->{context}->dbgprint("DataTable->init()")
           if ($P5EEx::Blue::DEBUG && $self->{context}->dbg(1));
  -
  -    my $columns = $self->get("columns");
  -
  -    if (defined $columns && ref($columns) eq "") {
  -        $columns = [ $columns ];
  -        $self->set("columns", $columns);
  -    }
  -
  -    $self->{context}->dbgprint("DataTable->init(): columns=[", join(",", 
@{$self->get("columns",[])}), "]")
  -        if ($P5EEx::Blue::DEBUG && $self->{context}->dbg(1));
   }
   
   ######################################################################
  @@ -146,7 +136,7 @@
           ($colnum, $direction) = @args;
   
           my ($columns, $directions, $ordercols, $column, $i);
  -        $columns    = $self->get("columns",[]);
  +        $columns    = $self->get_columns();
           $column     = $columns->[$colnum];
   
           $ordercols = $self->get("ordercols");
  @@ -192,13 +182,34 @@
   # METHODS
   ######################################################################
   
  +sub get_columns {
  +    my $self = shift;
  +    my ($columns);
  +    $columns = $self->{columns};
  +    if (defined $columns && ref($columns) eq "") {
  +        $columns = [ $columns ];
  +        $self->set("columns", $columns);
  +    }
  +    if (!defined $columns) {
  +        my ($repository, $rep, $table);
  +        $repository = $self->{repository};
  +        $table      = $self->{table};
  +        $rep        = $self->{context}->repository($repository) if ($repository);
  +        if ($rep && $table) {
  +            $columns = $rep->get_column_names($table);
  +        }
  +    }
  +    $columns = [] if (!defined $columns || ref($columns) eq "");
  +    $columns;
  +}
  +
   sub get_headings {
       my $self = shift;
       $self->{context}->dbgprint("DataTable->get_headings()")
           if ($P5EEx::Blue::DEBUG && $self->{context}->dbg(1));
       my ($table, $headings, $heading, $columns, $column, $lang);
       $table = $self->get("table");
  -    $columns = $self->get("columns");
  +    $columns = $self->get_columns();
       $headings = $self->get("headings");
       $lang = $self->{lang};
       if (!defined $headings) {
  @@ -273,7 +284,7 @@
               return;
           }
       
  -        $columns = $self->get("columns");
  +        $columns = $self->get_columns();
           if (! defined $columns || $#$columns == -1) {
               $columns = $rep->get_column_names($table);
               if (!defined $columns || $#$columns == -1) {
  @@ -469,7 +480,7 @@
       my ($columnSelectable, $rowSelectable, $elemSelected);
       my (@edit_style, @column_length);
   
  -    $columns          = $self->get("columns",[]);
  +    $columns          = $self->get_columns();
       $headings         = $self->get_headings();
       $data             = $self->get_data();
       $startrow         = $self->get("startrow",         1);
  
  
  


Reply via email to