diff --git a/docs/changelog/7.x.x.txt b/docs/changelog/7.x.x.txt index 8ebb8ecc6..fdd80d916 100644 --- a/docs/changelog/7.x.x.txt +++ b/docs/changelog/7.x.x.txt @@ -2,7 +2,8 @@ - added date pagination, and some formatting to EMS Schedule table - Removed dubious 3px padding around image based ads in an adspace. - Stats now send over SSL rather than straight HTTP. - - epoch for calendar/List View for Calendar (#8914) + - fixed #8914: epoch for calendar/List View for Calendar + - fixed #10044: Gallery: Javascript, CSS included in body 7.7.7 - Added EMS Schedule table diff --git a/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm b/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm index bb5ee0f5c..78003e957 100644 --- a/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm +++ b/lib/WebGUI/Asset/Wobject/GalleryAlbum.pm @@ -777,13 +777,15 @@ sub sendChunkedContent { my $self = shift; my $callback = shift; - $self->session->http->setLastModified($self->getContentLastModified); - $self->session->http->sendHeader; + my $session = $self->session; + + $session->http->setLastModified($self->getContentLastModified); + $session->http->sendHeader; my $style = $self->processStyle($self->getSeparator); my ($head, $foot) = split($self->getSeparator,$style); - $self->session->output->print($head, 1); - $self->session->output->print( $callback->() ); - $self->session->output->print($foot, 1); + $session->output->print($head, 1); + $session->output->print( $callback->() ); + $session->output->print($foot, 1); return "chunked"; } @@ -836,11 +838,8 @@ Show a slideshow of the GalleryAlbum's files. sub view_slideshow { my $self = shift; my $session = $self->session; - my $var = $self->getTemplateVars; - - $self->appendTemplateVarsFileLoop( $var, $self->getFileIds ); - - return $self->processTemplate($var, $self->getParent->get("templateIdViewSlideshow")); + my $var = delete $self->{_templateVars}; + return $self->processTemplate($var, $self->getParent->get("templateIdViewSlideshow"), $self->{_preparedTemplate}); } #---------------------------------------------------------------------------- @@ -858,12 +857,10 @@ about a specific thumbnail. sub view_thumbnails { my $self = shift; my $session = $self->session; - my $var = $self->getTemplateVars; + my $var = delete $self->{_templateVars}; my $fileId = $session->form->get("fileId"); - $self->appendTemplateVarsFileLoop( $var, $self->getFileIds ); - # Process the file loop to add an additional URL for my $file ( @{ $var->{file_loop} } ) { $file->{ url_albumViewThumbnails } @@ -1359,6 +1356,15 @@ sub www_slideshow { my $check = $self->checkView; return $check if (defined $check); + + $self->{_templateVars} = $self->getTemplateVars; + $self->appendTemplateVarsFileLoop( $self->{_templateVars}, $self->getFileIds ); + + my $templateId = $self->getParent->get('templateIdViewSlideshow'); + my $template = WebGUI::Asset::Template->new($self->session, $templateId); + $template->prepare($self->getMetaDataAsTemplateVariables); + $self->{_preparedTemplate} = $template; + return $self->sendChunkedContent( sub { $self->view_slideshow } ); } @@ -1374,6 +1380,14 @@ sub www_thumbnails { my $self = shift; my $check = $self->checkView; return $check if (defined $check); + $self->{_templateVars} = $self->getTemplateVars; + $self->appendTemplateVarsFileLoop($self->{_templateVars}, $self->getFileIds); + + my $templateId = $self->getParent->get('templateIdViewThumbnails'); + my $template = WebGUI::Asset::Template->new($self->session, $templateId); + $template->prepare($self->getMetaDataAsTemplateVariables); + $self->{_preparedTemplate} = $template; + return $self->sendChunkedContent( sub { $self->view_thumbnails } ); }