48 lines
866 B
Plaintext
48 lines
866 B
Plaintext
{% import (
|
|
"source.toby3d.me/toby3d/home/internal/domain"
|
|
) %}
|
|
|
|
{% code
|
|
type Page struct {
|
|
BaseOf
|
|
page *domain.Entry
|
|
}
|
|
|
|
func NewPage(base BaseOf, page *domain.Entry) Page {
|
|
return Page{
|
|
BaseOf: base,
|
|
page: page,
|
|
}
|
|
}
|
|
%}
|
|
|
|
{% stripspace %}
|
|
{% func (p Page) Title() %}
|
|
{% if p.page.Title != "" %}
|
|
{%s p.page.Title %}
|
|
{% else %}
|
|
{%= p.BaseOf.Title() %}
|
|
{% endif %}
|
|
{% endfunc %}
|
|
|
|
{% func (p Page) Lang() %}
|
|
{% if p.page.Language != domain.LanguageUnd %}
|
|
{%s p.page.Language.Lang() %}
|
|
{% else %}
|
|
{%= p.BaseOf.Lang() %}
|
|
{% endif %}
|
|
{% endfunc %}
|
|
|
|
{% func (p Page) Dir() %}
|
|
{% if p.page.Language != domain.LanguageUnd %}
|
|
{%s p.page.Language.Dir().String() %}
|
|
{% else %}
|
|
{%= p.BaseOf.Lang() %}
|
|
{% endif %}
|
|
{% endfunc %}
|
|
|
|
{% func (p Page) Body() %}
|
|
<p>{%z= p.page.Content %}</p>
|
|
{% endfunc %}
|
|
{% endstripspace %}
|