fixed 文件增加是否文本判断,可显示多种文本文件

This commit is contained in:
xxq250 2023-10-10 14:17:08 +08:00
parent 0357f963ff
commit 5a28204b12
2 changed files with 8 additions and 1 deletions

View File

@ -19,6 +19,10 @@ module RepositoriesHelper
default_type.include?(str.to_s.gsub("\r", "").downcase)
end
def is_text_file?(entry)
entry['is_text_file']
end
def is_readme?(type, str)
return false if type != 'file' || str.blank?
readme_types = ["readme.md", "readme", "readme_en.md", "readme_zh.md", "readme_en", "readme_zh"]
@ -232,6 +236,8 @@ module RepositoriesHelper
# Rails.logger.info("content===#{content}")
return Base64.decode64(content).force_encoding("GBK").encode("UTF-8") unless Base64.decode64(content).force_encoding('UTF-8').valid_encoding?
return Base64.decode64(content).force_encoding('UTF-8')
elsif entry['is_text_file'] == true
return render_decode64_content(entry['content'])
else
file_type = File.extname(entry['name'].to_s)[1..-1]
if image_type?(file_type)

View File

@ -2,7 +2,8 @@ if @project.forge?
is_dir = @sub_entries.is_a?(Array)
file_name = entry['name']
file_type = file_name.starts_with?('.') ? file_name[1..-1] : File.extname(file_name.to_s)[1..-1]
direct_download = %w(makefile dockerfile readme).exclude?(file_name.to_s.downcase) && download_type(file_type)
# direct_download = %w(makefile dockerfile readme).exclude?(file_name.to_s.downcase) && download_type(file_type)
direct_download = entry['is_text_file'] == true ? false : true
image_type = image_type?(file_type)
json.name file_name
json.sha entry['sha']