OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / assets / javascripts / views / original_pictures / form.js.coffee
1 class Pettanr.Views.OriginalPicture.Form extends Locmare.Form\r
2   \r
3   initialize: (options) ->\r
4     super(options)\r
5   \r
6   render: () ->\r
7     super()\r
8   \r
9   form_attr: () ->\r
10     _.extend(super(), {\r
11       enctype: 'multipart/form-data'\r
12     })\r
13   \r
14   init_fields: () ->\r
15     _.each @manifest.field_names, (field_name) =>\r
16       field_manifest = @manifest.fields[field_name]\r
17       @fields[field_name] = new Locmare.FormModule.Field({\r
18         form: this, \r
19         field_name: field_name, \r
20         field_manifest: field_manifest\r
21       })\r
22   \r
23   save: () ->\r
24     @listenTo(@item, 'save:success', @success)\r
25     @listenTo(@item, 'save:fail', @fail)\r
26     form_data = new FormData(this.$el.get(0))\r
27     attrs = {}\r
28     _.each @fields, (field) =>\r
29       if field.field_manifest.tag.type == 'file'\r
30         form_data.append('original_picture[file]', field.tag.$el[0].files[0])\r
31       else\r
32         form_data.append(field.field_name, field.val())\r
33     options = {\r
34       data: form_data,\r
35       processData: false,\r
36       contentType: false\r
37     }\r
38     @item.save(null, {}, options)\r
39   \r