From 2f4d9079f06ebd5133b146c5d655f8b4b0a388bb Mon Sep 17 00:00:00 2001 From: Graham Knop Date: Mon, 6 Apr 2009 19:38:37 +0000 Subject: [PATCH] unset package flag recursively during upgrades --- docs/upgrades/_upgrade.skeleton | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/docs/upgrades/_upgrade.skeleton b/docs/upgrades/_upgrade.skeleton index d438b97b7..39827f7d6 100644 --- a/docs/upgrades/_upgrade.skeleton +++ b/docs/upgrades/_upgrade.skeleton @@ -60,21 +60,19 @@ sub addPackage { # Import the package into the import node my $package = WebGUI::Asset->getImportNode($session)->importPackage( $storage ); - # Make the package not a package anymore - $package->update({ isPackage => 0 }); - - # Set the default flag for templates added - my $assetIds - = $package->getLineage( ['self','descendants'], { - includeOnlyClasses => [ 'WebGUI::Asset::Template' ], - } ); + # Turn off the package flag, and set the default flag for templates added + my $assetIds = $package->getLineage( ['self','descendants'] ); for my $assetId ( @{ $assetIds } ) { my $asset = WebGUI::Asset->newByDynamicClass( $session, $assetId ); if ( !$asset ) { print "Couldn't instantiate asset with ID '$assetId'. Please check package '$file' for corruption.\n"; next; } - $asset->update( { isDefault => 1 } ); + my $properties = { isPackage => 0 }; + if ($asset->isa('WebGUI::Asset::Template')) { + $properties->{isDefault} = 1; + } + $asset->update( $properties ); } return;