fullstack-admin 0.1.11 → 0.1.12
Sign up to get free protection for your applications and to get access to all the features.
- data/VERSION +1 -1
- data/app/views/admin/base/destroy.js.coffee +2 -2
- data/config/initializers/ckeditor.rb +5 -0
- data/fullstack-admin.gemspec +7 -3
- data/lib/fullstack/admin/engine.rb +4 -1
- data/lib/generators/fullstack/admin/install_generator.rb +5 -4
- data/lib/generators/fullstack/admin/locale_generator.rb +1 -1
- data/lib/generators/fullstack/admin/scaffold_generator.rb +118 -0
- data/lib/generators/fullstack/admin/templates/root/app/views/admin/_nav.html.erb +34 -0
- data/lib/generators/fullstack/admin/templates/root/db/migrate/20120730204729_create_ckeditor_assets.rb +26 -0
- data/locales/{fullstack.admin.it.yml → it.yml} +0 -0
- metadata +8 -4
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.12
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<% if instance_variable_get("@#{controller_name.singularize}").destroyed? %>
|
2
2
|
$("a[data-method='delete']").filter("[href='<%=j request.path %>']").closest("tr, li").remove()
|
3
|
-
notify_notice('<%=j t("flash.success.delete") %>')
|
3
|
+
notify_notice('<%=j t("fullstack.admin.flash.success.delete") %>')
|
4
4
|
<% else %>
|
5
|
-
notify_error('<%=j t("flash.error.delete") %>')
|
5
|
+
notify_error('<%=j t("fullstack.admin.flash.error.delete") %>')
|
6
6
|
<% end %>
|
7
7
|
|
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.12"
|
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-13"
|
13
13
|
s.description = "Administration interface framework for fullstack"
|
14
14
|
s.email = "maurizio.cas@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -981,6 +981,7 @@ Gem::Specification.new do |s|
|
|
981
981
|
"app/views/admin/base/new.html.erb",
|
982
982
|
"app/views/admin/base/update.js.coffee",
|
983
983
|
"app/views/layouts/admin.html.erb",
|
984
|
+
"config/initializers/ckeditor.rb",
|
984
985
|
"config/routes.rb",
|
985
986
|
"fullstack-admin.gemspec",
|
986
987
|
"lib/fullstack-admin.rb",
|
@@ -988,14 +989,17 @@ Gem::Specification.new do |s|
|
|
988
989
|
"lib/fullstack/admin/engine.rb",
|
989
990
|
"lib/generators/fullstack/admin/install_generator.rb",
|
990
991
|
"lib/generators/fullstack/admin/locale_generator.rb",
|
992
|
+
"lib/generators/fullstack/admin/scaffold_generator.rb",
|
991
993
|
"lib/generators/fullstack/admin/templates/root/app/assets/javascripts/admin/admin.js.coffee",
|
992
994
|
"lib/generators/fullstack/admin/templates/root/app/assets/stylesheets/admin/admin.css",
|
993
995
|
"lib/generators/fullstack/admin/templates/root/app/controllers/admin/dashboard_controller.rb",
|
994
996
|
"lib/generators/fullstack/admin/templates/root/app/models/user.rb",
|
997
|
+
"lib/generators/fullstack/admin/templates/root/app/views/admin/_nav.html.erb",
|
995
998
|
"lib/generators/fullstack/admin/templates/root/app/views/admin/dashboard/show.html.erb",
|
999
|
+
"lib/generators/fullstack/admin/templates/root/db/migrate/20120730204729_create_ckeditor_assets.rb",
|
996
1000
|
"lib/generators/fullstack/admin/templates/root/lib/support/user_subject.rb",
|
997
1001
|
"locales/en.yml",
|
998
|
-
"locales/
|
1002
|
+
"locales/it.yml",
|
999
1003
|
"vendor/assets/javascripts/ajax-chosen.js",
|
1000
1004
|
"vendor/assets/javascripts/angular.js",
|
1001
1005
|
"vendor/assets/javascripts/bootstrap.js",
|
@@ -15,7 +15,7 @@ module Fullstack
|
|
15
15
|
generate "fullstack:install --host='#{host}' --user='#{user}' --title='#{title}' --slogan='#{slogan}'"
|
16
16
|
end
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
def copy_templates
|
20
20
|
directory "root", Rails.root
|
21
21
|
end
|
@@ -31,15 +31,16 @@ eos
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def append_routes
|
34
|
-
|
35
|
-
|
34
|
+
src = <<-eos
|
35
|
+
|
36
36
|
namespace :admin do
|
37
37
|
root :to => "dashboard#show"
|
38
38
|
end
|
39
39
|
|
40
40
|
eos
|
41
|
+
route(src)
|
41
42
|
|
42
|
-
|
43
|
+
route("\n devise_for :users\n")
|
43
44
|
end
|
44
45
|
|
45
46
|
def english_localizations
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module Fullstack
|
2
2
|
module Admin
|
3
3
|
class LocaleGenerator < Rails::Generators::NamedBase
|
4
|
-
source_root File.expand_path('
|
4
|
+
source_root File.expand_path('../../../../../locales', __FILE__)
|
5
5
|
|
6
6
|
def install
|
7
7
|
copy_file "#{name}.yml", Rails.root.join("config", "locales", "fullstack.admin.#{name}.yml")
|
@@ -0,0 +1,118 @@
|
|
1
|
+
module Fullstack
|
2
|
+
module Admin
|
3
|
+
class ScaffoldGenerator < Rails::Generators::Base
|
4
|
+
source_root File.expand_path('../templates/scaffold', __FILE__)
|
5
|
+
|
6
|
+
argument :name, :required => true
|
7
|
+
class_option :views, :type => :boolean, :default => true
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
def create_controller_files
|
12
|
+
template 'controller.rb', File.join("app/controllers/", scope, "#{file_name.pluralize}_controller.rb")
|
13
|
+
end
|
14
|
+
|
15
|
+
def add_routes
|
16
|
+
routes_rb = Rails.root.join('config', 'routes.rb')
|
17
|
+
|
18
|
+
altered_lines = []
|
19
|
+
File.open(routes_rb) do |file|
|
20
|
+
lines = file.read.split("\n")
|
21
|
+
lines.each do |line|
|
22
|
+
if line =~ /^ \s* namespace \s+ :#{scope} \s+ do /x
|
23
|
+
leading_space = line.match(/^(\s*)/)[1] + " "
|
24
|
+
line = [line, "#{leading_space}resources :#{plural_name}, :except => [:show]"].join("\n")
|
25
|
+
end
|
26
|
+
altered_lines << line
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
File.open(routes_rb, 'w') do |file|
|
31
|
+
file.write(altered_lines.join("\n"))
|
32
|
+
end
|
33
|
+
|
34
|
+
say("addedd 'resources :#{plural_name}, :except => [:show]' to namespace ':#{scope}' in routes.rb")
|
35
|
+
end
|
36
|
+
|
37
|
+
def create_views
|
38
|
+
if options[:views]
|
39
|
+
directory('views', Rails.root.join('app', 'views', scope, plural_name))
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
# def generate_inputs
|
44
|
+
# generate("inputs #{name.singularize} --scope #{scope}")
|
45
|
+
# end
|
46
|
+
|
47
|
+
def append_to_menu
|
48
|
+
gsub_file(Rails.root.join('app', 'views', scope, "shared", "_nav.html.erb"), /\<\!-- items placeholder --\>\n/) do
|
49
|
+
<<-str
|
50
|
+
<%= nav_item _("#{controller_class_name}"), #{scope}_#{plural_name}_path %>
|
51
|
+
<!-- items placeholder -->
|
52
|
+
|
53
|
+
str
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
protected
|
58
|
+
|
59
|
+
def scope
|
60
|
+
@scope ||= "admin"
|
61
|
+
end
|
62
|
+
|
63
|
+
def plural_name
|
64
|
+
name.pluralize
|
65
|
+
end
|
66
|
+
|
67
|
+
def singular_name
|
68
|
+
name.singularize
|
69
|
+
end
|
70
|
+
|
71
|
+
def scope_class
|
72
|
+
scope.camelize
|
73
|
+
end
|
74
|
+
|
75
|
+
# def inputs
|
76
|
+
# exclude_attributes = model.protected_attributes.to_a + %W(created_at updated_at slug)
|
77
|
+
# columns = model.columns_hash.map {|k, v| [k, v.type]}.delete_if {|k, t| exclude_attributes.include?(k)}
|
78
|
+
# end
|
79
|
+
|
80
|
+
def has_timestamps?
|
81
|
+
model.columns_hash["created_at"]
|
82
|
+
end
|
83
|
+
|
84
|
+
def title_column
|
85
|
+
( model.column_names & %W(title name label claim) ).first
|
86
|
+
end
|
87
|
+
|
88
|
+
def controller_class_name
|
89
|
+
class_name.pluralize
|
90
|
+
end
|
91
|
+
|
92
|
+
def resource_class_name
|
93
|
+
class_name.singularize
|
94
|
+
end
|
95
|
+
|
96
|
+
def resource_name
|
97
|
+
file_name.singularize
|
98
|
+
end
|
99
|
+
|
100
|
+
def collection_name
|
101
|
+
file_name.pluralize
|
102
|
+
end
|
103
|
+
|
104
|
+
def file_name
|
105
|
+
name
|
106
|
+
end
|
107
|
+
|
108
|
+
def model
|
109
|
+
class_name.constantize
|
110
|
+
end
|
111
|
+
|
112
|
+
def content?
|
113
|
+
options[:content]
|
114
|
+
end
|
115
|
+
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
<% content_for :menu do -%>
|
2
|
+
|
3
|
+
<%= nav do %>
|
4
|
+
<%= nav_item _("Dashboard"), admin_root_path, :icon => "cog" , :icon_color => :white %>
|
5
|
+
<% end %>
|
6
|
+
|
7
|
+
<%= nav(:class => 'float right') do %>
|
8
|
+
<%= nav_item _("Homepage"), "/", :icon => "home" , :icon_color => :white %>
|
9
|
+
<%= dropdown_nav_item _("Account"), :icon => "user" , :icon_color => :white do %>
|
10
|
+
<%= nav_item _('Logout'), destroy_user_session_path, :method => :delete %>
|
11
|
+
<% end %>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<% end -%>
|
15
|
+
|
16
|
+
<% content_for :nav do -%>
|
17
|
+
|
18
|
+
<div class="well">
|
19
|
+
<%= nav_list do %>
|
20
|
+
<%= nav_header _("Contents") %>
|
21
|
+
<!-- FULLSTACK_PLACEHOLDER -->
|
22
|
+
|
23
|
+
<!-- Please do not delete the comment above.
|
24
|
+
It is a placeholder used by fullstack generators
|
25
|
+
to attach new menu items
|
26
|
+
-->
|
27
|
+
|
28
|
+
<%= nav_header _("Users") %>
|
29
|
+
<%= nav_item _("Users"), admin_users_path %>
|
30
|
+
<% end -%>
|
31
|
+
</div>
|
32
|
+
|
33
|
+
|
34
|
+
<% end -%>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
class CreateCkeditorAssets < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
create_table :ckeditor_assets do |t|
|
4
|
+
t.string :data_file_name, :null => false
|
5
|
+
t.string :data_content_type
|
6
|
+
t.integer :data_file_size
|
7
|
+
|
8
|
+
t.integer :assetable_id
|
9
|
+
t.string :assetable_type, :limit => 30
|
10
|
+
t.string :type, :limit => 30
|
11
|
+
|
12
|
+
# Uncomment it to save images dimensions, if your need it
|
13
|
+
t.integer :width
|
14
|
+
t.integer :height
|
15
|
+
|
16
|
+
t.timestamps
|
17
|
+
end
|
18
|
+
|
19
|
+
add_index "ckeditor_assets", ["assetable_type", "type", "assetable_id"], :name => "idx_ckeditor_assetable_type"
|
20
|
+
add_index "ckeditor_assets", ["assetable_type", "assetable_id"], :name => "idx_ckeditor_assetable"
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.down
|
24
|
+
drop_table :ckeditor_assets
|
25
|
+
end
|
26
|
+
end
|
File without changes
|
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.12
|
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-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -1207,6 +1207,7 @@ files:
|
|
1207
1207
|
- app/views/admin/base/new.html.erb
|
1208
1208
|
- app/views/admin/base/update.js.coffee
|
1209
1209
|
- app/views/layouts/admin.html.erb
|
1210
|
+
- config/initializers/ckeditor.rb
|
1210
1211
|
- config/routes.rb
|
1211
1212
|
- fullstack-admin.gemspec
|
1212
1213
|
- lib/fullstack-admin.rb
|
@@ -1214,14 +1215,17 @@ files:
|
|
1214
1215
|
- lib/fullstack/admin/engine.rb
|
1215
1216
|
- lib/generators/fullstack/admin/install_generator.rb
|
1216
1217
|
- lib/generators/fullstack/admin/locale_generator.rb
|
1218
|
+
- lib/generators/fullstack/admin/scaffold_generator.rb
|
1217
1219
|
- lib/generators/fullstack/admin/templates/root/app/assets/javascripts/admin/admin.js.coffee
|
1218
1220
|
- lib/generators/fullstack/admin/templates/root/app/assets/stylesheets/admin/admin.css
|
1219
1221
|
- lib/generators/fullstack/admin/templates/root/app/controllers/admin/dashboard_controller.rb
|
1220
1222
|
- lib/generators/fullstack/admin/templates/root/app/models/user.rb
|
1223
|
+
- lib/generators/fullstack/admin/templates/root/app/views/admin/_nav.html.erb
|
1221
1224
|
- lib/generators/fullstack/admin/templates/root/app/views/admin/dashboard/show.html.erb
|
1225
|
+
- lib/generators/fullstack/admin/templates/root/db/migrate/20120730204729_create_ckeditor_assets.rb
|
1222
1226
|
- lib/generators/fullstack/admin/templates/root/lib/support/user_subject.rb
|
1223
1227
|
- locales/en.yml
|
1224
|
-
- locales/
|
1228
|
+
- locales/it.yml
|
1225
1229
|
- vendor/assets/javascripts/ajax-chosen.js
|
1226
1230
|
- vendor/assets/javascripts/angular.js
|
1227
1231
|
- vendor/assets/javascripts/bootstrap.js
|
@@ -1258,7 +1262,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1258
1262
|
version: '0'
|
1259
1263
|
segments:
|
1260
1264
|
- 0
|
1261
|
-
hash: -
|
1265
|
+
hash: -2592282413072707918
|
1262
1266
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1263
1267
|
none: false
|
1264
1268
|
requirements:
|