r23441@martha (orig r923): groditi | 2008-10-23 22:00:04 -0400
[catagits/Reaction.git] / lib / Reaction / UI / Widget / SiteLayout.pm
CommitLineData
8a293e2e 1package Reaction::UI::Widget::SiteLayout;
2
3use Reaction::UI::WidgetClass;
4use aliased 'Reaction::UI::Widget::Container';
659899df 5use MooseX::Types::Moose 'HashRef';
8a293e2e 6
bae75bee 7use namespace::clean -except => [ qw(meta) ];
8extends Container;
414f3276 9
bae75bee 10after fragment widget {
11 arg static_base => $_{viewport}->static_base_uri;
12 arg title => $_{viewport}->title;
8a293e2e 13};
14
bae75bee 15implements fragment meta_info {
16 my $self = shift;
17 if ( $_{viewport}->meta_info->{'http_header'} ) {
1ef7b9da 18 my $http_header = delete $_{viewport}->meta_info->{'http_header'};
19 arg 'http_header' => $http_header;
20 render 'meta_http_header' => over [keys %$http_header];
bae75bee 21 }
22 render 'meta_member' => over [keys %{$_{viewport}->meta_info}];
23};
24
25implements fragment meta_http_header {
26 arg 'meta_name' => $_;
1ef7b9da 27 arg 'meta_value' => $_{'http_header'}->{$_};
bae75bee 28};
29
30implements fragment meta_member {
31 arg 'meta_name' => $_;
32 arg 'meta_value' => $_{viewport}->meta_info->{$_};
33};
34
35__PACKAGE__->meta->make_immutable;
36
37
8a293e2e 381;