42 lines
753 B
Plaintext
42 lines
753 B
Plaintext
{% import (
|
|
"golang.org/x/text/language"
|
|
|
|
"source.toby3d.me/toby3d/home/internal/domain"
|
|
) %}
|
|
|
|
{% code
|
|
type Page struct {
|
|
BaseOf
|
|
page *domain.Page
|
|
}
|
|
|
|
func NewPage(base BaseOf, page *domain.Page) Page {
|
|
return Page{
|
|
BaseOf: base,
|
|
page: page,
|
|
}
|
|
}
|
|
%}
|
|
|
|
{% stripspace %}
|
|
{% func (p Page) Title() %}
|
|
{% if p.page.Title != "" %}
|
|
{%s p.page.Title %}{% space %}—{% space %}{%= p.BaseOf.Title() %}
|
|
{% else %}
|
|
{%= p.BaseOf.Title() %}
|
|
{% endif %}
|
|
{% endfunc %}
|
|
|
|
{% func (p Page) Lang() %}
|
|
{% if p.page.Language != language.Und %}
|
|
{%s p.page.Language.String() %}
|
|
{% else %}
|
|
{%= p.BaseOf.Lang() %}
|
|
{% endif %}
|
|
{% endfunc %}
|
|
|
|
{% func (p Page) Body() %}
|
|
<p>{%z p.page.Content %}</p>
|
|
{% endfunc %}
|
|
{% endstripspace %}
|