/[Frey]/trunk/lib/Frey/ORM/Browser.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

Annotation of /trunk/lib/Frey/ORM/Browser.pm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 83 - (hide annotations)
Thu Jul 10 15:41:17 2008 UTC (15 years, 10 months ago) by dpavlin
Original Path: trunk/lib/Frey/ObjectBrowser.pm
File size: 1685 byte(s)
nit-pick cleanup
1 dpavlin 60 package Frey::ObjectBrowser;
2     use Moose;
3     use MooseX::Method;
4    
5     extends 'Frey';
6    
7     my @callbacks;
8    
9     sub gen_link {
10     my ($text, $code) = @_;
11     push @callbacks, $code;
12     return qq{<a href="?cb=$#callbacks">$text</a>};
13     }
14    
15     sub process_links {
16     my $request = shift;
17     my $cb = $request->param('cb');
18     if (exists $callbacks[$cb]) {
19     $callbacks[$cb]->($request);
20     delete $callbacks[$cb];
21     }
22     }
23    
24 dpavlin 68 #use Data::Dumper;
25     #$Data::Dumper::Deparse = 1;
26     use Data::Dump qw/dump/;
27     use Data::Structure::Util qw(unbless);
28 dpavlin 60
29 dpavlin 72
30 dpavlin 60 #method 'html' => positional(
31     # isa => 'Continuity::RequestHolder',
32     # required => 1,
33     #) => sub {
34     sub html {
35     my ( $self, $req ) = @_;
36    
37 dpavlin 68 use Strix::User;
38     use Strix::View::User;
39 dpavlin 60
40 dpavlin 68 my $s = Strix::User->rows();
41 dpavlin 83 #warn "# s = ",dump( $s );
42 dpavlin 68
43     my @w;
44    
45     while ( my $u = $s->next ) {
46 dpavlin 82 my $w = Strix::View::User->new( %{ $u } );
47 dpavlin 72 $w->_fey( $u );
48 dpavlin 82 warn "# w = ",dump( $w ) if $self->debug;
49 dpavlin 68 push @w, $w;
50     }
51    
52 dpavlin 83 my $f = { $req->params };
53    
54 dpavlin 68 while ( 1 ) {
55 dpavlin 75
56 dpavlin 82 warn "# got $#w elements: ",dump( map { $_->id } @w );
57     warn "<<< GOT REQUEST ",dump( $f );
58 dpavlin 75
59 dpavlin 82 warn "does last element have id? ",dump( $w[$#w]->id );
60    
61     if ( $w[ $#w ]->_fey ) {
62     warn "+++ added new widget\n";
63     push @w, Strix::View::User->new( render_as => 'edit' );
64     }
65    
66     my $form = join('<hr/>', map { $_->process($f) || '[deleted]' } @w );
67 dpavlin 72 my $doc = Continuity::Widget::DomNode->create(
68     html => [
69     head => [
70 dpavlin 78 link => { rel=>"stylesheet", href=>"/static/form.css", type=>"text/css" }
71 dpavlin 72 ],
72     body => [
73     h1 => [ 'Strix::User' ],
74     form => { method=>'post' } => [
75 dpavlin 75 $form,
76 dpavlin 72 ],
77     ],
78     ]
79     );
80    
81     $req->print( $doc->to_string );
82 dpavlin 68 $req->next;
83 dpavlin 72
84     $f = { $req->params };
85 dpavlin 68 }
86    
87     warn "NO WAY OUT!";
88 dpavlin 60 };
89    
90     1;

  ViewVC Help
Powered by ViewVC 1.1.26