/[transports]/trunk/lib/Transports/Dispatcher.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/Transports/Dispatcher.pm

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

revision 33 by dpavlin, Sat May 27 10:45:54 2006 UTC revision 57 by dpavlin, Mon Jun 5 15:09:51 2006 UTC
# Line 8  use Jifty::Dispatcher -base; Line 8  use Jifty::Dispatcher -base;
8    
9  =head1 Transports operations  =head1 Transports operations
10    
11  =head2 transports  =head2 /edit/42
   
 list of all transports  
   
 =cut  
   
 on 'transports', run {  
         my $transports = Transports::Model::TransportCollection->new();  
     $transports->unlimit();  
   
         set transports => $transports;  
 };  
   
 =head2 new  
12    
13  new transport  edit transport with request number C<42>
14    
15  =cut  =cut
16    
17  on 'new', run {  on qr'^/edit/(\d+)', run {
18          my $t = Jifty->web->new_action(          my $id = $1;
19                  class => 'CreateTransport',          my $t = Transports::Model::Transport->new();
20                  monkier => 'create',          $t->load_by_cols( id => $id );
21          );          Jifty->web->redirect( '/new' ) unless ( $t->id );
22    
23          set transport => $t;          set transport => Jifty->web->new_action( class => 'UpdateTransport', record => $t );
24            show('/edit');
25  };  };
26    
27  =head2 /edit/42  =head2 /import/42
28    
29  edit transport with request number C<42>  import transport with request number C<42>
30    
31  =cut  =cut
32    
33  on qr'^/edit/(\d+)', run {  on qr'^/import/(\d+)', run {
34          my $id = $1;          my $id = $1;
35          my $t = Transports::Model::Transport->new();          my $t = Transports::Model::Transport->new();
36          $t->load_by_cols( id => $id );          $t->load_by_cols( id => $id );
37          Jifty->web->redirect( '/new' ) unless ( $t->id );          Jifty->web->redirect( '/transports' ) unless ( $t->id );
38    
39          set transport => Jifty->web->new_action( class => 'UpdateTransport', record => $t );          set transport => Jifty->web->new_action( class => 'UpdateTransport', record => $t );
40          show('/edit');          show('/import');
41  };  };
42    
43  =head1 User operations  =head1 User operations
# Line 60  edit user with id C<42> Line 48  edit user with id C<42>
48    
49  =cut  =cut
50    
51  on qr'^/users?/?(\d*)', run {  on qr'^/user/(\d+)', run {
52          my $id = $1;          my $u = Transports::Model::User->new();
53            $u->load_by_cols( id => $1 );
54    
55            set user_id => $1;
56    
57            set user => Jifty->web->new_action(
58                    class => $u->id ? 'UpdateUser' : 'CreateUser',
59                    record => $u
60            );
61    
62          if ($id) {          show('/user_form');
                 my $u = Transports::Model::User->new();  
                 $u->load_by_cols( id => $id );  
   
                 set user_id => $id;  
   
                 set user => Jifty->web->new_action(  
                         class => $u->id ? 'UpdateUser' : 'CreateUser',  
                         record => $u  
                 );  
   
                 my $s = Transports::Model::UserOnSourceCollection->new;  
                 $s->limit(  
                         column          => 'user_on',  
                         value           => $id,  
                         quote_value     => 0,  
                 );  
                 $s->order_by( { column => 'source' } );  
                 set sources => $s;  
   
                 show('/user_form');  
         } else {  
                 my $u = Transports::Model::UserCollection->new();  
                 $u->unlimit();  
                 set users => $u;  
                 show('/users');  
         }  
63  };  };
64    
65  =head1 Login and logout operations  =head1 Login and logout operations
# Line 98  on qr'^/users?/?(\d*)', run { Line 68  on qr'^/users?/?(\d*)', run {
68    
69  =cut  =cut
70    
71  on 'login', run {  on qr'^/login(/.*)?$', run {
72    
73            my $return_url = $1 || '/';
74    
75      set 'action' =>      set 'action' =>
76          Jifty->web->new_action( class => 'Login', moniker => 'loginbox' );          Jifty->web->new_action( class => 'Login', moniker => 'loginbox' );
77      set 'next' => Jifty->web->request->continuation      set 'next' => Jifty->web->request->continuation
78          || Jifty::Continuation->new(          || Jifty::Continuation->new(
79          request => Jifty::Request->new( path => "/" ) );          request => Jifty::Request->new( path => $return_url ) );
80            show '/login';
81  };  };
82    
83  =head2 logout  =head2 logout

Legend:
Removed from v.33  
changed lines
  Added in v.57

  ViewVC Help
Powered by ViewVC 1.1.26