==b-head-line

===Описание
Элемент непоисковой шапки. Представляет собой плашку с названием-лого сервиса или названием текущей страницы.

{{TOC}}

===XML-формат

====Произвольный текст
Как правило, это название страницы.
%%(html)
<lego:b-head-line>
    <lego:text>Расширенный поиск</lego:text>
</lego:b-head-line>
%%
или же
%%(html)
<lego:b-head-line>
    <lego:text/>
</lego:b-head-line>
%%
И сам текст задается динамически через xsl. См. ниже.

====Название сервиса
Название сервиса. Является ссылкой для всех страниц, кроме главной страницы сервиса.
%%(html)
<lego:b-head-line>
    <lego:b-head-name>Видео</lego:b-head-name>
</lego:b-head-line>
%%

===="Хлебные крошки"
Последовательность ссылок, разделенных символом &#8594;, например: Я.ру &#8594; Настройки.
%%(html)
<lego:b-head-line>
    <lego:path/>
</lego:b-head-line>
%%
Данные для "хлебных крошек" передаются динамически через ##lego:params##. См. ниже.

====Бета
Слово "бета", выводимое после названия сервиса.
%%(html)
<lego:b-head-line>
    <lego:b-head-name>Видео</lego:b-head-name>
    <lego:beta/>
</lego:b-head-line>
%%

====Простой поиск
Как правило для страницы расширенного поиска поисковая форма меняется на плашку с названием страницы. При этом ставится ссылка на простой поиск:
%%(html)
<lego:b-head-line>
    <lego:text>Расширенный поиск</lego:text>
    <lego:simple url="/search"/>
</lego:b-head-line>
%%
Ссылка может задаваться как атрибутом ##url##, так и динамически через xsl. См. ниже.

===Использование в XSL

====apply-templates
%%(html)
<xsl:apply-templates select="lego:b-head-line"/>
%%

===Кастомизация средствами XSL

====Произвольный текст
Если в xml задан пустой ##lego:text##, то текст для него можно задать, переопределив такой шаблон:
%%(html)
<xsl:template match="lego:b-head-line/lego:text" mode="lego:content">
    <xsl:text>Расширенный поиск</xsl:text>
</xsl:template>
%%

====Изменение ссылки с названия сервиса
Обычно ссылка с названия ведет на главную страницу сервиса, но, если нужно, можно переопределить такой шаблон:
%%(html)
<xsl:template match="lego:b-head-logo/lego:b-head-name" mode="lego:url-content">
    <xsl:text>/</xsl:text>
</xsl:template>
%%

====Главная страница сервиса
Для всех страниц, кроме главной, название сервиса является ссылкой, ведущей, как правило, на главную страницу сервиса.
Чтобы указать, что текущая страница является главной, нужно в ##lego:params## передать элемент ##lego:index##:
%%(html)
<xsl:template match="/" mode="lego:params">
    ...
    <lego:index/>
</xsl:template>
%%

((../../../params.wiki Подробнее про lego:params))

====Простой поиск
Если ссылка не задана атрибутом ##url## у элемента ##lego:text##, то можно определить ее таким шаблоном:
%%(html)
<xsl:template match="lego:b-head-line/lego:simple" mode="lego:url-content">
    <xsl:text>/search</xsl:text>
</xsl:template>
%%
Также можно переопределить дефолтное название "простой поиск":
%%(html)
<xsl:template match="lego:b-head-line/lego:simple" mode="lego:content">
    <xsl:text>очень простой поиск</xsl:text>
</xsl:template>
%%

===="Хлебные крошки"
Данные для "хлебных крошек" передаются динамически через ##lego:params## в виде:
%%(html)
<xsl:template match="/" mode="lego:params">
...
<lego:b-head-line>
    <lege:path>
        <lego:item><lego:link url="/">API</lego:link></lego:item>
        <lego:item><lego:link url="/doc/">Документация</lego:link></lego:item>
        <lego:item><lego:text>JS API</lego:text></lego:item>
    </lego:path>
</lego:b-head-line>
...
</xsl:template>
%%

((../../../params.wiki Подробнее про lego:params))
((../i-items/i-items.wiki Подробнее про работу с lego:item))

