1 class Locmare.FormModule.Field extends Backbone.View
\r
5 initialize: (options) ->
\r
7 @field_name = options.field_name
\r
8 @field_manifest = options.field_manifest
\r
9 @label = Locmare.FormModule.FieldModule.LabelFactory.factory this, @field_manifest.label
\r
10 @tag = Locmare.FormModule.FieldModule.TagFactory.factory this, @field_manifest.tag
\r
11 @helpers = new Locmare.FormModule.FieldModule.Helpers({field: this, field_manifest: @field_manifest})
\r
13 @options = {'data-model': @field_manifest.form_name}
\r
14 @on('change', @change)
\r
16 @listenTo(item, 'resize', @refresh)
\r
17 @listenTo(item, 'move', @refresh)
\r
21 this.$el.append(@label.render().el) if not @label.hidden()
\r
22 this.$el.append(@tag.render().el)
\r
23 this.$el.append(@helpers.render().el)
\r
31 @set(@val(), {silent: true})
\r
32 @item().trigger('input:' + @field_name)
\r
33 @item().trigger('input')
\r
42 {'mount': @mounted()}
\r
51 @item().get(@field_manifest.column_name())
\r
53 set: (v, opt = null) ->
\r
55 a[@field_manifest.column_name()] = v
\r
58 options: (tag_options = {}) ->
\r
61 form_field_name: () ->
\r
62 @form.form_field_name @field_name
\r
68 if @field_manifest.row_break
\r
73 class Locmare.FormModule.FieldModule
\r
74 class Locmare.FormModule.FieldModule.Helpers extends Backbone.View
\r
77 initialize: (options) ->
\r
78 @field = options.field
\r
79 @field_manifest = options.field_manifest
\r
81 _.each @field_manifest.helpers, (helper_manifest, helper_name) =>
\r
82 @helpers[helper_name] = Locmare.FormModule.FieldModule.HelperFactory.factory(@field, helper_manifest)
\r
86 _.each @helpers, (helper) =>
\r
87 this.$el.append(helper.render().el)
\r