/[Frey]/trunk/lib/App/RoomReservation.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/App/RoomReservation.pm

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

revision 1098 by dpavlin, Sun Jun 28 22:14:22 2009 UTC revision 1161 by dpavlin, Thu Jul 2 16:53:39 2009 UTC
# Line 3  use Moose; Line 3  use Moose;
3    
4  extends 'Frey';  extends 'Frey';
5  with 'Frey::Web';  with 'Frey::Web';
 #with 'Frey::Storage';  
6    
7  use lib 'lib';  use lib 'lib';
8  use App::RoomReservation::Room;  use App::RoomReservation::Room;
9    
10    sub room {
11            App::RoomReservation::Room->new;
12    }
13    
14    sub form_header {
15            my $self = shift;
16            $self->room->description;
17    }
18    
19    sub form_footer {
20            qq|
21                    <div style="font-size:75%; color: #888; clear: left;">
22                    Insert some standard disclamer for every page here
23                    </div>
24            |;
25    }
26    
27  sub dsn { 'DBI:Pg:dbname=room-reservation' }  sub dsn { 'DBI:Pg:dbname=room-reservation' }
28    
29    =head1 DEPLOY
30    
31     createdb --encoding=utf-8 room-reservation
32    
33     perl -Ilib -MFrey::Class::Schematize \
34            -e 'print Frey::Class::Schematize->new( class => "App::RoomReservation::Reservation" )->create_table,$/;' \
35            | psql room-reservation
36    
37    =cut
38    
39  our $dbh;  our $dbh;
40  sub dbh {  sub dbh {
41          my ($self) = @_;          my ($self) = @_;
# Line 25  sub dbh { Line 51  sub dbh {
51  sub as_markup {  sub as_markup {
52          my ($self) = @_;          my ($self) = @_;
53    
54          App::RoomReservation::Room->new->room_markup  
55          . qq|<a target="App::RoomReservation::Reservation" href="/App::RoomReservation::Reservation/create_as_markup">seat reservation</a>|          my $url = $self->url_for( 'Reservation/create_as_markup' );
56          ;  
57            return
58                    $self->room->room_as_markup
59                    . qq|<a target="App::RoomReservation::Reservation" href="$url">seat reservation</a>|
60                    ;
61    }
62    
63    # my $url = $self->uri_for( 'Reservation/create_as_makrup' );
64    
65    sub url_for {
66            my ( $self, $to ) = @_;
67            my $app = ref($self);
68            $app =~ s{^(App::[^:]+)::.+$}{$1};
69            $app .= '::' . $to;
70    
71            my ( $class, $method ) = split(m{/}, $app);
72            $method =~ s{\?.+$}{};  # remove arguments
73            Class::MOP::load_class( $class );
74            die "$class doesn't implement $method" unless $class->meta->has_method($method);
75    
76            return
77                    $self->request_url->scheme . '://' . $self->request_url->authority . '/' . $app;
78  }  }
79    
80    __PACKAGE__->meta->make_immutable;
81    no Moose;
82    
83  1;  1;

Legend:
Removed from v.1098  
changed lines
  Added in v.1161

  ViewVC Help
Powered by ViewVC 1.1.26