mirror of
https://github.com/neocities/neocities.git
synced 2025-04-25 09:42:36 +02:00
Flush cache on surf pages
This commit is contained in:
parent
e4c88688e7
commit
351816c154
2 changed files with 10 additions and 2 deletions
|
@ -591,7 +591,11 @@ class Site < Sequel::Model
|
|||
# We gotta flush the dirname too if it's an index file.
|
||||
if relative_path != '' && relative_path.match(/\/$|index\.html?$/i)
|
||||
PurgeCacheOrderWorker.perform_async username, relative_path
|
||||
PurgeCacheOrderWorker.perform_async username, Pathname(relative_path).dirname.to_s
|
||||
|
||||
purge_file_path = Pathname(relative_path).dirname.to_s
|
||||
|
||||
PurgeCacheOrderWorker.perform_async username, '/?surf=1' if purge_file_path == '/'
|
||||
PurgeCacheOrderWorker.perform_async username, purge_file_path
|
||||
else
|
||||
PurgeCacheOrderWorker.perform_async username, relative_path
|
||||
end
|
||||
|
|
|
@ -107,13 +107,17 @@ describe 'site_files' do
|
|||
@site.title.must_equal 'Hello?'
|
||||
|
||||
# Purge cache needs to flush / and index.html for either scenario.
|
||||
PurgeCacheOrderWorker.jobs.length.must_equal 2
|
||||
PurgeCacheOrderWorker.jobs.length.must_equal 3
|
||||
first_purge = PurgeCacheOrderWorker.jobs.first
|
||||
surf_purge = PurgeCacheOrderWorker.jobs[1]
|
||||
dirname_purge = PurgeCacheOrderWorker.jobs.last
|
||||
|
||||
username, pathname = first_purge['args']
|
||||
username.must_equal @site.username
|
||||
pathname.must_equal '/index.html'
|
||||
|
||||
surf_purge['args'].last.must_equal '/?surf=1'
|
||||
|
||||
username, pathame = nil
|
||||
username, pathname = dirname_purge['args']
|
||||
username.must_equal @site.username
|
||||
|
|
Loading…
Add table
Reference in a new issue