thecore_ui_rails_admin 2.1.8 → 2.1.13
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/rails_admin/ra.widgets.coffee +233 -0
- data/app/assets/javascripts/thecore_ui_rails_admin/thecore_rails_admin.js +3 -24
- data/app/assets/stylesheets/thecore_ui_rails_admin/apexcharts.scss +7 -0
- data/app/assets/stylesheets/thecore_ui_rails_admin/colors.scss +21 -0
- data/app/assets/stylesheets/thecore_ui_rails_admin/common.scss +14 -3
- data/app/assets/stylesheets/thecore_ui_rails_admin/devise.scss +19 -26
- data/app/assets/stylesheets/thecore_ui_rails_admin/flashing.scss +3 -3
- data/app/assets/stylesheets/thecore_ui_rails_admin/thecore.scss +19 -4
- data/app/assets/stylesheets/thecore_ui_rails_admin/thecore_rails_admin.scss +152 -43
- data/app/assets/stylesheets/thecore_ui_rails_admin/togglable-sidebar.scss +5 -2
- data/app/views/layouts/rails_admin/_secondary_navigation.html.haml +1 -1
- data/app/views/layouts/rails_admin/_user_navigation.html.haml +2 -2
- data/app/views/layouts/rails_admin/application.html.haml +2 -7
- data/app/views/layouts/rails_admin/pjax.html.haml +4 -1
- data/app/views/rails_admin/main/_card.html.haml +2 -1
- data/app/views/rails_admin/main/dashboard.html.haml +22 -11
- data/app/views/rails_admin/main/index.html.haml +19 -20
- data/config/initializers/rails_admin.rb +24 -4
- data/config/initializers/thecore_concern.rb +0 -1
- data/config/initializers/thecore_ui_rails_admin_app_configs.rb +4 -0
- data/config/locales/it.index_cards.custom.yml +1 -1
- data/config/locales/thecore_settings.en.yml +31 -0
- data/config/locales/thecore_settings.it.yml +0 -1
- data/lib/abilities/thecore_ui_rails_admin.rb +0 -1
- data/lib/concerns/thecore_ui_rails_admin_permission.rb +32 -0
- data/lib/concerns/thecore_ui_rails_admin_role.rb +36 -0
- data/lib/concerns/thecore_ui_rails_admin_user.rb +56 -59
- data/lib/thecore_ui_rails_admin.rb +3 -0
- data/lib/thecore_ui_rails_admin/engine.rb +0 -3
- data/lib/thecore_ui_rails_admin/version.rb +1 -1
- metadata +22 -3
- data/app/assets/javascripts/thecore_ui_rails_admin/thecore.js +0 -0
@@ -11,18 +11,18 @@
|
|
11
11
|
|
12
12
|
@-webkit-keyframes flash {
|
13
13
|
0% { background-color: none; }
|
14
|
-
50% { background-color:
|
14
|
+
50% { background-color: $text-highlight; }
|
15
15
|
100% { background-color: none; }
|
16
16
|
}
|
17
17
|
|
18
18
|
@-moz-keyframes flash {
|
19
19
|
0% { background-color: none; }
|
20
|
-
50% { background-color:
|
20
|
+
50% { background-color: $text-highlight; }
|
21
21
|
100% { background-color: none; }
|
22
22
|
}
|
23
23
|
|
24
24
|
@-ms-keyframes flash {
|
25
25
|
0% { background-color: none; }
|
26
|
-
50% { background-color:
|
26
|
+
50% { background-color: $text-highlight; }
|
27
27
|
100% { background-color: none; }
|
28
28
|
}
|
@@ -11,19 +11,34 @@
|
|
11
11
|
* file per style scope.
|
12
12
|
*
|
13
13
|
*= required _colors
|
14
|
-
|
15
|
-
*=
|
14
|
+
*= require thecore_ui_commons/thecore
|
15
|
+
*= require rails_admin/rails_admin
|
16
|
+
*= require rails_admin_selectize/index
|
16
17
|
*= require_self
|
17
18
|
*/
|
19
|
+
@import 'colors_override';
|
20
|
+
@import 'colors';
|
18
21
|
@import "jquery-ui";
|
19
22
|
@import "jquery-ui/dialog";
|
20
23
|
@import 'bootstrap-sprockets';
|
21
24
|
@import 'bootstrap';
|
22
25
|
@import 'common';
|
26
|
+
@import "flashing";
|
23
27
|
@import 'devise';
|
24
28
|
@import 'animate';
|
25
29
|
@import 'mixins';
|
30
|
+
@import 'apexcharts';
|
31
|
+
@import 'thecore_ui_commons/thecore';
|
32
|
+
@import "togglable-sidebar";
|
26
33
|
|
27
|
-
|
28
|
-
|
34
|
+
.btn {
|
35
|
+
background-color: $element;
|
36
|
+
color: $element-text;
|
37
|
+
border-color: $element-border;
|
38
|
+
}
|
39
|
+
|
40
|
+
.btn:hover,
|
41
|
+
#new_user div.actions input.btn:hover {
|
42
|
+
color: $element-text-highlight;
|
43
|
+
background-color: $shadows;
|
29
44
|
}
|
@@ -1,29 +1,124 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
/*
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
3
|
+
* listed below.
|
4
|
+
*
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
6
|
+
* or any plugin's vendor/assets/stylesheets directory can be referenced here using a relative path.
|
7
|
+
*
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the bottom of the
|
9
|
+
* compiled file so the styles you add here take precedence over styles defined in any styles
|
10
|
+
* defined in the other CSS/SCSS files in this directory. It is generally better to create a new
|
11
|
+
* file per style scope.
|
12
|
+
*
|
13
|
+
*= required _colors
|
14
|
+
*= require thecore_ui_commons/thecore
|
15
|
+
*= require rails_admin/rails_admin
|
16
|
+
*= require rails_admin_selectize/index
|
17
|
+
*= require_self
|
18
|
+
*/
|
19
|
+
@import "thecore";
|
4
20
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
21
|
+
.sidebar-nav li a {
|
22
|
+
color: $element-text;
|
23
|
+
}
|
24
|
+
#sidebar-wrapper .sidebar-nav {
|
25
|
+
background-color: $shadows !important;
|
26
|
+
color: $element-text;
|
27
|
+
&:hover {
|
28
|
+
color: $element-text-highlight !important;
|
29
|
+
}
|
30
|
+
.dropdown-header {
|
31
|
+
color: $element-text;
|
32
|
+
}
|
33
|
+
.sub-menu-container {
|
34
|
+
background-color: darken($shadows, 10%) !important;
|
35
|
+
}
|
36
|
+
.sub-menu-container .sub-menu a:hover {
|
37
|
+
color: $element-text-highlight !important;
|
38
|
+
}
|
39
|
+
.dropdown-header:hover, .dropdown-header.active, .dropdown-header.active .sub-menu-container .submenu:hover, .sub-menu.sub-menu-null a:hover {
|
40
|
+
background-color: $element;
|
41
|
+
color: $element-text-highlight !important;
|
42
|
+
}
|
43
|
+
}
|
10
44
|
|
11
|
-
|
12
|
-
|
45
|
+
#app-name {
|
46
|
+
color: $primary !important;
|
47
|
+
}
|
48
|
+
|
49
|
+
#sidebar-collapse {
|
50
|
+
color: $shadows !important;
|
13
51
|
}
|
14
52
|
|
15
53
|
.breadcrumb {
|
16
|
-
background: $
|
54
|
+
background: $element;
|
17
55
|
.false a, .false:before {
|
18
|
-
color: darken($
|
56
|
+
color: darken($element, 30%) !important;
|
19
57
|
}
|
20
58
|
.active, .active:before {
|
21
|
-
color:
|
59
|
+
color: $text-highlight;
|
60
|
+
}
|
61
|
+
}
|
62
|
+
|
63
|
+
#list .form-inline {
|
64
|
+
margin-bottom: 2em;
|
65
|
+
}
|
66
|
+
|
67
|
+
p.boolean_type a.label-success,
|
68
|
+
p.boolean_type a.label-danger {
|
69
|
+
background: none;
|
70
|
+
font-size: 1.5em;
|
71
|
+
&:hover {
|
72
|
+
background: none;
|
73
|
+
}
|
74
|
+
}
|
75
|
+
|
76
|
+
body.rails_admin .nav.nav-tabs {
|
77
|
+
margin-bottom: 0;
|
78
|
+
}
|
79
|
+
|
80
|
+
#bulk_form .panel:nth-of-type(1) {
|
81
|
+
border-top-right-radius: 0;
|
82
|
+
border-top-left-radius: 0;
|
83
|
+
}
|
84
|
+
|
85
|
+
#scope_selector li, #action-menu li {
|
86
|
+
border-top-left-radius: 0.5em;
|
87
|
+
border-top-right-radius: 0.5em;
|
88
|
+
&.selected {
|
89
|
+
background-color: #fff;
|
90
|
+
color: $text !important;
|
91
|
+
a {
|
92
|
+
color: $text !important;
|
93
|
+
}
|
94
|
+
}
|
95
|
+
|
96
|
+
a:hover {
|
97
|
+
border-top-left-radius: 0.5em;
|
98
|
+
border-top-right-radius: 0.5em;
|
99
|
+
background-color: rgba($element, .5);
|
100
|
+
color: $element-text-highlight !important;
|
22
101
|
}
|
23
102
|
}
|
24
103
|
|
104
|
+
.well {
|
105
|
+
background-color: darken($background, 2%);
|
106
|
+
border-color: darken($background, 2%);
|
107
|
+
}
|
108
|
+
|
109
|
+
.content a, a {
|
110
|
+
color: $link;
|
111
|
+
text-decoration: none;
|
112
|
+
&:hover {
|
113
|
+
color: $link-highlight; }
|
114
|
+
}
|
115
|
+
|
116
|
+
.page-header.dashboard {
|
117
|
+
border-color: $background;
|
118
|
+
}
|
119
|
+
|
25
120
|
.table-striped {
|
26
|
-
border-top-color: $
|
121
|
+
border-top-color: $info;
|
27
122
|
.links ul li {
|
28
123
|
padding-right: 0;
|
29
124
|
a {
|
@@ -35,9 +130,9 @@ $RAyellow: #F6BB42;
|
|
35
130
|
.content {
|
36
131
|
margin: 0px 0 15px 0;
|
37
132
|
padding: 8px;
|
38
|
-
background:
|
133
|
+
background: $background;
|
39
134
|
&.dashboard {
|
40
|
-
background:
|
135
|
+
background: $background;
|
41
136
|
}
|
42
137
|
.page-header {
|
43
138
|
display: none;
|
@@ -45,20 +140,23 @@ $RAyellow: #F6BB42;
|
|
45
140
|
}
|
46
141
|
|
47
142
|
a.delete {
|
48
|
-
color:
|
143
|
+
color: $text-highlight;
|
49
144
|
}
|
50
145
|
|
51
146
|
.box {
|
147
|
+
border-radius: 1em;
|
148
|
+
display: block;
|
52
149
|
padding: 15px;
|
53
150
|
margin-bottom: 30px;
|
54
|
-
border: 1px solid $
|
151
|
+
border: 1px solid $element-border;
|
55
152
|
position: relative;
|
56
|
-
min-height:
|
153
|
+
min-height: 15em;
|
57
154
|
transition: all 0.3s ease;
|
58
|
-
color:
|
155
|
+
background-color: lighten($element, 25%);
|
156
|
+
color: $element-text;
|
59
157
|
overflow: hidden;
|
60
158
|
&:hover, &:focus {
|
61
|
-
border-color:
|
159
|
+
border-color: $shadows;
|
62
160
|
.icon-bg {
|
63
161
|
transform: scale(1.5) rotate(20deg);
|
64
162
|
}
|
@@ -69,14 +167,14 @@ a.delete {
|
|
69
167
|
font-weight: 600;
|
70
168
|
a.btn {
|
71
169
|
border-radius: 3px;
|
72
|
-
color: rgba(
|
170
|
+
color: rgba($text-highlight,0.7) !important;
|
73
171
|
display: inline-block;
|
74
172
|
margin-bottom: 0;
|
75
173
|
font-weight: normal;
|
76
174
|
text-align: center;
|
77
175
|
vertical-align: middle;
|
78
176
|
cursor: pointer;
|
79
|
-
background-color: rgba(
|
177
|
+
background-color: rgba($shadows, 0.19);
|
80
178
|
border: 1px solid transparent;
|
81
179
|
white-space: nowrap;
|
82
180
|
padding: 6px 12px;
|
@@ -89,31 +187,41 @@ a.delete {
|
|
89
187
|
user-select: none;
|
90
188
|
}
|
91
189
|
}
|
92
|
-
strong {
|
93
|
-
font-size:
|
190
|
+
strong.count {
|
191
|
+
font-size: 10em;
|
94
192
|
font-weight: 600;
|
95
193
|
}
|
194
|
+
p.model,
|
195
|
+
strong.count {
|
196
|
+
color: $element-text;
|
197
|
+
&:hover {
|
198
|
+
color: $element-text-highlight;
|
199
|
+
}
|
200
|
+
}
|
96
201
|
.icon-bg {
|
97
202
|
position: absolute;
|
98
203
|
right: 0;
|
99
204
|
bottom: 0;
|
100
|
-
font-size:
|
101
|
-
color:
|
102
|
-
opacity: 0.
|
103
|
-
filter: alpha(opacity=
|
205
|
+
font-size: 15em;
|
206
|
+
color: $element-text;
|
207
|
+
opacity: 0.20;
|
208
|
+
filter: alpha(opacity=20);
|
104
209
|
transition: all 1s ease;
|
105
210
|
}
|
106
211
|
&.bg-info {
|
107
|
-
background-color: $
|
212
|
+
background-color: $info;
|
108
213
|
}
|
109
214
|
&.bg-success {
|
110
|
-
background-color: $
|
215
|
+
background-color: $success;
|
111
216
|
}
|
112
217
|
&.bg-warning {
|
113
|
-
background-color: $
|
218
|
+
background-color: $warning;
|
114
219
|
}
|
115
220
|
&.bg-danger {
|
116
|
-
background-color: $
|
221
|
+
background-color: $danger;
|
222
|
+
}
|
223
|
+
&.bg-clear {
|
224
|
+
background-color: $neutral;
|
117
225
|
}
|
118
226
|
}
|
119
227
|
|
@@ -122,14 +230,14 @@ a.delete {
|
|
122
230
|
max-width: 300px;
|
123
231
|
padding: 19px 29px 29px;
|
124
232
|
margin: 0 auto 20px;
|
125
|
-
background-color:
|
126
|
-
border: 1px solid
|
233
|
+
background-color: $text-highlight;
|
234
|
+
border: 1px solid $element-border;
|
127
235
|
-webkit-border-radius: 5px;
|
128
236
|
-moz-border-radius: 5px;
|
129
237
|
border-radius: 5px;
|
130
|
-
-webkit-box-shadow: 0 1px 2px rgba(
|
131
|
-
-moz-box-shadow: 0 1px 2px rgba(
|
132
|
-
box-shadow: 0 1px 2px rgba(
|
238
|
+
-webkit-box-shadow: 0 1px 2px rgba($shadows,.05);
|
239
|
+
-moz-box-shadow: 0 1px 2px rgba($shadows,.05);
|
240
|
+
box-shadow: 0 1px 2px rgba($shadows,.05);
|
133
241
|
}
|
134
242
|
.border-form-div .form-signin-heading,
|
135
243
|
.border-form-div .checkbox {
|
@@ -148,13 +256,13 @@ a.delete {
|
|
148
256
|
background-color: transparent;
|
149
257
|
background-image: none;
|
150
258
|
border: 1px solid transparent;
|
151
|
-
color:
|
259
|
+
color: $neutral;
|
152
260
|
}
|
153
261
|
#sidebar-collapse:focus {
|
154
262
|
outline: 0;
|
155
263
|
}
|
156
264
|
#sidebar-collapse:hover {
|
157
|
-
color
|
265
|
+
color:$text-highlight;
|
158
266
|
}
|
159
267
|
|
160
268
|
.exit-button {
|
@@ -167,15 +275,16 @@ a.delete {
|
|
167
275
|
|
168
276
|
#app-name {
|
169
277
|
font-size: 2em;
|
170
|
-
color:
|
278
|
+
color: $neutral;
|
171
279
|
font-family: 'Raleway', sans-serif;
|
172
280
|
word-wrap: normal;
|
173
281
|
}
|
174
282
|
#app-name:hover {
|
175
|
-
color:
|
283
|
+
color: $text-highlight;
|
176
284
|
text-decoration: none;
|
177
285
|
}
|
178
286
|
|
179
287
|
body.rails_admin {
|
180
288
|
padding-top: 0px;
|
181
|
-
|
289
|
+
background-color: $background;
|
290
|
+
}
|
@@ -32,13 +32,12 @@
|
|
32
32
|
width: 100%;
|
33
33
|
position: absolute;
|
34
34
|
padding: 15px;
|
35
|
-
background-color:
|
35
|
+
background-color: $background;
|
36
36
|
min-height: 100vh;
|
37
37
|
}
|
38
38
|
#wrapper.toggled #page-content-wrapper {
|
39
39
|
position: absolute;
|
40
40
|
margin-right: -250px;
|
41
|
-
background-color: rgb(59,78,89);
|
42
41
|
}
|
43
42
|
/* Sidebar Styles */
|
44
43
|
|
@@ -83,4 +82,8 @@
|
|
83
82
|
|
84
83
|
body.rails_admin .sidebar-nav {
|
85
84
|
top: 0px;
|
85
|
+
}
|
86
|
+
|
87
|
+
.sub-menu a {
|
88
|
+
padding-left: 20px;
|
86
89
|
}
|
@@ -1,3 +1,3 @@
|
|
1
1
|
-# %ul.sidebar-nav
|
2
2
|
- actions(:root).each do |action|
|
3
|
-
%li= link_to wording_for(:menu, action), { action: action.action_name, controller: 'rails_admin/main' }, class: action.pjax? ? "pjax" : "", style: "padding-left: 0px;"
|
3
|
+
%li= link_to wording_for(:menu, action), { action: action.action_name, controller: 'rails_admin/main' }, class: action.pjax? ? "pjax" : "", style: "padding-left: 0px;text-indent:20px"
|
@@ -2,6 +2,6 @@
|
|
2
2
|
-# %ul.sidebar-nav
|
3
3
|
%li.dropdown-header=t :current_user
|
4
4
|
- if user_link = edit_user_link
|
5
|
-
%li.edit_user_root_link=
|
5
|
+
%li.edit_user_root_link= link_to content_tag('i', "", class: 'fa fa-user', style: 'text-indent: 0') + _current_user.email, show_path(:user, _current_user.id)
|
6
6
|
- if logout_path.present?
|
7
|
-
%li=link_to content_tag('
|
7
|
+
%li=link_to content_tag('i', "", class: 'fa fa-unlink', style: 'text-indent: 0') + t('admin.misc.log_out'), logout_path, method: logout_method
|
@@ -11,14 +11,9 @@
|
|
11
11
|
div.sub-menu-container li.sub-menu a.pjax { padding-left: 0px }
|
12
12
|
div#wrapper div#sidebar-wrapper { overflow: hidden }
|
13
13
|
|
14
|
-
|
15
|
-
=
|
14
|
+
-# Getting all the assets needed by thecore_rails_admin from all the gems
|
15
|
+
= get_asset_tags_for("thecore_rails_admin")
|
16
16
|
|
17
|
-
- Rails.application.config.assets.paths.each do |p|
|
18
|
-
-# Getting all the assets needed by thecore from all the gems
|
19
|
-
= stylesheet_link_tag("#{p.to_s.split("/").last}/thecore_rails_admin", media: 'all', 'data-turbolinks-track' => true) if File.exists?("#{p}/thecore_rails_admin.scss")
|
20
|
-
= javascript_include_tag("#{Dir["#{p}/**/thecore_rails_admin.js"].first.split("/")[-2]}/thecore_rails_admin", 'data-turbolinks-track' => true) if Dir["#{p}/**/thecore_rails_admin.js"].any?
|
21
|
-
|
22
17
|
= favicon_link_tag 'apple-touch-icon.png', rel: 'apple-touch-icon', sizes: "180x180"
|
23
18
|
= favicon_link_tag 'favicon-32x32.png', rel: 'icon', sizes: "32x32"
|
24
19
|
= favicon_link_tag 'favicon-16x16.png', rel: 'icon', sizes: "16x16"
|
@@ -16,10 +16,13 @@
|
|
16
16
|
- if @abstract_model
|
17
17
|
= breadcrumb
|
18
18
|
.well.well-sm
|
19
|
-
%ul.nav.nav-pills
|
19
|
+
%ul.nav.nav-pills#action-menu
|
20
20
|
= menu_for((@abstract_model ? (@object.try(:persisted?) ? :member : :collection) : :root), @abstract_model, @object)
|
21
21
|
= content_for :contextual_tabs
|
22
22
|
.well.well-sm
|
23
23
|
= yield
|
24
24
|
- else
|
25
25
|
= yield
|
26
|
+
|
27
|
+
%script
|
28
|
+
$('.dropdown-toggle').dropdown()
|
@@ -1,4 +1,4 @@
|
|
1
|
-
%div.panel
|
1
|
+
%div.panel
|
2
2
|
%div.panel-heading
|
3
3
|
%ul.inline.list-inline.pull-right
|
4
4
|
= menu_for :member, @abstract_model, object, true
|
@@ -6,6 +6,7 @@
|
|
6
6
|
= check_box_tag "bulk_ids[]", object.id, false, id: "bulk_ids_#{object.id}"
|
7
7
|
%a{:"data-toggle" => "collapse", href: "#object-id-#{object.id}"}
|
8
8
|
= (object.resume rescue false || object.display_name rescue false || object.title rescue false || object.name rescue false || object.code rescue false)
|
9
|
+
%b.caret
|
9
10
|
%div{id: "object-id-#{object.id}", class: "panel-collapse collapse"}
|
10
11
|
%div.panel-body
|
11
12
|
- properties.map{ |property| property.bind(:object, object) }.each do |property|
|