bootswatch_rails 3.3.0.4 → 3.3.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/bootswatch_rails/version.rb +1 -1
- data/lib/generators/bootswatch_rails/install/templates/head.html.erb +1 -0
- data/lib/generators/bootswatch_rails/install/templates/lib/templates/erb/scaffold/edit.html.erb +1 -0
- data/lib/generators/bootswatch_rails/install/templates/lib/templates/erb/scaffold/index.html.erb +1 -0
- data/lib/generators/bootswatch_rails/install/templates/lib/templates/erb/scaffold/new.html.erb +1 -0
- data/lib/generators/bootswatch_rails/install/templates/lib/templates/erb/scaffold/show.html.erb +1 -0
- data/lib/generators/bootswatch_rails/sorcery/sorcery_generator.rb +19 -24
- data/lib/generators/bootswatch_rails/sorcery/templates/_form.html.erb +3 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/change.html.erb +1 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/edit.html.erb +1 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/index.html.erb +9 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/log_in.html.erb +1 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/new.html.erb +1 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/password.html.erb +1 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/show.html.erb +7 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/sorcery.de.yml +1 -36
- data/lib/generators/bootswatch_rails/sorcery/templates/user_migration.rb +15 -0
- data/lib/generators/bootswatch_rails/sorcery/templates/user_model.rb +0 -6
- data/lib/generators/bootswatch_rails/sorcery/templates/users_controller.rb +1 -1
- data/vendor/assets/stylesheets/cosmo.css +21 -0
- data/vendor/assets/stylesheets/cyborg.css +26 -0
- data/vendor/assets/stylesheets/darkly.css +26 -0
- data/vendor/assets/stylesheets/flatly.css +26 -0
- data/vendor/assets/stylesheets/lumen.css +26 -0
- data/vendor/assets/stylesheets/paper.css +12 -4
- data/vendor/assets/stylesheets/slate.css +26 -0
- data/vendor/assets/stylesheets/superhero.css +26 -0
- metadata +2 -9
- data/lib/generators/bootswatch_rails/sorcery/templates/ability_migration.rb +0 -28
- data/lib/generators/bootswatch_rails/sorcery/templates/ability_model.rb +0 -3
- data/lib/generators/bootswatch_rails/sorcery/templates/assignment_migration.rb +0 -10
- data/lib/generators/bootswatch_rails/sorcery/templates/assignment_model.rb +0 -4
- data/lib/generators/bootswatch_rails/sorcery/templates/role_migration.rb +0 -11
- data/lib/generators/bootswatch_rails/sorcery/templates/role_model.rb +0 -5
- data/lib/generators/bootswatch_rails/sorcery/templates/roles_controller.rb +0 -80
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0d0d6efb0c4b56a2af9105b3c8167d0de16b0af0
|
4
|
+
data.tar.gz: b15a82573f9e3e328dca1173468ec18e15c05fd4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0921b682e32e3b93677183b82e5de17177b6e95e4040e87b6ee603ff144342ff5d9a08c0a7e235d5abe1aa4d463f5f7f452dbb56555163638a90a2053223daa9
|
7
|
+
data.tar.gz: 54ebe17cd7b7d9b826e3bee0f7166f3542ec2ab27c68402e0e86f2923a281b3e38387c5f99a5cd7fbebcd15c053c5a427e5858e2ce7d1b490132baa4c1e1df5f
|
@@ -2,7 +2,7 @@ module BootswatchRails
|
|
2
2
|
BOOTSTRAP = "3.3.0"
|
3
3
|
BOOTSWATCH = "3.2.0"
|
4
4
|
FONT_AWESOME = "4.2.0"
|
5
|
-
VERSION = "3.3.0.
|
5
|
+
VERSION = "3.3.0.5"
|
6
6
|
|
7
7
|
THEMES = [:cerulean, :cosmo, :custom, :cyborg, :darkly, :flatly, :journal, :lumen, :paper, :readable, :sandstone, :simplex, :slate, :spacelab, :superhero, :united, :yeti]
|
8
8
|
DEFAULT = 0
|
@@ -2,6 +2,7 @@
|
|
2
2
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
3
3
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
4
4
|
|
5
|
+
<%%= favicon_link_tag 'favicon.ico' %>
|
5
6
|
<title><%%= content_for?(:title) ? yield(:title) : app_name %></title>
|
6
7
|
|
7
8
|
<%%= stylesheet_link_tag 'application', media: 'all'<%= turbolinks %> %>
|
data/lib/generators/bootswatch_rails/install/templates/lib/templates/erb/scaffold/index.html.erb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
<%%- page_title t('activerecord.models.<%= singular_table_name %>.other') -%>
|
2
2
|
<h2><%%= t('headers.index', name: t('activerecord.models.<%= singular_table_name %>.other')) %></h2>
|
3
|
+
<%%- content_for(:help) { "<%= singular_table_name %>_index" } -%>
|
3
4
|
|
4
5
|
<table class="table table-striped table-hover">
|
5
6
|
<thead>
|
data/lib/generators/bootswatch_rails/install/templates/lib/templates/erb/scaffold/show.html.erb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
<%%- page_title t('activerecord.models.<%= singular_table_name %>.one') -%>
|
2
2
|
<h2><%%= t('headers.show', name: t('activerecord.models.<%= singular_table_name %>.one')) %></h2>
|
3
|
+
<%%- content_for(:help) { "<%= singular_table_name %>_show" } -%>
|
3
4
|
|
4
5
|
<table class="table table-striped table-hover">
|
5
6
|
<tbody>
|
@@ -3,15 +3,17 @@ require 'rails/generators/active_record'
|
|
3
3
|
module BootswatchRails
|
4
4
|
module Generators
|
5
5
|
class SorceryGenerator < ActiveRecord::Generators::Base
|
6
|
-
desc "Install authentication (with Sorcery) and
|
6
|
+
desc "Install authentication (with Sorcery) and setup users."
|
7
7
|
argument :name, type: :string, default: "user",
|
8
8
|
banner: "name of the user model"
|
9
9
|
class_option :picture, type: :boolean, default: false,
|
10
10
|
desc: 'Add picture to user (needs carrierwave)'
|
11
11
|
class_option :gravatar, type: :boolean, default: false,
|
12
12
|
desc: 'Add Gravatar image to user (uses email)'
|
13
|
-
class_option :
|
14
|
-
desc: 'Add
|
13
|
+
class_option :authority, type: :boolean, default: false,
|
14
|
+
desc: 'Add athorization (requires authority gem)'
|
15
|
+
class_option :add_attr, type: :array, banner: "FIELD[:TYPE][:INDEX] ...",
|
16
|
+
desc: 'Setup additional attributes for user model'
|
15
17
|
class_option :user_activation, type: :boolean, default: false,
|
16
18
|
desc: 'User activation by email with optional success email'
|
17
19
|
class_option :reset_password, type: :boolean, default: false,
|
@@ -34,18 +36,10 @@ module BootswatchRails
|
|
34
36
|
|
35
37
|
def add_migrations
|
36
38
|
migration_template "user_migration.rb", "db/migrate/create_#{table_name}.rb"
|
37
|
-
return unless options.authorization?
|
38
|
-
migration_template "role_migration.rb", "db/migrate/create_roles.rb"
|
39
|
-
migration_template "assignment_migration.rb", "db/migrate/create_assignments.rb"
|
40
|
-
migration_template "ability_migration.rb", "db/migrate/create_abilities.rb"
|
41
39
|
end
|
42
40
|
|
43
41
|
def add_models
|
44
42
|
template "user_model.rb", "app/models/#{name}.rb"
|
45
|
-
return unless options.authorization?
|
46
|
-
template "role_model.rb", "app/models/role.rb"
|
47
|
-
template "assignment_model.rb", "app/models/assignment.rb"
|
48
|
-
template "ability_model.rb", "app/models/ability.rb"
|
49
43
|
end
|
50
44
|
|
51
45
|
def add_uploader
|
@@ -66,11 +60,6 @@ module BootswatchRails
|
|
66
60
|
|
67
61
|
def add_controllers
|
68
62
|
template "users_controller.rb", "app/controllers/#{table_name}_controller.rb"
|
69
|
-
return unless options.authorization?
|
70
|
-
# TODO
|
71
|
-
# template "roles_controller.rb", "app/controllers/roles_controller.rb"
|
72
|
-
# template "assignments_controller.rb", "app/controllers/assignments_controller.rb"
|
73
|
-
# template "abilities_controller.rb", "app/controllers/abilities_controller.rb"
|
74
63
|
end
|
75
64
|
|
76
65
|
def add_views
|
@@ -79,8 +68,6 @@ module BootswatchRails
|
|
79
68
|
views.each do |view|
|
80
69
|
template "#{view}.html.erb", "app/views/#{table_name}/#{view}.html.erb"
|
81
70
|
end
|
82
|
-
return unless options.authorization?
|
83
|
-
# TODO
|
84
71
|
end
|
85
72
|
|
86
73
|
def add_routes
|
@@ -111,12 +98,6 @@ module BootswatchRails
|
|
111
98
|
" get '/logout' => '#{table_name}#log_out', as: :logout, format: false",
|
112
99
|
""
|
113
100
|
]
|
114
|
-
lines << [
|
115
|
-
" resources :roles",
|
116
|
-
" resources :assignments",
|
117
|
-
" resources :abilities",
|
118
|
-
""
|
119
|
-
] if options.authorization?
|
120
101
|
route lines.join("\n")
|
121
102
|
end
|
122
103
|
|
@@ -151,6 +132,17 @@ module BootswatchRails
|
|
151
132
|
|
152
133
|
protected
|
153
134
|
|
135
|
+
def added_fields
|
136
|
+
list = options.add_attr || []
|
137
|
+
array = []
|
138
|
+
list.each do |entry|
|
139
|
+
name, type, index = entry.split(':')
|
140
|
+
type, index = ["string", type] if %w(index uniq).include? type
|
141
|
+
array << [name, type, index]
|
142
|
+
end
|
143
|
+
array
|
144
|
+
end
|
145
|
+
|
154
146
|
def submodules
|
155
147
|
modules = []
|
156
148
|
modules << ":user_activation" if options.user_activation?
|
@@ -180,6 +172,9 @@ module BootswatchRails
|
|
180
172
|
text = ":email, :name, :phone, :comment, :theme, " +
|
181
173
|
":active, :sysadm, :password, :password_confirmation"
|
182
174
|
text += ", :picture, :picture_cache" if options.picture?
|
175
|
+
added_fields.each do |field|
|
176
|
+
text += ", #{field[0]}"
|
177
|
+
end
|
183
178
|
text
|
184
179
|
end
|
185
180
|
end
|
@@ -28,6 +28,9 @@
|
|
28
28
|
<%%- if current_<%= name %>.sysadm and @<%= name %> != current_<%= name %> -%>
|
29
29
|
<%%= f.input :sysadm %>
|
30
30
|
<%%- end -%>
|
31
|
+
<%- added_fields.each do |field| -%>
|
32
|
+
<%%= f.input :<%= field[0] %> %>
|
33
|
+
<%- end -%>
|
31
34
|
|
32
35
|
<%%= f.button :submit, class: 'btn btn-primary' %>
|
33
36
|
<%%- if @<%= name %>.new_record? -%>
|
@@ -1,5 +1,6 @@
|
|
1
1
|
<%%- page_title t('headers.index', name: t('activerecord.models.<%= name %>.other')) -%>
|
2
2
|
<h2><%%= t('headers.index', name: t('activerecord.models.<%= name %>.other')) %></h2>
|
3
|
+
<%%- content_for(:help) { "<%= name %>_index" } -%>
|
3
4
|
|
4
5
|
<table class="table table-striped table-hover">
|
5
6
|
<thead>
|
@@ -14,6 +15,9 @@
|
|
14
15
|
<th><%%= t('activerecord.attributes.<%= name %>.gravatar') %></th>
|
15
16
|
<%- end -%>
|
16
17
|
<th><%%= t('activerecord.attributes.<%= name %>.active') %></th>
|
18
|
+
<%- added_fields.each do |field| -%>
|
19
|
+
<th><%%= t('activerecord.attributes.<%= name %>.<%= field[0] %>') %></th>
|
20
|
+
<%- end -%>
|
17
21
|
<th class="index-actions"><%%= t('actions.title') %></th>
|
18
22
|
</tr>
|
19
23
|
</thead>
|
@@ -45,6 +49,11 @@
|
|
45
49
|
(<%%= t('activerecord.attributes.<%= name %>.sysadm') %>)
|
46
50
|
<%%- end -%>
|
47
51
|
</td>
|
52
|
+
<%- added_fields.each do |field| -%>
|
53
|
+
<td>
|
54
|
+
<%%= <%= name %>.<%= field[0] %> %>
|
55
|
+
</td>
|
56
|
+
<%- end -%>
|
48
57
|
<td class="index-actions">
|
49
58
|
<%%= link_to t('actions.show'), <%= name %>, class: 'btn btn-default btn-xs' %>
|
50
59
|
<%%- if current_<%= name %>.sysadm or <%= name %> == current_<%= name %> -%>
|
@@ -1,5 +1,6 @@
|
|
1
1
|
<%%- page_title @<%= name %>.name -%>
|
2
2
|
<h2><%%= @<%= name %>.name %></h2>
|
3
|
+
<%%- content_for(:help) { "<%= name %>_show" } -%>
|
3
4
|
|
4
5
|
<table class="table table-striped table-hover">
|
5
6
|
<tbody>
|
@@ -45,6 +46,12 @@
|
|
45
46
|
<td><%%= t('activerecord.attributes.<%= name %>.sysadm') %></td>
|
46
47
|
<td><%%= @<%= name %>.sysadm ? t('simple_form.yes') : t('simple_form.no') %></td>
|
47
48
|
</tr>
|
49
|
+
<%- added_fields.each do |field| -%>
|
50
|
+
<tr>
|
51
|
+
<td><%%= t('activerecord.attributes.<%= name %>.<%= field[0] %>') %></td>
|
52
|
+
<td><%%= @<%= name %>.<%= field[0] %> %></td>
|
53
|
+
</tr>
|
54
|
+
<%- end -%>
|
48
55
|
<%- if options.activity_logging? -%>
|
49
56
|
<%%- if @<%= name %>.last_login_at.present? -%>
|
50
57
|
<tr>
|
@@ -34,17 +34,7 @@ de:
|
|
34
34
|
<%= name %>:
|
35
35
|
one: "Benutzer"
|
36
36
|
other: "Benutzer"
|
37
|
-
|
38
|
-
role:
|
39
|
-
one: "Rolle"
|
40
|
-
other: "Rollen"
|
41
|
-
assignment:
|
42
|
-
one: "Rollenzuordnung"
|
43
|
-
other: "Rollenzuordnungen"
|
44
|
-
ability:
|
45
|
-
one: "Fähigkeit"
|
46
|
-
other: Fähigkeiten"
|
47
|
-
<%- end -%>
|
37
|
+
new: "Neuer Benutzer"
|
48
38
|
attributes:
|
49
39
|
<%= name %>:
|
50
40
|
email: "E-Mail"
|
@@ -75,29 +65,4 @@ de:
|
|
75
65
|
failed_logins_count: "Fehlversuche Anmeldung"
|
76
66
|
lock_expires_at: "Gesperrt bis"
|
77
67
|
<%- end -%>
|
78
|
-
<%- if options.authorization? -%>
|
79
|
-
role:
|
80
|
-
name: "Bezeichnung"
|
81
|
-
assignment:
|
82
|
-
<%= name %>: "Benutzer"
|
83
|
-
role: "Rolle"
|
84
|
-
ability:
|
85
|
-
resource: "Tabelle"
|
86
|
-
create_new: "Neu Anlegen"
|
87
|
-
read_own: "Lesen Eigene"
|
88
|
-
read_any: "Lesen Alle"
|
89
|
-
update_own: "Edit Eigene"
|
90
|
-
update_any: "Edit Alle"
|
91
|
-
delete_own: "Löschen Eigene"
|
92
|
-
delete_any: "Löschen Alle"
|
93
|
-
user1_own: "Zusatz1 Eigene"
|
94
|
-
user1_any: "Zusatz1 Alle"
|
95
|
-
user1_name: "Zusatz1 Name"
|
96
|
-
user2_own: "Zusatz2 Eigene"
|
97
|
-
user2_any: "Zusatz2 Alle"
|
98
|
-
user2_name: "Zusatz2 Name"
|
99
|
-
user3_own: "Zusatz3 Eigene"
|
100
|
-
user3_any: "Zusatz3 Alle"
|
101
|
-
user3_name: "Zusatz3 Name"
|
102
|
-
<%- end -%>
|
103
68
|
|
@@ -11,6 +11,12 @@ class <%= migration_name.camelize %> < ActiveRecord::Migration
|
|
11
11
|
t.integer :theme, default: BootswatchRails::DEFAULT
|
12
12
|
t.boolean :active, default: true
|
13
13
|
t.boolean :sysadm, default: false
|
14
|
+
<%- if added_fields.any? -%>
|
15
|
+
|
16
|
+
<%- added_fields.each do |field| -%>
|
17
|
+
t.<%= field[1] %> :<%= field[0] %>
|
18
|
+
<%- end -%>
|
19
|
+
<%- end -%>
|
14
20
|
|
15
21
|
t.string :crypted_password, null: false
|
16
22
|
t.string :salt, null: false
|
@@ -46,6 +52,15 @@ class <%= migration_name.camelize %> < ActiveRecord::Migration
|
|
46
52
|
|
47
53
|
add_index :<%= table_name %>, :email, unique: true
|
48
54
|
add_index :<%= table_name %>, :sysadm
|
55
|
+
<%- if added_fields.any? -%>
|
56
|
+
<%- added_fields.each do |field| -%>
|
57
|
+
<%- if field[2] == "uniq" -%>
|
58
|
+
add_index :<%= table_name %>, :<%= field[0] %>, unique: true
|
59
|
+
<%- elsif field[2] == "index" -%>
|
60
|
+
add_index :<%= table_name %>, :<%= field[0] %>
|
61
|
+
<%- end -%>
|
62
|
+
<%- end -%>
|
63
|
+
<%- end -%>
|
49
64
|
<%- if options.user_activation? -%>
|
50
65
|
add_index :<%= table_name %>, :activation_token
|
51
66
|
<%- end -%>
|
@@ -10,12 +10,6 @@ class <%= class_name %> < ActiveRecord::Base
|
|
10
10
|
scope :active, -> { where(active: true) }
|
11
11
|
scope :sysadms, -> { where(sysadm: true) }
|
12
12
|
|
13
|
-
<%- if options.authorization? -%>
|
14
|
-
has_many :assignments
|
15
|
-
has_many :roles, through: :assignments
|
16
|
-
has_many :abilities, through: :roles
|
17
|
-
|
18
|
-
<%- end -%>
|
19
13
|
<%- if options.picture? -%>
|
20
14
|
mount_uploader :picture, PictureUploader
|
21
15
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
class <%= controller_name.camelize %> < ApplicationController
|
2
2
|
force_ssl if: :ssl_configured?
|
3
|
-
|
3
|
+
skip_before_action :require_login, only: [:log_in, :access, :password, :reset, :change, :refresh, :log_out]
|
4
4
|
before_action :set_<%= name %>, only: [:show, :edit, :update, :destroy]
|
5
5
|
|
6
6
|
# GET /<%= table_name %>
|
@@ -6447,6 +6447,27 @@ table .info a,
|
|
6447
6447
|
.panel-default .close {
|
6448
6448
|
color: #333333;
|
6449
6449
|
}
|
6450
|
+
a.list-group-item-success.active {
|
6451
|
+
background-color: #3fb618;
|
6452
|
+
}
|
6453
|
+
a.list-group-item-success.active:hover,
|
6454
|
+
a.list-group-item-success.active:focus {
|
6455
|
+
background-color: #379f15;
|
6456
|
+
}
|
6457
|
+
a.list-group-item-warning.active {
|
6458
|
+
background-color: #ff7518;
|
6459
|
+
}
|
6460
|
+
a.list-group-item-warning.active:hover,
|
6461
|
+
a.list-group-item-warning.active:focus {
|
6462
|
+
background-color: #fe6600;
|
6463
|
+
}
|
6464
|
+
a.list-group-item-danger.active {
|
6465
|
+
background-color: #ff0039;
|
6466
|
+
}
|
6467
|
+
a.list-group-item-danger.active:hover,
|
6468
|
+
a.list-group-item-danger.active:focus {
|
6469
|
+
background-color: #e60033;
|
6470
|
+
}
|
6450
6471
|
.modal .close {
|
6451
6472
|
color: #333333;
|
6452
6473
|
}
|
@@ -6424,6 +6424,32 @@ a.thumbnail:focus,
|
|
6424
6424
|
a.thumbnail.active {
|
6425
6425
|
border-color: #282828;
|
6426
6426
|
}
|
6427
|
+
a.list-group-item.active,
|
6428
|
+
a.list-group-item.active:hover,
|
6429
|
+
a.list-group-item.active:focus {
|
6430
|
+
border-color: #282828;
|
6431
|
+
}
|
6432
|
+
a.list-group-item-success.active {
|
6433
|
+
background-color: #77b300;
|
6434
|
+
}
|
6435
|
+
a.list-group-item-success.active:hover,
|
6436
|
+
a.list-group-item-success.active:focus {
|
6437
|
+
background-color: #669a00;
|
6438
|
+
}
|
6439
|
+
a.list-group-item-warning.active {
|
6440
|
+
background-color: #ff8800;
|
6441
|
+
}
|
6442
|
+
a.list-group-item-warning.active:hover,
|
6443
|
+
a.list-group-item-warning.active:focus {
|
6444
|
+
background-color: #e67a00;
|
6445
|
+
}
|
6446
|
+
a.list-group-item-danger.active {
|
6447
|
+
background-color: #cc0000;
|
6448
|
+
}
|
6449
|
+
a.list-group-item-danger.active:hover,
|
6450
|
+
a.list-group-item-danger.active:focus {
|
6451
|
+
background-color: #b30000;
|
6452
|
+
}
|
6427
6453
|
.jumbotron h1,
|
6428
6454
|
.jumbotron h2,
|
6429
6455
|
.jumbotron h3,
|
@@ -6542,6 +6542,32 @@ textarea:focus {
|
|
6542
6542
|
-webkit-box-shadow: none;
|
6543
6543
|
box-shadow: none;
|
6544
6544
|
}
|
6545
|
+
a.list-group-item.active,
|
6546
|
+
a.list-group-item.active:hover,
|
6547
|
+
a.list-group-item.active:focus {
|
6548
|
+
border-color: #464545;
|
6549
|
+
}
|
6550
|
+
a.list-group-item-success.active {
|
6551
|
+
background-color: #00bc8c;
|
6552
|
+
}
|
6553
|
+
a.list-group-item-success.active:hover,
|
6554
|
+
a.list-group-item-success.active:focus {
|
6555
|
+
background-color: #00a379;
|
6556
|
+
}
|
6557
|
+
a.list-group-item-warning.active {
|
6558
|
+
background-color: #f39c12;
|
6559
|
+
}
|
6560
|
+
a.list-group-item-warning.active:hover,
|
6561
|
+
a.list-group-item-warning.active:focus {
|
6562
|
+
background-color: #e08e0b;
|
6563
|
+
}
|
6564
|
+
a.list-group-item-danger.active {
|
6565
|
+
background-color: #e74c3c;
|
6566
|
+
}
|
6567
|
+
a.list-group-item-danger.active:hover,
|
6568
|
+
a.list-group-item-danger.active:focus {
|
6569
|
+
background-color: #e43725;
|
6570
|
+
}
|
6545
6571
|
.popover {
|
6546
6572
|
color: #ffffff;
|
6547
6573
|
}
|
@@ -6518,6 +6518,32 @@ input:focus {
|
|
6518
6518
|
-webkit-box-shadow: none;
|
6519
6519
|
box-shadow: none;
|
6520
6520
|
}
|
6521
|
+
a.list-group-item.active,
|
6522
|
+
a.list-group-item.active:hover,
|
6523
|
+
a.list-group-item.active:focus {
|
6524
|
+
border-color: #ecf0f1;
|
6525
|
+
}
|
6526
|
+
a.list-group-item-success.active {
|
6527
|
+
background-color: #18bc9c;
|
6528
|
+
}
|
6529
|
+
a.list-group-item-success.active:hover,
|
6530
|
+
a.list-group-item-success.active:focus {
|
6531
|
+
background-color: #15a589;
|
6532
|
+
}
|
6533
|
+
a.list-group-item-warning.active {
|
6534
|
+
background-color: #f39c12;
|
6535
|
+
}
|
6536
|
+
a.list-group-item-warning.active:hover,
|
6537
|
+
a.list-group-item-warning.active:focus {
|
6538
|
+
background-color: #e08e0b;
|
6539
|
+
}
|
6540
|
+
a.list-group-item-danger.active {
|
6541
|
+
background-color: #e74c3c;
|
6542
|
+
}
|
6543
|
+
a.list-group-item-danger.active:hover,
|
6544
|
+
a.list-group-item-danger.active:focus {
|
6545
|
+
background-color: #e43725;
|
6546
|
+
}
|
6521
6547
|
.panel-default .close {
|
6522
6548
|
color: #2c3e50;
|
6523
6549
|
}
|
@@ -6659,6 +6659,32 @@ label {
|
|
6659
6659
|
-webkit-box-shadow: inset 0 2px 0 rgba(0, 0, 0, 0.05);
|
6660
6660
|
box-shadow: inset 0 2px 0 rgba(0, 0, 0, 0.05);
|
6661
6661
|
}
|
6662
|
+
a.list-group-item.active,
|
6663
|
+
a.list-group-item.active:hover,
|
6664
|
+
a.list-group-item.active:focus {
|
6665
|
+
border-color: #dddddd;
|
6666
|
+
}
|
6667
|
+
a.list-group-item-success.active {
|
6668
|
+
background-color: #28b62c;
|
6669
|
+
}
|
6670
|
+
a.list-group-item-success.active:hover,
|
6671
|
+
a.list-group-item-success.active:focus {
|
6672
|
+
background-color: #23a127;
|
6673
|
+
}
|
6674
|
+
a.list-group-item-warning.active {
|
6675
|
+
background-color: #ff851b;
|
6676
|
+
}
|
6677
|
+
a.list-group-item-warning.active:hover,
|
6678
|
+
a.list-group-item-warning.active:focus {
|
6679
|
+
background-color: #ff7701;
|
6680
|
+
}
|
6681
|
+
a.list-group-item-danger.active {
|
6682
|
+
background-color: #ff4136;
|
6683
|
+
}
|
6684
|
+
a.list-group-item-danger.active:hover,
|
6685
|
+
a.list-group-item-danger.active:focus {
|
6686
|
+
background-color: #ff291c;
|
6687
|
+
}
|
6662
6688
|
.jumbotron {
|
6663
6689
|
border: 1px solid #e7e7e7;
|
6664
6690
|
-webkit-box-shadow: inset 0 2px 0 rgba(0, 0, 0, 0.05);
|
@@ -6565,10 +6565,18 @@ input[type=number][readonly],
|
|
6565
6565
|
}
|
6566
6566
|
select,
|
6567
6567
|
select.form-control {
|
6568
|
-
|
6569
|
-
border:
|
6570
|
-
-webkit-
|
6571
|
-
box-shadow:
|
6568
|
+
border: 0;
|
6569
|
+
border-radius: 0;
|
6570
|
+
-webkit-appearance: none;
|
6571
|
+
-webkit-box-shadow: inset 0 -1px 0 #dddddd;
|
6572
|
+
box-shadow: inset 0 -1px 0 #dddddd;
|
6573
|
+
font-size: 16px;
|
6574
|
+
padding-left: 0px;
|
6575
|
+
}
|
6576
|
+
select:focus,
|
6577
|
+
select.form-control:focus {
|
6578
|
+
-webkit-box-shadow: inset 0 -2px 0 #2196f3;
|
6579
|
+
box-shadow: inset 0 -2px 0 #2196f3;
|
6572
6580
|
}
|
6573
6581
|
.has-warning input,
|
6574
6582
|
.has-warning .form-control,
|
@@ -6704,6 +6704,32 @@ a.thumbnail:focus,
|
|
6704
6704
|
a.thumbnail.active {
|
6705
6705
|
border-color: #0c0d0e;
|
6706
6706
|
}
|
6707
|
+
a.list-group-item.active,
|
6708
|
+
a.list-group-item.active:hover,
|
6709
|
+
a.list-group-item.active:focus {
|
6710
|
+
border-color: rgba(0, 0, 0, 0.6);
|
6711
|
+
}
|
6712
|
+
a.list-group-item-success.active {
|
6713
|
+
background-color: #62c462;
|
6714
|
+
}
|
6715
|
+
a.list-group-item-success.active:hover,
|
6716
|
+
a.list-group-item-success.active:focus {
|
6717
|
+
background-color: #4fbd4f;
|
6718
|
+
}
|
6719
|
+
a.list-group-item-warning.active {
|
6720
|
+
background-color: #f89406;
|
6721
|
+
}
|
6722
|
+
a.list-group-item-warning.active:hover,
|
6723
|
+
a.list-group-item-warning.active:focus {
|
6724
|
+
background-color: #df8505;
|
6725
|
+
}
|
6726
|
+
a.list-group-item-danger.active {
|
6727
|
+
background-color: #ee5f5b;
|
6728
|
+
}
|
6729
|
+
a.list-group-item-danger.active:hover,
|
6730
|
+
a.list-group-item-danger.active:focus {
|
6731
|
+
background-color: #ec4844;
|
6732
|
+
}
|
6707
6733
|
.jumbotron {
|
6708
6734
|
border: 1px solid rgba(0, 0, 0, 0.6);
|
6709
6735
|
}
|
@@ -6494,6 +6494,32 @@ label,
|
|
6494
6494
|
-webkit-box-shadow: none;
|
6495
6495
|
box-shadow: none;
|
6496
6496
|
}
|
6497
|
+
a.list-group-item.active,
|
6498
|
+
a.list-group-item.active:hover,
|
6499
|
+
a.list-group-item.active:focus {
|
6500
|
+
border: none;
|
6501
|
+
}
|
6502
|
+
a.list-group-item-success.active {
|
6503
|
+
background-color: #5cb85c;
|
6504
|
+
}
|
6505
|
+
a.list-group-item-success.active:hover,
|
6506
|
+
a.list-group-item-success.active:focus {
|
6507
|
+
background-color: #4cae4c;
|
6508
|
+
}
|
6509
|
+
a.list-group-item-warning.active {
|
6510
|
+
background-color: #f0ad4e;
|
6511
|
+
}
|
6512
|
+
a.list-group-item-warning.active:hover,
|
6513
|
+
a.list-group-item-warning.active:focus {
|
6514
|
+
background-color: #eea236;
|
6515
|
+
}
|
6516
|
+
a.list-group-item-danger.active {
|
6517
|
+
background-color: #d9534f;
|
6518
|
+
}
|
6519
|
+
a.list-group-item-danger.active:hover,
|
6520
|
+
a.list-group-item-danger.active:focus {
|
6521
|
+
background-color: #d43f3a;
|
6522
|
+
}
|
6497
6523
|
.panel {
|
6498
6524
|
border: none;
|
6499
6525
|
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bootswatch_rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.3.0.
|
4
|
+
version: 3.3.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Volker Wiegand
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-11-
|
11
|
+
date: 2014-11-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -125,10 +125,6 @@ files:
|
|
125
125
|
- lib/generators/bootswatch_rails/skip_login/skip_login_generator.rb
|
126
126
|
- lib/generators/bootswatch_rails/sorcery/sorcery_generator.rb
|
127
127
|
- lib/generators/bootswatch_rails/sorcery/templates/_form.html.erb
|
128
|
-
- lib/generators/bootswatch_rails/sorcery/templates/ability_migration.rb
|
129
|
-
- lib/generators/bootswatch_rails/sorcery/templates/ability_model.rb
|
130
|
-
- lib/generators/bootswatch_rails/sorcery/templates/assignment_migration.rb
|
131
|
-
- lib/generators/bootswatch_rails/sorcery/templates/assignment_model.rb
|
132
128
|
- lib/generators/bootswatch_rails/sorcery/templates/change.html.erb
|
133
129
|
- lib/generators/bootswatch_rails/sorcery/templates/edit.html.erb
|
134
130
|
- lib/generators/bootswatch_rails/sorcery/templates/gravatar_helper.rb
|
@@ -139,9 +135,6 @@ files:
|
|
139
135
|
- lib/generators/bootswatch_rails/sorcery/templates/password.html.erb
|
140
136
|
- lib/generators/bootswatch_rails/sorcery/templates/picture_uploader.rb
|
141
137
|
- lib/generators/bootswatch_rails/sorcery/templates/reset_password_email.html.erb
|
142
|
-
- lib/generators/bootswatch_rails/sorcery/templates/role_migration.rb
|
143
|
-
- lib/generators/bootswatch_rails/sorcery/templates/role_model.rb
|
144
|
-
- lib/generators/bootswatch_rails/sorcery/templates/roles_controller.rb
|
145
138
|
- lib/generators/bootswatch_rails/sorcery/templates/show.html.erb
|
146
139
|
- lib/generators/bootswatch_rails/sorcery/templates/sorcery.de.yml
|
147
140
|
- lib/generators/bootswatch_rails/sorcery/templates/user_mailer.rb
|
@@ -1,28 +0,0 @@
|
|
1
|
-
class CreateAbilities < ActiveRecord::Migration
|
2
|
-
def change
|
3
|
-
create_table :abilities do |t|
|
4
|
-
t.belongs_to :role, index: true
|
5
|
-
t.string :resource, null: false
|
6
|
-
t.boolean :create_new, default: false
|
7
|
-
t.boolean :read_own, default: false
|
8
|
-
t.boolean :read_any, default: false
|
9
|
-
t.boolean :update_own, default: false
|
10
|
-
t.boolean :update_any, default: false
|
11
|
-
t.boolean :delete_own, default: false
|
12
|
-
t.boolean :delete_any, default: false
|
13
|
-
t.boolean :user1_own, default: false
|
14
|
-
t.boolean :user1_any, default: false
|
15
|
-
t.string :user1_name
|
16
|
-
t.boolean :user2_own, default: false
|
17
|
-
t.boolean :user2_any, default: false
|
18
|
-
t.string :user2_name
|
19
|
-
t.boolean :user3_own, default: false
|
20
|
-
t.boolean :user3_any, default: false
|
21
|
-
t.string :user3_name
|
22
|
-
|
23
|
-
t.timestamps
|
24
|
-
end
|
25
|
-
|
26
|
-
add_index :abilities, :resource, unique: true
|
27
|
-
end
|
28
|
-
end
|
@@ -1,80 +0,0 @@
|
|
1
|
-
class RolesController < ApplicationController
|
2
|
-
force_ssl if: :ssl_configured?
|
3
|
-
before_action :set_role, only: [:show, :edit, :update, :destroy]
|
4
|
-
|
5
|
-
# GET /roles
|
6
|
-
# GET /roles.json
|
7
|
-
def index
|
8
|
-
@roles = Role.all
|
9
|
-
end
|
10
|
-
|
11
|
-
# GET /roles/1
|
12
|
-
# GET /roles/1.json
|
13
|
-
def show
|
14
|
-
end
|
15
|
-
|
16
|
-
# GET /roles/new
|
17
|
-
def new
|
18
|
-
@role = Role.new
|
19
|
-
end
|
20
|
-
|
21
|
-
# GET /roles/1/edit
|
22
|
-
def edit
|
23
|
-
end
|
24
|
-
|
25
|
-
# POST /roles
|
26
|
-
# POST /roles.json
|
27
|
-
def create
|
28
|
-
@role = Role.new(role_params)
|
29
|
-
|
30
|
-
respond_to do |format|
|
31
|
-
if @role.save
|
32
|
-
format.html { redirect_to @role, notice: 'Role was successfully created.' }
|
33
|
-
format.json { render :show, status: :created, location: @role }
|
34
|
-
else
|
35
|
-
format.html { render :new }
|
36
|
-
format.json { render json: @role.errors, status: :unprocessable_entity }
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|
41
|
-
# PATCH/PUT /roles/1
|
42
|
-
# PATCH/PUT /roles/1.json
|
43
|
-
def update
|
44
|
-
respond_to do |format|
|
45
|
-
if @role.update(role_params)
|
46
|
-
format.html { redirect_to @role, notice: 'Role was successfully updated.' }
|
47
|
-
format.json { render :show, status: :ok, location: @role }
|
48
|
-
else
|
49
|
-
format.html { render :edit }
|
50
|
-
format.json { render json: @role.errors, status: :unprocessable_entity }
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
# DELETE /roles/1
|
56
|
-
# DELETE /roles/1.json
|
57
|
-
def destroy
|
58
|
-
@role.destroy
|
59
|
-
respond_to do |format|
|
60
|
-
format.html { redirect_to roles_url, notice: 'Role was successfully destroyed.' }
|
61
|
-
format.json { head :no_content }
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
private
|
66
|
-
# Always enforce SSL for this controller
|
67
|
-
def ssl_configured?
|
68
|
-
Rails.env.production?
|
69
|
-
end
|
70
|
-
|
71
|
-
# Use callbacks to share common setup or constraints between actions.
|
72
|
-
def set_role
|
73
|
-
@role = Role.find(params[:id])
|
74
|
-
end
|
75
|
-
|
76
|
-
# Never trust parameters from the scary internet, only allow the white list through.
|
77
|
-
def role_params
|
78
|
-
params.require(:role).permit(:name)
|
79
|
-
end
|
80
|
-
end
|