storage manager: add option for storing files under original/ dir.
Add option to allow for storing original files under an `original/` subdir. Previously preview, crop, and sample files were stored under subdirs but original files were stored in the top-level directory. This is optional for backwards compatibility.
This commit is contained in:
@@ -3,14 +3,15 @@ class StorageManager
|
|||||||
|
|
||||||
DEFAULT_BASE_DIR = "#{Rails.root}/public/data"
|
DEFAULT_BASE_DIR = "#{Rails.root}/public/data"
|
||||||
|
|
||||||
attr_reader :base_url, :base_dir, :hierarchical, :tagged_filenames, :large_image_prefix
|
attr_reader :base_url, :base_dir, :hierarchical, :tagged_filenames, :large_image_prefix, :original_subdir
|
||||||
|
|
||||||
def initialize(base_url: default_base_url, base_dir: DEFAULT_BASE_DIR, hierarchical: false, tagged_filenames: Danbooru.config.enable_seo_post_urls, large_image_prefix: Danbooru.config.large_image_prefix)
|
def initialize(base_url: default_base_url, base_dir: DEFAULT_BASE_DIR, hierarchical: false, tagged_filenames: Danbooru.config.enable_seo_post_urls, large_image_prefix: Danbooru.config.large_image_prefix, original_subdir: "")
|
||||||
@base_url = base_url.chomp("/")
|
@base_url = base_url.chomp("/")
|
||||||
@base_dir = base_dir
|
@base_dir = base_dir
|
||||||
@hierarchical = hierarchical
|
@hierarchical = hierarchical
|
||||||
@tagged_filenames = tagged_filenames
|
@tagged_filenames = tagged_filenames
|
||||||
@large_image_prefix = large_image_prefix
|
@large_image_prefix = large_image_prefix
|
||||||
|
@original_subdir = original_subdir
|
||||||
end
|
end
|
||||||
|
|
||||||
def default_base_url
|
def default_base_url
|
||||||
@@ -62,7 +63,7 @@ class StorageManager
|
|||||||
elsif type == :large && post.has_large?
|
elsif type == :large && post.has_large?
|
||||||
"#{base_url}/sample/#{subdir}#{seo_tags}#{file}"
|
"#{base_url}/sample/#{subdir}#{seo_tags}#{file}"
|
||||||
else
|
else
|
||||||
"#{base_url}/#{subdir}#{seo_tags}#{post.md5}.#{post.file_ext}"
|
"#{base_url}/#{original_subdir}#{subdir}#{seo_tags}#{post.md5}.#{post.file_ext}"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user