1 class Locmare.FormModule.FieldModule.TagModule.SelectTag extends Locmare.FormModule.FieldModule.TagModule.Base
\r
8 @select_values((members) =>
\r
9 values = if @model_attribute_manifest().source.translate()
\r
10 Pettanr.AppHelper.t_select_items(members)
\r
14 this.$el.attr(@attr())
\r
15 _.each values, (member) =>
\r
16 selected = if @is_selected(member)
\r
20 this.$el.append('<option value="' + member[1] + '"' + selected + '>' + member[0] + '</option>')
\r
21 @trigger('ready:select')
\r
25 model_manifest: () ->
\r
26 Manifest.manifest().models[@field.field_manifest.item_name()]
\r
28 model_attribute_manifest: () ->
\r
29 @model_manifest().attributes[@field.field_manifest.column_name()]
\r
31 select_item_name: () ->
\r
32 @model_attribute_manifest().source.select_item_name
\r
34 source_by_filter: () ->
\r
35 switch @model_attribute_manifest().source.type
\r
36 when 'model', 'filter'
\r
43 is_selected: (member) ->
\r
44 @value() == member[1]
\r
46 select_values: (cb) ->
\r
47 if @source_by_filter()
\r
48 resource_item_name = @model_attribute_manifest().source.resource_item_name
\r
49 resource_action_name = @model_attribute_manifest().source.resource_action_name
\r
50 filter_column_name = @model_attribute_manifest().source.filter_column_name
\r
51 filter_id = @form().item.get(filter_column_name)
\r
52 resource_controller_name = Manifest.manifest().models[resource_item_name].classify().table_name()
\r
53 caption_name = @model_attribute_manifest().source.caption_name
\r
54 params = if filter_column_name
\r
58 controller = Manifest.manifest().controllers[resource_controller_name]
\r
59 action = @my_controller.actions[resource_action_name]
\r
60 list = action.find(params)
\r
62 success: (page_status) ->
\r
63 members = _.map list.models, (member) ->
\r
64 [member.get(caption_name), member.get('id')]
\r
68 members = Manifest.manifest().system_resources.select_items[@select_item_name()]
\r
72 @field.trigger('change')
\r