promethee 4.1.5 → 4.1.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/promethee-edit/_move.sass +4 -2
  3. data/app/assets/stylesheets/promethee.sass +17 -8
  4. data/app/views/promethee/_localize.html.erb +9 -1
  5. data/app/views/promethee/components/aside/_edit.inspect.html.erb +3 -3
  6. data/app/views/promethee/components/aside/_localize.html.erb +2 -2
  7. data/app/views/promethee/components/aside/_show.html.erb +2 -1
  8. data/app/views/promethee/components/blockquote/_localize.html.erb +2 -2
  9. data/app/views/promethee/components/blockquote/_show.html.erb +2 -1
  10. data/app/views/promethee/components/collection/_edit.inspect.html.erb +4 -4
  11. data/app/views/promethee/components/collection/_show.html.erb +2 -1
  12. data/app/views/promethee/components/collection_item/_edit.inspect.html.erb +2 -2
  13. data/app/views/promethee/components/collection_item/_localize.html.erb +2 -2
  14. data/app/views/promethee/components/collection_item/_show.html.erb +5 -3
  15. data/app/views/promethee/components/column/_show.html.erb +2 -1
  16. data/app/views/promethee/components/cover/_localize.html.erb +4 -4
  17. data/app/views/promethee/components/cover/_show.html.erb +3 -1
  18. data/app/views/promethee/components/faq/_show.html.erb +2 -1
  19. data/app/views/promethee/components/faq_item/_localize.html.erb +1 -1
  20. data/app/views/promethee/components/faq_item/_show.html.erb +2 -1
  21. data/app/views/promethee/components/image/_localize.html.erb +3 -3
  22. data/app/views/promethee/components/image/_show.html.erb +2 -1
  23. data/app/views/promethee/components/page/_localize.html.erb +1 -1
  24. data/app/views/promethee/components/page/_show.html.erb +2 -1
  25. data/app/views/promethee/components/row/_show.html.erb +1 -0
  26. data/app/views/promethee/components/slider/_show.html.erb +3 -1
  27. data/app/views/promethee/components/slider_item/_localize.html.erb +2 -2
  28. data/app/views/promethee/components/slider_item/_show.html.erb +5 -2
  29. data/app/views/promethee/components/table/_show.html.erb +2 -1
  30. data/app/views/promethee/components/table_cell/_localize.html.erb +8 -10
  31. data/app/views/promethee/components/text/_localize.html.erb +1 -1
  32. data/app/views/promethee/components/text/_show.html.erb +2 -1
  33. data/app/views/promethee/components/video/_localize.html.erb +1 -1
  34. data/app/views/promethee/components/video/_show.html.erb +2 -1
  35. data/app/views/promethee/edit/_radiobuttons.html.erb +1 -1
  36. data/app/views/promethee/show/_image.srcset.html.erb +1 -1
  37. data/lib/promethee/rails/helper.rb +5 -1
  38. data/lib/promethee/rails/version.rb +1 -1
  39. metadata +10 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b7d821ae071c08da48380617b5ca9f0f601256a00dd8e27b553ede3475785217
4
- data.tar.gz: c7eeabfdbfdcad6b7ef5fb2e19989e5bdb72c7dc75ec88cadfa90ef98e8315ff
3
+ metadata.gz: 0beecf6dd37d65be3957b1610ebc4c938388e787b8e8c6991c0a5d467ffd665b
4
+ data.tar.gz: b897dd103018126be4ef58c662f59acf90ff43302db2c3d35ffa8627dcf25670
5
5
  SHA512:
6
- metadata.gz: d4562917821c9211f589d2a6dcd457e1af5451b8ccd1e00daf087f88464720e97e2b3ff35c1eb4f6b0b25150f256040dc739ef3f2260ad4f819df4c7f183bba8
7
- data.tar.gz: 0a35e27bb871f285a213bae214f7c177e36028c3a86e94f8805f17aea4fba2104f33f9c6a9327a3f2e86253878a793c6ee8e17f9562840c51d206e4253bb1557
6
+ metadata.gz: 9bb4b71ab5b06e25c62ae3ed09147f909bdf6cd65d6869242e55b9a05c723d75289958f4e84ddf89b0fc6886215aed0730219e5e4f7688e773ad63d330873955
7
+ data.tar.gz: 8ec5b9f95b687ec5d658df2260e896c30ef09fb7a962ec7ecf694e4762a16e5afd9cc86df57de4e8c82a7008bdefe6b82a3aae47b990d3fe2978481bae3a6a50
@@ -6,10 +6,12 @@
6
6
  line-height: 100%
7
7
  &__inner
8
8
  border: 1px solid #CCCCCC
9
- min-height: 50px
9
+ display: flex
10
+ flex-direction: column
11
+ justify-content: center
12
+ min-height: 70px
10
13
  position: relative
11
14
  p.text-empty
12
- line-height: 50px
13
15
  margin-bottom: 0
14
16
  &--selected
15
17
  > .promethee-edit__component__inner
@@ -164,20 +164,26 @@ $black: #000000 !default
164
164
  // component direct in root
165
165
  &__page > &__blockquote,
166
166
  &__page > &__cover
167
- .promethee__component__content
168
- @extend .col-md-8
169
- @extend .offset-md-2 !optional
170
- @extend .col-md-offset-2 !optional
167
+ .promethee__component
168
+ &__row
169
+ @extend .row
170
+ &__content
171
+ @extend .col-md-8
172
+ @extend .offset-md-2 !optional
173
+ @extend .col-md-offset-2 !optional
171
174
 
172
175
  &__page > &__aside,
173
176
  &__page > &__faq,
174
177
  &__page > &__image,
175
178
  &__page > &__text,
176
179
  &__page > &__video
177
- .promethee__component__content
178
- @extend .col-md-10
179
- @extend .offset-md-1 !optional
180
- @extend .col-md-offset-1 !optional
180
+ .promethee__component
181
+ &__row
182
+ @extend .row
183
+ &__content
184
+ @extend .col-md-10
185
+ @extend .offset-md-1 !optional
186
+ @extend .col-md-offset-1 !optional
181
187
 
182
188
 
183
189
  @media screen and (max-width: 767.98px)
@@ -187,6 +193,9 @@ $black: #000000 !default
187
193
  &__page > &__video
188
194
  padding-left: 0
189
195
  padding-right: 0
196
+ .promethee__component__row
197
+ margin-left: 0
198
+ margin-right: 0
190
199
  .promethee__component__content
191
200
  padding-left: 0
192
201
  padding-right: 0
@@ -53,11 +53,17 @@ promethee_masters_multiple = Promethee::Data::MastersMultiple.new master_data, o
53
53
  $scope.data = <%= promethee_data.to_json.html_safe %>;
54
54
  $scope.masters = mastersMultiple;
55
55
  $scope.masters.set(<%= promethee_masters_multiple.to_json.html_safe %>);
56
+
56
57
  $scope.$watch('data', function(new_val, old_val) {
57
58
  if (old_val != new_val) {
58
59
  window.warnBeforeUnload.lock();
59
60
  }
60
61
  }, true);
62
+
63
+ $scope.freezeData = function (data) {
64
+ return JSON.parse(JSON.stringify(data));
65
+ };
66
+
61
67
  $scope.copyTranslations = function(event) {
62
68
  event.preventDefault();
63
69
  if (confirm('Warning: this will overwrite every translations!')) {
@@ -97,7 +103,9 @@ promethee_masters_multiple = Promethee::Data::MastersMultiple.new master_data, o
97
103
  ng-controller="PrometheeLocalizerController as prometheeLocalizerController">
98
104
 
99
105
  <script type="text/ng-template" id="promethee/localize/component">
100
- <span class="hidden d-none">{{ master = masters.masterForComponent(component) }}</span>
106
+ <span class="hidden d-none" ng-init="frozen_component = freezeData(component)">
107
+ {{ master = masters.masterForComponent(component) }}
108
+ </span>
101
109
  <ng-include src="'promethee/components/' + component.type + '/localize'"></ng-include>
102
110
  </script>
103
111
 
@@ -17,9 +17,9 @@
17
17
  <div class="form-group">
18
18
  <label class="label-control">Button label position</label>
19
19
  <div>
20
- <label class="radio-inline"> <input ng-model="promethee.inspected.attributes.open_label_position.value" type="radio" value="left" />Left </label>
21
- <label class="radio-inline"> <input ng-model="promethee.inspected.attributes.open_label_position.value" type="radio" value="center" />Center </label>
22
- <label class="radio-inline"> <input ng-model="promethee.inspected.attributes.open_label_position.value" type="radio" value="right" />Right </label>
20
+ <label class="radio-inline form-check form-check-inline"> <input ng-model="promethee.inspected.attributes.open_label_position.value" type="radio" value="left" class="form-check-input" />Left </label>
21
+ <label class="radio-inline form-check form-check-inline"> <input ng-model="promethee.inspected.attributes.open_label_position.value" type="radio" value="center" class="form-check-input" />Center </label>
22
+ <label class="radio-inline form-check form-check-inline"> <input ng-model="promethee.inspected.attributes.open_label_position.value" type="radio" value="right" class="form-check-input" />Right </label>
23
23
  </div>
24
24
  </div>
25
25
  </script>
@@ -14,7 +14,7 @@
14
14
  </div>
15
15
  </div>
16
16
 
17
- <div class="row" ng-show="master.attributes.collapsed_content.value">
17
+ <div class="row" ng-show="master.attributes.collapsed_content.value || frozen_component.attributes.collapsed_content.value">
18
18
  <div class="col-md-6">
19
19
  <b>Aside collapsed content</b>
20
20
  <div ng-bind-html="master.attributes.collapsed_content.value | htmlSafe"></div>
@@ -27,7 +27,7 @@
27
27
  </div>
28
28
  </div>
29
29
 
30
- <div class="row" ng-show="master.attributes.collapsed_content.value">
30
+ <div class="row" ng-show="master.attributes.open_label.value || frozen_component.attributes.open_label.value">
31
31
  <div class="col-md-6">
32
32
  <b>Button label</b>
33
33
  <div ng-bind-html="master.attributes.open_label.value | htmlSafe"></div>
@@ -5,7 +5,8 @@
5
5
  open_label_position = component[:attributes].dig(:open_label_position, :value)&.to_s
6
6
  %>
7
7
 
8
- <aside class="<%= promethee_class_for component %> aside">
8
+ <aside class="<%= promethee_class_for component %> aside"
9
+ id="<%= promethee_id_for component %>">
9
10
  <div class="promethee__component__row">
10
11
  <div class="promethee__component__content">
11
12
  <div class="aside__content">
@@ -1,5 +1,5 @@
1
1
  <script type="text/ng-template" id="promethee/components/blockquote/localize">
2
- <div ng-show="master.attributes.body.value">
2
+ <div ng-show="master.attributes.body.value || frozen_component.attributes.body.value">
3
3
  <hr>
4
4
  <div class="row">
5
5
  <div class="col-md-6">
@@ -15,7 +15,7 @@
15
15
  </div>
16
16
  </div>
17
17
 
18
- <div class="row" ng-show="master.attributes.author.value">
18
+ <div class="row" ng-show="master.attributes.author.value || frozen_component.attributes.author.value">
19
19
  <div class="col-md-6">
20
20
  <b>Author</b>
21
21
  <p>{{master.attributes.author.value}}</p>
@@ -3,7 +3,8 @@
3
3
  author = component[:attributes].dig(:author, :value)&.to_s
4
4
  %>
5
5
 
6
- <div class="<%= promethee_class_for(component) %>">
6
+ <div class="<%= promethee_class_for(component) %>"
7
+ id="<%= promethee_id_for component %>">
7
8
  <div class="promethee__component__row">
8
9
  <div class="promethee__component__content">
9
10
  <blockquote class="blockquote">
@@ -3,16 +3,16 @@
3
3
  <label class="label-control">Items per line (on desktop):</label>
4
4
  <div class="row">
5
5
  <div class="col-xs-2 col-2">
6
- <input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="2"> 2
6
+ <label class="radio-inline form-check form-check-inline"><input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="2" class="form-check-input">2</label>
7
7
  </div>
8
8
  <div class="col-xs-2 col-2">
9
- <input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="3"> 3
9
+ <label class="radio-inline form-check form-check-inline"><input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="3" class="form-check-input">3</label>
10
10
  </div>
11
11
  <div class="col-xs-2 col-2">
12
- <input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="4"> 4
12
+ <label class="radio-inline form-check form-check-inline"><input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="4" class="form-check-input">4</label>
13
13
  </div>
14
14
  <div class="col-xs-2 col-2">
15
- <input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="6"> 6
15
+ <label class="radio-inline form-check form-check-inline"><input ng-model="promethee.inspected.attributes.items_per_line.value" type="radio" ng-value="6" class="form-check-input">6</label>
16
16
  </div>
17
17
  </div>
18
18
  </div>
@@ -12,7 +12,8 @@
12
12
  end
13
13
  %>
14
14
 
15
- <div class="row <%= promethee_class_for component %>">
15
+ <div class="row <%= promethee_class_for component %>"
16
+ id="<%= promethee_id_for component %>">
16
17
  <% component[:children].each.with_index do |child, n| %>
17
18
  <div class="<%= col_classes %>">
18
19
  <%= render 'promethee/show/component', component: child %>
@@ -2,8 +2,8 @@
2
2
  <div class="form-group">
3
3
  <label class="label-control">Media type</label>
4
4
  <div>
5
- <label class="radio-inline"> <input ng-model="promethee.inspected.attributes.media_type.value" type="radio" value="image" />Image </label>
6
- <label class="radio-inline"> <input ng-model="promethee.inspected.attributes.media_type.value" type="radio" value="video" />Video </label>
5
+ <label class="radio-inline form-check form-check-inline"> <input ng-model="promethee.inspected.attributes.media_type.value" type="radio" value="image" class="form-check-input" />Image </label>
6
+ <label class="radio-inline form-check form-check-inline"> <input ng-model="promethee.inspected.attributes.media_type.value" type="radio" value="video" class="form-check-input" />Video </label>
7
7
  </div>
8
8
  </div>
9
9
 
@@ -1,8 +1,8 @@
1
1
  <script type="text/ng-template" id="promethee/components/collection_item/localize">
2
- <div ng-show="master.attributes.caption.value !== '' || master.attributes.media_type.value == 'video'">
2
+ <div ng-show="master.attributes.caption.value || frozen_component.attributes.caption.value || master.attributes.media_type.value == 'video'">
3
3
  <hr>
4
4
 
5
- <div class="row" ng-show="master.attributes.caption.value !== ''">
5
+ <div class="row" ng-show="master.attributes.caption.value || frozen_component.attributes.caption.value">
6
6
  <div class="col-md-6">
7
7
  <b>Collection Item Caption</b>
8
8
  <div class="promethee-edit__wrapper" ng-bind-html="master.attributes.caption.value | htmlSafe"></div>
@@ -17,8 +17,8 @@ when 'video'
17
17
  end
18
18
  end
19
19
  %>
20
- <div class="collection-item__content">
21
-
20
+ <div class="<%= promethee_class_for component %> collection-item__content"
21
+ id="<%= promethee_id_for component %>">
22
22
  <% if iframe_src.present? %>
23
23
  <div class="embed-responsive embed-responsive-16by9">
24
24
  <iframe frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="allowfullscreen" src="<%= iframe_src %>"></iframe>
@@ -26,5 +26,7 @@ end
26
26
  <% elsif image_blob.present? %>
27
27
  <%= render 'promethee/show/image.srcset', blob: image_blob, alt: '', caption: caption %>
28
28
  <% end %>
29
- <%= caption %>
29
+ <div class="collection-item__content__caption">
30
+ <%= caption %>
31
+ </div>
30
32
  </div>
@@ -41,6 +41,7 @@ if component[:attributes].dig(:mobile, :value, :enabled, :value)
41
41
  classes += " col-xs-#{size} col-xs-offset-#{offset}" # BS3, does nothing for BS4
42
42
  end
43
43
  %>
44
- <div class="<%= classes %> <%= promethee_class_for component %>">
44
+ <div class="<%= classes %> <%= promethee_class_for component %>"
45
+ id="<%= promethee_id_for component %>">
45
46
  <%= render 'promethee/show/components', components: component[:children] %>
46
47
  </div>
@@ -1,5 +1,5 @@
1
1
  <script type="text/ng-template" id="promethee/components/cover/localize">
2
- <div ng-show="master.attributes.surtitle.value || master.attributes.title.value || master.attributes.subtitle.value">
2
+ <div ng-show="master.attributes.surtitle.value || frozen_component.attributes.surtitle.value || master.attributes.title.value || frozen_component.attributes.title.value || master.attributes.subtitle.value || frozen_component.attributes.subtitle.value">
3
3
  <hr>
4
4
 
5
5
  <div class="row">
@@ -8,7 +8,7 @@
8
8
  </div>
9
9
  </div>
10
10
 
11
- <div class="row" ng-show="master.attributes.surtitle.value">
11
+ <div class="row" ng-show="master.attributes.surtitle.value || frozen_component.attributes.surtitle.value">
12
12
  <div class="col-md-6">
13
13
  <b>Surtitle</b>
14
14
  <p>{{master.attributes.surtitle.value}}</p>
@@ -21,7 +21,7 @@
21
21
  </div>
22
22
  </div>
23
23
 
24
- <div class="row" ng-show="master.attributes.title.value">
24
+ <div class="row" ng-show="master.attributes.title.value || frozen_component.attributes.title.value">
25
25
  <div class="col-md-6">
26
26
  <b>Title</b>
27
27
  <p>{{master.attributes.title.value}}</p>
@@ -34,7 +34,7 @@
34
34
  </div>
35
35
  </div>
36
36
 
37
- <div class="row" ng-show="master.attributes.subtitle.value">
37
+ <div class="row" ng-show="master.attributes.subtitle.value || frozen_component.attributes.subtitle.value">
38
38
  <div class="col-md-6">
39
39
  <b>Subtitle</b>
40
40
  <p>{{master.attributes.subtitle.value}}</p>
@@ -5,7 +5,9 @@ surtitle = component[:attributes].dig(:surtitle, :value)&.to_s
5
5
  title = component[:attributes].dig(:title, :value)&.to_s
6
6
  subtitle = component[:attributes].dig(:subtitle, :value)&.to_s
7
7
  %>
8
- <div id="component-<%= component[:id] %>" class="<%= promethee_class_for(component) %>" style="background-image: url(<%= url_for(blob.variant(resize: '1920>', quality: 95)) if blob %>)">
8
+ <div class="<%= promethee_class_for(component) %>"
9
+ id="<%= promethee_id_for component %>"
10
+ style="background-image: url(<%= url_for(blob.variant(resize: '1920>', quality: 95)) if blob %>)">
9
11
  <div class="container">
10
12
  <div class="promethee__component__row">
11
13
  <div class="promethee__component__content">
@@ -1,4 +1,5 @@
1
- <div class="<%= promethee_class_for component %>">
1
+ <div class="<%= promethee_class_for component %>"
2
+ id="<%= promethee_id_for component %>">
2
3
  <div class="promethee__component__row">
3
4
  <div class="promethee__component__content">
4
5
  <% component[:children].each do |child| %>
@@ -1,5 +1,5 @@
1
1
  <script type="text/ng-template" id="promethee/components/faq_item/localize">
2
- <div ng-show="master.attributes.title.value">
2
+ <div ng-show="master.attributes.title.value || frozen_component.attributes.title.value">
3
3
  <hr>
4
4
  <div class="row">
5
5
  <div class="col-md-6">
@@ -6,7 +6,8 @@ special_question = component[:attributes].dig(:special_question, :value)
6
6
  image_blob = blob_from_data component[:attributes].dig(:image, :value)
7
7
  %>
8
8
 
9
- <div class="<%= promethee_class_for component %> <%= 'promethee__component__faq_item--special' if special_question %>">
9
+ <div class="<%= promethee_class_for component %> <%= 'promethee__component__faq_item--special' if special_question %>"
10
+ id="<%= promethee_id_for component %>">
10
11
  <h4 data-toggle="collapse"
11
12
  data-target="#collapse-faq-<%= component[:id] %>"
12
13
  aria-expanded="false"
@@ -1,5 +1,5 @@
1
1
  <script type="text/ng-template" id="promethee/components/image/localize">
2
- <div ng-show="master.attributes.alt.value || master.attributes.caption.value">
2
+ <div ng-show="master.attributes.alt.value || frozen_component.attributes.alt.value || master.attributes.caption.value || frozen_component.attributes.caption.value">
3
3
  <hr>
4
4
 
5
5
  <div class="row">
@@ -11,7 +11,7 @@
11
11
  </div>
12
12
  </div>
13
13
 
14
- <div class="row" ng-show="master.attributes.caption.value">
14
+ <div class="row" ng-show="master.attributes.caption.value || frozen_component.attributes.caption.value">
15
15
  <div class="col-md-6">
16
16
  <b>Caption</b>
17
17
  <p>{{master.attributes.caption.value}}</p>
@@ -25,7 +25,7 @@
25
25
  </div>
26
26
  </div>
27
27
 
28
- <div class="row" ng-show="master.attributes.alt.value">
28
+ <div class="row" ng-show="master.attributes.alt.value || frozen_component.attributes.alt.value">
29
29
  <div class="col-md-6">
30
30
  <b>Alt</b>
31
31
  <p>{{master.attributes.alt.value}}</p>
@@ -4,7 +4,8 @@ blob = blob_from_data component[:attributes].dig(:image, :value)
4
4
  alt = component[:attributes].dig(:alt, :value)&.to_s
5
5
  caption = component[:attributes].dig(:caption, :value)&.to_s
6
6
  %>
7
- <figure class="<%= promethee_class_for component %>">
7
+ <figure class="<%= promethee_class_for component %>"
8
+ id="<%= promethee_id_for component %>">
8
9
  <div class="promethee__component__row">
9
10
  <div class="promethee__component__content">
10
11
  <%= render 'promethee/show/image.srcset', blob: blob, alt: alt, caption: caption if blob %>
@@ -15,7 +15,7 @@
15
15
  </div>
16
16
  </div>
17
17
 
18
- <div class="row" ng-show="master.attributes.description.value">
18
+ <div class="row" ng-show="master.attributes.description.value || frozen_component.attributes.description.value">
19
19
  <div class="col-md-6">
20
20
  <div>
21
21
  <b>Page description</b>
@@ -11,6 +11,7 @@
11
11
  <script><%= javascripts %></script>
12
12
  <% end %>
13
13
 
14
- <div class="<%= promethee_class_for component %>">
14
+ <div class="<%= promethee_class_for component %>"
15
+ id="<%= promethee_id_for component %>">
15
16
  <%= render 'promethee/show/components', components: component[:children] %>
16
17
  </div>
@@ -22,6 +22,7 @@ end
22
22
  %>
23
23
 
24
24
  <div class="row <%= promethee_class_for component %><%= ' promethee__component__row--background' if has_background %>"
25
+ id="<%= promethee_id_for component %>"
25
26
  style="background-color: <%= background_color %>; <%= background_images.count > 0 ? "background-repeat: no-repeat; background-image: #{background_images.join(', ')}; background-position: #{background_positions.join(', ')}; background-size: #{background_sizes.join(', ')};" : '' %>">
26
27
  <%= render 'promethee/show/components', components: component[:children] %>
27
28
  </div>
@@ -1,4 +1,6 @@
1
- <div id="slider-<%= component[:id] %>" class="carousel slide <%= promethee_class_for component %>" data-ride="carousel">
1
+ <div class="carousel slide <%= promethee_class_for component %>"
2
+ id="<%= promethee_id_for component %>"
3
+ data-ride="carousel">
2
4
  <div class="carousel-inner">
3
5
  <% component[:children].each.with_index do |item, n| %>
4
6
  <div class="carousel-item item<%= ' active' if n.zero? %>">
@@ -1,8 +1,8 @@
1
1
  <script type="text/ng-template" id="promethee/components/slider_item/localize">
2
- <div ng-show="master.attributes.caption.value !== '' || master.attributes.media_type.value == 'video'">
2
+ <div ng-show="master.attributes.caption.value || frozen_component.attributes.caption.value || master.attributes.media_type.value == 'video'">
3
3
  <hr>
4
4
 
5
- <div class="row" ng-show="master.attributes.caption.value !== ''">
5
+ <div class="row" ng-show="master.attributes.caption.value || frozen_component.attributes.caption.value">
6
6
  <div class="col-md-6">
7
7
  <b>Slider Item Caption</b>
8
8
  <div class="promethee-edit__wrapper" ng-bind-html="master.attributes.caption.value | htmlSafe"></div>
@@ -17,7 +17,8 @@ when 'video'
17
17
  end
18
18
  end
19
19
  %>
20
- <div class="carousel-item__content">
20
+ <div class="<%= promethee_class_for component %> carousel-item__content"
21
+ id="<%= promethee_id_for component %>">
21
22
  <% if iframe_src.present? %>
22
23
  <div class="embed-responsive embed-responsive-16by9">
23
24
  <iframe frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="allowfullscreen" src="<%= iframe_src %>"></iframe>
@@ -25,5 +26,7 @@ end
25
26
  <% elsif image_blob.present? %>
26
27
  <%= render 'promethee/show/image.srcset', blob: image_blob, alt: '', caption: caption %>
27
28
  <% end %>
28
- <%= caption %>
29
+ <div class="carousel-item__content__caption">
30
+ <%= caption %>
31
+ </div>
29
32
  </div>
@@ -12,7 +12,8 @@
12
12
  headerRow = rows.shift
13
13
  %>
14
14
 
15
- <div id="component-<%= component[:id] %>" class="<%= promethee_class_for(component) %>">
15
+ <div class="<%= promethee_class_for(component) %>"
16
+ id="<%= promethee_id_for component %>">
16
17
  <% unless headerRow.nil? %>
17
18
  <div class="table-responsive">
18
19
  <table class="table">
@@ -1,14 +1,12 @@
1
1
  <script type="text/ng-template" id="promethee/components/table_cell/localize">
2
- <div ng-show="master.attributes.text.value !== ''">
3
- <div class="row mt-2" ng-show="master.attributes.text.value !== ''">
4
- <div class="col-md-6">
5
- <b>Text</b>
6
- <p>{{ master.attributes.text.value }}</p>
7
- </div>
8
- <div class="col-md-6">
9
- <b>Text</b>
10
- <input class="form-control" ng-model="component.attributes.text.value" type="text">
11
- </div>
2
+ <div class="row mt-2" ng-show="master.attributes.text.value || frozen_component.attributes.text.value">
3
+ <div class="col-md-6">
4
+ <b>Text</b>
5
+ <p>{{ master.attributes.text.value }}</p>
6
+ </div>
7
+ <div class="col-md-6">
8
+ <b>Text</b>
9
+ <input class="form-control" ng-model="component.attributes.text.value" type="text">
12
10
  </div>
13
11
  </div>
14
12
  </script>
@@ -1,5 +1,5 @@
1
1
  <script type="text/ng-template" id="promethee/components/text/localize">
2
- <div ng-show="master.attributes.body.value">
2
+ <div ng-show="master.attributes.body.value || frozen_component.attributes.body.value">
3
3
  <hr>
4
4
  <div class="row">
5
5
  <div class="col-md-6">
@@ -1,7 +1,8 @@
1
1
  <%
2
2
  body = component[:attributes].dig(:body, :value)&.to_s&.html_safe
3
3
  %>
4
- <div class="<%= promethee_class_for component %>">
4
+ <div class="<%= promethee_class_for component %>"
5
+ id="<%= promethee_id_for component %>">
5
6
  <div class="promethee__component__row">
6
7
  <div class="promethee__component__content">
7
8
  <%= body %>
@@ -1,5 +1,5 @@
1
1
  <script type="text/ng-template" id="promethee/components/video/localize">
2
- <div ng-show="master.attributes.url.value !== ''">
2
+ <div ng-show="master.attributes.url.value || frozen_component.attributes.url.value">
3
3
  <hr>
4
4
  <div class="row">
5
5
  <div class="col-md-6">
@@ -14,7 +14,8 @@ else
14
14
  iframe_src = url
15
15
  end
16
16
  %>
17
- <div class="<%= promethee_class_for component %>">
17
+ <div class="<%= promethee_class_for component %>"
18
+ id="<%= promethee_id_for component %>">
18
19
  <div class="promethee__component__row">
19
20
  <div class="promethee__component__content">
20
21
  <div class="embed-responsive embed-responsive-16by9">
@@ -2,7 +2,7 @@
2
2
  <label class="label-control"><%= label %></label>
3
3
  <div style="margin-left: 2px">
4
4
  <% values.each do |value| %>
5
- <label class="radio-inline"> <input ng-model="<%= model %>" type="radio" value="<%= value %>" /><%= value.humanize %> </label>
5
+ <label class="radio-inline form-check form-check-inline"> <input ng-model="<%= model %>" type="radio" value="<%= value %>" class="form-check-input" /><%= value.humanize %> </label>
6
6
  <% end %>
7
7
  </div>
8
8
  </div>
@@ -3,7 +3,7 @@
3
3
  <% image_width = blob.metadata.has_key?(:width) ? blob.metadata[:width] : ActiveStorage::Analyzer::ImageAnalyzer.new(blob).metadata[:width] %>
4
4
 
5
5
  <% if image_zoomable %>
6
- <a data-fancybox title="<%= strip_tags(caption) %>" href="<%= fullsize_url %>">
6
+ <a data-fancybox="gallery" title="<%= strip_tags(caption) %>" href="<%= fullsize_url %>">
7
7
  <% end %>
8
8
  <img src="<%= fullsize_url %>"
9
9
  srcset="
@@ -3,7 +3,7 @@ module Promethee::Rails::Helper
3
3
  render partial: 'promethee/show', locals: { master_data: data, localization_data: options[:l] }
4
4
  end
5
5
 
6
- def promethee_class_for component, *modifiers
6
+ def promethee_class_for(component, *modifiers)
7
7
  base = "promethee__component"
8
8
  component_base = "#{base}__#{component[:type]}"
9
9
 
@@ -14,6 +14,10 @@ module Promethee::Rails::Helper
14
14
  ].flatten.select(&:present?).join ' '
15
15
  end
16
16
 
17
+ def promethee_id_for(component)
18
+ "promethee-component-#{component[:id]}"
19
+ end
20
+
17
21
  def promethee_component_partials
18
22
  promethee_partials_for 'components/*/_edit.*.html.erb'
19
23
  end
@@ -1,5 +1,5 @@
1
1
  module Promethee
2
2
  module Rails
3
- VERSION = '4.1.5'
3
+ VERSION = '4.1.10'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: promethee
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.1.5
4
+ version: 4.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sébastien Gaya
@@ -14,22 +14,28 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2020-04-03 00:00:00.000000000 Z
17
+ date: 2020-09-02 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: rails
21
21
  requirement: !ruby/object:Gem::Requirement
22
22
  requirements:
23
- - - "~>"
23
+ - - ">="
24
24
  - !ruby/object:Gem::Version
25
25
  version: 5.2.0
26
+ - - "<"
27
+ - !ruby/object:Gem::Version
28
+ version: '6.1'
26
29
  type: :runtime
27
30
  prerelease: false
28
31
  version_requirements: !ruby/object:Gem::Requirement
29
32
  requirements:
30
- - - "~>"
33
+ - - ">="
31
34
  - !ruby/object:Gem::Version
32
35
  version: 5.2.0
36
+ - - "<"
37
+ - !ruby/object:Gem::Version
38
+ version: '6.1'
33
39
  - !ruby/object:Gem::Dependency
34
40
  name: angularjs-rails
35
41
  requirement: !ruby/object:Gem::Requirement