/[Frey]/trunk/lib/Frey/Web/Item.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/lib/Frey/Web/Item.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 98 by dpavlin, Fri Jul 11 17:53:08 2008 UTC revision 111 by dpavlin, Sun Jul 13 16:17:34 2008 UTC
# Line 15  has render_as => ( is => 'rw', isa => 'R Line 15  has render_as => ( is => 'rw', isa => 'R
15    
16  has fey => (  has fey => (
17          is => 'rw',          is => 'rw',
         label => 'Fey object',  
18          isa => 'Object',        # FIXME Strix::User?          isa => 'Object',        # FIXME Strix::User?
19  #       required => 1,          # XXX if we require it we can't have Add form  #       required => 1,          # XXX if we require it we can't have Add form
20  );  );
21    
22    has fey_class => (
23            is => 'rw',
24            isa => 'Str',
25            required => 1,
26    );
27    
28  enum 'Layouts' => qw( div table columns );  enum 'Layouts' => qw( div table columns );
29  has layout => (  has layout => (
30          is => 'rw',          is => 'rw',
# Line 116  sub main { Line 121  sub main {
121                          my $hash = $self->set_from_hash($f);                          my $hash = $self->set_from_hash($f);
122                          warn "## Add hash ", $self->uuid, " => ",dump( $hash, $f );                          warn "## Add hash ", $self->uuid, " => ",dump( $hash, $f );
123                          delete( $hash->{id} );  # FIXME clear primary key                          delete( $hash->{id} );  # FIXME clear primary key
124                          my $u = Strix::User->insert( %$hash );                          my $u = $self->fey_class->insert( %$hash );
125                          warn "Inserted ",$u->id;                          warn "Inserted ",$u->id;
126                          # XXX store object for later                          # XXX store object for later
127                          $self->fey( $u );                          $self->fey( $u );
# Line 157  sub render_edit { Line 162  sub render_edit {
162                  #warn "# edit render_iterator ",dump( @_ );                  #warn "# edit render_iterator ",dump( @_ );
163                  my ( $name, $field_name, $label, $val ) = @_;                  my ( $name, $field_name, $label, $val ) = @_;
164                  return if $name =~ /^_/;                  return if $name =~ /^_/;
165                    $val ||= '';
166                  return qq|                  return qq|
167                          <tr class="editform">                          <tr class="editform">
168                          <td class="label">$label</td>                          <td class="label">$label</td>
# Line 192  sub render_view { Line 198  sub render_view {
198                  #warn "# view render_iterator ",dump( @_ );                  #warn "# view render_iterator ",dump( @_ );
199                  my ( $name, $field_name, $label, $val ) = @_;                  my ( $name, $field_name, $label, $val ) = @_;
200                  return if $name =~ /^_/;                  return if $name =~ /^_/;
201                    $val ||= '';
202                  return qq|<tr><td>$label</td><td>$val</td></tr>| if $self->layout eq 'table';                  return qq|<tr><td>$label</td><td>$val</td></tr>| if $self->layout eq 'table';
203                  return qq|<td>$val</td>| if $self->layout eq 'columns';                  return qq|<td>$val</td>| if $self->layout eq 'columns';
204                  return qq|                  return qq|
# Line 217  sub render_wrapper_class { Line 224  sub render_wrapper_class {
224          return qq|<div class="$class">| . $out . $self->render_buttons . qq|</div>|;          return qq|<div class="$class">| . $out . $self->render_buttons . qq|</div>|;
225  }  }
226    
 use Strix::User;  
   
227  sub _build_display_columns {  sub _build_display_columns {
228          my $self = shift;          my $self = shift;
229    
230          my $m = Strix::User->meta;          my $m = $self->fey_class->meta;
231    
232          my @cols;          my @cols;
233    
234          foreach ( $m->get_attribute_list ) {          foreach ( $m->get_attribute_list ) {
235                  my $attr = $m->get_attribute( $_ );                  my $attr = $m->get_attribute( $_ );
236                  warn ">> $_\n";                  warn "_build_display_columns $_\n" if $self->debug;
237                  # FIXME primary key would have to be read-only!                  # FIXME primary key would have to be read-only!
238                  push @cols, $_;                  push @cols, $_;
239          }          }
240    
241          warn "## display_columns ",dump( @cols );          warn "## display_columns ",dump( @cols ) if $self->debug;
242    
243          return \@cols;          return \@cols;
244  }  }

Legend:
Removed from v.98  
changed lines
  Added in v.111

  ViewVC Help
Powered by ViewVC 1.1.26