class Document implements Renderable

A view which renders a HTML skeleton for Flarum's frontend app.

Properties

string|null $title The title of the document, displayed in the <title> tag.
string|null $language The language of the document, displayed as the value of the attribute `lang` in the <html> tag.
string|null $direction The text direction of the document, displayed as the value of the attribute `dir` in the <html> tag.
string $appView The name of the frontend app view to display.
string $layoutView The name of the frontend layout view to display.
string $contentView The name of the frontend content view to display.
Renderable|null $content The SEO content of the page, displayed within the layout in <noscript> tags.
array $payload Other variables to preload into the Flarum JS.
array $meta An array of meta tags to append to the page's <head>.
string|null $canonicalUrl The canonical URL for this page.
int|null $page Which page of content are we on?
bool|null $hasNextPage Is there a next page?
array $head An array of strings to append to the page's <head>.
string $criticalCss Inline critical CSS emitted before the async stylesheet links.
array $foot An array of strings to prepend before the page's </body>.
array $js An array of JavaScript URLs to load.
array $css An array of CSS URLs to load.
array $preloads An array of preloaded assets.
array<string,string|callable|array> $extraAttributes Document extra attributes.
protected VersionerInterface $versioner We need the versioner to get the revisions of split chunks.

Methods

__construct(Factory $view, array $forumApiDocument, ServerRequestInterface $request, TitleDriverInterface $titleDriver, Config $config, Factory $filesystem)

No description

string
render()

No description

View
makeView()

No description

string
makeTitle()

No description

View|null
makeLayout()

No description

View
makeContent()

No description

array
makePreloads()

No description

array
makeExtraClasses()

No description

string
makeExtraAttributes()

No description

string
makeHead()

No description

string
makeJs()

No description

string
makeFoot()

No description

array
getForumApiDocument()

No description

void
setForumApiDocument(array $forumApiDocument)

No description

static string
setPageParam(string $url, int|null $page)

No description

static string
setQueryParam(string $url, string $key, string|null $value)

Set or override a query param on a string URL to a particular value.

Details

__construct(Factory $view, array $forumApiDocument, ServerRequestInterface $request, TitleDriverInterface $titleDriver, Config $config, Factory $filesystem)

Parameters

Factory $view
array $forumApiDocument
ServerRequestInterface $request
TitleDriverInterface $titleDriver
Config $config
Factory $filesystem

string render()

Return Value

string

protected View makeView()

Return Value

View

protected string makeTitle()

Return Value

string

protected View|null makeLayout()

Return Value

View|null

protected View makeContent()

Return Value

View

protected array makePreloads()

Return Value

array

protected array makeExtraClasses()

Return Value

array

protected string makeExtraAttributes()

Return Value

string

protected string makeHead()

Return Value

string

protected string makeJs()

Return Value

string

protected string makeFoot()

Return Value

string

array getForumApiDocument()

Return Value

array

void setForumApiDocument(array $forumApiDocument)

Parameters

array $forumApiDocument

Return Value

void

static string setPageParam(string $url, int|null $page)

Parameters

string $url
int|null $page

Return Value

string

static protected string setQueryParam(string $url, string $key, string|null $value)

Set or override a query param on a string URL to a particular value.

Parameters

string $url
string $key
string|null $value

Return Value

string