Files
mozo-backend/bin/user_asset_corrections
T

50 lines
1.2 KiB
Ruby

#!/usr/bin/env ruby
start_time = Time.now
require 'active_support/all'
require 'uglifier'
require 'fileutils'
def replace_files(files, &block)
Array.wrap(files).each do |file|
file_path = File.join('public/assets', file)
contents = File.read(file_path)
block.call(contents)
File.open(file_path, 'w+'){|f| f.puts contents}
end
end
def gsub_file(file, find, replace)
replace_files file do |contents|
contents.gsub! find, replace
end
end
def compress_js(*files)
replace_files files do |contents|
contents.replace Uglifier.compile(contents, screw_ie8: true)
end
end
def gsub_all_scripts(find, replace)
extensions = %w[js]
Dir.glob(File.join('public/assets/**', "*.{#{extensions.join(',')}}")).each do |asset_path|
end
end
def remove(*files)
files = files.first if files.first.is_a? Array
files.each do |file|
FileUtils.rm_rf(File.join('public/assets', file))
end
end
remove 'user/app/application.js' # embedded in flat/application
gsub_file 'user/foundation/application.css', /url\(("?)\/assets/, 'url(\1../..'
gsub_all_scripts 'src="/assets', 'src="./assets'
compress_js 'user/flat/application.js'
end_time = Time.now
puts "Converted assets for mobile in #{(end_time - start_time).round} seconds"