Check the Asset, not the class, and make sure it is loaded.

This commit is contained in:
Colin Kuskie 2010-03-23 11:54:19 -07:00
parent 4a78377936
commit 22bbf2e23c
3 changed files with 49 additions and 25 deletions

View file

@ -72,6 +72,7 @@ sub addChild {
my $now = shift || $session->datetime->time();
my $options = shift;
# Check for valid parentage using validParent on child's class
WebGUI::Asset->loadModule($properties->{className});
if (! $properties->{className}->validParent($session, $self)) {
return undef;
}
@ -997,9 +998,8 @@ sub validParent {
my $session = shift;
my $asset = shift || $session->asset;
my $parent_classes = $class->valid_parent_classes;
my $valid_parent = 0;
foreach my $parentClass (@{ $class->valid_parent_classes}) {
return 1 if $class->isa($parentClass);
return 1 if $asset->isa($parentClass);
}
return 0;
}