From f2032b2d01f9c3d1244511141ab46a87d0d20dff Mon Sep 17 00:00:00 2001 From: Yung Han Khoe Date: Tue, 15 Jul 2008 01:38:27 +0000 Subject: [PATCH] fixed: Gallery reverts to undeletable bare asset if created with default view "Single Album" --- docs/changelog/7.x.x.txt | 2 ++ lib/WebGUI/Asset/Wobject/Gallery.pm | 16 +++++++++++----- lib/WebGUI/i18n/English/Asset_Gallery.pm | 2 +- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index 4d39937c0..240841e29 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -10,6 +10,8 @@ - fixed: Email Receipt after Successful Checkout - fixed: DataForm captcha doesn't show up - fixed: edit branch only changes meta data fields if another value is changed + - fixed: Gallery reverts to undeletable bare asset if created with default + view "Single Album" 7.5.16 - Created a migration from 7.4.40 directly to 7.5.16. diff --git a/lib/WebGUI/Asset/Wobject/Gallery.pm b/lib/WebGUI/Asset/Wobject/Gallery.pm index 09fe68928..c7430536d 100644 --- a/lib/WebGUI/Asset/Wobject/Gallery.pm +++ b/lib/WebGUI/Asset/Wobject/Gallery.pm @@ -52,7 +52,7 @@ sub definition { list => $i18n->get("viewDefault option list"), album => $i18n->get("viewDefault option album"), ); - + tie my %viewListOrderByOptions, 'Tie::IxHash', ( creationDate => $i18n->get("viewListOrderBy option creationDate"), lineage => $i18n->get("viewListOrderBy option lineage"), @@ -919,11 +919,17 @@ sub prepareView { my $self = shift; $self->SUPER::prepareView(); - if ( $self->get("viewDefault") eq "album" ) { + if ( $self->get("viewDefault") eq "album" && $self->get("viewAlbumAssetId") && $self->get("viewAlbumAssetId") +ne 'PBasset000000000000001') { my $asset = WebGUI::Asset->newByDynamicClass( $self->session, $self->get("viewAlbumAssetId") ); - $asset->prepareView; - $self->{_viewAsset} = $asset; + if ($asset) { + $asset->prepareView; + $self->{_viewAsset} = $asset; + } + else { + $self->prepareViewListAlbums; + } } else { $self->prepareViewListAlbums; @@ -959,7 +965,7 @@ sub view { my $session = $self->session; my $var = $self->get; - if ( $self->get("viewDefault") eq "album" ) { + if ( $self->get("viewDefault") eq "album" && $self->{_viewAsset}) { return $self->{_viewAsset}->view; } else { diff --git a/lib/WebGUI/i18n/English/Asset_Gallery.pm b/lib/WebGUI/i18n/English/Asset_Gallery.pm index 8ce7162bf..7c86a0385 100644 --- a/lib/WebGUI/i18n/English/Asset_Gallery.pm +++ b/lib/WebGUI/i18n/English/Asset_Gallery.pm @@ -323,7 +323,7 @@ our $I18N = { context => '', }, "viewAlbumAssetId description" => { - message => "The album to view when the default view is 'Album'", + message => "The album to view when the default view is 'Single Album'", lastUpdated => 0, context => '', },