2.12 October 2006
Fixed some db_colinfo test bugs
Fixed typo in edit form template
- Now uses Class::C3 in all Classes to simplify inheritence
Inheritence simpler and nicer and less hacked
add_model_superclass method moves @ISA munging into the model
new Class::DBI::DFV based model
change to view::base to only call display_columns, stringify_columns, to_cgi if model class can
changed template path to only look for custom, factory, etc on first/only path provided
+2.111 Mon 30 April 2007
+ - forked - see 2.111 changelog
+
2.11 Mon 31 July 2006
SVN revision 519
Digest::MD5 => 0,
File::MMagic::XS => 0.08,
Class::DBI::Plugin::Type => 0,
- Class::C3 => 0.14,
}, # e.g., Module::Name => 1.1
(
$] >= 5.005
package Maypole;
-use Class::C3;
use base qw(Class::Accessor::Fast Class::Data::Inheritable);
use UNIVERSAL::require;
use strict;
$self->params->{$key} = $new_val;
}
- return ref $val ? @$val : ($val) if wantarray;
+ return (ref $val eq 'ARRAY') ? @$val : ($val) if wantarray;
- return ref $val ? $val->[0] : $val;
+ return (ref $val eq 'ARRAY') ? $val->[0] : $val;
}
\r
=head2 Ouch, that's a lot of inheritence!\r
\r
-Yes, that's a lot of inheritence, fortunately as of 2.12 Maypole uses\r
-L<Class::C3> to ensure sane method resolution.\r
+Yes, that's a lot of inheritence, at some point in the future - probably Maypole 3.x we\r
+will move to Class::C3\r
\r
=head2 What about Maypole::Application - loading plugins\r
\r
\r
=head3 Features\r
\r
-*REWRITE BASED ON C3 and push instead of shift*\r
-\r
1. Non-Maypole applications using the Offline model are completely isolated from\r
the Maypole application, and need not know it exists at all.\r
\r
package Maypole::Model::Base;
use strict;
-use Class::C3;
use Maypole::Constants;
use attributes ();
=cut
use base qw(Maypole::Model::CDBI::Base);
-use Class::C3;
use Data::Dumper;
use Class::DBI::Loader;
use attributes ();
package Maypole::Model::CDBI::AsForm;
-
-use Class::C3;
use strict;
use warnings;
package Maypole::Model::CDBI::Base;
use strict;
-use Class::C3;
=head1 NAME
=cut
-use Class::C3;
use Data::FormValidator;
use Data::Dumper;
=cut
-use Class::C3;
use Maypole::Config;
use base 'Maypole::Model::CDBI::Base';
package Maypole::View::Base;
-use Class::C3;
use File::Spec;
use UNIVERSAL::moniker;
use strict;
package Maypole::View::TT;
-use Class::C3;
use base 'Maypole::View::Base';
use Maypole::Constants;
use Template;
[%
MACRO link(table, command, additional, label) BLOCK;
SET lnk = base _ "/" _ table _ "/" _ command _ "/" _ additional;
- lnk = lnk | uri | html;
+ lnk = lnk | uri ;
'<a href="' _ lnk _ '">';
label | html;
"</a>";