PageController
class PageController extends Controller (View source)
Traits
Trait ApplicationAwareTrait A trait used with ApplicationAwareInterface
Properties
protected Application | $app | from ApplicationAwareTrait | |
protected string[] | $helpers | The handles of the helpers to be returned by the getHelperObjects method. |
from AbstractController |
protected array | $sets | The values to be sent to views. |
from AbstractController |
protected | $action | ||
protected Request|null | $request | The current request instance. |
from AbstractController |
protected | $parameters | ||
protected | $view | from Controller | |
protected string | $viewPath | The path to the view file (update it with the setViewPath method). |
from Controller |
protected | $theme | from Controller | |
protected | $controllerActionPath | from Controller | |
protected | $themeViewTemplate | from Controller | |
protected | $supportsPageCache | ||
protected | $passThruBlocks | ||
protected | $replacement | ||
protected | $requestValidated | ||
protected BlockController[] | $blocks | ||
protected | $editingDisabled | ||
private bool | $hasCheckedSessionMessages | ||
protected array | $restrictedMethods | array of method names that can't be called through the url |
|
protected string|null | $customRequestPath | Custom request path - overrides Request::getPath() (useful when replacing controllers). |
|
Page | $c |
Methods
Adds an item to the view's header. This item will then be automatically printed out before the
section of the page.Adds an item to the view's footer. This item will then be automatically printed out before the section of the page.
Get the things "set" against this controller with $this->set(...)
This output array may also contain items set with $this->flash(...)
like message
error
success
or other
custom keys
Should the action be executed? Override this method to answer something different than true.
Get the the helpers that will be be automatically sent to Views as variables.
Get the whole $_GET array or a specific querystring value.
Override this method to do something right before the view is rendered.
Get the whole $_POST array or a specific posted value.
Redirect the clients to a specific URL/page (specify path(s) as argument(s) of this function).
Build a response that redirects clients to a specific URL/page (specify path(s) as argument(s) of $args).
Perform an action of this controller (if shouldRunControllerTask returns true).
Get the whole $_REQUEST array or a specific requested value.
No description
Returns the wrapper file that holds the content of the view. Usually view.php.
No description
No description
Given either a path or a Page object, this is a shortcut to
- Grab the controller of THAT page.
Set the custom request path (useful when replacing controllers).
Get the custom request path (useful when replacing controllers).
No description
No description
Given a path to a single page, this command uses the CURRENT controller and renders the contents of the single page within this request. The current controller is not replaced, and has already fired (since it is meant to be called from within a view() or similar method).
No description
No description
No description
Disables the display of an editing toolbar on the page. This does not impact permissions – it's an additional check that is used when pages are previewed (e.g. when we want to show a page but not the toolbar, even if the user is logged in.) This has to be a separate check because sometimes pages are protected but we still want to act like the user can't edit the page. We can't just use setCustomRequestUser and set it to -1.
No description
No description
No description
Should this page be displayed using the user's language?
Override this method to send content created by the page controller to the indexer
Build a Redirect Response that instruct the browser to load the first accessible child page of this page.
Details
setApplication(Application $app)
Setter method for the application
__construct(Page $c)
Initialize the instance.
Request
getRequest()
Get the current request instance.
setRequest(Request $request)
Set the current request instance.
requireAsset()
Add an asset required in views.
This function accept the same parameters as the requireAsset method of the ResponseAssetGroup.
addHeaderItem(string $item)
Adds an item to the view's header. This item will then be automatically printed out before the
section of the page.
addFooterItem(string $item)
Adds an item to the view's footer. This item will then be automatically printed out before the section of the page.
set(string $key, mixed $val)
Set a value to be sent to the view.
array
getSets()
Get the things "set" against this controller with $this->set(...)
This output array may also contain items set with $this->flash(...)
like message
error
success
or other
custom keys
bool
shouldRunControllerTask()
Should the action be executed? Override this method to answer something different than true.
array
getHelperObjects()
Get the the helpers that will be be automatically sent to Views as variables.
Array keys are the variable names, array values are the helper instances.
mixed
get(string|null $key = null, mixed $defaultValue = null)
Get the whole $_GET array or a specific querystring value.
getTask()
deprecated
deprecated
No description
string|null
getAction()
Get the action to be performed.
array|null
getParameters()
Get the action parameters.
on_start()
Override this method to perform controller initializations.
on_before_render()
Override this method to do something right before the view is rendered.
For instance, you can call $this->set('variableName', $variableValue) to send the view additional sets.
isPost()
deprecated
deprecated
No description
mixed
post(string|null $key = null, mixed $defaultValue = null)
Get the whole $_POST array or a specific posted value.
redirect()
deprecated
deprecated
Redirect the clients to a specific URL/page (specify path(s) as argument(s) of this function).
RedirectResponse
buildRedirect(array|string|UrlInterface $destination, int $httpResponseCode = Response::HTTP_FOUND)
Build a response that redirects clients to a specific URL/page (specify path(s) as argument(s) of $args).
runTask(mixed $action, mixed $parameters)
deprecated
deprecated
No description
mixed
runAction(string $action, array $parameters = [])
Perform an action of this controller (if shouldRunControllerTask returns true).
mixed
request(string|null $key = null)
Get the whole $_REQUEST array or a specific requested value.
executeCommand(mixed $command)
Dispatches a command to the command bus.
dispatchBatch(Batch $batch)
No description
setViewObject(View $view)
No description
setTheme($mixed)
No description
getTheme()
No description
setThemeViewTemplate($template)
No description
string
getThemeViewTemplate()
Returns the wrapper file that holds the content of the view. Usually view.php.
getControllerActionPath()
No description
string
getViewPath()
Get the path to the view file.
flash($key, $value, $isHTML = false)
No description
getViewObject()
No description
action()
No description
protected Controller
setViewPath(string $viewPath)
Set the path to the view file.
supportsPageCache()
No description
replace($var)
Given either a path or a Page object, this is a shortcut to
- Grab the controller of THAT page.
- Grab the view of THAT controller
- Render that view.
- Exit – so we immediately stop all other output in the controller that called render().
setCustomRequestPath(string|null $requestPath)
Set the custom request path (useful when replacing controllers).
string|null
getCustomRequestPath()
Get the custom request path (useful when replacing controllers).
isReplaced()
No description
getReplacement()
No description
render($path, $pkgHandle = null)
Given a path to a single page, this command uses the CURRENT controller and renders the contents of the single page within this request. The current controller is not replaced, and has already fired (since it is meant to be called from within a view() or similar method).
getPageObject()
No description
getRequestAction()
No description
getRequestActionParameters()
No description
disableEditing()
Disables the display of an editing toolbar on the page. This does not impact permissions – it's an additional check that is used when pages are previewed (e.g. when we want to show a page but not the toolbar, even if the user is logged in.) This has to be a separate check because sometimes pages are protected but we still want to act like the user can't edit the page. We can't just use setCustomRequestUser and set it to -1.
bool
isEditingDisabled()
No description
setupRequestActionAndParameters(Request $request)
No description
isValidControllerTask($action, $parameters = array())
No description
setPassThruBlockController(Block $b, BlockController $controller)
No description
getPassThruBlockController(Block $b)
No description
void
setBlockController(Block $block, BlockController $controller)
No description
BlockController|null
getBlockController(Block $block)
No description
validateRequest()
No description
bool
useUserLocale()
Should this page be displayed using the user's language?
getSearchableContent()
Override this method to send content created by the page controller to the indexer
RedirectResponse|Response
buildRedirectToFirstAccessibleChildPage()
Build a Redirect Response that instruct the browser to load the first accessible child page of this page.