Abstract base for views.

A child of this class is not required if you simply want to render an HTML template with no other processing.

Views must implement renderX methods, where X represents the response type they handle (eg, renderHtml or renderJson). These methods take no arguments and should return a string if they successfully rendered content or false if the content is really unrepresentable.

package XenForo_Mvc

 Methods

Constructor

__construct(\XenForo_ViewRenderer_Abstract $renderer, \Zend_Controller_Response_Http $response, array $params, string $templateName) 

Parameters

$renderer

\XenForo_ViewRenderer_Abstract

View renderer

$response

\Zend_Controller_Response_Http

Response object

$params

array

View params

$templateName

string

Template name to render (possibly ignored)

Creates the HTML template object to render this view's own specified template, using the given params.

createOwnTemplateObject() : \XenForo_Template_Abstract

Creates an HTML template object for rendering using the view renderer.

createTemplateObject(string $templateName, array $params) : \XenForo_Template_Abstract

Parameters

$templateName

string

Name of the template to create

$params

array

Key-value parameters to pass to the template

Returns

Gets the view params.

getParams() : array

Returns

array

Gets the view template name

getTemplateName() : string

Returns

string

Pre-loads the specified template.

preLoadTemplate(string $template) 

Parameters

$template

string

This is a global param preparation method.

prepareParams() 

It is called for all view output types. It is also called even if the required renderX method is not available.

This method can be overridden to modify params and then let the code fallback to the behavior as if the view did not exist (by not defining the renderX method).

Tells the browser that the data should be downloaded (rather than displayed) using the specified file name.

setDownloadFileName(string $fileName, boolean $inline) 

Parameters

$fileName

string

$inline

boolean

True if the attachment should be shown inline - use with caution!

Add an array of params to the view.

setParams(array $params) 

Overwrites parameters with the same name.

Parameters

$params

array

 Properties

 

$_params : array
   

$_response : \Zend_Controller_Response_Http

Should be used to modify headers/state as necessary

 

$_templateName : string

This can be used as is, as a basis, or just ignored entirely. Each view will handle it differently.