X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole%2FModel%2FCDBI.pm;h=a62c8fcde8d1e11b84213ef3a931a3339c4dfb19;hb=fcef7418a2171a0a7fb8302285f56b0331ba1a4a;hp=da6f16224c69b0d4073be5e3be66f38918182640;hpb=a183ff6bda2ae98ef8f4a4f979647052e0020dea;p=maypole.git diff --git a/lib/Maypole/Model/CDBI.pm b/lib/Maypole/Model/CDBI.pm index da6f162..a62c8fc 100644 --- a/lib/Maypole/Model/CDBI.pm +++ b/lib/Maypole/Model/CDBI.pm @@ -26,7 +26,7 @@ will instead use Class::DBI classes provided. use base qw(Maypole::Model::Base Class::DBI); use Maypole::Model::CDBI::AsForm; use CGI::Untaint::Maypole; - +use Class::DBI::Plugin::Type; use Class::DBI::FromCGI; use Class::DBI::Loader; use Class::DBI::AbstractSearch; @@ -36,6 +36,8 @@ use Class::DBI::Pager; use Lingua::EN::Inflect::Number qw(to_PL); use attributes (); +use Data::Dumper; + ############################################################################### # Helper methods @@ -112,7 +114,8 @@ sub _do_update_or_create { my $fatal; my $creating = 0; - my $h = CGI::Untaint::Maypole->new( %{$r->params} ); + + my $h = CGI::Untaint->new( %{$r->params} ); # update or create if ($obj) { @@ -158,10 +161,14 @@ This method replaces the, now deprecated, delete method provided in prior versio sub delete : Exported { my $self = shift; my ($sub) = (caller(1))[3]; + # So subclasses can still send delete down ... $sub =~ /^(.+)::([^:]+)$/; - # So subclasses can still send search down ... - return ($1 ne "Maypole::Model::Base" && $2 ne "delete") ? - $self->SUPER::search(@_) : $self->do_delete(@_); + if ($1 ne "Maypole::Model::Base" && $2 ne "delete") { + $self->SUPER::delete(@_); + } else { + warn "Maypole::Model::CDBI delete method is deprecated\n"; + $self->do_delete(@_); + } } sub do_delete { @@ -576,7 +583,9 @@ sub setup_database { ); $config->{classes} = [ $config->{loader}->classes ]; $config->{tables} = [ $config->{loader}->tables ]; - warn( 'Loaded tables: ' . join ',', @{ $config->{tables} } ) + + my @table_class = map { $_ . " => " . $config->{loader}->_table2class($_) } @{ $config->{tables} }; + warn( 'Loaded tables to classes: ' . join ', ', @table_class ) if $namespace->debug; }