Skip to content

Commit c67c803

Browse files
committed
Allow fieldset legends to adopt headline styles + headline margin reset
1 parent 6c70347 commit c67c803

File tree

3 files changed

+58
-12
lines changed

3 files changed

+58
-12
lines changed
Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,23 @@
11
<?php
2-
$gutterBC = (str_contains($this->class,'gtr-2')?' gtr-2':'').(str_contains($this->class,'gtr-0')?' gtr-0':'');
2+
$gutterBC = (str_contains($this->class,'gtr-2')?' gtr-2':'').(str_contains($this->class,'gtr-0')?' gtr-0':'');
3+
4+
$sm = $this->styleManager;
5+
$outerClasses = $sm?->prepare('cLayout')->exclude(['overflow'])->format(' %s');
6+
$insideClasses = $sm?->prepare('cLayout',['overflow'])->format(' %s') .
7+
$sm?->prepare('cSpacing')->format(' %s') .
8+
$sm?->prepare('cPadding')->format(' %s') .
9+
$sm?->prepare('cBackground')->format(' %s');
10+
$gridClasses = $sm?->prepare('cGridAlignment')->format(' %s').
11+
$sm?->prepare('cGridGutter')->format(' %s');
12+
13+
$legendClasses = $sm?->prepare('gHeadline')->format(' %s') .
14+
$sm?->prepare('eHeadline',['hlStyle'])->format(' %s')
315

4-
$sm = $this->styleManager;
5-
$outerClasses = $sm?->prepare('cLayout')->exclude(['overflow'])->format(' %s');
6-
$insideClasses = $sm?->prepare('cLayout',['overflow'])->format(' %s') .
7-
$sm?->prepare('cSpacing')->format(' %s') .
8-
$sm?->prepare('cPadding')->format(' %s') .
9-
$sm?->prepare('cBackground')->format(' %s');
10-
$gridClasses = $sm?->prepare('cGridAlignment')->format(' %s').
11-
$sm?->prepare('cGridGutter')->format(' %s');
1216
?>
1317
<fieldset<?php if ($this->class): ?> class="<?= $this->class ?>"<?php endif; ?>>
1418
<div class="inside<?= $insideClasses ?>">
1519
<div class="grid gtr-f<?= $gutterBC ?><?= $gridClasses ?>">
1620
<div class="inside">
1721
<?php if ($this->label): ?>
18-
<legend><?= $this->label ?></legend>
22+
<legend<?= strlen(trim($legendClasses)) !== 0 ? (' class="' . trim($legendClasses) .'"') : ''?>><?= $this->label ?></legend>
1923
<?php endif; ?>

contao/templates/style-manager-core.xml

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,13 @@
1414
<field title="alias">spacingGlobal</field>
1515
<field title="title">Global Spacing &amp;#40;activates the responsive behavior&amp;#41;</field>
1616
<field title="description">Defines dynamic spacing of the headings.</field>
17-
<field title="cssClasses">a:3:{i:0;a:2:{s:3:"key";s:12:"hl-mb-auto-1";s:5:"value";s:5:"Small";}i:1;a:2:{s:3:"key";s:12:"hl-mb-auto-2";s:5:"value";s:6:"Medium";}i:2;a:2:{s:3:"key";s:12:"hl-mb-auto-3";s:5:"value";s:5:"Large";}}</field>
17+
<field title="cssClasses">a:4:{i:0;a:2:{s:3:"key";s:12:"hl-mb-auto-1";s:5:"value";s:5:"Small";}i:1;a:2:{s:3:"key";s:12:"hl-mb-auto-2";s:5:"value";s:6:"Medium";}i:2;a:2:{s:3:"key";s:12:"hl-mb-auto-3";s:5:"value";s:5:"Large";}i:3;a:2:{s:3:"key";s:7:"hl-mb-0";s:5:"value";s:5:"Reset";}}</field>
1818
<field title="cssClass">long</field>
1919
<field title="chosen">1</field>
2020
<field title="blankOption">1</field>
2121
<field title="passToTemplate">1</field>
22+
<field title="extendFormFields">1</field>
23+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
2224
<field title="extendContentElement">1</field>
2325
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
2426
<field title="extendModule">1</field>
@@ -35,6 +37,8 @@
3537
<field title="chosen">1</field>
3638
<field title="blankOption">1</field>
3739
<field title="passToTemplate">1</field>
40+
<field title="extendFormFields">1</field>
41+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
3842
<field title="extendContentElement">1</field>
3943
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
4044
<field title="extendModule">1</field>
@@ -50,6 +54,8 @@
5054
<field title="chosen">1</field>
5155
<field title="blankOption">1</field>
5256
<field title="passToTemplate">1</field>
57+
<field title="extendFormFields">1</field>
58+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
5359
<field title="extendContentElement">1</field>
5460
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
5561
<field title="extendModule">1</field>
@@ -65,6 +71,8 @@
6571
<field title="chosen">1</field>
6672
<field title="blankOption">1</field>
6773
<field title="passToTemplate">1</field>
74+
<field title="extendFormFields">1</field>
75+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
6876
<field title="extendContentElement">1</field>
6977
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
7078
<field title="extendModule">1</field>
@@ -80,6 +88,8 @@
8088
<field title="chosen">1</field>
8189
<field title="blankOption">1</field>
8290
<field title="passToTemplate">1</field>
91+
<field title="extendFormFields">1</field>
92+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
8393
<field title="extendContentElement">1</field>
8494
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
8595
<field title="extendModule">1</field>
@@ -95,6 +105,8 @@
95105
<field title="chosen">1</field>
96106
<field title="blankOption">1</field>
97107
<field title="passToTemplate">1</field>
108+
<field title="extendFormFields">1</field>
109+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
98110
<field title="extendContentElement">1</field>
99111
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
100112
<field title="extendModule">1</field>
@@ -110,6 +122,8 @@
110122
<field title="chosen">1</field>
111123
<field title="blankOption">1</field>
112124
<field title="passToTemplate">1</field>
125+
<field title="extendFormFields">1</field>
126+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
113127
<field title="extendContentElement">1</field>
114128
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
115129
<field title="extendModule">1</field>
@@ -126,6 +140,8 @@
126140
<field title="chosen">1</field>
127141
<field title="blankOption">1</field>
128142
<field title="passToTemplate">1</field>
143+
<field title="extendFormFields">1</field>
144+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
129145
<field title="extendContentElement">1</field>
130146
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
131147
<field title="extendModule">1</field>
@@ -141,6 +157,8 @@
141157
<field title="chosen">1</field>
142158
<field title="blankOption">1</field>
143159
<field title="passToTemplate">1</field>
160+
<field title="extendFormFields">1</field>
161+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
144162
<field title="extendContentElement">1</field>
145163
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
146164
<field title="extendModule">1</field>
@@ -156,6 +174,8 @@
156174
<field title="chosen">1</field>
157175
<field title="blankOption">1</field>
158176
<field title="passToTemplate">1</field>
177+
<field title="extendFormFields">1</field>
178+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
159179
<field title="extendContentElement">1</field>
160180
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
161181
<field title="extendModule">1</field>
@@ -171,6 +191,8 @@
171191
<field title="chosen">1</field>
172192
<field title="blankOption">1</field>
173193
<field title="passToTemplate">1</field>
194+
<field title="extendFormFields">1</field>
195+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
174196
<field title="extendContentElement">1</field>
175197
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
176198
<field title="extendModule">1</field>
@@ -186,6 +208,8 @@
186208
<field title="chosen">1</field>
187209
<field title="blankOption">1</field>
188210
<field title="passToTemplate">1</field>
211+
<field title="extendFormFields">1</field>
212+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
189213
<field title="extendContentElement">1</field>
190214
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
191215
<field title="extendModule">1</field>
@@ -201,6 +225,8 @@
201225
<field title="chosen">1</field>
202226
<field title="blankOption">1</field>
203227
<field title="passToTemplate">1</field>
228+
<field title="extendFormFields">1</field>
229+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
204230
<field title="extendContentElement">1</field>
205231
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
206232
<field title="extendModule">1</field>
@@ -217,6 +243,8 @@
217243
<field title="chosen">1</field>
218244
<field title="blankOption">1</field>
219245
<field title="passToTemplate">1</field>
246+
<field title="extendFormFields">1</field>
247+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
220248
<field title="extendContentElement">1</field>
221249
<field title="contentElements">a:22:{i:0;s:8:"headline";i:1;s:4:"text";i:2;s:4:"list";i:3;s:5:"table";i:4;s:4:"code";i:5;s:9:"rsce_text";i:6;s:9:"rsce_icon";i:7;s:19:"rsce_hyperlink_list";i:8;s:19:"rsce_icon_text_list";i:9;s:15:"rsce_image_list";i:10;s:20:"rsce_image_text_list";i:11;s:14:"rsce_text_list";i:12;s:11:"sliderStart";i:13;s:9:"hyperlink";i:14;s:5:"image";i:15;s:7:"gallery";i:16;s:6:"player";i:17;s:7:"youtube";i:18;s:5:"vimeo";i:19;s:8:"download";i:20;s:9:"downloads";i:21;s:8:"comments";}</field>
222250
<field title="extendModule">1</field>
@@ -3083,6 +3111,19 @@
30833111
<field title="groupAlias">Element</field>
30843112
<field title="sorting">4500</field>
30853113
<children>
3114+
<child alias="hlStyle">
3115+
<field title="pid">2050</field>
3116+
<field title="sorting">100</field>
3117+
<field title="alias">hlStyle</field>
3118+
<field title="title">Class</field>
3119+
<field title="description">Here you can select a headline class.</field>
3120+
<field title="cssClasses">a:6:{i:0;a:2:{s:3:"key";s:2:"h1";s:5:"value";s:2:"h1";}i:1;a:2:{s:3:"key";s:2:"h2";s:5:"value";s:2:"h2";}i:2;a:2:{s:3:"key";s:2:"h3";s:5:"value";s:2:"h3";}i:3;a:2:{s:3:"key";s:2:"h4";s:5:"value";s:2:"h4";}i:4;a:2:{s:3:"key";s:2:"h5";s:5:"value";s:2:"h5";}i:5;a:2:{s:3:"key";s:2:"h6";s:5:"value";s:2:"h6";}}</field>
3121+
<field title="chosen">1</field>
3122+
<field title="blankOption">1</field>
3123+
<field title="passToTemplate">1</field>
3124+
<field title="extendFormFields">1</field>
3125+
<field title="formFields">a:1:{i:0;s:13:"fieldsetStart";}</field>
3126+
</child>
30863127
<child alias="hl1Type">
30873128
<field title="pid">2050</field>
30883129
<field title="sorting">100</field>

public/framework/scss/ctm_layout/_headline-spacing.scss

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
}
1818
}
1919

20-
div[class*="hl-mb-"] {
20+
[class*="hl-mb-"] {
2121
margin-bottom: var(--hl-mb,#{$headline-spacing}) !important;
2222
}
2323

@@ -28,6 +28,7 @@ $hl-bps: map-merge((0:0),$breakpoints);
2828
.hl-mb {
2929

3030
@if ($bp == 0) {
31+
&-0 {--hl-mb: 0 }
3132
&-auto {
3233
&-1 {--hl-mb: var(--hl-mb-1)}
3334
&-2 {--hl-mb: var(--hl-mb-2)}

0 commit comments

Comments
 (0)