9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
# File 'app/models/effective/snippet_replacer.rb', line 9
def replace!
raise('expected effective regions') unless defined?(Effective::Region)
raise('expected effective assets') unless defined?(Effective::Asset)
raise('expected active storage') unless defined?(ActiveStorage)
Effective::Region.with_snippets.find_each do |region|
region.snippet_objects.each do |snippet|
print('.')
begin
case snippet.class.name
when 'Effective::Snippets::EffectiveAsset'
replace_effective_asset(region, snippet)
else
raise("unsupported snippet: #{snippet.class.name}")
end
rescue => e
puts "\nError: #{e}\n"
remove_snippet(region, snippet)
end
end
region.save!
end
puts 'All Done. Have a great day.'
true
end
|