3 |
use MooseX::Method; |
use MooseX::Method; |
4 |
|
|
5 |
extends 'Frey'; |
extends 'Frey'; |
6 |
|
with 'Frey::Web'; |
7 |
|
|
8 |
my @callbacks; |
my @callbacks; |
9 |
|
|
46 |
my @w; |
my @w; |
47 |
|
|
48 |
while ( my $u = $s->next ) { |
while ( my $u = $s->next ) { |
49 |
my $w = Frey::Web::Row->new( _fey => $u, _layout => $layout ); |
my $w = Frey::Web::Row->new( fey => $u, layout => $layout ); |
50 |
warn "# w = ",dump( $w ) if $self->debug; |
warn "# w = ",dump( $w ) if $self->debug; |
51 |
push @w, $w; |
push @w, $w; |
52 |
} |
} |
66 |
$rows_delimiter = '<hr/>' if $layout eq 'div'; |
$rows_delimiter = '<hr/>' if $layout eq 'div'; |
67 |
|
|
68 |
my $form = join($rows_delimiter, map { |
my $form = join($rows_delimiter, map { |
69 |
$_->_layout( $layout ); |
$_->layout( $layout ); # FIXME do we need this still? |
70 |
$_->process($f) || '' |
$_->process($f) || '' |
71 |
} @w ); |
} @w ); |
72 |
|
|
73 |
if ( $w[ $#w ]->_fey ) { |
if ( $w[ $#w ]->fey ) { |
74 |
warn "+++ added new item widget\n"; |
warn "+++ added new item widget\n"; |
75 |
my $w = Frey::Web::Row->new( _render_as => 'edit', _layout => $layout ); |
my $w = Frey::Web::Row->new( render_as => 'edit', layout => $layout ); |
76 |
$form .= $rows_delimiter . $w->process; |
$form .= $rows_delimiter . $w->process; |
77 |
push @w, $w; |
push @w, $w; |
78 |
} |
} |
101 |
qq|</div>|, |
qq|</div>|, |
102 |
); |
); |
103 |
|
|
104 |
my $doc = Continuity::Widget::DomNode->create( |
my $html = dom2html( |
105 |
html => [ |
html => [ |
106 |
head => [ |
head => [ |
107 |
link => { rel=>"stylesheet", href=>"/static/form.css", type=>"text/css" } |
link => { rel=>"stylesheet", href=>"/static/form.css", type=>"text/css" } |
114 |
], |
], |
115 |
], |
], |
116 |
] |
] |
117 |
)->to_string; |
); |
118 |
|
|
119 |
warn ">>> $layout ",length( $doc ),"\n"; |
warn ">>> $layout ",length( $html ),"\n"; |
120 |
|
|
121 |
$req->print( $doc ); |
$req->print( $html ); |
122 |
$req->next; |
$req->next; |
123 |
|
|
124 |
$f = { $req->params }; |
$f = { $req->params }; |