X-Git-Url: http://git.osdn.net/view?p=pettanr%2Fpettanr.git;a=blobdiff_plain;f=app%2Fassets%2Fjavascripts%2Flocmare%2Fform%2Ffield%2Ftag%2Fselect.js.coffee;h=5a15566789ec4c2a8ebefe0fbbae4567f98a4227;hp=f3db69f746b177eecac2e113c855e8496b1372c5;hb=a2476d007b31867d0c17898c358bde615e830d91;hpb=f5a8ee0b7a363b86a0528a659e261c8895d35a01 diff --git a/app/assets/javascripts/locmare/form/field/tag/select.js.coffee b/app/assets/javascripts/locmare/form/field/tag/select.js.coffee index f3db69f7..5a155667 100644 --- a/app/assets/javascripts/locmare/form/field/tag/select.js.coffee +++ b/app/assets/javascripts/locmare/form/field/tag/select.js.coffee @@ -1,15 +1,22 @@ class Locmare.FormModule.FieldModule.TagModule.SelectTag extends Locmare.FormModule.FieldModule.TagModule.Base tagName: 'select' + events: { + 'change': 'change' + } render: () -> - this.$el.html('') - @attr = { - name: @form_field_name(), - } - _.extend(@attr, @options()) - this.$el.attr(@attr) @select_values((members) => - _.each members, (member) => + values = if @model_attribute_manifest().source.translate() + Pettanr.AppHelper.t_select_items(members) + else + members + this.$el.html('') + @attr = { + name: @form_field_name(), + } + _.extend(@attr, @options()) + this.$el.attr(@attr) + _.each values, (member) => selected = if @is_selected(member) ' selected' else @@ -51,14 +58,16 @@ class Locmare.FormModule.FieldModule.TagModule.SelectTag extends Locmare.FormMod {id: filter_id} else {} - list = Locmare.ListGroup.list(resource_model_name, resource_list_name, @form().operators, {}) + list = Locmare.ListGroup.list(resource_controller_name, resource_action_name, {}) list.open((page_status) -> members = _.map list.models, (member) -> [member.get(caption_name), member.get('id')] cb(members) ) else - s = Manifest.manifest().system_resources.select_items[@select_item_name()] - members = Pettanr.AppHelper.t_select_items(s) + members = Manifest.manifest().system_resources.select_items[@select_item_name()] cb(members) + change: () -> + @field.trigger('change') +