fullstack-admin 0.1.19 → 0.1.20
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.
- data/VERSION +1 -1
- data/app/assets/javascripts/support/base.js.coffee +0 -1
- data/app/assets/javascripts/support/bootstrap.js.coffee +2 -1
- data/app/assets/javascripts/support/forms.js.coffee +1 -1
- data/app/assets/javascripts/support/nested_forms.js.coffee +29 -0
- data/app/assets/stylesheets/support/forms.css +16 -1
- data/app/helpers/admin_form_helper.rb +56 -7
- data/app/helpers/scaffold_helper.rb +10 -6
- data/app/views/admin/_nav.html.erb +2 -2
- data/app/views/admin/base/_associated_resources_table.html.erb +21 -0
- data/app/views/admin/base/_form.html.erb +2 -2
- data/app/views/admin/base/_nested_form.html.erb +63 -0
- data/app/views/admin/base/edit.html.erb +5 -3
- data/app/views/admin/base/index.html.erb +1 -1
- data/app/views/layouts/admin.html.erb +1 -1
- data/{locales → config/locales}/en.yml +3 -0
- data/{locales → config/locales}/it.yml +4 -0
- data/fullstack-admin.gemspec +7 -4
- data/lib/generators/fullstack/admin/locale_generator.rb +1 -1
- data/lib/generators/fullstack/admin/scaffold_generator.rb +1 -1
- data/lib/generators/fullstack/admin/templates/root/app/assets/stylesheets/admin/admin.css +0 -3
- data/lib/generators/fullstack/admin/templates/scaffold/views/_form.html.erb.tt +2 -2
- metadata +8 -5
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.20
|
@@ -0,0 +1,29 @@
|
|
1
|
+
$(document).ready ->
|
2
|
+
$('a.btn-delete-associated-resource').live 'click', ->
|
3
|
+
self = $(@)
|
4
|
+
associated_resource = $(@).closest(".associated-resource")
|
5
|
+
|
6
|
+
if !self.hasClass("active")
|
7
|
+
associated_resource.removeClass("deleted");
|
8
|
+
associated_resource.find("input.destroy-associated-resource").val('0')
|
9
|
+
else
|
10
|
+
associated_resource.addClass("deleted");
|
11
|
+
associated_resource.find("input.destroy-associated-resource").val('1')
|
12
|
+
|
13
|
+
autoupdate_labels = (associated_resources) ->
|
14
|
+
associated_resources.each ->
|
15
|
+
associated_resource = $(@)
|
16
|
+
label_input_id = associated_resource.data("label-input")
|
17
|
+
label_input = $("#" + label_input_id)
|
18
|
+
label_input.change ->
|
19
|
+
associated_resource.find(".associated-resource-label").text(label_input.val())
|
20
|
+
|
21
|
+
$(".btn-add-associated-resource").click ->
|
22
|
+
associated_resources = $(@).closest(".associated-resources")
|
23
|
+
associated_resources_index = associated_resources.find(".associated-resources-index")
|
24
|
+
resource_fields_template = associated_resources.find(".resource-fields-template")
|
25
|
+
new_id = new Date().getTime()
|
26
|
+
template_instance = $(resource_fields_template.html().replace(/___index___/g, new_id))
|
27
|
+
associated_resources_index.append(template_instance)
|
28
|
+
autoupdate_labels(associated_resources_index.find('.associated-resource:last'))
|
29
|
+
|
@@ -167,4 +167,19 @@ select,
|
|
167
167
|
|
168
168
|
.input {
|
169
169
|
margin-bottom: 18px;
|
170
|
-
}
|
170
|
+
}
|
171
|
+
|
172
|
+
|
173
|
+
.resource_updated_at {
|
174
|
+
font: italic 12px/36px Arial, Helvetica, sans-serif;
|
175
|
+
color: #888;
|
176
|
+
}
|
177
|
+
|
178
|
+
.associated-resource.deleted .fade-if-deleted {
|
179
|
+
opacity: 0.5;
|
180
|
+
}
|
181
|
+
|
182
|
+
.associated-resource.deleted .hide-if-deleted {
|
183
|
+
display: none
|
184
|
+
}
|
185
|
+
|
@@ -36,12 +36,13 @@ module AdminFormHelper
|
|
36
36
|
end
|
37
37
|
|
38
38
|
|
39
|
-
def resource_inputs(
|
40
|
-
model =
|
39
|
+
def resource_inputs(*args)
|
40
|
+
model = @target.object.class
|
41
41
|
options = args.extract_options!
|
42
42
|
|
43
43
|
only_attributes = options[:only] || []
|
44
|
-
|
44
|
+
|
45
|
+
except_attributes = options[:except] || model.protected_attributes.to_a + %W(created_at updated_at slug slugs lat lng position)
|
45
46
|
|
46
47
|
only_attributes.map! {|a| :"#{a}"}
|
47
48
|
except_attributes.map! {|a| :"#{a}"}
|
@@ -57,11 +58,22 @@ module AdminFormHelper
|
|
57
58
|
|
58
59
|
buff = ""
|
59
60
|
|
61
|
+
attachment_definitions = (model.attachment_definitions || {}).keys
|
62
|
+
attachment_columns = attachment_definitions.map {|a|
|
63
|
+
[:"#{a}_file_name", :"#{a}_file_size", :"#{a}_content_type", :"#{a}_updated_at"]
|
64
|
+
}.flatten
|
65
|
+
|
66
|
+
columns -= attachment_columns
|
67
|
+
columns += attachment_definitions
|
68
|
+
|
69
|
+
|
60
70
|
columns.each {|k|
|
61
|
-
k = "#{k}".gsub(/_ids?$/, "").to_sym
|
71
|
+
k = "#{k}".gsub(/_ids?$/, "").gsub(/_type$/, "").to_sym
|
62
72
|
assoc = model.reflect_on_association(k)
|
63
73
|
if assoc && assoc.belongs_to?
|
64
|
-
|
74
|
+
unless assoc.options[:polymorphic]
|
75
|
+
buff << @target.input(k, :as => :select)
|
76
|
+
end
|
65
77
|
else
|
66
78
|
buff << @target.input(k)
|
67
79
|
end
|
@@ -71,8 +83,8 @@ module AdminFormHelper
|
|
71
83
|
buff.html_safe
|
72
84
|
end
|
73
85
|
|
74
|
-
def resource_submit
|
75
|
-
@target.template.button (
|
86
|
+
def resource_submit
|
87
|
+
@target.template.button (@target.object.persisted? ? I18n.t('fullstack.admin.update', :default => "Update") : I18n.t('fullstack.admin.create', :default => "Create")),
|
76
88
|
:type => :primary,
|
77
89
|
:size => :large
|
78
90
|
end
|
@@ -81,6 +93,43 @@ module AdminFormHelper
|
|
81
93
|
@target.template.form_actions(&block)
|
82
94
|
end
|
83
95
|
|
96
|
+
def admin_fields_for(*args)
|
97
|
+
@target.semantic_fields_for(*args) do |f|
|
98
|
+
yield(FormBuilderDecorator.new(f))
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
def association_inputs(association)
|
103
|
+
@target.template.content_tag :div,:class => "well" do
|
104
|
+
admin_fields_for(association) do |f|
|
105
|
+
|
106
|
+
partial_name = association.to_s.singularize + "_fields"
|
107
|
+
|
108
|
+
if @target.template.partial?(partial_name)
|
109
|
+
@target.template.render(:partial => partial_name, :f => f)
|
110
|
+
else
|
111
|
+
f.resource_inputs
|
112
|
+
end
|
113
|
+
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
# def link_to_remove_fields(name)
|
119
|
+
# @target.hidden_field(:_destroy) + link_to_function(name, "remove_fields(this)")
|
120
|
+
# end
|
121
|
+
#
|
122
|
+
# def link_to_add_fields(name, association)
|
123
|
+
# new_object = @target.object.class.reflect_on_association(association).klass.new
|
124
|
+
#
|
125
|
+
# partial_name = association.to_s.singularize + "_fields"
|
126
|
+
# fields = admin_fields_for(association, new_object, :child_index => "new_#{association}") do |builder|
|
127
|
+
#
|
128
|
+
# end
|
129
|
+
# @target.template.link_to_function(name, "add_fields(this, \"#{association}\", \"#{escape_javascript(fields)}\")")
|
130
|
+
# end
|
131
|
+
|
132
|
+
|
84
133
|
end # ~
|
85
134
|
|
86
135
|
def admin_form_for(record_or_name_or_array, *args)
|
@@ -3,27 +3,30 @@ module ScaffoldHelper
|
|
3
3
|
buttons = []
|
4
4
|
|
5
5
|
if subject.can_show?(content) && lookup_context.exists?('show', lookup_context.prefixes, false)
|
6
|
-
buttons << link_to(t('fullstack.admin.show', :default => "Show"), self.send(:"#{scope}_#{
|
6
|
+
buttons << link_to(t('fullstack.admin.show', :default => "Show"), self.send(:"#{scope}_#{resource_name}_path", content), :class => "btn")
|
7
7
|
end
|
8
8
|
|
9
9
|
if subject.can_edit?(content)
|
10
|
-
buttons << link_to(t('fullstack.admin.edit', :default => "Edit"), self.send(:"edit_#{scope}_#{
|
10
|
+
buttons << link_to(t('fullstack.admin.edit', :default => "Edit"), self.send(:"edit_#{scope}_#{resource_name}_path", content), :class => "btn")
|
11
11
|
end
|
12
12
|
|
13
13
|
if subject.can_destroy?(content)
|
14
14
|
buttons << link_to(t('fullstack.admin.delete', :default => "Delete"),
|
15
|
-
self.send(:"#{scope}_#{
|
15
|
+
self.send(:"#{scope}_#{resource_name}_path", content),
|
16
16
|
:confirm => t('fullstack.admin.are_you_sure', :default => "Are you sure?"), :method => "delete",
|
17
17
|
:remote => true, :class => "btn hide btn-danger"
|
18
|
-
|
19
18
|
)
|
20
19
|
end
|
21
20
|
"#{buttons.join(' ')}".html_safe
|
22
21
|
end
|
23
22
|
|
23
|
+
def labelize_attribute_name(method)
|
24
|
+
label(:object, method).gsub("<label for=\"object_#{method}\">", "").gsub("</label>", "")
|
25
|
+
end
|
26
|
+
|
24
27
|
def sort_link(method)
|
25
28
|
method = "#{method}"
|
26
|
-
super(@search, method,
|
29
|
+
super(@search, method, labelize_attribute_name(method))
|
27
30
|
end
|
28
31
|
|
29
32
|
def app_name
|
@@ -35,7 +38,8 @@ module ScaffoldHelper
|
|
35
38
|
end
|
36
39
|
|
37
40
|
def title_column(model)
|
38
|
-
|
41
|
+
@_title_columns ||= {}
|
42
|
+
@_title_columns[model] ||= ( model.column_names.map{ |c| c.to_s } & %W(title name label browser_title seo_title seo_name key claim email) ).first
|
39
43
|
end
|
40
44
|
|
41
45
|
|
@@ -20,10 +20,10 @@
|
|
20
20
|
|
21
21
|
<% Fullstack::Admin.resources.each do |rog| %>
|
22
22
|
<% if rog.type == :group %>
|
23
|
-
|
23
|
+
<%= nav_header t(rog.name, :scope => 'fullstack.admin.groups', :default => rog.name.to_s.humanize) %>
|
24
24
|
|
25
25
|
<% elsif rog.type == :resource %>
|
26
|
-
<%= nav_item rog.name, [:admin, rog.name] %>
|
26
|
+
<%= nav_item t(rog.name, :scope => 'fullstack.admin.resources', :default => rog.name.to_s.humanize), [:admin, rog.name] %>
|
27
27
|
<% end %>
|
28
28
|
<% end %>
|
29
29
|
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<% association_class = f.object.class.reflect_on_association(association).klass %>
|
2
|
+
<%= f.inputs t(association, :scope => 'activerecord.models', :default => association.to_s.humanize), :class => "associated-resources" do %>
|
3
|
+
|
4
|
+
<table class="table table-bordered table-striped index-table associated-resources-index">
|
5
|
+
<tr><th><%= labelize_attribute_name(title_column(association_class)) %></th><th style="width:30%;"><%= t('fullstack.admin.actions', :default => "Actions") %></th></tr>
|
6
|
+
<% i = 0 %>
|
7
|
+
<%= f.admin_fields_for association do |f| %>
|
8
|
+
<%= render :partial => "nested_form", :locals => {:index => i, :f => f, :resource_name => resource_name, :association => association} %>
|
9
|
+
<% i += 1 %>
|
10
|
+
<% end %>
|
11
|
+
</table>
|
12
|
+
|
13
|
+
<script type="text/html" charset="utf-8" class="resource-fields-template">
|
14
|
+
<%= f.admin_fields_for(association, association_class.new, :child_index => "___index___") do |f| %>
|
15
|
+
<%= render :partial => "nested_form", :locals => {:index => "___index___", :f => f, :resource_name => resource_name, :association => association} %>
|
16
|
+
<% end %>
|
17
|
+
</script>
|
18
|
+
|
19
|
+
<%= button t('fullstack.admin.add', :default => "Add"), "javascript:void(0);", :class => "btn-add-associated-resource" %>
|
20
|
+
|
21
|
+
<% end %>
|
@@ -3,11 +3,11 @@
|
|
3
3
|
<%= f.errors %>
|
4
4
|
|
5
5
|
<%= f.inputs do %>
|
6
|
-
|
6
|
+
<%= f.resource_inputs %>
|
7
7
|
<% end -%>
|
8
8
|
|
9
9
|
<%= f.actions do %>
|
10
|
-
|
10
|
+
<%= f.resource_submit %>
|
11
11
|
<% end %>
|
12
12
|
|
13
13
|
<% end -%>
|
@@ -0,0 +1,63 @@
|
|
1
|
+
<% title_column_or_id = title_column(f.object.class) || "id" %>
|
2
|
+
<% resource_title = f.object.send(title_column_or_id) %>
|
3
|
+
|
4
|
+
<tr <%= 'data-new-record' if f.object.new_record? %> class="associated-resource" data-label-input="menu_links_attributes_<%= index %>_<%= title_column_or_id %>">
|
5
|
+
<td>
|
6
|
+
<div class="fade-if-deleted">
|
7
|
+
<% if f.object.persisted? %>
|
8
|
+
<span class='associated-resource-label'><%= resource_title %></span>
|
9
|
+
<% else %>
|
10
|
+
<span class='associated-resource-label'><i>[ <%= t('fullstack.admin.new_record', :default => "new record") %> ]</i></span>
|
11
|
+
<% end %>
|
12
|
+
</div>
|
13
|
+
</td>
|
14
|
+
<td>
|
15
|
+
|
16
|
+
<div class="modal hide" id="<%= resource_name %>_<%= association %>_fields_<%= index %>">
|
17
|
+
<div class="modal-header">
|
18
|
+
<button type="button" class="close" data-dismiss="modal">×</button>
|
19
|
+
<h3>
|
20
|
+
<%= t('fullstack.admin.edit', :default => "Edit") %>
|
21
|
+
|
22
|
+
<% if f.object.persisted? %>
|
23
|
+
"<span class='associated-resource-label'><%= resource_title %></span>"
|
24
|
+
<% else %>
|
25
|
+
"<span class='associated-resource-label'>[ <%= t('fullstack.admin.new_record', :default => "new record") %> ]</span>"
|
26
|
+
<% end %>
|
27
|
+
|
28
|
+
</h3>
|
29
|
+
</div>
|
30
|
+
<div class="modal-body">
|
31
|
+
<%= f.resource_inputs %>
|
32
|
+
<%= f.hidden_field(:_destroy, :class => "destroy-associated-resource") %>
|
33
|
+
</div>
|
34
|
+
<div class="modal-footer">
|
35
|
+
<a href="#" class="btn" data-dismiss="modal"><%= t('fullstack.admin.ok', :default => "Ok") %></a>
|
36
|
+
</div>
|
37
|
+
</div>
|
38
|
+
|
39
|
+
<span class="hide-if-deleted">
|
40
|
+
<% if f.object.errors.any? %>
|
41
|
+
<span data-toggle="popover" title="Your association contains some errors" data-content='<%= h("#{f.errors}") %>' ><%= icon :"warning-sign" %></span>
|
42
|
+
<% end %>
|
43
|
+
|
44
|
+
<% if subject.can_edit?(f.object) %>
|
45
|
+
<%= button t('fullstack.admin.edit', :default => "Edit"), "##{resource_name}_#{association}_fields_#{index}", :data => {:toggle => :modal} %>
|
46
|
+
<% end %>
|
47
|
+
</span>
|
48
|
+
|
49
|
+
<% if subject.can_destroy?(f.object) %>
|
50
|
+
<%= button(
|
51
|
+
t('fullstack.admin.delete', :default => "Delete"),
|
52
|
+
"javascript:void(0)",
|
53
|
+
:type => :danger, :class => "btn-delete-associated-resource", :"data-toggle" => :button
|
54
|
+
)
|
55
|
+
%>
|
56
|
+
<% end %>
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
</td>
|
61
|
+
</tr>
|
62
|
+
|
63
|
+
|
@@ -3,12 +3,14 @@
|
|
3
3
|
<% if content_for? :title -%>
|
4
4
|
<%= yield :title %>
|
5
5
|
<% else -%>
|
6
|
-
<%= t('fullstack.admin.edit', :default => "Edit") %>
|
6
|
+
<%= t('fullstack.admin.edit', :default => "Edit") %> "<%= title_for(current_resource) %>"
|
7
7
|
<% end -%>
|
8
8
|
</h1>
|
9
|
-
|
10
|
-
|
9
|
+
<% if current_resource.respond_to?(:updated_at) %>
|
10
|
+
<div class="resource_updated_at">
|
11
|
+
<%= t('fullstack.admin.last_updated', :default => "Last updated") %>: <%= distance_of_time_in_words_to_now(current_resource.updated_at) %> <%= t('fullstack.admin.ago', :default => "ago") %>
|
11
12
|
</div>
|
13
|
+
<% end %>
|
12
14
|
</div>
|
13
15
|
|
14
16
|
|
data/fullstack-admin.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "fullstack-admin"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.20"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["mcasimir"]
|
12
|
-
s.date = "2012-08-
|
12
|
+
s.date = "2012-08-17"
|
13
13
|
s.description = "Administration interface framework for fullstack"
|
14
14
|
s.email = "maurizio.cas@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -931,6 +931,7 @@ Gem::Specification.new do |s|
|
|
931
931
|
"app/assets/javascripts/support/facebox.js.coffee",
|
932
932
|
"app/assets/javascripts/support/forms.js.coffee",
|
933
933
|
"app/assets/javascripts/support/gmap.js.coffee",
|
934
|
+
"app/assets/javascripts/support/nested_forms.js.coffee",
|
934
935
|
"app/assets/javascripts/support/pickers.js.coffee",
|
935
936
|
"app/assets/javascripts/support/plupload.js.coffee",
|
936
937
|
"app/assets/javascripts/support/uploads.js.coffee",
|
@@ -974,8 +975,10 @@ Gem::Specification.new do |s|
|
|
974
975
|
"app/models/suspendable.rb",
|
975
976
|
"app/models/trackable.rb",
|
976
977
|
"app/views/admin/_nav.html.erb",
|
978
|
+
"app/views/admin/base/_associated_resources_table.html.erb",
|
977
979
|
"app/views/admin/base/_form.html.erb",
|
978
980
|
"app/views/admin/base/_index.html.erb",
|
981
|
+
"app/views/admin/base/_nested_form.html.erb",
|
979
982
|
"app/views/admin/base/destroy.js.coffee",
|
980
983
|
"app/views/admin/base/edit.html.erb",
|
981
984
|
"app/views/admin/base/index.html.erb",
|
@@ -983,6 +986,8 @@ Gem::Specification.new do |s|
|
|
983
986
|
"app/views/admin/base/update.js.coffee",
|
984
987
|
"app/views/layouts/admin.html.erb",
|
985
988
|
"config/initializers/formtastic_bootstrap_timeish_hack.rb",
|
989
|
+
"config/locales/en.yml",
|
990
|
+
"config/locales/it.yml",
|
986
991
|
"config/routes.rb",
|
987
992
|
"fullstack-admin.gemspec",
|
988
993
|
"lib/fullstack-admin.rb",
|
@@ -1003,8 +1008,6 @@ Gem::Specification.new do |s|
|
|
1003
1008
|
"lib/generators/fullstack/admin/templates/scaffold/controller.rb",
|
1004
1009
|
"lib/generators/fullstack/admin/templates/scaffold/views/_form.html.erb.tt",
|
1005
1010
|
"lib/generators/fullstack/admin/templates/scaffold/views/_index.html.erb.tt",
|
1006
|
-
"locales/en.yml",
|
1007
|
-
"locales/it.yml",
|
1008
1011
|
"vendor/assets/javascripts/ajax-chosen.js",
|
1009
1012
|
"vendor/assets/javascripts/angular.js",
|
1010
1013
|
"vendor/assets/javascripts/bootstrap.js",
|
@@ -4,7 +4,7 @@ module Fullstack
|
|
4
4
|
source_root File.expand_path('../../../../../locales', __FILE__)
|
5
5
|
|
6
6
|
def install
|
7
|
-
|
7
|
+
create_file Rails.root.join("config", "locales", "fullstack.admin.#{name}.yml")
|
8
8
|
end
|
9
9
|
|
10
10
|
end
|
@@ -86,7 +86,7 @@ str
|
|
86
86
|
end
|
87
87
|
|
88
88
|
def title_column
|
89
|
-
( model.column_names & %W(title name label browser_title seo_title seo_name key claim email) ).first
|
89
|
+
( model.column_names.map {|c| } & %W(title name label browser_title seo_title seo_name key claim email) ).first
|
90
90
|
end
|
91
91
|
|
92
92
|
def controller_class_name
|
@@ -3,11 +3,11 @@
|
|
3
3
|
<%%= f.errors %>
|
4
4
|
|
5
5
|
<%%= f.inputs do %>
|
6
|
-
|
6
|
+
<%%= f.resource_inputs %>
|
7
7
|
<%% end -%>
|
8
8
|
|
9
9
|
<%%= f.actions do %>
|
10
|
-
|
10
|
+
<%%= f.resource_submit %>
|
11
11
|
<%% end %>
|
12
12
|
|
13
13
|
<%% end -%>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fullstack-admin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.20
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-08-
|
12
|
+
date: 2012-08-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -1189,6 +1189,7 @@ files:
|
|
1189
1189
|
- app/assets/javascripts/support/facebox.js.coffee
|
1190
1190
|
- app/assets/javascripts/support/forms.js.coffee
|
1191
1191
|
- app/assets/javascripts/support/gmap.js.coffee
|
1192
|
+
- app/assets/javascripts/support/nested_forms.js.coffee
|
1192
1193
|
- app/assets/javascripts/support/pickers.js.coffee
|
1193
1194
|
- app/assets/javascripts/support/plupload.js.coffee
|
1194
1195
|
- app/assets/javascripts/support/uploads.js.coffee
|
@@ -1232,8 +1233,10 @@ files:
|
|
1232
1233
|
- app/models/suspendable.rb
|
1233
1234
|
- app/models/trackable.rb
|
1234
1235
|
- app/views/admin/_nav.html.erb
|
1236
|
+
- app/views/admin/base/_associated_resources_table.html.erb
|
1235
1237
|
- app/views/admin/base/_form.html.erb
|
1236
1238
|
- app/views/admin/base/_index.html.erb
|
1239
|
+
- app/views/admin/base/_nested_form.html.erb
|
1237
1240
|
- app/views/admin/base/destroy.js.coffee
|
1238
1241
|
- app/views/admin/base/edit.html.erb
|
1239
1242
|
- app/views/admin/base/index.html.erb
|
@@ -1241,6 +1244,8 @@ files:
|
|
1241
1244
|
- app/views/admin/base/update.js.coffee
|
1242
1245
|
- app/views/layouts/admin.html.erb
|
1243
1246
|
- config/initializers/formtastic_bootstrap_timeish_hack.rb
|
1247
|
+
- config/locales/en.yml
|
1248
|
+
- config/locales/it.yml
|
1244
1249
|
- config/routes.rb
|
1245
1250
|
- fullstack-admin.gemspec
|
1246
1251
|
- lib/fullstack-admin.rb
|
@@ -1261,8 +1266,6 @@ files:
|
|
1261
1266
|
- lib/generators/fullstack/admin/templates/scaffold/controller.rb
|
1262
1267
|
- lib/generators/fullstack/admin/templates/scaffold/views/_form.html.erb.tt
|
1263
1268
|
- lib/generators/fullstack/admin/templates/scaffold/views/_index.html.erb.tt
|
1264
|
-
- locales/en.yml
|
1265
|
-
- locales/it.yml
|
1266
1269
|
- vendor/assets/javascripts/ajax-chosen.js
|
1267
1270
|
- vendor/assets/javascripts/angular.js
|
1268
1271
|
- vendor/assets/javascripts/bootstrap.js
|
@@ -1299,7 +1302,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1299
1302
|
version: '0'
|
1300
1303
|
segments:
|
1301
1304
|
- 0
|
1302
|
-
hash:
|
1305
|
+
hash: 1912159518853261136
|
1303
1306
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1304
1307
|
none: false
|
1305
1308
|
requirements:
|