OSDN Git Service

fix event names
[pettanr/pettanr.git] / app / assets / javascripts / locmare / profiler / association.js.coffee
1 class Locmare.ProfilerModule.Association extends Backbone.View\r
2   tagName: 'div'\r
3   \r
4   initialize: (options) ->\r
5     @profiler = options.profiler\r
6     @association_manifest = options.association_manifest\r
7     @belongs_to = _.map @association_manifest.belongs_to, (belongs_to_manifest) =>\r
8       new Locmare.ProfilerModule.AssociationModule.BelongsTo({association: this, belongs_to_manifest: belongs_to_manifest})\r
9     @has_many = _.map @association_manifest.has_many, (list_manifest) =>\r
10       new Locmare.ProfilerModule.AssociationModule.HasMany({association: this, has_many_manifest: list_manifest})\r
11     @has_one = _.map @association_manifest.has_one, (list_manifest) =>\r
12       new Locmare.ProfilerModule.AssociationModule.HasOne({association: this, has_one_manifest: list_manifest})\r
13     @render()\r
14   \r
15   render: () ->\r
16     this.$el.html('')\r
17     caption = new Tag.Div({class_name: 'caption', content: 'associations'})\r
18     this.$el.append(caption.render().el)\r
19     caption = new Tag.Div({class_name: 'caption', content: 'belongs_to'})\r
20     this.$el.append(caption.render().el)\r
21     _.each @belongs_to, (f) =>\r
22       @listenTo(f, 'http_get', @http_get)\r
23       this.$el.append(f.render().el)\r
24     caption = new Tag.Div({class_name: 'caption', content: 'has_many'})\r
25     this.$el.append(caption.render().el)\r
26     _.each @has_many, (f) =>\r
27       @listenTo(f, 'http_get', @http_get)\r
28       this.$el.append(f.render().el)\r
29     caption = new Tag.Div({class_name: 'caption', content: 'has_one'})\r
30     this.$el.append(caption.render().el)\r
31     _.each @has_one, (f) =>\r
32       @listenTo(f, 'http_get', @http_get)\r
33       this.$el.append(f.render().el)\r
34     this\r
35   \r
36   item: () ->\r
37     @profiler.item\r
38   \r
39   model_manifest: () ->\r
40     Manifest.manifest().models[@profiler.item_name]\r
41   \r
42   http_get: (url) ->\r
43     @trigger('http_get', url)\r
44   \r
45 class Locmare.ProfilerModule.AssociationModule\r
46 \r