# form_name_with_sub_form\r
# item: editing item\r
# submit: string / 'submit'\r
-class Locmare.FormBase extends Backbone.View\r
+class Locmare.FormBase extends Pettanr.View\r
tagName: 'form'\r
\r
initialize: (options) ->\r
@init_fields()\r
\r
render: () ->\r
- @attr = {\r
- method: @method_type(),\r
- action: @action_url()\r
- }\r
- this.$el.attr(@attr)\r
+ this.$el.attr(@form_attr())\r
this.$el.html('')\r
@error_explanation = null\r
@div_fields = new Locmare.FormModule.Fields({\r
@delegateEvents({'submit': @method_type()})\r
this\r
\r
+ form_attr: () ->\r
+ {\r
+ method: @method_type(),\r
+ action: @action_url()\r
+ }\r
+ \r
refresh: () ->\r
_.each @fields, (field) =>\r
field.refresh()\r
success: (model, response) ->\r
if !Pettanr.cache.restore(model.cache_key())\r
# item is new\r
+ model.url = model.default_url()\r
Pettanr.cache.store(model)\r
else\r
@item.fix()\r
\r
render: () ->\r
this.$el.html('')\r
- this.$el.append(@label.render().el) if not @label.hidden()\r
- @div_fields = new Locmare.FormModule.Fields({\r
- fields: @fields\r
- })\r
- this.$el.append(@div_fields.render().el)\r
+ if !@is_hidden()\r
+ this.$el.append(@label.render().el) if not @label.hidden()\r
+ @div_fields = new Locmare.FormModule.Fields({\r
+ fields: @fields\r
+ })\r
+ this.$el.append(@div_fields.render().el)\r
this\r
\r
refresh: () ->\r
val: () ->\r
JSON.stringify(@item.attributes)\r
\r
+ is_hidden: () ->\r
+ _.isEmpty(@manifest.field_names)\r
+ \r
init_fields: () ->\r
_.each @manifest.field_names, (field_name) =>\r
field_manifest = @manifest.fields[field_name]\r
is_extend: () ->\r
true\r
\r
+ has_row_break: () ->\r
+ true\r
+ \r
+ row_break: () ->\r
+ if @has_row_break()\r
+ Pettanr.View.rb()\r
+ else\r
+ null\r
+ \r
class Locmare.FormModule\r
-class Locmare.FormModule.Fields extends Backbone.View\r
+class Locmare.FormModule.Fields extends Pettanr.View\r
tagName: 'div'\r
className: 'fields'\r
\r
this.$el.html('')\r
_.each @fields, (field) =>\r
this.$el.append(field.render().el)\r
- this.$el.append(field.rb.render().el) if field.rb\r
+ this.$el.append(field.row_break()) if field.has_row_break()\r
this\r
\r
class Locmare.FormModule.SubmitModule\r
-class Locmare.FormModule.SubmitModule.Default extends Backbone.View\r
+class Locmare.FormModule.SubmitModule.Default extends Pettanr.View\r
tagName: 'div'\r
className: 'actions'\r
\r