#set ($brikitThemeName = $themePress.themeName($spaceKey))
############################################
## Designer panel construction
############################################
## Add a heading to the designer, annotated with the $themeName variable if specified
#macro (designerHeading $title)
$title
#end
## Add a panel to the designer
#macro (designerPanel $titleHTML $selector $indentLevel $fileLocation)
## PRESS-786: renamed from "clickable" to "clickable-control" as something in Confluence is targeting .clickable
#end
## Add add-on panels to the designer
#macro (brikitThemeTabAddOnPanel $addOnPanel)
#if ($brikitCore.developerMode)
#set ($panelLocation = "$brikitCore.parseFileLocation/$addOnPanel.templateLocation/$addOnPanel.template")
#else
#set ($panelLocation = "$addOnPanel.templateLocation/$addOnPanel.template")
#end
#designerPanel($addOnPanel.name, $addOnPanel.selector, -1, $panelLocation)
#end
## Add built-in panels to the designer
#macro (brikitThemeTabPanel $title $selector $indentLevel $includeFileName)
#designerPanel($title, $selector, $indentLevel, "$brikitCore.parseFileLocation/html/designer/panels/theme-tab/$includeFileName")
#end
#macro (brikitArchitectTabPanel $title $selector $indentLevel $includeFileName)
#designerPanel($title, $selector, $indentLevel, "$brikitCore.parseFileLocation/html/designer/panels/architect-tab/$includeFileName")
#end
#macro (brikitPageTabPanel $title $selector $indentLevel $includeFileName)
#designerPanel($title, $selector, $indentLevel, "$brikitCore.parseFileLocation/html/designer/panels/page-tab/$includeFileName")
#end
############################################
## Feature Tours
############################################
#macro (featureTour $lessonPlan $buttonText $clearBelow $extraClass)
#if ($clearBelow)
#end
#end
############################################
## Field Set Expanders
############################################
#macro (designerFieldSetOpen $title $extraClass)
#end
#macro (designerFieldSetClose)
#end
############################################
## Popup help labels
############################################
#macro (labelWithHelp $label $property $helpProperty $extraClass $required)
#if ($label)
#set ($helpKey = "#if ($helpProperty)$helpProperty#{else}$property#end")
#end
#end
#macro (legendWithHelp $label $property $helpProperty)
#if ($label)
#set ($helpKey = "#if ($helpProperty)$helpProperty#{else}$property#end")
$label
#end
#end
############################################
## Text input fields
############################################
#macro (designerTextField $label $property $helpProperty $type $extraClass $initialValue $disabled)
#set ($fieldType = "#if ($type)$type#{else}text#end")
#if ($brikitCore.isSet($label)) #labelWithHelp($label, $property, $helpProperty) #end
#end
#macro (designerTextarea $label $property $helpProperty $placeholder $extraClass)
#labelWithHelp($label, $property, $helpProperty)
#if ($description)
$description
#end
#end
#macro (designerColorPicker $label $property $helpProperty $isPaletteColor $extraClass $initialValue)
#labelWithHelp($label, $property, $helpProperty)
#set ($namedValue = "")
#if ($initialValue)
#set ($namedValue = $initialValue)
#else
#set ($namedValue = $themeProperties.get($property))
#end
#if (!$isPaletteColor)
#set ($namedValue = $themePress.getColorName($namedValue, $themeName))
#end
#end
############################################
## Checkbox fields
############################################
#macro (designerCheckbox $label $property $helpProperty $extraClass $initialValue)
#labelWithHelp($label, $property, $helpProperty)
#end
#macro (designerCheckboxNonTheme $label $property $helpProperty $checked $extraClass)
#legendWithHelp($label, $property, $helpProperty)
#end
#macro (designerCheckboxWithLegend $label $property $helpProperty $extraClass)
#labelWithHelp($label, $property, $helpProperty)
#end
#macro (designerCheckboxNonThemeWithLegend $label $property $helpProperty $checked $extraClass)
#labelWithHelp($label, $property, $helpProperty)
#end
############################################
## Select fields
############################################
## Display a select list with options, adding an empty/null value option at the top of the list
#macro (designerSelectField $label $property $helpProperty $options $extraClass $initialValue $translateOptions $displayOptionsMap)
#labelWithHelp($label, $property, $helpProperty)
#set ($value = "")
#end
#macro (designerTextTransform $label $property $helpProperty)
#designerSelectField($label $property $helpProperty ["", "lowercase", "uppercase", "capitalize"] "text-transform")
#end
#macro (designerTextAlign $label $property $helpProperty)
#designerSelectField($label $property $helpProperty ["", "left", "right", "center", "justify"] "text-align")
#end
#macro (designerFontStyle $label $property $helpProperty)
#designerSelectField($label $property $helpProperty ["", "normal", "italic", "oblique"] "font-style")
#end
#macro (designerFontFamilySelectField $label $property $helpProperty)
#set ($fontFamilies = $themePress.getNamedFonts($spaceKey))
#designerSelectField($label $property $helpProperty $themeProperties.fontFamilyNamesForPickList false false false $themeProperties.namedFontFamilyVariables)
#end
#macro (designerGroupMultiSelect $id $groups $addURL $removeURL)
#end
#macro (designerSpaceCategoryMultiSelect $id $categories $addURL $removeURL)
#foreach ($category in $categories)
$category
#end
#set ($allCategories = $brikitCore.spaceCategories)
#foreach ($category in $allCategories)
#if (!$categories.contains($category))
$category
#end
#end
#end
############################################
## Image select fields
############################################
#macro (imageURLThumbnail $fullImageURL $height $width)
#end
#macro (imageThumbnail $image $height $width $sourceThemeName)
#if (!$sourceThemeName)
#set ($sourceThemeName = $themeProperties.themeName)
#end
#imageURLThumbnail("$brikitCore.directURL/designs/themes/$brikitCore.urlEncode($sourceThemeName)/images/$brikitCore.urlEncode($image)" $height $width)
#end
#macro (designerURLImageSelectField $label $property $helpProperty $extraClass $imageName $fullImageURL)
#end
#macro (designerImageSelectField $label $property $helpProperty $extraClass)
#set ($imageValue = false) ## Needed to clear previously set values
#set ($imageValue = $themeProperties.get($property))
#designerURLImageSelectField($label $property $helpProperty $extraClass $imageValue "$brikitCore.directURL/designs/themes/$brikitCore.urlEncode($brikitThemeName)/images/$brikitCore.urlEncode($imageValue)")
#end
#macro (designerShowArchitectPages $label $property $architectPageType)
#labelWithHelp($label $property)
#set ($architectPages = $themePress.architectPages($architectPageType, $spaceKey))
#foreach ($architectPage in $architectPages)
View
$themePress.getDisplayableArchitectPageTitle($architectPage)
#end
#end
#macro (layoutPageRadioButton $architectPage $selectorType $label)
#set ($displayTitle = $themePress.getDisplayableArchitectPageTitle($architectPage))
#end
#macro (designerArchitectPageSelectField $label $property $architectPageType $currentSelection $multiSelect $includeMobilePhoneVersions)
#if ($multiSelect)
#set ($selectorType = "checkbox")
#set ($architectPageName = "")
#else
#set ($selectorType = "radio")
#if ($currentSelection)
#set ($architectPageName = $currentSelection)
#else
#set ($architectPageName = $themePress.getArchitectPageName($page, $architectPageType))
#end
#end
#set ($architectPages = $themePress.architectPages($architectPageType, $spaceKey, $includeMobilePhoneVersions))
#if ($architectPageType.startsWith(".brikit.layout"))
#set ($frames = $themePress.architectPages(".brikit.frame", $spaceKey))
#set ($grids = $themePress.architectPages(".brikit.grid", $spaceKey))
#else
#set ($frames = [])
#set ($grids = [])
#end
#set ($architectHomePage = $themePress.getArchitectHomePage())
#if ($architectPages.size() > 0)
#if ($frames.size() > 0)
#set ($frameLabel = $label.replace("Layout", "Frame"))
#labelWithHelp($frameLabel $property)
#foreach ($architectPage in $frames)
#layoutPageRadioButton($architectPage $selectorType $frameLabel)
#end
#end
#if ($grids.size() > 0)
#set ($gridLabel = $label.replace("Layout", "Grid"))
#labelWithHelp($gridLabel $property)
#foreach ($architectPage in $grids)
#layoutPageRadioButton($architectPage $selectorType $gridLabel)
#end
#end
#labelWithHelp($label $property)
#foreach ($architectPage in $architectPages)
#layoutPageRadioButton($architectPage $selectorType $label)
#end
#if ($themePress.overridesLayout($page) && $property == "brikitLayoutSourcePage")
Page Override
The current page is overriding this design.
(See: Page tab > Page Design )
#end
#else
#end
#end
############################################
## Standardized Field Options
############################################
#macro (textUnderlineOptionFields $field)
Text Underline
#designerTextField("Width", "brikit${field}TextUnderlineSize")
#designerSelectField("Style", "brikit${field}TextUnderlineStyle", false, ["", "solid", "dotted", "dashed", "double", "css underline"])
#designerColorPicker("Color", "brikit${field}TextUnderlineColor")
#end
#macro (sizeOptionFields $field $suppressHeight $suppressWidth $extraClass)
#if (!$suppressHeight)
#designerTextField("Height", "brikit${field}Height", false, false, $extraClass)
#end
#if (!$suppressWidth)
#designerTextField("Width", "brikit${field}Width", false, false, $extraClass)
#end
#end
#macro (boxOptionFields $field $suppressMargin $suppressPadding)
#if (!$suppressMargin)
#designerTextField("Margin", "brikit${field}Margin")
#end
#if (!$suppressPadding)
#designerTextField("Padding", "brikit${field}Padding")
#end
#end
#macro (borderOptionFields $field $addRadius $addShadow)
#designerTextField("Width", "brikit${field}BorderSize")
#designerSelectField("Style", "brikit${field}BorderStyle", false, ["", "solid", "dotted", "dashed", "double"])
#designerColorPicker("Color", "brikit${field}BorderColor")
#if ($addRadius)
#designerTextField("Corner Radius", "brikit${field}BorderRadius")
#end
#if ($addShadow)
#boxShadowOptionFields($field, "Shadow Values")
#end
#end
#macro (bottomBorderOptionFields $field)
#designerTextField("Width", "brikit${field}BottomBorderSize")
#designerSelectField("Style", "brikit${field}BottomBorderStyle", false, ["", "solid", "dotted", "dashed", "double"])
#designerColorPicker("Color", "brikit${field}BottomBorderColor")
#end
#macro (leftBorderOptionFields $field)
#designerTextField("Width", "brikit${field}LeftBorderSize")
#designerSelectField("Style", "brikit${field}LeftBorderStyle", false, ["", "solid", "dotted", "dashed", "double"])
#designerColorPicker("Color", "brikit${field}LeftBorderColor")
#end
#macro (topBorderOptionFields $field)
#designerTextField("Width", "brikit${field}TopBorderSize")
#designerSelectField("Style", "brikit${field}TopBorderStyle", false, ["", "solid", "dotted", "dashed", "double"])
#designerColorPicker("Color", "brikit${field}TopBorderColor")
#end
#macro (boxShadowOptionFields $field $title)
#designerTextField("#if ($title)$title#{else}Values#end", "brikit${field}BoxShadowValues")
#end
#macro (backgroundImageOptionFields $field)
#designerImageSelectField("Image", "brikit${field}BackgroundImage")
#designerTextField("Image Position", "brikit${field}BackgroundImagePosition")
#designerSelectField("Image Repeat", "brikit${field}BackgroundImageRepeat", false, ["", "repeat", "repeat-x", "repeat-y", "no-repeat"])
#end
## Add the background options to the designer
#macro (backgroundOptionFields $field $addGradient $addBackgroundSize)
#designerColorPicker("Color", "brikit${field}BackgroundColor")
#backgroundImageOptionFields($field)
#if ($addBackgroundSize)
#designerTextField("Image Size", "brikit${field}BackgroundSize")
#end
#if ($addGradient)
Gradient
#designerColorPicker("Top Color", "brikit${field}GradientTopColor")
#designerColorPicker("Bottom Color", "brikit${field}GradientBottomColor")
#designerTextField("Start", "brikit${field}GradientTop")
#designerTextField("Stop", "brikit${field}GradientBottom")
#end
#end
## Add dropdown options for float
#macro (floatOptionFields $field)
#designerSelectField("Float", "brikit${field}Float", false, ["", "left", "right"])
#end
## Add dropdown options for lists
#macro (listOptionFields $field)
#designerSelectField("Style Type", "brikit${field}ListStyleType", false, ["", "circle", "disc", "square", "none"])
#designerCheckbox("Display Inline", "brikit${field}ListDisplayInline", false)
#end
#macro (absolutePositionOptionFields $field)
#designerSelectField("Vertical Position", "brikit${field}VerticalPosition", false, ["", "top", "bottom"])
#designerTextField("Vertical Margin", "brikit${field}VerticalMargin")
#designerSelectField("Horizontal Position", "brikit${field}HorizontalPosition", false, ["", "left", "right"])
#designerTextField("Horizontal Margin", "brikit${field}HorizontalMargin")
#end
#macro (fontOptionFields $field $hideFontSize $showLineHeight $showTextShadow)
#designerColorPicker("Text Color", "brikit${field}Color")
#designerFontFamilySelectField("Font Family", "brikit${field}FontFamily")
#if (!$hideFontSize)
#designerTextField("Font Size", "brikit${field}FontSize")
#end
#designerTextField("Font Weight", "brikit${field}FontWeight")
#designerTextTransform("Text Transform", "brikit${field}TextTransform")
#if ($showLineHeight)
#designerTextField("Line Height", "brikit${field}LineHeight")
#end
#if ($showTextShadow)
#designerTextField("Text Shadow Values", "brikit${field}TextShadowValues")
#end
#end
#macro (containerOptionFields $field $includeHeight $includeOverflow)
#designerFieldSetOpen("Size" "size-field-set-$field")
#if ($includeHeight)
#sizeOptionFields("${field}Backdrop", false, true)
#end
#boxOptionFields("${field}Backdrop")
#if ($includeOverflow)
#designerCheckbox("Hide Overflow", "brikit${field}HideOverflow")
#end
#designerFieldSetClose
#designerFieldSetOpen("Background" "background-field-set-$field")
#backgroundOptionFields("${field}Backdrop", true)
#designerFieldSetClose
#designerFieldSetOpen("Border" "border-field-set-$field")
#borderOptionFields("${field}Backdrop")
#designerFieldSetClose
#designerFieldSetOpen("Content Container (Override Defaults)" "content-container-field-set-$field")
Size
#boxOptionFields("${field}")
Background
#backgroundOptionFields("${field}", true)
Border
#borderOptionFields("${field}", true, true)
#designerFieldSetClose
#end
#macro (designerHeadingOptionFieldsFontSize $headerLevel)
#designerTextField("H$headerLevel", "brikitHeader${headerLevel}FontSize")
#end
#macro (designerHeadingOptionFieldsLineHeight $headerLevel)
#designerTextField("H$headerLevel", "brikitHeader${headerLevel}LineHeight")
#end
#macro (designerHeadingOptionFieldsMargin $headerLevel)
#designerTextField("H$headerLevel", "brikitHeader${headerLevel}Margin")
#end