OSDN Git Service

v07
[pettanr/pettanr.git] / app / assets / javascripts / local_manifest / profiler.js.coffee
1 class LocalManifest.Profiler extends ManifestBase.Base\r
2   \r
3   set_default: () ->\r
4     super()\r
5     @json['columns'] ||= {}\r
6     @json['column_names'] ||= []\r
7     @json['extend_settings'] ||= {}\r
8     @json['lists'] ||= {}\r
9     @json['associations'] ||= {}\r
10     # supply column configures\r
11     @json['column_names'].unshift('id') if not @json['column_names'] in 'id'\r
12     @json['column_names'].push('created_at') if not (@json['column_names'] in 'created_at')\r
13     @json['column_names'].push('updated_at') if not (@json['column_names'] in 'updated_at')\r
14     @json['columns']['created_at'] = {'type': 'date'}\r
15     @json['columns']['updated_at'] = {'type': 'date'}\r
16     c = @json['columns']\r
17     _.each @json['column_names'], (column_name) -> \r
18       c[column_name]  = {} if not c[column_name]\r
19     \r
20   init: () ->\r
21     super()\r
22     @columns =  ManifestBase.load_type_name_args this, @json, 'columns', LocalManifest.ProfilerModule.ColumnFactory\r
23     @column_names = @json['column_names']\r
24     @extend_settings = ManifestBase.load_name_values this, @json, 'extend_settings', LocalManifest.ProfilerModule.ExtendSetting\r
25     @lists = ManifestBase.load_name_values this, @json, 'lists', LocalManifest.ProfilerModule.List\r
26     @associations = ManifestBase.load_value this, @json, 'associations', LocalManifest.ProfilerModule.Association\r
27   \r
28   item_name: () ->\r
29     @name\r
30   \r
31   each_column: () ->\r
32     @column_names\r
33   \r
34   constructor: (manifest, name, json, module_name) ->\r
35     super(manifest, name, json, module_name)\r
36     \r
37 class LocalManifest.ProfilerModule\r
38 \r