red_base 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -10
  3. data/app/assets/javascripts/red_base/dashboard/app.js +10 -2
  4. data/app/assets/javascripts/red_base/dashboard/lib/ng-quick-date.js +297 -0
  5. data/app/assets/javascripts/red_base/dashboard/locale/translations.js~ +4 -0
  6. data/app/assets/javascripts/red_base/dashboard/modules/auth/user.js +1 -1
  7. data/app/assets/javascripts/red_base/dashboard/modules/list-view.js~ +20 -0
  8. data/app/assets/javascripts/red_base/dashboard/modules/user.js~ +4 -0
  9. data/app/assets/javascripts/red_base/dashboard/templates/application.handlebars.erb~ +39 -0
  10. data/app/assets/javascripts/red_base/dashboard/templates/auth/groups/details.handlebars.erb~ +15 -0
  11. data/app/assets/javascripts/red_base/dashboard/templates/auth/groups/index.handlebars.erb~ +7 -0
  12. data/app/assets/javascripts/red_base/dashboard/templates/auth/index.handlebars.erb~ +4 -0
  13. data/app/assets/javascripts/red_base/dashboard/{init.js~ → templates/auth/users/details.handlebars.erb~} +0 -0
  14. data/app/assets/javascripts/red_base/dashboard/templates/auth/users/index.handlebars.erb~ +7 -0
  15. data/app/assets/javascripts/red_base/dashboard/templates/auth/users/new.handlebars.erb~ +1 -0
  16. data/app/assets/javascripts/red_base/dashboard/templates/auth/users/new.handlebars~ +1 -0
  17. data/app/assets/javascripts/red_base/dashboard/templates/components/model-form.handlebars.erb~ +1 -0
  18. data/app/assets/javascripts/red_base/dashboard/templates/components/model-from.handlebars.erb~ +1 -0
  19. data/app/assets/javascripts/red_base/i18n.js~ +2 -0
  20. data/app/assets/javascripts/red_base/locale/fa.json~ +27 -0
  21. data/app/assets/stylesheets/red_base/#base.css.scss# +403 -0
  22. data/app/assets/stylesheets/red_base/application.ltr.css~ +4 -0
  23. data/app/assets/stylesheets/red_base/application.rtl.css~ +4 -0
  24. data/app/assets/stylesheets/red_base/dashboard/ltr/application.css +2 -0
  25. data/app/assets/stylesheets/red_base/dashboard/ltr/application.css~ +19 -0
  26. data/app/assets/stylesheets/red_base/dashboard/ltr/buttons.css.scss.erb~ +48 -0
  27. data/app/assets/stylesheets/red_base/dashboard/ltr/direction.css.scss~ +14 -0
  28. data/app/assets/stylesheets/red_base/dashboard/ltr/foundation_and_overrides.css.scss~ +1039 -0
  29. data/app/assets/stylesheets/red_base/dashboard/ng-quick-date-default-theme.css.scss +20 -0
  30. data/app/assets/stylesheets/red_base/dashboard/ng-quick-date.css.scss +19 -0
  31. data/app/assets/stylesheets/red_base/foundation_and_overrides.ltr.scss.erb~ +1012 -0
  32. data/app/assets/stylesheets/red_base/foundation_and_overrides.rtl.scss.erb~ +1012 -0
  33. data/app/assets/{stylesheets/red_base/dashboard/rtl/base.css.scss~ → templates/list-view/index.html~} +0 -0
  34. data/app/assets/templates/modules.html~ +1 -0
  35. data/app/controllers/red_base/omniauth/callbacks_controller.rb~ +46 -0
  36. data/app/views/angularjs_templates/#index.html# +8 -0
  37. data/app/views/layouts/red_base/dashboard.html.erb~ +17 -0
  38. data/config/initializers/fast_gettext.rb~ +4 -0
  39. data/lib/generators/red_base/js_scaffold_generator.rb +1 -0
  40. data/lib/generators/red_base/templates/angularjs/index.html.erb +1 -1
  41. data/lib/generators/red_base/templates/angularjs/new.html.erb +5 -1
  42. data/lib/generators/red_base/templates/fast_gettext.rb~ +4 -0
  43. data/lib/red_base/dashboard/{module.rb~ → controller.rb~} +2 -2
  44. data/lib/red_base/omniauth/callbacks.rb~ +44 -0
  45. data/lib/red_base/version.rb +1 -1
  46. data/lib/tasks/gettext.rb~ +7 -0
  47. data/{lib/generators/red_base/templates/angularjs/details.html.erb~ → spec/dummy/db/test.sqlite3} +0 -0
  48. data/{lib/generators/red_base/templates/views/index.json.jbuilder.erb~ → spec/dummy/log/development.log} +0 -0
  49. data/spec/dummy/log/test.log +15 -0
  50. data/spec/dummy/tmp/ember-rails/ember-data.js +10204 -0
  51. data/spec/dummy/tmp/ember-rails/ember.js +36991 -0
  52. metadata +246 -216
  53. data/app/assets/stylesheets/red_base/dashboard/ltr/base.css.scss~ +0 -15
  54. data/app/assets/stylesheets/red_base/mixins.css.scss~ +0 -7
  55. data/app/controllers/red_base/users/omniauth_callbacks_controller.rb~ +0 -2
  56. data/app/views/angularjs_templates/nav.html.erb~ +0 -43
  57. data/lib/devise_patch.rb~ +0 -5
  58. data/lib/generators/red_base/templates/README~ +0 -4
  59. data/lib/generators/red_base/templates/api/controller.rb.erb~ +0 -37
  60. data/lib/generators/red_base/templates/red_base.rb~ +0 -251
  61. data/lib/red_base/active_record.rb~ +0 -0
  62. data/lib/red_base/dashboard.rb~ +0 -18
  63. data/lib/red_base/omniauth.rb~ +0 -1
  64. data/lib/red_base/omniauth/callbakcs.rb~ +0 -7
@@ -0,0 +1,15 @@
1
+ <p><%= _("ID") %>: <strong>{{ id }}</strong></p>
2
+ <p><%= _("Email") %>: <strong>{{ email }}</strong></p>
3
+ <div class="row">
4
+ <div class="small-12 column text-right">
5
+ <ul class="button-group float-right">
6
+ {{#link-to user.edit class=" small"}}
7
+ <span class="fa fa-edit"></span> <%= _("Edit") %>
8
+ {{/link-to}}
9
+ {{#link-to user.show class="small"}}
10
+ <span class="fa fa-eye"> <%= _("Show") %>{{/link-to}}
11
+ {{#link-to user.show class="small"}}
12
+ <span class="fa fa-check-circle-o"> <%= _("Active") %>{{/link-to}}
13
+ </ul>
14
+ </div>
15
+ </div>
@@ -0,0 +1,7 @@
1
+ <div class="row clearmargin">
2
+ <div class="small-6 column text-left clearpadding">
3
+ <h3><i class="fa fa-group"></i> <%= _("Groups") %></h3>
4
+ </div>
5
+ </div>
6
+
7
+ {{list-view model=model title_field="name" delete_items="delete_items" details_template="groups/details" items_per_page=5}}
@@ -0,0 +1,4 @@
1
+ {{#link-to 'auth.users' }}Users{{/link-to}}
2
+ {{#link-to 'auth.groups' }}Users{{/link-to}}
3
+
4
+ {{outlet}}
@@ -0,0 +1,7 @@
1
+ <div class="row clearmargin">
2
+ <div class="small-6 column text-left clearpadding">
3
+ <h3><i class="fa fa-group"></i> <%= _("Users") %></h3>
4
+ </div>
5
+ </div>
6
+
7
+ {{list-view model=model title_field="email" delete_items="delete_items" details_template="users/details" items_per_page=10}}
@@ -0,0 +1,2 @@
1
+ window._ = function (str, options) {
2
+ };
@@ -0,0 +1,27 @@
1
+ {
2
+ "Given page does not exists": "",
3
+ "New": "جدید",
4
+ "Activate": "",
5
+ "Selected record(s) removed successfully.": "",
6
+ "Can not connect to remote, please try again": "",
7
+ "Dashboard": "بخش کاربری",
8
+ "Some slug": "",
9
+ "Search": "",
10
+ "There is not record": "",
11
+ "Current Page": "",
12
+ "Total Pages": "",
13
+ "Selected": "",
14
+ "Toggle Select": "",
15
+ "Select All": "",
16
+ "Delete": "",
17
+ "Languages": "",
18
+ "ID": "",
19
+ "Email": "",
20
+ "Edit": "",
21
+ "Show": "",
22
+ "Active": "",
23
+ "New User": "",
24
+ "Users": "",
25
+ "Name": "",
26
+ "Groups": ""
27
+ }
@@ -0,0 +1,403 @@
1
+ //@import 'foundation_and_overrides';
2
+ //@import "foundation";
3
+ //@import "foundation/components/global";
4
+ //@import "foundation/components/alert-boxes";
5
+ @import "red_base/variables";
6
+ @import "red_base/mixins";
7
+
8
+ table{
9
+ th{
10
+ text-align:center !important;
11
+ }
12
+ width:90%;
13
+ margin-left:auto ;
14
+ margin-right:auto ;
15
+ }
16
+
17
+ .warning{
18
+ text-shadow:1px 2px 2px 1px black;
19
+ }
20
+
21
+ .error{
22
+ text-shadow:1px 2px 2px 1px black;
23
+ }
24
+
25
+ .vertical {
26
+ list-style: none;
27
+ li {
28
+ display: inline;
29
+ }
30
+ }
31
+
32
+ .inline{
33
+ display:inline;
34
+ }
35
+
36
+ .justify{
37
+ text-align:justify;
38
+ }
39
+
40
+
41
+ .header {
42
+ Background: $headerbg;
43
+ height: $headerHeight;
44
+ }
45
+
46
+ footer {
47
+ Background: $darkbg;
48
+ width:100%;
49
+ min-height:60px;
50
+ position:relative;
51
+ margin: 0 auto;
52
+ color:$lightgray;
53
+
54
+ div{
55
+ padding:20px 60px;
56
+ font-size:14px;
57
+ a{
58
+ color:$lightgray;
59
+ }
60
+ }
61
+ }
62
+
63
+ fieldset {
64
+ border-radius: $border-radius;
65
+ background: #fff;
66
+
67
+ legend {
68
+ color: $darkgray;
69
+ padding: 10px 10px 20px 10px;
70
+ background: none;
71
+ }
72
+ .row {
73
+ padding-bottom: 20px;
74
+
75
+ }
76
+
77
+ }
78
+
79
+ .form {
80
+ line-height:25px;
81
+ img {
82
+ padding :5px;
83
+ }
84
+ .submit{
85
+ text-align:center;
86
+ }
87
+ }
88
+
89
+
90
+ $table-list-line-height: 40px;
91
+ /*
92
+ <.table-list>
93
+ .buttons
94
+ .details
95
+ */
96
+ .table-list{
97
+ ul:not(.button-group){
98
+ border-top:2px solid $lightergray;
99
+ border-bottom: 5px solid $hover-box;
100
+ list-style: none;
101
+ border-radius: $border-radius;
102
+ overflow: hidden;
103
+
104
+ li:not(.btn) {
105
+ min-height: $table-list-line-height;
106
+ line-height: $table-list-line-height;
107
+ border-left: solid 1px $lightergray;
108
+ border-right: solid 1px $lightergray;
109
+ border-bottom: solid 1px $lightergray;
110
+ background-color: $verylightgray;
111
+ opacity: 0.8;
112
+ padding-left: 20px;
113
+ padding-right: 20px;
114
+ color: lighten(black, 20%);
115
+ overflow: hidden;
116
+
117
+ // TODO: Create a mixin for user-select;
118
+ -webkit-user-select: none;
119
+ -moz-user-select: none;
120
+ -khtml-user-select: none;
121
+ -ms-user-select: none;
122
+ -o-user-select: none;
123
+ &.selected {
124
+ background: $selected-bg;
125
+ }
126
+ &:hover.selected{
127
+ background: darken($selected-bg, 5%);
128
+ }
129
+ .show_details {
130
+ display: block;
131
+ @include transition(display 300ms linear 0ms);
132
+ }
133
+ .hide_details {
134
+ display: hide;
135
+ @include transition(display 300ms linear 0ms);
136
+ }
137
+ .title {
138
+ display: inline;
139
+ position: absolute;
140
+ width: 75%;
141
+ height: $table-list-line-height;
142
+
143
+ }
144
+ .buttons {
145
+ margin-top: -$table-list-line-height;
146
+ opacity: 0;
147
+
148
+ @include transition(opacity 300ms linear 0ms);
149
+ }
150
+ i {
151
+ font-size: 1.2em;
152
+ width: 1em;
153
+ height: 1em;
154
+ text-align: center;
155
+ }
156
+ a{
157
+ color: $darkgray;
158
+ }
159
+ span.btn > a {
160
+ color: white;
161
+ }
162
+ &.table-header {
163
+ background: white;
164
+ padding-top: 5px;
165
+ opacity: 1;
166
+ }
167
+ .overload{
168
+ display:none;
169
+ height:300px;
170
+ }
171
+ &:first-child{
172
+ border-top:solid 1px #E6E6E6;
173
+ }
174
+ &:hover {
175
+ //opacity: 1;
176
+ background: white;
177
+ overflow: hidden;
178
+
179
+ & > .buttons {
180
+ opacity: 1;
181
+ @include transition("opacity 300ms linear 0ms");
182
+ }
183
+ }
184
+ div:not(.pagination) {
185
+ padding-right:10px;
186
+ padding-left:10px;
187
+ }
188
+ &.table-summery {
189
+ opacity: 1;
190
+ background: white;
191
+ .small-text {
192
+ font-size: 0.8em;
193
+ padding: 0 10px;
194
+ }
195
+
196
+ .pagination {
197
+ display: inline-block;
198
+ font-size: 1em;
199
+ padding-top: $table-list-line-height / 6;
200
+ input {
201
+ text-align: center;
202
+ display: inline;
203
+ width: 1.6em;
204
+ padding: 0 0.1em;
205
+ margin: 0;
206
+ font-size: 1.1em;
207
+ height: 1.2em;
208
+ background: lighten($lightergray, 5%);
209
+ border: 1px solid $lightergray;
210
+ }
211
+ .label {
212
+ text-align: center;
213
+ position: relative;
214
+ font-size: 0.7em;
215
+ }
216
+ }
217
+
218
+ }
219
+ .details{
220
+ font-size:0.9em;
221
+ margin: 0 1em;
222
+ padding:1em 0;
223
+ .button-group{
224
+ background-color:$lightergray;
225
+ border-radius: 1em 1em 0 0;
226
+ }
227
+ }
228
+ }
229
+ }
230
+ }
231
+
232
+ .table {
233
+ background: white;
234
+ border-radius: $border-radius;
235
+ -webkit-font-smoothing: antialiased;
236
+ width: auto;
237
+ overflow: auto;
238
+ display: block;
239
+ th {
240
+
241
+ }
242
+ }
243
+
244
+ .clearmargin {
245
+ margin-left: 0 !important;
246
+ margin-right: 0 !important;
247
+ }
248
+
249
+ .clearpadding {
250
+ padding-left: 0 !important;
251
+ padding-right: 0 !important;
252
+ }
253
+
254
+ .pointer {
255
+ cursor: pointer;
256
+ }
257
+
258
+ .delete-icon {
259
+ color: $alizarin;
260
+ }
261
+
262
+ #flash {
263
+ padding: 10px 5px;
264
+ border-radius: $border-radius;
265
+ margin: 10px auto;
266
+ display: none;
267
+ cursor: pointer;
268
+ &.error {
269
+ background: $alizarin;
270
+ border: 1px solid darken($alizarin, 5%);
271
+ color: white;
272
+ }
273
+ &.warning {
274
+ background: $sun_flower;
275
+ border: 1px solid darken($sun_flower, 5%);
276
+ color: white;
277
+
278
+ }
279
+ &.success {
280
+ background: $emerald;
281
+ border: 1px solid darken($emerald, 5%);
282
+ color: white;
283
+
284
+ }
285
+ }
286
+
287
+
288
+ .search-bar{
289
+ margin-top: 10px;
290
+ input[type="search"]{
291
+ border-top-left-radius:5px;
292
+ border-bottom-left-radius:5px !important;
293
+ }
294
+
295
+ button[type="submit"]{
296
+ border-top-right-radius:5px !important;
297
+ border-bottom-right-radius:5px;
298
+ }
299
+ }
300
+
301
+
302
+ #mainloader {
303
+ .text {
304
+ margin: 20% auto;
305
+ width:40%;
306
+ text-align: center;
307
+ color: #4f4f4f;
308
+ h5 { color: #4f4f4f;}
309
+ }
310
+ }
311
+
312
+
313
+ .red {
314
+ background-color: $alizarin;
315
+ color: white;
316
+ }
317
+
318
+ .green {
319
+ background-color: $emerald;
320
+ color: white;
321
+
322
+ }
323
+
324
+ .yellow {
325
+ background-color: $sun_flower;
326
+ color: white;
327
+ }
328
+
329
+ .blue {
330
+ background-color: $peter_river;
331
+ color: white;
332
+ }
333
+ .lightgray {
334
+ background-color: $lightgray;
335
+ }
336
+ .lightergray {
337
+ background-color: $lightergray;
338
+ }
339
+ .rounded {
340
+ border-radius: $border-radius;
341
+ }
342
+
343
+ .text-4x {
344
+ font-size: 4em;
345
+ }
346
+ .text-2x {
347
+ font-size: 2em;
348
+ }
349
+
350
+ .elabel {
351
+ font-weight: 500;
352
+ text-align: center;
353
+ text-decoration: none;
354
+ line-height: 1;
355
+ white-space: nowrap;
356
+ display: inline-block;
357
+ position: relative;
358
+ padding: 0.1875em 0.625em 0.25em;
359
+ font-size: 0.75em;
360
+ }
361
+
362
+ .debug_dump {
363
+ margin: 10px auto;
364
+ width: 80%;
365
+ padding: 15px;
366
+ background: #efefef;
367
+ border: 1px #dfdfdf solid;
368
+
369
+ }
370
+
371
+ input {
372
+ &.has-error {
373
+ border: 1px solid $alizarin;
374
+ &:focus {border: 1px solid $alizarin;}
375
+ }
376
+ }
377
+
378
+ .progressbar {
379
+ width: 100%;
380
+ height: 3px;
381
+ background: #eee;
382
+ border: 1px solid #e0e0e0;
383
+ text-align: center;
384
+ font-size: 12px;
385
+ color: $darkgray;
386
+
387
+ .filler {
388
+ position: absolute;
389
+ top: 0px;
390
+ float: left;
391
+ left: 0;
392
+ height: 100%;
393
+ }
394
+
395
+ }
396
+
397
+ .progressbar-container {
398
+ padding-top: 20px;
399
+ }
400
+ .text-error {
401
+ color: $alizarin;
402
+ }
403
+