*** lib/TWiki.pm 2005-09-05 18:20:25.000000000 +0200 --- lib/TWiki.pm.new 2005-09-05 18:20:08.000000000 +0200 *************** *** 855,871 **** $lastModifiedDate = time(); } if ($lastModifiedDate) { ! my $lastModifiedDateString = &formatTime($lastModifiedDate, '\$http'); if ($expirationLastDateOffset) { my $expirationDateString = &formatTime($lastModifiedDate + ! ($viewForce ? 0 : $expirationLastDateOffset), ! '\$http'); ! writeDebug("viewForce=$viewForce, ! lastModifiedDateString=$lastModifiedDateString, expirationDateString=$expirationDateString"); $coreHeaders = $query->header( -content_type => $contentType, -last_modified => $lastModifiedDateString, -expires => $expirationDateString, ); } else { $coreHeaders = $query->header( --- 855,872 ---- $lastModifiedDate = time(); } if ($lastModifiedDate) { ! my $lastModifiedDateString = &formatTime($lastModifiedDate, ! '\$http', "gmtime"); if ($expirationLastDateOffset) { + my $expireSeconds = ($viewForce ? 0 : $expirationLastDateOffset); my $expirationDateString = &formatTime($lastModifiedDate + ! $expireSeconds, ! '\$http', "gmtime"); $coreHeaders = $query->header( -content_type => $contentType, -last_modified => $lastModifiedDateString, -expires => $expirationDateString, + -cache_control => "max-age=$expireSeconds", ); } else { $coreHeaders = $query->header( *************** *** 983,1000 **** sub redirect { my( $query, $url ) = @_; ! if ($url !~ /viewauth/) { ! # view = fview to force refresh ! my $olds = $dispScriptUrlPath . $dispViewPath; ! my $news = $dispScriptUrlPath . $dispViewPath . "f"; ! $url =~ s|$olds|$news|; } if( ! &TWiki::Plugins::redirectCgiQueryHandler( $query, $url ) ) { print $query->redirect( $url ); } } - =pod ---++ getEmailNotifyList( $webName, $topicName ) --- 984,1004 ---- sub redirect { my( $query, $url ) = @_; ! # adds a time parameter to view urls to force refresh on redirects ! if ($url =~ /$dispScriptUrlPath$dispViewPath/) { ! if ($url =~ /[?]/) { ! if ($url !~ /[?&]t=/ ) { # do not add if already there ! $url .= sprintf("&t=%x" ,time()); ! } ! } else { ! $url .= sprintf("?t=%x" ,time()); ! } } if( ! &TWiki::Plugins::redirectCgiQueryHandler( $query, $url ) ) { print $query->redirect( $url ); } } =pod ---++ getEmailNotifyList( $webName, $topicName )