/[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 26 by dpavlin, Fri May 26 19:29:07 2006 UTC revision 72 by dpavlin, Mon Jun 12 03:44:50 2006 UTC
# Line 6  use Jifty::Dispatcher -base; Line 6  use Jifty::Dispatcher -base;
6  #    redirect( '/new');  #    redirect( '/new');
7  #};  #};
8    
9  on '/transports', run {  =head1 Login and logout operations
         my $transports = Transports::Model::TransportCollection->new();  
     $transports->unlimit();  
10    
11          set transports => $transports;  =head2 login
 };  
   
 on '/new', run {  
         my $t = Jifty->web->new_action(  
                 class => 'CreateTransport',  
                 monkier => 'create',  
         );  
12    
13          set transport => $t;  =cut
         set viewer => Jifty->web->new_action( class => 'UpdateTransport', record => $t );  
 };  
14    
15  on qr'/edit/(\d+)', run {  on qr'^/login(/.*)?$', run {
         my $id = $1;  
         my $t = Transports::Model::Transport->new();  
         $t->load_by_cols( id => $id );  
         Jifty->web->redirect( '/new' ) unless ( $t->id );  
   
         set transport => Jifty->web->new_action( class => 'UpdateTransport', record => $t );  
         show('/edit');  
 };  
16    
17            my $return_url = $1 || '/';
18    
 # Login  
 on 'login', run {  
19      set 'action' =>      set 'action' =>
20          Jifty->web->new_action( class => 'Login', moniker => 'loginbox' );          Jifty->web->new_action( class => 'Login', moniker => 'loginbox' );
21      set 'next' => Jifty->web->request->continuation      set 'next' => Jifty->web->request->continuation
22          || Jifty::Continuation->new(          || Jifty::Continuation->new(
23          request => Jifty::Request->new( path => "/" ) );          request => Jifty::Request->new( path => $return_url ) );
24            show '/login';
25  };  };
26    
27  # Log out  =head2 logout
28    
29    =cut
30    
31  before 'logout', run {  before 'logout', run {
32      Jifty->web->request->add_action(      Jifty->web->request->add_action(
33          moniker => 'logout',          moniker => 'logout',
# Line 56  before 'logout', run { Line 40  before 'logout', run {
40  # able to edit files in place.  These should become a plugin of some  # able to edit files in place.  These should become a plugin of some
41  # sort, when we have that infrastructure.  # sort, when we have that infrastructure.
42    
43  before '*', run {  before qr'^(.*)$', run {
44      Jifty->api->allow(qr/^Jifty::Action::Devel/)          my $url = $1 || '/';
45    
46            Jifty->api->allow(qr/^Jifty::Action::Devel/)
47        if Jifty->config->framework('DevelMode');        if Jifty->config->framework('DevelMode');
48    
49            return if ($url eq '/' || $url =~ m#^/login#);
50    
51            if (not Jifty->web->current_user->id) {
52                    redirect( '/login' . $url );
53            }
54  };  };
55    
56  on qr'^/__jifty/edit/(.*?)/(.*)$', run {  on qr'^/__jifty/edit/(.*?)/(.*)$', run {

Legend:
Removed from v.26  
changed lines
  Added in v.72

  ViewVC Help
Powered by ViewVC 1.1.26