xref: /plugin/combo/ComboStrap/SectionTag.php (revision 04fd306c7c155fa133ebb3669986875d65988276)
1*04fd306cSNickeau<?php
2*04fd306cSNickeau
3*04fd306cSNickeaunamespace ComboStrap;
4*04fd306cSNickeau
5*04fd306cSNickeau
6*04fd306cSNickeauuse ComboStrap\TagAttribute\StyleAttribute;
7*04fd306cSNickeau
8*04fd306cSNickeauclass SectionTag
9*04fd306cSNickeau{
10*04fd306cSNickeau
11*04fd306cSNickeau
12*04fd306cSNickeau    public const CANONICAL = HeadingTag::CANONICAL;
13*04fd306cSNickeau    public const TAG = "section";
14*04fd306cSNickeau
15*04fd306cSNickeau    public static function renderEnterXhtml(TagAttributes $tag): string
16*04fd306cSNickeau    {
17*04fd306cSNickeau        $level = $tag->getComponentAttributeValueAndRemoveIfPresent(HeadingTag::LEVEL);
18*04fd306cSNickeau        if ($level !== null) {
19*04fd306cSNickeau            $tag->addClassName(StyleAttribute::addComboStrapSuffix("outline-section"));
20*04fd306cSNickeau            $tag->addClassName(StyleAttribute::addComboStrapSuffix("outline-level-$level"));
21*04fd306cSNickeau        }
22*04fd306cSNickeau        return $tag->toHtmlEnterTag("section");
23*04fd306cSNickeau    }
24*04fd306cSNickeau
25*04fd306cSNickeau    public static function renderExitXhtml(): string
26*04fd306cSNickeau    {
27*04fd306cSNickeau        return '</section>';
28*04fd306cSNickeau    }
29*04fd306cSNickeau
30*04fd306cSNickeau
31*04fd306cSNickeau}
32*04fd306cSNickeau
33