Änderungen von Dokument Panel Macro
Zuletzt geändert von xwikiadmin am 2025/01/07 12:27
Von Version 2.1
bearbeitet von xwikiadmin
am 2022/08/11 17:13
am 2022/08/11 17:13
Änderungskommentar:
Migrated property [defaultCategories] from class [XWiki.WikiMacroClass]
Auf Version 6.1
bearbeitet von xwikiadmin
am 2025/01/07 12:27
am 2025/01/07 12:27
Änderungskommentar:
Install extension [com.xwiki.pro:xwiki-pro-macros-ui/1.25.4]
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
-
Objekte (6 geändert, 4 hinzugefügt, 0 gelöscht)
- XWiki.StyleSheetExtension[0]
- XWiki.WikiMacroClass[0]
- XWiki.WikiMacroParameterClass[1]
- XWiki.WikiMacroParameterClass[2]
- XWiki.WikiMacroParameterClass[3]
- XWiki.WikiMacroParameterClass[11]
- XWiki.WikiMacroParameterClass[12]
- XWiki.WikiMacroParameterClass[13]
- XWiki.WikiMacroParameterClass[14]
- XWiki.WikiMacroParameterClass[15]
Details
- Seiteneigenschaften
-
- Übergeordnete Seite
-
... ... @@ -1,1 +1,1 @@ 1 - xwiki:XWiki.Macros.WebHome1 +WebHome - Inhalt
-
... ... @@ -7,16 +7,20 @@ 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') 10 10 | bgColor | $services.localization.render('rendering.macro.panel.parameter.bgColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.bgColor.description') 11 11 | contentTextColor | $services.localization.render('rendering.macro.panel.parameter.contentTextColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.contentTextColor.description') 12 12 | 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') 13 13 | classes | $services.localization.render('rendering.macro.panel.parameter.classes.name') | - | $services.localization.render('rendering.macro.panel.parameter.classes.description') 14 14 | borderColor | $services.localization.render('rendering.macro.panel.parameter.borderColor.name') |white| $services.localization.render('rendering.macro.panel.parameter.borderColor.description') 15 15 | borderStyle | $services.localization.render('rendering.macro.panel.parameter.borderStyle.name') |solid | $services.localization.render('rendering.macro.panel.parameter.borderStyle.description') 16 16 | borderWidth| $services.localization.render('rendering.macro.panel.parameter.borderWidth.name') |1px| $services.localization.render('rendering.macro.panel.parameter.borderWidth.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') 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') 18 18 | titleBGColor | $services.localization.render('rendering.macro.panel.parameter.titleBGColor.name') | - | $services.localization.render('rendering.macro.panel.parameter.titleBGColor.description') 19 19 | 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') 20 20 {{/velocity}} 21 21 22 22 = Examples = ... ... @@ -33,15 +33,15 @@ 33 33 Content of the panel 34 34 {{/panel}} 35 35 36 -== Panel with title and colors == 40 +== Panel with title, content, footer and colors == 37 37 38 -{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" width="50%" title="Title of the panel"}} 42 +{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" width="50%" footerBGColor="#2a8af7" footerColor="#faafff" title="Title of the panel" footer="Footer of the panel"}} 39 39 Content of the panel 40 40 {{/panel}} 41 41 42 42 == Panel with title and colors and border == 43 43 44 -{{panel b gColor="#dbf4ff" borderColor="#2a8af7" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}48 +{{panel borderColor="#2a8af7" bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}} 45 45 Content of the panel 46 46 {{/panel}} 47 47 ... ... @@ -51,11 +51,11 @@ 51 51 Content of the panel 52 52 {{/panel}} 53 53 54 -{{panel classes="col-sm-6"bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}58 +{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" classes="col-sm-6" title="Title of the panel"}} 55 55 Content of the panel 56 56 {{/panel}} 57 57 58 -{{panel classes="col-sm-6"bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" title="Title of the panel"}}62 +{{panel bgColor="#dbf4ff" titleBGColor="#2a8af7" titleColor="#ffffff" classes="col-sm-6" title="Title of the panel"}} 59 59 Content of the panel 60 60 {{/panel}} 61 61
- XWiki.StyleSheetExtension[0]
-
- Code
-
... ... @@ -1,3 +1,4 @@ 1 +.macro-panel-footer, 1 1 .macro-panel-title, 2 2 .macro-panel-content { 3 3 padding: 10px 10px 1px 10px; ... ... @@ -4,5 +4,36 @@ 4 4 } 5 5 .macro-border { 6 6 margin-bottom: 10px; 7 - overflow: hidden;8 + overflow: auto; 8 8 } 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,83 +1,106 @@ 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'))) 65 - {{wikimacroparameter name="title" /}} 66 - #else 67 - $panelTitle 68 - #end 69 - ))) 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; ") 70 70 #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'))) 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')"%)((( 79 + {{wikimacroparameter name="title" /}} 80 + ))) 81 + #end 82 + (% class="macro-panel-content" style="$services.rendering.escape($panelContentStyle, 'xwiki/2.1')"%)((( 74 74 {{wikimacrocontent /}} 75 - #else 76 - $!xcontext.macro.content 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 + ))) 77 77 #end 78 - ))) 79 -))) 80 -#if ("$!classes" != '') 81 - ))) 91 + #if ("$!classes" != '') 92 + ))) 93 + #end 82 82 #end 83 83 {{/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,1 +1,0 @@ 1 -content
- XWiki.WikiMacroParameterClass[1]
-
- Parameter-Vorgabe
-
... ... @@ -1,1 +1,0 @@ 1 -white
- XWiki.WikiMacroParameterClass[2]
-
- Parameter-Vorgabe
-
... ... @@ -1,1 +1,0 @@ 1 -solid
- XWiki.WikiMacroParameterClass[3]
-
- Parameter-Vorgabe
-
... ... @@ -1,1 +1,0 @@ 1 -1
- XWiki.WikiMacroParameterClass[11]
-
- Parameter-Vorgabe
-
... ... @@ -1,1 +1,0 @@ 1 -8px 8px 0px 0px
- XWiki.WikiMacroParameterClass[12]
-
- Parameter-Name
-
... ... @@ -1,0 +1,1 @@ 1 +footerBGColor - Parameter verpflichtend
-
... ... @@ -1,0 +1,1 @@ 1 +Nein
- XWiki.WikiMacroParameterClass[13]
-
- Parameter-Name
-
... ... @@ -1,0 +1,1 @@ 1 +footer - Parameter verpflichtend
-
... ... @@ -1,0 +1,1 @@ 1 +Nein
- XWiki.WikiMacroParameterClass[14]
-
- Parameter-Name
-
... ... @@ -1,0 +1,1 @@ 1 +footerColor - Parameter verpflichtend
-
... ... @@ -1,0 +1,1 @@ 1 +Nein
- XWiki.WikiMacroParameterClass[15]
-
- Parameter-Name
-
... ... @@ -1,0 +1,1 @@ 1 +height - Parameter verpflichtend
-
... ... @@ -1,0 +1,1 @@ 1 +Nein