1 class Locmare.FormModule.Field extends Pettanr.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
12 @on('change', @change)
\r
14 @listenTo(item, 'resize', @refresh)
\r
15 @listenTo(item, 'move', @refresh)
\r
16 @listenTo(item, 'sort', @refresh)
\r
20 this.$el.append(@label.render().el) if not @label.hidden()
\r
21 this.$el.append(@tag.render().el)
\r
22 this.$el.append(@helpers.render().el)
\r
30 @set(@val(), {silent: true})
\r
31 @item().trigger('input:' + @field_name)
\r
32 @item().trigger('input')
\r
44 @item().get(@field_manifest.column_name())
\r
46 set: (v, opt = null) ->
\r
48 a[@field_manifest.column_name()] = v
\r
53 a[@field_manifest.column_name()] = undefined
\r
54 @item().set(a, {unset: true})
\r
56 form_field_name: () ->
\r
57 @form.form_field_name @field_name
\r
62 has_row_break: () ->
\r
63 if @field_manifest.row_break
\r
74 class Locmare.FormModule.FieldModule
\r
75 class Locmare.FormModule.FieldModule.Helpers extends Pettanr.View
\r
78 initialize: (options) ->
\r
79 @field = options.field
\r
80 @field_manifest = options.field_manifest
\r
82 _.each @field_manifest.helpers, (helper_manifest, helper_name) =>
\r
83 @helpers[helper_name] = Locmare.FormModule.FieldModule.HelperFactory.factory(@field, helper_manifest)
\r
87 _.each @helpers, (helper) =>
\r
88 this.$el.append(helper.render().el)
\r
92 _.each @helpers, (helper) =>
\r