mirror of
https://github.com/neocities/neocities.git
synced 2025-04-25 01:32:36 +02:00
delete returns to directory user was in
This commit is contained in:
parent
704011a1c0
commit
e08a1362e1
2 changed files with 21 additions and 3 deletions
|
@ -87,9 +87,12 @@ end
|
||||||
post '/site_files/delete' do
|
post '/site_files/delete' do
|
||||||
require_login
|
require_login
|
||||||
current_site.delete_file params[:filename]
|
current_site.delete_file params[:filename]
|
||||||
|
|
||||||
flash[:success] = "Deleted #{params[:filename]}."
|
flash[:success] = "Deleted #{params[:filename]}."
|
||||||
redirect '/dashboard'
|
|
||||||
|
dirname = Pathname(params[:filename]).dirname
|
||||||
|
dir_query = dirname.nil? || dirname.to_s == '.' ? '' : "?dir=#{Rack::Utils.escape dirname}"
|
||||||
|
|
||||||
|
redirect "/dashboard#{dir_query}"
|
||||||
end
|
end
|
||||||
|
|
||||||
get '/site_files/:username.zip' do |username|
|
get '/site_files/:username.zip' do |username|
|
||||||
|
|
|
@ -32,7 +32,7 @@ describe 'site_files' do
|
||||||
SiteFile[site_id: @site.id, path: 'test.jpg'].must_be_nil
|
SiteFile[site_id: @site.id, path: 'test.jpg'].must_be_nil
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'deletes all files in a directory' do
|
it 'deletes a directory and all files in it' do
|
||||||
upload(
|
upload(
|
||||||
'dir' => 'test',
|
'dir' => 'test',
|
||||||
'files[]' => Rack::Test::UploadedFile.new('./tests/files/test.jpg', 'image/jpeg')
|
'files[]' => Rack::Test::UploadedFile.new('./tests/files/test.jpg', 'image/jpeg')
|
||||||
|
@ -45,6 +45,21 @@ describe 'site_files' do
|
||||||
@site.site_files.select {|f| f.path =~ /^test\//}.length.must_equal 0
|
@site.site_files.select {|f| f.path =~ /^test\//}.length.must_equal 0
|
||||||
@site.site_files.select {|f| f.path =~ /^test/}.length.must_equal 1
|
@site.site_files.select {|f| f.path =~ /^test/}.length.must_equal 1
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'goes back to deleting directory' do
|
||||||
|
upload(
|
||||||
|
'dir' => 'test',
|
||||||
|
'files[]' => Rack::Test::UploadedFile.new('./tests/files/test.jpg', 'image/jpeg')
|
||||||
|
)
|
||||||
|
delete_file filename: 'test/test.jpg'
|
||||||
|
last_response.headers['Location'].must_equal "http://example.org/dashboard?dir=test"
|
||||||
|
|
||||||
|
upload(
|
||||||
|
'files[]' => Rack::Test::UploadedFile.new('./tests/files/test.jpg', 'image/jpeg')
|
||||||
|
)
|
||||||
|
delete_file filename: 'test.jpg'
|
||||||
|
last_response.headers['Location'].must_equal "http://example.org/dashboard"
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe 'upload' do
|
describe 'upload' do
|
||||||
|
|
Loading…
Add table
Reference in a new issue