dynamic_fieldsets 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. data/CHANGELOG +7 -0
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +1 -0
  4. data/README.rdoc +15 -2
  5. data/Rakefile +24 -4
  6. data/VERSION +1 -1
  7. data/app/controllers/dynamic_fieldsets/fields_controller.rb +25 -0
  8. data/app/controllers/dynamic_fieldsets/fieldset_children_controller.rb +57 -0
  9. data/app/controllers/dynamic_fieldsets/fieldsets_controller.rb +91 -5
  10. data/app/helpers/dynamic_fieldsets/fields_helper.rb +1 -15
  11. data/app/helpers/dynamic_fieldsets/fieldset_children_helper.rb +5 -0
  12. data/app/helpers/dynamic_fieldsets/nested_model_helper.rb +18 -0
  13. data/app/helpers/dynamic_fieldsets_helper.rb +70 -44
  14. data/app/models/dynamic_fieldsets/dependency.rb +76 -0
  15. data/app/models/dynamic_fieldsets/dependency_clause.rb +32 -0
  16. data/app/models/dynamic_fieldsets/dependency_group.rb +108 -0
  17. data/app/models/dynamic_fieldsets/field.rb +17 -12
  18. data/app/models/dynamic_fieldsets/field_default.rb +27 -1
  19. data/app/models/dynamic_fieldsets/field_record.rb +19 -4
  20. data/app/models/dynamic_fieldsets/fieldset.rb +35 -30
  21. data/app/models/dynamic_fieldsets/fieldset_associator.rb +52 -8
  22. data/app/models/dynamic_fieldsets/fieldset_child.rb +148 -0
  23. data/app/views/dynamic_fieldsets/fields/_disable_field_form.html.erb +4 -0
  24. data/app/views/dynamic_fieldsets/fields/_field_default_fields.html.erb +1 -1
  25. data/app/views/dynamic_fieldsets/fields/_form.html.erb +9 -27
  26. data/app/views/dynamic_fieldsets/fields/index.html.erb +8 -5
  27. data/app/views/dynamic_fieldsets/fields/new.html.erb +5 -1
  28. data/app/views/dynamic_fieldsets/fields/show.html.erb +1 -13
  29. data/app/views/dynamic_fieldsets/fieldset_children/_dependency_clause_fields.html.erb +25 -0
  30. data/app/views/dynamic_fieldsets/fieldset_children/_dependency_fields.html.erb +12 -0
  31. data/app/views/dynamic_fieldsets/fieldset_children/_dependency_group_fields.html.erb +16 -0
  32. data/app/views/dynamic_fieldsets/fieldset_children/_form.html.erb +34 -0
  33. data/app/views/dynamic_fieldsets/fieldset_children/edit.html.erb +6 -0
  34. data/app/views/dynamic_fieldsets/fieldsets/_associate_child.html.erb +4 -0
  35. data/app/views/dynamic_fieldsets/fieldsets/_child.html.erb +41 -0
  36. data/app/views/dynamic_fieldsets/fieldsets/_form.html.erb +2 -8
  37. data/app/views/dynamic_fieldsets/fieldsets/children.html.erb +47 -39
  38. data/app/views/dynamic_fieldsets/fieldsets/index.html.erb +4 -4
  39. data/app/views/dynamic_fieldsets/fieldsets/new.html.erb +5 -1
  40. data/app/views/dynamic_fieldsets/fieldsets/reorder.html.erb +4 -0
  41. data/app/views/dynamic_fieldsets/fieldsets/show.html.erb +1 -12
  42. data/app/views/dynamic_fieldsets/shared/_javascript_watcher.html.erb +255 -0
  43. data/app/views/dynamic_fieldsets/shared/_nested_model_javascript.html.erb +35 -0
  44. data/config/.routes.rb.swp +0 -0
  45. data/config/routes.rb +11 -0
  46. data/dynamic_fieldsets.gemspec +41 -4
  47. data/lib/dynamic_fieldsets/dynamic_fieldsets_in_model.rb +141 -14
  48. data/lib/generators/dynamic_fieldsets/templates/migrations/install_migration.rb +39 -5
  49. data/spec/dummy/app/controllers/information_forms_controller.rb +2 -1
  50. data/spec/dummy/app/models/information_form.rb +1 -1
  51. data/spec/dummy/app/views/information_forms/dynamic_view.html.erb +18 -0
  52. data/spec/dummy/app/views/information_forms/show.html.erb +1 -0
  53. data/spec/dummy/app/views/layouts/application.html.erb +9 -1
  54. data/spec/dummy/config/routes.rb +1 -1
  55. data/spec/dummy/db/migrate/{20110726215814_create_dynamic_fieldsets_tables.rb → 20110809161724_create_dynamic_fieldsets_tables.rb} +39 -5
  56. data/spec/dummy/db/schema.rb +40 -11
  57. data/spec/dummy/features/field.feature +17 -2
  58. data/spec/dummy/features/fieldset.feature +1 -21
  59. data/spec/dummy/features/fieldset_children.feature +50 -0
  60. data/spec/dummy/features/javascript_tests.feature +91 -0
  61. data/spec/dummy/features/step_definitions/field_steps.rb +9 -5
  62. data/spec/dummy/features/step_definitions/fieldset_associator_steps.rb +3 -1
  63. data/spec/dummy/features/step_definitions/fieldset_children_steps.rb +65 -0
  64. data/spec/dummy/features/step_definitions/fieldset_steps.rb +0 -27
  65. data/spec/dummy/features/step_definitions/javascript_steps.rb +208 -0
  66. data/spec/dummy/features/step_definitions/web_steps.rb +5 -0
  67. data/spec/dummy/features/support/paths.rb +10 -1
  68. data/spec/dummy/features/support/selectors.rb +2 -0
  69. data/spec/dummy/public/javascripts/jquery-1.6.2.min.js +18 -0
  70. data/spec/dummy/public/javascripts/jquery-ui-1.8.15.custom.min.js +111 -0
  71. data/spec/dummy/public/javascripts/jquery-ui-nestedSortable.js +356 -0
  72. data/spec/dummy/public/stylesheets/scaffold.css +101 -0
  73. data/spec/dynamic_fieldsets_helper_spec.rb +236 -55
  74. data/spec/dynamic_fieldsets_in_model_spec.rb +122 -4
  75. data/spec/models/dependency_clause_spec.rb +55 -0
  76. data/spec/models/dependency_group_spec.rb +237 -0
  77. data/spec/models/dependency_spec.rb +173 -0
  78. data/spec/models/field_default_spec.rb +49 -0
  79. data/spec/models/field_record_spec.rb +11 -2
  80. data/spec/models/field_spec.rb +30 -6
  81. data/spec/models/fieldset_associator_spec.rb +138 -25
  82. data/spec/models/fieldset_child_spec.rb +122 -0
  83. data/spec/models/fieldset_spec.rb +78 -80
  84. data/spec/support/dependency_group_helper.rb +9 -0
  85. data/spec/support/dependency_helper.rb +13 -0
  86. data/spec/support/field_helper.rb +0 -2
  87. data/spec/support/fieldset_child_helper.rb +10 -0
  88. data/spec/support/fieldset_helper.rb +2 -18
  89. metadata +51 -5
@@ -10,22 +10,20 @@
10
10
  </ul>
11
11
  </div>
12
12
  <% end %>
13
+
14
+ <%= hidden_field_tag :parent, params[:parent] %>
13
15
 
14
16
  <div class="field">
15
- <%= f.label :fieldset_id %><br />
16
- <%= f.select :fieldset_id, options_for_select(DynamicFieldsets::Fieldset.parent_fieldset_list), :include_blank => "Choose One" %>
17
- </div>
18
- <div class="field">
19
- <%= f.label :name %><br />
17
+ <%= f.label :name %>: (internal)<br/>
20
18
  <%= f.text_field :name %>
21
19
  </div>
22
20
  <div class="field">
23
- <%= f.label :label %><br />
21
+ <%= f.label :label %>: (displayed on the form)<br/>
24
22
  <%= f.text_field :label %>
25
23
  </div>
26
24
 
27
25
  <div class="field">
28
- <%= f.label :field_type %><br />
26
+ <%= f.label :field_type %>:
29
27
  <%= f.select :field_type, options_for_select(DynamicFieldsets::Field.field_types, @field.field_type), :include_blank => "Choose One" %>
30
28
  </div>
31
29
  <% @field.field_options.each do |field_option| %>
@@ -36,21 +34,17 @@
36
34
  <p><%= link_to_add_fields "Add Field Option", f, :field_options %></p>
37
35
 
38
36
  <div class="field">
39
- <%= f.label :required %><br />
37
+ <%= f.label :required %>
40
38
  <%= f.check_box :required %>
41
39
  </div>
42
40
  <div class="field">
43
- <%= f.label :enabled %><br />
41
+ <%= f.label :enabled %>
44
42
  <%= f.check_box :enabled %>
45
43
  </div>
46
- <div class="field">
47
- <%= f.label :order_num, "Order Number" %><br />
48
- <%= f.text_field :order_num %>
49
- </div>
50
44
 
51
45
  <% @field.field_defaults.each do |field_default| %>
52
46
  <%= f.fields_for :field_defaults, field_default do |field_default_form| %>
53
- <%= render :partial => "field_default_fields", :locals => {:f => field_default_form} %>
47
+ <%= render :partial => "field_default_fields", :locals => {:f => field_default_form, :obj => field_default} %>
54
48
  <% end %>
55
49
  <% end %>
56
50
  <p><%= link_to_add_fields "Add Default Value", f, :field_defaults %></p>
@@ -66,16 +60,4 @@
66
60
  <%= f.submit %>
67
61
  </div>
68
62
  <% end %>
69
-
70
- <script>
71
- function remove_fields(link) {
72
- $(link).prev("input[type=hidden]").val("1");
73
- $(link).closest(".fields").hide();
74
- }
75
-
76
- function add_fields(link, association, content) {
77
- var new_id = new Date().getTime();
78
- var regexp = new RegExp("new_" + association, "g");
79
- $(link).parent().before(content.replace(regexp, new_id));
80
- }
81
- </script>
63
+ <%= render :partial => "/dynamic_fieldsets/shared/nested_model_javascript" %>
@@ -2,10 +2,8 @@
2
2
 
3
3
  <table>
4
4
  <tr>
5
- <th>Fieldset</th>
6
5
  <th>Name</th>
7
6
  <th>Type</th>
8
- <th>Order num</th>
9
7
  <th></th>
10
8
  <th></th>
11
9
  <th></th>
@@ -13,13 +11,18 @@
13
11
 
14
12
  <% @fields.each do |field| %>
15
13
  <tr>
16
- <td><%= field.fieldset.name if field.fieldset %></td>
17
14
  <td><%= field.name %></td>
18
15
  <td><%= field.field_type %></td>
19
- <td><%= field.order_num %></td>
20
16
  <td><%= link_to 'Show', dynamic_fieldsets_field_path(field) %></td>
21
17
  <td><%= link_to 'Edit', edit_dynamic_fieldsets_field_path(field) %></td>
22
- <td><%= link_to 'Destroy', dynamic_fieldsets_field_path(field), :confirm => 'Are you sure?', :method => :delete %></td>
18
+ <td><%= render :partial => "disable_field_form", :locals => { :field => field } %></td>
19
+ <td>
20
+ <% if field.in_use? %>
21
+ <del>Destroy</del>
22
+ <% else %>
23
+ <%= button_to 'Destroy', dynamic_fieldsets_field_path(field), :method => :delete %>
24
+ <% end %>
25
+ </td>
23
26
  </tr>
24
27
  <% end %>
25
28
  </table>
@@ -2,4 +2,8 @@
2
2
 
3
3
  <%= render 'form' %>
4
4
 
5
- <%= link_to 'Back', dynamic_fieldsets_fields_path %>
5
+ <% if params[:parent].nil? %>
6
+ <%= link_to 'Back', dynamic_fieldsets_fields_path %>
7
+ <% else %>
8
+ <%= link_to 'Back', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(params[:parent]) %>
9
+ <% end %>
@@ -1,10 +1,3 @@
1
- <p id="notice"><%= notice %></p>
2
-
3
- <p>
4
- <b>Fieldset:</b>
5
- <%= @field.fieldset_id %>
6
- </p>
7
-
8
1
  <p>
9
2
  <b>Name:</b>
10
3
  <%= @field.name %>
@@ -40,16 +33,11 @@
40
33
  <%= @field.enabled %>
41
34
  </p>
42
35
 
43
- <p>
44
- <b>Order Number:</b>
45
- <%= @field.order_num %>
46
- </p>
47
-
48
36
  <% if @field.field_defaults.length > 0 %>
49
37
  <p>
50
38
  <b>Default values:</b><br />
51
39
  <% @field.field_defaults.each do |fd| %>
52
- <%= fd.value %>
40
+ <%= fd.pretty_value %>
53
41
  <br />
54
42
  <% end %>
55
43
  </p>
@@ -0,0 +1,25 @@
1
+ <div>
2
+ <p class="fields">
3
+ <%= f.label "Clause" %>
4
+ <%= f.hidden_field :_destroy %>
5
+ <%= link_to_function "remove", {:class => "remove_dependency_group", :onclick => "remove_fields_and_parent_fields(this)"} %>
6
+
7
+ <table style='outline: 1px solid black;margin:5px;'>
8
+ <tr>
9
+ <th>Field</th>
10
+ <th>Relationship</th>
11
+ <th>Value</th>
12
+ <th></th>
13
+ </tr>
14
+ <% obj.dependencies.each do |dependency| %>
15
+ <%= f.fields_for :dependencies, dependency do |dependency_form| %>
16
+ <%= render :partial => "dependency_fields", :locals => {:f => dependency_form, :obj => dependency} %>
17
+ <% end %>
18
+ <% end %>
19
+ <tr>
20
+ <td colspan='4'><%= link_to_add_fields "Add Rule", f, :dependencies, "add_fields_to_table" %></td>
21
+ </tr>
22
+ </table>
23
+ AND<br />
24
+ </p>
25
+ </div>
@@ -0,0 +1,12 @@
1
+ <tr>
2
+ <td><%= f.select :fieldset_child_id, options_for_select(DynamicFieldsets::FieldsetChild.all.collect { |c| [c.child.name, c.id]})%></td>
3
+ <td><%= f.select :relationship, obj.relationship_list %></td>
4
+ <td><%= f.text_field :value %></td>
5
+ <td>
6
+ <%= f.hidden_field :_destroy %>
7
+ <%= link_to_function "remove", {:class => "remove_dependency", :onclick => "remove_fields_from_table(this)"} %>
8
+ </td>
9
+ </tr>
10
+ <tr>
11
+ <td colspan='4'>OR</td>
12
+ </tr>
@@ -0,0 +1,16 @@
1
+ <div>
2
+ <p class="fields">
3
+ <%= f.hidden_field :_destroy %>
4
+ <%= link_to_function "remove", {:class => "remove_dependency_group", :onclick => "remove_fields_and_parent_fields(this)"} %>
5
+ <%= f.select :action, obj.action_list %> this field when:
6
+
7
+ <div style='outline: 1px solid black;'>
8
+ <% obj.dependency_clauses.each do |dependency_clause| %>
9
+ <%= f.fields_for :dependency_clauses, dependency_clause do |dependency_clause_form| %>
10
+ <%= render :partial => "dependency_clause_fields", :locals => {:f => dependency_clause_form, :obj => dependency_clause} %>
11
+ <% end %>
12
+ <% end %>
13
+ <p><%= link_to_add_fields "Add Clause", f, :dependency_clauses %></p>
14
+ </div>
15
+ </p>
16
+ </div>
@@ -0,0 +1,34 @@
1
+ <%= form_for(@fieldset_child) do |f| %>
2
+ <% if @fieldset_child.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(@fieldset_child.errors.count, "error") %> prohibited this field from being saved:</h2>
5
+
6
+ <ul>
7
+ <% @fieldset_child.errors.full_messages.each do |msg| %>
8
+ <li><%= msg %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <p>
15
+ <b>Field:</b>
16
+ <%= @fieldset_child.child.name %>
17
+ </p>
18
+
19
+ <p>
20
+ <b>Dependencies:</b>
21
+ <br />
22
+ </p>
23
+
24
+ <%# only expecting a single dependency group for now %>
25
+ <%= f.fields_for :dependency_group, @fieldset_child.dependency_group do |dependency_group_form| %>
26
+ <%= render :partial => "dependency_group_fields", :locals => {:f => dependency_group_form, :obj => @fieldset_child.dependency_group} %>
27
+ <% end %>
28
+ <p><%= link_to_add_fields "Add Dependency", f, :dependency_group %></p>
29
+
30
+ <div class="actions">
31
+ <%= f.submit %>
32
+ </div>
33
+ <% end %>
34
+ <%= render :partial => "/dynamic_fieldsets/shared/nested_model_javascript" %>
@@ -0,0 +1,6 @@
1
+ <h1>Editing fieldset child</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Show', @fieldset_child %> |
6
+ <%= link_to 'Back', dynamic_fieldsets_fieldset_children_path %>
@@ -0,0 +1,4 @@
1
+ <%= form_for fieldset, :method => :post, :url => dynamic_fieldsets_associate_child_to_fieldset_path(fieldset) do |f| %>
2
+ <%= select_tag :field, options_for_select(DynamicFieldsets::Field.all.collect { |f| [f.name, f.id] }) %>
3
+ <%= f.submit "Associate" %>
4
+ <% end %>
@@ -0,0 +1,41 @@
1
+ <% fieldset.children.each do |child| %>
2
+ <% if child.is_a? DynamicFieldsets::Fieldset then %>
3
+ <% fieldset_child = DynamicFieldsets::FieldsetChild.where( fieldset_id: fieldset.id, child_id: child.id, child_type: "DynamicFieldsets::Fieldset" ).first %>
4
+ <li id="child-<%= fieldset_child.id %>" class="fieldset">
5
+ <div>
6
+ <span class="name"><%= child.name %></span>
7
+ <span class="admin">
8
+ <span class="children">
9
+ <% if child.has_children? then %>
10
+ <%= link_to 'Children', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(child) %>
11
+ <% else %>
12
+ <%= link_to 'Add to', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(child) %>
13
+ <% end %>
14
+ </span>
15
+ <span class="show"><%= link_to 'Show', dynamic_fieldsets_fieldset_path(child) %></span>
16
+ <span class="edit"><%= link_to 'Edit', edit_dynamic_fieldsets_fieldset_path(child) %></span>
17
+ <span class="destroy"><%= button_to 'Remove', dynamic_fieldsets_remove_fieldset_child_path(fieldset_child), :method => :post %></span>
18
+ </span>
19
+ </div>
20
+ <% if child.has_children? then %>
21
+ <ol>
22
+ <%= render :partial => 'child', :locals => { :fieldset => child } %>
23
+ </ol>
24
+ <% end %>
25
+ </li>
26
+ <% elsif child.is_a? DynamicFieldsets::Field then %>
27
+ <% fieldset_child = DynamicFieldsets::FieldsetChild.where( fieldset_id: fieldset.id, child_id: child.id, child_type: "DynamicFieldsets::Field" ).first %>
28
+ <li id="child-<%= fieldset_child.id %>" class="field<%= ' required' if child.required? %>">
29
+ <div>
30
+ <span class="fieldtype"><%= child.field_type %>:</span>
31
+ <span class="name"><%= child.label %></span>
32
+ <span class="admin">
33
+ <span class="show"><%= link_to 'Show', dynamic_fieldsets_field_path(child) %></span>
34
+ <span class="edit"><%= link_to "Edit Dependency", edit_dynamic_fieldsets_fieldset_child_path(child) %></span>
35
+ <span class="edit"><%= link_to 'Edit Field', edit_dynamic_fieldsets_field_path(child) %></span>
36
+ <span class="destroy"><%= button_to 'Remove', dynamic_fieldsets_remove_fieldset_child_path(fieldset_child), :method => :post %></span>
37
+ </span>
38
+ </div>
39
+ </li>
40
+ <% end %>
41
+ <% end %>
@@ -10,6 +10,8 @@
10
10
  </ul>
11
11
  </div>
12
12
  <% end %>
13
+
14
+ <%= hidden_field_tag :parent, params[:parent] %>
13
15
 
14
16
  <div class="field">
15
17
  <%= f.label :nkey %><br />
@@ -23,14 +25,6 @@
23
25
  <%= f.label :description %><br />
24
26
  <%= f.text_area :description %>
25
27
  </div>
26
- <div class="field">
27
- <%= f.label :parent_fieldset_id %><br />
28
- <%= f.select :parent_fieldset_id, options_for_select(DynamicFieldsets::Fieldset.parent_fieldset_list), :include_blank => "Choose One" %>
29
- </div>
30
- <div class="field">
31
- <%= f.label :order_num, "Order Number" %><br />
32
- <%= f.text_field :order_num %>
33
- </div>
34
28
  <div class="actions">
35
29
  <%= f.submit %>
36
30
  </div>
@@ -1,45 +1,53 @@
1
- <h1>Listing fieldset children of <%= @parent_fieldset.name %></h1>
1
+ <h3 class="fieldset name"><%= @fieldset.name %></h3>
2
+ <p class="fieldset description"><%= @fieldset.description %></p>
2
3
 
3
- <table>
4
- <tr>
5
- <th>Type</th>
6
- <th>Order Number</th>
7
- <th>Name</th>
8
- <th>Description/Field Type</th>
9
- <th>Fieldset Children</th>
10
- <th></th>
11
- <th></th>
12
- <th></th>
13
- </tr>
4
+ <script>
5
+ $(function() {
14
6
 
15
- <% @fieldset_family.each do |child| %>
16
- <% if child.is_a?(DynamicFieldsets::Fieldset) %>
17
- <tr>
18
- <td>Fieldset</td>
19
- <td><%= child.order_num %></td>
20
- <td><%= child.name %></td>
21
- <td><%= child.description %></td>
22
- <td><%= link_to 'Children', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(child) %></td>
23
- <td><%= link_to 'Show', dynamic_fieldsets_fieldset_path(child) %></td>
24
- <td><%= link_to 'Edit', edit_dynamic_fieldsets_fieldset_path(child) %></td>
25
- <td><%= link_to 'Destroy', dynamic_fieldsets_fieldset_path(child), :confirm => 'Are you sure?', :method => :delete %></td>
26
- </tr>
27
- <% elsif child.is_a?(DynamicFieldsets::Field) %>
28
- <tr>
29
- <td>Field</td>
30
- <td><%= child.order_num %></td>
31
- <td><%= child.name %></td>
32
- <td><%= child.field_type %></td>
33
- <td>N/A</td>
34
- <td><%= link_to 'Show', dynamic_fieldsets_fieldset_path(child) %></td>
35
- <td><%= link_to 'Edit', edit_dynamic_fieldsets_fieldset_path(child) %></td>
36
- <td><%= link_to 'Destroy', dynamic_fieldsets_fieldset_path(child), :confirm => 'Are you sure?', :method => :delete %></td>
37
- </tr>
38
- <% end %>
39
- <% end %>
7
+ $( "#enable-sorting" ).toggle( function() {
8
+ // Enable sorting
9
+ $( "#children" ).sortable('enable');
10
+ $( "#children" ).addClass('sort');
11
+ $( "#children" ).find('.admin').css('visibility','hidden');
12
+ $("#enable-sorting").html('Save');
13
+ }, function() {
14
+ // Disable sorting, save results
15
+ $( "#children" ).sortable('disable');
16
+ $( "#children" ).removeClass('sort');
17
+ $( "#children" ).find('.admin').css('visibility','visible');
18
+ $("#enable-sorting").html('Change Ordering');
19
+ $.post( "children/reorder",
20
+ $('#children').nestedSortable('serialize')
21
+ );
22
+ });
23
+
24
+ $( "#children" ).nestedSortable({
25
+ forcePlaceholderSize: true,
26
+ disableNesting: 'field',
27
+ handle: 'div',
28
+ helper: 'clone',
29
+ items: 'li',
30
+ opacity: .75,
31
+ placeholder: 'placeholder',
32
+ revert: 250,
33
+ tabSize: 25,
34
+ toleranceElement: 'div'
35
+ }).sortable('disable');
36
+ });
37
+ </script>
40
38
 
41
- </table>
39
+ <button type="button" id="enable-sorting">Change Ordering</button>
42
40
 
43
- <%= link_to 'Return to Main Show', dynamic_fieldsets_fieldset_path(@parent_fieldset) %>
41
+ <div id="result"></div>
42
+
43
+ <ol id="children">
44
+ <%= render :partial => 'child', :locals => { :fieldset => @fieldset } %>
45
+ </ol>
46
+
47
+ <%= render :partial => "associate_child", :locals => {:fieldset => @fieldset} %>
48
+ <%= link_to 'Add Field', new_dynamic_fieldsets_field_path(:parent => @fieldset.id) %> |
49
+ <%= link_to 'Add Fieldset', new_dynamic_fieldsets_fieldset_path(:parent => @fieldset.id) %> |
50
+ <%= link_to 'Show Parent Fieldset', dynamic_fieldsets_fieldset_path(@fieldset) %> |
51
+ <%= link_to 'Return to Manager', :controller => :fieldsets, :action => :roots %>
44
52
 
45
53
  <br />
@@ -1,11 +1,12 @@
1
- <h1>Listing fieldsets</h1>
1
+ <h1>Listing Fieldsets</h1>
2
+
3
+ <p id="notice"><%= notice %></p>
2
4
 
3
5
  <table>
4
6
  <tr>
5
7
  <th>Nkey</th>
6
8
  <th>Name</th>
7
9
  <th>Description</th>
8
- <th>Parent fieldset</th>
9
10
  <th></th>
10
11
  <th></th>
11
12
  <th></th>
@@ -17,11 +18,10 @@
17
18
  <td><%= fieldset.nkey %></td>
18
19
  <td><%= fieldset.name %></td>
19
20
  <td><%= fieldset.description %></td>
20
- <td><%= fieldset.parent_fieldset_id %></td>
21
21
  <td><%= link_to 'Children', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(fieldset) %></td>
22
22
  <td><%= link_to 'Show', dynamic_fieldsets_fieldset_path(fieldset) %></td>
23
23
  <td><%= link_to 'Edit', edit_dynamic_fieldsets_fieldset_path(fieldset) %></td>
24
- <td><%= link_to 'Destroy', dynamic_fieldsets_fieldset_path(fieldset), :confirm => 'Are you sure?', :method => :delete %></td>
24
+ <td><%= button_to 'Destroy', dynamic_fieldsets_fieldset_path(fieldset), :confirm => 'Are you sure?', :method => :delete %></td>
25
25
  </tr>
26
26
  <% end %>
27
27
  </table>
@@ -2,4 +2,8 @@
2
2
 
3
3
  <%= render 'form' %>
4
4
 
5
- <%= link_to 'Back', dynamic_fieldsets_fieldsets_path %>
5
+ <% if params[:parent].nil? %>
6
+ <%= link_to 'Back', dynamic_fieldsets_fieldsets_path %>
7
+ <% else %>
8
+ <%= link_to 'Back', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(params[:parent]) %>
9
+ <% end %>
@@ -0,0 +1,4 @@
1
+ <h3>order:</h3>
2
+ <p>
3
+ <%= @order.inspect %>
4
+ </p>
@@ -15,17 +15,6 @@
15
15
  <%= @fieldset.description %>
16
16
  </p>
17
17
 
18
- <% if @fieldset.parent_fieldset %>
19
- <p>
20
- <b>Parent fieldset:</b>
21
- <%= @fieldset.parent_fieldset.name %>
22
- </p>
23
-
24
- <p>
25
- <b>Order num:</b>
26
- <%= @fieldset.order_num %>
27
- </p>
28
- <% end %>
29
-
18
+ <%= link_to 'Children', dynamic_fieldsets_children_dynamic_fieldsets_fieldset_path(@fieldset) %> |
30
19
  <%= link_to 'Edit', edit_dynamic_fieldsets_fieldset_path(@fieldset) %> |
31
20
  <%= link_to 'Back', dynamic_fieldsets_fieldsets_path %>