[Jifty-commit] r6087 - jifty/trunk/lib/Jifty/View/Declare
Jifty commits
jifty-commit at lists.jifty.org
Wed Dec 10 09:33:09 EST 2008
Author: ruz
Date: Wed Dec 10 09:33:08 2008
New Revision: 6087
Modified:
jifty/trunk/lib/Jifty/View/Declare/Helpers.pm
Log:
* factor out page_class out of wrapper
* if page class is defined by attribute then require it loud
so developer can spot problem
Modified: jifty/trunk/lib/Jifty/View/Declare/Helpers.pm
==============================================================================
--- jifty/trunk/lib/Jifty/View/Declare/Helpers.pm (original)
+++ jifty/trunk/lib/Jifty/View/Declare/Helpers.pm Wed Dec 10 09:33:08 2008
@@ -127,15 +127,6 @@
=cut
sub wrapper {
- my $app_class = get_current_attr('PageClass') || 'View::Page';
- delete $Template::Declare::Tags::ATTRIBUTES{ 'PageClass' };
-
- my $page_class = Jifty->app_class( $app_class );
- $page_class = 'Jifty::View::Declare::Page'
- unless Jifty::Util->_require( module => $page_class, quiet => 0 );
- # XXX: fallback, this is ugly
- Jifty::Util->require( $page_class );
-
my $content_code = shift;
my $meta = shift;
my $page = $page_class->new({ content_code => $content_code, _meta => $meta });
@@ -164,6 +155,20 @@
}
}
+sub page_class {
+ my $hard_require = 0;
+ my $app_class = get_current_attr('PageClass');;
+ delete $Template::Declare::Tags::ATTRIBUTES{ 'PageClass' };
+ $hard_require = 1 if $app_class;
+
+ my $page_class = Jifty->app_class( $app_class || 'View::Page' );
+ $page_class = 'Jifty::View::Declare::Page'
+ unless Jifty::Util->_require( module => $page_class, quiet => !$hard_require );
+ # XXX: fallback, this is ugly
+ Jifty::Util->require( $page_class );
+ return $page_class;
+}
+
=head2 Forms and actions
=head3 form CODE
More information about the Jifty-commit
mailing list