7
8
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
|
# File 'lib/maruto/magento_instance.rb', line 7
def self.load(magento_root)
Dir.chdir(magento_root) do
magento_version = Maruto::MagentoVersion.read_magento_version()
all_modules = Maruto::ModuleDefinition.parse_all_module_definitions()
sorted_modules, active_modules = Maruto::ModuleDefinition.analyse_module_definitions(all_modules)
sorted_modules.each do |m|
Maruto::ModuleConfiguration.parse_module_configuration(m)
end
event_observers = Maruto::ModuleConfiguration.collect_event_observers(sorted_modules)
warnings = []
all_modules.each do |m|
warnings.concat m[:warnings].map{|w| w.merge(:module => m[:name]) } if m.include? :warnings
end
{
:active_modules => active_modules,
:all_modules => Hash[all_modules.collect { |m| [m[:name], m]}],
:sorted_modules => sorted_modules,
:event_observers => event_observers,
:version => magento_version,
:warnings => warnings,
}
end
end
|