Änderungen von Dokument Panel Macro

Zuletzt geändert von xwikiadmin am 2025/01/07 12:27

Von Version 6.1
bearbeitet von xwikiadmin
am 2025/01/07 12:27
Änderungskommentar: Install extension [com.xwiki.pro:xwiki-pro-macros-ui/1.25.4]
Auf Version 2.1
bearbeitet von xwikiadmin
am 2022/08/11 17:13
Änderungskommentar: Migrated property [defaultCategories] from class [XWiki.WikiMacroClass]

Zusammenfassung

Details

Seiteneigenschaften
Übergeordnete Seite
... ... @@ -1,1 +1,1 @@
1 -WebHome
1 +xwiki:XWiki.Macros.WebHome
Inhalt
... ... @@ -7,20 +7,16 @@
7 7  
8 8  |= Parameter |= Name |= Default value |= Description
9 9  | title | $services.localization.render('rendering.macro.panel.parameter.title.name') | - | $services.localization.render('rendering.macro.panel.parameter.title.description')
10 -| footer | $services.localization.render('rendering.macro.panel.parameter.footer.name') | - | $services.localization.render('rendering.macro.panel.parameter.footer.description')
11 11  | bgColor | $services.localization.render('rendering.macro.panel.parameter.bgColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.bgColor.description')
12 12  | contentTextColor | $services.localization.render('rendering.macro.panel.parameter.contentTextColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.contentTextColor.description')
13 13  | width | $services.localization.render('rendering.macro.panel.parameter.width.name') | - | $services.localization.render('rendering.macro.panel.parameter.width.description')
14 -| height | $services.localization.render('rendering.macro.panel.parameter.height.name') | - | $services.localization.render('rendering.macro.panel.parameter.height.description')
15 15  | classes | $services.localization.render('rendering.macro.panel.parameter.classes.name') | - | $services.localization.render('rendering.macro.panel.parameter.classes.description')
16 16  | borderColor | $services.localization.render('rendering.macro.panel.parameter.borderColor.name') |white| $services.localization.render('rendering.macro.panel.parameter.borderColor.description')
17 17  | borderStyle | $services.localization.render('rendering.macro.panel.parameter.borderStyle.name') |solid | $services.localization.render('rendering.macro.panel.parameter.borderStyle.description')
18 18  | borderWidth| $services.localization.render('rendering.macro.panel.parameter.borderWidth.name') |1px| $services.localization.render('rendering.macro.panel.parameter.borderWidth.description')
19 -| borderRadius| $services.localization.render('rendering.macro.panel.parameter.borderRadius.name')|8px 8px 0px 0px or 8px 8px 8px 8px if the footer is present| $services.localization.render('rendering.macro.panel.parameter.borderRadius.description')
17 +| borderRadius| $services.localization.render('rendering.macro.panel.parameter.borderRadius.name')|8px 8px 0px 0px| $services.localization.render('rendering.macro.panel.parameter.borderRadius.description')
20 20  | titleBGColor | $services.localization.render('rendering.macro.panel.parameter.titleBGColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.titleBGColor.description')
21 21  | titleColor | $services.localization.render('rendering.macro.panel.parameter.titleColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.titleColor.description')
22 -| footerBGColor | $services.localization.render('rendering.macro.panel.parameter.footerBGColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.footerBGColor.description')
23 -| footerColor | $services.localization.render('rendering.macro.panel.parameter.footerColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.footerColor.description')
24 24  {{/velocity}}
25 25  
26 26  = Examples =
... ... @@ -37,15 +37,15 @@
37 37  Content of the panel
38 38  {{/panel}}
39 39  
40 -== Panel with title, content, footer and colors ==
36 +== Panel with title and colors ==
41 41  
42 -{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" width="50%" footerBGColor="#2a8af7" footerColor="#faafff" title="Title of the panel" footer="Footer of the panel"}}
38 +{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" width="50%" title="Title of the panel"}}
43 43  Content of the panel
44 44  {{/panel}}
45 45  
46 46  == Panel with title and colors and border ==
47 47  
48 -{{panel borderColor="#2a8af7" bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}
44 +{{panel bgColor="#dbf4ff" borderColor="#2a8af7" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}
49 49  Content of the panel
50 50  {{/panel}}
51 51  
... ... @@ -55,11 +55,11 @@
55 55  Content of the panel
56 56  {{/panel}}
57 57  
58 -{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" classes="col-sm-6" title="Title of the panel"}}
54 +{{panel classes="col-sm-6" bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}
59 59  Content of the panel
60 60  {{/panel}}
61 61  
62 -{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" classes="col-sm-6" title="Title of the panel"}}
58 +{{panel classes="col-sm-6" bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}
63 63  Content of the panel
64 64  {{/panel}}
65 65  
XWiki.StyleSheetExtension[0]
Code
... ... @@ -1,4 +2,3 @@
1 -.macro-panel-footer,
2 2  .macro-panel-title,
3 3  .macro-panel-content {
4 4   padding: 10px 10px 1px 10px;
... ... @@ -5,36 +5,5 @@
5 5  }
6 6  .macro-border {
7 7   margin-bottom: 10px;
8 - overflow: auto;
7 + overflow: hidden;
9 9  }
10 -
11 -/*default border style*/
12 -.macro-panel.macro-border, .macro-panel > .macro-border {
13 - display: grid;
14 - border-color: transparent;
15 - border-width: 1px;
16 - border-style: solid;
17 - border-radius: 8px 8px 0px 0px;
18 -}
19 -
20 -.macro-panel.macro-border:has(.macro-panel-footer)
21 -{
22 - border-radius: 8px 8px 8px 8px;
23 -}
24 -
25 -/* style for the excerpt-include macro */
26 -.macro-excerpt-include.macro-panel > .macro-border {
27 - border: 1px solid;
28 -}
29 -
30 -.macro-excerpt-include.macro-panel > .macro-border > .macro-panel-title {
31 - border-bottom: 1px solid;
32 -}
33 -
34 -.macro-excerpt-include.macro-panel > .macro-border > .macro-panel-content {
35 - padding-bottom: 1ex;
36 -}
37 -
38 -.macro-excerpt-include.macro-panel > .macro-border > .macro-panel-footer {
39 - padding-bottom: 1ex;
40 -}
XWiki.WikiMacroClass[0]
Makro-Code
... ... @@ -1,106 +1,83 @@
1 -{{velocity output="false"}}
2 -#macro (executeMacro)
3 - #set ($discard = $xwiki.ssx.use('XWiki.Macros.Panel'))
4 - #set ($panelTitle = "$!xcontext.macro.params.title")
5 - #set ($borderColor = "$!xcontext.macro.params.borderColor")
6 - #set ($borderWidth = "$!xcontext.macro.params.borderWidth")
7 - #set ($borderStyle = "$!xcontext.macro.params.borderStyle")
8 - #set ($borderRadius = "$!xcontext.macro.params.borderRadius")
9 - #set ($bgColor = "$!xcontext.macro.params.bgColor")
10 - #set ($contentTextColor = "$!xcontext.macro.params.contentTextColor")
11 - #set ($titleBGColor = "$!xcontext.macro.params.titleBGColor")
12 - #set ($titleColor = "$!xcontext.macro.params.titleColor")
13 - #set ($width = "$!xcontext.macro.params.width")
14 - #set ($height = "$!xcontext.macro.params.height")
15 - #set ($classes = "$!xcontext.macro.params.classes")
16 - #set ($panelFooter = "$!xcontext.macro.params.footer")
17 - #set ($footerBGColor = "$!xcontext.macro.params.footerBGColor")
18 - #set ($footerColor = "$!xcontext.macro.params.footerColor")
19 - ## Panel border style
20 - #set ($panelBorderStyle = '')
21 - #if ($width != '')
22 - #set ($panelBorderStyle = "${panelBorderStyle}width: $width; ")
23 - #end
24 - #if ($height != '')
25 - #set ($panelBorderStyle = "${panelBorderStyle}height: $height; ")
26 - #end
27 - #if ($borderStyle != '')
28 - #set ($panelBorderStyle = "${panelBorderStyle}border: $borderStyle; ")
29 - #end
30 - #if ($borderColor != '')
31 - #set ($panelBorderStyle = "${panelBorderStyle}border-color: $borderColor; ")
32 - #end
33 - #if ($borderWidth != '')
34 - #set ($panelBorderStyle = "${panelBorderStyle}border-width: ${borderWidth}px; ")
35 - #end
36 - #if ($borderRadius != '')
37 - #set ($panelBorderStyle = "${panelBorderStyle}border-radius: $borderRadius; ")
38 - #end
39 - ## Panel title style.
40 - #set ($panelTitleStyle = '')
41 - #if ($titleBGColor != '')
42 - #set ($panelTitleStyle = "${panelTitleStyle}background-color: $titleBGColor; ")
43 - #end
44 - #if ($titleColor != '')
45 - #set ($panelTitleStyle = "${panelTitleStyle}color: $titleColor; ")
46 - #end
47 - ## Panel footer style.
48 - #set ($panelFooterStyle = '')
49 - #if ($footerBGColor != '')
50 - #set ($panelFooterStyle = "${panelFooterStyle}background-color: $footerBGColor; ")
51 - #end
52 - #if ($footerColor != '')
53 - #set ($panelFooterStyle = "${panelFooterStyle}color: $footerColor; ")
54 - #end
55 - ## Panel content style.
56 - #set ($panelContentStyle = '')
57 - #if ($bgColor != '')
58 - #set ($panelContentStyle = "${panelContentStyle}background-color: $bgColor; ")
59 - #end
60 - #if ($contentTextColor != '')
61 - #set ($panelContentStyle = "${panelContentStyle}color: $contentTextColor; ")
62 - #end
63 - #*
64 - If there is a bootstrap class provided, the panel needs an inner container in order to properly handle the borders.
65 - Wraper structure with bootstrap class:
66 - <div class="macro-panel col-sm-12"><div class="macro-border">TITLE and CONTENT</div></div>
67 - Wraper structure without bootstrap class:
68 - <div class="macro-panel macro-border">TITLE and CONTENT</div>
69 - *#
70 - #set ($macroBorderClass = 'macro-border')
71 - #if ("$!classes" != '')
72 - (% class="macro-panel $classes" %)(((
73 - #else
74 - #set ($macroBorderClass = "$macroBorderClass macro-panel")
75 - #end
76 - (% class="$macroBorderClass" style="$services.rendering.escape($panelBorderStyle, 'xwiki/2.1')" %)(((
77 - #if( $panelTitle != '')
78 - (% class="macro-panel-title" style="$services.rendering.escape($panelTitleStyle, 'xwiki/2.1')"%)(((
1 +{{velocity}}
2 +#set ($discard = $xwiki.ssx.use('XWiki.Macros.Panel'))
3 +#set ($panelTitle = "$!xcontext.macro.params.title")
4 +#set ($borderColor = "$!xcontext.macro.params.borderColor")
5 +#set ($borderWidth = "$!xcontext.macro.params.borderWidth")
6 +#set ($borderStyle = "$!xcontext.macro.params.borderStyle")
7 +#set ($borderRadius = "$!xcontext.macro.params.borderRadius")
8 +#set ($bgColor = "$!xcontext.macro.params.bgColor")
9 +#set ($contentTextColor = "$!xcontext.macro.params.contentTextColor")
10 +#set ($titleBGColor = "$!xcontext.macro.params.titleBGColor")
11 +#set ($titleColor = "$!xcontext.macro.params.titleColor")
12 +#set ($width = "$!xcontext.macro.params.width")
13 +#set ($classes = "$!xcontext.macro.params.classes")
14 +## Panel border style
15 +#set ($panelBorderStyle = '')
16 +#if ($width != '')
17 + #set ($panelBorderStyle = "${panelBorderStyle}width: $width; ")
18 +#end
19 +#if ($borderStyle != '')
20 + #set ($panelBorderStyle = "${panelBorderStyle}border: $borderStyle; ")
21 +#end
22 +#if ($borderColor != '')
23 + #set ($panelBorderStyle = "${panelBorderStyle}border-color: $borderColor; ")
24 +#end
25 +#if ($borderWidth != '')
26 + #set ($panelBorderStyle = "${panelBorderStyle}border-width: ${borderWidth}px; ")
27 +#end
28 +#if ($borderRadius != '')
29 + #set ($panelBorderStyle = "${panelBorderStyle}border-radius: $borderRadius; ")
30 +#end
31 +## Panel title style.
32 +#set ($panelTitleStyle = '')
33 +#if ($titleBGColor != '')
34 + #set ($panelTitleStyle = "${panelTitleStyle}background-color: $titleBGColor; ")
35 +#end
36 +#if ($titleColor != '')
37 + #set ($panelTitleStyle = "${panelTitleStyle}color: $titleColor; ")
38 +#end
39 +## Panel content style.
40 +#set ($panelContentStyle = '')
41 +#if ($bgColor != '')
42 + #set ($panelContentStyle = "${panelContentStyle}background-color: $bgColor; ")
43 +#end
44 +#if ($contentTextColor != '')
45 + #set ($panelContentStyle = "${panelContentStyle}color: $contentTextColor; ")
46 +#end
47 +#*
48 + If there is a bootstrap class provided, the panel needs an inner container in order to properly handle the borders.
49 + Wraper structure with bootstrap class:
50 + <div class="macro-panel col-sm-12"><div class="macro-border">TITLE and CONTENT</div></div>
51 + Wraper structure without bootstrap class:
52 + <div class="macro-panel macro-border">TITLE and CONTENT</div>
53 +*#
54 +#set ($macroBorderClass = 'macro-border')
55 +#if ("$!classes" != '')
56 + (% class="macro-panel $classes" %)(((
57 +#else
58 + #set ($macroBorderClass = "$macroBorderClass macro-panel")
59 +#end
60 +(% class="$macroBorderClass" style="$panelBorderStyle" %)(((
61 + #if( $panelTitle != '')
62 + (% class="macro-panel-title" style="$panelTitleStyle"%)(((
63 + ## Since 11.5 the content of the macro can be edited in WYSIWYG editor.
64 + #if ($services.rendering.getMacroDescriptor($services.rendering.resolveMacroId('wikimacroparameter')))
79 79   {{wikimacroparameter name="title" /}}
80 - )))
81 - #end
82 - (% class="macro-panel-content" style="$services.rendering.escape($panelContentStyle, 'xwiki/2.1')"%)(((
83 - {{wikimacrocontent /}}
66 + #else
67 + $panelTitle
68 + #end
84 84   )))
85 - #if( $panelFooter != '')
86 - (% class="macro-panel-footer" style="$services.rendering.escape($panelFooterStyle, 'xwiki/2.1')"%)(((
87 - ## Since 11.5 the content of the macro can be edited in WYSIWYG editor.
88 - {{wikimacroparameter name="footer" /}}
89 - )))
90 - #end
91 - #if ("$!classes" != '')
92 - )))
93 93   #end
71 + (% class="macro-panel-content" style="$panelContentStyle"%)(((
72 + ## Since 11.5 the content of the macro can be edited in WYSIWYG editor.
73 + #if ($services.rendering.getMacroDescriptor($services.rendering.resolveMacroId('wikimacrocontent')))
74 + {{wikimacrocontent /}}
75 + #else
76 + $!xcontext.macro.content
77 + #end
78 + )))
79 +)))
80 +#if ("$!classes" != '')
81 + )))
94 94  #end
95 95  {{/velocity}}
96 -
97 -{{velocity}}
98 -## We need to check if there is a valid license because the macro is registered even if the user doesn't have view right
99 -## on the macro definition page. See XWIKI-14828: Rendering macros defined in wiki pages are available to users that
100 -## don't have view right on those pages.
101 -#if ($services.promacrolicensing.hasLicensureForEntity($xcontext.macro.doc.documentReference))
102 - #executeMacro
103 -#else
104 - {{missingLicenseMessage extensionName="proMacros.extension.name"/}}
105 -#end
106 -{{/velocity}}
Standardkategorie
... ... @@ -1,0 +1,1 @@
1 +content
XWiki.WikiMacroParameterClass[1]
Parameter-Vorgabe
... ... @@ -1,0 +1,1 @@
1 +white
XWiki.WikiMacroParameterClass[2]
Parameter-Vorgabe
... ... @@ -1,0 +1,1 @@
1 +solid
XWiki.WikiMacroParameterClass[3]
Parameter-Vorgabe
... ... @@ -1,0 +1,1 @@
1 +1
XWiki.WikiMacroParameterClass[11]
Parameter-Vorgabe
... ... @@ -1,0 +1,1 @@
1 +8px 8px 0px 0px
XWiki.WikiMacroParameterClass[12]
Parameter-Name
... ... @@ -1,1 +1,0 @@
1 -footerBGColor
Parameter verpflichtend
... ... @@ -1,1 +1,0 @@
1 -Nein
XWiki.WikiMacroParameterClass[13]
Parameter-Name
... ... @@ -1,1 +1,0 @@
1 -footer
Parameter verpflichtend
... ... @@ -1,1 +1,0 @@
1 -Nein
XWiki.WikiMacroParameterClass[14]
Parameter-Name
... ... @@ -1,1 +1,0 @@
1 -footerColor
Parameter verpflichtend
... ... @@ -1,1 +1,0 @@
1 -Nein
XWiki.WikiMacroParameterClass[15]
Parameter-Name
... ... @@ -1,1 +1,0 @@
1 -height
Parameter verpflichtend
... ... @@ -1,1 +1,0 @@
1 -Nein