OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / assets / javascripts / manifest_base / manifest_base.js.coffee
1 class ManifestBase\r
2   \r
3   @require_modules: (path, names) ->\r
4     _.each names, (name) ->\r
5       require_dependency path + name.to_s\r
6   \r
7   @module_message: (module_names, my_module_names = []) ->\r
8     module_names.concat(my_module_names).join(' > ')\r
9   \r
10   @alert_message: (message, location) ->\r
11     confirm('invalid manifest?:' + message + " for " + message)\r
12   \r
13   @alert_undefined_message: (name, location) ->\r
14     alert_message('undefined ' + name, location)\r
15   \r
16   @load_value: (_self, json, module_name, klass) ->\r
17     new klass(_self, json[module_name], module_name)\r
18   \r
19   @load_name_values: (_self, jsons, module_name, klass) ->\r
20     hash = {}\r
21     _.each jsons[module_name], (_json, _name) ->\r
22       hash[_name] = new klass(_self, _name, _json, module_name)\r
23     hash\r
24   \r
25   @load_type_args: (_self, jsons, module_name, klass) ->\r
26     klass.factory_type_args(_self, jsons[module_name], module_name, klass)\r
27   \r
28   @load_type_name_args: (_self, jsons, module_name, klass) ->\r
29     hash = {}\r
30     ha = jsons[module_name]\r
31     _.each jsons[module_name], (_json, _name) ->\r
32       hash[_name] = new klass.factory(_self, _name, _json, module_name, klass)\r
33     hash\r
34   \r
35   @load_names: (_self, json, module_name, klass) ->\r
36     _.map json[module_name], (_name) ->\r
37       new klass(_self, _name, module_name)\r
38 \r
39 @ManifestBase = ManifestBase\r