1: #set ($showTitle = true) 2: #set ($primary = true) 3: #set ($useIcons = false) 4: #set ($listClass = "list-unstyled") 5: #set ($class = "nav-link") 6: #set ($flex = true) 7: #set ($flexClass = "d-sm-flex") 8: #set ($flexFill = false) 9: #set ($alignment = "flex-column") 10: #set ($flexFill = true) 11: #set ($ariaLabel = "") 12: #set ($groupLinks = false) 13: 14: #if ($request.getParameter("groupLinks") == true) 15: #set ($groupLinks = true) 16: #end 17: 18: #if ($request.getParameter("showTitle") == false) 19: #set ($showTitle = false) 20: #end 21: 22: #if ($request.getParameter("primary") == false) 23: #set ($primary = false) 24: #end 25: 26: #if ($request.getParameter("useIcons") == true) 27: ## This is designed to set the label field as a FontAwesome class selector. 28: #set ($useIcons = true) 29: #end 30: 31: #if ($request.getParameter("flexClass")) 32: #set ($flexClass = $request.getParameter("flexClass")) 33: #end 34: 35: #if ($request.getParameter("class")) 36: #set ($class = $request.getParameter("class")) 37: #end 38: 39: #if ($request.getParameter("listClass")) 40: #set ($listClass = $request.getParameter("listClass")) 41: #end 42: 43: #if ($request.getParameter("flexFill") == false) 44: #set ($flexFill = false) 45: #end 46: 47: #if ($request.getParameter("alignment")) 48: ## Examples: justify-content-center | justify-content-end | flex-column | flex-column-reverse | flex-row | flex-row-reverse 49: #set ($alignment = $request.getParameter("alignment")) 50: #end 51: 52: #if ($request.getParameter("ariaLabel")) 53: #set ($ariaLabel = $request.getParameter("ariaLabel")) 54: #if ($primary == true) 55: #if ($ariaLabel.toLowerCase().contains("sports")) 56: #set ($ariaLabelWords = $ariaLabel.split(" ")) 57: $request.setAttribute("sportsGender", $ariaLabelWords[0]) 58: #end 59: 60: #end 61: #end 62: 63: 64: ##=====================## 65: ## BUILD LIST ELEMENTS ## 66: ##=====================## 67: 68: #set ($level = 1) 69: 70: #macro (printAnchor $anchorclass) 71: #if ($anchorclass == "sportmenu-row-link") 72: #set ($anchorclass = "${anchorclass} px-lg-2") 73: #set ($level = $request.getParameter('level')) 74: #if ($level == 3) 75: #set ($sportsGender = $request.getAttribute('sportsGender')) 76: #end 77: #end 78: 79: #set ($isBrand = false) 80: #set ($brands = ["facebook", "twitter", "instagram", "youtube", "flickr", "twitch", "tiktok"]) 81: #foreach ($brand in $brands) 82: #if ($entry.label.toLowerCase().contains($brand)) 83: #set ($isBrand = true) 84: #end 85: #end 86: 87: <a class="$anchorclass dropdown-item#if($entry.targetURL.length() == 0) disabled#end" href="$entry.targetURL" #if ($website.isExternalLink($entry.targetURL)) target="_blank" #end #if (!$entry.hideTitle && $entry.title.length() > 0) title="$entry.title" aria-label="$!sportsGender $ariaLabel $entry.title" #else aria-label="$!sportsGender $ariaLabel $entry.label" #end > 88: #if (($useIcons == true || $isBrand == true) && $page.url.contains("/sports/")) 89: #set ($iconClass = $entry.label.toLowerCase()) 90: #if ($iconClass == "twitter") 91: #set ($iconClass = "x-twitter") 92: #end 93: <span class="fab fa-${iconClass}"></span> 94: <span class="sr-only">$entry.label</span> 95: #else 96: ${entry.label} 97: #end 98: </a> 99: #end 100: 101: #macro (printGroupLinks) 102: <div class="${flexClass} justify-content-between list-unstyled flex-row"> 103: <div class="flex-grow-1"> 104: #printAnchor("sportname text-left font-weight-bold col px-lg-2") 105: </div> 106: #if ($entry.secondaryURL.length() > 0) 107: <div class="sports-row-quick-links d-none d-sm-block"> 108: #set ($level = $tool.math.add($request.getParameter("level"), 1)) 109: #set ($alignment = "flex-row") 110: #set ($flexClass = "d-flex") 111: 112: <div class="submenu level-${level}" data-secondary-url="${entry.secondaryURL}"> 113: 114: #if ($entry.secondaryURL.contains("tmpl=")) 115: #set ($secondaryURL = ${entry.secondaryURL}) 116: #else 117: #set ($poweredby = ${entry.secondaryURL}) 118: #set ($extraparams = "") 119: 120: #if ($entry.secondaryURL.contains("?")) 121: #set ($poweredby = $entry.secondaryURL.toString().split("\?").get(0)) 122: #set ($extraparams = $entry.secondaryURL.toString().split("\?").get(1)) 123: #end 124: #set ($secondaryURL = "${poweredby}?tmpl=navbar-yamm-template&groupLinks=true&primary=false&flex=${flex}&alignment=${alignment}&flexClass=${flexClass}&flexFill=${flexFill}&justify=${justify}&level=${level}&ariaLabel=${tool.esc.url($entry.label)}&${extraparams}") 125: #end 126: $website.includeAgain("${secondaryURL}?groupLinks=true") 127: </div> 128: </div> 129: #end 130: </div> 131: #end ## printGroupLinks 132: 133: #macro (printLinks) 134: <ul class="${listClass} ${flexClass} ${alignment}"> 135: #foreach ($entry in $entries) 136: #set ($class="") 137: #if ($entry.match) 138: #set ($class = "match active") 139: #end 140: 141: #if ($entry.secondaryURL.length() > 1) 142: #if ($entry.match) 143: #set ($class = "has-nav match active") 144: #else 145: #set ($class = "has-nav") 146: #end 147: #end 148: 149: <li class="#if($class.length() > 0)${class}#end#if($inline) list-inline-item#end#if($flexFill) flex-fill#end #if($foreach.hasNext && !$groupLinks) border-bottom #end group-links-${groupLinks}"> 150: #if ($entry.secondaryURL.length() > 0) 151: #printGroupLinks 152: #else 153: #printAnchor("sportmenu-row-link") 154: #end 155: </li> 156: #end 157: </ul> 158: #if ($wiki.valid())$wiki#end 159: #end ## printLinks 160: 161: ##============## 162: ## BUILD MENU ## 163: ##============## 164: 165: #if ($entries.size() > 0) 166: #if ($primary) 167: <div class="navbar-yamm-group" role="menubar" data-module="nav"> 168: #if ($page.title.length() > 0 && $showTitle) 169: <h4>$page.title</h4> 170: #end 171: #printLinks 172: </div> 173: #else 174: #printLinks 175: #end 176: 177: #end ## size check
1: $website.include("options") 2: #set ($options = $request.getAttribute("options")) 3: 4: ##-----------------------------## 5: ## OPTIONS 6: ##-----------------------------## 7: #set ($showLogo = true) 8: #set ($showSiteTitle = false) 9: #set ($showTitle = false) 10: #set ($search = "disabled") 11: #set ($social = "") 12: #set ($navContent = "") 13: #set ($colorScheme = "navbar-dark") 14: #set ($bgColor = "bg-primary") 15: #set ($colorSchemeDropdown = "navbar-dark") 16: #set ($bgColorDropdown = "bg-primary") 17: #set ($navbarExpand = "navbar-expand-lg") 18: #set ($splitNav = false) 19: #set ($class = "nav-link") 20: #set ($fluid = false) 21: #set ($flex = false) 22: #set ($flexClass = "d-sm-flex") 23: #set ($flexFill = false) 24: #set ($alignment = "justify-content-start") 25: #set ($yammContent = false) 26: #set ($groupColumns = false) 27: #set ($dropdownClass = "") 28: #set ($wrapContainer = true) 29: #set ($stickyNav = false) 30: 31: #if ($request.getParameter("wrapContainer") == false) 32: #set ($wrapContainer = false) 33: #end 34: 35: #if ($request.getParameter("stickyNav") == true) 36: #set ($stickyNav = true) 37: #end 38: 39: #if ($request.getParameter("showLogo") == false) 40: #set ($showLogo = false) 41: #end 42: 43: #if ($request.getParameter("showSiteTitle") && $request.getParameter("showSiteTitle") == true) 44: #set ($showSiteTitle = true) 45: #end 46: 47: #if ($request.getParameter("showTitle") && $request.getParameter("showTitle") == true) 48: #set ($showTitle = true) 49: #end 50: 51: #if ($request.getParameter("search") && $request.getParameter("search") == "enabled") 52: #set ($search = "enabled") 53: #end 54: 55: #if ($request.getParameter("social") && $request.getParameter("social").length() > 0) 56: #set ($social = $request.getParameter("social")) 57: #end 58: 59: #if ($request.getParameter("navContent")) 60: #set ($navContent = $request.getParameter("navContent")) 61: #end 62: 63: #if ($request.getParameter("colorScheme") == "navbar-light") 64: #set ($colorScheme = "navbar-light") 65: #set ($bgColor = "bg-light") 66: #end 67: 68: #if ($request.getParameter("bgColor")) 69: #set ($bgColor = $request.getParameter("bgColor")) 70: #end 71: 72: #if ($request.getParameter("colorScheme") == "inherit") 73: #set ($colorScheme = "") 74: #set ($bgColor = "") 75: #end 76: 77: #if ($request.getParameter("colorSchemeDropdown") == "navbar-light") 78: #set ($colorSchemeDropdown = "navbar-light") 79: #set ($bgColorDropdown = "bg-light") 80: #end 81: 82: #if ($request.getParameter("bgColorDropdown")) 83: #set ($bgColorDropdown = $request.getParameter("bgColorDropdown")) 84: #end 85: 86: #if ($request.getParameter("colorSchemeDropdown") == "inherit") 87: #set ($colorSchemeDropdown = "") 88: #set ($bgColorDropdown = "") 89: #end 90: 91: #if ($request.getParameter("navbarExpand")) 92: #set ($navbarExpand = $request.getParameter("navbarExpand")) 93: #end 94: 95: #if ($request.getParameter("class").length() > 0) 96: #set ($class = $request.getParameter("class")) 97: #end 98: 99: #if ($request.getParameter("dropdownClass").length() > 0) 100: #set ($dropdownClass = $request.getParameter("dropdownClass")) 101: #end 102: 103: #if ($request.getParameter("yammContent") == true) 104: #set ($yammContent = true) 105: #set ($flex = true) 106: #set ($flexFill = true) 107: #set ($fluid = true) 108: #end 109: 110: #if ($request.getParameter("fluid") == true) 111: #set ($fluid = true) 112: #end 113: 114: #if ($request.getParameter("groupColumns") == true) 115: #set ($groupColumns = true) 116: #end 117: 118: #if ($request.getParameter("flex") == true) 119: #set ($flex = true) 120: #end 121: 122: #if ($request.getParameter("flexFill") == true) 123: #set ($flexFill = true) 124: #end 125: 126: #if ($request.getParameter("flexClass")) 127: #set ($flexClass = $request.getParameter("flexClass")) 128: #end 129: 130: #if ($request.getParameter("alignment")) 131: ## Examples: justify-content-center | justify-content-end | flex-column | flex-column-reverse | flex-row | flex-row-reverse 132: #set ($alignment = $request.getParameter("alignment")) 133: #if ($request.getParameter("alignment") == "flex-column") 134: #set ($forceColumn = true) 135: #end 136: #end ## See flex utilities at https://getbootstrap.com/docs/4.3/utilities/flex/ 137: 138: #if ($request.getParameter("splitNav") == true) 139: #set ($splitNav = true) 140: #if (!$request.getParameter("alignment")) 141: #set ($alignment = "justify-content-between") 142: #end 143: #end 144: 145: #if ($request.getAttribute("navInstance")) 146: #set ($instance = $tool.math.toInteger($request.getAttribute("navInstance"))) 147: #set ($id = "site-nav${instance}") 148: #set ($instance = $instance + 1) 149: #else 150: #set ($id = "site-nav") 151: #set ($instance = 1) 152: #end 153: $request.setAttribute("navInstance", $instance) 154: 155: #if ($request.getParameter("id")) 156: #set ($id = $request.getParameter("id")) 157: #end 158: 159: ##-----------------------------## 160: ## DROPDOWN ELEMENTS 161: ##-----------------------------## 162: 163: #if ($request.getParameter("dropdown")) 164: #if ($entries.size() > 0) 165: #set ($level = $tool.math.add($request.getParameter("level"), 1)) 166: #if ($showTitle && $page.title.length() > 0)<span class="submenu-title">$page.title</span>#end 167: #if ($yammContent) 168: #if ($groupColumns) 169: #set ($flex = true) 170: #set ($alignment = "flex-wrap flex-sm-column flex-md-column flex-lg-row flex-lg-nowrap justify-content-between based-on-groupcolumn") 171: #elseif ($level == "3") 172: #set ($flex = true) 173: #set ($alignment = "flex-wrap flex-lg-row flex-lg-nowrap flex-lg-nowrap justify-content-between based-on-level3") 174: #elseif ($level == "2") 175: #set ($flex = true) 176: #set ($alignment = "flex-column based-on-level2") 177: #else 178: #set ($flex = true) 179: #set ($alignment = "flex-column based-on-else") 180: #end 181: #else 182: #set ($alignment = "flex-column") 183: #end 184: <div class="d-flex flex-wrap flex-sm-column flex-md-column flex-lg-row flex-lg-nowrap justify-content-between" data-nav-content="${navContent}"> 185: <div class="flex-fill"> 186: <ul class="${flexClass} ${alignment} list-unstyled"> 187: #foreach ($entry in $entries) 188: #if ($request.getParameter("ariaLabel").length() > 0) 189: #set ($ariaLabel = "${request.getParameter('ariaLabel')}: ${entry.label}") 190: #else 191: #set ($ariaLabel = $entry.label) 192: #end 193: 194: #if ($entry.secondaryURL.length() > 1) 195: #if ($entry.targetURL.length() > 1) 196: #set ($followLink = true) 197: #set ($targetURL = $entry.targetURL) 198: #else 199: #set ($followLink = false) 200: #set ($targetURL = $entry.secondaryURL) 201: #end 202: 203: <li class="item #if($foreach.hasNext && $yammContent && $groupColumns == false) border-bottom #end #if ($flexFill) flex-fill #end #if($yammContent) #if($groupColumns == false) mb-0 d-flex flex-row #else mb-3 px-md-2 #end #end" data-follow-link="${followLink}"> 204: #if ($yammContent && $groupColumns == false) 205: <a class="dropdown-item font-weight-bold" href="$entry.targetURL" #if ($website.isExternalLink($entry.targetURL)) target="_blank" #end aria-label="${ariaLabel}">$entry.label</a> 206: #set($nestedYammMenuClass = "d-none d-sm-block") 207: #elseif ($yammContent) 208: <div class="heading list-group-item-heading col h5 font-weight-bold px-lg-2">$entry.label</div> 209: 210: #else 211: #set($nestedYammMenuClass = "d-none d-sm-block") 212: <a class="dropdown-item" href="$entry.targetURL" #if ($website.isExternalLink($entry.targetURL)) target="_blank" #end aria-label="${ariaLabel}">$entry.label</a> 213: #end 214: 215: <div class="submenu level-${level} $nestedYammMenuClass" data-secondary-url="${entry.secondaryURL}"> 216: #if ($entry.secondaryURL.contains("tmpl=")) 217: #set ($secondaryURL = ${entry.secondaryURL}) 218: #else 219: #set ($poweredby = ${entry.secondaryURL}) 220: #set ($extraparams = "") 221: #set ($tmpl = "navbar-primary-template") 222: 223: #if ($entry.secondaryURL.contains("?")) 224: #set ($poweredby = $entry.secondaryURL.toString().split("\?").get(0)) 225: #set ($extraparams = $entry.secondaryURL.toString().split("\?").get(1)) 226: #end 227: #if ($yammContent || $entry.secondaryURL.contains("yammContent=true")) 228: #set ($tmpl = "navbar-yamm-template") 229: #set ($alignment = "flex-column") 230: #if ($groupColumns == false) 231: #set ($tmpl = "navbar-yamm-template") 232: #set ($alignment = "flex-row") 233: #end 234: #end 235: #set ($secondaryURL = "${poweredby}?tmpl=${tmpl}&dropdown=true&showTitle=${showTitle}&flex=${flex}&flexClass=${flexClass}&flexFill=${flexFill}&alignment=${alignment}&level=${level}&yammContent=${yammContent}&ariaLabel=${tool.esc.url($entry.label)}&${extraparams}") 236: #end 237: $website.includeAgain("${secondaryURL}") 238: 239: </div> 240: </li> 241: #else 242: <li class="item #if ($flexFill) flex-fill #end"><a class="dropdown-item" href="$entry.targetURL" #if ($website.isExternalLink($entry.targetURL)) target="_blank" #end aria-label="$ariaLabel">$entry.label</a></li> 243: #end 244: #end 245: #if ($wiki.valid())<li class="wiki">$wiki</li>#end 246: </ul> 247: </div> 248: 249: ## NAVIGATION CONTENT 250: #if ($navContent.length() > 0) 251: <div class="navbar-content-column pl-lg-3 text-center"> 252: $website.includeAgain("${navContent}") 253: </div> 254: #end 255: </div> 256: 257: #end ## ENTRIES SIZE 258: 259: #else 260: 261: ##===================## 262: ## CREATE NAVIGATION ## 263: ##===================## 264: 265: #set ($level = 1) 266: 267: #if ($splitNav) 268: #set ($splitIndex = $tool.math.ceil($tool.math.div($entries.size(), 2))) 269: #end 270: 271: #macro (printLogo $class) 272: #if ($showLogo) 273: #set ($siteUrl = "/index") 274: #if ($page.thumbnailURL.length() > 0) 275: <a href="$siteUrl" class="navbar-brand navbar-logo $class"> 276: <img class="logo" src="$page.thumbnailURL" alt="$!page.title"> 277: </a> 278: #elseif ($request.getAttribute("sitelogo").length() > 0) 279: #set ($sitelogo = $request.getAttribute("sitelogo")) 280: #set ($mobilelogo = $request.getAttribute("mobilelogo")) 281: <a href="$siteUrl" class="navbar-brand navbar-logo $class"> 282: <picture> 283: #if ($mobilelogo.length() > 0) 284: <source srcset="$mobilelogo" media="(max-width: 991px)"> 285: #end 286: <img src="$sitelogo" alt="$!page.title" /> 287: </picture> 288: </a> 289: #elseif($page.title.length() > 0) 290: <a href="$siteUrl" class="navbar-brand text-wrap text-break $class">$page.title</a> 291: #end 292: #end 293: #end 294: 295: #macro (printSiteTitle) 296: #if ($showSiteTitle) 297: <h1 class="site-title mr-auto mb-0 h5 d-none d-sm-inline-block d-lg-none">#if($page.title.length() > 0)$page.title#else${website.profile.siteName}#end</h1> 298: #end 299: 300: #end 301: 302: #set ($size = $entries.size()) 303: 304: #if ($wrapContainer) 305: <nav id="${id}" class="navbar navbar-primary ${navbarExpand} ${colorScheme} ${bgColor} yamm" aria-label="primary"> 306: <div class="#if ($fluid) container-fluid #else container #end d-flex align-items-stretch"> 307: #end 308: #if($splitNav) 309: #printLogo('navbar-brand-left d-lg-none') 310: #else 311: #printLogo('navbar-brand-left') 312: #end 313: #printSiteTitle 314: <div class="ml-auto"> 315: <a href="/composite" class="navbar-toggler d-lg-none btn btn-outline-light ml-auto mr-1 text-nowrap" aria-label="Composite Schedule"><span class="fa fa-calendar"></span> <span class="d-none d-md-inline-block">Composite</span></a> 316: <a href="/search" class="navbar-toggler d-lg-none btn btn-outline-light ml-auto mr-1 text-nowrap"><span class="fa fa-search"></span> <span class="d-none d-md-inline-block">Search</span></a> 317: <button class="navbar-toggler btn btn-outline-light" type="button" data-toggle="collapse" data-target="#${id}-collapse" aria-controls="${id}-collapse" aria-expanded="false" aria-label="Toggle navigation"> 318: <span class="fas fa-bars" aria-label="More"></span> 319: </button> 320: </div> 321: <div class="collapse navbar-collapse align-items-stretch #if($splitNav || $search == 'enabled' || $social.length() > 0)${alignment}#end" id="${id}-collapse"> 322: <ul class="navbar-nav #if(!$splitNav)${alignment} flex-grow flex-fill #end"> 323: #foreach ($entry in $entries) 324: #if ($entry.secondaryURL.length() > 1) 325: 326: #if ($entry.targetURL.length() > 1) 327: #set ($followLink = true) 328: #set ($targetURL = $entry.targetURL) 329: #else 330: #set ($followLink = false) 331: #set ($targetURL = $entry.secondaryURL) 332: #end 333: 334: #set ($fluid = false) 335: #if ($entry.secondaryURL.contains("fluid=true")) 336: #set ($fluid = true) 337: #end 338: 339: #set ($yammFW = false) 340: #if ($entry.secondaryURL.contains("yammContent")) 341: #set ($yammContent = true) 342: #if ($entry.secondaryURL.contains("fluid=true")) 343: #set ($yammFW = true) 344: #set ($groupColumns = true) 345: #else 346: #set ($groupColumns = false) 347: #end 348: #else 349: #set ($yammContent = false) 350: #set ($yammFW = false) 351: #set ($groupColumns = false) 352: #end 353: 354: <li class="nav-item item-${velocityCount} dropdown #if($flexFill) flex-fill #end #if ($yammFW) yamm-fw #elseif ($velocityCount == $size)position-relative#end" data-follow-link="${followLink}"> 355: <a id="navbarDropdown${velocityCount}" class="${class} dropdown-toggle d-flex align-items-center" href="$entry.targetURL" role="button" #if($entry.targetURL.length() < 2) data-toggle="dropdown" #end aria-haspopup="true" aria-expanded="false" #if ($website.isExternalLink($entry.targetURL)) target="_blank" #end>$entry.label</a> 356: <div class="dropdown-menu text-left level-${level} ${dropdownClass} ${colorSchemeDropdown} ${bgColorDropdown} #if($velocityCount == $size)dropdown-menu-right#end" aria-labelledby="navbarDropdown${velocityCount}" data-secondary-url="${entry.secondaryURL}"> 357: #if ($entry.secondaryURL.contains("tmpl=")) 358: #set ($secondaryURL = ${entry.secondaryURL}) 359: #else 360: #set ($poweredby = ${entry.secondaryURL}) 361: #set ($extraparams = "") 362: 363: #if ($entry.secondaryURL.contains("?")) 364: #set ($poweredby = $entry.secondaryURL.toString().split("\?").get(0)) 365: #set ($extraparams = $entry.secondaryURL.toString().split("\?").get(1)) 366: #end 367: 368: #set ($secondaryURL = "${poweredby}?tmpl=navbar-primary-template&dropdown=true&showTitle=${showTitle}&flex=${flex}&flexClass=${flexClass}&flexFill=${flexFill}&alignment=${alignment}&level=${level}&groupColumns=${groupColumns}&ariaLabel=${tool.esc.url($entry.label)}&${extraparams}") 369: #end 370: 371: #if ($yammContent) 372: <div class="yamm-content justify-content-center flex-fill" data-secondaryurl="${secondaryURL}"> 373: $website.includeAgain("${secondaryURL}") 374: </div> 375: #else 376: $website.includeAgain("${secondaryURL}") 377: #end 378: 379: ## NAVIGATION CONTENT 380: #if ($navContent.length() > 0) 381: $website.includeAgain("${navContent}?count=${velocityCount}") 382: #end 383: </div> 384: </li> 385: #else 386: <li class="nav-item #if ($flexFill) flex-fill #end item-${velocityCount} "> 387: <a class="nav-link d-flex align-items-center" href="${entry.targetURL}"#if ($website.isExternalLink($entry.targetURL)) target="_blank"#end>$entry.label</a> 388: </li> 389: #end 390: #if ($splitIndex == $velocityCount) 391: </ul> 392: #printLogo("navbar-brand-centered d-none d-lg-block") 393: <ul class="navbar-nav #if(!$splitNav)${alignment} w-100#end"> 394: #end 395: #end 396: #if ($wiki.valid())<li class="wiki #if ($flexFill) flex-fill #end">$wiki</li>#end 397: </ul> 398: #if ($search == "enabled") 399: $website.include("google-search-html") 400: #end 401: #if ($social.length() > 0) 402: $website.include("${social}?tmpl=navbar-primary-social-template") 403: #end 404: </div> 405: #if ($wrapContainer) 406: </div> 407: </nav> 408: #end 409: 410: #end ##DROPDOWN CHECK
1: #set ($search = $website.theme.getSetting("section.header.search")) 2: #set ($showSiteTitle = $request.getParameter("showSiteTitle")) 3: #set ($headerGlobalNavSplit = $request.getParameter("headerGlobalNavSplit")) 4: #set ($headerSocial = $request.getParameter("headerSocialNav")) 5: #set ($fluid = false) 6: 7: ## ============================================ ## 8: ## START OF MACROS ## 9: ## ============================================ ## 10: 11: #macro (primaryNav) 12: #set ($poweredby = $website.theme.getSetting("navigation.primary.poweredby")) 13: #set ($primaryNavBg = $website.theme.getSetting("navigation.primary.style.background.class")) 14: #set ($primaryNavDropdownBg = $website.theme.getSetting("navigation.primarydropdown.style.background.class")) 15: #set ($primaryNavScheme = $website.theme.getSetting("navigation.primary.style.scheme")) 16: #set ($primaryNavDropdownScheme = $website.theme.getSetting("navigation.primarydropdown.style.scheme")) 17: 18: #set ($alignment = "justify-content-between") 19: 20: $website.include("${poweredby}?tmpl=navbar-primary-template&id=site-nav&alignment=${alignment}&search=${search}&splitNav=${headerGlobalNavSplit}&colorScheme=${primaryNavScheme}&bgColor=${primaryNavBg}&colorSchemeDropdown=${primaryNavDropdownScheme}&bgColorDropdown=${primaryNavDropdownBg}&showSiteTitle=${showSiteTitle}&fluid=${fluid}") 21: #end 22: 23: #macro (secondaryNav) 24: #set ($poweredby = $website.theme.getSetting("navigation.secondary.poweredby")) 25: #set ($secondaryNavBg = $website.theme.getSetting("navigation.secondary.style.background.class")) 26: #set ($secondaryNavDropdownBg = $website.theme.getSetting("navigation.secondarydropdown.style.background.class")) 27: #set ($secondaryNavScheme = $website.theme.getSetting("navigation.secondary.style.scheme")) 28: #set ($secondaryNavDropdownScheme = $website.theme.getSetting("navigation.secondarydropdown.style.scheme")) 29: 30: $website.includeAgain("${poweredby}?tmpl=secondary-nav-template&colorScheme=${secondaryNavScheme}&bgColor=${secondaryNavBg}&colorSchemeDropdown=${secondaryNavDropdownScheme}&bgColorDropdown=${secondaryNavDropdownBg}&fluid=${fluid}") 31: #end 32: 33: #macro (headerText) 34: $website.include("mod-site-header-text-template") 35: #end 36: 37: #macro (headerSocial) 38: $website.include("${headerSocial}?tmpl=mod-site-header-social-template") 39: #end 40: 41: #macro (headerLinks) 42: $website.include("mod-site-header-links-template") 43: #end 44: 45: ## ============================================ ## 46: ## END OF MACROS ## 47: ## ============================================ ## 48: 49: <div class="header-contents"> 50: <div class='header-top d-none d-sm-block'> 51: <div class="container p-0"> 52: 53: ## QUICK LINKS 54: #headerLinks 55: 56: <div class="d-flex justify-content-center justify-content-sm-end"> 57: <div class="d-none d-lg-block"> 58: ## HEADER TEXT 59: #headerText 60: </div> 61: 62: <div class="skew-r-10"> 63: <div class="skew-l-10"> 64: ## HEADER TEXT 65: #headerSocial 66: </div> 67: </div> 68: 69: </div> 70: </div> 71: </div> 72: 73: <div class="header-navbars"> 74: ## PRIMARY NAVBAR 75: #primaryNav 76: 77: ## SECONDARY NAVBAR 78: #secondaryNav 79: </div> 80: </div>
1: #set ($layout = $website.theme.getSetting("section.header.layout")) 2: #set ($sticky = $website.theme.getSetting("section.header.sticky")) 3: #set ($container = $website.theme.getSetting("section.header.container")) 4: #set ($backgroundClass = $website.theme.getSetting("section.header.style.background.class")) 5: #set ($headerTextClass = $website.theme.getSetting("section.header.style.text.class")) 6: #set ($headerTextAlign = "text-left") 7: #set ($headerTextAlign = $website.theme.getSetting("section.header.style.text.align")) 8: #set ($style = 1) 9: #set ($style = $style.parseInt($layout.toString().split("\-").get(1))) 10: #set ($stickyClass = '') 11: 12: #if($sticky == 'enabled') 13: #set($stickyClass = 'sticky-top') 14: ## This is a bootstrap4 helper class that must be set on a direct child element of the body. 15: #end 16: 17: #macro (partnerLogos) 18: #if ($website.theme.getSetting("component.partnerlogos.active") == "enabled") 19: #set ($container = "container") 20: #set ($heading = $website.theme.getSetting("component.partnerlogos.heading.text")) 21: #set ($container = $website.theme.getSetting("component.partnerlogos.container")) 22: #set ($poweredby = $website.theme.getSetting("component.partnerlogos.poweredby")) 23: #set ($classText = $website.theme.getSetting("component.partnerlogos.style.text.class")) 24: #set ($classBg = $website.theme.getSetting("component.partnerlogos.style.background.class")) 25: 26: $!request.setAttribute("file_exists", false) 27: $website.includeAgain("${poweredby}?tmpl=file-exists-template") 28: #if ($request.getAttribute("file_exists")) 29: <button type="button" class="btn btn-secondary btn-block btn-sm rounded-0 d-block d-md-none" data-toggle="collapse" data-target="#partnerlogos1" aria-expanded="false" aria-controls="partnerlogos1">View Partners</button> 30: <div id="partnerlogos1" class="component partnerlogos ${classText} ${classBg} collapse d-md-block"> 31: <div class="${container}"> 32: $website.includeAgain("${poweredby}?tmpl=image-navbar-template&flex=true&flexDirection=flex-row&flexString=m-0") 33: </div> 34: </div> 35: #end 36: #end 37: #end 38: 39: 40: <header id="section-header" class="section header ${layout} ${headerTextClass} ${headerTextAlign} ${backgroundClass} ${stickyClass}" role="banner" #if($sticky == 'enabled') data-module="bs-scripts/sticky-top-bs" #end> 41: <div class="${container} p-0"> 42: ## PRE-HEADER 43: $website.include("/blocks/pre-header") 44: 45: ## PARTNER LOGOS 46: #if ($website.theme.getSetting("component.partnerlogos.location") == "header") 47: #partnerLogos 48: #end 49: 50: ## HEADER 51: $website.include("mod-site-header-template?style=${style}&sticky=${sticky}") 52: 53: ## POST-HEADER 54: $website.include("/blocks/post-header") 55: </div> 56: </header>
1: {"s3Path":"Downtown/46/src/design/default-decorator.html","mimeType":"text/html"}