decidim-admin 0.8.4 → 0.9.0

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.
Files changed (94) hide show
  1. checksums.yaml +5 -5
  2. data/README.md +1 -1
  3. data/app/assets/javascripts/decidim/admin/application.js.es6 +5 -2
  4. data/app/assets/stylesheets/decidim/admin/_decidim.scss +2 -5
  5. data/app/assets/stylesheets/decidim/admin/extra/_action-icon.scss +4 -4
  6. data/app/assets/stylesheets/decidim/admin/extra/_cards.scss +3 -2
  7. data/app/assets/stylesheets/decidim/admin/extra/_categories.scss +1 -1
  8. data/app/assets/stylesheets/decidim/admin/extra/_dropdown_inverted.scss +8 -1
  9. data/app/assets/stylesheets/decidim/admin/extra/_label-required.scss +1 -1
  10. data/app/assets/stylesheets/decidim/admin/extra/_login.scss +1 -0
  11. data/app/assets/stylesheets/decidim/admin/extra/_quill.scss +2 -2
  12. data/app/assets/stylesheets/decidim/admin/extra/_select_multiple.scss +1 -1
  13. data/app/assets/stylesheets/decidim/admin/extra/_sort.scss +5 -4
  14. data/app/assets/stylesheets/decidim/admin/extra/_title_bar.scss +17 -7
  15. data/app/assets/stylesheets/decidim/admin/modules/_action-icon.scss +2 -2
  16. data/app/assets/stylesheets/decidim/admin/modules/_buttons.scss +6 -2
  17. data/app/assets/stylesheets/decidim/admin/modules/_callouts.scss +3 -0
  18. data/app/assets/stylesheets/decidim/admin/modules/_cards.scss +12 -0
  19. data/app/assets/stylesheets/decidim/admin/modules/_char-counter.scss +2 -0
  20. data/app/assets/stylesheets/decidim/admin/modules/_forms.scss +5 -1
  21. data/app/assets/stylesheets/decidim/admin/modules/_icons.scss +1 -0
  22. data/app/assets/stylesheets/decidim/admin/modules/_layout.scss +9 -1
  23. data/app/assets/stylesheets/decidim/admin/modules/_main-nav.scss +5 -0
  24. data/app/assets/stylesheets/decidim/admin/modules/_process-header.scss +1 -0
  25. data/app/assets/stylesheets/decidim/admin/modules/_secondary-nav.scss +10 -5
  26. data/app/assets/stylesheets/decidim/admin/modules/_table-list.scss +7 -1
  27. data/app/assets/stylesheets/decidim/admin/modules/_tabs.scss +7 -0
  28. data/app/assets/stylesheets/decidim/admin/modules/_title-bar.scss +3 -0
  29. data/app/assets/stylesheets/decidim/admin/modules/_user-login.scss +2 -0
  30. data/app/assets/stylesheets/decidim/admin/plugins/_foundation-datepicker.scss +36 -36
  31. data/app/assets/stylesheets/decidim/admin/utils/_fontface.scss +22 -20
  32. data/app/assets/stylesheets/decidim/admin/utils/_helpers.scss +6 -6
  33. data/app/assets/stylesheets/decidim/admin/utils/_keyframes.scss +6 -6
  34. data/app/assets/stylesheets/decidim/admin/utils/_mixins.scss +2 -3
  35. data/app/assets/stylesheets/decidim/admin/utils/_settings.scss +406 -129
  36. data/app/assets/stylesheets/decidim/admin/utils/_toggle-expand.scss +1 -0
  37. data/app/commands/decidim/admin/create_attachment.rb +13 -3
  38. data/app/commands/decidim/admin/create_feature.rb +1 -0
  39. data/app/commands/decidim/admin/create_managed_user.rb +20 -10
  40. data/app/commands/decidim/admin/impersonate_managed_user.rb +7 -9
  41. data/app/commands/decidim/admin/officialize_user.rb +47 -0
  42. data/app/commands/decidim/admin/unofficialize_user.rb +35 -0
  43. data/app/commands/decidim/admin/update_organization_appearance.rb +32 -5
  44. data/app/controllers/decidim/admin/categories_controller.rb +1 -1
  45. data/app/controllers/decidim/admin/features/base_controller.rb +1 -1
  46. data/app/controllers/decidim/admin/features_controller.rb +7 -0
  47. data/app/controllers/decidim/admin/managed_users/impersonations_controller.rb +1 -1
  48. data/app/controllers/decidim/admin/managed_users_controller.rb +23 -9
  49. data/app/controllers/decidim/admin/newsletters_controller.rb +2 -2
  50. data/app/controllers/decidim/admin/officializations_controller.rb +64 -0
  51. data/app/events/decidim/attachment_created_event.rb +25 -0
  52. data/app/events/decidim/feature_published_event.rb +27 -0
  53. data/app/events/decidim/participatory_process_step_activated_event.rb +31 -0
  54. data/app/forms/decidim/admin/managed_user_form.rb +0 -11
  55. data/app/forms/decidim/admin/officialization_form.rb +30 -0
  56. data/app/forms/decidim/admin/organization_appearance_form.rb +46 -1
  57. data/app/helpers/decidim/admin/application_helper.rb +1 -3
  58. data/app/models/decidim/admin/abilities/admin_ability.rb +1 -0
  59. data/app/models/decidim/admin/abilities/participatory_process_moderator_ability.rb +1 -1
  60. data/app/queries/decidim/admin/user_groups_evaluation.rb +9 -8
  61. data/app/queries/decidim/admin/users_officialization.rb +53 -0
  62. data/app/views/decidim/admin/managed_users/new.html.erb +5 -5
  63. data/app/views/decidim/admin/officializations/index.html.erb +82 -0
  64. data/app/views/decidim/admin/officializations/new.html.erb +18 -0
  65. data/app/views/decidim/admin/organization_appearance/_form.html.erb +60 -0
  66. data/app/views/layouts/decidim/admin/_title_bar.html.erb +1 -1
  67. data/app/views/layouts/decidim/admin/users.html.erb +5 -0
  68. data/config/locales/ca.yml +44 -2
  69. data/config/locales/en.yml +44 -1
  70. data/config/locales/es.yml +47 -5
  71. data/config/locales/eu.yml +46 -3
  72. data/config/locales/fi.yml +55 -12
  73. data/config/locales/fr.yml +45 -2
  74. data/config/locales/gl.yml +514 -0
  75. data/config/locales/it.yml +47 -4
  76. data/config/locales/nl.yml +47 -4
  77. data/config/locales/pl.yml +44 -1
  78. data/config/locales/pt-BR.yml +514 -0
  79. data/config/locales/pt.yml +106 -63
  80. data/config/locales/ru.yml +36 -6
  81. data/config/locales/sv.yml +514 -0
  82. data/config/locales/uk.yml +36 -8
  83. data/config/routes.rb +2 -0
  84. data/db/migrate/20171219154507_add_officialization_to_users.rb +10 -0
  85. data/lib/decidim/admin/engine.rb +1 -2
  86. data/lib/decidim/admin/test/manage_feature_permissions_examples.rb +0 -1
  87. data/lib/decidim/admin/test/manage_moderations_examples.rb +64 -0
  88. data/lib/decidim/admin/test.rb +5 -0
  89. data/lib/decidim/admin/version.rb +1 -1
  90. data/vendor/assets/javascripts/moment.min.js +1 -7
  91. metadata +37 -38
  92. data/app/assets/javascripts/decidim/admin/scopes.js.es6 +0 -20
  93. data/app/assets/javascripts/decidim/admin/select2.js.es6 +0 -8
  94. data/app/assets/stylesheets/decidim/admin/plugins/_select2.scss +0 -27
@@ -29,6 +29,7 @@ a:hover .icon--action{
29
29
  .icon--after{
30
30
  margin-left: .3rem;
31
31
  }
32
+
32
33
  .icon--before{
33
34
  margin-right: .3rem;
34
35
  }
@@ -12,9 +12,11 @@ body{
12
12
  flex-grow: 1;
13
13
  display: flex;
14
14
  flex-direction: column;
15
+
15
16
  & > .row{
16
17
  width: 100%;
17
18
  flex-grow: 1;
19
+
18
20
  @include breakpoint(medium){
19
21
  display: flex;
20
22
  }
@@ -24,13 +26,16 @@ body{
24
26
  .layout-wrapper{
25
27
  display: flex;
26
28
  flex-grow: 1;
29
+
27
30
  @include clearfix;
31
+
28
32
  position: relative;
29
33
  }
30
34
 
31
35
  .layout-nav{
32
36
  max-width: 340px;
33
37
  flex-shrink: 0;
38
+
34
39
  @include breakpoint(mediumlarge down){
35
40
  position: absolute;
36
41
  top: 0;
@@ -39,14 +44,17 @@ body{
39
44
  transition: transform .3s;
40
45
  z-index: 1;
41
46
  }
47
+
42
48
  @include breakpoint(small down){
43
49
  max-width: 100%;
44
50
  width: 100%;
45
51
  transform: translateX(-100%);
52
+
46
53
  .secondary-nav{
47
54
  width: calc(100% - 120px);
48
55
  }
49
56
  }
57
+
50
58
  &.is-nav-open{
51
59
  transform: translateX(0);
52
60
  }
@@ -57,10 +65,10 @@ body{
57
65
  max-width: 100%;
58
66
  }
59
67
 
60
-
61
68
  .container{
62
69
  padding: 1rem;
63
70
  max-width: 1200px;
71
+
64
72
  @include breakpoint(mediumlarge){
65
73
  padding: 2rem;
66
74
  }
@@ -9,21 +9,26 @@
9
9
  .main-nav ul{
10
10
  list-style: none;
11
11
  margin-left: 0;
12
+
12
13
  a{
13
14
  padding-top: 1rem;
14
15
  padding-bottom: .8rem;
15
16
  border-bottom: 1px solid rgba(white, .2);
17
+
16
18
  li:first-child > &{
17
19
  border-top: 1px solid rgba(white, .2);
18
20
  }
21
+
19
22
  display: block;
20
23
  color: $medium-gray;
21
24
  font-size: .7rem;
22
25
  text-transform: uppercase;
26
+
23
27
  &:hover{
24
28
  background-color: lighten($dark-gray, 10);
25
29
  }
26
30
  }
31
+
27
32
  .is-active a{
28
33
  color: $body-font-color;
29
34
  background-color: $white;
@@ -7,5 +7,6 @@
7
7
 
8
8
  .process-title-summary{
9
9
  @extend .card-title;
10
+
10
11
  margin-bottom: 2rem;
11
12
  }
@@ -13,27 +13,33 @@ $process-title-height: 3rem;
13
13
  list-style: none;
14
14
  margin-left: 0;
15
15
  }
16
+
16
17
  li > a{
17
18
  display: block;
18
19
  padding: .5rem 1rem;
19
20
  margin: 0 .5rem;
20
21
  color: $body-font-color;
22
+
21
23
  &:hover,
22
24
  &:focus{
23
25
  color: lighten($body-font-color, 20);
24
26
  }
25
27
  }
28
+
26
29
  li.is-active > a{
27
30
  background-color: $lighter-gray;
28
31
  border-radius: $global-radius;
29
32
  }
33
+
30
34
  li > ul{
31
35
  margin-left: 1rem;
32
36
  font-size: 90%;
37
+
33
38
  a{
34
39
  padding-top: .2rem;
35
40
  padding-bottom: .2rem;
36
41
  }
42
+
37
43
  li.is-active a{
38
44
  font-weight: 600;
39
45
  background-color: transparent;
@@ -64,23 +70,22 @@ $process-title-height: 3rem;
64
70
  }
65
71
 
66
72
  .secondary-nav__title{
67
- padding: 1rem 1rem;
73
+ padding: 1rem;
68
74
  margin-bottom: 2rem;
69
75
  }
70
76
 
71
77
  .secondary-nav__actions{
72
- padding: 1rem 1rem;
78
+ padding: 1rem;
73
79
  margin-top: 2rem;
74
80
  }
75
81
 
76
-
77
- .process-title {
82
+ .process-title{
78
83
  @include breakpoint(large){
79
84
  margin-bottom: $process-title-height;
80
85
  }
81
86
  }
82
87
 
83
- .process-title-content {
88
+ .process-title-content{
84
89
  @include breakpoint(large){
85
90
  position: absolute;
86
91
  left: 120px;
@@ -7,6 +7,7 @@
7
7
  //Table list
8
8
  .table-list{
9
9
  border-collapse: collapse;
10
+
10
11
  th{
11
12
  text-transform: uppercase;
12
13
  }
@@ -20,6 +21,7 @@
20
21
  td:not(:first-child){
21
22
  text-align: center;
22
23
  }
24
+
23
25
  th:first-child,
24
26
  td:first-child{
25
27
  padding-left: 0;
@@ -47,10 +49,12 @@
47
49
 
48
50
  a:not(.button){
49
51
  color: $body-font-color;
52
+
50
53
  &:hover{
51
54
  color: $primary-color;
52
55
  }
53
56
  }
57
+
54
58
  td > .button{
55
59
  margin-bottom: 0;
56
60
  }
@@ -59,19 +63,21 @@
59
63
  margin: 0 auto;
60
64
  width: 48px;
61
65
  }
62
-
63
66
  }
64
67
 
65
68
  .table-list__actions{
66
69
  text-align: center;
67
70
  white-space: nowrap;
71
+
68
72
  &:last-child{
69
73
  text-align: right;
70
74
  }
75
+
71
76
  .action-icon,
72
77
  a.action-icon{
73
78
  color: $muted;
74
79
  }
80
+
75
81
  .action-icon.action-icon--remove{
76
82
  color: $alert-color;
77
83
  }
@@ -1,9 +1,11 @@
1
1
  .tabs--lang{
2
2
  background-color: transparent;
3
3
  float: right;
4
+
4
5
  li{
5
6
  border-right: 1px solid $light-gray;
6
7
  }
8
+
7
9
  li:last-child{
8
10
  border-right: 0;
9
11
  }
@@ -12,14 +14,17 @@
12
14
  padding: 0 .5rem;
13
15
  font-weight: normal;
14
16
  color: $muted;
17
+
15
18
  &:hover{
16
19
  color: $anchor-color-hover;
17
20
  }
18
21
  }
22
+
19
23
  .is-active a{
20
24
  font-weight: 600;
21
25
  color: $anchor-color;
22
26
  }
27
+
23
28
  a.is-tab-error{
24
29
  color: $alert-color;
25
30
  }
@@ -29,6 +34,7 @@
29
34
  display: flex;
30
35
  justify-content: space-between;
31
36
  align-items: center;
37
+
32
38
  label{
33
39
  display: inline-block;
34
40
  }
@@ -41,6 +47,7 @@
41
47
 
42
48
  .tab-custom-error{
43
49
  @extend .form-error;
50
+
44
51
  margin-right: .3rem;
45
52
  }
46
53
 
@@ -13,6 +13,7 @@
13
13
  width: 2.5rem;
14
14
  text-align: center;
15
15
  color: $white;
16
+
16
17
  @include breakpoint(large){
17
18
  display: none;
18
19
  }
@@ -23,9 +24,11 @@
23
24
  padding: 1rem;
24
25
  display: block;
25
26
  background-color: $brand;
27
+
26
28
  @include breakpoint(large){
27
29
  max-width: 120px;
28
30
  }
31
+
29
32
  img{
30
33
  display: block;
31
34
  }
@@ -3,6 +3,7 @@
3
3
  right: 2rem;
4
4
  top: 50%;
5
5
  margin-top: -1.2em;
6
+
6
7
  a{
7
8
  color: $body-font-color;
8
9
  }
@@ -14,6 +15,7 @@
14
15
  .dropdown.menu > li.is-dropdown-submenu-parent > a{
15
16
  padding-right: 1rem;
16
17
  }
18
+
17
19
  .dropdown.menu > li.is-dropdown-submenu-parent > a::after{
18
20
  border-top-color: $white;
19
21
  border-width: 4px;
@@ -1,15 +1,15 @@
1
1
  $calendar-bg-color: $white;
2
- $calendar-border: 1px solid rgba(0, 0, 0, 0.1);
3
- $calendar-border-color: rgba(0, 0, 0, 0.1);
2
+ $calendar-border: 1px solid rgba(0, 0, 0, .1);
3
+ $calendar-border-color: rgba(0, 0, 0, .1);
4
4
  $calendar-active-color: $primary-color;
5
5
  $calendar-bg-hover: $light-gray;
6
- $calendar-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
6
+ $calendar-shadow: 0 5px 10px rgba(0, 0, 0, .2);
7
7
  $calendar-color-old: $medium-gray;
8
8
  $calendar-color-disabled: $light-gray;
9
9
  $calendar-radius: $global-radius;
10
10
  $calendar-font-size: $global-font-size * .9;
11
11
 
12
- .datepicker {
12
+ .datepicker{
13
13
  display: none;
14
14
  position: absolute;
15
15
  padding: 4px;
@@ -17,7 +17,7 @@ $calendar-font-size: $global-font-size * .9;
17
17
  direction: ltr;
18
18
  }
19
19
 
20
- .datepicker.dropdown-menu {
20
+ .datepicker.dropdown-menu{
21
21
  position: absolute;
22
22
  top: 100%;
23
23
  left: 0;
@@ -35,21 +35,21 @@ $calendar-font-size: $global-font-size * .9;
35
35
  line-height: 18px;
36
36
  }
37
37
 
38
- .datepicker.dropdown-menu th {
38
+ .datepicker.dropdown-menu th{
39
39
  padding: 4px 5px;
40
40
  }
41
41
 
42
- .datepicker.dropdown-menu td {
42
+ .datepicker.dropdown-menu td{
43
43
  padding: 6px 9px;
44
44
  }
45
45
 
46
- .datepicker table {
46
+ .datepicker table{
47
47
  border: 0;
48
48
  margin: 0;
49
49
  width: auto;
50
50
  }
51
51
 
52
- .datepicker table tr td span {
52
+ .datepicker table tr td span{
53
53
  display: block;
54
54
  width: 23%;
55
55
  height: 54px;
@@ -59,7 +59,7 @@ $calendar-font-size: $global-font-size * .9;
59
59
  cursor: pointer;
60
60
  }
61
61
 
62
- .datepicker td {
62
+ .datepicker td{
63
63
  text-align: center;
64
64
  width: 20px;
65
65
  height: 20px;
@@ -71,7 +71,7 @@ $calendar-font-size: $global-font-size * .9;
71
71
  }
72
72
 
73
73
  .datepicker td.active.day,
74
- .datepicker td.active.year {
74
+ .datepicker td.active.year{
75
75
  background: $calendar-active-color;
76
76
  }
77
77
 
@@ -82,31 +82,31 @@ $calendar-font-size: $global-font-size * .9;
82
82
  .datepicker .month:hover,
83
83
  .datepicker .year:hover{
84
84
  background-color: $calendar-bg-hover;
85
+
85
86
  &.active{
86
87
  background: $calendar-active-color;
87
88
  }
88
89
  }
89
90
 
90
-
91
91
  .datepicker td.new,
92
- .datepicker td.old {
92
+ .datepicker td.old{
93
93
  color: $calendar-color-old;
94
94
  }
95
95
 
96
- .datepicker td span.active {
96
+ .datepicker td span.active{
97
97
  background: $calendar-active-color;
98
98
  }
99
99
 
100
- .datepicker td.day.disabled {
100
+ .datepicker td.day.disabled{
101
101
  color: $calendar-color-disabled;
102
102
  }
103
103
 
104
104
  .datepicker td span.month.disabled,
105
- .datepicker td span.year.disabled {
105
+ .datepicker td span.year.disabled{
106
106
  color: $calendar-color-disabled;
107
107
  }
108
108
 
109
- .datepicker th {
109
+ .datepicker th{
110
110
  text-align: center;
111
111
  width: 20px;
112
112
  height: 20px;
@@ -118,68 +118,68 @@ $calendar-font-size: $global-font-size * .9;
118
118
  }
119
119
 
120
120
  .datepicker th.active.day,
121
- .datepicker th.active.year {
121
+ .datepicker th.active.year{
122
122
  background: $calendar-active-color;
123
123
  }
124
124
 
125
- .datepicker th.date-switch {
125
+ .datepicker th.date-switch{
126
126
  width: 145px;
127
127
  }
128
128
 
129
- .datepicker th span.active {
129
+ .datepicker th span.active{
130
130
  background: $calendar-active-color;
131
131
  }
132
132
 
133
- .datepicker .cw {
133
+ .datepicker .cw{
134
134
  font-size: 10px;
135
135
  width: 12px;
136
136
  padding: 0 2px 0 5px;
137
137
  vertical-align: middle;
138
138
  }
139
139
 
140
- .datepicker.days div.datepicker-days {
140
+ .datepicker.days div.datepicker-days{
141
141
  display: block;
142
142
  }
143
143
 
144
- .datepicker.months div.datepicker-months {
144
+ .datepicker.months div.datepicker-months{
145
145
  display: block;
146
146
  }
147
147
 
148
- .datepicker.years div.datepicker-years {
148
+ .datepicker.years div.datepicker-years{
149
149
  display: block;
150
150
  }
151
151
 
152
- .datepicker thead tr:first-child th {
152
+ .datepicker thead tr:first-child th{
153
153
  cursor: pointer;
154
154
  }
155
155
 
156
- .datepicker thead tr:first-child th.cw {
156
+ .datepicker thead tr:first-child th.cw{
157
157
  cursor: default;
158
158
  background-color: transparent;
159
159
  }
160
160
 
161
- .datepicker tfoot tr:first-child th {
161
+ .datepicker tfoot tr:first-child th{
162
162
  cursor: pointer;
163
163
  }
164
164
 
165
- .datepicker-inline {
165
+ .datepicker-inline{
166
166
  width: 220px;
167
167
  }
168
168
 
169
- .datepicker-rtl {
169
+ .datepicker-rtl{
170
170
  direction: rtl;
171
171
  }
172
172
 
173
- .datepicker-rtl table tr td span {
173
+ .datepicker-rtl table tr td span{
174
174
  float: right;
175
175
  }
176
176
 
177
- .datepicker-dropdown {
177
+ .datepicker-dropdown{
178
178
  top: 0;
179
179
  left: 0;
180
180
  }
181
181
 
182
- .datepicker-dropdown:before {
182
+ .datepicker-dropdown::before{
183
183
  content: '';
184
184
  display: inline-block;
185
185
  border-left: 7px solid transparent;
@@ -191,7 +191,7 @@ $calendar-font-size: $global-font-size * .9;
191
191
  left: 6px;
192
192
  }
193
193
 
194
- .datepicker-dropdown:after {
194
+ .datepicker-dropdown::after{
195
195
  content: '';
196
196
  display: inline-block;
197
197
  border-left: 6px solid transparent;
@@ -204,11 +204,11 @@ $calendar-font-size: $global-font-size * .9;
204
204
 
205
205
  .datepicker > div,
206
206
  .datepicker-dropdown::after,
207
- .datepicker-dropdown::before {
207
+ .datepicker-dropdown::before{
208
208
  display: none;
209
209
  }
210
210
 
211
- .datepicker-close {
211
+ .datepicker-close{
212
212
  position: absolute;
213
213
  top: -30px;
214
214
  right: 0;
@@ -219,6 +219,6 @@ $calendar-font-size: $global-font-size * .9;
219
219
  }
220
220
 
221
221
  .table-striped .datepicker table tr td,
222
- .table-striped .datepicker table tr th {
222
+ .table-striped .datepicker table tr th{
223
223
  background-color: transparent;
224
224
  }